38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Summary: interfaces for tree manipulation
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Description: this module describes the structures found in an tree resulting
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * from an XML or HTML parsing, as well as the API provided for
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * various processing on that tree
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Copy: See Copyright for the status of this software.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Author: Daniel Veillard
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncextern "C" {
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Some of the basic types pointer to structures:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsynctypedef struct _xmlParserInputBuffer xmlParserInputBuffer;
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsynctypedef xmlParserInputBuffer *xmlParserInputBufferPtr;
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * BASE_BUFFER_SIZE:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * default buffer size 4000.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * LIBXML_NAMESPACE_DICT:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Defines experimental behaviour:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * 1) xmlNs gets an additional field @context (a xmlDoc)
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * 2) when creating a tree, xmlNs->href is stored in the dict of xmlDoc.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync/* #define LIBXML_NAMESPACE_DICT */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlBufferAllocationScheme:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * A buffer allocation scheme can be defined to either match exactly the
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * need or double it's allocated size each time it is found too small.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsynctypedef enum {
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlBuffer:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * A buffer structure.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlBufferAllocationScheme alloc; /* The realloc method */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * XML_XML_NAMESPACE:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * This is the namespace for the special xml: prefix predefined in the
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * XML Namespace specification.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync (const xmlChar *) "http://www.w3.org/XML/1998/namespace"
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * XML_XML_ID:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * This is the name for the special xml:id attribute
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * The different element types carried by an XML tree.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * NOTE: This is synchronized with DOM Level1 values
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Actually this had diverged a bit, and now XML_DOCUMENT_TYPE_NODE should
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * be deprecated to use an XML_DTD_NODE.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsynctypedef enum {
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlNotation:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * A DTD Notation definition.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *PublicID; /* Public identifier, if any */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *SystemID; /* System identifier, if any */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlAttributeType:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * A DTD Attribute type definition.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsynctypedef enum {
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlAttributeDefault:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * A DTD Attribute default definition.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsynctypedef enum {
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlEnumeration:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * List structure used when there is an enumeration in DTDs.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlAttribute:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * An Attribute declaration in a DTD.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlElementType type; /* XML_ATTRIBUTE_DECL, must be second ! */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync struct _xmlAttribute *nexth; /* next in hash table */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *defaultValue; /* or the default value */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlEnumerationPtr tree; /* or the enumeration tree if any */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *prefix; /* the namespace prefix if any */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *elem; /* Element holding the attribute */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlElementContentType:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Possible definitions of element content types.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsynctypedef enum {
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlElementContentOccur:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Possible definitions of element content occurrences.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsynctypedef enum {
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlElementContent:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * An XML Element content as stored after parsing an element definition
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * in a DTD.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsynctypedef struct _xmlElementContent xmlElementContent;
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlElementContentType type; /* PCDATA, ELEMENT, SEQ or OR */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlElementContentOccur ocur; /* ONCE, OPT, MULT or PLUS */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlElementTypeVal:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * The different possibilities for an element content type.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsynctypedef enum {
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncextern "C" {
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlElement:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * An XML Element declaration from a DTD.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlElementType type; /* XML_ELEMENT_DECL, must be second ! */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlElementContentPtr content; /* the allowed element content */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlAttributePtr attributes; /* List of the declared attributes */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *prefix; /* the namespace prefix if any */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlRegexpPtr contModel; /* the validating regexp */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * XML_LOCAL_NAMESPACE:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * A namespace declaration node.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * An XML namespace.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Note that prefix == NULL is valid, it defines the default namespace
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * within the subtree (until overridden).
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlNsType is unified with xmlElementType.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync struct _xmlNs *next; /* next Ns link for this node */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *prefix; /* prefix for the namespace */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * An XML DTD, as defined by <!DOCTYPE ... There is actually one for
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * the internal subset and for the external subset.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlElementType type; /* XML_DTD_NODE, must be second ! */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync struct _xmlNode *children; /* the value of the property link */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync /* End of common part */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync void *notations; /* Hash table for notations if any */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync void *elements; /* Hash table for elements if any */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync void *attributes; /* Hash table for attributes if any */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync void *entities; /* Hash table for entities if any */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *ExternalID; /* External identifier for PUBLIC DTD */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *SystemID; /* URI for a SYSTEM or PUBLIC DTD */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync void *pentities; /* Hash table for param entities if any */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * An attribute on an XML node.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlElementType type; /* XML_ATTRIBUTE_NODE, must be second ! */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *name; /* the name of the property */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync struct _xmlNode *children; /* the value of the property */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNs *ns; /* pointer to the associated namespace */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlAttributeType atype; /* the attribute type if validating */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * An XML ID instance.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *name; /* The attribute if attr is not available */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync int lineno; /* The line number if attr is not available */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync struct _xmlDoc *doc; /* The document holding the ID */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * An XML IDREF instance.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *name; /* The attribute if attr is not available */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync int lineno; /* The line number if attr is not available */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * A node in an XML tree.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlElementType type; /* type number, must be second ! */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *name; /* the name of the node, or the entity */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync struct _xmlNode *children; /* parent->childs link */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync /* End of common part */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNs *ns; /* pointer to the associated namespace */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlNs *nsDef; /* namespace definitions on this node */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync unsigned short extra; /* extra data for XPath/XSLT */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * XML_GET_CONTENT:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Macro to extract the content pointer of a node.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync ((n)->type == XML_ELEMENT_NODE ? NULL : (n)->content)
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * XML_GET_LINE:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Macro to extract the line number of an element node.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * An XML document.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlElementType type; /* XML_DOCUMENT_NODE, must be second ! */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync char *name; /* name/filename/URI of the document */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync /* End of common part */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync int standalone; /* standalone document (no external refs)
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync 1 if standalone="yes"
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync 0 if standalone="no"
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync -1 if there is no XML declaration
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync -2 if there is an XML declaration, but no
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync standalone attribute was specified */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync struct _xmlDtd *intSubset; /* the document internal subset */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync struct _xmlDtd *extSubset; /* the document external subset */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync struct _xmlNs *oldNs; /* Global namespace, the old way */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *version; /* the XML version string */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *encoding; /* external initial encoding, if any */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync void *ids; /* Hash table for ID attributes if any */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync void *refs; /* Hash table for IDREFs attributes if any */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const xmlChar *URL; /* The URI for that document */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync actually an xmlCharEncoding */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync struct _xmlDict *dict; /* dict used to allocate names or NULL */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlDOMWrapAcquireNsFunction:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * @ctxt: a DOM wrapper context
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * @node: the context node (element or attribute)
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * @nsName: the requested namespace name
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * @nsPrefix: the requested namespace prefix
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * A function called to acquire namespaces (xmlNs) from the wrapper.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Returns an xmlNsPtr or NULL in case of an error.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsynctypedef xmlNsPtr (*xmlDOMWrapAcquireNsFunction) (xmlDOMWrapCtxtPtr ctxt,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlDOMWrapCtxt:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Context for DOM wrapper-operations.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * The type of this context, just in case we need specialized
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * contexts in the future.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Internal namespace map used for various operations.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Use this one to acquire an xmlNsPtr intended for node->ns.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * (Note that this is not intended for elem->nsDef).
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlChildrenNode:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Macro for compatibility naming layer with libxml1. Maps
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * to "children."
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlRootNode:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Macro for compatibility naming layer with libxml1. Maps
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * to "children".
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Variables.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Some helper functions
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_DEBUG_ENABLED) || defined (LIBXML_HTML_ENABLED) || defined(LIBXML_SAX1_ENABLED) || defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || defined(LIBXML_DOCB_ENABLED)
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Handling Buffers.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlSetBufferAllocationScheme(xmlBufferAllocationScheme scheme);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync unsigned int size);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *str);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync unsigned int len);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync unsigned int len);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Creating/freeing new structures.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* LIBXML_LEGACY_ENABLED */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || \
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* LIBXML_TREE_ENABLED */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Creating new nodes.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* LIBXML_TREE_ENABLED */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Navigating.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED)
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED) */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Changing the structure.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED)
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* LIBXML_TREE_ENABLED */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED)
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || \
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* LIBXML_TREE_ENABLED || LIBXML_HTML_ENABLED || LIBXML_SCHEMAS_ENABLED */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Namespaces.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Changing the content.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED)
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED) */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* LIBXML_TREE_ENABLED */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* LIBXML_TREE_ENABLED */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* LIBXML_TREE_ENABLED */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED)
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Removing content.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Internal, don't use.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *string);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncXMLPUBFUN void xmlAttrSerializeTxtContent(xmlBufferPtr buf,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* LIBXML_OUTPUT_ENABLED */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Namespace handling.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *txt_encoding);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *encoding);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *encoding,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *encoding);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *encoding,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char *encoding);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* LIBXML_OUTPUT_ENABLED */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Compression.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync* DOM-wrapper helper functions.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync xmlDOMWrapReconcileNamespaces(xmlDOMWrapCtxtPtr ctxt,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* __XML_TREE_H__ */