13473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 2be5869729a416032a4abb5a65430d25831828f75Daniel Veillard * Summary: interfaces for tree manipulation 3be5869729a416032a4abb5a65430d25831828f75Daniel Veillard * Description: this module describes the structures found in an tree resulting 4be5869729a416032a4abb5a65430d25831828f75Daniel Veillard * from an XML or HTML parsing, as well as the API provided for 5be5869729a416032a4abb5a65430d25831828f75Daniel Veillard * various processing on that tree 63473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * 7be5869729a416032a4abb5a65430d25831828f75Daniel Veillard * Copy: See Copyright for the status of this software. 83473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * 9be5869729a416032a4abb5a65430d25831828f75Daniel Veillard * Author: Daniel Veillard 103473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 113473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 123473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#ifndef __XML_TREE_H__ 133473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#define __XML_TREE_H__ 143473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 153473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#include <stdio.h> 16bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard#include <limits.h> 173473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#include <libxml/xmlversion.h> 18a2e844a3b3503367a4418187e77ccc977f186909William M. Brack#include <libxml/xmlstring.h> 197ae91bcd9e94946a7be41290cb67ffc9c2cf0a9fIgor Zlatkovic 203473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#ifdef __cplusplus 213473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorextern "C" { 223473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#endif 233473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 248bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard/* 258bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard * Some of the basic types pointer to structures: 268bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard */ 278bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard/* xmlIO.h */ 288bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillardtypedef struct _xmlParserInputBuffer xmlParserInputBuffer; 298bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillardtypedef xmlParserInputBuffer *xmlParserInputBufferPtr; 308bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard 315a37bde34b693bc0296a2f03b775773e265b4c0eCETtypedef struct _xmlOutputBuffer xmlOutputBuffer; 325a37bde34b693bc0296a2f03b775773e265b4c0eCETtypedef xmlOutputBuffer *xmlOutputBufferPtr; 335a37bde34b693bc0296a2f03b775773e265b4c0eCET 348bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard/* parser.h */ 358bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillardtypedef struct _xmlParserInput xmlParserInput; 368bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillardtypedef xmlParserInput *xmlParserInputPtr; 378bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard 388bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillardtypedef struct _xmlParserCtxt xmlParserCtxt; 398bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillardtypedef xmlParserCtxt *xmlParserCtxtPtr; 408bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard 416c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillardtypedef struct _xmlSAXLocator xmlSAXLocator; 426c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillardtypedef xmlSAXLocator *xmlSAXLocatorPtr; 436c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillard 446c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillardtypedef struct _xmlSAXHandler xmlSAXHandler; 456c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillardtypedef xmlSAXHandler *xmlSAXHandlerPtr; 466c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillard 476c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillard/* entities.h */ 486c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillardtypedef struct _xmlEntity xmlEntity; 496c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillardtypedef xmlEntity *xmlEntityPtr; 506c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillard 519d06d300a5c4146907b3af8fcbf67d8e7d868567Daniel Veillard/** 529d06d300a5c4146907b3af8fcbf67d8e7d868567Daniel Veillard * BASE_BUFFER_SIZE: 539d06d300a5c4146907b3af8fcbf67d8e7d868567Daniel Veillard * 5461f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * default buffer size 4000. 559d06d300a5c4146907b3af8fcbf67d8e7d868567Daniel Veillard */ 566155d8aafa3cc60b5fdaaf75b423e489ea8280c4Daniel Veillard#define BASE_BUFFER_SIZE 4096 57d0463560300f1d8b3e41d70c3728ed84fdc8dd30Daniel Veillard 585e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard/** 59978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * LIBXML_NAMESPACE_DICT: 60978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * 61978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * Defines experimental behaviour: 62978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * 1) xmlNs gets an additional field @context (a xmlDoc) 63978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * 2) when creating a tree, xmlNs->href is stored in the dict of xmlDoc. 64978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik */ 65978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik/* #define LIBXML_NAMESPACE_DICT */ 66978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik 67978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik/** 68465a000b1080427bd62d89a925409b7db78616acDaniel Veillard * xmlBufferAllocationScheme: 69465a000b1080427bd62d89a925409b7db78616acDaniel Veillard * 70465a000b1080427bd62d89a925409b7db78616acDaniel Veillard * A buffer allocation scheme can be defined to either match exactly the 71465a000b1080427bd62d89a925409b7db78616acDaniel Veillard * need or double it's allocated size each time it is found too small. 72465a000b1080427bd62d89a925409b7db78616acDaniel Veillard */ 73465a000b1080427bd62d89a925409b7db78616acDaniel Veillard 74465a000b1080427bd62d89a925409b7db78616acDaniel Veillardtypedef enum { 75e83e93e715709bb0d117c5386d89f0e5b08d1484Daniel Veillard XML_BUFFER_ALLOC_DOUBLEIT, /* double each time one need to grow */ 76e83e93e715709bb0d117c5386d89f0e5b08d1484Daniel Veillard XML_BUFFER_ALLOC_EXACT, /* grow only to the minimal size */ 77e83e93e715709bb0d117c5386d89f0e5b08d1484Daniel Veillard XML_BUFFER_ALLOC_IMMUTABLE, /* immutable buffer */ 787d0d2a50ac94850d5c5a6360fa1c931a89e75dddConrad Irwin XML_BUFFER_ALLOC_IO, /* special allocation scheme used for I/O */ 79213f1fe0d76d30eaed6e5853057defc43e6df2c9Daniel Veillard XML_BUFFER_ALLOC_HYBRID, /* exact up to a threshold, and doubleit thereafter */ 80213f1fe0d76d30eaed6e5853057defc43e6df2c9Daniel Veillard XML_BUFFER_ALLOC_BOUNDED /* limit the upper size of the buffer */ 81465a000b1080427bd62d89a925409b7db78616acDaniel Veillard} xmlBufferAllocationScheme; 82465a000b1080427bd62d89a925409b7db78616acDaniel Veillard 83465a000b1080427bd62d89a925409b7db78616acDaniel Veillard/** 84465a000b1080427bd62d89a925409b7db78616acDaniel Veillard * xmlBuffer: 85465a000b1080427bd62d89a925409b7db78616acDaniel Veillard * 86bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard * A buffer structure, this old construct is limited to 2GB and 87bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard * is being deprecated, use API with xmlBuf instead 88465a000b1080427bd62d89a925409b7db78616acDaniel Veillard */ 89465a000b1080427bd62d89a925409b7db78616acDaniel Veillardtypedef struct _xmlBuffer xmlBuffer; 90465a000b1080427bd62d89a925409b7db78616acDaniel Veillardtypedef xmlBuffer *xmlBufferPtr; 91465a000b1080427bd62d89a925409b7db78616acDaniel Veillardstruct _xmlBuffer { 92465a000b1080427bd62d89a925409b7db78616acDaniel Veillard xmlChar *content; /* The buffer content UTF8 */ 93465a000b1080427bd62d89a925409b7db78616acDaniel Veillard unsigned int use; /* The buffer size used */ 94465a000b1080427bd62d89a925409b7db78616acDaniel Veillard unsigned int size; /* The buffer size */ 95465a000b1080427bd62d89a925409b7db78616acDaniel Veillard xmlBufferAllocationScheme alloc; /* The realloc method */ 96e83e93e715709bb0d117c5386d89f0e5b08d1484Daniel Veillard xmlChar *contentIO; /* in IO mode we may have a different base */ 97465a000b1080427bd62d89a925409b7db78616acDaniel Veillard}; 98465a000b1080427bd62d89a925409b7db78616acDaniel Veillard 99465a000b1080427bd62d89a925409b7db78616acDaniel Veillard/** 100bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard * xmlBuf: 101bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard * 102bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard * A buffer structure, new one, the actual structure internals are not public 103bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard */ 104bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard 105bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillardtypedef struct _xmlBuf xmlBuf; 106bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard 107bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard/** 108bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard * xmlBufPtr: 109bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard * 110bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard * A pointer to a buffer structure, the actual structure internals are not 111bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard * public 112bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard */ 113bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard 114bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillardtypedef xmlBuf *xmlBufPtr; 115bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard 11618e1f1f1180c4d48ed52bf995b3c700c2cefb492Daniel Veillard/* 11718e1f1f1180c4d48ed52bf995b3c700c2cefb492Daniel Veillard * A few public routines for xmlBuf. As those are expected to be used 11818e1f1f1180c4d48ed52bf995b3c700c2cefb492Daniel Veillard * mostly internally the bulk of the routines are internal in buf.h 11918e1f1f1180c4d48ed52bf995b3c700c2cefb492Daniel Veillard */ 12095ebe53b50dfcff1fc5378309bc4f3c58173298eKurt RoeckxXMLPUBFUN xmlChar* XMLCALL xmlBufContent (const xmlBuf* buf); 12195ebe53b50dfcff1fc5378309bc4f3c58173298eKurt RoeckxXMLPUBFUN xmlChar* XMLCALL xmlBufEnd (xmlBufPtr buf); 122bbe194518fbe67bb8d629c59bcd74f18fee3fd1cDaniel RichardXMLPUBFUN size_t XMLCALL xmlBufUse (const xmlBufPtr buf); 12382cdfc4eb338f039024e1619aca8ff14b5c3dc71Daniel VeillardXMLPUBFUN size_t XMLCALL xmlBufShrink (xmlBufPtr buf, size_t len); 12418e1f1f1180c4d48ed52bf995b3c700c2cefb492Daniel Veillard 12528cc42d06867f46f921ec137b725a124e43936fdDaniel Veillard/* 12628cc42d06867f46f921ec137b725a124e43936fdDaniel Veillard * LIBXML2_NEW_BUFFER: 12728cc42d06867f46f921ec137b725a124e43936fdDaniel Veillard * 12828cc42d06867f46f921ec137b725a124e43936fdDaniel Veillard * Macro used to express that the API use the new buffers for 12928cc42d06867f46f921ec137b725a124e43936fdDaniel Veillard * xmlParserInputBuffer and xmlOutputBuffer. The change was 13028cc42d06867f46f921ec137b725a124e43936fdDaniel Veillard * introduced in 2.9.0. 13128cc42d06867f46f921ec137b725a124e43936fdDaniel Veillard */ 13218e1f1f1180c4d48ed52bf995b3c700c2cefb492Daniel Veillard#define LIBXML2_NEW_BUFFER 13318e1f1f1180c4d48ed52bf995b3c700c2cefb492Daniel Veillard 134bca22f40c3b2b34169d8d2919dce4894d8eac1a4Daniel Veillard/** 1355e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * XML_XML_NAMESPACE: 1365e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * 1375e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * This is the namespace for the special xml: prefix predefined in the 13861f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * XML Namespace specification. 1395e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard */ 1403473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#define XML_XML_NAMESPACE \ 1413473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor (const xmlChar *) "http://www.w3.org/XML/1998/namespace" 1423473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 14367f8b1cd960d809819342ada338444ed24739a55Daniel Veillard/** 14467f8b1cd960d809819342ada338444ed24739a55Daniel Veillard * XML_XML_ID: 14567f8b1cd960d809819342ada338444ed24739a55Daniel Veillard * 14667f8b1cd960d809819342ada338444ed24739a55Daniel Veillard * This is the name for the special xml:id attribute 14767f8b1cd960d809819342ada338444ed24739a55Daniel Veillard */ 14867f8b1cd960d809819342ada338444ed24739a55Daniel Veillard#define XML_XML_ID (const xmlChar *) "xml:id" 14967f8b1cd960d809819342ada338444ed24739a55Daniel Veillard 1503473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 15161f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * The different element types carried by an XML tree. 1523473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * 1533473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * NOTE: This is synchronized with DOM Level1 values 1543473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * See http://www.w3.org/TR/REC-DOM-Level-1/ 1553473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * 1563473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * Actually this had diverged a bit, and now XML_DOCUMENT_TYPE_NODE should 1573473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * be deprecated to use an XML_DTD_NODE. 1583473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 1593473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef enum { 1603473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_NODE= 1, 1613473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_NODE= 2, 1623473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_TEXT_NODE= 3, 1633473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_CDATA_SECTION_NODE= 4, 1643473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ENTITY_REF_NODE= 5, 1653473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ENTITY_NODE= 6, 1663473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_PI_NODE= 7, 1673473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_COMMENT_NODE= 8, 1683473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_DOCUMENT_NODE= 9, 1693473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_DOCUMENT_TYPE_NODE= 10, 1703473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_DOCUMENT_FRAG_NODE= 11, 1713473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_NOTATION_NODE= 12, 1723473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_HTML_DOCUMENT_NODE= 13, 1733473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_DTD_NODE= 14, 1743473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_DECL= 15, 1753473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_DECL= 16, 1763473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ENTITY_DECL= 17, 1773473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_NAMESPACE_DECL= 18, 1783473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_XINCLUDE_START= 19, 1793473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_XINCLUDE_END= 20 180eae522a0d8aa9f830d2e447f29b504030dbb6bbdDaniel Veillard#ifdef LIBXML_DOCB_ENABLED 181eae522a0d8aa9f830d2e447f29b504030dbb6bbdDaniel Veillard ,XML_DOCB_DOCUMENT_NODE= 21 1823473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#endif 1833473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor} xmlElementType; 1843473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1853473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 186bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 187bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlNotation: 188bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 18961f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * A DTD Notation definition. 1903473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 1913473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1923473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlNotation xmlNotation; 1933473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlNotation *xmlNotationPtr; 1943473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlNotation { 1959e7160d45a18bfa26d708e22ba991f7670d0128bDaniel Veillard const xmlChar *name; /* Notation name */ 1963473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *PublicID; /* Public identifier, if any */ 1973473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *SystemID; /* System identifier, if any */ 1983473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 1993473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 200bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 201bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlAttributeType: 202bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 20361f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * A DTD Attribute type definition. 2043473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 2053473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 2063473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef enum { 2073473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_CDATA = 1, 2083473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_ID, 2093473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_IDREF , 2103473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_IDREFS, 2113473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_ENTITY, 2123473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_ENTITIES, 2133473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_NMTOKEN, 2143473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_NMTOKENS, 2153473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_ENUMERATION, 2163473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_NOTATION 2173473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor} xmlAttributeType; 2183473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 219bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 220bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlAttributeDefault: 221bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 22261f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * A DTD Attribute default definition. 223bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 224bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 2253473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef enum { 2263473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_NONE = 1, 2273473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_REQUIRED, 2283473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_IMPLIED, 2293473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_FIXED 2303473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor} xmlAttributeDefault; 2313473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 232bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 233bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlEnumeration: 234bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 23561f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * List structure used when there is an enumeration in DTDs. 236bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 237bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 2383473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlEnumeration xmlEnumeration; 2393473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlEnumeration *xmlEnumerationPtr; 2403473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlEnumeration { 2413473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlEnumeration *next; /* next one */ 2423473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name; /* Enumeration name */ 2433473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 2443473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 245bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 246bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlAttribute: 247bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 24861f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * An Attribute declaration in a DTD. 249bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 250bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 2513473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlAttribute xmlAttribute; 2523473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlAttribute *xmlAttributePtr; 2533473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlAttribute { 2540ec986359adc04677529d5e704ff30bf8e5d3a05Daniel Veillard void *_private; /* application data */ 2553473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementType type; /* XML_ATTRIBUTE_DECL, must be second ! */ 2563473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name; /* Attribute name */ 2573473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *children; /* NULL */ 2583473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *last; /* NULL */ 2593473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDtd *parent; /* -> DTD */ 2603473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *next; /* next sibling link */ 2613473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *prev; /* previous sibling link */ 2623473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDoc *doc; /* the containing document */ 2633473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 2643473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlAttribute *nexth; /* next in hash table */ 2653473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlAttributeType atype; /* The attribute type */ 2663473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlAttributeDefault def; /* the default */ 2673473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *defaultValue; /* or the default value */ 2683473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlEnumerationPtr tree; /* or the enumeration tree if any */ 2693473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *prefix; /* the namespace prefix if any */ 2703473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *elem; /* Element holding the attribute */ 2713473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 2723473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 273bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 274bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlElementContentType: 275bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 27661f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Possible definitions of element content types. 2773473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 2783473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef enum { 2793473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_PCDATA = 1, 2803473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_ELEMENT, 2813473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_SEQ, 2823473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_OR 2833473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor} xmlElementContentType; 2843473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 285bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 286bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlElementContentOccur: 287bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 28861f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Possible definitions of element content occurrences. 289bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 2903473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef enum { 2913473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_ONCE = 1, 2923473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_OPT, 2933473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_MULT, 2943473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_PLUS 2953473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor} xmlElementContentOccur; 2963473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 297bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 298bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlElementContent: 299bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 30061f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * An XML Element content as stored after parsing an element definition 301bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * in a DTD. 302bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 303bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 3043473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlElementContent xmlElementContent; 3053473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlElementContent *xmlElementContentPtr; 3063473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlElementContent { 3073473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementContentType type; /* PCDATA, ELEMENT, SEQ or OR */ 3083473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementContentOccur ocur; /* ONCE, OPT, MULT or PLUS */ 309be480fbbe3e061a28f8719175a124ddc8575e0a8Daniel Veillard const xmlChar *name; /* Element name */ 3103473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlElementContent *c1; /* first child */ 3113473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlElementContent *c2; /* second child */ 312dab4cb37d8fceb7457c40effc1ae43559221610bDaniel Veillard struct _xmlElementContent *parent; /* parent */ 313a9b66d00b5fbae2381f59c0be4d8c7b8e3c16cf7Daniel Veillard const xmlChar *prefix; /* Namespace prefix */ 3143473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 3153473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 316bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 317bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlElementTypeVal: 318bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 31961f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * The different possibilities for an element content type. 320bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 321bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 3223473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef enum { 323a10efa8aa6e8a89ad1f5fa05bd591fed02c88dbaDaniel Veillard XML_ELEMENT_TYPE_UNDEFINED = 0, 3243473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_TYPE_EMPTY = 1, 3253473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_TYPE_ANY, 3263473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_TYPE_MIXED, 3273473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_TYPE_ELEMENT 3283473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor} xmlElementTypeVal; 3293473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 330aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#ifdef __cplusplus 331aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard} 332aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#endif 333aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#include <libxml/xmlregexp.h> 334aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#ifdef __cplusplus 335aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillardextern "C" { 336aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#endif 337aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard 338bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 339bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlElement: 340bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 34161f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * An XML Element declaration from a DTD. 342bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 343bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 3443473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlElement xmlElement; 3453473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlElement *xmlElementPtr; 3463473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlElement { 3470ec986359adc04677529d5e704ff30bf8e5d3a05Daniel Veillard void *_private; /* application data */ 3483473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementType type; /* XML_ELEMENT_DECL, must be second ! */ 3493473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name; /* Element name */ 3503473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *children; /* NULL */ 3513473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *last; /* NULL */ 3523473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDtd *parent; /* -> DTD */ 3533473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *next; /* next sibling link */ 3543473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *prev; /* previous sibling link */ 3553473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDoc *doc; /* the containing document */ 3563473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 3573473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementTypeVal etype; /* The type */ 3583473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementContentPtr content; /* the allowed element content */ 3593473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlAttributePtr attributes; /* List of the declared attributes */ 3603473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *prefix; /* the namespace prefix if any */ 361aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#ifdef LIBXML_REGEXP_ENABLED 362aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard xmlRegexpPtr contModel; /* the validating regexp */ 363aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#else 364aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard void *contModel; 365aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#endif 3663473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 3673473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 368bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 3695e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard/** 3705e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * XML_LOCAL_NAMESPACE: 3715e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * 37261f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * A namespace declaration node. 3735e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard */ 374bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard#define XML_LOCAL_NAMESPACE XML_NAMESPACE_DECL 375bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillardtypedef xmlElementType xmlNsType; 376bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 377bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 378bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlNs: 379bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 3803473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * An XML namespace. 3813473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * Note that prefix == NULL is valid, it defines the default namespace 382d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard * within the subtree (until overridden). 3833473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * 38461f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * xmlNsType is unified with xmlElementType. 3853473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 3863473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 3873473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlNs xmlNs; 3883473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlNs *xmlNsPtr; 3893473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlNs { 3903473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNs *next; /* next Ns link for this node */ 3913473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNsType type; /* global or local */ 3923473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *href; /* URL for the namespace */ 3933473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *prefix; /* prefix for the namespace */ 3948e8a703c767abfd43fdc89794f009a443096236ePDT void *_private; /* application data */ 395978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik struct _xmlDoc *context; /* normally an xmlDoc */ 3963473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 3973473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 398bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 399bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlDtd: 400bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 401d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard * An XML DTD, as defined by <!DOCTYPE ... There is actually one for 40261f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * the internal subset and for the external subset. 4033473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 4043473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlDtd xmlDtd; 4053473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlDtd *xmlDtdPtr; 4063473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlDtd { 4070ec986359adc04677529d5e704ff30bf8e5d3a05Daniel Veillard void *_private; /* application data */ 4083473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementType type; /* XML_DTD_NODE, must be second ! */ 4093473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name; /* Name of the DTD */ 4103473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *children; /* the value of the property link */ 4113473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *last; /* last child link */ 4123473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDoc *parent; /* child->parent link */ 4133473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *next; /* next sibling link */ 4143473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *prev; /* previous sibling link */ 4153473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDoc *doc; /* the containing document */ 4163473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 4173473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor /* End of common part */ 4183473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor void *notations; /* Hash table for notations if any */ 4193473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor void *elements; /* Hash table for elements if any */ 4203473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor void *attributes; /* Hash table for attributes if any */ 4213473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor void *entities; /* Hash table for entities if any */ 4223473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *ExternalID; /* External identifier for PUBLIC DTD */ 4233473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *SystemID; /* URI for a SYSTEM or PUBLIC DTD */ 4243473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor void *pentities; /* Hash table for param entities if any */ 4253473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 4263473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 427bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 428bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlAttr: 429bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 43061f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * An attribute on an XML node. 4313473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 4323473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlAttr xmlAttr; 4333473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlAttr *xmlAttrPtr; 4343473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlAttr { 4350ec986359adc04677529d5e704ff30bf8e5d3a05Daniel Veillard void *_private; /* application data */ 4363473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementType type; /* XML_ATTRIBUTE_NODE, must be second ! */ 4373473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name; /* the name of the property */ 4383473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *children; /* the value of the property */ 4393473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *last; /* NULL */ 4403473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *parent; /* child->parent link */ 4413473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlAttr *next; /* next sibling link */ 4423473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlAttr *prev; /* previous sibling link */ 4433473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDoc *doc; /* the containing document */ 4443473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNs *ns; /* pointer to the associated namespace */ 4453473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlAttributeType atype; /* the attribute type if validating */ 446d8850403bcacef78deb02ea41adbc0618ce3372cDaniel Veillard void *psvi; /* for type/PSVI informations */ 4473473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 4483473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 449bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 450bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlID: 451bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 4523473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * An XML ID instance. 4533473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 4543473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 4553473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlID xmlID; 4563473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlID *xmlIDPtr; 4573473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlID { 4583473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlID *next; /* next ID */ 4593473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value; /* The ID name */ 460d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard xmlAttrPtr attr; /* The attribute holding it */ 461ea7751d53bf497e873dca39b2c305e300e2574f9Daniel Veillard const xmlChar *name; /* The attribute if attr is not available */ 462ea7751d53bf497e873dca39b2c305e300e2574f9Daniel Veillard int lineno; /* The line number if attr is not available */ 4638d7b5c7ecdebc775257495bcdaa855916f2dfbb0Daniel Veillard struct _xmlDoc *doc; /* The document holding the ID */ 4643473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 4653473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 466bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 467bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlRef: 468bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 4693473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * An XML IDREF instance. 4703473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 4713473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 4723473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlRef xmlRef; 4733473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlRef *xmlRefPtr; 4743473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlRef { 4753473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlRef *next; /* next Ref */ 4763473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value; /* The Ref name */ 477d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard xmlAttrPtr attr; /* The attribute holding it */ 478ea7751d53bf497e873dca39b2c305e300e2574f9Daniel Veillard const xmlChar *name; /* The attribute if attr is not available */ 479ea7751d53bf497e873dca39b2c305e300e2574f9Daniel Veillard int lineno; /* The line number if attr is not available */ 4803473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 4813473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 482bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 483f69bb4b5bf3df1982f63a331b02cd7187456492fDaniel Veillard * xmlNode: 484f69bb4b5bf3df1982f63a331b02cd7187456492fDaniel Veillard * 4853473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * A node in an XML tree. 4863473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 4873473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlNode xmlNode; 4883473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlNode *xmlNodePtr; 4893473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlNode { 4900ec986359adc04677529d5e704ff30bf8e5d3a05Daniel Veillard void *_private; /* application data */ 4913473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementType type; /* type number, must be second ! */ 4923473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name; /* the name of the node, or the entity */ 4933473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *children; /* parent->childs link */ 4943473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *last; /* last child link */ 4953473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *parent; /* child->parent link */ 4963473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *next; /* next sibling link */ 4973473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *prev; /* previous sibling link */ 4983473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDoc *doc; /* the containing document */ 499cbaf399537a1fb69ef97b079e4cb553869aaa4d9Daniel Veillard 500cbaf399537a1fb69ef97b079e4cb553869aaa4d9Daniel Veillard /* End of common part */ 5013473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNs *ns; /* pointer to the associated namespace */ 5023473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlChar *content; /* the content */ 5033473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlAttr *properties;/* properties list */ 5043473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNs *nsDef; /* namespace definitions on this node */ 505d8850403bcacef78deb02ea41adbc0618ce3372cDaniel Veillard void *psvi; /* for type/PSVI informations */ 5061d211e227372e5ed75a69fbad5f50d185d0af936Daniel Veillard unsigned short line; /* line number */ 5071d211e227372e5ed75a69fbad5f50d185d0af936Daniel Veillard unsigned short extra; /* extra data for XPath/XSLT */ 5083473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 5093473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 5105e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard/** 5115e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * XML_GET_CONTENT: 5125e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * 51361f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Macro to extract the content pointer of a node. 5145e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard */ 5155e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard#define XML_GET_CONTENT(n) \ 516566d4dfac3ff5f7b235738f6f63bd369533874bfDaniel Veillard ((n)->type == XML_ELEMENT_NODE ? NULL : (n)->content) 5175e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard 5185e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard/** 5195e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * XML_GET_LINE: 5205e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * 521f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel Veillard * Macro to extract the line number of an element node. 5225e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard */ 5235e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard#define XML_GET_LINE(n) \ 524c76440fcf8ccc826df1792a093cf66b099881418Daniel Veillard (xmlGetLineNo(n)) 5257db3773a5cdafd122df5b69ba90be82535d46069Daniel Veillard 526ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard/** 527ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard * xmlDocProperty 528ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard * 529ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard * Set of properties of the document as found by the parser 530ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard * Some of them are linked to similary named xmlParserOption 531ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard */ 532ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillardtypedef enum { 533ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard XML_DOC_WELLFORMED = 1<<0, /* document is XML well formed */ 534ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard XML_DOC_NSVALID = 1<<1, /* document is Namespace valid */ 535ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard XML_DOC_OLD10 = 1<<2, /* parsed with old XML-1.0 parser */ 536ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard XML_DOC_DTDVALID = 1<<3, /* DTD validation was successful */ 537ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard XML_DOC_XINCLUDE = 1<<4, /* XInclude substitution was done */ 538ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard XML_DOC_USERBUILT = 1<<5, /* Document was built using the API 539ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard and not by parsing an instance */ 540ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard XML_DOC_INTERNAL = 1<<6, /* built for internal processing */ 541ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard XML_DOC_HTML = 1<<7 /* parsed or built HTML document */ 542ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard} xmlDocProperties; 54340412cda44b2689b509a8665fb9d76e1a260e28fDaniel Veillard 544bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 545bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlDoc: 546bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 5473473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * An XML document. 5483473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 5493473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlDoc xmlDoc; 5503473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlDoc *xmlDocPtr; 5513473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlDoc { 5520ec986359adc04677529d5e704ff30bf8e5d3a05Daniel Veillard void *_private; /* application data */ 5533473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementType type; /* XML_DOCUMENT_NODE, must be second ! */ 5543473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor char *name; /* name/filename/URI of the document */ 5553473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *children; /* the document tree */ 5563473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *last; /* last child link */ 5573473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *parent; /* child->parent link */ 5583473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *next; /* next sibling link */ 5593473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *prev; /* previous sibling link */ 5603473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDoc *doc; /* autoreference to itself */ 5613473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 5623473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor /* End of common part */ 5633473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int compression;/* level of zlib compression */ 564f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel Veillard int standalone; /* standalone document (no external refs) 565602f2bd01a50e20eabf4e2e7700e4bda1c627457Daniel Veillard 1 if standalone="yes" 566602f2bd01a50e20eabf4e2e7700e4bda1c627457Daniel Veillard 0 if standalone="no" 567602f2bd01a50e20eabf4e2e7700e4bda1c627457Daniel Veillard -1 if there is no XML declaration 568602f2bd01a50e20eabf4e2e7700e4bda1c627457Daniel Veillard -2 if there is an XML declaration, but no 569602f2bd01a50e20eabf4e2e7700e4bda1c627457Daniel Veillard standalone attribute was specified */ 5703473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDtd *intSubset; /* the document internal subset */ 5713473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDtd *extSubset; /* the document external subset */ 5723473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNs *oldNs; /* Global namespace, the old way */ 5733473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *version; /* the XML version string */ 5743473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *encoding; /* external initial encoding, if any */ 5753473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor void *ids; /* Hash table for ID attributes if any */ 5763473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor void *refs; /* Hash table for IDREFs attributes if any */ 5773473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *URL; /* The URI for that document */ 5783473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int charset; /* encoding of the in-memory content 5793473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor actually an xmlCharEncoding */ 58040412cda44b2689b509a8665fb9d76e1a260e28fDaniel Veillard struct _xmlDict *dict; /* dict used to allocate names or NULL */ 581d8850403bcacef78deb02ea41adbc0618ce3372cDaniel Veillard void *psvi; /* for type/PSVI informations */ 582ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard int parseFlags; /* set of xmlParserOption used to parse the 583ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard document */ 584ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard int properties; /* set of xmlDocProperties for this document 585ae0765b6819c77aae2638b40735f354b05b9c150Daniel Veillard set at the end of parsing */ 5863473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 5873473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 588978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik 589bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchciktypedef struct _xmlDOMWrapCtxt xmlDOMWrapCtxt; 590bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchciktypedef xmlDOMWrapCtxt *xmlDOMWrapCtxtPtr; 591978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik 592978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik/** 593978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * xmlDOMWrapAcquireNsFunction: 594978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * @ctxt: a DOM wrapper context 595f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel Veillard * @node: the context node (element or attribute) 596978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * @nsName: the requested namespace name 597f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel Veillard * @nsPrefix: the requested namespace prefix 598978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * 599978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * A function called to acquire namespaces (xmlNs) from the wrapper. 600978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * 601978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * Returns an xmlNsPtr or NULL in case of an error. 602978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik */ 603978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchciktypedef xmlNsPtr (*xmlDOMWrapAcquireNsFunction) (xmlDOMWrapCtxtPtr ctxt, 604978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik xmlNodePtr node, 605978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik const xmlChar *nsName, 606978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik const xmlChar *nsPrefix); 607978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik 608978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik/** 609978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * xmlDOMWrapCtxt: 610978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * 611978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * Context for DOM wrapper-operations. 612978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik */ 613bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcikstruct _xmlDOMWrapCtxt { 614bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik void * _private; 615978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik /* 616978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * The type of this context, just in case we need specialized 617978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * contexts in the future. 618978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik */ 619978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik int type; 620978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik /* 621978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * Internal namespace map used for various operations. 622978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik */ 623978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik void * namespaceMap; 624978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik /* 625978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * Use this one to acquire an xmlNsPtr intended for node->ns. 626978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik * (Note that this is not intended for elem->nsDef). 627978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik */ 628978039bbd89fa2daada209e270524d20c9e3ca7eKasimier T. Buchcik xmlDOMWrapAcquireNsFunction getNsForNodeFunc; 629bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik}; 630bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik 631bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 632bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlChildrenNode: 633bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 634a0e7e9346492edd1b67d57efa305ddfec1768b3aMST * Macro for compatibility naming layer with libxml1. Maps 635a0e7e9346492edd1b67d57efa305ddfec1768b3aMST * to "children." 6363473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 6373473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#ifndef xmlChildrenNode 6383473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#define xmlChildrenNode children 639bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard#endif 640bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 641bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 642bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlRootNode: 643bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 644f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel Veillard * Macro for compatibility naming layer with libxml1. Maps 645a0e7e9346492edd1b67d57efa305ddfec1768b3aMST * to "children". 646bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 647bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard#ifndef xmlRootNode 6483473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#define xmlRootNode children 6493473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#endif 6503473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 6513473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 6523473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * Variables. 6533473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 6543473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 655c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard/* 656c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard * Some helper functions 657c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard */ 65844313c0a7e1bd9021b70822a3711f5d0687ebf54Patrick Monnerat#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || \ 65944313c0a7e1bd9021b70822a3711f5d0687ebf54Patrick Monnerat defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_DEBUG_ENABLED) || \ 66044313c0a7e1bd9021b70822a3711f5d0687ebf54Patrick Monnerat defined (LIBXML_HTML_ENABLED) || defined(LIBXML_SAX1_ENABLED) || \ 66144313c0a7e1bd9021b70822a3711f5d0687ebf54Patrick Monnerat defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || \ 6627a72f4afd5b3f57e3fd1097461cc3416061cf6ffDaniel Veillard defined(LIBXML_DOCB_ENABLED) || defined(LIBXML_LEGACY_ENABLED) 66376874e4516a1d7b467d400604f8aef77be015727Igor ZlatkovicXMLPUBFUN int XMLCALL 66476874e4516a1d7b467d400604f8aef77be015727Igor Zlatkovic xmlValidateNCName (const xmlChar *value, 665c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard int space); 66621e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif 66721e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack 66821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) 669f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 670aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlValidateQName (const xmlChar *value, 671c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard int space); 672f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 673aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlValidateName (const xmlChar *value, 674c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard int space); 675f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 676aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlValidateNMToken (const xmlChar *value, 677c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard int space); 67821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif 679c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard 680f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlChar * XMLCALL 681aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBuildQName (const xmlChar *ncname, 682c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard const xmlChar *prefix, 683c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard xmlChar *memory, 684c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard int len); 685f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlChar * XMLCALL 686aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSplitQName2 (const xmlChar *name, 687c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard xmlChar **prefix); 688f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN const xmlChar * XMLCALL 689aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSplitQName3 (const xmlChar *name, 6908d73bcb50f91dacb48c2ad61169cb2adc18c1eaeDaniel Veillard int *len); 6918d73bcb50f91dacb48c2ad61169cb2adc18c1eaeDaniel Veillard 6923473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 69318e1f1f1180c4d48ed52bf995b3c700c2cefb492Daniel Veillard * Handling Buffers, the old ones see @xmlBuf for the new ones. 6943473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 6953473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 696f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 697aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSetBufferAllocationScheme(xmlBufferAllocationScheme scheme); 698f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlBufferAllocationScheme XMLCALL 699aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlGetBufferAllocationScheme(void); 700aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic 701f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlBufferPtr XMLCALL 702aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferCreate (void); 703f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlBufferPtr XMLCALL 704aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferCreateSize (size_t size); 705f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlBufferPtr XMLCALL 7065335055ef698595d4a4b7e4613fd057a45166849Daniel Veillard xmlBufferCreateStatic (void *mem, 7075335055ef698595d4a4b7e4613fd057a45166849Daniel Veillard size_t size); 708f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 709aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferResize (xmlBufferPtr buf, 71056a4cb8c4d3eab4ab3295a61c87e8e92483922c6Daniel Veillard unsigned int size); 711f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 712aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferFree (xmlBufferPtr buf); 713f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 714aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferDump (FILE *file, 7153473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlBufferPtr buf); 716f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 717aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferAdd (xmlBufferPtr buf, 7183473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *str, 7193473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 720f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 721aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferAddHead (xmlBufferPtr buf, 7223473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *str, 7233473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 724f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 725aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferCat (xmlBufferPtr buf, 7263473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *str); 727f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 728aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferCCat (xmlBufferPtr buf, 7293473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const char *str); 730f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 731aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferShrink (xmlBufferPtr buf, 7323473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor unsigned int len); 733f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 734aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferGrow (xmlBufferPtr buf, 7353473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor unsigned int len); 736f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 737aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferEmpty (xmlBufferPtr buf); 738f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN const xmlChar* XMLCALL 73995ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlBufferContent (const xmlBuffer *buf); 7407d553f834e2573c3352dc61a70ce4a7506db3c8cConrad IrwinXMLPUBFUN xmlChar* XMLCALL 7413b666224623d7b9dc7855073fe0bad7d4a90ff93Daniel Veillard xmlBufferDetach (xmlBufferPtr buf); 742f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 743aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferSetAllocationScheme(xmlBufferPtr buf, 7443473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlBufferAllocationScheme scheme); 745f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 74695ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlBufferLength (const xmlBuffer *buf); 7473473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 7483473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 74961f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Creating/freeing new structures. 7503473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 751f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlDtdPtr XMLCALL 752aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCreateIntSubset (xmlDocPtr doc, 7533473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 7543473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *ExternalID, 7553473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *SystemID); 756f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlDtdPtr XMLCALL 757aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDtd (xmlDocPtr doc, 7583473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 7593473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *ExternalID, 7603473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *SystemID); 761f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlDtdPtr XMLCALL 76295ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlGetIntSubset (const xmlDoc *doc); 763f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 764aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreeDtd (xmlDtdPtr cur); 76521e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#ifdef LIBXML_LEGACY_ENABLED 766f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNsPtr XMLCALL 767aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewGlobalNs (xmlDocPtr doc, 7683473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *href, 7693473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *prefix); 77021e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* LIBXML_LEGACY_ENABLED */ 771f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNsPtr XMLCALL 772aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewNs (xmlNodePtr node, 7733473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *href, 7743473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *prefix); 775f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 776aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreeNs (xmlNsPtr cur); 777f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 778aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreeNsList (xmlNsPtr cur); 779f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlDocPtr XMLCALL 780aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDoc (const xmlChar *version); 781f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 782aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreeDoc (xmlDocPtr cur); 783f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlAttrPtr XMLCALL 784aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDocProp (xmlDocPtr doc, 7853473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 7863473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value); 78721e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || \ 78821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack defined(LIBXML_SCHEMAS_ENABLED) 789f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlAttrPtr XMLCALL 790aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewProp (xmlNodePtr node, 7913473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 7923473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value); 79321e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif 794f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlAttrPtr XMLCALL 795aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewNsProp (xmlNodePtr node, 7963473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNsPtr ns, 7973473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 7983473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value); 799f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlAttrPtr XMLCALL 800aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewNsPropEatName (xmlNodePtr node, 80146de64e9c01af2dc20bd49482716746b33737f5eDaniel Veillard xmlNsPtr ns, 80246de64e9c01af2dc20bd49482716746b33737f5eDaniel Veillard xmlChar *name, 80346de64e9c01af2dc20bd49482716746b33737f5eDaniel Veillard const xmlChar *value); 804f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 805aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreePropList (xmlAttrPtr cur); 806f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 807aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreeProp (xmlAttrPtr cur); 808f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlAttrPtr XMLCALL 809aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCopyProp (xmlNodePtr target, 8103473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlAttrPtr cur); 811f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlAttrPtr XMLCALL 812aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCopyPropList (xmlNodePtr target, 8133473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlAttrPtr cur); 814652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#ifdef LIBXML_TREE_ENABLED 815f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlDtdPtr XMLCALL 816aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCopyDtd (xmlDtdPtr dtd); 81721e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* LIBXML_TREE_ENABLED */ 81821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) 819f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlDocPtr XMLCALL 820aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCopyDoc (xmlDocPtr doc, 8213473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int recursive); 82221e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) */ 8233473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 82461f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Creating new nodes. 8253473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 826f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 827aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDocNode (xmlDocPtr doc, 8283473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNsPtr ns, 8293473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 8303473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content); 831f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 832aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDocNodeEatName (xmlDocPtr doc, 83346de64e9c01af2dc20bd49482716746b33737f5eDaniel Veillard xmlNsPtr ns, 83446de64e9c01af2dc20bd49482716746b33737f5eDaniel Veillard xmlChar *name, 83546de64e9c01af2dc20bd49482716746b33737f5eDaniel Veillard const xmlChar *content); 836f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 837aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewNode (xmlNsPtr ns, 8383473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name); 839f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 840aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewNodeEatName (xmlNsPtr ns, 84146de64e9c01af2dc20bd49482716746b33737f5eDaniel Veillard xmlChar *name); 84221e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) 843f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 844aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewChild (xmlNodePtr parent, 8453473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNsPtr ns, 8463473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 8473473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content); 84821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif 849f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 85095ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlNewDocText (const xmlDoc *doc, 8513473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content); 852f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 853aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewText (const xmlChar *content); 854f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 85503a53c34db279cbe4a305d58969beb1f26ff3d19Daniel Veillard xmlNewDocPI (xmlDocPtr doc, 85603a53c34db279cbe4a305d58969beb1f26ff3d19Daniel Veillard const xmlChar *name, 85703a53c34db279cbe4a305d58969beb1f26ff3d19Daniel Veillard const xmlChar *content); 858f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 859aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewPI (const xmlChar *name, 8603473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content); 861f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 862aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDocTextLen (xmlDocPtr doc, 8633473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content, 8643473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 865f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 866aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewTextLen (const xmlChar *content, 8673473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 868f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 869aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDocComment (xmlDocPtr doc, 8703473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content); 871f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 872aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewComment (const xmlChar *content); 873f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 874aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewCDataBlock (xmlDocPtr doc, 8753473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content, 8763473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 877f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 878aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewCharRef (xmlDocPtr doc, 8793473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name); 880f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 88195ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlNewReference (const xmlDoc *doc, 8823473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name); 883f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 88495ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlCopyNode (xmlNodePtr node, 8853473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int recursive); 886f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 88795ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlDocCopyNode (xmlNodePtr node, 88882daa81a8bf6877bafc69716ce5e9ae6897108c7Daniel Veillard xmlDocPtr doc, 88982daa81a8bf6877bafc69716ce5e9ae6897108c7Daniel Veillard int recursive); 890f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 89103a53c34db279cbe4a305d58969beb1f26ff3d19Daniel Veillard xmlDocCopyNodeList (xmlDocPtr doc, 89295ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlNodePtr node); 893f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 89495ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlCopyNodeList (xmlNodePtr node); 895652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#ifdef LIBXML_TREE_ENABLED 896f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 89721e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack xmlNewTextChild (xmlNodePtr parent, 89821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack xmlNsPtr ns, 89921e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack const xmlChar *name, 90021e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack const xmlChar *content); 901f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 90221e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack xmlNewDocRawNode (xmlDocPtr doc, 90321e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack xmlNsPtr ns, 90421e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack const xmlChar *name, 90521e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack const xmlChar *content); 906f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 907aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDocFragment (xmlDocPtr doc); 908652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#endif /* LIBXML_TREE_ENABLED */ 9093473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 9103473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 91161f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Navigating. 9123473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 913f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN long XMLCALL 91495ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlGetLineNo (const xmlNode *node); 91521e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED) 916f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlChar * XMLCALL 91795ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlGetNodePath (const xmlNode *node); 91821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED) */ 919f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 92095ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlDocGetRootElement (const xmlDoc *doc); 921f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 92295ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlGetLastChild (const xmlNode *parent); 923f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 92495ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlNodeIsText (const xmlNode *node); 925f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 92695ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlIsBlankNode (const xmlNode *node); 9273473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 9283473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 92961f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Changing the structure. 9303473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 93121e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) 932f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 933aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocSetRootElement (xmlDocPtr doc, 9343473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr root); 93521e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) */ 93621e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#ifdef LIBXML_TREE_ENABLED 937f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 938aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeSetName (xmlNodePtr cur, 9393473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name); 940652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#endif /* LIBXML_TREE_ENABLED */ 941f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 942aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlAddChild (xmlNodePtr parent, 9433473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr cur); 944f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 945aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlAddChildList (xmlNodePtr parent, 9463473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr cur); 94721e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) 948f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 949aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlReplaceNode (xmlNodePtr old, 9503473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr cur); 95121e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) */ 95221e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || \ 9537a72f4afd5b3f57e3fd1097461cc3416061cf6ffDaniel Veillard defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) 954f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 955652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard xmlAddPrevSibling (xmlNodePtr cur, 9563473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr elem); 95721e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* LIBXML_TREE_ENABLED || LIBXML_HTML_ENABLED || LIBXML_SCHEMAS_ENABLED */ 958f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 959652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard xmlAddSibling (xmlNodePtr cur, 9603473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr elem); 961f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 962aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlAddNextSibling (xmlNodePtr cur, 9633473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr elem); 964f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 965aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlUnlinkNode (xmlNodePtr cur); 966f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 967aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlTextMerge (xmlNodePtr first, 9683473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr second); 969f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 970aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlTextConcat (xmlNodePtr node, 9713473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content, 9723473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 973f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 974aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreeNodeList (xmlNodePtr cur); 975f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 976aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreeNode (xmlNodePtr cur); 977f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 978aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSetTreeDoc (xmlNodePtr tree, 9793473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr doc); 980f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 981aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSetListDoc (xmlNodePtr list, 9823473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr doc); 9833473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 98461f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Namespaces. 9853473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 986f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNsPtr XMLCALL 987aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSearchNs (xmlDocPtr doc, 9883473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr node, 9893473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *nameSpace); 990f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNsPtr XMLCALL 991aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSearchNsByHref (xmlDocPtr doc, 9923473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr node, 9933473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *href); 99444313c0a7e1bd9021b70822a3711f5d0687ebf54Patrick Monnerat#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || \ 99544313c0a7e1bd9021b70822a3711f5d0687ebf54Patrick Monnerat defined(LIBXML_SCHEMAS_ENABLED) 996f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNsPtr * XMLCALL 99795ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlGetNsList (const xmlDoc *doc, 99895ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx const xmlNode *node); 99921e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) */ 1000652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard 1001f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1002aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSetNs (xmlNodePtr node, 10033473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNsPtr ns); 1004f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNsPtr XMLCALL 1005aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCopyNamespace (xmlNsPtr cur); 1006f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNsPtr XMLCALL 1007aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCopyNamespaceList (xmlNsPtr cur); 10083473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 10093473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 10103473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * Changing the content. 10113473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 101244313c0a7e1bd9021b70822a3711f5d0687ebf54Patrick Monnerat#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || \ 101344313c0a7e1bd9021b70822a3711f5d0687ebf54Patrick Monnerat defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED) 1014f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlAttrPtr XMLCALL 1015aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSetProp (xmlNodePtr node, 10163473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 10173473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value); 1018f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlAttrPtr XMLCALL 101921e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack xmlSetNsProp (xmlNodePtr node, 102021e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack xmlNsPtr ns, 102121e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack const xmlChar *name, 102221e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack const xmlChar *value); 102344313c0a7e1bd9021b70822a3711f5d0687ebf54Patrick Monnerat#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || \ 102444313c0a7e1bd9021b70822a3711f5d0687ebf54Patrick Monnerat defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED) */ 1025f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlChar * XMLCALL 102695ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlGetNoNsProp (const xmlNode *node, 10273473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name); 1028f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlChar * XMLCALL 102995ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlGetProp (const xmlNode *node, 103071531f33450f9a809eab050104e55c84b77b2a9eDaniel Veillard const xmlChar *name); 1031f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlAttrPtr XMLCALL 103295ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlHasProp (const xmlNode *node, 10333473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name); 1034f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlAttrPtr XMLCALL 103595ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlHasNsProp (const xmlNode *node, 1036e95e2396f34e7e7c5f472ad018d7207974074225Daniel Veillard const xmlChar *name, 1037ca2366aafd4c9ff3bf7c166bde18ce9af50e6995Daniel Veillard const xmlChar *nameSpace); 1038f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlChar * XMLCALL 103995ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlGetNsProp (const xmlNode *node, 10403473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 10413473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *nameSpace); 1042f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 104395ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlStringGetNodeList (const xmlDoc *doc, 10443473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value); 1045f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 104695ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlStringLenGetNodeList (const xmlDoc *doc, 10473473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value, 10483473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 1049f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlChar * XMLCALL 1050aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeListGetString (xmlDocPtr doc, 105195ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx const xmlNode *list, 10523473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int inLine); 1053652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#ifdef LIBXML_TREE_ENABLED 1054f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlChar * XMLCALL 105595ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlNodeListGetRawString (const xmlDoc *doc, 105695ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx const xmlNode *list, 10573473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int inLine); 1058652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#endif /* LIBXML_TREE_ENABLED */ 1059f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1060aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeSetContent (xmlNodePtr cur, 10613473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content); 1062652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#ifdef LIBXML_TREE_ENABLED 1063f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1064aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeSetContentLen (xmlNodePtr cur, 10653473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content, 10663473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 1067652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#endif /* LIBXML_TREE_ENABLED */ 1068f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1069aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeAddContent (xmlNodePtr cur, 10703473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content); 1071f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1072aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeAddContentLen (xmlNodePtr cur, 10733473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content, 10743473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 1075f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlChar * XMLCALL 107695ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlNodeGetContent (const xmlNode *cur); 1077dddeede060f7c01788274c4f5f006d4923f9a7aaDaniel Veillard 10787869729c8e344b3675994877155efe1c4260683dDaniel VeillardXMLPUBFUN int XMLCALL 10797869729c8e344b3675994877155efe1c4260683dDaniel Veillard xmlNodeBufGetContent (xmlBufferPtr buffer, 108095ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx const xmlNode *cur); 1081dddeede060f7c01788274c4f5f006d4923f9a7aaDaniel VeillardXMLPUBFUN int XMLCALL 1082dddeede060f7c01788274c4f5f006d4923f9a7aaDaniel Veillard xmlBufGetNodeContent (xmlBufPtr buf, 108395ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx const xmlNode *cur); 1084dddeede060f7c01788274c4f5f006d4923f9a7aaDaniel Veillard 1085f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlChar * XMLCALL 108695ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlNodeGetLang (const xmlNode *cur); 1087f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 108895ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlNodeGetSpacePreserve (const xmlNode *cur); 1089652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#ifdef LIBXML_TREE_ENABLED 1090f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1091aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeSetLang (xmlNodePtr cur, 10923473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *lang); 1093f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1094aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeSetSpacePreserve (xmlNodePtr cur, 1095d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard int val); 1096652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#endif /* LIBXML_TREE_ENABLED */ 1097f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN xmlChar * XMLCALL 109895ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlNodeGetBase (const xmlDoc *doc, 109995ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx const xmlNode *cur); 110021e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) 1101f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1102aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeSetBase (xmlNodePtr cur, 1103f85ce8e334f448078a3d71a812824fa5b45d9b07Daniel Veillard const xmlChar *uri); 110421e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif 11053473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 11063473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 11073473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * Removing content. 11083473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 1109f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 1110aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlRemoveProp (xmlAttrPtr cur); 111121e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) 1112f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 1113aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlUnsetNsProp (xmlNodePtr node, 11149403a0495dcbdfa430b669b4e3d689d8e208c687Daniel Veillard xmlNsPtr ns, 11159403a0495dcbdfa430b669b4e3d689d8e208c687Daniel Veillard const xmlChar *name); 1116f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 111721e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack xmlUnsetProp (xmlNodePtr node, 111821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack const xmlChar *name); 111921e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) */ 11203473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 11213473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 112261f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Internal, don't use. 11233473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 1124f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1125aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferWriteCHAR (xmlBufferPtr buf, 11263473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *string); 1127f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1128aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferWriteChar (xmlBufferPtr buf, 11293473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const char *string); 1130f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1131aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferWriteQuotedString(xmlBufferPtr buf, 11323473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *string); 11333473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 113421e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#ifdef LIBXML_OUTPUT_ENABLED 1135a9c612c3ee115278fb8dc0cac1b2f2e362f0c052William M. BrackXMLPUBFUN void xmlAttrSerializeTxtContent(xmlBufferPtr buf, 1136a9c612c3ee115278fb8dc0cac1b2f2e362f0c052William M. Brack xmlDocPtr doc, 1137a9c612c3ee115278fb8dc0cac1b2f2e362f0c052William M. Brack xmlAttrPtr attr, 1138a9c612c3ee115278fb8dc0cac1b2f2e362f0c052William M. Brack const xmlChar *string); 113921e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* LIBXML_OUTPUT_ENABLED */ 1140a9c612c3ee115278fb8dc0cac1b2f2e362f0c052William M. Brack 114121e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#ifdef LIBXML_TREE_ENABLED 11423473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 114361f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Namespace handling. 11443473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 1145f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 1146aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlReconciliateNs (xmlDocPtr doc, 11473473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr tree); 114821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif 11493473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1150a9cce9cd0d7aff3ec318b5d8d376da131b6aaad4Daniel Veillard#ifdef LIBXML_OUTPUT_ENABLED 11513473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 115261f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Saving. 11533473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 1154f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1155aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocDumpFormatMemory (xmlDocPtr cur, 1156963d2ae41574066f9b44bcae610dd280c1e57dd8Daniel Veillard xmlChar **mem, 11573473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int *size, 11583473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int format); 1159f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1160aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocDumpMemory (xmlDocPtr cur, 1161963d2ae41574066f9b44bcae610dd280c1e57dd8Daniel Veillard xmlChar **mem, 11623473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int *size); 1163f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1164aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocDumpMemoryEnc (xmlDocPtr out_doc, 11653473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlChar **doc_txt_ptr, 11663473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int * doc_txt_len, 11673473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const char *txt_encoding); 1168f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1169aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocDumpFormatMemoryEnc(xmlDocPtr out_doc, 11703473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlChar **doc_txt_ptr, 11713473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int * doc_txt_len, 11723473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const char *txt_encoding, 11733473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int format); 1174f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 1175aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocFormatDump (FILE *f, 11769e4123023a930924e26ca965ef14ea67bff7dfc3Daniel Veillard xmlDocPtr cur, 11779e4123023a930924e26ca965ef14ea67bff7dfc3Daniel Veillard int format); 1178f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 1179aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocDump (FILE *f, 11803473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr cur); 1181f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1182aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlElemDump (FILE *f, 11833473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr doc, 11843473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr cur); 1185f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 1186aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSaveFile (const char *filename, 11873473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr cur); 1188f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 1189aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSaveFormatFile (const char *filename, 119067fee94e53838c397f53c1ea4d098a5b9d728896Daniel Veillard xmlDocPtr cur, 119167fee94e53838c397f53c1ea4d098a5b9d728896Daniel Veillard int format); 1192dddeede060f7c01788274c4f5f006d4923f9a7aaDaniel VeillardXMLPUBFUN size_t XMLCALL 1193dddeede060f7c01788274c4f5f006d4923f9a7aaDaniel Veillard xmlBufNodeDump (xmlBufPtr buf, 1194dddeede060f7c01788274c4f5f006d4923f9a7aaDaniel Veillard xmlDocPtr doc, 1195dddeede060f7c01788274c4f5f006d4923f9a7aaDaniel Veillard xmlNodePtr cur, 1196dddeede060f7c01788274c4f5f006d4923f9a7aaDaniel Veillard int level, 1197dddeede060f7c01788274c4f5f006d4923f9a7aaDaniel Veillard int format); 1198f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 1199aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeDump (xmlBufferPtr buf, 12003473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr doc, 12013473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr cur, 12023473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int level, 12033473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int format); 12043473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1205f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 1206aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSaveFileTo (xmlOutputBufferPtr buf, 12075a37bde34b693bc0296a2f03b775773e265b4c0eCET xmlDocPtr cur, 12085a37bde34b693bc0296a2f03b775773e265b4c0eCET const char *encoding); 1209f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 1210aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSaveFormatFileTo (xmlOutputBufferPtr buf, 12113473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr cur, 12125a37bde34b693bc0296a2f03b775773e265b4c0eCET const char *encoding, 12135a37bde34b693bc0296a2f03b775773e265b4c0eCET int format); 1214f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1215aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeDumpOutput (xmlOutputBufferPtr buf, 12165a37bde34b693bc0296a2f03b775773e265b4c0eCET xmlDocPtr doc, 12175a37bde34b693bc0296a2f03b775773e265b4c0eCET xmlNodePtr cur, 12185a37bde34b693bc0296a2f03b775773e265b4c0eCET int level, 12195a37bde34b693bc0296a2f03b775773e265b4c0eCET int format, 12203473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const char *encoding); 12213473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1222f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 1223aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSaveFormatFileEnc (const char *filename, 1224d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard xmlDocPtr cur, 1225d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard const char *encoding, 1226d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard int format); 1227f012a64d13d85d53eac0d4d6625508109e7c9e9dDaniel Veillard 1228f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 1229aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSaveFileEnc (const char *filename, 12303473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr cur, 12313473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const char *encoding); 12323473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1233a9cce9cd0d7aff3ec318b5d8d376da131b6aaad4Daniel Veillard#endif /* LIBXML_OUTPUT_ENABLED */ 12343473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 1235d5c2f92df449ae53e31a81f268aa8aa608a4f633Daniel Veillard * XHTML 1236d5c2f92df449ae53e31a81f268aa8aa608a4f633Daniel Veillard */ 1237f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 1238aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlIsXHTML (const xmlChar *systemID, 1239d5c2f92df449ae53e31a81f268aa8aa608a4f633Daniel Veillard const xmlChar *publicID); 1240d5c2f92df449ae53e31a81f268aa8aa608a4f633Daniel Veillard 1241d5c2f92df449ae53e31a81f268aa8aa608a4f633Daniel Veillard/* 124261f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Compression. 12433473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 1244f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 124595ebe53b50dfcff1fc5378309bc4f3c58173298eKurt Roeckx xmlGetDocCompressMode (const xmlDoc *doc); 1246f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1247aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSetDocCompressMode (xmlDocPtr doc, 12483473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int mode); 1249f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN int XMLCALL 1250aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlGetCompressMode (void); 1251f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel VeillardXMLPUBFUN void XMLCALL 1252aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSetCompressMode (int mode); 12533473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1254bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik/* 1255bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik* DOM-wrapper helper functions. 1256bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik*/ 12574d9c948fd7d189834381361395c5b38e1b0a7b87Kasimier T. BuchcikXMLPUBFUN xmlDOMWrapCtxtPtr XMLCALL 12584d9c948fd7d189834381361395c5b38e1b0a7b87Kasimier T. Buchcik xmlDOMWrapNewCtxt (void); 12594d9c948fd7d189834381361395c5b38e1b0a7b87Kasimier T. BuchcikXMLPUBFUN void XMLCALL 12604d9c948fd7d189834381361395c5b38e1b0a7b87Kasimier T. Buchcik xmlDOMWrapFreeCtxt (xmlDOMWrapCtxtPtr ctxt); 1261bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. BuchcikXMLPUBFUN int XMLCALL 1262bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlDOMWrapReconcileNamespaces(xmlDOMWrapCtxtPtr ctxt, 1263bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlNodePtr elem, 1264bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik int options); 1265bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. BuchcikXMLPUBFUN int XMLCALL 1266bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlDOMWrapAdoptNode (xmlDOMWrapCtxtPtr ctxt, 1267bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlDocPtr sourceDoc, 1268bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlNodePtr node, 1269f8e3db0445a1bc8cfe3f77326b07ec161482caa2Daniel Veillard xmlDocPtr destDoc, 1270bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlNodePtr destParent, 1271bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik int options); 1272bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. BuchcikXMLPUBFUN int XMLCALL 1273bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlDOMWrapRemoveNode (xmlDOMWrapCtxtPtr ctxt, 1274bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlDocPtr doc, 1275bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlNodePtr node, 1276bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik int options); 1277a81d9199c6d152d4789217f7c45563e9155dd457Kasimier T. BuchcikXMLPUBFUN int XMLCALL 1278a81d9199c6d152d4789217f7c45563e9155dd457Kasimier T. Buchcik xmlDOMWrapCloneNode (xmlDOMWrapCtxtPtr ctxt, 1279a81d9199c6d152d4789217f7c45563e9155dd457Kasimier T. Buchcik xmlDocPtr sourceDoc, 1280a81d9199c6d152d4789217f7c45563e9155dd457Kasimier T. Buchcik xmlNodePtr node, 1281a81d9199c6d152d4789217f7c45563e9155dd457Kasimier T. Buchcik xmlNodePtr *clonedNode, 1282a81d9199c6d152d4789217f7c45563e9155dd457Kasimier T. Buchcik xmlDocPtr destDoc, 1283a81d9199c6d152d4789217f7c45563e9155dd457Kasimier T. Buchcik xmlNodePtr destParent, 1284a81d9199c6d152d4789217f7c45563e9155dd457Kasimier T. Buchcik int deep, 1285a81d9199c6d152d4789217f7c45563e9155dd457Kasimier T. Buchcik int options); 1286bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik 1287be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel Veillard#ifdef LIBXML_TREE_ENABLED 1288be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel Veillard/* 1289be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel Veillard * 5 interfaces from DOM ElementTraversal, but different in entities 1290be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel Veillard * traversal. 1291be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel Veillard */ 1292be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel VeillardXMLPUBFUN unsigned long XMLCALL 1293be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel Veillard xmlChildElementCount (xmlNodePtr parent); 1294be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 1295be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel Veillard xmlNextElementSibling (xmlNodePtr node); 1296be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 1297be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel Veillard xmlFirstElementChild (xmlNodePtr parent); 1298be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 1299be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel Veillard xmlLastElementChild (xmlNodePtr parent); 1300be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 1301be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel Veillard xmlPreviousElementSibling (xmlNodePtr node); 1302be2bd6ac6fb512d322a059408c6fd80a91b091cfDaniel Veillard#endif 13033473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#ifdef __cplusplus 13043473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor} 13053473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#endif 13066c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillard#ifndef __XML_PARSER_H__ 13076c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillard#include <libxml/xmlmemory.h> 13086c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillard#endif 13093473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 13103473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#endif /* __XML_TREE_H__ */ 13113473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1312