Blame gettext-tools/gnulib-lib/libxml/tree.in.h

Packit Bot 06c835
/*
Packit Bot 06c835
 * Summary: interfaces for tree manipulation
Packit Bot 06c835
 * Description: this module describes the structures found in an tree resulting
Packit Bot 06c835
 *              from an XML or HTML parsing, as well as the API provided for
Packit Bot 06c835
 *              various processing on that tree
Packit Bot 06c835
 *
Packit Bot 06c835
 * Copy: See Copyright for the status of this software.
Packit Bot 06c835
 *
Packit Bot 06c835
 * Author: Daniel Veillard
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
#ifndef __XML_TREE_H__
Packit Bot 06c835
#define __XML_TREE_H__
Packit Bot 06c835
Packit Bot 06c835
#include <stdio.h>
Packit Bot 06c835
#include <limits.h>
Packit Bot 06c835
#include <libxml/xmlversion.h>
Packit Bot 06c835
#include <libxml/xmlstring.h>
Packit Bot 06c835
Packit Bot 06c835
#ifdef __cplusplus
Packit Bot 06c835
extern "C" {
Packit Bot 06c835
#endif
Packit Bot 06c835
Packit Bot 06c835
/*
Packit Bot 06c835
 * Some of the basic types pointer to structures:
Packit Bot 06c835
 */
Packit Bot 06c835
/* xmlIO.h */
Packit Bot 06c835
typedef struct _xmlParserInputBuffer xmlParserInputBuffer;
Packit Bot 06c835
typedef xmlParserInputBuffer *xmlParserInputBufferPtr;
Packit Bot 06c835
Packit Bot 06c835
typedef struct _xmlOutputBuffer xmlOutputBuffer;
Packit Bot 06c835
typedef xmlOutputBuffer *xmlOutputBufferPtr;
Packit Bot 06c835
Packit Bot 06c835
/* parser.h */
Packit Bot 06c835
typedef struct _xmlParserInput xmlParserInput;
Packit Bot 06c835
typedef xmlParserInput *xmlParserInputPtr;
Packit Bot 06c835
Packit Bot 06c835
typedef struct _xmlParserCtxt xmlParserCtxt;
Packit Bot 06c835
typedef xmlParserCtxt *xmlParserCtxtPtr;
Packit Bot 06c835
Packit Bot 06c835
typedef struct _xmlSAXLocator xmlSAXLocator;
Packit Bot 06c835
typedef xmlSAXLocator *xmlSAXLocatorPtr;
Packit Bot 06c835
Packit Bot 06c835
typedef struct _xmlSAXHandler xmlSAXHandler;
Packit Bot 06c835
typedef xmlSAXHandler *xmlSAXHandlerPtr;
Packit Bot 06c835
Packit Bot 06c835
/* entities.h */
Packit Bot 06c835
typedef struct _xmlEntity xmlEntity;
Packit Bot 06c835
typedef xmlEntity *xmlEntityPtr;
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * BASE_BUFFER_SIZE:
Packit Bot 06c835
 *
Packit Bot 06c835
 * default buffer size 4000.
Packit Bot 06c835
 */
Packit Bot 06c835
#define BASE_BUFFER_SIZE 4096
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * LIBXML_NAMESPACE_DICT:
Packit Bot 06c835
 *
Packit Bot 06c835
 * Defines experimental behaviour:
Packit Bot 06c835
 * 1) xmlNs gets an additional field @context (a xmlDoc)
Packit Bot 06c835
 * 2) when creating a tree, xmlNs->href is stored in the dict of xmlDoc.
Packit Bot 06c835
 */
Packit Bot 06c835
/* #define LIBXML_NAMESPACE_DICT */
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlBufferAllocationScheme:
Packit Bot 06c835
 *
Packit Bot 06c835
 * A buffer allocation scheme can be defined to either match exactly the
Packit Bot 06c835
 * need or double it's allocated size each time it is found too small.
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
typedef enum {
Packit Bot 06c835
    XML_BUFFER_ALLOC_DOUBLEIT,	/* double each time one need to grow */
Packit Bot 06c835
    XML_BUFFER_ALLOC_EXACT,	/* grow only to the minimal size */
Packit Bot 06c835
    XML_BUFFER_ALLOC_IMMUTABLE, /* immutable buffer */
Packit Bot 06c835
    XML_BUFFER_ALLOC_IO,	/* special allocation scheme used for I/O */
Packit Bot 06c835
    XML_BUFFER_ALLOC_HYBRID,	/* exact up to a threshold, and doubleit thereafter */
Packit Bot 06c835
    XML_BUFFER_ALLOC_BOUNDED	/* limit the upper size of the buffer */
Packit Bot 06c835
} xmlBufferAllocationScheme;
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlBuffer:
Packit Bot 06c835
 *
Packit Bot 06c835
 * A buffer structure, this old construct is limited to 2GB and
Packit Bot 06c835
 * is being deprecated, use API with xmlBuf instead
Packit Bot 06c835
 */
Packit Bot 06c835
typedef struct _xmlBuffer xmlBuffer;
Packit Bot 06c835
typedef xmlBuffer *xmlBufferPtr;
Packit Bot 06c835
struct _xmlBuffer {
Packit Bot 06c835
    xmlChar *content;		/* The buffer content UTF8 */
Packit Bot 06c835
    unsigned int use;		/* The buffer size used */
Packit Bot 06c835
    unsigned int size;		/* The buffer size */
Packit Bot 06c835
    xmlBufferAllocationScheme alloc; /* The realloc method */
Packit Bot 06c835
    xmlChar *contentIO;		/* in IO mode we may have a different base */
Packit Bot 06c835
};
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlBuf:
Packit Bot 06c835
 *
Packit Bot 06c835
 * A buffer structure, new one, the actual structure internals are not public
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
typedef struct _xmlBuf xmlBuf;
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlBufPtr:
Packit Bot 06c835
 *
Packit Bot 06c835
 * A pointer to a buffer structure, the actual structure internals are not
Packit Bot 06c835
 * public
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
typedef xmlBuf *xmlBufPtr;
Packit Bot 06c835
Packit Bot 06c835
/*
Packit Bot 06c835
 * A few public routines for xmlBuf. As those are expected to be used
Packit Bot 06c835
 * mostly internally the bulk of the routines are internal in buf.h
Packit Bot 06c835
 */
Packit Bot 06c835
XMLPUBFUN xmlChar* XMLCALL       xmlBufContent	(const xmlBuf* buf);
Packit Bot 06c835
XMLPUBFUN xmlChar* XMLCALL       xmlBufEnd      (xmlBufPtr buf);
Packit Bot 06c835
XMLPUBFUN size_t XMLCALL         xmlBufUse      (const xmlBufPtr buf);
Packit Bot 06c835
XMLPUBFUN size_t XMLCALL         xmlBufShrink	(xmlBufPtr buf, size_t len);
Packit Bot 06c835
Packit Bot 06c835
/*
Packit Bot 06c835
 * LIBXML2_NEW_BUFFER:
Packit Bot 06c835
 *
Packit Bot 06c835
 * Macro used to express that the API use the new buffers for
Packit Bot 06c835
 * xmlParserInputBuffer and xmlOutputBuffer. The change was
Packit Bot 06c835
 * introduced in 2.9.0.
Packit Bot 06c835
 */
Packit Bot 06c835
#define LIBXML2_NEW_BUFFER
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * XML_XML_NAMESPACE:
Packit Bot 06c835
 *
Packit Bot 06c835
 * This is the namespace for the special xml: prefix predefined in the
Packit Bot 06c835
 * XML Namespace specification.
Packit Bot 06c835
 */
Packit Bot 06c835
#define XML_XML_NAMESPACE \
Packit Bot 06c835
    (const xmlChar *) "http://www.w3.org/XML/1998/namespace"
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * XML_XML_ID:
Packit Bot 06c835
 *
Packit Bot 06c835
 * This is the name for the special xml:id attribute
Packit Bot 06c835
 */
Packit Bot 06c835
#define XML_XML_ID (const xmlChar *) "xml:id"
Packit Bot 06c835
Packit Bot 06c835
/*
Packit Bot 06c835
 * The different element types carried by an XML tree.
Packit Bot 06c835
 *
Packit Bot 06c835
 * NOTE: This is synchronized with DOM Level1 values
Packit Bot 06c835
 *       See http://www.w3.org/TR/REC-DOM-Level-1/
Packit Bot 06c835
 *
Packit Bot 06c835
 * Actually this had diverged a bit, and now XML_DOCUMENT_TYPE_NODE should
Packit Bot 06c835
 * be deprecated to use an XML_DTD_NODE.
Packit Bot 06c835
 */
Packit Bot 06c835
typedef enum {
Packit Bot 06c835
    XML_ELEMENT_NODE=		1,
Packit Bot 06c835
    XML_ATTRIBUTE_NODE=		2,
Packit Bot 06c835
    XML_TEXT_NODE=		3,
Packit Bot 06c835
    XML_CDATA_SECTION_NODE=	4,
Packit Bot 06c835
    XML_ENTITY_REF_NODE=	5,
Packit Bot 06c835
    XML_ENTITY_NODE=		6,
Packit Bot 06c835
    XML_PI_NODE=		7,
Packit Bot 06c835
    XML_COMMENT_NODE=		8,
Packit Bot 06c835
    XML_DOCUMENT_NODE=		9,
Packit Bot 06c835
    XML_DOCUMENT_TYPE_NODE=	10,
Packit Bot 06c835
    XML_DOCUMENT_FRAG_NODE=	11,
Packit Bot 06c835
    XML_NOTATION_NODE=		12,
Packit Bot 06c835
    XML_HTML_DOCUMENT_NODE=	13,
Packit Bot 06c835
    XML_DTD_NODE=		14,
Packit Bot 06c835
    XML_ELEMENT_DECL=		15,
Packit Bot 06c835
    XML_ATTRIBUTE_DECL=		16,
Packit Bot 06c835
    XML_ENTITY_DECL=		17,
Packit Bot 06c835
    XML_NAMESPACE_DECL=		18,
Packit Bot 06c835
    XML_XINCLUDE_START=		19,
Packit Bot 06c835
    XML_XINCLUDE_END=		20
Packit Bot 06c835
#ifdef LIBXML_DOCB_ENABLED
Packit Bot 06c835
   ,XML_DOCB_DOCUMENT_NODE=	21
Packit Bot 06c835
#endif
Packit Bot 06c835
} xmlElementType;
Packit Bot 06c835
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlNotation:
Packit Bot 06c835
 *
Packit Bot 06c835
 * A DTD Notation definition.
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
typedef struct _xmlNotation xmlNotation;
Packit Bot 06c835
typedef xmlNotation *xmlNotationPtr;
Packit Bot 06c835
struct _xmlNotation {
Packit Bot 06c835
    const xmlChar               *name;	        /* Notation name */
Packit Bot 06c835
    const xmlChar               *PublicID;	/* Public identifier, if any */
Packit Bot 06c835
    const xmlChar               *SystemID;	/* System identifier, if any */
Packit Bot 06c835
};
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlAttributeType:
Packit Bot 06c835
 *
Packit Bot 06c835
 * A DTD Attribute type definition.
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
typedef enum {
Packit Bot 06c835
    XML_ATTRIBUTE_CDATA = 1,
Packit Bot 06c835
    XML_ATTRIBUTE_ID,
Packit Bot 06c835
    XML_ATTRIBUTE_IDREF	,
Packit Bot 06c835
    XML_ATTRIBUTE_IDREFS,
Packit Bot 06c835
    XML_ATTRIBUTE_ENTITY,
Packit Bot 06c835
    XML_ATTRIBUTE_ENTITIES,
Packit Bot 06c835
    XML_ATTRIBUTE_NMTOKEN,
Packit Bot 06c835
    XML_ATTRIBUTE_NMTOKENS,
Packit Bot 06c835
    XML_ATTRIBUTE_ENUMERATION,
Packit Bot 06c835
    XML_ATTRIBUTE_NOTATION
Packit Bot 06c835
} xmlAttributeType;
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlAttributeDefault:
Packit Bot 06c835
 *
Packit Bot 06c835
 * A DTD Attribute default definition.
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
typedef enum {
Packit Bot 06c835
    XML_ATTRIBUTE_NONE = 1,
Packit Bot 06c835
    XML_ATTRIBUTE_REQUIRED,
Packit Bot 06c835
    XML_ATTRIBUTE_IMPLIED,
Packit Bot 06c835
    XML_ATTRIBUTE_FIXED
Packit Bot 06c835
} xmlAttributeDefault;
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlEnumeration:
Packit Bot 06c835
 *
Packit Bot 06c835
 * List structure used when there is an enumeration in DTDs.
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
typedef struct _xmlEnumeration xmlEnumeration;
Packit Bot 06c835
typedef xmlEnumeration *xmlEnumerationPtr;
Packit Bot 06c835
struct _xmlEnumeration {
Packit Bot 06c835
    struct _xmlEnumeration    *next;	/* next one */
Packit Bot 06c835
    const xmlChar            *name;	/* Enumeration name */
Packit Bot 06c835
};
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlAttribute:
Packit Bot 06c835
 *
Packit Bot 06c835
 * An Attribute declaration in a DTD.
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
typedef struct _xmlAttribute xmlAttribute;
Packit Bot 06c835
typedef xmlAttribute *xmlAttributePtr;
Packit Bot 06c835
struct _xmlAttribute {
Packit Bot 06c835
    void           *_private;	        /* application data */
Packit Bot 06c835
    xmlElementType          type;       /* XML_ATTRIBUTE_DECL, must be second ! */
Packit Bot 06c835
    const xmlChar          *name;	/* Attribute name */
Packit Bot 06c835
    struct _xmlNode    *children;	/* NULL */
Packit Bot 06c835
    struct _xmlNode        *last;	/* NULL */
Packit Bot 06c835
    struct _xmlDtd       *parent;	/* -> DTD */
Packit Bot 06c835
    struct _xmlNode        *next;	/* next sibling link  */
Packit Bot 06c835
    struct _xmlNode        *prev;	/* previous sibling link  */
Packit Bot 06c835
    struct _xmlDoc          *doc;       /* the containing document */
Packit Bot 06c835
Packit Bot 06c835
    struct _xmlAttribute  *nexth;	/* next in hash table */
Packit Bot 06c835
    xmlAttributeType       atype;	/* The attribute type */
Packit Bot 06c835
    xmlAttributeDefault      def;	/* the default */
Packit Bot 06c835
    const xmlChar  *defaultValue;	/* or the default value */
Packit Bot 06c835
    xmlEnumerationPtr       tree;       /* or the enumeration tree if any */
Packit Bot 06c835
    const xmlChar        *prefix;	/* the namespace prefix if any */
Packit Bot 06c835
    const xmlChar          *elem;	/* Element holding the attribute */
Packit Bot 06c835
};
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlElementContentType:
Packit Bot 06c835
 *
Packit Bot 06c835
 * Possible definitions of element content types.
Packit Bot 06c835
 */
Packit Bot 06c835
typedef enum {
Packit Bot 06c835
    XML_ELEMENT_CONTENT_PCDATA = 1,
Packit Bot 06c835
    XML_ELEMENT_CONTENT_ELEMENT,
Packit Bot 06c835
    XML_ELEMENT_CONTENT_SEQ,
Packit Bot 06c835
    XML_ELEMENT_CONTENT_OR
Packit Bot 06c835
} xmlElementContentType;
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlElementContentOccur:
Packit Bot 06c835
 *
Packit Bot 06c835
 * Possible definitions of element content occurrences.
Packit Bot 06c835
 */
Packit Bot 06c835
typedef enum {
Packit Bot 06c835
    XML_ELEMENT_CONTENT_ONCE = 1,
Packit Bot 06c835
    XML_ELEMENT_CONTENT_OPT,
Packit Bot 06c835
    XML_ELEMENT_CONTENT_MULT,
Packit Bot 06c835
    XML_ELEMENT_CONTENT_PLUS
Packit Bot 06c835
} xmlElementContentOccur;
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlElementContent:
Packit Bot 06c835
 *
Packit Bot 06c835
 * An XML Element content as stored after parsing an element definition
Packit Bot 06c835
 * in a DTD.
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
typedef struct _xmlElementContent xmlElementContent;
Packit Bot 06c835
typedef xmlElementContent *xmlElementContentPtr;
Packit Bot 06c835
struct _xmlElementContent {
Packit Bot 06c835
    xmlElementContentType     type;	/* PCDATA, ELEMENT, SEQ or OR */
Packit Bot 06c835
    xmlElementContentOccur    ocur;	/* ONCE, OPT, MULT or PLUS */
Packit Bot 06c835
    const xmlChar             *name;	/* Element name */
Packit Bot 06c835
    struct _xmlElementContent *c1;	/* first child */
Packit Bot 06c835
    struct _xmlElementContent *c2;	/* second child */
Packit Bot 06c835
    struct _xmlElementContent *parent;	/* parent */
Packit Bot 06c835
    const xmlChar             *prefix;	/* Namespace prefix */
Packit Bot 06c835
};
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlElementTypeVal:
Packit Bot 06c835
 *
Packit Bot 06c835
 * The different possibilities for an element content type.
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
typedef enum {
Packit Bot 06c835
    XML_ELEMENT_TYPE_UNDEFINED = 0,
Packit Bot 06c835
    XML_ELEMENT_TYPE_EMPTY = 1,
Packit Bot 06c835
    XML_ELEMENT_TYPE_ANY,
Packit Bot 06c835
    XML_ELEMENT_TYPE_MIXED,
Packit Bot 06c835
    XML_ELEMENT_TYPE_ELEMENT
Packit Bot 06c835
} xmlElementTypeVal;
Packit Bot 06c835
Packit Bot 06c835
#ifdef __cplusplus
Packit Bot 06c835
}
Packit Bot 06c835
#endif
Packit Bot 06c835
#include <libxml/xmlregexp.h>
Packit Bot 06c835
#ifdef __cplusplus
Packit Bot 06c835
extern "C" {
Packit Bot 06c835
#endif
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlElement:
Packit Bot 06c835
 *
Packit Bot 06c835
 * An XML Element declaration from a DTD.
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
typedef struct _xmlElement xmlElement;
Packit Bot 06c835
typedef xmlElement *xmlElementPtr;
Packit Bot 06c835
struct _xmlElement {
Packit Bot 06c835
    void           *_private;	        /* application data */
Packit Bot 06c835
    xmlElementType          type;       /* XML_ELEMENT_DECL, must be second ! */
Packit Bot 06c835
    const xmlChar          *name;	/* Element name */
Packit Bot 06c835
    struct _xmlNode    *children;	/* NULL */
Packit Bot 06c835
    struct _xmlNode        *last;	/* NULL */
Packit Bot 06c835
    struct _xmlDtd       *parent;	/* -> DTD */
Packit Bot 06c835
    struct _xmlNode        *next;	/* next sibling link  */
Packit Bot 06c835
    struct _xmlNode        *prev;	/* previous sibling link  */
Packit Bot 06c835
    struct _xmlDoc          *doc;       /* the containing document */
Packit Bot 06c835
Packit Bot 06c835
    xmlElementTypeVal      etype;	/* The type */
Packit Bot 06c835
    xmlElementContentPtr content;	/* the allowed element content */
Packit Bot 06c835
    xmlAttributePtr   attributes;	/* List of the declared attributes */
Packit Bot 06c835
    const xmlChar        *prefix;	/* the namespace prefix if any */
Packit Bot 06c835
#ifdef LIBXML_REGEXP_ENABLED
Packit Bot 06c835
    xmlRegexpPtr       contModel;	/* the validating regexp */
Packit Bot 06c835
#else
Packit Bot 06c835
    void	      *contModel;
Packit Bot 06c835
#endif
Packit Bot 06c835
};
Packit Bot 06c835
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * XML_LOCAL_NAMESPACE:
Packit Bot 06c835
 *
Packit Bot 06c835
 * A namespace declaration node.
Packit Bot 06c835
 */
Packit Bot 06c835
#define XML_LOCAL_NAMESPACE XML_NAMESPACE_DECL
Packit Bot 06c835
typedef xmlElementType xmlNsType;
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlNs:
Packit Bot 06c835
 *
Packit Bot 06c835
 * An XML namespace.
Packit Bot 06c835
 * Note that prefix == NULL is valid, it defines the default namespace
Packit Bot 06c835
 * within the subtree (until overridden).
Packit Bot 06c835
 *
Packit Bot 06c835
 * xmlNsType is unified with xmlElementType.
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
typedef struct _xmlNs xmlNs;
Packit Bot 06c835
typedef xmlNs *xmlNsPtr;
Packit Bot 06c835
struct _xmlNs {
Packit Bot 06c835
    struct _xmlNs  *next;	/* next Ns link for this node  */
Packit Bot 06c835
    xmlNsType      type;	/* global or local */
Packit Bot 06c835
    const xmlChar *href;	/* URL for the namespace */
Packit Bot 06c835
    const xmlChar *prefix;	/* prefix for the namespace */
Packit Bot 06c835
    void           *_private;   /* application data */
Packit Bot 06c835
    struct _xmlDoc *context;		/* normally an xmlDoc */
Packit Bot 06c835
};
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlDtd:
Packit Bot 06c835
 *
Packit Bot 06c835
 * An XML DTD, as defined by 
Packit Bot 06c835
 * the internal subset and for the external subset.
Packit Bot 06c835
 */
Packit Bot 06c835
typedef struct _xmlDtd xmlDtd;
Packit Bot 06c835
typedef xmlDtd *xmlDtdPtr;
Packit Bot 06c835
struct _xmlDtd {
Packit Bot 06c835
    void           *_private;	/* application data */
Packit Bot 06c835
    xmlElementType  type;       /* XML_DTD_NODE, must be second ! */
Packit Bot 06c835
    const xmlChar *name;	/* Name of the DTD */
Packit Bot 06c835
    struct _xmlNode *children;	/* the value of the property link */
Packit Bot 06c835
    struct _xmlNode *last;	/* last child link */
Packit Bot 06c835
    struct _xmlDoc  *parent;	/* child->parent link */
Packit Bot 06c835
    struct _xmlNode *next;	/* next sibling link  */
Packit Bot 06c835
    struct _xmlNode *prev;	/* previous sibling link  */
Packit Bot 06c835
    struct _xmlDoc  *doc;	/* the containing document */
Packit Bot 06c835
Packit Bot 06c835
    /* End of common part */
Packit Bot 06c835
    void          *notations;   /* Hash table for notations if any */
Packit Bot 06c835
    void          *elements;    /* Hash table for elements if any */
Packit Bot 06c835
    void          *attributes;  /* Hash table for attributes if any */
Packit Bot 06c835
    void          *entities;    /* Hash table for entities if any */
Packit Bot 06c835
    const xmlChar *ExternalID;	/* External identifier for PUBLIC DTD */
Packit Bot 06c835
    const xmlChar *SystemID;	/* URI for a SYSTEM or PUBLIC DTD */
Packit Bot 06c835
    void          *pentities;   /* Hash table for param entities if any */
Packit Bot 06c835
};
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlAttr:
Packit Bot 06c835
 *
Packit Bot 06c835
 * An attribute on an XML node.
Packit Bot 06c835
 */
Packit Bot 06c835
typedef struct _xmlAttr xmlAttr;
Packit Bot 06c835
typedef xmlAttr *xmlAttrPtr;
Packit Bot 06c835
struct _xmlAttr {
Packit Bot 06c835
    void           *_private;	/* application data */
Packit Bot 06c835
    xmlElementType   type;      /* XML_ATTRIBUTE_NODE, must be second ! */
Packit Bot 06c835
    const xmlChar   *name;      /* the name of the property */
Packit Bot 06c835
    struct _xmlNode *children;	/* the value of the property */
Packit Bot 06c835
    struct _xmlNode *last;	/* NULL */
Packit Bot 06c835
    struct _xmlNode *parent;	/* child->parent link */
Packit Bot 06c835
    struct _xmlAttr *next;	/* next sibling link  */
Packit Bot 06c835
    struct _xmlAttr *prev;	/* previous sibling link  */
Packit Bot 06c835
    struct _xmlDoc  *doc;	/* the containing document */
Packit Bot 06c835
    xmlNs           *ns;        /* pointer to the associated namespace */
Packit Bot 06c835
    xmlAttributeType atype;     /* the attribute type if validating */
Packit Bot 06c835
    void            *psvi;	/* for type/PSVI informations */
Packit Bot 06c835
};
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlID:
Packit Bot 06c835
 *
Packit Bot 06c835
 * An XML ID instance.
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
typedef struct _xmlID xmlID;
Packit Bot 06c835
typedef xmlID *xmlIDPtr;
Packit Bot 06c835
struct _xmlID {
Packit Bot 06c835
    struct _xmlID    *next;	/* next ID */
Packit Bot 06c835
    const xmlChar    *value;	/* The ID name */
Packit Bot 06c835
    xmlAttrPtr        attr;	/* The attribute holding it */
Packit Bot 06c835
    const xmlChar    *name;	/* The attribute if attr is not available */
Packit Bot 06c835
    int               lineno;	/* The line number if attr is not available */
Packit Bot 06c835
    struct _xmlDoc   *doc;	/* The document holding the ID */
Packit Bot 06c835
};
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlRef:
Packit Bot 06c835
 *
Packit Bot 06c835
 * An XML IDREF instance.
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
typedef struct _xmlRef xmlRef;
Packit Bot 06c835
typedef xmlRef *xmlRefPtr;
Packit Bot 06c835
struct _xmlRef {
Packit Bot 06c835
    struct _xmlRef    *next;	/* next Ref */
Packit Bot 06c835
    const xmlChar     *value;	/* The Ref name */
Packit Bot 06c835
    xmlAttrPtr        attr;	/* The attribute holding it */
Packit Bot 06c835
    const xmlChar    *name;	/* The attribute if attr is not available */
Packit Bot 06c835
    int               lineno;	/* The line number if attr is not available */
Packit Bot 06c835
};
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlNode:
Packit Bot 06c835
 *
Packit Bot 06c835
 * A node in an XML tree.
Packit Bot 06c835
 */
Packit Bot 06c835
typedef struct _xmlNode xmlNode;
Packit Bot 06c835
typedef xmlNode *xmlNodePtr;
Packit Bot 06c835
struct _xmlNode {
Packit Bot 06c835
    void           *_private;	/* application data */
Packit Bot 06c835
    xmlElementType   type;	/* type number, must be second ! */
Packit Bot 06c835
    const xmlChar   *name;      /* the name of the node, or the entity */
Packit Bot 06c835
    struct _xmlNode *children;	/* parent->childs link */
Packit Bot 06c835
    struct _xmlNode *last;	/* last child link */
Packit Bot 06c835
    struct _xmlNode *parent;	/* child->parent link */
Packit Bot 06c835
    struct _xmlNode *next;	/* next sibling link  */
Packit Bot 06c835
    struct _xmlNode *prev;	/* previous sibling link  */
Packit Bot 06c835
    struct _xmlDoc  *doc;	/* the containing document */
Packit Bot 06c835
Packit Bot 06c835
    /* End of common part */
Packit Bot 06c835
    xmlNs           *ns;        /* pointer to the associated namespace */
Packit Bot 06c835
    xmlChar         *content;   /* the content */
Packit Bot 06c835
    struct _xmlAttr *properties;/* properties list */
Packit Bot 06c835
    xmlNs           *nsDef;     /* namespace definitions on this node */
Packit Bot 06c835
    void            *psvi;	/* for type/PSVI informations */
Packit Bot 06c835
    unsigned short   line;	/* line number */
Packit Bot 06c835
    unsigned short   extra;	/* extra data for XPath/XSLT */
Packit Bot 06c835
};
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * XML_GET_CONTENT:
Packit Bot 06c835
 *
Packit Bot 06c835
 * Macro to extract the content pointer of a node.
Packit Bot 06c835
 */
Packit Bot 06c835
#define XML_GET_CONTENT(n)					\
Packit Bot 06c835
    ((n)->type == XML_ELEMENT_NODE ? NULL : (n)->content)
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * XML_GET_LINE:
Packit Bot 06c835
 *
Packit Bot 06c835
 * Macro to extract the line number of an element node.
Packit Bot 06c835
 */
Packit Bot 06c835
#define XML_GET_LINE(n)						\
Packit Bot 06c835
    (xmlGetLineNo(n))
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlDocProperty
Packit Bot 06c835
 *
Packit Bot 06c835
 * Set of properties of the document as found by the parser
Packit Bot 06c835
 * Some of them are linked to similary named xmlParserOption
Packit Bot 06c835
 */
Packit Bot 06c835
typedef enum {
Packit Bot 06c835
    XML_DOC_WELLFORMED		= 1<<0, /* document is XML well formed */
Packit Bot 06c835
    XML_DOC_NSVALID		= 1<<1, /* document is Namespace valid */
Packit Bot 06c835
    XML_DOC_OLD10		= 1<<2, /* parsed with old XML-1.0 parser */
Packit Bot 06c835
    XML_DOC_DTDVALID		= 1<<3, /* DTD validation was successful */
Packit Bot 06c835
    XML_DOC_XINCLUDE		= 1<<4, /* XInclude substitution was done */
Packit Bot 06c835
    XML_DOC_USERBUILT		= 1<<5, /* Document was built using the API
Packit Bot 06c835
                                           and not by parsing an instance */
Packit Bot 06c835
    XML_DOC_INTERNAL		= 1<<6, /* built for internal processing */
Packit Bot 06c835
    XML_DOC_HTML		= 1<<7  /* parsed or built HTML document */
Packit Bot 06c835
} xmlDocProperties;
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlDoc:
Packit Bot 06c835
 *
Packit Bot 06c835
 * An XML document.
Packit Bot 06c835
 */
Packit Bot 06c835
typedef struct _xmlDoc xmlDoc;
Packit Bot 06c835
typedef xmlDoc *xmlDocPtr;
Packit Bot 06c835
struct _xmlDoc {
Packit Bot 06c835
    void           *_private;	/* application data */
Packit Bot 06c835
    xmlElementType  type;       /* XML_DOCUMENT_NODE, must be second ! */
Packit Bot 06c835
    char           *name;	/* name/filename/URI of the document */
Packit Bot 06c835
    struct _xmlNode *children;	/* the document tree */
Packit Bot 06c835
    struct _xmlNode *last;	/* last child link */
Packit Bot 06c835
    struct _xmlNode *parent;	/* child->parent link */
Packit Bot 06c835
    struct _xmlNode *next;	/* next sibling link  */
Packit Bot 06c835
    struct _xmlNode *prev;	/* previous sibling link  */
Packit Bot 06c835
    struct _xmlDoc  *doc;	/* autoreference to itself */
Packit Bot 06c835
Packit Bot 06c835
    /* End of common part */
Packit Bot 06c835
    int             compression;/* level of zlib compression */
Packit Bot 06c835
    int             standalone; /* standalone document (no external refs)
Packit Bot 06c835
				     1 if standalone="yes"
Packit Bot 06c835
				     0 if standalone="no"
Packit Bot 06c835
				    -1 if there is no XML declaration
Packit Bot 06c835
				    -2 if there is an XML declaration, but no
Packit Bot 06c835
					standalone attribute was specified */
Packit Bot 06c835
    struct _xmlDtd  *intSubset;	/* the document internal subset */
Packit Bot 06c835
    struct _xmlDtd  *extSubset;	/* the document external subset */
Packit Bot 06c835
    struct _xmlNs   *oldNs;	/* Global namespace, the old way */
Packit Bot 06c835
    const xmlChar  *version;	/* the XML version string */
Packit Bot 06c835
    const xmlChar  *encoding;   /* external initial encoding, if any */
Packit Bot 06c835
    void           *ids;        /* Hash table for ID attributes if any */
Packit Bot 06c835
    void           *refs;       /* Hash table for IDREFs attributes if any */
Packit Bot 06c835
    const xmlChar  *URL;	/* The URI for that document */
Packit Bot 06c835
    int             charset;    /* encoding of the in-memory content
Packit Bot 06c835
				   actually an xmlCharEncoding */
Packit Bot 06c835
    struct _xmlDict *dict;      /* dict used to allocate names or NULL */
Packit Bot 06c835
    void           *psvi;	/* for type/PSVI informations */
Packit Bot 06c835
    int             parseFlags;	/* set of xmlParserOption used to parse the
Packit Bot 06c835
				   document */
Packit Bot 06c835
    int             properties;	/* set of xmlDocProperties for this document
Packit Bot 06c835
				   set at the end of parsing */
Packit Bot 06c835
};
Packit Bot 06c835
Packit Bot 06c835
Packit Bot 06c835
typedef struct _xmlDOMWrapCtxt xmlDOMWrapCtxt;
Packit Bot 06c835
typedef xmlDOMWrapCtxt *xmlDOMWrapCtxtPtr;
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlDOMWrapAcquireNsFunction:
Packit Bot 06c835
 * @ctxt:  a DOM wrapper context
Packit Bot 06c835
 * @node:  the context node (element or attribute)
Packit Bot 06c835
 * @nsName:  the requested namespace name
Packit Bot 06c835
 * @nsPrefix:  the requested namespace prefix
Packit Bot 06c835
 *
Packit Bot 06c835
 * A function called to acquire namespaces (xmlNs) from the wrapper.
Packit Bot 06c835
 *
Packit Bot 06c835
 * Returns an xmlNsPtr or NULL in case of an error.
Packit Bot 06c835
 */
Packit Bot 06c835
typedef xmlNsPtr (*xmlDOMWrapAcquireNsFunction) (xmlDOMWrapCtxtPtr ctxt,
Packit Bot 06c835
						 xmlNodePtr node,
Packit Bot 06c835
						 const xmlChar *nsName,
Packit Bot 06c835
						 const xmlChar *nsPrefix);
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlDOMWrapCtxt:
Packit Bot 06c835
 *
Packit Bot 06c835
 * Context for DOM wrapper-operations.
Packit Bot 06c835
 */
Packit Bot 06c835
struct _xmlDOMWrapCtxt {
Packit Bot 06c835
    void * _private;
Packit Bot 06c835
    /*
Packit Bot 06c835
    * The type of this context, just in case we need specialized
Packit Bot 06c835
    * contexts in the future.
Packit Bot 06c835
    */
Packit Bot 06c835
    int type;
Packit Bot 06c835
    /*
Packit Bot 06c835
    * Internal namespace map used for various operations.
Packit Bot 06c835
    */
Packit Bot 06c835
    void * namespaceMap;
Packit Bot 06c835
    /*
Packit Bot 06c835
    * Use this one to acquire an xmlNsPtr intended for node->ns.
Packit Bot 06c835
    * (Note that this is not intended for elem->nsDef).
Packit Bot 06c835
    */
Packit Bot 06c835
    xmlDOMWrapAcquireNsFunction getNsForNodeFunc;
Packit Bot 06c835
};
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlChildrenNode:
Packit Bot 06c835
 *
Packit Bot 06c835
 * Macro for compatibility naming layer with libxml1. Maps
Packit Bot 06c835
 * to "children."
Packit Bot 06c835
 */
Packit Bot 06c835
#ifndef xmlChildrenNode
Packit Bot 06c835
#define xmlChildrenNode children
Packit Bot 06c835
#endif
Packit Bot 06c835
Packit Bot 06c835
/**
Packit Bot 06c835
 * xmlRootNode:
Packit Bot 06c835
 *
Packit Bot 06c835
 * Macro for compatibility naming layer with libxml1. Maps
Packit Bot 06c835
 * to "children".
Packit Bot 06c835
 */
Packit Bot 06c835
#ifndef xmlRootNode
Packit Bot 06c835
#define xmlRootNode children
Packit Bot 06c835
#endif
Packit Bot 06c835
Packit Bot 06c835
/*
Packit Bot 06c835
 * Variables.
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
/*
Packit Bot 06c835
 * Some helper functions
Packit Bot 06c835
 */
Packit Bot 06c835
#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || \
Packit Bot 06c835
    defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_DEBUG_ENABLED) || \
Packit Bot 06c835
    defined (LIBXML_HTML_ENABLED) || defined(LIBXML_SAX1_ENABLED) || \
Packit Bot 06c835
    defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || \
Packit Bot 06c835
    defined(LIBXML_DOCB_ENABLED) || defined(LIBXML_LEGACY_ENABLED)
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlValidateNCName	(const xmlChar *value,
Packit Bot 06c835
					 int space);
Packit Bot 06c835
#endif
Packit Bot 06c835
Packit Bot 06c835
#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlValidateQName	(const xmlChar *value,
Packit Bot 06c835
					 int space);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlValidateName		(const xmlChar *value,
Packit Bot 06c835
					 int space);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlValidateNMToken	(const xmlChar *value,
Packit Bot 06c835
					 int space);
Packit Bot 06c835
#endif
Packit Bot 06c835
Packit Bot 06c835
XMLPUBFUN xmlChar * XMLCALL
Packit Bot 06c835
		xmlBuildQName		(const xmlChar *ncname,
Packit Bot 06c835
					 const xmlChar *prefix,
Packit Bot 06c835
					 xmlChar *memory,
Packit Bot 06c835
					 int len);
Packit Bot 06c835
XMLPUBFUN xmlChar * XMLCALL
Packit Bot 06c835
		xmlSplitQName2		(const xmlChar *name,
Packit Bot 06c835
					 xmlChar **prefix);
Packit Bot 06c835
XMLPUBFUN const xmlChar * XMLCALL
Packit Bot 06c835
		xmlSplitQName3		(const xmlChar *name,
Packit Bot 06c835
					 int *len);
Packit Bot 06c835
Packit Bot 06c835
/*
Packit Bot 06c835
 * Handling Buffers, the old ones see @xmlBuf for the new ones.
Packit Bot 06c835
 */
Packit Bot 06c835
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlSetBufferAllocationScheme(xmlBufferAllocationScheme scheme);
Packit Bot 06c835
XMLPUBFUN xmlBufferAllocationScheme XMLCALL
Packit Bot 06c835
		xmlGetBufferAllocationScheme(void);
Packit Bot 06c835
Packit Bot 06c835
XMLPUBFUN xmlBufferPtr XMLCALL
Packit Bot 06c835
		xmlBufferCreate		(void);
Packit Bot 06c835
XMLPUBFUN xmlBufferPtr XMLCALL
Packit Bot 06c835
		xmlBufferCreateSize	(size_t size);
Packit Bot 06c835
XMLPUBFUN xmlBufferPtr XMLCALL
Packit Bot 06c835
		xmlBufferCreateStatic	(void *mem,
Packit Bot 06c835
					 size_t size);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlBufferResize		(xmlBufferPtr buf,
Packit Bot 06c835
					 unsigned int size);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlBufferFree		(xmlBufferPtr buf);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlBufferDump		(FILE *file,
Packit Bot 06c835
					 xmlBufferPtr buf);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlBufferAdd		(xmlBufferPtr buf,
Packit Bot 06c835
					 const xmlChar *str,
Packit Bot 06c835
					 int len);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlBufferAddHead	(xmlBufferPtr buf,
Packit Bot 06c835
					 const xmlChar *str,
Packit Bot 06c835
					 int len);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlBufferCat		(xmlBufferPtr buf,
Packit Bot 06c835
					 const xmlChar *str);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlBufferCCat		(xmlBufferPtr buf,
Packit Bot 06c835
					 const char *str);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlBufferShrink		(xmlBufferPtr buf,
Packit Bot 06c835
					 unsigned int len);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlBufferGrow		(xmlBufferPtr buf,
Packit Bot 06c835
					 unsigned int len);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlBufferEmpty		(xmlBufferPtr buf);
Packit Bot 06c835
XMLPUBFUN const xmlChar* XMLCALL
Packit Bot 06c835
		xmlBufferContent	(const xmlBuffer *buf);
Packit Bot 06c835
XMLPUBFUN xmlChar* XMLCALL
Packit Bot 06c835
		xmlBufferDetach         (xmlBufferPtr buf);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlBufferSetAllocationScheme(xmlBufferPtr buf,
Packit Bot 06c835
					 xmlBufferAllocationScheme scheme);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlBufferLength		(const xmlBuffer *buf);
Packit Bot 06c835
Packit Bot 06c835
/*
Packit Bot 06c835
 * Creating/freeing new structures.
Packit Bot 06c835
 */
Packit Bot 06c835
XMLPUBFUN xmlDtdPtr XMLCALL
Packit Bot 06c835
		xmlCreateIntSubset	(xmlDocPtr doc,
Packit Bot 06c835
					 const xmlChar *name,
Packit Bot 06c835
					 const xmlChar *ExternalID,
Packit Bot 06c835
					 const xmlChar *SystemID);
Packit Bot 06c835
XMLPUBFUN xmlDtdPtr XMLCALL
Packit Bot 06c835
		xmlNewDtd		(xmlDocPtr doc,
Packit Bot 06c835
					 const xmlChar *name,
Packit Bot 06c835
					 const xmlChar *ExternalID,
Packit Bot 06c835
					 const xmlChar *SystemID);
Packit Bot 06c835
XMLPUBFUN xmlDtdPtr XMLCALL
Packit Bot 06c835
		xmlGetIntSubset		(const xmlDoc *doc);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlFreeDtd		(xmlDtdPtr cur);
Packit Bot 06c835
#ifdef LIBXML_LEGACY_ENABLED
Packit Bot 06c835
XMLPUBFUN xmlNsPtr XMLCALL
Packit Bot 06c835
		xmlNewGlobalNs		(xmlDocPtr doc,
Packit Bot 06c835
					 const xmlChar *href,
Packit Bot 06c835
					 const xmlChar *prefix);
Packit Bot 06c835
#endif /* LIBXML_LEGACY_ENABLED */
Packit Bot 06c835
XMLPUBFUN xmlNsPtr XMLCALL
Packit Bot 06c835
		xmlNewNs		(xmlNodePtr node,
Packit Bot 06c835
					 const xmlChar *href,
Packit Bot 06c835
					 const xmlChar *prefix);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlFreeNs		(xmlNsPtr cur);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlFreeNsList		(xmlNsPtr cur);
Packit Bot 06c835
XMLPUBFUN xmlDocPtr XMLCALL
Packit Bot 06c835
		xmlNewDoc		(const xmlChar *version);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlFreeDoc		(xmlDocPtr cur);
Packit Bot 06c835
XMLPUBFUN xmlAttrPtr XMLCALL
Packit Bot 06c835
		xmlNewDocProp		(xmlDocPtr doc,
Packit Bot 06c835
					 const xmlChar *name,
Packit Bot 06c835
					 const xmlChar *value);
Packit Bot 06c835
#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || \
Packit Bot 06c835
    defined(LIBXML_SCHEMAS_ENABLED)
Packit Bot 06c835
XMLPUBFUN xmlAttrPtr XMLCALL
Packit Bot 06c835
		xmlNewProp		(xmlNodePtr node,
Packit Bot 06c835
					 const xmlChar *name,
Packit Bot 06c835
					 const xmlChar *value);
Packit Bot 06c835
#endif
Packit Bot 06c835
XMLPUBFUN xmlAttrPtr XMLCALL
Packit Bot 06c835
		xmlNewNsProp		(xmlNodePtr node,
Packit Bot 06c835
					 xmlNsPtr ns,
Packit Bot 06c835
					 const xmlChar *name,
Packit Bot 06c835
					 const xmlChar *value);
Packit Bot 06c835
XMLPUBFUN xmlAttrPtr XMLCALL
Packit Bot 06c835
		xmlNewNsPropEatName	(xmlNodePtr node,
Packit Bot 06c835
					 xmlNsPtr ns,
Packit Bot 06c835
					 xmlChar *name,
Packit Bot 06c835
					 const xmlChar *value);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlFreePropList		(xmlAttrPtr cur);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlFreeProp		(xmlAttrPtr cur);
Packit Bot 06c835
XMLPUBFUN xmlAttrPtr XMLCALL
Packit Bot 06c835
		xmlCopyProp		(xmlNodePtr target,
Packit Bot 06c835
					 xmlAttrPtr cur);
Packit Bot 06c835
XMLPUBFUN xmlAttrPtr XMLCALL
Packit Bot 06c835
		xmlCopyPropList		(xmlNodePtr target,
Packit Bot 06c835
					 xmlAttrPtr cur);
Packit Bot 06c835
#ifdef LIBXML_TREE_ENABLED
Packit Bot 06c835
XMLPUBFUN xmlDtdPtr XMLCALL
Packit Bot 06c835
		xmlCopyDtd		(xmlDtdPtr dtd);
Packit Bot 06c835
#endif /* LIBXML_TREE_ENABLED */
Packit Bot 06c835
#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
Packit Bot 06c835
XMLPUBFUN xmlDocPtr XMLCALL
Packit Bot 06c835
		xmlCopyDoc		(xmlDocPtr doc,
Packit Bot 06c835
					 int recursive);
Packit Bot 06c835
#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) */
Packit Bot 06c835
/*
Packit Bot 06c835
 * Creating new nodes.
Packit Bot 06c835
 */
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewDocNode		(xmlDocPtr doc,
Packit Bot 06c835
					 xmlNsPtr ns,
Packit Bot 06c835
					 const xmlChar *name,
Packit Bot 06c835
					 const xmlChar *content);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewDocNodeEatName	(xmlDocPtr doc,
Packit Bot 06c835
					 xmlNsPtr ns,
Packit Bot 06c835
					 xmlChar *name,
Packit Bot 06c835
					 const xmlChar *content);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewNode		(xmlNsPtr ns,
Packit Bot 06c835
					 const xmlChar *name);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewNodeEatName	(xmlNsPtr ns,
Packit Bot 06c835
					 xmlChar *name);
Packit Bot 06c835
#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewChild		(xmlNodePtr parent,
Packit Bot 06c835
					 xmlNsPtr ns,
Packit Bot 06c835
					 const xmlChar *name,
Packit Bot 06c835
					 const xmlChar *content);
Packit Bot 06c835
#endif
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewDocText		(const xmlDoc *doc,
Packit Bot 06c835
					 const xmlChar *content);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewText		(const xmlChar *content);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewDocPI		(xmlDocPtr doc,
Packit Bot 06c835
					 const xmlChar *name,
Packit Bot 06c835
					 const xmlChar *content);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewPI		(const xmlChar *name,
Packit Bot 06c835
					 const xmlChar *content);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewDocTextLen	(xmlDocPtr doc,
Packit Bot 06c835
					 const xmlChar *content,
Packit Bot 06c835
					 int len);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewTextLen		(const xmlChar *content,
Packit Bot 06c835
					 int len);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewDocComment	(xmlDocPtr doc,
Packit Bot 06c835
					 const xmlChar *content);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewComment		(const xmlChar *content);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewCDataBlock	(xmlDocPtr doc,
Packit Bot 06c835
					 const xmlChar *content,
Packit Bot 06c835
					 int len);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewCharRef		(xmlDocPtr doc,
Packit Bot 06c835
					 const xmlChar *name);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewReference		(const xmlDoc *doc,
Packit Bot 06c835
					 const xmlChar *name);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlCopyNode		(xmlNodePtr node,
Packit Bot 06c835
					 int recursive);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlDocCopyNode		(xmlNodePtr node,
Packit Bot 06c835
					 xmlDocPtr doc,
Packit Bot 06c835
					 int recursive);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlDocCopyNodeList	(xmlDocPtr doc,
Packit Bot 06c835
					 xmlNodePtr node);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlCopyNodeList		(xmlNodePtr node);
Packit Bot 06c835
#ifdef LIBXML_TREE_ENABLED
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewTextChild		(xmlNodePtr parent,
Packit Bot 06c835
					 xmlNsPtr ns,
Packit Bot 06c835
					 const xmlChar *name,
Packit Bot 06c835
					 const xmlChar *content);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewDocRawNode	(xmlDocPtr doc,
Packit Bot 06c835
					 xmlNsPtr ns,
Packit Bot 06c835
					 const xmlChar *name,
Packit Bot 06c835
					 const xmlChar *content);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlNewDocFragment	(xmlDocPtr doc);
Packit Bot 06c835
#endif /* LIBXML_TREE_ENABLED */
Packit Bot 06c835
Packit Bot 06c835
/*
Packit Bot 06c835
 * Navigating.
Packit Bot 06c835
 */
Packit Bot 06c835
XMLPUBFUN long XMLCALL
Packit Bot 06c835
		xmlGetLineNo		(const xmlNode *node);
Packit Bot 06c835
#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED)
Packit Bot 06c835
XMLPUBFUN xmlChar * XMLCALL
Packit Bot 06c835
		xmlGetNodePath		(const xmlNode *node);
Packit Bot 06c835
#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED) */
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlDocGetRootElement	(const xmlDoc *doc);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlGetLastChild		(const xmlNode *parent);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlNodeIsText		(const xmlNode *node);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlIsBlankNode		(const xmlNode *node);
Packit Bot 06c835
Packit Bot 06c835
/*
Packit Bot 06c835
 * Changing the structure.
Packit Bot 06c835
 */
Packit Bot 06c835
#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED)
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlDocSetRootElement	(xmlDocPtr doc,
Packit Bot 06c835
					 xmlNodePtr root);
Packit Bot 06c835
#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) */
Packit Bot 06c835
#ifdef LIBXML_TREE_ENABLED
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlNodeSetName		(xmlNodePtr cur,
Packit Bot 06c835
					 const xmlChar *name);
Packit Bot 06c835
#endif /* LIBXML_TREE_ENABLED */
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlAddChild		(xmlNodePtr parent,
Packit Bot 06c835
					 xmlNodePtr cur);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlAddChildList		(xmlNodePtr parent,
Packit Bot 06c835
					 xmlNodePtr cur);
Packit Bot 06c835
#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED)
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlReplaceNode		(xmlNodePtr old,
Packit Bot 06c835
					 xmlNodePtr cur);
Packit Bot 06c835
#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) */
Packit Bot 06c835
#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || \
Packit Bot 06c835
    defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED)
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlAddPrevSibling	(xmlNodePtr cur,
Packit Bot 06c835
					 xmlNodePtr elem);
Packit Bot 06c835
#endif /* LIBXML_TREE_ENABLED || LIBXML_HTML_ENABLED || LIBXML_SCHEMAS_ENABLED */
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlAddSibling		(xmlNodePtr cur,
Packit Bot 06c835
					 xmlNodePtr elem);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlAddNextSibling	(xmlNodePtr cur,
Packit Bot 06c835
					 xmlNodePtr elem);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlUnlinkNode		(xmlNodePtr cur);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlTextMerge		(xmlNodePtr first,
Packit Bot 06c835
					 xmlNodePtr second);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlTextConcat		(xmlNodePtr node,
Packit Bot 06c835
					 const xmlChar *content,
Packit Bot 06c835
					 int len);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlFreeNodeList		(xmlNodePtr cur);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlFreeNode		(xmlNodePtr cur);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlSetTreeDoc		(xmlNodePtr tree,
Packit Bot 06c835
					 xmlDocPtr doc);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlSetListDoc		(xmlNodePtr list,
Packit Bot 06c835
					 xmlDocPtr doc);
Packit Bot 06c835
/*
Packit Bot 06c835
 * Namespaces.
Packit Bot 06c835
 */
Packit Bot 06c835
XMLPUBFUN xmlNsPtr XMLCALL
Packit Bot 06c835
		xmlSearchNs		(xmlDocPtr doc,
Packit Bot 06c835
					 xmlNodePtr node,
Packit Bot 06c835
					 const xmlChar *nameSpace);
Packit Bot 06c835
XMLPUBFUN xmlNsPtr XMLCALL
Packit Bot 06c835
		xmlSearchNsByHref	(xmlDocPtr doc,
Packit Bot 06c835
					 xmlNodePtr node,
Packit Bot 06c835
					 const xmlChar *href);
Packit Bot 06c835
#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || \
Packit Bot 06c835
    defined(LIBXML_SCHEMAS_ENABLED)
Packit Bot 06c835
XMLPUBFUN xmlNsPtr * XMLCALL
Packit Bot 06c835
		xmlGetNsList		(const xmlDoc *doc,
Packit Bot 06c835
					 const xmlNode *node);
Packit Bot 06c835
#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) */
Packit Bot 06c835
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlSetNs		(xmlNodePtr node,
Packit Bot 06c835
					 xmlNsPtr ns);
Packit Bot 06c835
XMLPUBFUN xmlNsPtr XMLCALL
Packit Bot 06c835
		xmlCopyNamespace	(xmlNsPtr cur);
Packit Bot 06c835
XMLPUBFUN xmlNsPtr XMLCALL
Packit Bot 06c835
		xmlCopyNamespaceList	(xmlNsPtr cur);
Packit Bot 06c835
Packit Bot 06c835
/*
Packit Bot 06c835
 * Changing the content.
Packit Bot 06c835
 */
Packit Bot 06c835
#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || \
Packit Bot 06c835
    defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED)
Packit Bot 06c835
XMLPUBFUN xmlAttrPtr XMLCALL
Packit Bot 06c835
		xmlSetProp		(xmlNodePtr node,
Packit Bot 06c835
					 const xmlChar *name,
Packit Bot 06c835
					 const xmlChar *value);
Packit Bot 06c835
XMLPUBFUN xmlAttrPtr XMLCALL
Packit Bot 06c835
		xmlSetNsProp		(xmlNodePtr node,
Packit Bot 06c835
					 xmlNsPtr ns,
Packit Bot 06c835
					 const xmlChar *name,
Packit Bot 06c835
					 const xmlChar *value);
Packit Bot 06c835
#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || \
Packit Bot 06c835
	  defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED) */
Packit Bot 06c835
XMLPUBFUN xmlChar * XMLCALL
Packit Bot 06c835
		xmlGetNoNsProp		(const xmlNode *node,
Packit Bot 06c835
					 const xmlChar *name);
Packit Bot 06c835
XMLPUBFUN xmlChar * XMLCALL
Packit Bot 06c835
		xmlGetProp		(const xmlNode *node,
Packit Bot 06c835
					 const xmlChar *name);
Packit Bot 06c835
XMLPUBFUN xmlAttrPtr XMLCALL
Packit Bot 06c835
		xmlHasProp		(const xmlNode *node,
Packit Bot 06c835
					 const xmlChar *name);
Packit Bot 06c835
XMLPUBFUN xmlAttrPtr XMLCALL
Packit Bot 06c835
		xmlHasNsProp		(const xmlNode *node,
Packit Bot 06c835
					 const xmlChar *name,
Packit Bot 06c835
					 const xmlChar *nameSpace);
Packit Bot 06c835
XMLPUBFUN xmlChar * XMLCALL
Packit Bot 06c835
		xmlGetNsProp		(const xmlNode *node,
Packit Bot 06c835
					 const xmlChar *name,
Packit Bot 06c835
					 const xmlChar *nameSpace);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlStringGetNodeList	(const xmlDoc *doc,
Packit Bot 06c835
					 const xmlChar *value);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
		xmlStringLenGetNodeList	(const xmlDoc *doc,
Packit Bot 06c835
					 const xmlChar *value,
Packit Bot 06c835
					 int len);
Packit Bot 06c835
XMLPUBFUN xmlChar * XMLCALL
Packit Bot 06c835
		xmlNodeListGetString	(xmlDocPtr doc,
Packit Bot 06c835
					 const xmlNode *list,
Packit Bot 06c835
					 int inLine);
Packit Bot 06c835
#ifdef LIBXML_TREE_ENABLED
Packit Bot 06c835
XMLPUBFUN xmlChar * XMLCALL
Packit Bot 06c835
		xmlNodeListGetRawString	(const xmlDoc *doc,
Packit Bot 06c835
					 const xmlNode *list,
Packit Bot 06c835
					 int inLine);
Packit Bot 06c835
#endif /* LIBXML_TREE_ENABLED */
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlNodeSetContent	(xmlNodePtr cur,
Packit Bot 06c835
					 const xmlChar *content);
Packit Bot 06c835
#ifdef LIBXML_TREE_ENABLED
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlNodeSetContentLen	(xmlNodePtr cur,
Packit Bot 06c835
					 const xmlChar *content,
Packit Bot 06c835
					 int len);
Packit Bot 06c835
#endif /* LIBXML_TREE_ENABLED */
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlNodeAddContent	(xmlNodePtr cur,
Packit Bot 06c835
					 const xmlChar *content);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlNodeAddContentLen	(xmlNodePtr cur,
Packit Bot 06c835
					 const xmlChar *content,
Packit Bot 06c835
					 int len);
Packit Bot 06c835
XMLPUBFUN xmlChar * XMLCALL
Packit Bot 06c835
		xmlNodeGetContent	(const xmlNode *cur);
Packit Bot 06c835
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlNodeBufGetContent	(xmlBufferPtr buffer,
Packit Bot 06c835
					 const xmlNode *cur);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlBufGetNodeContent	(xmlBufPtr buf,
Packit Bot 06c835
					 const xmlNode *cur);
Packit Bot 06c835
Packit Bot 06c835
XMLPUBFUN xmlChar * XMLCALL
Packit Bot 06c835
		xmlNodeGetLang		(const xmlNode *cur);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlNodeGetSpacePreserve	(const xmlNode *cur);
Packit Bot 06c835
#ifdef LIBXML_TREE_ENABLED
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlNodeSetLang		(xmlNodePtr cur,
Packit Bot 06c835
					 const xmlChar *lang);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlNodeSetSpacePreserve (xmlNodePtr cur,
Packit Bot 06c835
					 int val);
Packit Bot 06c835
#endif /* LIBXML_TREE_ENABLED */
Packit Bot 06c835
XMLPUBFUN xmlChar * XMLCALL
Packit Bot 06c835
		xmlNodeGetBase		(const xmlDoc *doc,
Packit Bot 06c835
					 const xmlNode *cur);
Packit Bot 06c835
#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED)
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlNodeSetBase		(xmlNodePtr cur,
Packit Bot 06c835
					 const xmlChar *uri);
Packit Bot 06c835
#endif
Packit Bot 06c835
Packit Bot 06c835
/*
Packit Bot 06c835
 * Removing content.
Packit Bot 06c835
 */
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlRemoveProp		(xmlAttrPtr cur);
Packit Bot 06c835
#if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlUnsetNsProp		(xmlNodePtr node,
Packit Bot 06c835
					 xmlNsPtr ns,
Packit Bot 06c835
					 const xmlChar *name);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlUnsetProp		(xmlNodePtr node,
Packit Bot 06c835
					 const xmlChar *name);
Packit Bot 06c835
#endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) */
Packit Bot 06c835
Packit Bot 06c835
/*
Packit Bot 06c835
 * Internal, don't use.
Packit Bot 06c835
 */
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlBufferWriteCHAR	(xmlBufferPtr buf,
Packit Bot 06c835
					 const xmlChar *string);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlBufferWriteChar	(xmlBufferPtr buf,
Packit Bot 06c835
					 const char *string);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlBufferWriteQuotedString(xmlBufferPtr buf,
Packit Bot 06c835
					 const xmlChar *string);
Packit Bot 06c835
Packit Bot 06c835
#ifdef LIBXML_OUTPUT_ENABLED
Packit Bot 06c835
XMLPUBFUN void xmlAttrSerializeTxtContent(xmlBufferPtr buf,
Packit Bot 06c835
					 xmlDocPtr doc,
Packit Bot 06c835
					 xmlAttrPtr attr,
Packit Bot 06c835
					 const xmlChar *string);
Packit Bot 06c835
#endif /* LIBXML_OUTPUT_ENABLED */
Packit Bot 06c835
Packit Bot 06c835
#ifdef LIBXML_TREE_ENABLED
Packit Bot 06c835
/*
Packit Bot 06c835
 * Namespace handling.
Packit Bot 06c835
 */
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlReconciliateNs	(xmlDocPtr doc,
Packit Bot 06c835
					 xmlNodePtr tree);
Packit Bot 06c835
#endif
Packit Bot 06c835
Packit Bot 06c835
#ifdef LIBXML_OUTPUT_ENABLED
Packit Bot 06c835
/*
Packit Bot 06c835
 * Saving.
Packit Bot 06c835
 */
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlDocDumpFormatMemory	(xmlDocPtr cur,
Packit Bot 06c835
					 xmlChar **mem,
Packit Bot 06c835
					 int *size,
Packit Bot 06c835
					 int format);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlDocDumpMemory	(xmlDocPtr cur,
Packit Bot 06c835
					 xmlChar **mem,
Packit Bot 06c835
					 int *size);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlDocDumpMemoryEnc	(xmlDocPtr out_doc,
Packit Bot 06c835
					 xmlChar **doc_txt_ptr,
Packit Bot 06c835
					 int * doc_txt_len,
Packit Bot 06c835
					 const char *txt_encoding);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlDocDumpFormatMemoryEnc(xmlDocPtr out_doc,
Packit Bot 06c835
					 xmlChar **doc_txt_ptr,
Packit Bot 06c835
					 int * doc_txt_len,
Packit Bot 06c835
					 const char *txt_encoding,
Packit Bot 06c835
					 int format);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlDocFormatDump	(FILE *f,
Packit Bot 06c835
					 xmlDocPtr cur,
Packit Bot 06c835
					 int format);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlDocDump		(FILE *f,
Packit Bot 06c835
					 xmlDocPtr cur);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlElemDump		(FILE *f,
Packit Bot 06c835
					 xmlDocPtr doc,
Packit Bot 06c835
					 xmlNodePtr cur);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlSaveFile		(const char *filename,
Packit Bot 06c835
					 xmlDocPtr cur);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlSaveFormatFile	(const char *filename,
Packit Bot 06c835
					 xmlDocPtr cur,
Packit Bot 06c835
					 int format);
Packit Bot 06c835
XMLPUBFUN size_t XMLCALL
Packit Bot 06c835
		xmlBufNodeDump		(xmlBufPtr buf,
Packit Bot 06c835
					 xmlDocPtr doc,
Packit Bot 06c835
					 xmlNodePtr cur,
Packit Bot 06c835
					 int level,
Packit Bot 06c835
					 int format);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlNodeDump		(xmlBufferPtr buf,
Packit Bot 06c835
					 xmlDocPtr doc,
Packit Bot 06c835
					 xmlNodePtr cur,
Packit Bot 06c835
					 int level,
Packit Bot 06c835
					 int format);
Packit Bot 06c835
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlSaveFileTo		(xmlOutputBufferPtr buf,
Packit Bot 06c835
					 xmlDocPtr cur,
Packit Bot 06c835
					 const char *encoding);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlSaveFormatFileTo     (xmlOutputBufferPtr buf,
Packit Bot 06c835
					 xmlDocPtr cur,
Packit Bot 06c835
				         const char *encoding,
Packit Bot 06c835
				         int format);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlNodeDumpOutput	(xmlOutputBufferPtr buf,
Packit Bot 06c835
					 xmlDocPtr doc,
Packit Bot 06c835
					 xmlNodePtr cur,
Packit Bot 06c835
					 int level,
Packit Bot 06c835
					 int format,
Packit Bot 06c835
					 const char *encoding);
Packit Bot 06c835
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlSaveFormatFileEnc    (const char *filename,
Packit Bot 06c835
					 xmlDocPtr cur,
Packit Bot 06c835
					 const char *encoding,
Packit Bot 06c835
					 int format);
Packit Bot 06c835
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlSaveFileEnc		(const char *filename,
Packit Bot 06c835
					 xmlDocPtr cur,
Packit Bot 06c835
					 const char *encoding);
Packit Bot 06c835
Packit Bot 06c835
#endif /* LIBXML_OUTPUT_ENABLED */
Packit Bot 06c835
/*
Packit Bot 06c835
 * XHTML
Packit Bot 06c835
 */
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlIsXHTML		(const xmlChar *systemID,
Packit Bot 06c835
					 const xmlChar *publicID);
Packit Bot 06c835
Packit Bot 06c835
/*
Packit Bot 06c835
 * Compression.
Packit Bot 06c835
 */
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlGetDocCompressMode	(const xmlDoc *doc);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlSetDocCompressMode	(xmlDocPtr doc,
Packit Bot 06c835
					 int mode);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
		xmlGetCompressMode	(void);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlSetCompressMode	(int mode);
Packit Bot 06c835
Packit Bot 06c835
/*
Packit Bot 06c835
* DOM-wrapper helper functions.
Packit Bot 06c835
*/
Packit Bot 06c835
XMLPUBFUN xmlDOMWrapCtxtPtr XMLCALL
Packit Bot 06c835
		xmlDOMWrapNewCtxt	(void);
Packit Bot 06c835
XMLPUBFUN void XMLCALL
Packit Bot 06c835
		xmlDOMWrapFreeCtxt	(xmlDOMWrapCtxtPtr ctxt);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
	    xmlDOMWrapReconcileNamespaces(xmlDOMWrapCtxtPtr ctxt,
Packit Bot 06c835
					 xmlNodePtr elem,
Packit Bot 06c835
					 int options);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
	    xmlDOMWrapAdoptNode		(xmlDOMWrapCtxtPtr ctxt,
Packit Bot 06c835
					 xmlDocPtr sourceDoc,
Packit Bot 06c835
					 xmlNodePtr node,
Packit Bot 06c835
					 xmlDocPtr destDoc,
Packit Bot 06c835
					 xmlNodePtr destParent,
Packit Bot 06c835
					 int options);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
	    xmlDOMWrapRemoveNode	(xmlDOMWrapCtxtPtr ctxt,
Packit Bot 06c835
					 xmlDocPtr doc,
Packit Bot 06c835
					 xmlNodePtr node,
Packit Bot 06c835
					 int options);
Packit Bot 06c835
XMLPUBFUN int XMLCALL
Packit Bot 06c835
	    xmlDOMWrapCloneNode		(xmlDOMWrapCtxtPtr ctxt,
Packit Bot 06c835
					 xmlDocPtr sourceDoc,
Packit Bot 06c835
					 xmlNodePtr node,
Packit Bot 06c835
					 xmlNodePtr *clonedNode,
Packit Bot 06c835
					 xmlDocPtr destDoc,
Packit Bot 06c835
					 xmlNodePtr destParent,
Packit Bot 06c835
					 int deep,
Packit Bot 06c835
					 int options);
Packit Bot 06c835
Packit Bot 06c835
#ifdef LIBXML_TREE_ENABLED
Packit Bot 06c835
/*
Packit Bot 06c835
 * 5 interfaces from DOM ElementTraversal, but different in entities
Packit Bot 06c835
 * traversal.
Packit Bot 06c835
 */
Packit Bot 06c835
XMLPUBFUN unsigned long XMLCALL
Packit Bot 06c835
            xmlChildElementCount        (xmlNodePtr parent);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
            xmlNextElementSibling       (xmlNodePtr node);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
            xmlFirstElementChild        (xmlNodePtr parent);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
            xmlLastElementChild         (xmlNodePtr parent);
Packit Bot 06c835
XMLPUBFUN xmlNodePtr XMLCALL
Packit Bot 06c835
            xmlPreviousElementSibling   (xmlNodePtr node);
Packit Bot 06c835
#endif
Packit Bot 06c835
#ifdef __cplusplus
Packit Bot 06c835
}
Packit Bot 06c835
#endif
Packit Bot 06c835
#ifndef __XML_PARSER_H__
Packit Bot 06c835
#include <libxml/xmlmemory.h>
Packit Bot 06c835
#endif
Packit Bot 06c835
Packit Bot 06c835
#endif /* __XML_TREE_H__ */
Packit Bot 06c835