ReactOS  0.4.14-dev-52-g6116262
tree.h
Go to the documentation of this file.
1 /*
2  * Summary: interfaces for tree manipulation
3  * Description: this module describes the structures found in an tree resulting
4  * from an XML or HTML parsing, as well as the API provided for
5  * various processing on that tree
6  *
7  * Copy: See Copyright for the status of this software.
8  *
9  * Author: Daniel Veillard
10  */
11 
12 #ifndef __XML_TREE_H__
13 #define __XML_TREE_H__
14 
15 #include <stdio.h>
16 #include <limits.h>
17 #include <libxml/xmlversion.h>
18 #include <libxml/xmlstring.h>
19 
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23 
24 /*
25  * Some of the basic types pointer to structures:
26  */
27 /* xmlIO.h */
30 
31 typedef struct _xmlOutputBuffer xmlOutputBuffer;
33 
34 /* parser.h */
37 
40 
43 
46 
47 /* entities.h */
48 typedef struct _xmlEntity xmlEntity;
50 
56 #define BASE_BUFFER_SIZE 4096
57 
65 /* #define LIBXML_NAMESPACE_DICT */
66 
74 typedef enum {
75  XML_BUFFER_ALLOC_DOUBLEIT, /* double each time one need to grow */
76  XML_BUFFER_ALLOC_EXACT, /* grow only to the minimal size */
77  XML_BUFFER_ALLOC_IMMUTABLE, /* immutable buffer */
78  XML_BUFFER_ALLOC_IO, /* special allocation scheme used for I/O */
79  XML_BUFFER_ALLOC_HYBRID, /* exact up to a threshold, and doubleit thereafter */
80  XML_BUFFER_ALLOC_BOUNDED /* limit the upper size of the buffer */
82 
89 typedef struct _xmlBuffer xmlBuffer;
91 struct _xmlBuffer {
92  xmlChar *content; /* The buffer content UTF8 */
93  unsigned int use; /* The buffer size used */
94  unsigned int size; /* The buffer size */
95  xmlBufferAllocationScheme alloc; /* The realloc method */
96  xmlChar *contentIO; /* in IO mode we may have a different base */
97 };
98 
105 typedef struct _xmlBuf xmlBuf;
106 
114 typedef xmlBuf *xmlBufPtr;
115 
116 /*
117  * A few public routines for xmlBuf. As those are expected to be used
118  * mostly internally the bulk of the routines are internal in buf.h
119  */
122 XMLPUBFUN size_t XMLCALL xmlBufUse (const xmlBufPtr buf);
123 XMLPUBFUN size_t XMLCALL xmlBufShrink (xmlBufPtr buf, size_t len);
124 
125 /*
126  * LIBXML2_NEW_BUFFER:
127  *
128  * Macro used to express that the API use the new buffers for
129  * xmlParserInputBuffer and xmlOutputBuffer. The change was
130  * introduced in 2.9.0.
131  */
132 #define LIBXML2_NEW_BUFFER
133 
140 #define XML_XML_NAMESPACE \
141  (const xmlChar *) "http://www.w3.org/XML/1998/namespace"
142 
148 #define XML_XML_ID (const xmlChar *) "xml:id"
149 
150 /*
151  * The different element types carried by an XML tree.
152  *
153  * NOTE: This is synchronized with DOM Level1 values
154  * See http://www.w3.org/TR/REC-DOM-Level-1/
155  *
156  * Actually this had diverged a bit, and now XML_DOCUMENT_TYPE_NODE should
157  * be deprecated to use an XML_DTD_NODE.
158  */
159 typedef enum {
180 #ifdef LIBXML_DOCB_ENABLED
181  ,XML_DOCB_DOCUMENT_NODE= 21
182 #endif
184 
185 
192 typedef struct _xmlNotation xmlNotation;
194 struct _xmlNotation {
195  const xmlChar *name; /* Notation name */
196  const xmlChar *PublicID; /* Public identifier, if any */
197  const xmlChar *SystemID; /* System identifier, if any */
198 };
199 
206 typedef enum {
218 
225 typedef enum {
231 
241  struct _xmlEnumeration *next; /* next one */
242  const xmlChar *name; /* Enumeration name */
243 };
244 
254  void *_private; /* application data */
255  xmlElementType type; /* XML_ATTRIBUTE_DECL, must be second ! */
256  const xmlChar *name; /* Attribute name */
257  struct _xmlNode *children; /* NULL */
258  struct _xmlNode *last; /* NULL */
259  struct _xmlDtd *parent; /* -> DTD */
260  struct _xmlNode *next; /* next sibling link */
261  struct _xmlNode *prev; /* previous sibling link */
262  struct _xmlDoc *doc; /* the containing document */
263 
264  struct _xmlAttribute *nexth; /* next in hash table */
265  xmlAttributeType atype; /* The attribute type */
266  xmlAttributeDefault def; /* the default */
267  const xmlChar *defaultValue; /* or the default value */
268  xmlEnumerationPtr tree; /* or the enumeration tree if any */
269  const xmlChar *prefix; /* the namespace prefix if any */
270  const xmlChar *elem; /* Element holding the attribute */
271 };
272 
278 typedef enum {
284 
290 typedef enum {
296 
307  xmlElementContentType type; /* PCDATA, ELEMENT, SEQ or OR */
308  xmlElementContentOccur ocur; /* ONCE, OPT, MULT or PLUS */
309  const xmlChar *name; /* Element name */
310  struct _xmlElementContent *c1; /* first child */
311  struct _xmlElementContent *c2; /* second child */
312  struct _xmlElementContent *parent; /* parent */
313  const xmlChar *prefix; /* Namespace prefix */
314 };
315 
322 typedef enum {
329 
330 #ifdef __cplusplus
331 }
332 #endif
333 #include <libxml/xmlregexp.h>
334 #ifdef __cplusplus
335 extern "C" {
336 #endif
337 
344 typedef struct _xmlElement xmlElement;
346 struct _xmlElement {
347  void *_private; /* application data */
348  xmlElementType type; /* XML_ELEMENT_DECL, must be second ! */
349  const xmlChar *name; /* Element name */
350  struct _xmlNode *children; /* NULL */
351  struct _xmlNode *last; /* NULL */
352  struct _xmlDtd *parent; /* -> DTD */
353  struct _xmlNode *next; /* next sibling link */
354  struct _xmlNode *prev; /* previous sibling link */
355  struct _xmlDoc *doc; /* the containing document */
356 
357  xmlElementTypeVal etype; /* The type */
358  xmlElementContentPtr content; /* the allowed element content */
359  xmlAttributePtr attributes; /* List of the declared attributes */
360  const xmlChar *prefix; /* the namespace prefix if any */
361 #ifdef LIBXML_REGEXP_ENABLED
362  xmlRegexpPtr contModel; /* the validating regexp */
363 #else
364  void *contModel;
365 #endif
366 };
367 
368 
374 #define XML_LOCAL_NAMESPACE XML_NAMESPACE_DECL
376 
387 typedef struct _xmlNs xmlNs;
388 typedef xmlNs *xmlNsPtr;
389 struct _xmlNs {
390  struct _xmlNs *next; /* next Ns link for this node */
391  xmlNsType type; /* global or local */
392  const xmlChar *href; /* URL for the namespace */
393  const xmlChar *prefix; /* prefix for the namespace */
394  void *_private; /* application data */
395  struct _xmlDoc *context; /* normally an xmlDoc */
396 };
397 
404 typedef struct _xmlDtd xmlDtd;
405 typedef xmlDtd *xmlDtdPtr;
406 struct _xmlDtd {
407  void *_private; /* application data */
408  xmlElementType type; /* XML_DTD_NODE, must be second ! */
409  const xmlChar *name; /* Name of the DTD */
410  struct _xmlNode *children; /* the value of the property link */
411  struct _xmlNode *last; /* last child link */
412  struct _xmlDoc *parent; /* child->parent link */
413  struct _xmlNode *next; /* next sibling link */
414  struct _xmlNode *prev; /* previous sibling link */
415  struct _xmlDoc *doc; /* the containing document */
416 
417  /* End of common part */
418  void *notations; /* Hash table for notations if any */
419  void *elements; /* Hash table for elements if any */
420  void *attributes; /* Hash table for attributes if any */
421  void *entities; /* Hash table for entities if any */
422  const xmlChar *ExternalID; /* External identifier for PUBLIC DTD */
423  const xmlChar *SystemID; /* URI for a SYSTEM or PUBLIC DTD */
424  void *pentities; /* Hash table for param entities if any */
425 };
426 
432 typedef struct _xmlAttr xmlAttr;
434 struct _xmlAttr {
435  void *_private; /* application data */
436  xmlElementType type; /* XML_ATTRIBUTE_NODE, must be second ! */
437  const xmlChar *name; /* the name of the property */
438  struct _xmlNode *children; /* the value of the property */
439  struct _xmlNode *last; /* NULL */
440  struct _xmlNode *parent; /* child->parent link */
441  struct _xmlAttr *next; /* next sibling link */
442  struct _xmlAttr *prev; /* previous sibling link */
443  struct _xmlDoc *doc; /* the containing document */
444  xmlNs *ns; /* pointer to the associated namespace */
445  xmlAttributeType atype; /* the attribute type if validating */
446  void *psvi; /* for type/PSVI informations */
447 };
448 
455 typedef struct _xmlID xmlID;
456 typedef xmlID *xmlIDPtr;
457 struct _xmlID {
458  struct _xmlID *next; /* next ID */
459  const xmlChar *value; /* The ID name */
460  xmlAttrPtr attr; /* The attribute holding it */
461  const xmlChar *name; /* The attribute if attr is not available */
462  int lineno; /* The line number if attr is not available */
463  struct _xmlDoc *doc; /* The document holding the ID */
464 };
465 
472 typedef struct _xmlRef xmlRef;
473 typedef xmlRef *xmlRefPtr;
474 struct _xmlRef {
475  struct _xmlRef *next; /* next Ref */
476  const xmlChar *value; /* The Ref name */
477  xmlAttrPtr attr; /* The attribute holding it */
478  const xmlChar *name; /* The attribute if attr is not available */
479  int lineno; /* The line number if attr is not available */
480 };
481 
487 typedef struct _xmlNode xmlNode;
489 struct _xmlNode {
490  void *_private; /* application data */
491  xmlElementType type; /* type number, must be second ! */
492  const xmlChar *name; /* the name of the node, or the entity */
493  struct _xmlNode *children; /* parent->childs link */
494  struct _xmlNode *last; /* last child link */
495  struct _xmlNode *parent; /* child->parent link */
496  struct _xmlNode *next; /* next sibling link */
497  struct _xmlNode *prev; /* previous sibling link */
498  struct _xmlDoc *doc; /* the containing document */
499 
500  /* End of common part */
501  xmlNs *ns; /* pointer to the associated namespace */
502  xmlChar *content; /* the content */
503  struct _xmlAttr *properties;/* properties list */
504  xmlNs *nsDef; /* namespace definitions on this node */
505  void *psvi; /* for type/PSVI informations */
506  unsigned short line; /* line number */
507  unsigned short extra; /* extra data for XPath/XSLT */
508 };
509 
515 #define XML_GET_CONTENT(n) \
516  ((n)->type == XML_ELEMENT_NODE ? NULL : (n)->content)
517 
523 #define XML_GET_LINE(n) \
524  (xmlGetLineNo(n))
525 
532 typedef enum {
533  XML_DOC_WELLFORMED = 1<<0, /* document is XML well formed */
534  XML_DOC_NSVALID = 1<<1, /* document is Namespace valid */
535  XML_DOC_OLD10 = 1<<2, /* parsed with old XML-1.0 parser */
536  XML_DOC_DTDVALID = 1<<3, /* DTD validation was successful */
537  XML_DOC_XINCLUDE = 1<<4, /* XInclude substitution was done */
538  XML_DOC_USERBUILT = 1<<5, /* Document was built using the API
539  and not by parsing an instance */
540  XML_DOC_INTERNAL = 1<<6, /* built for internal processing */
541  XML_DOC_HTML = 1<<7 /* parsed or built HTML document */
543 
549 typedef struct _xmlDoc xmlDoc;
550 typedef xmlDoc *xmlDocPtr;
551 struct _xmlDoc {
552  void *_private; /* application data */
553  xmlElementType type; /* XML_DOCUMENT_NODE, must be second ! */
554  char *name; /* name/filename/URI of the document */
555  struct _xmlNode *children; /* the document tree */
556  struct _xmlNode *last; /* last child link */
557  struct _xmlNode *parent; /* child->parent link */
558  struct _xmlNode *next; /* next sibling link */
559  struct _xmlNode *prev; /* previous sibling link */
560  struct _xmlDoc *doc; /* autoreference to itself */
561 
562  /* End of common part */
563  int compression;/* level of zlib compression */
564  int standalone; /* standalone document (no external refs)
565  1 if standalone="yes"
566  0 if standalone="no"
567  -1 if there is no XML declaration
568  -2 if there is an XML declaration, but no
569  standalone attribute was specified */
570  struct _xmlDtd *intSubset; /* the document internal subset */
571  struct _xmlDtd *extSubset; /* the document external subset */
572  struct _xmlNs *oldNs; /* Global namespace, the old way */
573  const xmlChar *version; /* the XML version string */
574  const xmlChar *encoding; /* external initial encoding, if any */
575  void *ids; /* Hash table for ID attributes if any */
576  void *refs; /* Hash table for IDREFs attributes if any */
577  const xmlChar *URL; /* The URI for that document */
578  int charset; /* Internal flag for charset handling,
579  actually an xmlCharEncoding */
580  struct _xmlDict *dict; /* dict used to allocate names or NULL */
581  void *psvi; /* for type/PSVI informations */
582  int parseFlags; /* set of xmlParserOption used to parse the
583  document */
584  int properties; /* set of xmlDocProperties for this document
585  set at the end of parsing */
586 };
587 
588 
591 
605  const xmlChar *nsName,
606  const xmlChar *nsPrefix);
607 
614  void * _private;
615  /*
616  * The type of this context, just in case we need specialized
617  * contexts in the future.
618  */
619  int type;
620  /*
621  * Internal namespace map used for various operations.
622  */
623  void * namespaceMap;
624  /*
625  * Use this one to acquire an xmlNsPtr intended for node->ns.
626  * (Note that this is not intended for elem->nsDef).
627  */
629 };
630 
637 #ifndef xmlChildrenNode
638 #define xmlChildrenNode children
639 #endif
640 
647 #ifndef xmlRootNode
648 #define xmlRootNode children
649 #endif
650 
651 /*
652  * Variables.
653  */
654 
655 /*
656  * Some helper functions
657  */
658 #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || \
659  defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_DEBUG_ENABLED) || \
660  defined (LIBXML_HTML_ENABLED) || defined(LIBXML_SAX1_ENABLED) || \
661  defined(LIBXML_HTML_ENABLED) || defined(LIBXML_WRITER_ENABLED) || \
662  defined(LIBXML_DOCB_ENABLED) || defined(LIBXML_LEGACY_ENABLED)
663 XMLPUBFUN int XMLCALL
664  xmlValidateNCName (const xmlChar *value,
665  int space);
666 #endif
667 
668 #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
669 XMLPUBFUN int XMLCALL
670  xmlValidateQName (const xmlChar *value,
671  int space);
672 XMLPUBFUN int XMLCALL
673  xmlValidateName (const xmlChar *value,
674  int space);
675 XMLPUBFUN int XMLCALL
676  xmlValidateNMToken (const xmlChar *value,
677  int space);
678 #endif
679 
681  xmlBuildQName (const xmlChar *ncname,
682  const xmlChar *prefix,
683  xmlChar *memory,
684  int len);
686  xmlSplitQName2 (const xmlChar *name,
687  xmlChar **prefix);
688 XMLPUBFUN const xmlChar * XMLCALL
689  xmlSplitQName3 (const xmlChar *name,
690  int *len);
691 
692 /*
693  * Handling Buffers, the old ones see @xmlBuf for the new ones.
694  */
695 
696 XMLPUBFUN void XMLCALL
700 
702  xmlBufferCreate (void);
704  xmlBufferCreateSize (size_t size);
706  xmlBufferCreateStatic (void *mem,
707  size_t size);
708 XMLPUBFUN int XMLCALL
710  unsigned int size);
711 XMLPUBFUN void XMLCALL
713 XMLPUBFUN int XMLCALL
715  xmlBufferPtr buf);
716 XMLPUBFUN int XMLCALL
718  const xmlChar *str,
719  int len);
720 XMLPUBFUN int XMLCALL
722  const xmlChar *str,
723  int len);
724 XMLPUBFUN int XMLCALL
726  const xmlChar *str);
727 XMLPUBFUN int XMLCALL
729  const char *str);
730 XMLPUBFUN int XMLCALL
732  unsigned int len);
733 XMLPUBFUN int XMLCALL
735  unsigned int len);
736 XMLPUBFUN void XMLCALL
739  xmlBufferContent (const xmlBuffer *buf);
742 XMLPUBFUN void XMLCALL
745 XMLPUBFUN int XMLCALL
746  xmlBufferLength (const xmlBuffer *buf);
747 
748 /*
749  * Creating/freeing new structures.
750  */
753  const xmlChar *name,
754  const xmlChar *ExternalID,
755  const xmlChar *SystemID);
757  xmlNewDtd (xmlDocPtr doc,
758  const xmlChar *name,
759  const xmlChar *ExternalID,
760  const xmlChar *SystemID);
762  xmlGetIntSubset (const xmlDoc *doc);
763 XMLPUBFUN void XMLCALL
764  xmlFreeDtd (xmlDtdPtr cur);
765 #ifdef LIBXML_LEGACY_ENABLED
767  xmlNewGlobalNs (xmlDocPtr doc,
768  const xmlChar *href,
769  const xmlChar *prefix);
770 #endif /* LIBXML_LEGACY_ENABLED */
773  const xmlChar *href,
774  const xmlChar *prefix);
775 XMLPUBFUN void XMLCALL
776  xmlFreeNs (xmlNsPtr cur);
777 XMLPUBFUN void XMLCALL
778  xmlFreeNsList (xmlNsPtr cur);
780  xmlNewDoc (const xmlChar *version);
781 XMLPUBFUN void XMLCALL
782  xmlFreeDoc (xmlDocPtr cur);
785  const xmlChar *name,
786  const xmlChar *value);
787 #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || \
788  defined(LIBXML_SCHEMAS_ENABLED)
790  xmlNewProp (xmlNodePtr node,
791  const xmlChar *name,
792  const xmlChar *value);
793 #endif
796  xmlNsPtr ns,
797  const xmlChar *name,
798  const xmlChar *value);
801  xmlNsPtr ns,
802  xmlChar *name,
803  const xmlChar *value);
804 XMLPUBFUN void XMLCALL
806 XMLPUBFUN void XMLCALL
807  xmlFreeProp (xmlAttrPtr cur);
810  xmlAttrPtr cur);
813  xmlAttrPtr cur);
814 #ifdef LIBXML_TREE_ENABLED
816  xmlCopyDtd (xmlDtdPtr dtd);
817 #endif /* LIBXML_TREE_ENABLED */
818 #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
820  xmlCopyDoc (xmlDocPtr doc,
821  int recursive);
822 #endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) */
823 /*
824  * Creating new nodes.
825  */
828  xmlNsPtr ns,
829  const xmlChar *name,
830  const xmlChar *content);
833  xmlNsPtr ns,
834  xmlChar *name,
835  const xmlChar *content);
838  const xmlChar *name);
841  xmlChar *name);
842 #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
844  xmlNewChild (xmlNodePtr parent,
845  xmlNsPtr ns,
846  const xmlChar *name,
847  const xmlChar *content);
848 #endif
850  xmlNewDocText (const xmlDoc *doc,
851  const xmlChar *content);
853  xmlNewText (const xmlChar *content);
855  xmlNewDocPI (xmlDocPtr doc,
856  const xmlChar *name,
857  const xmlChar *content);
859  xmlNewPI (const xmlChar *name,
860  const xmlChar *content);
863  const xmlChar *content,
864  int len);
866  xmlNewTextLen (const xmlChar *content,
867  int len);
870  const xmlChar *content);
872  xmlNewComment (const xmlChar *content);
875  const xmlChar *content,
876  int len);
879  const xmlChar *name);
881  xmlNewReference (const xmlDoc *doc,
882  const xmlChar *name);
885  int recursive);
888  xmlDocPtr doc,
889  int recursive);
892  xmlNodePtr node);
895 #ifdef LIBXML_TREE_ENABLED
897  xmlNewTextChild (xmlNodePtr parent,
898  xmlNsPtr ns,
899  const xmlChar *name,
900  const xmlChar *content);
902  xmlNewDocRawNode (xmlDocPtr doc,
903  xmlNsPtr ns,
904  const xmlChar *name,
905  const xmlChar *content);
907  xmlNewDocFragment (xmlDocPtr doc);
908 #endif /* LIBXML_TREE_ENABLED */
909 
910 /*
911  * Navigating.
912  */
913 XMLPUBFUN long XMLCALL
914  xmlGetLineNo (const xmlNode *node);
915 #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED)
917  xmlGetNodePath (const xmlNode *node);
918 #endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_DEBUG_ENABLED) */
920  xmlDocGetRootElement (const xmlDoc *doc);
922  xmlGetLastChild (const xmlNode *parent);
923 XMLPUBFUN int XMLCALL
924  xmlNodeIsText (const xmlNode *node);
925 XMLPUBFUN int XMLCALL
926  xmlIsBlankNode (const xmlNode *node);
927 
928 /*
929  * Changing the structure.
930  */
931 #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED)
933  xmlDocSetRootElement (xmlDocPtr doc,
934  xmlNodePtr root);
935 #endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) */
936 #ifdef LIBXML_TREE_ENABLED
937 XMLPUBFUN void XMLCALL
938  xmlNodeSetName (xmlNodePtr cur,
939  const xmlChar *name);
940 #endif /* LIBXML_TREE_ENABLED */
943  xmlNodePtr cur);
946  xmlNodePtr cur);
947 #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED)
949  xmlReplaceNode (xmlNodePtr old,
950  xmlNodePtr cur);
951 #endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_WRITER_ENABLED) */
952 #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_HTML_ENABLED) || \
953  defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED)
955  xmlAddPrevSibling (xmlNodePtr cur,
956  xmlNodePtr elem);
957 #endif /* LIBXML_TREE_ENABLED || LIBXML_HTML_ENABLED || LIBXML_SCHEMAS_ENABLED */
960  xmlNodePtr elem);
963  xmlNodePtr elem);
964 XMLPUBFUN void XMLCALL
968  xmlNodePtr second);
969 XMLPUBFUN int XMLCALL
971  const xmlChar *content,
972  int len);
973 XMLPUBFUN void XMLCALL
975 XMLPUBFUN void XMLCALL
976  xmlFreeNode (xmlNodePtr cur);
977 XMLPUBFUN void XMLCALL
979  xmlDocPtr doc);
980 XMLPUBFUN void XMLCALL
982  xmlDocPtr doc);
983 /*
984  * Namespaces.
985  */
987  xmlSearchNs (xmlDocPtr doc,
989  const xmlChar *nameSpace);
993  const xmlChar *href);
994 #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) || \
995  defined(LIBXML_SCHEMAS_ENABLED)
997  xmlGetNsList (const xmlDoc *doc,
998  const xmlNode *node);
999 #endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XPATH_ENABLED) */
1000 
1001 XMLPUBFUN void XMLCALL
1003  xmlNsPtr ns);
1005  xmlCopyNamespace (xmlNsPtr cur);
1008 
1009 /*
1010  * Changing the content.
1011  */
1012 #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || \
1013  defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED)
1015  xmlSetProp (xmlNodePtr node,
1016  const xmlChar *name,
1017  const xmlChar *value);
1019  xmlSetNsProp (xmlNodePtr node,
1020  xmlNsPtr ns,
1021  const xmlChar *name,
1022  const xmlChar *value);
1023 #endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED) || \
1024  defined(LIBXML_SCHEMAS_ENABLED) || defined(LIBXML_HTML_ENABLED) */
1026  xmlGetNoNsProp (const xmlNode *node,
1027  const xmlChar *name);
1029  xmlGetProp (const xmlNode *node,
1030  const xmlChar *name);
1032  xmlHasProp (const xmlNode *node,
1033  const xmlChar *name);
1035  xmlHasNsProp (const xmlNode *node,
1036  const xmlChar *name,
1037  const xmlChar *nameSpace);
1039  xmlGetNsProp (const xmlNode *node,
1040  const xmlChar *name,
1041  const xmlChar *nameSpace);
1043  xmlStringGetNodeList (const xmlDoc *doc,
1044  const xmlChar *value);
1046  xmlStringLenGetNodeList (const xmlDoc *doc,
1047  const xmlChar *value,
1048  int len);
1051  const xmlNode *list,
1052  int inLine);
1053 #ifdef LIBXML_TREE_ENABLED
1055  xmlNodeListGetRawString (const xmlDoc *doc,
1056  const xmlNode *list,
1057  int inLine);
1058 #endif /* LIBXML_TREE_ENABLED */
1059 XMLPUBFUN void XMLCALL
1061  const xmlChar *content);
1062 #ifdef LIBXML_TREE_ENABLED
1063 XMLPUBFUN void XMLCALL
1064  xmlNodeSetContentLen (xmlNodePtr cur,
1065  const xmlChar *content,
1066  int len);
1067 #endif /* LIBXML_TREE_ENABLED */
1068 XMLPUBFUN void XMLCALL
1070  const xmlChar *content);
1071 XMLPUBFUN void XMLCALL
1073  const xmlChar *content,
1074  int len);
1076  xmlNodeGetContent (const xmlNode *cur);
1077 
1078 XMLPUBFUN int XMLCALL
1080  const xmlNode *cur);
1081 XMLPUBFUN int XMLCALL
1083  const xmlNode *cur);
1084 
1086  xmlNodeGetLang (const xmlNode *cur);
1087 XMLPUBFUN int XMLCALL
1088  xmlNodeGetSpacePreserve (const xmlNode *cur);
1089 #ifdef LIBXML_TREE_ENABLED
1090 XMLPUBFUN void XMLCALL
1091  xmlNodeSetLang (xmlNodePtr cur,
1092  const xmlChar *lang);
1093 XMLPUBFUN void XMLCALL
1094  xmlNodeSetSpacePreserve (xmlNodePtr cur,
1095  int val);
1096 #endif /* LIBXML_TREE_ENABLED */
1098  xmlNodeGetBase (const xmlDoc *doc,
1099  const xmlNode *cur);
1100 #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_XINCLUDE_ENABLED)
1101 XMLPUBFUN void XMLCALL
1102  xmlNodeSetBase (xmlNodePtr cur,
1103  const xmlChar *uri);
1104 #endif
1105 
1106 /*
1107  * Removing content.
1108  */
1109 XMLPUBFUN int XMLCALL
1110  xmlRemoveProp (xmlAttrPtr cur);
1111 #if defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
1112 XMLPUBFUN int XMLCALL
1113  xmlUnsetNsProp (xmlNodePtr node,
1114  xmlNsPtr ns,
1115  const xmlChar *name);
1116 XMLPUBFUN int XMLCALL
1117  xmlUnsetProp (xmlNodePtr node,
1118  const xmlChar *name);
1119 #endif /* defined(LIBXML_TREE_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) */
1120 
1121 /*
1122  * Internal, don't use.
1123  */
1124 XMLPUBFUN void XMLCALL
1126  const xmlChar *string);
1127 XMLPUBFUN void XMLCALL
1129  const char *string);
1130 XMLPUBFUN void XMLCALL
1132  const xmlChar *string);
1133 
1134 #ifdef LIBXML_OUTPUT_ENABLED
1135 XMLPUBFUN void xmlAttrSerializeTxtContent(xmlBufferPtr buf,
1136  xmlDocPtr doc,
1137  xmlAttrPtr attr,
1138  const xmlChar *string);
1139 #endif /* LIBXML_OUTPUT_ENABLED */
1140 
1141 #ifdef LIBXML_TREE_ENABLED
1142 /*
1143  * Namespace handling.
1144  */
1145 XMLPUBFUN int XMLCALL
1146  xmlReconciliateNs (xmlDocPtr doc,
1147  xmlNodePtr tree);
1148 #endif
1149 
1150 #ifdef LIBXML_OUTPUT_ENABLED
1151 /*
1152  * Saving.
1153  */
1154 XMLPUBFUN void XMLCALL
1155  xmlDocDumpFormatMemory (xmlDocPtr cur,
1156  xmlChar **mem,
1157  int *size,
1158  int format);
1159 XMLPUBFUN void XMLCALL
1160  xmlDocDumpMemory (xmlDocPtr cur,
1161  xmlChar **mem,
1162  int *size);
1163 XMLPUBFUN void XMLCALL
1164  xmlDocDumpMemoryEnc (xmlDocPtr out_doc,
1165  xmlChar **doc_txt_ptr,
1166  int * doc_txt_len,
1167  const char *txt_encoding);
1168 XMLPUBFUN void XMLCALL
1169  xmlDocDumpFormatMemoryEnc(xmlDocPtr out_doc,
1170  xmlChar **doc_txt_ptr,
1171  int * doc_txt_len,
1172  const char *txt_encoding,
1173  int format);
1174 XMLPUBFUN int XMLCALL
1175  xmlDocFormatDump (FILE *f,
1176  xmlDocPtr cur,
1177  int format);
1178 XMLPUBFUN int XMLCALL
1179  xmlDocDump (FILE *f,
1180  xmlDocPtr cur);
1181 XMLPUBFUN void XMLCALL
1182  xmlElemDump (FILE *f,
1183  xmlDocPtr doc,
1184  xmlNodePtr cur);
1185 XMLPUBFUN int XMLCALL
1186  xmlSaveFile (const char *filename,
1187  xmlDocPtr cur);
1188 XMLPUBFUN int XMLCALL
1189  xmlSaveFormatFile (const char *filename,
1190  xmlDocPtr cur,
1191  int format);
1192 XMLPUBFUN size_t XMLCALL
1193  xmlBufNodeDump (xmlBufPtr buf,
1194  xmlDocPtr doc,
1195  xmlNodePtr cur,
1196  int level,
1197  int format);
1198 XMLPUBFUN int XMLCALL
1199  xmlNodeDump (xmlBufferPtr buf,
1200  xmlDocPtr doc,
1201  xmlNodePtr cur,
1202  int level,
1203  int format);
1204 
1205 XMLPUBFUN int XMLCALL
1206  xmlSaveFileTo (xmlOutputBufferPtr buf,
1207  xmlDocPtr cur,
1208  const char *encoding);
1209 XMLPUBFUN int XMLCALL
1210  xmlSaveFormatFileTo (xmlOutputBufferPtr buf,
1211  xmlDocPtr cur,
1212  const char *encoding,
1213  int format);
1214 XMLPUBFUN void XMLCALL
1215  xmlNodeDumpOutput (xmlOutputBufferPtr buf,
1216  xmlDocPtr doc,
1217  xmlNodePtr cur,
1218  int level,
1219  int format,
1220  const char *encoding);
1221 
1222 XMLPUBFUN int XMLCALL
1223  xmlSaveFormatFileEnc (const char *filename,
1224  xmlDocPtr cur,
1225  const char *encoding,
1226  int format);
1227 
1228 XMLPUBFUN int XMLCALL
1229  xmlSaveFileEnc (const char *filename,
1230  xmlDocPtr cur,
1231  const char *encoding);
1232 
1233 #endif /* LIBXML_OUTPUT_ENABLED */
1234 /*
1235  * XHTML
1236  */
1237 XMLPUBFUN int XMLCALL
1238  xmlIsXHTML (const xmlChar *systemID,
1239  const xmlChar *publicID);
1240 
1241 /*
1242  * Compression.
1243  */
1244 XMLPUBFUN int XMLCALL
1245  xmlGetDocCompressMode (const xmlDoc *doc);
1246 XMLPUBFUN void XMLCALL
1248  int mode);
1249 XMLPUBFUN int XMLCALL
1250  xmlGetCompressMode (void);
1251 XMLPUBFUN void XMLCALL
1252  xmlSetCompressMode (int mode);
1253 
1254 /*
1255 * DOM-wrapper helper functions.
1256 */
1258  xmlDOMWrapNewCtxt (void);
1259 XMLPUBFUN void XMLCALL
1261 XMLPUBFUN int XMLCALL
1263  xmlNodePtr elem,
1264  int options);
1265 XMLPUBFUN int XMLCALL
1267  xmlDocPtr sourceDoc,
1268  xmlNodePtr node,
1269  xmlDocPtr destDoc,
1270  xmlNodePtr destParent,
1271  int options);
1272 XMLPUBFUN int XMLCALL
1274  xmlDocPtr doc,
1275  xmlNodePtr node,
1276  int options);
1277 XMLPUBFUN int XMLCALL
1279  xmlDocPtr sourceDoc,
1280  xmlNodePtr node,
1281  xmlNodePtr *clonedNode,
1282  xmlDocPtr destDoc,
1283  xmlNodePtr destParent,
1284  int deep,
1285  int options);
1286 
1287 #ifdef LIBXML_TREE_ENABLED
1288 /*
1289  * 5 interfaces from DOM ElementTraversal, but different in entities
1290  * traversal.
1291  */
1292 XMLPUBFUN unsigned long XMLCALL
1293  xmlChildElementCount (xmlNodePtr parent);
1295  xmlNextElementSibling (xmlNodePtr node);
1297  xmlFirstElementChild (xmlNodePtr parent);
1299  xmlLastElementChild (xmlNodePtr parent);
1301  xmlPreviousElementSibling (xmlNodePtr node);
1302 #endif
1303 #ifdef __cplusplus
1304 }
1305 #endif
1306 #ifndef __XML_PARSER_H__
1307 #include <libxml/xmlmemory.h>
1308 #endif
1309 
1310 #endif /* __XML_TREE_H__ */
1311 
XMLPUBFUN void XMLCALL xmlFreeNs(xmlNsPtr cur)
XMLPUBFUN xmlNsPtr XMLCALL xmlSearchNsByHref(xmlDocPtr doc, xmlNodePtr node, const xmlChar *href)
xmlParserInput * xmlParserInputPtr
Definition: tree.h:36
XMLPUBFUN void XMLCALL xmlNodeAddContent(xmlNodePtr cur, const xmlChar *content)
void * psvi
Definition: tree.h:505
XMLPUBFUN int XMLCALL xmlDOMWrapCloneNode(xmlDOMWrapCtxtPtr ctxt, xmlDocPtr sourceDoc, xmlNodePtr node, xmlNodePtr *clonedNode, xmlDocPtr destDoc, xmlNodePtr destParent, int deep, int options)
struct _xmlElementContent * c2
Definition: tree.h:311
const xmlChar * elem
Definition: tree.h:270
const xmlChar * prefix
Definition: tree.h:269
struct _xmlElementContent * c1
Definition: tree.h:310
XMLPUBFUN xmlAttrPtr XMLCALL xmlCopyProp(xmlNodePtr target, xmlAttrPtr cur)
GLint level
Definition: gl.h:1546
xmlElementType type
Definition: tree.h:553
xmlNs * ns
Definition: tree.h:444
struct _xmlNs * oldNs
Definition: tree.h:572
xmlChar * content
Definition: tree.h:92
char * name
Definition: tree.h:554
XMLPUBFUN xmlDtdPtr XMLCALL xmlNewDtd(xmlDocPtr doc, const xmlChar *name, const xmlChar *ExternalID, const xmlChar *SystemID)
XMLPUBFUN xmlAttrPtr XMLCALL xmlNewDocProp(xmlDocPtr doc, const xmlChar *name, const xmlChar *value)
int properties
Definition: tree.h:584
XMLPUBFUN const xmlChar *XMLCALL xmlBufferContent(const xmlBuffer *buf)
const xmlChar * URL
Definition: tree.h:577
XMLPUBFUN xmlChar *XMLCALL xmlBufContent(const xmlBuf *buf)
Definition: buf.c:582
XMLPUBFUN const xmlChar *XMLCALL xmlSplitQName3(const xmlChar *name, int *len)
struct _xmlNode * prev
Definition: tree.h:497
const xmlChar * name
Definition: tree.h:492
const xmlChar * version
Definition: tree.h:573
struct _xmlNs * next
Definition: tree.h:390
XMLPUBFUN xmlChar *XMLCALL xmlGetNoNsProp(const xmlNode *node, const xmlChar *name)
XMLPUBFUN xmlChar *XMLCALL xmlBuildQName(const xmlChar *ncname, const xmlChar *prefix, xmlChar *memory, int len)
struct _xmlDtd * intSubset
Definition: tree.h:570
xmlElementType type
Definition: tree.h:408
xmlRef * xmlRefPtr
Definition: tree.h:473
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
struct _xmlDoc * doc
Definition: tree.h:415
struct _xmlElementContent * parent
Definition: tree.h:312
void * notations
Definition: tree.h:418
const char * uri
Definition: sec_mgr.c:1594
Definition: tree.h:389
XMLPUBFUN void XMLCALL xmlFreeNodeList(xmlNodePtr cur)
XMLPUBFUN xmlNsPtr XMLCALL xmlCopyNamespaceList(xmlNsPtr cur)
xmlElementType
Definition: tree.h:159
void * _private
Definition: tree.h:490
xmlAttrPtr attr
Definition: tree.h:477
XMLPUBFUN xmlNodePtr XMLCALL xmlNewCDataBlock(xmlDocPtr doc, const xmlChar *content, int len)
void * psvi
Definition: tree.h:446
xmlElementContentOccur ocur
Definition: tree.h:308
void * _private
Definition: tree.h:394
struct _xmlDoc * doc
Definition: tree.h:463
XMLPUBFUN xmlNodePtr XMLCALL xmlNewNodeEatName(xmlNsPtr ns, xmlChar *name)
xmlNsType type
Definition: tree.h:391
const GLint * first
Definition: glext.h:5794
XMLPUBFUN xmlChar *XMLCALL xmlGetProp(const xmlNode *node, const xmlChar *name)
XMLPUBFUN void XMLCALL xmlBufferFree(xmlBufferPtr buf)
XMLPUBFUN xmlChar *XMLCALL xmlBufEnd(xmlBufPtr buf)
Definition: buf.c:600
xmlNs * xmlNsPtr
Definition: tree.h:388
xmlEnumerationPtr tree
Definition: tree.h:268
XMLPUBFUN void XMLCALL xmlBufferWriteCHAR(xmlBufferPtr buf, const xmlChar *string)
xmlElementTypeVal etype
Definition: tree.h:357
XMLPUBFUN xmlNodePtr XMLCALL xmlAddSibling(xmlNodePtr cur, xmlNodePtr elem)
XMLPUBFUN xmlAttrPtr XMLCALL xmlNewNsPropEatName(xmlNodePtr node, xmlNsPtr ns, xmlChar *name, const xmlChar *value)
XMLPUBFUN int XMLCALL xmlGetDocCompressMode(const xmlDoc *doc)
XMLPUBFUN int XMLCALL xmlIsBlankNode(const xmlNode *node)
DWORD scheme
struct _xmlAttr * next
Definition: tree.h:441
XMLPUBFUN void XMLCALL xmlFreePropList(xmlAttrPtr cur)
struct _xmlDtd * parent
Definition: tree.h:259
const xmlChar * name
Definition: tree.h:478
GLuint buffer
Definition: glext.h:5915
XMLPUBFUN int XMLCALL xmlBufferResize(xmlBufferPtr buf, unsigned int size)
struct _xmlNode * children
Definition: tree.h:438
#define XMLPUBFUN
Definition: xmlexports.h:30
const xmlChar * value
Definition: tree.h:459
const xmlChar * prefix
Definition: tree.h:360
XMLPUBFUN xmlNodePtr XMLCALL xmlNewDocNodeEatName(xmlDocPtr doc, xmlNsPtr ns, xmlChar *name, const xmlChar *content)
XMLPUBFUN xmlBufferPtr XMLCALL xmlBufferCreateSize(size_t size)
xmlEnumeration * xmlEnumerationPtr
Definition: tree.h:239
XMLPUBFUN xmlChar *XMLCALL xmlNodeGetBase(const xmlDoc *doc, const xmlNode *cur)
const xmlChar * name
Definition: tree.h:256
const char * filename
Definition: ioapi.h:135
void * attributes
Definition: tree.h:420
xmlNs * nsDef
Definition: tree.h:504
static char memory[1024 *256]
Definition: process.c:116
XMLPUBFUN void XMLCALL xmlBufferEmpty(xmlBufferPtr buf)
struct _xmlDoc * parent
Definition: tree.h:412
const xmlChar * name
Definition: tree.h:461
XMLPUBFUN xmlBufferPtr XMLCALL xmlBufferCreate(void)
XMLPUBFUN xmlDOMWrapCtxtPtr XMLCALL xmlDOMWrapNewCtxt(void)
XMLPUBFUN xmlNodePtr XMLCALL xmlNewPI(const xmlChar *name, const xmlChar *content)
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: gl.h:1546
const xmlChar * name
Definition: tree.h:242
XMLPUBFUN xmlNodePtr XMLCALL xmlCopyNode(xmlNodePtr node, int recursive)
const xmlChar * PublicID
Definition: tree.h:196
XMLPUBFUN int XMLCALL xmlBufferGrow(xmlBufferPtr buf, unsigned int len)
struct _xmlDoc * doc
Definition: tree.h:498
Definition: tree.h:406
struct _xmlDoc * doc
Definition: tree.h:560
int compression
Definition: tree.h:563
XMLPUBFUN xmlNodePtr XMLCALL xmlAddNextSibling(xmlNodePtr cur, xmlNodePtr elem)
void * _private
Definition: tree.h:254
struct _xmlOutputBuffer xmlOutputBuffer
Definition: tree.h:31
Definition: buf.c:43
void * refs
Definition: tree.h:576
struct node node
xmlElementTypeVal
Definition: tree.h:322
XMLPUBFUN int XMLCALL xmlBufferCCat(xmlBufferPtr buf, const char *str)
struct _xmlID * next
Definition: tree.h:458
XMLPUBFUN void XMLCALL xmlBufferWriteQuotedString(xmlBufferPtr buf, const xmlChar *string)
Definition: tree.h:474
xmlElementType type
Definition: tree.h:348
struct _xmlDoc * doc
Definition: tree.h:262
int standalone
Definition: tree.h:564
const xmlChar * name
Definition: tree.h:409
xmlBufferAllocationScheme
Definition: tree.h:74
XMLPUBFUN int XMLCALL xmlIsXHTML(const xmlChar *systemID, const xmlChar *publicID)
Definition: xmlsave.c:55
xmlOutputBuffer * xmlOutputBufferPtr
Definition: tree.h:32
XMLPUBFUN int XMLCALL xmlGetCompressMode(void)
XMLPUBFUN xmlNodePtr XMLCALL xmlDocCopyNodeList(xmlDocPtr doc, xmlNodePtr node)
XMLPUBFUN xmlNodePtr XMLCALL xmlNewDocText(const xmlDoc *doc, const xmlChar *content)
static size_t elem
Definition: string.c:68
XMLPUBFUN void XMLCALL xmlSetListDoc(xmlNodePtr list, xmlDocPtr doc)
XMLPUBFUN xmlNsPtr XMLCALL xmlSearchNs(xmlDocPtr doc, xmlNodePtr node, const xmlChar *nameSpace)
content
Definition: atl_ax.c:994
XMLPUBFUN int XMLCALL xmlBufferShrink(xmlBufferPtr buf, unsigned int len)
const WCHAR * str
struct _xmlNode * last
Definition: tree.h:494
xmlElementType xmlNsType
Definition: tree.h:375
static const WCHAR version[]
Definition: asmname.c:64
XMLPUBFUN void XMLCALL xmlFreeDtd(xmlDtdPtr cur)
xmlAttributeType atype
Definition: tree.h:265
xmlDOMWrapAcquireNsFunction getNsForNodeFunc
Definition: tree.h:628
void * ids
Definition: tree.h:575
XMLPUBFUN void XMLCALL xmlSetTreeDoc(xmlNodePtr tree, xmlDocPtr doc)
xmlNode * xmlNodePtr
Definition: tree.h:488
struct _xmlDtd * parent
Definition: tree.h:352
const xmlChar * SystemID
Definition: tree.h:197
struct _xmlNode * next
Definition: tree.h:260
struct _xmlNode * next
Definition: tree.h:413
Definition: dict.c:115
XMLPUBFUN long XMLCALL xmlGetLineNo(const xmlNode *node)
XMLPUBFUN int XMLCALL xmlRemoveProp(xmlAttrPtr cur)
xmlBuf * xmlBufPtr
Definition: tree.h:114
xmlElementContentOccur
Definition: tree.h:290
XMLPUBFUN int XMLCALL xmlDOMWrapRemoveNode(xmlDOMWrapCtxtPtr ctxt, xmlDocPtr doc, xmlNodePtr node, int options)
GLuint GLfloat * val
Definition: glext.h:7180
const xmlChar * ExternalID
Definition: tree.h:422
struct _xmlNode * parent
Definition: tree.h:495
XMLPUBFUN xmlNodePtr XMLCALL xmlGetLastChild(const xmlNode *parent)
XMLPUBFUN int XMLCALL xmlBufferCat(xmlBufferPtr buf, const xmlChar *str)
static const WCHAR lang[]
Definition: wbemdisp.c:287
XMLPUBFUN void XMLCALL xmlSetDocCompressMode(xmlDocPtr doc, int mode)
const xmlChar * name
Definition: tree.h:349
const xmlChar * defaultValue
Definition: tree.h:267
const xmlChar * prefix
Definition: tree.h:313
GLfloat f
Definition: glext.h:7540
struct _xmlNode * last
Definition: tree.h:258
XMLPUBFUN xmlNodePtr XMLCALL xmlCopyNodeList(xmlNodePtr node)
void * psvi
Definition: tree.h:581
GLsizeiptr size
Definition: glext.h:5919
xmlChar * contentIO
Definition: tree.h:96
XMLPUBFUN xmlNodePtr XMLCALL xmlAddChild(xmlNodePtr parent, xmlNodePtr cur)
XMLPUBFUN int XMLCALL xmlNodeBufGetContent(xmlBufferPtr buffer, const xmlNode *cur)
struct _xmlNode * prev
Definition: tree.h:354
void * _private
Definition: tree.h:552
xmlAttributePtr attributes
Definition: tree.h:359
r parent
Definition: btrfs.c:2897
XMLPUBFUN xmlNodePtr XMLCALL xmlNewNode(xmlNsPtr ns, const xmlChar *name)
xmlElement * xmlElementPtr
Definition: tree.h:345
void * elements
Definition: tree.h:419
xmlID * xmlIDPtr
Definition: tree.h:456
xmlBuffer * xmlBufferPtr
Definition: tree.h:90
XMLPUBFUN xmlNodePtr XMLCALL xmlNewDocPI(xmlDocPtr doc, const xmlChar *name, const xmlChar *content)
XMLPUBFUN void XMLCALL xmlUnlinkNode(xmlNodePtr cur)
struct _xmlNode * parent
Definition: tree.h:440
XMLPUBFUN int XMLCALL xmlBufferAdd(xmlBufferPtr buf, const xmlChar *str, int len)
void * _private
Definition: tree.h:347
xmlBufferAllocationScheme alloc
Definition: tree.h:95
xmlElementType type
Definition: tree.h:255
XMLPUBFUN int XMLCALL xmlNodeIsText(const xmlNode *node)
XMLPUBFUN void XMLCALL xmlBufferSetAllocationScheme(xmlBufferPtr buf, xmlBufferAllocationScheme scheme)
xmlAttributeDefault
Definition: tree.h:225
XMLPUBFUN void XMLCALL xmlFreeDoc(xmlDocPtr cur)
const xmlChar * value
Definition: tree.h:476
XMLPUBFUN xmlChar *XMLCALL xmlGetNsProp(const xmlNode *node, const xmlChar *name, const xmlChar *nameSpace)
XMLPUBFUN void XMLCALL xmlDOMWrapFreeCtxt(xmlDOMWrapCtxtPtr ctxt)
struct _xmlNode * last
Definition: tree.h:411
XMLPUBFUN void XMLCALL xmlSetCompressMode(int mode)
struct _xmlNode * prev
Definition: tree.h:414
Definition: cookie.c:170
XMLPUBFUN int XMLCALL xmlNodeGetSpacePreserve(const xmlNode *cur)
XMLPUBFUN xmlNodePtr XMLCALL xmlStringGetNodeList(const xmlDoc *doc, const xmlChar *value)
xmlChar * content
Definition: tree.h:502
const xmlChar * SystemID
Definition: tree.h:423
void * entities
Definition: tree.h:421
const xmlChar * name
Definition: tree.h:309
XMLPUBFUN xmlBufferPtr XMLCALL xmlBufferCreateStatic(void *mem, size_t size)
Definition: tree.h:489
XMLPUBFUN void XMLCALL xmlNodeAddContentLen(xmlNodePtr cur, const xmlChar *content, int len)
XMLPUBFUN xmlChar *XMLCALL xmlNodeListGetString(xmlDocPtr doc, const xmlNode *list, int inLine)
xmlAttr * xmlAttrPtr
Definition: tree.h:433
void * _private
Definition: tree.h:435
struct _xmlNode * next
Definition: tree.h:353
struct _xmlNode * next
Definition: tree.h:558
XMLPUBFUN xmlNodePtr XMLCALL xmlNewComment(const xmlChar *content)
Definition: mxnamespace.c:44
xmlSAXHandler * xmlSAXHandlerPtr
Definition: tree.h:45
void * namespaceMap
Definition: tree.h:623
XMLPUBFUN xmlAttrPtr XMLCALL xmlNewNsProp(xmlNodePtr node, xmlNsPtr ns, const xmlChar *name, const xmlChar *value)
XMLPUBFUN xmlBufferAllocationScheme XMLCALL xmlGetBufferAllocationScheme(void)
xmlDOMWrapCtxt * xmlDOMWrapCtxtPtr
Definition: tree.h:590
unsigned char xmlChar
Definition: xmlstring.h:28
XMLPUBFUN xmlNodePtr XMLCALL xmlStringLenGetNodeList(const xmlDoc *doc, const xmlChar *value, int len)
GLenum GLsizei len
Definition: glext.h:6722
XMLPUBFUN void XMLCALL xmlSetBufferAllocationScheme(xmlBufferAllocationScheme scheme)
xmlAttrPtr attr
Definition: tree.h:460
unsigned int size
Definition: tree.h:94
Definition: _list.h:228
XMLPUBFUN xmlNsPtr XMLCALL xmlCopyNamespace(xmlNsPtr cur)
XMLPUBFUN xmlChar *XMLCALL xmlBufferDetach(xmlBufferPtr buf)
XMLPUBFUN int XMLCALL xmlDOMWrapReconcileNamespaces(xmlDOMWrapCtxtPtr ctxt, xmlNodePtr elem, int options)
unsigned short extra
Definition: tree.h:507
struct _xmlNode * prev
Definition: tree.h:559
GLenum mode
Definition: glext.h:6217
struct _xmlAttr * properties
Definition: tree.h:503
void * contModel
Definition: tree.h:364
XMLPUBFUN xmlNodePtr XMLCALL xmlTextMerge(xmlNodePtr first, xmlNodePtr second)
xmlAttribute * xmlAttributePtr
Definition: tree.h:252
XMLPUBFUN xmlChar *XMLCALL xmlNodeGetLang(const xmlNode *cur)
const xmlChar * encoding
Definition: tree.h:574
xmlElementType type
Definition: tree.h:491
ed encoding
Definition: write.c:2839
XMLPUBFUN xmlNsPtr XMLCALL xmlNewNs(xmlNodePtr node, const xmlChar *href, const xmlChar *prefix)
xmlDtd * xmlDtdPtr
Definition: tree.h:405
struct _xmlNode * parent
Definition: tree.h:557
struct _xmlNode * children
Definition: tree.h:350
struct _xmlNode * children
Definition: tree.h:410
XMLPUBFUN xmlNodePtr XMLCALL xmlNewDocComment(xmlDocPtr doc, const xmlChar *content)
int charset
Definition: tree.h:578
xmlSAXLocator * xmlSAXLocatorPtr
Definition: tree.h:42
XMLPUBFUN void XMLCALL xmlNodeSetContent(xmlNodePtr cur, const xmlChar *content)
xmlDoc * xmlDocPtr
Definition: tree.h:550
XMLPUBFUN xmlNodePtr XMLCALL xmlNewText(const xmlChar *content)
unsigned int use
Definition: tree.h:93
XMLPUBFUN xmlNodePtr XMLCALL xmlNewCharRef(xmlDocPtr doc, const xmlChar *name)
int parseFlags
Definition: tree.h:582
struct _xmlDoc * doc
Definition: tree.h:355
XMLPUBFUN int XMLCALL xmlBufferLength(const xmlBuffer *buf)
struct _xmlAttribute * nexth
Definition: tree.h:264
xmlElementContentType type
Definition: tree.h:307
XMLPUBFUN xmlChar *XMLCALL xmlNodeGetContent(const xmlNode *cur)
struct _xmlNode * next
Definition: tree.h:496
struct _xmlEnumeration * next
Definition: tree.h:241
XMLPUBFUN int XMLCALL xmlBufferDump(FILE *file, xmlBufferPtr buf)
XMLPUBFUN xmlDtdPtr XMLCALL xmlCreateIntSubset(xmlDocPtr doc, const xmlChar *name, const xmlChar *ExternalID, const xmlChar *SystemID)
xmlDocProperties
Definition: tree.h:532
xmlElementContentType
Definition: tree.h:278
struct _xmlDoc * context
Definition: tree.h:395
XMLPUBFUN xmlNodePtr XMLCALL xmlNewDocNode(xmlDocPtr doc, xmlNsPtr ns, const xmlChar *name, const xmlChar *content)
xmlParserCtxt * xmlParserCtxtPtr
Definition: tree.h:39
struct _xmlNode * last
Definition: tree.h:556
Definition: tree.h:551
int lineno
Definition: tree.h:479
struct _xmlNode * prev
Definition: tree.h:261
XMLPUBFUN xmlDtdPtr XMLCALL xmlGetIntSubset(const xmlDoc *doc)
XMLPUBFUN int XMLCALL xmlTextConcat(xmlNodePtr node, const xmlChar *content, int len)
XMLPUBFUN void XMLCALL xmlFreeNode(xmlNodePtr cur)
XMLPUBFUN xmlAttrPtr XMLCALL xmlCopyPropList(xmlNodePtr target, xmlAttrPtr cur)
XMLPUBFUN xmlAttrPtr XMLCALL xmlHasProp(const xmlNode *node, const xmlChar *name)
xmlElementContentPtr content
Definition: tree.h:358
#define XMLCALL
Definition: mem.c:156
struct _xmlDtd * extSubset
Definition: tree.h:571
struct _xmlNode * children
Definition: tree.h:493
Definition: tree.h:434
Definition: name.c:36
XMLPUBFUN xmlNodePtr XMLCALL xmlDocCopyNode(xmlNodePtr node, xmlDocPtr doc, int recursive)
xmlNotation * xmlNotationPtr
Definition: tree.h:193
XMLPUBFUN xmlNodePtr XMLCALL xmlDocGetRootElement(const xmlDoc *doc)
XMLPUBFUN void XMLCALL xmlSetNs(xmlNodePtr node, xmlNsPtr ns)
GLenum target
Definition: glext.h:7315
XMLPUBFUN xmlNodePtr XMLCALL xmlAddChildList(xmlNodePtr parent, xmlNodePtr cur)
XMLPUBFUN void XMLCALL xmlFreeProp(xmlAttrPtr cur)
struct _xmlNode * children
Definition: tree.h:555
xmlNs * ns
Definition: tree.h:501
XMLPUBFUN xmlAttrPtr XMLCALL xmlHasNsProp(const xmlNode *node, const xmlChar *name, const xmlChar *nameSpace)
XMLPUBFUN void XMLCALL xmlFreeNsList(xmlNsPtr cur)
const xmlChar * name
Definition: tree.h:437
void * _private
Definition: tree.h:407
void * _private
Definition: tree.h:614
const xmlChar * prefix
Definition: tree.h:393
XMLPUBFUN int XMLCALL xmlBufferAddHead(xmlBufferPtr buf, const xmlChar *str, int len)
XMLPUBFUN xmlNodePtr XMLCALL xmlNewTextLen(const xmlChar *content, int len)
xmlNsPtr(* xmlDOMWrapAcquireNsFunction)(xmlDOMWrapCtxtPtr ctxt, xmlNodePtr node, const xmlChar *nsName, const xmlChar *nsPrefix)
Definition: tree.h:603
struct _xmlNode * children
Definition: tree.h:257
const xmlChar * href
Definition: tree.h:392
struct _xmlNode * last
Definition: tree.h:439
struct _xmlNode * last
Definition: tree.h:351
struct _xmlRef * next
Definition: tree.h:475
xmlEntity * xmlEntityPtr
Definition: tree.h:49
XMLPUBFUN xmlNodePtr XMLCALL xmlNewDocTextLen(xmlDocPtr doc, const xmlChar *content, int len)
XMLPUBFUN xmlDocPtr XMLCALL xmlNewDoc(const xmlChar *version)
void * pentities
Definition: tree.h:424
int lineno
Definition: tree.h:462
struct _xmlDict * dict
Definition: tree.h:580
XMLPUBFUN int XMLCALL xmlDOMWrapAdoptNode(xmlDOMWrapCtxtPtr ctxt, xmlDocPtr sourceDoc, xmlNodePtr node, xmlDocPtr destDoc, xmlNodePtr destParent, int options)
XMLPUBFUN size_t XMLCALL xmlBufUse(const xmlBufPtr buf)
Definition: buf.c:687
xmlAttributeType
Definition: tree.h:206
Definition: tree.h:457
xmlAttributeDefault def
Definition: tree.h:266
unsigned short line
Definition: tree.h:506
XMLPUBFUN size_t XMLCALL xmlBufShrink(xmlBufPtr buf, size_t len)
Definition: buf.c:388
xmlAttributeType atype
Definition: tree.h:445
XMLPUBFUN xmlNodePtr XMLCALL xmlNewReference(const xmlDoc *doc, const xmlChar *name)
xmlElementType type
Definition: tree.h:436
xmlParserInputBuffer * xmlParserInputBufferPtr
Definition: tree.h:29
xmlElementContent * xmlElementContentPtr
Definition: tree.h:305
XMLPUBFUN void XMLCALL xmlBufferWriteChar(xmlBufferPtr buf, const char *string)
Definition: dlist.c:348
struct _xmlDoc * doc
Definition: tree.h:443
const xmlChar * name
Definition: tree.h:195
XMLPUBFUN xmlChar *XMLCALL xmlSplitQName2(const xmlChar *name, xmlChar **prefix)
Definition: fci.c:126
struct _xmlAttr * prev
Definition: tree.h:442
XMLPUBFUN int XMLCALL xmlBufGetNodeContent(xmlBufPtr buf, const xmlNode *cur)