tree.h revision 1f33c4d61f3cc9820643ef726b373ec3044bcac3
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> 163473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#include <libxml/xmlversion.h> 17a2e844a3b3503367a4418187e77ccc977f186909William M. Brack#include <libxml/xmlstring.h> 187ae91bcd9e94946a7be41290cb67ffc9c2cf0a9fIgor Zlatkovic 193473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#ifdef __cplusplus 203473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorextern "C" { 213473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#endif 223473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 238bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard/* 248bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard * Some of the basic types pointer to structures: 258bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard */ 268bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard/* xmlIO.h */ 278bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillardtypedef struct _xmlParserInputBuffer xmlParserInputBuffer; 288bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillardtypedef xmlParserInputBuffer *xmlParserInputBufferPtr; 298bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard 305a37bde34b693bc0296a2f03b775773e265b4c0eCETtypedef struct _xmlOutputBuffer xmlOutputBuffer; 315a37bde34b693bc0296a2f03b775773e265b4c0eCETtypedef xmlOutputBuffer *xmlOutputBufferPtr; 325a37bde34b693bc0296a2f03b775773e265b4c0eCET 338bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard/* parser.h */ 348bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillardtypedef struct _xmlParserInput xmlParserInput; 358bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillardtypedef xmlParserInput *xmlParserInputPtr; 368bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard 378bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillardtypedef struct _xmlParserCtxt xmlParserCtxt; 388bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillardtypedef xmlParserCtxt *xmlParserCtxtPtr; 398bdb91dd5c6c6c89cd1668ba78b1048239ca6ca6Daniel Veillard 406c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillardtypedef struct _xmlSAXLocator xmlSAXLocator; 416c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillardtypedef xmlSAXLocator *xmlSAXLocatorPtr; 426c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillard 436c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillardtypedef struct _xmlSAXHandler xmlSAXHandler; 446c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillardtypedef xmlSAXHandler *xmlSAXHandlerPtr; 456c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillard 466c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillard/* entities.h */ 476c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillardtypedef struct _xmlEntity xmlEntity; 486c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillardtypedef xmlEntity *xmlEntityPtr; 496c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillard 509d06d300a5c4146907b3af8fcbf67d8e7d868567Daniel Veillard/** 519d06d300a5c4146907b3af8fcbf67d8e7d868567Daniel Veillard * BASE_BUFFER_SIZE: 529d06d300a5c4146907b3af8fcbf67d8e7d868567Daniel Veillard * 5361f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * default buffer size 4000. 549d06d300a5c4146907b3af8fcbf67d8e7d868567Daniel Veillard */ 556155d8aafa3cc60b5fdaaf75b423e489ea8280c4Daniel Veillard#define BASE_BUFFER_SIZE 4096 56d0463560300f1d8b3e41d70c3728ed84fdc8dd30Daniel Veillard 575e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard/** 585e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * XML_XML_NAMESPACE: 595e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * 605e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * This is the namespace for the special xml: prefix predefined in the 6161f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * XML Namespace specification. 625e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard */ 633473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#define XML_XML_NAMESPACE \ 643473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor (const xmlChar *) "http://www.w3.org/XML/1998/namespace" 653473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 6667f8b1cd960d809819342ada338444ed24739a55Daniel Veillard/** 6767f8b1cd960d809819342ada338444ed24739a55Daniel Veillard * XML_XML_ID: 6867f8b1cd960d809819342ada338444ed24739a55Daniel Veillard * 6967f8b1cd960d809819342ada338444ed24739a55Daniel Veillard * This is the name for the special xml:id attribute 7067f8b1cd960d809819342ada338444ed24739a55Daniel Veillard */ 7167f8b1cd960d809819342ada338444ed24739a55Daniel Veillard#define XML_XML_ID (const xmlChar *) "xml:id" 7267f8b1cd960d809819342ada338444ed24739a55Daniel Veillard 733473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 7461f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * The different element types carried by an XML tree. 753473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * 763473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * NOTE: This is synchronized with DOM Level1 values 773473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * See http://www.w3.org/TR/REC-DOM-Level-1/ 783473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * 793473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * Actually this had diverged a bit, and now XML_DOCUMENT_TYPE_NODE should 803473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * be deprecated to use an XML_DTD_NODE. 813473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 823473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef enum { 833473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_NODE= 1, 843473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_NODE= 2, 853473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_TEXT_NODE= 3, 863473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_CDATA_SECTION_NODE= 4, 873473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ENTITY_REF_NODE= 5, 883473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ENTITY_NODE= 6, 893473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_PI_NODE= 7, 903473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_COMMENT_NODE= 8, 913473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_DOCUMENT_NODE= 9, 923473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_DOCUMENT_TYPE_NODE= 10, 933473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_DOCUMENT_FRAG_NODE= 11, 943473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_NOTATION_NODE= 12, 953473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_HTML_DOCUMENT_NODE= 13, 963473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_DTD_NODE= 14, 973473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_DECL= 15, 983473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_DECL= 16, 993473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ENTITY_DECL= 17, 1003473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_NAMESPACE_DECL= 18, 1013473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_XINCLUDE_START= 19, 1023473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_XINCLUDE_END= 20 103eae522a0d8aa9f830d2e447f29b504030dbb6bbdDaniel Veillard#ifdef LIBXML_DOCB_ENABLED 104eae522a0d8aa9f830d2e447f29b504030dbb6bbdDaniel Veillard ,XML_DOCB_DOCUMENT_NODE= 21 1053473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#endif 1063473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor} xmlElementType; 1073473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1083473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 109bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 110bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlNotation: 111bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 11261f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * A DTD Notation definition. 1133473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 1143473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1153473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlNotation xmlNotation; 1163473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlNotation *xmlNotationPtr; 1173473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlNotation { 1189e7160d45a18bfa26d708e22ba991f7670d0128bDaniel Veillard const xmlChar *name; /* Notation name */ 1193473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *PublicID; /* Public identifier, if any */ 1203473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *SystemID; /* System identifier, if any */ 1213473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 1223473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 123bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 124bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlAttributeType: 125bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 12661f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * A DTD Attribute type definition. 1273473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 1283473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1293473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef enum { 1303473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_CDATA = 1, 1313473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_ID, 1323473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_IDREF , 1333473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_IDREFS, 1343473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_ENTITY, 1353473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_ENTITIES, 1363473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_NMTOKEN, 1373473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_NMTOKENS, 1383473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_ENUMERATION, 1393473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_NOTATION 1403473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor} xmlAttributeType; 1413473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 142bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 143bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlAttributeDefault: 144bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 14561f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * A DTD Attribute default definition. 146bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 147bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 1483473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef enum { 1493473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_NONE = 1, 1503473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_REQUIRED, 1513473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_IMPLIED, 1523473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ATTRIBUTE_FIXED 1533473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor} xmlAttributeDefault; 1543473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 155bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 156bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlEnumeration: 157bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 15861f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * List structure used when there is an enumeration in DTDs. 159bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 160bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 1613473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlEnumeration xmlEnumeration; 1623473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlEnumeration *xmlEnumerationPtr; 1633473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlEnumeration { 1643473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlEnumeration *next; /* next one */ 1653473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name; /* Enumeration name */ 1663473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 1673473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 168bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 169bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlAttribute: 170bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 17161f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * An Attribute declaration in a DTD. 172bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 173bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 1743473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlAttribute xmlAttribute; 1753473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlAttribute *xmlAttributePtr; 1763473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlAttribute { 1770ec986359adc04677529d5e704ff30bf8e5d3a05Daniel Veillard void *_private; /* application data */ 1783473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementType type; /* XML_ATTRIBUTE_DECL, must be second ! */ 1793473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name; /* Attribute name */ 1803473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *children; /* NULL */ 1813473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *last; /* NULL */ 1823473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDtd *parent; /* -> DTD */ 1833473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *next; /* next sibling link */ 1843473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *prev; /* previous sibling link */ 1853473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDoc *doc; /* the containing document */ 1863473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1873473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlAttribute *nexth; /* next in hash table */ 1883473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlAttributeType atype; /* The attribute type */ 1893473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlAttributeDefault def; /* the default */ 1903473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *defaultValue; /* or the default value */ 1913473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlEnumerationPtr tree; /* or the enumeration tree if any */ 1923473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *prefix; /* the namespace prefix if any */ 1933473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *elem; /* Element holding the attribute */ 1943473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 1953473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 196bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 197bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlElementContentType: 198bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 19961f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Possible definitions of element content types. 2003473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 2013473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef enum { 2023473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_PCDATA = 1, 2033473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_ELEMENT, 2043473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_SEQ, 2053473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_OR 2063473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor} xmlElementContentType; 2073473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 208bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 209bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlElementContentOccur: 210bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 21161f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Possible definitions of element content occurrences. 212bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 2133473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef enum { 2143473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_ONCE = 1, 2153473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_OPT, 2163473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_MULT, 2173473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_CONTENT_PLUS 2183473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor} xmlElementContentOccur; 2193473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 220bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 221bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlElementContent: 222bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 22361f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * An XML Element content as stored after parsing an element definition 224bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * in a DTD. 225bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 226bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 2273473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlElementContent xmlElementContent; 2283473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlElementContent *xmlElementContentPtr; 2293473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlElementContent { 2303473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementContentType type; /* PCDATA, ELEMENT, SEQ or OR */ 2313473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementContentOccur ocur; /* ONCE, OPT, MULT or PLUS */ 232be480fbbe3e061a28f8719175a124ddc8575e0a8Daniel Veillard const xmlChar *name; /* Element name */ 2333473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlElementContent *c1; /* first child */ 2343473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlElementContent *c2; /* second child */ 235dab4cb37d8fceb7457c40effc1ae43559221610bDaniel Veillard struct _xmlElementContent *parent; /* parent */ 236a9b66d00b5fbae2381f59c0be4d8c7b8e3c16cf7Daniel Veillard const xmlChar *prefix; /* Namespace prefix */ 2373473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 2383473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 239bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 240bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlElementTypeVal: 241bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 24261f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * The different possibilities for an element content type. 243bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 244bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 2453473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef enum { 246a10efa8aa6e8a89ad1f5fa05bd591fed02c88dbaDaniel Veillard XML_ELEMENT_TYPE_UNDEFINED = 0, 2473473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_TYPE_EMPTY = 1, 2483473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_TYPE_ANY, 2493473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_TYPE_MIXED, 2503473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_ELEMENT_TYPE_ELEMENT 2513473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor} xmlElementTypeVal; 2523473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 253aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#ifdef __cplusplus 254aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard} 255aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#endif 256aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#include <libxml/xmlregexp.h> 257aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#ifdef __cplusplus 258aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillardextern "C" { 259aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#endif 260aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard 261bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 262bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlElement: 263bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 26461f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * An XML Element declaration from a DTD. 265bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 266bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 2673473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlElement xmlElement; 2683473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlElement *xmlElementPtr; 2693473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlElement { 2700ec986359adc04677529d5e704ff30bf8e5d3a05Daniel Veillard void *_private; /* application data */ 2713473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementType type; /* XML_ELEMENT_DECL, must be second ! */ 2723473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name; /* Element name */ 2733473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *children; /* NULL */ 2743473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *last; /* NULL */ 2753473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDtd *parent; /* -> DTD */ 2763473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *next; /* next sibling link */ 2773473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *prev; /* previous sibling link */ 2783473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDoc *doc; /* the containing document */ 2793473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 2803473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementTypeVal etype; /* The type */ 2813473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementContentPtr content; /* the allowed element content */ 2823473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlAttributePtr attributes; /* List of the declared attributes */ 2833473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *prefix; /* the namespace prefix if any */ 284aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#ifdef LIBXML_REGEXP_ENABLED 285aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard xmlRegexpPtr contModel; /* the validating regexp */ 286aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#else 287aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard void *contModel; 288aeb258a9ca9206070e912d8a3ce201777333748eDaniel Veillard#endif 2893473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 2903473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 291bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 2925e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard/** 2935e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * XML_LOCAL_NAMESPACE: 2945e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * 29561f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * A namespace declaration node. 2965e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard */ 297bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard#define XML_LOCAL_NAMESPACE XML_NAMESPACE_DECL 298bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillardtypedef xmlElementType xmlNsType; 299bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 300bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 301bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlNs: 302bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 3033473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * An XML namespace. 3043473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * Note that prefix == NULL is valid, it defines the default namespace 305d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard * within the subtree (until overridden). 3063473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * 30761f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * xmlNsType is unified with xmlElementType. 3083473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 3093473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 3103473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlNs xmlNs; 3113473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlNs *xmlNsPtr; 3123473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlNs { 3133473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNs *next; /* next Ns link for this node */ 3143473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNsType type; /* global or local */ 3153473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *href; /* URL for the namespace */ 3163473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *prefix; /* prefix for the namespace */ 3178e8a703c767abfd43fdc89794f009a443096236ePDT void *_private; /* application data */ 3183473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 3193473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 320bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 321bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlDtd: 322bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 323d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard * An XML DTD, as defined by <!DOCTYPE ... There is actually one for 32461f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * the internal subset and for the external subset. 3253473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 3263473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlDtd xmlDtd; 3273473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlDtd *xmlDtdPtr; 3283473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlDtd { 3290ec986359adc04677529d5e704ff30bf8e5d3a05Daniel Veillard void *_private; /* application data */ 3303473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementType type; /* XML_DTD_NODE, must be second ! */ 3313473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name; /* Name of the DTD */ 3323473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *children; /* the value of the property link */ 3333473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *last; /* last child link */ 3343473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDoc *parent; /* child->parent link */ 3353473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *next; /* next sibling link */ 3363473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *prev; /* previous sibling link */ 3373473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDoc *doc; /* the containing document */ 3383473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 3393473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor /* End of common part */ 3403473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor void *notations; /* Hash table for notations if any */ 3413473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor void *elements; /* Hash table for elements if any */ 3423473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor void *attributes; /* Hash table for attributes if any */ 3433473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor void *entities; /* Hash table for entities if any */ 3443473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *ExternalID; /* External identifier for PUBLIC DTD */ 3453473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *SystemID; /* URI for a SYSTEM or PUBLIC DTD */ 3463473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor void *pentities; /* Hash table for param entities if any */ 3473473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 3483473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 349bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 350bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlAttr: 351bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 35261f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * An attribute on an XML node. 3533473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 3543473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlAttr xmlAttr; 3553473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlAttr *xmlAttrPtr; 3563473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlAttr { 3570ec986359adc04677529d5e704ff30bf8e5d3a05Daniel Veillard void *_private; /* application data */ 3583473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementType type; /* XML_ATTRIBUTE_NODE, must be second ! */ 3593473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name; /* the name of the property */ 3603473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *children; /* the value of the property */ 3613473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *last; /* NULL */ 3623473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *parent; /* child->parent link */ 3633473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlAttr *next; /* next sibling link */ 3643473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlAttr *prev; /* previous sibling link */ 3653473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDoc *doc; /* the containing document */ 3663473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNs *ns; /* pointer to the associated namespace */ 3673473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlAttributeType atype; /* the attribute type if validating */ 368d8850403bcacef78deb02ea41adbc0618ce3372cDaniel Veillard void *psvi; /* for type/PSVI informations */ 3693473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 3703473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 371bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 372bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlID: 373bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 3743473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * An XML ID instance. 3753473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 3763473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 3773473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlID xmlID; 3783473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlID *xmlIDPtr; 3793473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlID { 3803473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlID *next; /* next ID */ 3813473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value; /* The ID name */ 382d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard xmlAttrPtr attr; /* The attribute holding it */ 383ea7751d53bf497e873dca39b2c305e300e2574f9Daniel Veillard const xmlChar *name; /* The attribute if attr is not available */ 384ea7751d53bf497e873dca39b2c305e300e2574f9Daniel Veillard int lineno; /* The line number if attr is not available */ 3858d7b5c7ecdebc775257495bcdaa855916f2dfbb0Daniel Veillard struct _xmlDoc *doc; /* The document holding the ID */ 3863473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 3873473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 388bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 389bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlRef: 390bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 3913473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * An XML IDREF instance. 3923473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 3933473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 3943473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlRef xmlRef; 3953473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlRef *xmlRefPtr; 3963473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlRef { 3973473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlRef *next; /* next Ref */ 3983473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value; /* The Ref name */ 399d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard xmlAttrPtr attr; /* The attribute holding it */ 400ea7751d53bf497e873dca39b2c305e300e2574f9Daniel Veillard const xmlChar *name; /* The attribute if attr is not available */ 401ea7751d53bf497e873dca39b2c305e300e2574f9Daniel Veillard int lineno; /* The line number if attr is not available */ 4023473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 4033473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 404bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 405bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlBufferAllocationScheme: 406bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 407bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * A buffer allocation scheme can be defined to either match exactly the 40861f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * need or double it's allocated size each time it is found too small. 4093473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 4103473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 4113473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef enum { 4123473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor XML_BUFFER_ALLOC_DOUBLEIT, 4135335055ef698595d4a4b7e4613fd057a45166849Daniel Veillard XML_BUFFER_ALLOC_EXACT, 4145335055ef698595d4a4b7e4613fd057a45166849Daniel Veillard XML_BUFFER_ALLOC_IMMUTABLE 4153473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor} xmlBufferAllocationScheme; 4163473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 417bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 418bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlBuffer: 419bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 42061f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * A buffer structure. 421bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 4223473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlBuffer xmlBuffer; 4233473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlBuffer *xmlBufferPtr; 4243473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlBuffer { 4253473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlChar *content; /* The buffer content UTF8 */ 4263473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor unsigned int use; /* The buffer size used */ 4273473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor unsigned int size; /* The buffer size */ 4283473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlBufferAllocationScheme alloc; /* The realloc method */ 4293473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 4303473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 431f69bb4b5bf3df1982f63a331b02cd7187456492fDaniel Veillard/** 432f69bb4b5bf3df1982f63a331b02cd7187456492fDaniel Veillard * xmlNode: 433f69bb4b5bf3df1982f63a331b02cd7187456492fDaniel Veillard * 4343473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * A node in an XML tree. 4353473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 4363473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlNode xmlNode; 4373473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlNode *xmlNodePtr; 4383473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlNode { 4390ec986359adc04677529d5e704ff30bf8e5d3a05Daniel Veillard void *_private; /* application data */ 4403473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementType type; /* type number, must be second ! */ 4413473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name; /* the name of the node, or the entity */ 4423473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *children; /* parent->childs link */ 4433473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *last; /* last child link */ 4443473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *parent; /* child->parent link */ 4453473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *next; /* next sibling link */ 4463473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *prev; /* previous sibling link */ 4473473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDoc *doc; /* the containing document */ 448cbaf399537a1fb69ef97b079e4cb553869aaa4d9Daniel Veillard 449cbaf399537a1fb69ef97b079e4cb553869aaa4d9Daniel Veillard /* End of common part */ 4503473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNs *ns; /* pointer to the associated namespace */ 4513473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlChar *content; /* the content */ 4523473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlAttr *properties;/* properties list */ 4533473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNs *nsDef; /* namespace definitions on this node */ 454d8850403bcacef78deb02ea41adbc0618ce3372cDaniel Veillard void *psvi; /* for type/PSVI informations */ 4551d211e227372e5ed75a69fbad5f50d185d0af936Daniel Veillard unsigned short line; /* line number */ 4561d211e227372e5ed75a69fbad5f50d185d0af936Daniel Veillard unsigned short extra; /* extra data for XPath/XSLT */ 4573473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 4583473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 4595e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard/** 4605e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * XML_GET_CONTENT: 4615e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * 46261f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Macro to extract the content pointer of a node. 4635e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard */ 4645e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard#define XML_GET_CONTENT(n) \ 465566d4dfac3ff5f7b235738f6f63bd369533874bfDaniel Veillard ((n)->type == XML_ELEMENT_NODE ? NULL : (n)->content) 4665e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard 4675e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard/** 4685e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * XML_GET_LINE: 4695e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard * 47061f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Macro to extract the line number of an element node. 4715e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard */ 4725e2dace1ca6fbb023d1ce848d4e98deefbbfec31Daniel Veillard#define XML_GET_LINE(n) \ 473c76440fcf8ccc826df1792a093cf66b099881418Daniel Veillard (xmlGetLineNo(n)) 4747db3773a5cdafd122df5b69ba90be82535d46069Daniel Veillard 47540412cda44b2689b509a8665fb9d76e1a260e28fDaniel Veillard 476bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 477bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlDoc: 478bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 4793473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * An XML document. 4803473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 4813473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef struct _xmlDoc xmlDoc; 4823473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylortypedef xmlDoc *xmlDocPtr; 4833473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylorstruct _xmlDoc { 4840ec986359adc04677529d5e704ff30bf8e5d3a05Daniel Veillard void *_private; /* application data */ 4853473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlElementType type; /* XML_DOCUMENT_NODE, must be second ! */ 4863473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor char *name; /* name/filename/URI of the document */ 4873473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *children; /* the document tree */ 4883473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *last; /* last child link */ 4893473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *parent; /* child->parent link */ 4903473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *next; /* next sibling link */ 4913473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNode *prev; /* previous sibling link */ 4923473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDoc *doc; /* autoreference to itself */ 4933473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 4943473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor /* End of common part */ 4953473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int compression;/* level of zlib compression */ 4963473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int standalone; /* standalone document (no external refs) */ 4973473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDtd *intSubset; /* the document internal subset */ 4983473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlDtd *extSubset; /* the document external subset */ 4993473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor struct _xmlNs *oldNs; /* Global namespace, the old way */ 5003473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *version; /* the XML version string */ 5013473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *encoding; /* external initial encoding, if any */ 5023473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor void *ids; /* Hash table for ID attributes if any */ 5033473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor void *refs; /* Hash table for IDREFs attributes if any */ 5043473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *URL; /* The URI for that document */ 5053473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int charset; /* encoding of the in-memory content 5063473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor actually an xmlCharEncoding */ 50740412cda44b2689b509a8665fb9d76e1a260e28fDaniel Veillard struct _xmlDict *dict; /* dict used to allocate names or NULL */ 508d8850403bcacef78deb02ea41adbc0618ce3372cDaniel Veillard void *psvi; /* for type/PSVI informations */ 5093473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor}; 5103473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 511bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchciktypedef struct _xmlDOMWrapCtxt xmlDOMWrapCtxt; 512bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchciktypedef xmlDOMWrapCtxt *xmlDOMWrapCtxtPtr; 513bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcikstruct _xmlDOMWrapCtxt { 514bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik void * _private; 515bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik}; 516bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik 517bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 518bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlChildrenNode: 519bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 520a0e7e9346492edd1b67d57efa305ddfec1768b3aMST * Macro for compatibility naming layer with libxml1. Maps 521a0e7e9346492edd1b67d57efa305ddfec1768b3aMST * to "children." 5223473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 5233473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#ifndef xmlChildrenNode 5243473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#define xmlChildrenNode children 525bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard#endif 526bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard 527bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard/** 528bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * xmlRootNode: 529bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard * 530a0e7e9346492edd1b67d57efa305ddfec1768b3aMST * Macro for compatibility naming layer with libxml1. Maps 531a0e7e9346492edd1b67d57efa305ddfec1768b3aMST * to "children". 532bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard */ 533bed7b052a318695f5e0856f12fc0c86f66472cb3Daniel Veillard#ifndef xmlRootNode 5343473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#define xmlRootNode children 5353473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#endif 5363473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 5373473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 5383473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * Variables. 5393473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 5403473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 541c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard/* 542c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard * Some helper functions 543c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard */ 5441f33c4d61f3cc9820643ef726b373ec3044bcac3Daniel Veillard#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_DEBUG_ENABLED) || defined (LIBXML_HTML_ENABLED) 54576874e4516a1d7b467d400604f8aef77be015727Igor ZlatkovicXMLPUBFUN int XMLCALL 54676874e4516a1d7b467d400604f8aef77be015727Igor Zlatkovic xmlValidateNCName (const xmlChar *value, 547c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard int space); 54821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif 54921e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack 55021e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) 551aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 552aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlValidateQName (const xmlChar *value, 553c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard int space); 554aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 555aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlValidateName (const xmlChar *value, 556c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard int space); 557aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 558aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlValidateNMToken (const xmlChar *value, 559c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard int space); 56021e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif 561c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard 562aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlChar * XMLCALL 563aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBuildQName (const xmlChar *ncname, 564c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard const xmlChar *prefix, 565c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard xmlChar *memory, 566c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard int len); 567aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlChar * XMLCALL 568aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSplitQName2 (const xmlChar *name, 569c00cda8c065beba24706c9e8719f08e9de420274Daniel Veillard xmlChar **prefix); 570aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN const xmlChar * XMLCALL 571aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSplitQName3 (const xmlChar *name, 5728d73bcb50f91dacb48c2ad61169cb2adc18c1eaeDaniel Veillard int *len); 5738d73bcb50f91dacb48c2ad61169cb2adc18c1eaeDaniel Veillard 5743473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 5753473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * Handling Buffers. 5763473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 5773473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 578aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 579aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSetBufferAllocationScheme(xmlBufferAllocationScheme scheme); 580aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlBufferAllocationScheme XMLCALL 581aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlGetBufferAllocationScheme(void); 582aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic 583aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlBufferPtr XMLCALL 584aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferCreate (void); 585aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlBufferPtr XMLCALL 586aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferCreateSize (size_t size); 5875335055ef698595d4a4b7e4613fd057a45166849Daniel VeillardXMLPUBFUN xmlBufferPtr XMLCALL 5885335055ef698595d4a4b7e4613fd057a45166849Daniel Veillard xmlBufferCreateStatic (void *mem, 5895335055ef698595d4a4b7e4613fd057a45166849Daniel Veillard size_t size); 590aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 591aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferResize (xmlBufferPtr buf, 59256a4cb8c4d3eab4ab3295a61c87e8e92483922c6Daniel Veillard unsigned int size); 593aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 594aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferFree (xmlBufferPtr buf); 595aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 596aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferDump (FILE *file, 5973473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlBufferPtr buf); 598a3215c7ae6b1441ceb046c61cc93a70a74bd7f9cWilliam M. BrackXMLPUBFUN int XMLCALL 599aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferAdd (xmlBufferPtr buf, 6003473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *str, 6013473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 602a3215c7ae6b1441ceb046c61cc93a70a74bd7f9cWilliam M. BrackXMLPUBFUN int XMLCALL 603aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferAddHead (xmlBufferPtr buf, 6043473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *str, 6053473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 606a3215c7ae6b1441ceb046c61cc93a70a74bd7f9cWilliam M. BrackXMLPUBFUN int XMLCALL 607aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferCat (xmlBufferPtr buf, 6083473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *str); 609a3215c7ae6b1441ceb046c61cc93a70a74bd7f9cWilliam M. BrackXMLPUBFUN int XMLCALL 610aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferCCat (xmlBufferPtr buf, 6113473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const char *str); 612aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 613aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferShrink (xmlBufferPtr buf, 6143473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor unsigned int len); 615aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 616aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferGrow (xmlBufferPtr buf, 6173473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor unsigned int len); 618aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 619aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferEmpty (xmlBufferPtr buf); 620aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN const xmlChar* XMLCALL 621aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferContent (const xmlBufferPtr buf); 622aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 623aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferSetAllocationScheme(xmlBufferPtr buf, 6243473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlBufferAllocationScheme scheme); 625aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 626aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferLength (const xmlBufferPtr buf); 6273473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 6283473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 62961f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Creating/freeing new structures. 6303473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 631aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlDtdPtr XMLCALL 632aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCreateIntSubset (xmlDocPtr doc, 6333473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 6343473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *ExternalID, 6353473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *SystemID); 636aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlDtdPtr XMLCALL 637aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDtd (xmlDocPtr doc, 6383473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 6393473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *ExternalID, 6403473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *SystemID); 641aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlDtdPtr XMLCALL 642aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlGetIntSubset (xmlDocPtr doc); 643aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 644aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreeDtd (xmlDtdPtr cur); 64521e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#ifdef LIBXML_LEGACY_ENABLED 646aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNsPtr XMLCALL 647aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewGlobalNs (xmlDocPtr doc, 6483473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *href, 6493473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *prefix); 65021e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* LIBXML_LEGACY_ENABLED */ 651aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNsPtr XMLCALL 652aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewNs (xmlNodePtr node, 6533473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *href, 6543473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *prefix); 655aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 656aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreeNs (xmlNsPtr cur); 657aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 658aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreeNsList (xmlNsPtr cur); 659aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlDocPtr XMLCALL 660aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDoc (const xmlChar *version); 661aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 662aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreeDoc (xmlDocPtr cur); 663aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlAttrPtr XMLCALL 664aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDocProp (xmlDocPtr doc, 6653473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 6663473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value); 66721e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || \ 66821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack defined(LIBXML_SCHEMAS_ENABLED) 669aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlAttrPtr XMLCALL 670aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewProp (xmlNodePtr node, 6713473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 6723473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value); 67321e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif 674aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlAttrPtr XMLCALL 675aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewNsProp (xmlNodePtr node, 6763473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNsPtr ns, 6773473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 6783473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value); 679aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlAttrPtr XMLCALL 680aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewNsPropEatName (xmlNodePtr node, 68146de64e9c01af2dc20bd49482716746b33737f5eDaniel Veillard xmlNsPtr ns, 68246de64e9c01af2dc20bd49482716746b33737f5eDaniel Veillard xmlChar *name, 68346de64e9c01af2dc20bd49482716746b33737f5eDaniel Veillard const xmlChar *value); 684aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 685aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreePropList (xmlAttrPtr cur); 686aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 687aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreeProp (xmlAttrPtr cur); 688aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlAttrPtr XMLCALL 689aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCopyProp (xmlNodePtr target, 6903473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlAttrPtr cur); 691aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlAttrPtr XMLCALL 692aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCopyPropList (xmlNodePtr target, 6933473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlAttrPtr cur); 694652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#ifdef LIBXML_TREE_ENABLED 695aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlDtdPtr XMLCALL 696aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCopyDtd (xmlDtdPtr dtd); 69721e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* LIBXML_TREE_ENABLED */ 69821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) 699aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlDocPtr XMLCALL 700aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCopyDoc (xmlDocPtr doc, 7013473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int recursive); 70221e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) */ 7033473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 70461f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Creating new nodes. 7053473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 706aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 707aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDocNode (xmlDocPtr doc, 7083473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNsPtr ns, 7093473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 7103473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content); 711aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 712aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDocNodeEatName (xmlDocPtr doc, 71346de64e9c01af2dc20bd49482716746b33737f5eDaniel Veillard xmlNsPtr ns, 71446de64e9c01af2dc20bd49482716746b33737f5eDaniel Veillard xmlChar *name, 71546de64e9c01af2dc20bd49482716746b33737f5eDaniel Veillard const xmlChar *content); 716aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 717aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewNode (xmlNsPtr ns, 7183473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name); 719aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 720aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewNodeEatName (xmlNsPtr ns, 72146de64e9c01af2dc20bd49482716746b33737f5eDaniel Veillard xmlChar *name); 72221e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) 723aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 724aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewChild (xmlNodePtr parent, 7253473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNsPtr ns, 7263473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 7273473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content); 72821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif 729aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 730aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDocText (xmlDocPtr doc, 7313473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content); 732aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 733aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewText (const xmlChar *content); 734aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 73503a53c34db279cbe4a305d58969beb1f26ff3d19Daniel Veillard xmlNewDocPI (xmlDocPtr doc, 73603a53c34db279cbe4a305d58969beb1f26ff3d19Daniel Veillard const xmlChar *name, 73703a53c34db279cbe4a305d58969beb1f26ff3d19Daniel Veillard const xmlChar *content); 73803a53c34db279cbe4a305d58969beb1f26ff3d19Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 739aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewPI (const xmlChar *name, 7403473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content); 741aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 742aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDocTextLen (xmlDocPtr doc, 7433473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content, 7443473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 745aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 746aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewTextLen (const xmlChar *content, 7473473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 748aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 749aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDocComment (xmlDocPtr doc, 7503473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content); 751aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 752aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewComment (const xmlChar *content); 753aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 754aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewCDataBlock (xmlDocPtr doc, 7553473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content, 7563473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 757aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 758aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewCharRef (xmlDocPtr doc, 7593473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name); 760aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 761aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewReference (xmlDocPtr doc, 7623473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name); 763aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 764aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCopyNode (const xmlNodePtr node, 7653473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int recursive); 766aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 767aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocCopyNode (const xmlNodePtr node, 76882daa81a8bf6877bafc69716ce5e9ae6897108c7Daniel Veillard xmlDocPtr doc, 76982daa81a8bf6877bafc69716ce5e9ae6897108c7Daniel Veillard int recursive); 770aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 77103a53c34db279cbe4a305d58969beb1f26ff3d19Daniel Veillard xmlDocCopyNodeList (xmlDocPtr doc, 77203a53c34db279cbe4a305d58969beb1f26ff3d19Daniel Veillard const xmlNodePtr node); 77303a53c34db279cbe4a305d58969beb1f26ff3d19Daniel VeillardXMLPUBFUN xmlNodePtr XMLCALL 774aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCopyNodeList (const xmlNodePtr node); 775652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#ifdef LIBXML_TREE_ENABLED 776aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 77721e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack xmlNewTextChild (xmlNodePtr parent, 77821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack xmlNsPtr ns, 77921e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack const xmlChar *name, 78021e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack const xmlChar *content); 78121e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. BrackXMLPUBFUN xmlNodePtr XMLCALL 78221e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack xmlNewDocRawNode (xmlDocPtr doc, 78321e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack xmlNsPtr ns, 78421e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack const xmlChar *name, 78521e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack const xmlChar *content); 78621e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. BrackXMLPUBFUN xmlNodePtr XMLCALL 787aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNewDocFragment (xmlDocPtr doc); 788652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#endif /* LIBXML_TREE_ENABLED */ 7893473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 7903473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 79161f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Navigating. 7923473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 793aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN long XMLCALL 794aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlGetLineNo (xmlNodePtr node); 79521e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED) 796aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlChar * XMLCALL 797aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlGetNodePath (xmlNodePtr node); 79821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED) */ 799aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 800aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocGetRootElement (xmlDocPtr doc); 801aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 802aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlGetLastChild (xmlNodePtr parent); 803aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 804aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeIsText (xmlNodePtr node); 805aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 806aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlIsBlankNode (xmlNodePtr node); 8073473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 8083473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 80961f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Changing the structure. 8103473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 81121e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) 812aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 813aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocSetRootElement (xmlDocPtr doc, 8143473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr root); 81521e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) */ 81621e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#ifdef LIBXML_TREE_ENABLED 817aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 818aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeSetName (xmlNodePtr cur, 8193473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name); 820652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#endif /* LIBXML_TREE_ENABLED */ 821aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 822aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlAddChild (xmlNodePtr parent, 8233473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr cur); 824aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 825aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlAddChildList (xmlNodePtr parent, 8263473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr cur); 82721e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) 828aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 829aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlReplaceNode (xmlNodePtr old, 8303473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr cur); 83121e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) */ 83221e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || \ 83321e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack defined(LIBXML_SCHEMAS_ENABLED) 834aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 835652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard xmlAddPrevSibling (xmlNodePtr cur, 8363473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr elem); 83721e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* LIBXML_TREE_ENABLED || LIBXML_HTML_ENABLED || LIBXML_SCHEMAS_ENABLED */ 838aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 839652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard xmlAddSibling (xmlNodePtr cur, 8403473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr elem); 841aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 842aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlAddNextSibling (xmlNodePtr cur, 8433473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr elem); 844aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 845aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlUnlinkNode (xmlNodePtr cur); 846aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 847aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlTextMerge (xmlNodePtr first, 8483473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr second); 849aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 850aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlTextConcat (xmlNodePtr node, 8513473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content, 8523473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 853aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 854aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreeNodeList (xmlNodePtr cur); 855aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 856aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlFreeNode (xmlNodePtr cur); 857aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 858aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSetTreeDoc (xmlNodePtr tree, 8593473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr doc); 860aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 861aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSetListDoc (xmlNodePtr list, 8623473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr doc); 8633473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 86461f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Namespaces. 8653473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 866aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNsPtr XMLCALL 867aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSearchNs (xmlDocPtr doc, 8683473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr node, 8693473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *nameSpace); 870aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNsPtr XMLCALL 871aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSearchNsByHref (xmlDocPtr doc, 8723473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr node, 8733473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *href); 87421e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) 875aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNsPtr * XMLCALL 876aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlGetNsList (xmlDocPtr doc, 8773473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr node); 87821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) */ 879652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard 880aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 881aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSetNs (xmlNodePtr node, 8823473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNsPtr ns); 883aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNsPtr XMLCALL 884aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCopyNamespace (xmlNsPtr cur); 885aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNsPtr XMLCALL 886aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlCopyNamespaceList (xmlNsPtr cur); 8873473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 8883473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 8893473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * Changing the content. 8903473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 89121e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED) 892aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlAttrPtr XMLCALL 893aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSetProp (xmlNodePtr node, 8943473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 8953473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value); 89621e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. BrackXMLPUBFUN xmlAttrPtr XMLCALL 89721e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack xmlSetNsProp (xmlNodePtr node, 89821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack xmlNsPtr ns, 89921e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack const xmlChar *name, 90021e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack const xmlChar *value); 90121e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED) */ 902aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlChar * XMLCALL 903652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard xmlGetNoNsProp (xmlNodePtr node, 9043473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name); 905aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlChar * XMLCALL 906652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard xmlGetProp (xmlNodePtr node, 90771531f33450f9a809eab050104e55c84b77b2a9eDaniel Veillard const xmlChar *name); 908aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlAttrPtr XMLCALL 909aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlHasProp (xmlNodePtr node, 9103473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name); 911aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlAttrPtr XMLCALL 912aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlHasNsProp (xmlNodePtr node, 913e95e2396f34e7e7c5f472ad018d7207974074225Daniel Veillard const xmlChar *name, 914ca2366aafd4c9ff3bf7c166bde18ce9af50e6995Daniel Veillard const xmlChar *nameSpace); 915aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlChar * XMLCALL 916aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlGetNsProp (xmlNodePtr node, 9173473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *name, 9183473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *nameSpace); 919aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 920aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlStringGetNodeList (xmlDocPtr doc, 9213473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value); 922aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlNodePtr XMLCALL 923aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlStringLenGetNodeList (xmlDocPtr doc, 9243473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *value, 9253473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 926aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlChar * XMLCALL 927aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeListGetString (xmlDocPtr doc, 9283473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr list, 9293473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int inLine); 930652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#ifdef LIBXML_TREE_ENABLED 931aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlChar * XMLCALL 932aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeListGetRawString (xmlDocPtr doc, 9333473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr list, 9343473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int inLine); 935652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#endif /* LIBXML_TREE_ENABLED */ 936aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 937aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeSetContent (xmlNodePtr cur, 9383473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content); 939652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#ifdef LIBXML_TREE_ENABLED 940aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 941aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeSetContentLen (xmlNodePtr cur, 9423473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content, 9433473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 944652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#endif /* LIBXML_TREE_ENABLED */ 945aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 946aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeAddContent (xmlNodePtr cur, 9473473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content); 948aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 949aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeAddContentLen (xmlNodePtr cur, 9503473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *content, 9513473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int len); 952aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlChar * XMLCALL 953aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeGetContent (xmlNodePtr cur); 9547869729c8e344b3675994877155efe1c4260683dDaniel VeillardXMLPUBFUN int XMLCALL 9557869729c8e344b3675994877155efe1c4260683dDaniel Veillard xmlNodeBufGetContent (xmlBufferPtr buffer, 9567869729c8e344b3675994877155efe1c4260683dDaniel Veillard xmlNodePtr cur); 957aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlChar * XMLCALL 958aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeGetLang (xmlNodePtr cur); 959652327a727000b7e1a32d596e05471003c2d3d87Daniel VeillardXMLPUBFUN int XMLCALL 960652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard xmlNodeGetSpacePreserve (xmlNodePtr cur); 961652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#ifdef LIBXML_TREE_ENABLED 962aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 963aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeSetLang (xmlNodePtr cur, 9643473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *lang); 965aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 966aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeSetSpacePreserve (xmlNodePtr cur, 967d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard int val); 968652327a727000b7e1a32d596e05471003c2d3d87Daniel Veillard#endif /* LIBXML_TREE_ENABLED */ 969aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN xmlChar * XMLCALL 970aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeGetBase (xmlDocPtr doc, 9713473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr cur); 97221e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) 973aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 974aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeSetBase (xmlNodePtr cur, 975f85ce8e334f448078a3d71a812824fa5b45d9b07Daniel Veillard const xmlChar *uri); 97621e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif 9773473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 9783473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 9793473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor * Removing content. 9803473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 98121e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#ifdef LIBXML_TREE_ENABLED 982aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 983aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlRemoveProp (xmlAttrPtr cur); 98421e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* LIBXML_TREE_ENABLED */ 98521e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) 986aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 987aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlUnsetNsProp (xmlNodePtr node, 9889403a0495dcbdfa430b669b4e3d689d8e208c687Daniel Veillard xmlNsPtr ns, 9899403a0495dcbdfa430b669b4e3d689d8e208c687Daniel Veillard const xmlChar *name); 99021e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. BrackXMLPUBFUN int XMLCALL 99121e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack xmlUnsetProp (xmlNodePtr node, 99221e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack const xmlChar *name); 99321e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) */ 9943473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 9953473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 99661f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Internal, don't use. 9973473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 998aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 999aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferWriteCHAR (xmlBufferPtr buf, 10003473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *string); 1001aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 1002aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferWriteChar (xmlBufferPtr buf, 10033473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const char *string); 1004aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 1005aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlBufferWriteQuotedString(xmlBufferPtr buf, 10063473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const xmlChar *string); 10073473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 100821e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#ifdef LIBXML_OUTPUT_ENABLED 1009a9c612c3ee115278fb8dc0cac1b2f2e362f0c052William M. BrackXMLPUBFUN void xmlAttrSerializeTxtContent(xmlBufferPtr buf, 1010a9c612c3ee115278fb8dc0cac1b2f2e362f0c052William M. Brack xmlDocPtr doc, 1011a9c612c3ee115278fb8dc0cac1b2f2e362f0c052William M. Brack xmlAttrPtr attr, 1012a9c612c3ee115278fb8dc0cac1b2f2e362f0c052William M. Brack const xmlChar *string); 101321e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif /* LIBXML_OUTPUT_ENABLED */ 1014a9c612c3ee115278fb8dc0cac1b2f2e362f0c052William M. Brack 101521e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#ifdef LIBXML_TREE_ENABLED 10163473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 101761f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Namespace handling. 10183473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 1019aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 1020aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlReconciliateNs (xmlDocPtr doc, 10213473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr tree); 102221e4ef20f64ebd740ebac0ead5d85a5631d2db5eWilliam M. Brack#endif 10233473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1024a9cce9cd0d7aff3ec318b5d8d376da131b6aaad4Daniel Veillard#ifdef LIBXML_OUTPUT_ENABLED 10253473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 102661f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Saving. 10273473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 1028aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 1029aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocDumpFormatMemory (xmlDocPtr cur, 1030963d2ae41574066f9b44bcae610dd280c1e57dd8Daniel Veillard xmlChar **mem, 10313473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int *size, 10323473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int format); 1033aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 1034aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocDumpMemory (xmlDocPtr cur, 1035963d2ae41574066f9b44bcae610dd280c1e57dd8Daniel Veillard xmlChar **mem, 10363473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int *size); 1037aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 1038aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocDumpMemoryEnc (xmlDocPtr out_doc, 10393473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlChar **doc_txt_ptr, 10403473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int * doc_txt_len, 10413473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const char *txt_encoding); 1042aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 1043aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocDumpFormatMemoryEnc(xmlDocPtr out_doc, 10443473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlChar **doc_txt_ptr, 10453473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int * doc_txt_len, 10463473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const char *txt_encoding, 10473473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int format); 1048aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 1049aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocFormatDump (FILE *f, 10509e4123023a930924e26ca965ef14ea67bff7dfc3Daniel Veillard xmlDocPtr cur, 10519e4123023a930924e26ca965ef14ea67bff7dfc3Daniel Veillard int format); 1052aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 1053aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlDocDump (FILE *f, 10543473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr cur); 1055aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 1056aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlElemDump (FILE *f, 10573473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr doc, 10583473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr cur); 1059aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 1060aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSaveFile (const char *filename, 10613473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr cur); 1062aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 1063aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSaveFormatFile (const char *filename, 106467fee94e53838c397f53c1ea4d098a5b9d728896Daniel Veillard xmlDocPtr cur, 106567fee94e53838c397f53c1ea4d098a5b9d728896Daniel Veillard int format); 1066aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 1067aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeDump (xmlBufferPtr buf, 10683473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr doc, 10693473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlNodePtr cur, 10703473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int level, 10713473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int format); 10723473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1073aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 1074aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSaveFileTo (xmlOutputBufferPtr buf, 10755a37bde34b693bc0296a2f03b775773e265b4c0eCET xmlDocPtr cur, 10765a37bde34b693bc0296a2f03b775773e265b4c0eCET const char *encoding); 1077aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 1078aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSaveFormatFileTo (xmlOutputBufferPtr buf, 10793473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr cur, 10805a37bde34b693bc0296a2f03b775773e265b4c0eCET const char *encoding, 10815a37bde34b693bc0296a2f03b775773e265b4c0eCET int format); 1082aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 1083aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlNodeDumpOutput (xmlOutputBufferPtr buf, 10845a37bde34b693bc0296a2f03b775773e265b4c0eCET xmlDocPtr doc, 10855a37bde34b693bc0296a2f03b775773e265b4c0eCET xmlNodePtr cur, 10865a37bde34b693bc0296a2f03b775773e265b4c0eCET int level, 10875a37bde34b693bc0296a2f03b775773e265b4c0eCET int format, 10883473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const char *encoding); 10893473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1090aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 1091aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSaveFormatFileEnc (const char *filename, 1092d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard xmlDocPtr cur, 1093d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard const char *encoding, 1094d16409207aa547c9249caf0f424250657a0065ddDaniel Veillard int format); 1095f012a64d13d85d53eac0d4d6625508109e7c9e9dDaniel Veillard 1096aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 1097aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSaveFileEnc (const char *filename, 10983473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor xmlDocPtr cur, 10993473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor const char *encoding); 11003473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1101a9cce9cd0d7aff3ec318b5d8d376da131b6aaad4Daniel Veillard#endif /* LIBXML_OUTPUT_ENABLED */ 11023473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor/* 1103d5c2f92df449ae53e31a81f268aa8aa608a4f633Daniel Veillard * XHTML 1104d5c2f92df449ae53e31a81f268aa8aa608a4f633Daniel Veillard */ 1105aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 1106aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlIsXHTML (const xmlChar *systemID, 1107d5c2f92df449ae53e31a81f268aa8aa608a4f633Daniel Veillard const xmlChar *publicID); 1108d5c2f92df449ae53e31a81f268aa8aa608a4f633Daniel Veillard 1109d5c2f92df449ae53e31a81f268aa8aa608a4f633Daniel Veillard/* 111061f261749f44d6e6f938441598bc724cd1375c51Daniel Veillard * Compression. 11113473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor */ 1112aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 1113aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlGetDocCompressMode (xmlDocPtr doc); 1114aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 1115aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSetDocCompressMode (xmlDocPtr doc, 11163473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor int mode); 1117aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN int XMLCALL 1118aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlGetCompressMode (void); 1119aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor ZlatkovicXMLPUBFUN void XMLCALL 1120aa3cfbd0809378d88bc907742a9ddd27cc49b335Igor Zlatkovic xmlSetCompressMode (int mode); 11213473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1122bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik/* 1123bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik* DOM-wrapper helper functions. 1124bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik*/ 11254d9c948fd7d189834381361395c5b38e1b0a7b87Kasimier T. BuchcikXMLPUBFUN xmlDOMWrapCtxtPtr XMLCALL 11264d9c948fd7d189834381361395c5b38e1b0a7b87Kasimier T. Buchcik xmlDOMWrapNewCtxt (void); 11274d9c948fd7d189834381361395c5b38e1b0a7b87Kasimier T. BuchcikXMLPUBFUN void XMLCALL 11284d9c948fd7d189834381361395c5b38e1b0a7b87Kasimier T. Buchcik xmlDOMWrapFreeCtxt (xmlDOMWrapCtxtPtr ctxt); 1129bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. BuchcikXMLPUBFUN int XMLCALL 1130bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlDOMWrapReconcileNamespaces(xmlDOMWrapCtxtPtr ctxt, 1131bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlNodePtr elem, 1132bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik int options); 1133bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. BuchcikXMLPUBFUN int XMLCALL 1134bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlDOMWrapAdoptNode (xmlDOMWrapCtxtPtr ctxt, 1135bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlDocPtr sourceDoc, 1136bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlNodePtr node, 1137bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlDocPtr destDoc, 1138bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlNodePtr destParent, 1139bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik int options); 1140bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. BuchcikXMLPUBFUN int XMLCALL 1141bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlDOMWrapRemoveNode (xmlDOMWrapCtxtPtr ctxt, 1142bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlDocPtr doc, 1143bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik xmlNodePtr node, 1144bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik int options); 1145bc0e3c6b1a1ac598aedb5ee171c60b7e08a982a5Kasimier T. Buchcik 11463473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#ifdef __cplusplus 11473473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor} 11483473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#endif 11496c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillard#ifndef __XML_PARSER_H__ 11506c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillard#include <libxml/xmlmemory.h> 11516c4ffafd8f34fafa594694c83148ecf25fc529e8Daniel Veillard#endif 11523473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 11533473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor#endif /* __XML_TREE_H__ */ 11543473f88a7abdf4e585e267288fb77e898c580d2bOwen Taylor 1155