diff --git a/ChangeLog b/ChangeLog
index ad9d47b..a689c22 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Mon Jan 21 18:29:19 CET 2002 Daniel Veillard <daniel@veillard.com>
+
+	* Makefile.am doc/Makefile.am doc/libxml2-api.xml doc/parsedecl.py:
+	  added an XML description of the API, moved the script generating
+	  it here. Added a "make api" target
+
 Mon Jan 21 14:34:37 CET 2002 Daniel Veillard <daniel@veillard.com>
 
 	* tree.c: Adam Lounds pointed out a bug in xmlSearchNs()
diff --git a/Makefile.am b/Makefile.am
index 1b726b8..b604a33 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,5 +1,5 @@
 ## Process this file with automake to produce Makefile.in
-AUTOMAKE_OPTIONS=no-dependencies
+#AUTOMAKE_OPTIONS=no-dependencies
 
 SUBDIRS = include . doc example
 
diff --git a/doc/Makefile.am b/doc/Makefile.am
index 4984d61..8c855a1 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -26,7 +26,7 @@
 	  $(bindir)/xsltproc --html $(top_srcdir)/doc/site.xsl $(top_srcdir)/doc/xml.html > index.html ; fi );
 
 scan:
-	gtkdoc-scan --module=libxml --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="acconfig.h config.h xmlwin32version.h win32config.h trio.h triostr.h triop.h config-mac.h XMLTestPrefix2.h  XMLTestPrefix.h triodef.h trionan.h xlink.h"
+	gtkdoc-scan --module=libxml --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="acconfig.h config.h xmlwin32version.h win32config.h trio.h triostr.h triop.h config-mac.h XMLTestPrefix2.h  XMLTestPrefix.h triodef.h trionan.h xlink.h libxml.h"
 
 templates: scan
 	gtkdoc-mktmpl --module=libxml
@@ -34,6 +34,18 @@
 sgml:
 	gtkdoc-mkdb --module=libxml --source-dir=$(DOC_SOURCE_DIR)
 
+xml: sgml
+	if test -d xml ; then rm xml/* ; else mkdir xml ; fi
+	-@(for s in sgml/*.sgml ; do name=`basename $$s .sgml` ; \
+	   echo '<!DOCTYPE refentry [ <!ENTITY nbsp   "&#x00A0;"> ]>' > \
+	       xml/"$$name".xml ;\
+	   grep -v "^<colspec" $$s >> xml/"$$name".xml ; done)
+	   
+libxml2-api.xml: xml parsedecl.py libxml-decl.txt libxml-decl-list.txt
+	-./parsedecl.py
+
+api: libxml2-api.xml
+
 html:
 	if test -n -d html ; then mkdir html ; fi
 	-cd html && gtkdoc-mkhtml libxml ../$(DOC_MAIN_SGML_FILE)
@@ -49,7 +61,7 @@
 libxml-sections.txt : scan
 	cp libxml-decl-list.txt libxml-sections.txt
 
-rebuild: libxml-sections.txt templates sgml html
+rebuild: libxml-sections.txt templates sgml html api
 
 install-data-local: 
 	$(mkinstalldirs) $(DESTDIR)$(TARGET_DIR)
@@ -59,6 +71,6 @@
 	-(cd $(DESTDIR); gtkdoc-fixxref --module=libxml --html-dir=$(HTML_DIR))
 
 dist-hook:
-	(cd $(srcdir) ; tar cvf - *.1 site.xsl *.html *.gif html/*.html html/*.sgml) | (cd $(distdir); tar xf -)
+	(cd $(srcdir) ; tar cvf - *.1 site.xsl *.html *.gif html/*.html html/*.sgml libxml2-api.xml parsedecl.py) | (cd $(distdir); tar xf -)
 
 .PHONY : html sgml templates scan
diff --git a/doc/html/book1.html b/doc/html/book1.html
index 7fbbcbc..e69de29 100644
--- a/doc/html/book1.html
+++ b/doc/html/book1.html
@@ -1,327 +0,0 @@
-<HTML
-><HEAD
-><TITLE
->Gnome XML Library Reference Manual</TITLE
-><META
-NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.64
-"><LINK
-REL="NEXT"
-TITLE="Libxml Programming Notes"
-HREF="libxml-notes.html"></HEAD
-><BODY
-CLASS="BOOK"
-BGCOLOR="#FFFFFF"
-TEXT="#000000"
-LINK="#0000FF"
-VLINK="#840084"
-ALINK="#0000FF"
-><DIV
-CLASS="BOOK"
-><DIV
-CLASS="TITLEPAGE"
-><TABLE
-WIDTH="100%"
-BORDER="0"
-BGCOLOR="#000000"
-CELLPADDING="1"
-CELLSPACING="0"
-><TR
-><TH
-ALIGN="center"
-VALIGN="center"
-><FONT
-COLOR="#FFFFFF"
-SIZE="7"
-><P
-CLASS="TITLE"
-><A
-NAME="AEN2"
->Gnome XML Library Reference Manual</A
-></P
-></FONT
-></TH
-></TR
-></TABLE
-><H3
-CLASS="AUTHOR"
-><A
-NAME="AEN5"
->Daniel Veillard</A
-></H3
-><DIV
-CLASS="AFFILIATION"
-><DIV
-CLASS="ADDRESS"
-><P
-CLASS="ADDRESS"
->	&nbsp;&nbsp;&nbsp;&nbsp;daniel@veillard.com<br>
-	&nbsp;&nbsp;</P
-></DIV
-></DIV
-><P
-CLASS="COPYRIGHT"
->Copyright &copy; 1999 by Daniel Veillard</P
-><DIV
-><DIV
-CLASS="ABSTRACT"
-><A
-NAME="AEN18"
-></A
-><P
-></P
-><P
->This manual documents the interfaces of the libxml
-      library and has some short notes to help get you up to speed
-      with using the library.</P
-><P
-></P
-></DIV
-></DIV
-><DIV
-CLASS="LEGALNOTICE"
-><A
-NAME="AEN14"
-></A
-><P
-></P
-><P
->Permission is granted to make and distribute verbatim
-      copies of this manual provided the copyright notice and this
-      permission notice are preserved on all copies.</P
-><P
->Permission is granted to copy and distribute modified
-      versions of this manual under the conditions for verbatim
-      copying, provided also that the entire resulting derived work is
-      distributed under the terms of a permission notice identical to
-      this one.</P
-><P
->Permission is granted to copy and distribute translations
-      of this manual into another language, under the above conditions
-      for modified versions.</P
-><P
-></P
-></DIV
-></DIV
-><DIV
-CLASS="TOC"
-><DL
-><DT
-><B
->Table of Contents</B
-></DT
-><DT
-><A
-HREF="libxml-notes.html"
->Libxml Programming Notes</A
-></DT
-><DT
-><A
-HREF="libxml-lib.html"
->Libxml Library Reference</A
-></DT
-><DD
-><DL
-><DT
-><A
-HREF="libxml-parser.html"
->parser</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-sax.html"
->SAX</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-tree.html"
->tree</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-entities.html"
->entities</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-valid.html"
->valid</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-uri.html"
->uri</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-xmlerror.html"
->xmlerror</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-htmlparser.html"
->HTMLparser</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-htmltree.html"
->HTMLtree</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-xpath.html"
->xpath</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-xpathinternals.html"
->xpathInternals</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-xpointer.html"
->xpointer</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-xinclude.html"
->xinclude</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-nanohttp.html"
->nanohttp</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-nanoftp.html"
->nanoftp</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-xmlio.html"
->xmlIO</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-catalog.html"
->catalog</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-threads.html"
->threads</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-globals.html"
->globals</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-docbparser.html"
->DOCBparser</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-parserinternals.html"
->parserInternals</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-encoding.html"
->encoding</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-hash.html"
->hash</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-debugxml.html"
->debugXML</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-xmlmemory.html"
->xmlmemory</A
-> &#8212; </DT
-></DL
-></DD
-></DL
-></DIV
-></DIV
-><DIV
-CLASS="NAVFOOTER"
-><BR
-CLEAR="all"><BR><TABLE
-WIDTH="100%"
-BORDER="0"
-BGCOLOR="#000000"
-CELLPADDING="1"
-CELLSPACING="0"
-><TR
-><TD
-WIDTH="25%"
-BGCOLOR="#C00000"
-ALIGN="left"
->&nbsp;</TD
-><TD
-WIDTH="25%"
-BGCOLOR="#0000C0"
-ALIGN="center"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->&nbsp;</B
-></FONT
-></TD
-><TD
-WIDTH="25%"
-BGCOLOR="#00C000"
-ALIGN="center"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->&nbsp;</B
-></FONT
-></TD
-><TD
-WIDTH="25%"
-BGCOLOR="#C00000"
-ALIGN="right"
-><A
-HREF="libxml-notes.html"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->Next Page &#62;&#62;&#62;</B
-></FONT
-></A
-></TD
-></TR
-><TR
-><TD
-COLSPAN="2"
-ALIGN="left"
->&nbsp;</TD
-><TD
-COLSPAN="2"
-ALIGN="right"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->Libxml Programming Notes</B
-></FONT
-></TD
-></TR
-></TABLE
-></DIV
-></BODY
-></HTML
->
\ No newline at end of file
diff --git a/doc/html/libxml-lib.html b/doc/html/libxml-lib.html
index 14a87fc..75ca1c3 100644
--- a/doc/html/libxml-lib.html
+++ b/doc/html/libxml-lib.html
@@ -166,184 +166,4 @@
 ><A
 HREF="libxml-xpath.html"
 >xpath</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-xpathinternals.html"
->xpathInternals</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-xpointer.html"
->xpointer</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-xinclude.html"
->xinclude</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-nanohttp.html"
->nanohttp</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-nanoftp.html"
->nanoftp</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-xmlio.html"
->xmlIO</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-catalog.html"
->catalog</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-threads.html"
->threads</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-globals.html"
->globals</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-docbparser.html"
->DOCBparser</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-parserinternals.html"
->parserInternals</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-encoding.html"
->encoding</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-hash.html"
->hash</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-debugxml.html"
->debugXML</A
-> &#8212; </DT
-><DT
-><A
-HREF="libxml-xmlmemory.html"
->xmlmemory</A
-> &#8212; </DT
-></DL
-></DIV
-><P
->This section contains the API reference for libxml. All
-    the public interfaces are documented here. This reference guide is
-    build by extracting comments from the code sources. </P
->_functions;
-    </DIV
-><DIV
-CLASS="NAVFOOTER"
-><BR
-CLEAR="all"><BR><TABLE
-WIDTH="100%"
-BORDER="0"
-BGCOLOR="#000000"
-CELLPADDING="1"
-CELLSPACING="0"
-><TR
-><TD
-WIDTH="25%"
-BGCOLOR="#C00000"
-ALIGN="left"
-><A
-HREF="libxml-notes.html"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->&#60;&#60;&#60; Previous Page</B
-></FONT
-></A
-></TD
-><TD
-WIDTH="25%"
-BGCOLOR="#0000C0"
-ALIGN="center"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
-><A
-HREF="book1.html"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->Home</B
-></FONT
-></A
-></B
-></FONT
-></TD
-><TD
-WIDTH="25%"
-BGCOLOR="#00C000"
-ALIGN="center"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->&nbsp;</B
-></FONT
-></TD
-><TD
-WIDTH="25%"
-BGCOLOR="#C00000"
-ALIGN="right"
-><A
-HREF="libxml-parser.html"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->Next Page &#62;&#62;&#62;</B
-></FONT
-></A
-></TD
-></TR
-><TR
-><TD
-COLSPAN="2"
-ALIGN="left"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->Libxml Programming Notes</B
-></FONT
-></TD
-><TD
-COLSPAN="2"
-ALIGN="right"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->parser</B
-></FONT
-></TD
-></TR
-></TABLE
-></DIV
-></BODY
-></HTML
->
\ No newline at end of file
+> &#8212;
\ No newline at end of file
diff --git a/doc/html/libxml-parser.html b/doc/html/libxml-parser.html
index a253838..8418642 100644
--- a/doc/html/libxml-parser.html
+++ b/doc/html/libxml-parser.html
@@ -1167,13 +1167,13 @@
 >xmlParserFindNodeInfo</A
 >
                                             (const <A
-HREF="libxml-parser.html#XMLPARSERCTXT"
->xmlParserCtxt</A
-> *ctxt,
+HREF="libxml-tree.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt,
                                              const <A
-HREF="libxml-tree.html#XMLNODE"
->xmlNode</A
-> *node);
+HREF="libxml-tree.html#XMLNODEPTR"
+>xmlNodePtr</A
+> node);
 void        <A
 HREF="libxml-parser.html#XMLINITNODEINFOSEQ"
 >xmlInitNodeInfoSeq</A
@@ -1195,13 +1195,13 @@
 HREF="libxml-parser.html#XMLPARSERFINDNODEINFOINDEX"
 >xmlParserFindNodeInfoIndex</A
 >    (const <A
-HREF="libxml-parser.html#XMLPARSERNODEINFOSEQ"
->xmlParserNodeInfoSeq</A
-> *seq,
+HREF="libxml-parser.html#XMLPARSERNODEINFOSEQPTR"
+>xmlParserNodeInfoSeqPtr</A
+> seq,
                                              const <A
-HREF="libxml-tree.html#XMLNODE"
->xmlNode</A
-> *node);
+HREF="libxml-tree.html#XMLNODEPTR"
+>xmlNodePtr</A
+> node);
 void        <A
 HREF="libxml-parser.html#XMLPARSERADDNODEINFO"
 >xmlParserAddNodeInfo</A
@@ -1210,9 +1210,9 @@
 >xmlParserCtxtPtr</A
 > ctxt,
                                              const <A
-HREF="libxml-parser.html#XMLPARSERNODEINFO"
->xmlParserNodeInfo</A
-> *info);
+HREF="libxml-parser.html#XMLPARSERNODEINFOPTR"
+>xmlParserNodeInfoPtr</A
+> info);
 void        <A
 HREF="libxml-parser.html#XMLSETEXTERNALENTITYLOADER"
 >xmlSetExternalEntityLoader</A
@@ -1270,7 +1270,7 @@
 ><A
 NAME="XML-DEFAULT-VERSION-CAPS"
 ></A
->XML_DEFAULT_VERSION</H3
+>&#62;XML_DEFAULT_VERSION</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -1298,7 +1298,7 @@
 ><A
 NAME="XMLPARSERINPUTDEALLOCATE"
 ></A
->xmlParserInputDeallocate ()</H3
+>&#62;xmlParserInputDeallocate ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -1364,7 +1364,7 @@
 ><A
 NAME="XMLPARSERINPUT"
 ></A
->struct xmlParserInput</H3
+>&#62;struct xmlParserInput</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -1414,7 +1414,7 @@
 ><A
 NAME="XMLPARSERNODEINFO"
 ></A
->struct xmlParserNodeInfo</H3
+>&#62;struct xmlParserNodeInfo</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -1451,7 +1451,7 @@
 ><A
 NAME="XMLPARSERNODEINFOPTR"
 ></A
->xmlParserNodeInfoPtr</H3
+>&#62;xmlParserNodeInfoPtr</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -1477,7 +1477,7 @@
 ><A
 NAME="XMLPARSERNODEINFOSEQ"
 ></A
->struct xmlParserNodeInfoSeq</H3
+>&#62;struct xmlParserNodeInfoSeq</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -1507,7 +1507,7 @@
 ><A
 NAME="XMLPARSERNODEINFOSEQPTR"
 ></A
->xmlParserNodeInfoSeqPtr</H3
+>&#62;xmlParserNodeInfoSeqPtr</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -1533,7 +1533,7 @@
 ><A
 NAME="XMLPARSERINPUTSTATE"
 ></A
->enum xmlParserInputState</H3
+>&#62;enum xmlParserInputState</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -1580,7 +1580,7 @@
 ><A
 NAME="XML-DETECT-IDS-CAPS"
 ></A
->XML_DETECT_IDS</H3
+>&#62;XML_DETECT_IDS</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -1609,7 +1609,7 @@
 ><A
 NAME="XML-COMPLETE-ATTRS-CAPS"
 ></A
->XML_COMPLETE_ATTRS</H3
+>&#62;XML_COMPLETE_ATTRS</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -1639,7 +1639,7 @@
 ><A
 NAME="XMLPARSERCTXT"
 ></A
->struct xmlParserCtxt</H3
+>&#62;struct xmlParserCtxt</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -1730,12 +1730,12 @@
 ><P
 >The parser context.
 NOTE This doesn't completely defines the parser state, the (current ?)
-design of the parser uses recursive function calls since this allow
-and easy mapping from the production rules of the specification
-to the actual code. The drawback is that the actual function call
-also reflect the parser state. However most of the parsing routines
-takes as the only argument the parser context pointer, so migrating
-to a state based parser for progressive parsing shouldn't be too hard.</P
+     design of the parser uses recursive function calls since this allow
+     and easy mapping from the production rules of the specification
+     to the actual code. The drawback is that the actual function call
+     also reflect the parser state. However most of the parsing routines
+     takes as the only argument the parser context pointer, so migrating
+     to a state based parser for progressive parsing shouldn't be too hard.</P
 ><P
 ></P
 ></DIV
@@ -1748,7 +1748,7 @@
 ><A
 NAME="XMLSAXLOCATOR"
 ></A
->struct xmlSAXLocator</H3
+>&#62;struct xmlSAXLocator</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -1781,7 +1781,7 @@
 ><A
 NAME="XMLSAXLOCATORPTR"
 ></A
->xmlSAXLocatorPtr</H3
+>&#62;xmlSAXLocatorPtr</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -1807,7 +1807,7 @@
 ><A
 NAME="RESOLVEENTITYSAXFUNC"
 ></A
->resolveEntitySAXFunc ()</H3
+>&#62;resolveEntitySAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -1930,7 +1930,7 @@
 ><A
 NAME="INTERNALSUBSETSAXFUNC"
 ></A
->internalSubsetSAXFunc ()</H3
+>&#62;internalSubsetSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -2056,7 +2056,7 @@
 ><A
 NAME="EXTERNALSUBSETSAXFUNC"
 ></A
->externalSubsetSAXFunc ()</H3
+>&#62;externalSubsetSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -2182,7 +2182,7 @@
 ><A
 NAME="GETENTITYSAXFUNC"
 ></A
->getEntitySAXFunc ()</H3
+>&#62;getEntitySAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -2284,7 +2284,7 @@
 ><A
 NAME="GETPARAMETERENTITYSAXFUNC"
 ></A
->getParameterEntitySAXFunc ()</H3
+>&#62;getParameterEntitySAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -2386,7 +2386,7 @@
 ><A
 NAME="ENTITYDECLSAXFUNC"
 ></A
->entityDeclSAXFunc ()</H3
+>&#62;entityDeclSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -2551,7 +2551,7 @@
 ><A
 NAME="NOTATIONDECLSAXFUNC"
 ></A
->notationDeclSAXFunc ()</H3
+>&#62;notationDeclSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -2677,7 +2677,7 @@
 ><A
 NAME="ATTRIBUTEDECLSAXFUNC"
 ></A
->attributeDeclSAXFunc ()</H3
+>&#62;attributeDeclSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -2860,7 +2860,7 @@
 ><A
 NAME="ELEMENTDECLSAXFUNC"
 ></A
->elementDeclSAXFunc ()</H3
+>&#62;elementDeclSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -2983,7 +2983,7 @@
 ><A
 NAME="UNPARSEDENTITYDECLSAXFUNC"
 ></A
->unparsedEntityDeclSAXFunc ()</H3
+>&#62;unparsedEntityDeclSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -3130,7 +3130,7 @@
 ><A
 NAME="SETDOCUMENTLOCATORSAXFUNC"
 ></A
->setDocumentLocatorSAXFunc ()</H3
+>&#62;setDocumentLocatorSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -3214,7 +3214,7 @@
 ><A
 NAME="STARTDOCUMENTSAXFUNC"
 ></A
->startDocumentSAXFunc ()</H3
+>&#62;startDocumentSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -3277,7 +3277,7 @@
 ><A
 NAME="ENDDOCUMENTSAXFUNC"
 ></A
->endDocumentSAXFunc ()</H3
+>&#62;endDocumentSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -3340,7 +3340,7 @@
 ><A
 NAME="STARTELEMENTSAXFUNC"
 ></A
->startElementSAXFunc ()</H3
+>&#62;startElementSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -3445,7 +3445,7 @@
 ><A
 NAME="ENDELEMENTSAXFUNC"
 ></A
->endElementSAXFunc ()</H3
+>&#62;endElementSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -3529,7 +3529,7 @@
 ><A
 NAME="ATTRIBUTESAXFUNC"
 ></A
->attributeSAXFunc ()</H3
+>&#62;attributeSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -3634,7 +3634,7 @@
 ><A
 NAME="REFERENCESAXFUNC"
 ></A
->referenceSAXFunc ()</H3
+>&#62;referenceSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -3718,7 +3718,7 @@
 ><A
 NAME="CHARACTERSSAXFUNC"
 ></A
->charactersSAXFunc ()</H3
+>&#62;charactersSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -3820,7 +3820,7 @@
 ><A
 NAME="IGNORABLEWHITESPACESAXFUNC"
 ></A
->ignorableWhitespaceSAXFunc ()</H3
+>&#62;ignorableWhitespaceSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -3922,7 +3922,7 @@
 ><A
 NAME="PROCESSINGINSTRUCTIONSAXFUNC"
 ></A
->processingInstructionSAXFunc ()</H3
+>&#62;processingInstructionSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -4027,7 +4027,7 @@
 ><A
 NAME="COMMENTSAXFUNC"
 ></A
->commentSAXFunc ()</H3
+>&#62;commentSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -4111,7 +4111,7 @@
 ><A
 NAME="CDATABLOCKSAXFUNC"
 ></A
->cdataBlockSAXFunc ()</H3
+>&#62;cdataBlockSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -4213,7 +4213,7 @@
 ><A
 NAME="WARNINGSAXFUNC"
 ></A
->warningSAXFunc ()</H3
+>&#62;warningSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -4312,7 +4312,7 @@
 ><A
 NAME="ERRORSAXFUNC"
 ></A
->errorSAXFunc ()</H3
+>&#62;errorSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -4411,7 +4411,7 @@
 ><A
 NAME="FATALERRORSAXFUNC"
 ></A
->fatalErrorSAXFunc ()</H3
+>&#62;fatalErrorSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -4510,7 +4510,7 @@
 ><A
 NAME="ISSTANDALONESAXFUNC"
 ></A
->isStandaloneSAXFunc ()</H3
+>&#62;isStandaloneSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -4588,7 +4588,7 @@
 ><A
 NAME="HASINTERNALSUBSETSAXFUNC"
 ></A
->hasInternalSubsetSAXFunc ()</H3
+>&#62;hasInternalSubsetSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -4666,7 +4666,7 @@
 ><A
 NAME="HASEXTERNALSUBSETSAXFUNC"
 ></A
->hasExternalSubsetSAXFunc ()</H3
+>&#62;hasExternalSubsetSAXFunc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -4744,7 +4744,7 @@
 ><A
 NAME="XMLSAXHANDLER"
 ></A
->struct xmlSAXHandler</H3
+>&#62;struct xmlSAXHandler</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -4802,7 +4802,7 @@
 ><A
 NAME="XMLSAXHANDLERPTR"
 ></A
->xmlSAXHandlerPtr</H3
+>&#62;xmlSAXHandlerPtr</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -4828,7 +4828,7 @@
 ><A
 NAME="XMLEXTERNALENTITYLOADER"
 ></A
->xmlExternalEntityLoader ()</H3
+>&#62;xmlExternalEntityLoader ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -4951,7 +4951,7 @@
 ><A
 NAME="XMLSUBSTITUTEENTITIESDEFAULTVALUE"
 ></A
->xmlSubstituteEntitiesDefaultValue</H3
+>&#62;xmlSubstituteEntitiesDefaultValue</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -4979,7 +4979,7 @@
 ><A
 NAME="XMLINITPARSER"
 ></A
->xmlInitParser ()</H3
+>&#62;xmlInitParser ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -5009,7 +5009,7 @@
 ><A
 NAME="XMLCLEANUPPARSER"
 ></A
->xmlCleanupParser ()</H3
+>&#62;xmlCleanupParser ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -5040,7 +5040,7 @@
 ><A
 NAME="XMLPARSERINPUTREAD"
 ></A
->xmlParserInputRead ()</H3
+>&#62;xmlParserInputRead ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -5143,7 +5143,7 @@
 ><A
 NAME="XMLPARSERINPUTGROW"
 ></A
->xmlParserInputGrow ()</H3
+>&#62;xmlParserInputGrow ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -5246,7 +5246,7 @@
 ><A
 NAME="XMLSTRDUP"
 ></A
->xmlStrdup ()</H3
+>&#62;xmlStrdup ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -5334,7 +5334,7 @@
 ><A
 NAME="XMLSTRNDUP"
 ></A
->xmlStrndup ()</H3
+>&#62;xmlStrndup ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -5443,7 +5443,7 @@
 ><A
 NAME="XMLCHARSTRNDUP"
 ></A
->xmlCharStrndup ()</H3
+>&#62;xmlCharStrndup ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -5549,7 +5549,7 @@
 ><A
 NAME="XMLCHARSTRDUP"
 ></A
->xmlCharStrdup ()</H3
+>&#62;xmlCharStrdup ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -5632,7 +5632,7 @@
 ><A
 NAME="XMLSTRSUB"
 ></A
->xmlStrsub ()</H3
+>&#62;xmlStrsub ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -5754,7 +5754,7 @@
 ><A
 NAME="XMLSTRCHR"
 ></A
->xmlStrchr ()</H3
+>&#62;xmlStrchr ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -5861,7 +5861,7 @@
 ><A
 NAME="XMLSTRSTR"
 ></A
->xmlStrstr ()</H3
+>&#62;xmlStrstr ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -5968,7 +5968,7 @@
 ><A
 NAME="XMLSTRCASESTR"
 ></A
->xmlStrcasestr ()</H3
+>&#62;xmlStrcasestr ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -6075,7 +6075,7 @@
 ><A
 NAME="XMLSTRCMP"
 ></A
->xmlStrcmp ()</H3
+>&#62;xmlStrcmp ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -6179,7 +6179,7 @@
 ><A
 NAME="XMLSTRNCMP"
 ></A
->xmlStrncmp ()</H3
+>&#62;xmlStrncmp ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -6301,7 +6301,7 @@
 ><A
 NAME="XMLSTRCASECMP"
 ></A
->xmlStrcasecmp ()</H3
+>&#62;xmlStrcasecmp ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -6405,7 +6405,7 @@
 ><A
 NAME="XMLSTRNCASECMP"
 ></A
->xmlStrncasecmp ()</H3
+>&#62;xmlStrncasecmp ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -6527,7 +6527,7 @@
 ><A
 NAME="XMLSTREQUAL"
 ></A
->xmlStrEqual ()</H3
+>&#62;xmlStrEqual ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -6635,7 +6635,7 @@
 ><A
 NAME="XMLSTRLEN"
 ></A
->xmlStrlen ()</H3
+>&#62;xmlStrlen ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -6718,7 +6718,7 @@
 ><A
 NAME="XMLSTRCAT"
 ></A
->xmlStrcat ()</H3
+>&#62;xmlStrcat ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -6827,7 +6827,7 @@
 ><A
 NAME="XMLSTRNCAT"
 ></A
->xmlStrncat ()</H3
+>&#62;xmlStrncat ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -6974,7 +6974,7 @@
 ><A
 NAME="XMLPARSEDOC"
 ></A
->xmlParseDoc ()</H3
+>&#62;xmlParseDoc ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -7060,7 +7060,7 @@
 ><A
 NAME="XMLPARSEMEMORY"
 ></A
->xmlParseMemory ()</H3
+>&#62;xmlParseMemory ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -7161,7 +7161,7 @@
 ><A
 NAME="XMLPARSEFILE"
 ></A
->xmlParseFile ()</H3
+>&#62;xmlParseFile ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -7246,7 +7246,7 @@
 ><A
 NAME="XMLSUBSTITUTEENTITIESDEFAULT"
 ></A
->xmlSubstituteEntitiesDefault ()</H3
+>&#62;xmlSubstituteEntitiesDefault ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -7334,7 +7334,7 @@
 ><A
 NAME="XMLKEEPBLANKSDEFAULT"
 ></A
->xmlKeepBlanksDefault ()</H3
+>&#62;xmlKeepBlanksDefault ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -7441,7 +7441,7 @@
 ><A
 NAME="XMLSTOPPARSER"
 ></A
->xmlStopParser ()</H3
+>&#62;xmlStopParser ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -7509,7 +7509,7 @@
 ><A
 NAME="XMLPEDANTICPARSERDEFAULT"
 ></A
->xmlPedanticParserDefault ()</H3
+>&#62;xmlPedanticParserDefault ()</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -7519,4751 +7519,4 @@
 ><TD
 ><PRE
 CLASS="PROGRAMLISTING"
->int         xmlPedanticParserDefault        (int val);</PRE
-></TD
-></TR
-></TABLE
-><P
->Set and return the previous value for enabling pedantic warnings.</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN1725"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->val</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  int 0 or 1 </TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the last value for 0 for no substitution, 1 for substitution.</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN1738"
-></A
-><H3
-><A
-NAME="XMLLINENUMBERSDEFAULT"
-></A
->xmlLineNumbersDefault ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->int         xmlLineNumbersDefault           (int val);</PRE
-></TD
-></TR
-></TABLE
-><P
->Set and return the previous value for enabling line numbers in elements
-contents. This may break on old application and is turned off by default.</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN1744"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->val</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  int 0 or 1 </TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the last value for 0 for no substitution, 1 for substitution.</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN1757"
-></A
-><H3
-><A
-NAME="XMLRECOVERDOC"
-></A
->xmlRecoverDoc ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLDOCPTR"
->xmlDocPtr</A
->   xmlRecoverDoc                   (<A
-HREF="libxml-tree.html#XMLCHAR"
->xmlChar</A
-> *cur);</PRE
-></TD
-></TR
-></TABLE
-><P
->parse an XML in-memory document and build a tree.
-In the case the document is not Well Formed, a tree is built anyway</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN1765"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->cur</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a pointer to an array of xmlChar</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the resulting document tree</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN1778"
-></A
-><H3
-><A
-NAME="XMLRECOVERMEMORY"
-></A
->xmlRecoverMemory ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLDOCPTR"
->xmlDocPtr</A
->   xmlRecoverMemory                (const char *buffer,
-                                             int size);</PRE
-></TD
-></TR
-></TABLE
-><P
->parse an XML in-memory block and build a tree.
-In the case the document is not Well Formed, a tree is built anyway</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN1785"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->buffer</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an pointer to a char array</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->size</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the size of the array</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the resulting document tree</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN1802"
-></A
-><H3
-><A
-NAME="XMLRECOVERFILE"
-></A
->xmlRecoverFile ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLDOCPTR"
->xmlDocPtr</A
->   xmlRecoverFile                  (const char *filename);</PRE
-></TD
-></TR
-></TABLE
-><P
->parse an XML file and build a tree. Automatic support for ZLIB/Compress
-compressed document is provided by default if found at compile-time.
-In the case the document is not Well Formed, a tree is built anyway</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN1809"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->filename</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the filename</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the resulting document tree</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN1822"
-></A
-><H3
-><A
-NAME="XMLPARSEDOCUMENT"
-></A
->xmlParseDocument ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->int         xmlParseDocument                (<A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> ctxt);</PRE
-></TD
-></TR
-></TABLE
-><P
->parse an XML document (and build a tree if using the standard SAX
-interface).</P
-><P
->[1] document ::= prolog element Misc*</P
-><P
->[22] prolog ::= XMLDecl? Misc* (doctypedecl Misc*)?</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN1831"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ctxt</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an XML parser context</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->0, -1 in case of error. the parser context is augmented
-as a result of the parsing.</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN1844"
-></A
-><H3
-><A
-NAME="XMLPARSEEXTPARSEDENT"
-></A
->xmlParseExtParsedEnt ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->int         xmlParseExtParsedEnt            (<A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> ctxt);</PRE
-></TD
-></TR
-></TABLE
-><P
->parse a general parsed entity
-An external general parsed entity is well-formed if it matches the
-production labeled extParsedEnt.</P
-><P
->[78] extParsedEnt ::= TextDecl? content</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN1852"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ctxt</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an XML parser context</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->0, -1 in case of error. the parser context is augmented
-as a result of the parsing.</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN1865"
-></A
-><H3
-><A
-NAME="XMLSAXPARSEDOC"
-></A
->xmlSAXParseDoc ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLDOCPTR"
->xmlDocPtr</A
->   xmlSAXParseDoc                  (<A
-HREF="libxml-parser.html#XMLSAXHANDLERPTR"
->xmlSAXHandlerPtr</A
-> sax,
-                                             <A
-HREF="libxml-tree.html#XMLCHAR"
->xmlChar</A
-> *cur,
-                                             int recovery);</PRE
-></TD
-></TR
-></TABLE
-><P
->parse an XML in-memory document and build a tree.
-It use the given SAX function block to handle the parsing callback.
-If sax is NULL, fallback to the default DOM tree building routines.</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN1874"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->sax</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the SAX handler block</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->cur</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a pointer to an array of xmlChar</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->recovery</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  work in recovery mode, i.e. tries to read no Well Formed
-documents</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the resulting document tree</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN1895"
-></A
-><H3
-><A
-NAME="XMLSAXUSERPARSEFILE"
-></A
->xmlSAXUserParseFile ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->int         xmlSAXUserParseFile             (<A
-HREF="libxml-parser.html#XMLSAXHANDLERPTR"
->xmlSAXHandlerPtr</A
-> sax,
-                                             void *user_data,
-                                             const char *filename);</PRE
-></TD
-></TR
-></TABLE
-><P
->parse an XML file and call the given SAX handler routines.
-Automatic support for ZLIB/Compress compressed document is provided</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN1902"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->sax</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a SAX handler</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->user_data</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  The user data returned on SAX callbacks</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->filename</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a file name</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->0 in case of success or a error number otherwise</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN1923"
-></A
-><H3
-><A
-NAME="XMLSAXUSERPARSEMEMORY"
-></A
->xmlSAXUserParseMemory ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->int         xmlSAXUserParseMemory           (<A
-HREF="libxml-parser.html#XMLSAXHANDLERPTR"
->xmlSAXHandlerPtr</A
-> sax,
-                                             void *user_data,
-                                             const char *buffer,
-                                             int size);</PRE
-></TD
-></TR
-></TABLE
-><P
->A better SAX parsing routine.
-parse an XML in-memory buffer and call the given SAX handler routines.</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN1930"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->sax</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a SAX handler</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->user_data</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  The user data returned on SAX callbacks</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->buffer</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an in-memory XML document input</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->size</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the length of the XML document in bytes</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->0 in case of success or a error number otherwise</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN1955"
-></A
-><H3
-><A
-NAME="XMLSAXPARSEMEMORY"
-></A
->xmlSAXParseMemory ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLDOCPTR"
->xmlDocPtr</A
->   xmlSAXParseMemory               (<A
-HREF="libxml-parser.html#XMLSAXHANDLERPTR"
->xmlSAXHandlerPtr</A
-> sax,
-                                             const char *buffer,
-                                             int size,
-                                             int recovery);</PRE
-></TD
-></TR
-></TABLE
-><P
->parse an XML in-memory block and use the given SAX function block
-to handle the parsing callback. If sax is NULL, fallback to the default
-DOM tree building routines.</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN1963"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->sax</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the SAX handler block</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->buffer</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an pointer to a char array</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->size</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the size of the array</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->recovery</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  work in recovery mode, i.e. tries to read not Well Formed
-documents</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the resulting document tree</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN1988"
-></A
-><H3
-><A
-NAME="XMLSAXPARSEFILE"
-></A
->xmlSAXParseFile ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLDOCPTR"
->xmlDocPtr</A
->   xmlSAXParseFile                 (<A
-HREF="libxml-parser.html#XMLSAXHANDLERPTR"
->xmlSAXHandlerPtr</A
-> sax,
-                                             const char *filename,
-                                             int recovery);</PRE
-></TD
-></TR
-></TABLE
-><P
->parse an XML file and build a tree. Automatic support for ZLIB/Compress
-compressed document is provided by default if found at compile-time.
-It use the given SAX function block to handle the parsing callback.
-If sax is NULL, fallback to the default DOM tree building routines.</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN1996"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->sax</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the SAX handler block</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->filename</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the filename</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->recovery</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  work in recovery mode, i.e. tries to read no Well Formed
-documents</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the resulting document tree</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2017"
-></A
-><H3
-><A
-NAME="XMLSAXPARSEFILEWITHDATA"
-></A
->xmlSAXParseFileWithData ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLDOCPTR"
->xmlDocPtr</A
->   xmlSAXParseFileWithData         (<A
-HREF="libxml-parser.html#XMLSAXHANDLERPTR"
->xmlSAXHandlerPtr</A
-> sax,
-                                             const char *filename,
-                                             int recovery,
-                                             void *data);</PRE
-></TD
-></TR
-></TABLE
-><P
->parse an XML file and build a tree. Automatic support for ZLIB/Compress
-compressed document is provided by default if found at compile-time.
-It use the given SAX function block to handle the parsing callback.
-If sax is NULL, fallback to the default DOM tree building routines.</P
-><P
->User data (void *) is stored within the parser context, so it is
-available nearly everywhere in libxml.</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2026"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->sax</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the SAX handler block</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->filename</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the filename</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->recovery</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  work in recovery mode, i.e. tries to read no Well Formed
-documents</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->data</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the userdata</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the resulting document tree</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2051"
-></A
-><H3
-><A
-NAME="XMLSAXPARSEENTITY"
-></A
->xmlSAXParseEntity ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLDOCPTR"
->xmlDocPtr</A
->   xmlSAXParseEntity               (<A
-HREF="libxml-parser.html#XMLSAXHANDLERPTR"
->xmlSAXHandlerPtr</A
-> sax,
-                                             const char *filename);</PRE
-></TD
-></TR
-></TABLE
-><P
->parse an XML external entity out of context and build a tree.
-It use the given SAX function block to handle the parsing callback.
-If sax is NULL, fallback to the default DOM tree building routines.</P
-><P
->[78] extParsedEnt ::= TextDecl? content</P
-><P
->This correspond to a "Well Balanced" chunk</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2061"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->sax</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the SAX handler block</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->filename</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the filename</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the resulting document tree</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2078"
-></A
-><H3
-><A
-NAME="XMLPARSEENTITY"
-></A
->xmlParseEntity ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLDOCPTR"
->xmlDocPtr</A
->   xmlParseEntity                  (const char *filename);</PRE
-></TD
-></TR
-></TABLE
-><P
->parse an XML external entity out of context and build a tree.</P
-><P
->[78] extParsedEnt ::= TextDecl? content</P
-><P
->This correspond to a "Well Balanced" chunk</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2087"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->filename</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the filename</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the resulting document tree</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2100"
-></A
-><H3
-><A
-NAME="XMLPARSEDTD"
-></A
->xmlParseDTD ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLDTDPTR"
->xmlDtdPtr</A
->   xmlParseDTD                     (const <A
-HREF="libxml-tree.html#XMLCHAR"
->xmlChar</A
-> *ExternalID,
-                                             const <A
-HREF="libxml-tree.html#XMLCHAR"
->xmlChar</A
-> *SystemID);</PRE
-></TD
-></TR
-></TABLE
-><P
->Load and parse an external subset.</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2109"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ExternalID</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a NAME* containing the External ID of the DTD</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->SystemID</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a NAME* containing the URL to the DTD</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the resulting xmlDtdPtr or NULL in case of error.</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2126"
-></A
-><H3
-><A
-NAME="XMLSAXPARSEDTD"
-></A
->xmlSAXParseDTD ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLDTDPTR"
->xmlDtdPtr</A
->   xmlSAXParseDTD                  (<A
-HREF="libxml-parser.html#XMLSAXHANDLERPTR"
->xmlSAXHandlerPtr</A
-> sax,
-                                             const <A
-HREF="libxml-tree.html#XMLCHAR"
->xmlChar</A
-> *ExternalID,
-                                             const <A
-HREF="libxml-tree.html#XMLCHAR"
->xmlChar</A
-> *SystemID);</PRE
-></TD
-></TR
-></TABLE
-><P
->Load and parse an external subset.</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2136"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->sax</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the SAX handler block</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ExternalID</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a NAME* containing the External ID of the DTD</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->SystemID</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a NAME* containing the URL to the DTD</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the resulting xmlDtdPtr or NULL in case of error.</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2157"
-></A
-><H3
-><A
-NAME="XMLIOPARSEDTD"
-></A
->xmlIOParseDTD ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLDTDPTR"
->xmlDtdPtr</A
->   xmlIOParseDTD                   (<A
-HREF="libxml-parser.html#XMLSAXHANDLERPTR"
->xmlSAXHandlerPtr</A
-> sax,
-                                             <A
-HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
->xmlParserInputBufferPtr</A
-> input,
-                                             <A
-HREF="libxml-encoding.html#XMLCHARENCODING"
->xmlCharEncoding</A
-> enc);</PRE
-></TD
-></TR
-></TABLE
-><P
->Load and parse a DTD</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2167"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->sax</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the SAX handler block or NULL</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->input</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an Input Buffer</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->enc</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the charset encoding if known</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the resulting xmlDtdPtr or NULL in case of error.
-<TT
-CLASS="PARAMETER"
-><I
->input</I
-></TT
-> will be freed at parsing end.</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2189"
-></A
-><H3
-><A
-NAME="XMLPARSEBALANCEDCHUNKMEMORY"
-></A
->xmlParseBalancedChunkMemory ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->int         xmlParseBalancedChunkMemory     (<A
-HREF="libxml-tree.html#XMLDOCPTR"
->xmlDocPtr</A
-> doc,
-                                             <A
-HREF="libxml-parser.html#XMLSAXHANDLERPTR"
->xmlSAXHandlerPtr</A
-> sax,
-                                             void *user_data,
-                                             int depth,
-                                             const <A
-HREF="libxml-tree.html#XMLCHAR"
->xmlChar</A
-> *string,
-                                             <A
-HREF="libxml-tree.html#XMLNODEPTR"
->xmlNodePtr</A
-> *lst);</PRE
-></TD
-></TR
-></TABLE
-><P
->Parse a well-balanced chunk of an XML document
-called by the parser
-The allowed sequence for the Well Balanced Chunk is the one defined by
-the content production in the XML grammar:</P
-><P
->[43] content ::= (element | CharData | Reference | CDSect | PI | Comment)*</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2200"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->doc</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the document the chunk pertains to</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->sax</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the SAX handler bloc (possibly NULL)</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->user_data</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  The user data returned on SAX callbacks (possibly NULL)</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->depth</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  Used for loop detection, use 0</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->string</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the input string in UTF8 or ISO-Latin (zero terminated)</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->lst</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the return value for the set of parsed nodes</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->0 if the chunk is well balanced, -1 in case of args problem and
-the parser error code otherwise</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2233"
-></A
-><H3
-><A
-NAME="XMLPARSEEXTERNALENTITY"
-></A
->xmlParseExternalEntity ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->int         xmlParseExternalEntity          (<A
-HREF="libxml-tree.html#XMLDOCPTR"
->xmlDocPtr</A
-> doc,
-                                             <A
-HREF="libxml-parser.html#XMLSAXHANDLERPTR"
->xmlSAXHandlerPtr</A
-> sax,
-                                             void *user_data,
-                                             int depth,
-                                             const <A
-HREF="libxml-tree.html#XMLCHAR"
->xmlChar</A
-> *URL,
-                                             const <A
-HREF="libxml-tree.html#XMLCHAR"
->xmlChar</A
-> *ID,
-                                             <A
-HREF="libxml-tree.html#XMLNODEPTR"
->xmlNodePtr</A
-> *lst);</PRE
-></TD
-></TR
-></TABLE
-><P
->Parse an external general entity
-An external general parsed entity is well-formed if it matches the
-production labeled extParsedEnt.</P
-><P
->[78] extParsedEnt ::= TextDecl? content</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2245"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->doc</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the document the chunk pertains to</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->sax</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the SAX handler bloc (possibly NULL)</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->user_data</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  The user data returned on SAX callbacks (possibly NULL)</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->depth</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  Used for loop detection, use 0</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->URL</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the URL for the entity to load</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ID</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the System ID for the entity to load</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->lst</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the return value for the set of parsed nodes</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->0 if the entity is well formed, -1 in case of args problem and
-the parser error code otherwise</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2282"
-></A
-><H3
-><A
-NAME="XMLPARSECTXTEXTERNALENTITY"
-></A
->xmlParseCtxtExternalEntity ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->int         xmlParseCtxtExternalEntity      (<A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> ctx,
-                                             const <A
-HREF="libxml-tree.html#XMLCHAR"
->xmlChar</A
-> *URL,
-                                             const <A
-HREF="libxml-tree.html#XMLCHAR"
->xmlChar</A
-> *ID,
-                                             <A
-HREF="libxml-tree.html#XMLNODEPTR"
->xmlNodePtr</A
-> *lst);</PRE
-></TD
-></TR
-></TABLE
-><P
->Parse an external general entity within an existing parsing context
-An external general parsed entity is well-formed if it matches the
-production labeled extParsedEnt.</P
-><P
->[78] extParsedEnt ::= TextDecl? content</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2293"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ctx</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the existing parsing context</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->URL</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the URL for the entity to load</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ID</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the System ID for the entity to load</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->lst</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the return value for the set of parsed nodes</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->0 if the entity is well formed, -1 in case of args problem and
-the parser error code otherwise</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2318"
-></A
-><H3
-><A
-NAME="XMLDEFAULTSAXHANDLERINIT"
-></A
->xmlDefaultSAXHandlerInit ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->void        xmlDefaultSAXHandlerInit        (void);</PRE
-></TD
-></TR
-></TABLE
-><P
->Initialize the default SAX handler</P
-><P
-></P
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2324"
-></A
-><H3
-><A
-NAME="HTMLDEFAULTSAXHANDLERINIT"
-></A
->htmlDefaultSAXHandlerInit ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->void        htmlDefaultSAXHandlerInit       (void);</PRE
-></TD
-></TR
-></TABLE
-><P
->Initialize the default SAX handler</P
-><P
-></P
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2330"
-></A
-><H3
-><A
-NAME="XMLINITPARSERCTXT"
-></A
->xmlInitParserCtxt ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->void        xmlInitParserCtxt               (<A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> ctxt);</PRE
-></TD
-></TR
-></TABLE
-><P
->Initialize a parser context</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2337"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ctxt</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an XML parser context</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2346"
-></A
-><H3
-><A
-NAME="XMLCLEARPARSERCTXT"
-></A
->xmlClearParserCtxt ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->void        xmlClearParserCtxt              (<A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> ctxt);</PRE
-></TD
-></TR
-></TABLE
-><P
->Clear (release owned resources) and reinitialize a parser context</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2353"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ctxt</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an XML parser context</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2362"
-></A
-><H3
-><A
-NAME="XMLFREEPARSERCTXT"
-></A
->xmlFreeParserCtxt ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->void        xmlFreeParserCtxt               (<A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> ctxt);</PRE
-></TD
-></TR
-></TABLE
-><P
->Free all the memory used by a parser context. However the parsed
-document in ctxt-&gt;myDoc is not freed.</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2369"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ctxt</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an XML parser context</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2378"
-></A
-><H3
-><A
-NAME="XMLSETUPPARSERFORBUFFER"
-></A
->xmlSetupParserForBuffer ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->void        xmlSetupParserForBuffer         (<A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> ctxt,
-                                             const <A
-HREF="libxml-tree.html#XMLCHAR"
->xmlChar</A
-> *buffer,
-                                             const char *filename);</PRE
-></TD
-></TR
-></TABLE
-><P
->Setup the parser context to parse a new buffer; Clears any prior
-contents from the parser context. The buffer parameter must not be
-NULL, but the filename parameter can be</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2386"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ctxt</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an XML parser context</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->buffer</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a xmlChar * buffer</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->filename</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a file name</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2403"
-></A
-><H3
-><A
-NAME="XMLCREATEDOCPARSERCTXT"
-></A
->xmlCreateDocParserCtxt ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> xmlCreateDocParserCtxt     (<A
-HREF="libxml-tree.html#XMLCHAR"
->xmlChar</A
-> *cur);</PRE
-></TD
-></TR
-></TABLE
-><P
->Creates a parser context for an XML in-memory document.</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2411"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->cur</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a pointer to an array of xmlChar</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the new parser context or NULL</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2424"
-></A
-><H3
-><A
-NAME="XMLGETFEATURESLIST"
-></A
->xmlGetFeaturesList ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->int         xmlGetFeaturesList              (int *len,
-                                             const char **result);</PRE
-></TD
-></TR
-></TABLE
-><P
->Copy at most *<TT
-CLASS="PARAMETER"
-><I
->len</I
-></TT
-> feature names into the <TT
-CLASS="PARAMETER"
-><I
->result</I
-></TT
-> array</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2432"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->len</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the length of the features name array (input/output)</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->result</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an array of string to be filled with the features name.</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->-1 in case or error, or the total number of features,
-len is updated with the number of strings copied,
-strings must not be deallocated</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2449"
-></A
-><H3
-><A
-NAME="XMLGETFEATURE"
-></A
->xmlGetFeature ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->int         xmlGetFeature                   (<A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> ctxt,
-                                             const char *name,
-                                             void *result);</PRE
-></TD
-></TR
-></TABLE
-><P
->Read the current value of one feature of this parser instance</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2456"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ctxt</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an XML/HTML parser context</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->name</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the feature name</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->result</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  location to store the result</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->-1 in case or error, 0 otherwise</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2477"
-></A
-><H3
-><A
-NAME="XMLSETFEATURE"
-></A
->xmlSetFeature ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->int         xmlSetFeature                   (<A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> ctxt,
-                                             const char *name,
-                                             void *value);</PRE
-></TD
-></TR
-></TABLE
-><P
->Change the current value of one feature of this parser instance</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2484"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ctxt</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an XML/HTML parser context</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->name</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the feature name</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->value</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  pointer to the location of the new value</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->-1 in case or error, 0 otherwise</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2505"
-></A
-><H3
-><A
-NAME="XMLCREATEPUSHPARSERCTXT"
-></A
->xmlCreatePushParserCtxt ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> xmlCreatePushParserCtxt    (<A
-HREF="libxml-parser.html#XMLSAXHANDLERPTR"
->xmlSAXHandlerPtr</A
-> sax,
-                                             void *user_data,
-                                             const char *chunk,
-                                             int size,
-                                             const char *filename);</PRE
-></TD
-></TR
-></TABLE
-><P
->Create a parser context for using the XML parser in push mode
-To allow content encoding detection, <TT
-CLASS="PARAMETER"
-><I
->size</I
-></TT
-> should be &gt;= 4
-The value of <TT
-CLASS="PARAMETER"
-><I
->filename</I
-></TT
-> is used for fetching external entities
-and error/warning reports.</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2515"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->sax</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a SAX handler</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->user_data</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  The user data returned on SAX callbacks</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->chunk</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a pointer to an array of chars</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->size</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  number of chars in the array</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->filename</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an optional file name or URI</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the new parser context or NULL</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2544"
-></A
-><H3
-><A
-NAME="XMLPARSECHUNK"
-></A
->xmlParseChunk ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->int         xmlParseChunk                   (<A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> ctxt,
-                                             const char *chunk,
-                                             int size,
-                                             int terminate);</PRE
-></TD
-></TR
-></TABLE
-><P
->Parse a Chunk of memory</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2551"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ctxt</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an XML parser context</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->chunk</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an char array</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->size</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the size in byte of the chunk</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->terminate</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  last chunk indicator</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->zero if no error, the xmlParserErrors otherwise.</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2576"
-></A
-><H3
-><A
-NAME="XMLCREATEIOPARSERCTXT"
-></A
->xmlCreateIOParserCtxt ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> xmlCreateIOParserCtxt      (<A
-HREF="libxml-parser.html#XMLSAXHANDLERPTR"
->xmlSAXHandlerPtr</A
-> sax,
-                                             void *user_data,
-                                             <A
-HREF="libxml-xmlio.html#XMLINPUTREADCALLBACK"
->xmlInputReadCallback</A
-> ioread,
-                                             <A
-HREF="libxml-xmlio.html#XMLINPUTCLOSECALLBACK"
->xmlInputCloseCallback</A
-> ioclose,
-                                             void *ioctx,
-                                             <A
-HREF="libxml-encoding.html#XMLCHARENCODING"
->xmlCharEncoding</A
-> enc);</PRE
-></TD
-></TR
-></TABLE
-><P
->Create a parser context for using the XML parser with an existing
-I/O stream</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2587"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->sax</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a SAX handler</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->user_data</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  The user data returned on SAX callbacks</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ioread</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an I/O read function</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ioclose</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an I/O close function</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ioctx</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an I/O handler</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->enc</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the charset encoding if known</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the new parser context or NULL</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2620"
-></A
-><H3
-><A
-NAME="XMLNEWIOINPUTSTREAM"
-></A
->xmlNewIOInputStream ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLPARSERINPUTPTR"
->xmlParserInputPtr</A
-> xmlNewIOInputStream       (<A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> ctxt,
-                                             <A
-HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
->xmlParserInputBufferPtr</A
-> input,
-                                             <A
-HREF="libxml-encoding.html#XMLCHARENCODING"
->xmlCharEncoding</A
-> enc);</PRE
-></TD
-></TR
-></TABLE
-><P
->Create a new input stream structure encapsulating the <TT
-CLASS="PARAMETER"
-><I
->input</I
-></TT
-> into
-a stream suitable for the parser.</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2631"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ctxt</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an XML parser context</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->input</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an I/O Input</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->enc</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the charset encoding if known</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the new input stream or NULL</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2652"
-></A
-><H3
-><A
-NAME="XMLPARSERFINDNODEINFO"
-></A
->xmlParserFindNodeInfo ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->const <A
-HREF="libxml-parser.html#XMLPARSERNODEINFO"
->xmlParserNodeInfo</A
->* xmlParserFindNodeInfo
-                                            (const <A
-HREF="libxml-parser.html#XMLPARSERCTXT"
->xmlParserCtxt</A
-> *ctxt,
-                                             const <A
-HREF="libxml-tree.html#XMLNODE"
->xmlNode</A
-> *node);</PRE
-></TD
-></TR
-></TABLE
-><P
->Find the parser node info struct for a given node</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2661"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ctxt</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an XML parser context</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->node</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an XML node within the tree</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->an xmlParserNodeInfo block pointer or NULL</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2678"
-></A
-><H3
-><A
-NAME="XMLINITNODEINFOSEQ"
-></A
->xmlInitNodeInfoSeq ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->void        xmlInitNodeInfoSeq              (<A
-HREF="libxml-parser.html#XMLPARSERNODEINFOSEQPTR"
->xmlParserNodeInfoSeqPtr</A
-> seq);</PRE
-></TD
-></TR
-></TABLE
-><P
->-- Initialize (set to initial state) node info sequence</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2685"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->seq</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a node info sequence pointer</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2694"
-></A
-><H3
-><A
-NAME="XMLCLEARNODEINFOSEQ"
-></A
->xmlClearNodeInfoSeq ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->void        xmlClearNodeInfoSeq             (<A
-HREF="libxml-parser.html#XMLPARSERNODEINFOSEQPTR"
->xmlParserNodeInfoSeqPtr</A
-> seq);</PRE
-></TD
-></TR
-></TABLE
-><P
->-- Clear (release memory and reinitialize) node
-info sequence</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2701"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->seq</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a node info sequence pointer</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2710"
-></A
-><H3
-><A
-NAME="XMLPARSERFINDNODEINFOINDEX"
-></A
->xmlParserFindNodeInfoIndex ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->unsigned <GTKDOCLINK
-HREF="LONG"
->long</GTKDOCLINK
-> xmlParserFindNodeInfoIndex    (const <A
-HREF="libxml-parser.html#XMLPARSERNODEINFOSEQ"
->xmlParserNodeInfoSeq</A
-> *seq,
-                                             const <A
-HREF="libxml-tree.html#XMLNODE"
->xmlNode</A
-> *node);</PRE
-></TD
-></TR
-></TABLE
-><P
->xmlParserFindNodeInfoIndex : Find the index that the info record for
-the given node is or should be at in a sorted sequence</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2719"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->seq</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a node info sequence pointer</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->node</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an XML node pointer</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->a long indicating the position of the record</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2736"
-></A
-><H3
-><A
-NAME="XMLPARSERADDNODEINFO"
-></A
->xmlParserAddNodeInfo ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->void        xmlParserAddNodeInfo            (<A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> ctxt,
-                                             const <A
-HREF="libxml-parser.html#XMLPARSERNODEINFO"
->xmlParserNodeInfo</A
-> *info);</PRE
-></TD
-></TR
-></TABLE
-><P
->Insert node info record into the sorted sequence</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2744"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ctxt</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  an XML parser context</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->info</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  a node info sequence pointer</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2757"
-></A
-><H3
-><A
-NAME="XMLSETEXTERNALENTITYLOADER"
-></A
->xmlSetExternalEntityLoader ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->void        xmlSetExternalEntityLoader      (<A
-HREF="libxml-parser.html#XMLEXTERNALENTITYLOADER"
->xmlExternalEntityLoader</A
-> f);</PRE
-></TD
-></TR
-></TABLE
-><P
->Changes the defaultexternal entity resolver function for the application</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2764"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->f</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the new entity resolver function</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2773"
-></A
-><H3
-><A
-NAME="XMLGETEXTERNALENTITYLOADER"
-></A
->xmlGetExternalEntityLoader ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-parser.html#XMLEXTERNALENTITYLOADER"
->xmlExternalEntityLoader</A
-> xmlGetExternalEntityLoader
-                                            (void);</PRE
-></TD
-></TR
-></TABLE
-><P
->Get the default external entity resolver function for the application</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2780"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the xmlExternalEntityLoader function pointer</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2789"
-></A
-><H3
-><A
-NAME="XMLLOADEXTERNALENTITY"
-></A
->xmlLoadExternalEntity ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="libxml-tree.html#XMLPARSERINPUTPTR"
->xmlParserInputPtr</A
-> xmlLoadExternalEntity     (const char *URL,
-                                             const char *ID,
-                                             <A
-HREF="libxml-tree.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> context);</PRE
-></TD
-></TR
-></TABLE
-><P
->Load an external entity, note that the use of this function for
-unparsed entities may generate problems
-TODO: a more generic External entity API must be designed</P
-><P
-></P
-><DIV
-CLASS="INFORMALTABLE"
-><A
-NAME="AEN2797"
-></A
-><P
-></P
-><TABLE
-BORDER="0"
-WIDTH="100%"
-BGCOLOR="#FFD0D0"
-CELLSPACING="0"
-CELLPADDING="4"
-CLASS="CALSTABLE"
-><TBODY
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->URL</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the URL for the entity to load</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->ID</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->  the Public ID for the entity to load</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->context</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->&nbsp;</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->the xmlParserInputPtr or NULL</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></DIV
-></DIV
-><DIV
-CLASS="NAVFOOTER"
-><BR
-CLEAR="all"><BR><TABLE
-WIDTH="100%"
-BORDER="0"
-BGCOLOR="#000000"
-CELLPADDING="1"
-CELLSPACING="0"
-><TR
-><TD
-WIDTH="25%"
-BGCOLOR="#C00000"
-ALIGN="left"
-><A
-HREF="libxml-lib.html"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->&#60;&#60;&#60; Previous Page</B
-></FONT
-></A
-></TD
-><TD
-WIDTH="25%"
-BGCOLOR="#0000C0"
-ALIGN="center"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
-><A
-HREF="book1.html"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->Home</B
-></FONT
-></A
-></B
-></FONT
-></TD
-><TD
-WIDTH="25%"
-BGCOLOR="#00C000"
-ALIGN="center"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
-><A
-HREF="libxml-lib.html"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->Up</B
-></FONT
-></A
-></B
-></FONT
-></TD
-><TD
-WIDTH="25%"
-BGCOLOR="#C00000"
-ALIGN="right"
-><A
-HREF="libxml-sax.html"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->Next Page &#62;&#62;&#62;</B
-></FONT
-></A
-></TD
-></TR
-><TR
-><TD
-COLSPAN="2"
-ALIGN="left"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->Libxml Library Reference</B
-></FONT
-></TD
-><TD
-COLSPAN="2"
-ALIGN="right"
-><FONT
-COLOR="#FFFFFF"
-SIZE="3"
-><B
->SAX</B
-></FONT
-></TD
-></TR
-></TABLE
-></DIV
-></BODY
-></HTML
->
\ No newline at end of file
+>int         xmlPedanticParserD
\ No newline at end of file
diff --git a/doc/libxml2-api.xml b/doc/libxml2-api.xml
new file mode 100644
index 0000000..d9586b0
--- /dev/null
+++ b/doc/libxml2-api.xml
@@ -0,0 +1,6043 @@
+<api name='libxml2'>
+  <files>
+    <file name='debugXML'>
+     <exports symbol='xmlDebugDumpString'/>
+     <exports symbol='xmlDebugDumpAttr'/>
+     <exports symbol='xmlDebugDumpAttrList'/>
+     <exports symbol='xmlDebugDumpOneNode'/>
+     <exports symbol='xmlDebugDumpNode'/>
+     <exports symbol='xmlDebugDumpNodeList'/>
+     <exports symbol='xmlDebugDumpDocumentHead'/>
+     <exports symbol='xmlDebugDumpDocument'/>
+     <exports symbol='xmlDebugDumpDTD'/>
+     <exports symbol='xmlDebugDumpEntities'/>
+     <exports symbol='xmlLsOneNode'/>
+     <exports symbol='xmlLsCountNode'/>
+     <exports symbol='xmlShellReadlineFunc'/>
+     <exports symbol='xmlShellCtxt'/>
+     <exports symbol='xmlShellCtxtPtr'/>
+     <exports symbol='xmlShellCmd'/>
+     <exports symbol='xmlShellPrintXPathError'/>
+     <exports symbol='xmlShellPrintNode'/>
+     <exports symbol='xmlShellPrintXPathResult'/>
+     <exports symbol='xmlShellList'/>
+     <exports symbol='xmlShellBase'/>
+     <exports symbol='xmlShellDir'/>
+     <exports symbol='xmlShellCat'/>
+     <exports symbol='xmlShellLoad'/>
+     <exports symbol='xmlShellWrite'/>
+     <exports symbol='xmlShellSave'/>
+     <exports symbol='xmlShellValidate'/>
+     <exports symbol='xmlShellDu'/>
+     <exports symbol='xmlShellPwd'/>
+     <exports symbol='xmlShell'/>
+    </file>
+    <file name='DOCBparser'>
+     <exports symbol='docbParserCtxt'/>
+     <exports symbol='docbParserCtxtPtr'/>
+     <exports symbol='docbParserNodeInfo'/>
+     <exports symbol='docbSAXHandler'/>
+     <exports symbol='docbSAXHandlerPtr'/>
+     <exports symbol='docbParserInput'/>
+     <exports symbol='docbParserInputPtr'/>
+     <exports symbol='docbDocPtr'/>
+     <exports symbol='docbNodePtr'/>
+     <exports symbol='docbEncodeEntities'/>
+     <exports symbol='docbSAXParseDoc'/>
+     <exports symbol='docbParseDoc'/>
+     <exports symbol='docbSAXParseFile'/>
+     <exports symbol='docbParseFile'/>
+     <exports symbol='docbFreeParserCtxt'/>
+     <exports symbol='docbCreatePushParserCtxt'/>
+     <exports symbol='docbParseChunk'/>
+     <exports symbol='docbCreateFileParserCtxt'/>
+     <exports symbol='docbParseDocument'/>
+    </file>
+    <file name='HTMLparser'>
+     <exports symbol='htmlParserCtxt'/>
+     <exports symbol='htmlParserCtxtPtr'/>
+     <exports symbol='htmlParserNodeInfo'/>
+     <exports symbol='htmlSAXHandler'/>
+     <exports symbol='htmlSAXHandlerPtr'/>
+     <exports symbol='htmlParserInput'/>
+     <exports symbol='htmlParserInputPtr'/>
+     <exports symbol='htmlDocPtr'/>
+     <exports symbol='htmlNodePtr'/>
+     <exports symbol='htmlElemDesc'/>
+     <exports symbol='htmlElemDescPtr'/>
+     <exports symbol='htmlEntityDesc'/>
+     <exports symbol='htmlEntityDescPtr'/>
+     <exports symbol='htmlTagLookup'/>
+     <exports symbol='htmlEntityLookup'/>
+     <exports symbol='htmlEntityValueLookup'/>
+     <exports symbol='htmlIsAutoClosed'/>
+     <exports symbol='htmlAutoCloseTag'/>
+     <exports symbol='htmlParseEntityRef'/>
+     <exports symbol='htmlParseCharRef'/>
+     <exports symbol='htmlParseElement'/>
+     <exports symbol='htmlSAXParseDoc'/>
+     <exports symbol='htmlParseDoc'/>
+     <exports symbol='htmlSAXParseFile'/>
+     <exports symbol='htmlParseFile'/>
+     <exports symbol='UTF8ToHtml'/>
+     <exports symbol='htmlEncodeEntities'/>
+     <exports symbol='htmlIsScriptAttribute'/>
+     <exports symbol='htmlHandleOmittedElem'/>
+     <exports symbol='htmlFreeParserCtxt'/>
+     <exports symbol='htmlCreatePushParserCtxt'/>
+     <exports symbol='htmlParseChunk'/>
+    </file>
+    <file name='SAX'>
+     <exports symbol='getPublicId'/>
+     <exports symbol='getSystemId'/>
+     <exports symbol='setDocumentLocator'/>
+     <exports symbol='getLineNumber'/>
+     <exports symbol='getColumnNumber'/>
+     <exports symbol='isStandalone'/>
+     <exports symbol='hasInternalSubset'/>
+     <exports symbol='hasExternalSubset'/>
+     <exports symbol='internalSubset'/>
+     <exports symbol='externalSubset'/>
+     <exports symbol='getEntity'/>
+     <exports symbol='getParameterEntity'/>
+     <exports symbol='resolveEntity'/>
+     <exports symbol='entityDecl'/>
+     <exports symbol='attributeDecl'/>
+     <exports symbol='elementDecl'/>
+     <exports symbol='notationDecl'/>
+     <exports symbol='unparsedEntityDecl'/>
+     <exports symbol='startDocument'/>
+     <exports symbol='endDocument'/>
+     <exports symbol='attribute'/>
+     <exports symbol='startElement'/>
+     <exports symbol='endElement'/>
+     <exports symbol='reference'/>
+     <exports symbol='characters'/>
+     <exports symbol='ignorableWhitespace'/>
+     <exports symbol='processingInstruction'/>
+     <exports symbol='globalNamespace'/>
+     <exports symbol='setNamespace'/>
+     <exports symbol='getNamespace'/>
+     <exports symbol='checkNamespace'/>
+     <exports symbol='namespaceDecl'/>
+     <exports symbol='comment'/>
+     <exports symbol='cdataBlock'/>
+     <exports symbol='initxmlDefaultSAXHandler'/>
+     <exports symbol='inithtmlDefaultSAXHandler'/>
+     <exports symbol='initdocbDefaultSAXHandler'/>
+     <exports symbol='xmlDefaultSAXHandlerInit'/>
+     <exports symbol='htmlDefaultSAXHandlerInit'/>
+     <exports symbol='docbDefaultSAXHandlerInit'/>
+    </file>
+    <file name='nanohttp'>
+     <exports symbol='xmlNanoHTTPInit'/>
+     <exports symbol='xmlNanoHTTPCleanup'/>
+     <exports symbol='xmlNanoHTTPScanProxy'/>
+     <exports symbol='xmlNanoHTTPFetch'/>
+     <exports symbol='xmlNanoHTTPMethod'/>
+     <exports symbol='xmlNanoHTTPMethodRedir'/>
+     <exports symbol='xmlNanoHTTPOpen'/>
+     <exports symbol='xmlNanoHTTPOpenRedir'/>
+     <exports symbol='xmlNanoHTTPReturnCode'/>
+     <exports symbol='xmlNanoHTTPAuthHeader'/>
+     <exports symbol='xmlNanoHTTPRead'/>
+     <exports symbol='xmlNanoHTTPSave'/>
+     <exports symbol='xmlNanoHTTPClose'/>
+    </file>
+    <file name='entities'>
+     <exports symbol='xmlEntityType'/>
+     <exports symbol='xmlEntity'/>
+     <exports symbol='xmlEntityPtr'/>
+     <exports symbol='xmlEntitiesTablePtr'/>
+     <exports symbol='xmlInitializePredefinedEntities'/>
+     <exports symbol='xmlAddDocEntity'/>
+     <exports symbol='xmlAddDtdEntity'/>
+     <exports symbol='xmlGetPredefinedEntity'/>
+     <exports symbol='xmlGetDocEntity'/>
+     <exports symbol='xmlGetDtdEntity'/>
+     <exports symbol='xmlGetParameterEntity'/>
+     <exports symbol='xmlEncodeEntities'/>
+     <exports symbol='xmlEncodeEntitiesReentrant'/>
+     <exports symbol='xmlEncodeSpecialChars'/>
+     <exports symbol='xmlCreateEntitiesTable'/>
+     <exports symbol='xmlCopyEntitiesTable'/>
+     <exports symbol='xmlFreeEntitiesTable'/>
+     <exports symbol='xmlDumpEntitiesTable'/>
+     <exports symbol='xmlDumpEntityDecl'/>
+     <exports symbol='xmlCleanupPredefinedEntities'/>
+    </file>
+    <file name='xmlmemory'>
+     <exports symbol='DEBUG_MEMORY'/>
+     <exports symbol='MEM_LIST'/>
+     <exports symbol='xmlFreeFunc'/>
+     <exports symbol='xmlMallocFunc'/>
+     <exports symbol='xmlReallocFunc'/>
+     <exports symbol='xmlStrdupFunc'/>
+     <exports symbol='xmlMemSetup'/>
+     <exports symbol='xmlMemGet'/>
+     <exports symbol='xmlInitMemory'/>
+     <exports symbol='xmlMemUsed'/>
+     <exports symbol='xmlMemDisplay'/>
+     <exports symbol='xmlMemShow'/>
+     <exports symbol='xmlMemoryDump'/>
+     <exports symbol='xmlMalloc'/>
+     <exports symbol='xmlRealloc'/>
+     <exports symbol='xmlMemStrdup'/>
+     <exports symbol='xmlMallocLoc'/>
+     <exports symbol='xmlReallocLoc'/>
+     <exports symbol='xmlMemStrdupLoc'/>
+    </file>
+    <file name='valid'>
+     <exports symbol='xmlValidState'/>
+     <exports symbol='xmlValidStatePtr'/>
+     <exports symbol='xmlValidityErrorFunc'/>
+     <exports symbol='xmlValidityWarningFunc'/>
+     <exports symbol='xmlValidCtxt'/>
+     <exports symbol='xmlValidCtxtPtr'/>
+     <exports symbol='xmlNotationTablePtr'/>
+     <exports symbol='xmlElementTablePtr'/>
+     <exports symbol='xmlAttributeTablePtr'/>
+     <exports symbol='xmlIDTablePtr'/>
+     <exports symbol='xmlRefTablePtr'/>
+     <exports symbol='xmlSplitQName2'/>
+     <exports symbol='xmlAddNotationDecl'/>
+     <exports symbol='xmlCopyNotationTable'/>
+     <exports symbol='xmlFreeNotationTable'/>
+     <exports symbol='xmlDumpNotationDecl'/>
+     <exports symbol='xmlDumpNotationTable'/>
+     <exports symbol='xmlNewElementContent'/>
+     <exports symbol='xmlCopyElementContent'/>
+     <exports symbol='xmlFreeElementContent'/>
+     <exports symbol='xmlSnprintfElementContent'/>
+     <exports symbol='xmlSprintfElementContent'/>
+     <exports symbol='xmlAddElementDecl'/>
+     <exports symbol='xmlCopyElementTable'/>
+     <exports symbol='xmlFreeElementTable'/>
+     <exports symbol='xmlDumpElementTable'/>
+     <exports symbol='xmlDumpElementDecl'/>
+     <exports symbol='xmlCreateEnumeration'/>
+     <exports symbol='xmlFreeEnumeration'/>
+     <exports symbol='xmlCopyEnumeration'/>
+     <exports symbol='xmlAddAttributeDecl'/>
+     <exports symbol='xmlCopyAttributeTable'/>
+     <exports symbol='xmlFreeAttributeTable'/>
+     <exports symbol='xmlDumpAttributeTable'/>
+     <exports symbol='xmlDumpAttributeDecl'/>
+     <exports symbol='xmlAddID'/>
+     <exports symbol='xmlFreeIDTable'/>
+     <exports symbol='xmlGetID'/>
+     <exports symbol='xmlIsID'/>
+     <exports symbol='xmlRemoveID'/>
+     <exports symbol='xmlAddRef'/>
+     <exports symbol='xmlFreeRefTable'/>
+     <exports symbol='xmlIsRef'/>
+     <exports symbol='xmlRemoveRef'/>
+     <exports symbol='xmlGetRefs'/>
+     <exports symbol='xmlValidateRoot'/>
+     <exports symbol='xmlValidateElementDecl'/>
+     <exports symbol='xmlValidNormalizeAttributeValue'/>
+     <exports symbol='xmlValidateAttributeDecl'/>
+     <exports symbol='xmlValidateAttributeValue'/>
+     <exports symbol='xmlValidateNotationDecl'/>
+     <exports symbol='xmlValidateDtd'/>
+     <exports symbol='xmlValidateDtdFinal'/>
+     <exports symbol='xmlValidateDocument'/>
+     <exports symbol='xmlValidateElement'/>
+     <exports symbol='xmlValidateOneElement'/>
+     <exports symbol='xmlValidateOneAttribute'/>
+     <exports symbol='xmlValidateDocumentFinal'/>
+     <exports symbol='xmlValidateNotationUse'/>
+     <exports symbol='xmlIsMixedElement'/>
+     <exports symbol='xmlGetDtdAttrDesc'/>
+     <exports symbol='xmlGetDtdQAttrDesc'/>
+     <exports symbol='xmlGetDtdNotationDesc'/>
+     <exports symbol='xmlGetDtdQElementDesc'/>
+     <exports symbol='xmlGetDtdElementDesc'/>
+     <exports symbol='xmlValidGetValidElements'/>
+     <exports symbol='xmlValidGetPotentialChildren'/>
+    </file>
+    <file name='uri'>
+     <exports symbol='xmlURI'/>
+     <exports symbol='xmlURIPtr'/>
+     <exports symbol='xmlCreateURI'/>
+     <exports symbol='xmlBuildURI'/>
+     <exports symbol='xmlParseURI'/>
+     <exports symbol='xmlParseURIReference'/>
+     <exports symbol='xmlSaveUri'/>
+     <exports symbol='xmlPrintURI'/>
+     <exports symbol='xmlURIEscapeStr'/>
+     <exports symbol='xmlURIUnescapeString'/>
+     <exports symbol='xmlNormalizeURIPath'/>
+     <exports symbol='xmlURIEscape'/>
+     <exports symbol='xmlFreeURI'/>
+    </file>
+    <file name='list'>
+     <exports symbol='xmlLink'/>
+     <exports symbol='xmlLinkPtr'/>
+     <exports symbol='xmlList'/>
+     <exports symbol='xmlListPtr'/>
+     <exports symbol='xmlListDeallocator'/>
+     <exports symbol='xmlListDataCompare'/>
+     <exports symbol='xmlListWalker'/>
+     <exports symbol='xmlListCreate'/>
+     <exports symbol='xmlListDelete'/>
+     <exports symbol='xmlListSearch'/>
+     <exports symbol='xmlListReverseSearch'/>
+     <exports symbol='xmlListInsert'/>
+     <exports symbol='xmlListAppend'/>
+     <exports symbol='xmlListRemoveFirst'/>
+     <exports symbol='xmlListRemoveLast'/>
+     <exports symbol='xmlListRemoveAll'/>
+     <exports symbol='xmlListClear'/>
+     <exports symbol='xmlListEmpty'/>
+     <exports symbol='xmlListFront'/>
+     <exports symbol='xmlListEnd'/>
+     <exports symbol='xmlListSize'/>
+     <exports symbol='xmlListPopFront'/>
+     <exports symbol='xmlListPopBack'/>
+     <exports symbol='xmlListPushFront'/>
+     <exports symbol='xmlListPushBack'/>
+     <exports symbol='xmlListReverse'/>
+     <exports symbol='xmlListSort'/>
+     <exports symbol='xmlListWalk'/>
+     <exports symbol='xmlListReverseWalk'/>
+     <exports symbol='xmlListMerge'/>
+     <exports symbol='xmlListDup'/>
+     <exports symbol='xmlListCopy'/>
+     <exports symbol='xmlLinkGetData'/>
+    </file>
+    <file name='nanoftp'>
+     <exports symbol='ftpListCallback'/>
+     <exports symbol='ftpDataCallback'/>
+     <exports symbol='xmlNanoFTPInit'/>
+     <exports symbol='xmlNanoFTPCleanup'/>
+     <exports symbol='xmlNanoFTPNewCtxt'/>
+     <exports symbol='xmlNanoFTPFreeCtxt'/>
+     <exports symbol='xmlNanoFTPConnectTo'/>
+     <exports symbol='xmlNanoFTPOpen'/>
+     <exports symbol='xmlNanoFTPConnect'/>
+     <exports symbol='xmlNanoFTPClose'/>
+     <exports symbol='xmlNanoFTPQuit'/>
+     <exports symbol='xmlNanoFTPScanProxy'/>
+     <exports symbol='xmlNanoFTPProxy'/>
+     <exports symbol='xmlNanoFTPUpdateURL'/>
+     <exports symbol='xmlNanoFTPGetResponse'/>
+     <exports symbol='xmlNanoFTPCheckResponse'/>
+     <exports symbol='xmlNanoFTPCwd'/>
+     <exports symbol='xmlNanoFTPGetConnection'/>
+     <exports symbol='xmlNanoFTPCloseConnection'/>
+     <exports symbol='xmlNanoFTPList'/>
+     <exports symbol='xmlNanoFTPGetSocket'/>
+     <exports symbol='xmlNanoFTPGet'/>
+     <exports symbol='xmlNanoFTPRead'/>
+    </file>
+    <file name='parserInternals'>
+     <exports symbol='XML_MAX_NAMELEN'/>
+     <exports symbol='INPUT_CHUNK'/>
+     <exports symbol='IS_CHAR'/>
+     <exports symbol='IS_BLANK'/>
+     <exports symbol='IS_BASECHAR'/>
+     <exports symbol='IS_DIGIT'/>
+     <exports symbol='IS_COMBINING'/>
+     <exports symbol='IS_EXTENDER'/>
+     <exports symbol='IS_IDEOGRAPHIC'/>
+     <exports symbol='IS_LETTER'/>
+     <exports symbol='IS_PUBIDCHAR'/>
+     <exports symbol='SKIP_EOL'/>
+     <exports symbol='MOVETO_ENDTAG'/>
+     <exports symbol='MOVETO_STARTTAG'/>
+     <exports symbol='xmlIsBaseChar'/>
+     <exports symbol='xmlIsBlank'/>
+     <exports symbol='xmlIsPubidChar'/>
+     <exports symbol='xmlIsLetter'/>
+     <exports symbol='xmlIsDigit'/>
+     <exports symbol='xmlIsIdeographic'/>
+     <exports symbol='xmlIsCombining'/>
+     <exports symbol='xmlIsExtender'/>
+     <exports symbol='xmlIsChar'/>
+     <exports symbol='xmlCreateFileParserCtxt'/>
+     <exports symbol='xmlCreateMemoryParserCtxt'/>
+     <exports symbol='xmlNewParserCtxt'/>
+     <exports symbol='xmlCreateEntityParserCtxt'/>
+     <exports symbol='xmlSwitchEncoding'/>
+     <exports symbol='xmlSwitchToEncoding'/>
+     <exports symbol='xmlFreeParserCtxt'/>
+     <exports symbol='xmlHandleEntity'/>
+     <exports symbol='xmlNewStringInputStream'/>
+     <exports symbol='xmlNewEntityInputStream'/>
+     <exports symbol='xmlPushInput'/>
+     <exports symbol='xmlPopInput'/>
+     <exports symbol='xmlFreeInputStream'/>
+     <exports symbol='xmlNewInputFromFile'/>
+     <exports symbol='xmlNewInputStream'/>
+     <exports symbol='xmlSplitQName'/>
+     <exports symbol='xmlNamespaceParseNCName'/>
+     <exports symbol='xmlNamespaceParseQName'/>
+     <exports symbol='xmlNamespaceParseNSDef'/>
+     <exports symbol='xmlParseQuotedString'/>
+     <exports symbol='xmlParseNamespace'/>
+     <exports symbol='xmlScanName'/>
+     <exports symbol='xmlParseName'/>
+     <exports symbol='xmlParseNmtoken'/>
+     <exports symbol='xmlParseEntityValue'/>
+     <exports symbol='xmlParseAttValue'/>
+     <exports symbol='xmlParseSystemLiteral'/>
+     <exports symbol='xmlParsePubidLiteral'/>
+     <exports symbol='xmlParseCharData'/>
+     <exports symbol='xmlParseExternalID'/>
+     <exports symbol='xmlParseComment'/>
+     <exports symbol='xmlParsePITarget'/>
+     <exports symbol='xmlParsePI'/>
+     <exports symbol='xmlParseNotationDecl'/>
+     <exports symbol='xmlParseEntityDecl'/>
+     <exports symbol='xmlParseDefaultDecl'/>
+     <exports symbol='xmlParseNotationType'/>
+     <exports symbol='xmlParseEnumerationType'/>
+     <exports symbol='xmlParseEnumeratedType'/>
+     <exports symbol='xmlParseAttributeType'/>
+     <exports symbol='xmlParseAttributeListDecl'/>
+     <exports symbol='xmlParseElementMixedContentDecl'/>
+     <exports symbol='xmlParseElementChildrenContentD'/>
+     <exports symbol='xmlParseElementChildrenContentDecl'/>
+     <exports symbol='xmlParseElementContentDecl'/>
+     <exports symbol='xmlParseElementDecl'/>
+     <exports symbol='xmlParseMarkupDecl'/>
+     <exports symbol='xmlParseCharRef'/>
+     <exports symbol='xmlParseEntityRef'/>
+     <exports symbol='xmlParseReference'/>
+     <exports symbol='xmlParsePEReference'/>
+     <exports symbol='xmlParseDocTypeDecl'/>
+     <exports symbol='xmlParseAttribute'/>
+     <exports symbol='xmlParseStartTag'/>
+     <exports symbol='xmlParseEndTag'/>
+     <exports symbol='xmlParseCDSect'/>
+     <exports symbol='xmlParseContent'/>
+     <exports symbol='xmlParseElement'/>
+     <exports symbol='xmlParseVersionNum'/>
+     <exports symbol='xmlParseVersionInfo'/>
+     <exports symbol='xmlParseEncName'/>
+     <exports symbol='xmlParseEncodingDecl'/>
+     <exports symbol='xmlParseSDDecl'/>
+     <exports symbol='xmlParseXMLDecl'/>
+     <exports symbol='xmlParseTextDecl'/>
+     <exports symbol='xmlParseMisc'/>
+     <exports symbol='xmlParseExternalSubset'/>
+     <exports symbol='XML_SUBSTITUTE_NONE'/>
+     <exports symbol='XML_SUBSTITUTE_REF'/>
+     <exports symbol='XML_SUBSTITUTE_PEREF'/>
+     <exports symbol='XML_SUBSTITUTE_BOTH'/>
+     <exports symbol='xmlDecodeEntities'/>
+     <exports symbol='xmlStringDecodeEntities'/>
+     <exports symbol='nodePush'/>
+     <exports symbol='nodePop'/>
+     <exports symbol='inputPush'/>
+     <exports symbol='inputPop'/>
+     <exports symbol='namePop'/>
+     <exports symbol='namePush'/>
+     <exports symbol='xmlSkipBlankChars'/>
+     <exports symbol='xmlStringCurrentChar'/>
+     <exports symbol='xmlParserHandlePEReference'/>
+     <exports symbol='xmlParserHandleReference'/>
+     <exports symbol='xmlCheckLanguageID'/>
+     <exports symbol='xmlCurrentChar'/>
+     <exports symbol='xmlCopyCharMultiByte'/>
+     <exports symbol='xmlCopyChar'/>
+     <exports symbol='xmlNextChar'/>
+     <exports symbol='xmlParserInputShrink'/>
+     <exports symbol='htmlInitAutoClose'/>
+     <exports symbol='htmlCreateFileParserCtxt'/>
+     <exports symbol='xmlEntityReferenceFunc'/>
+     <exports symbol='xmlSetEntityReferenceFunc'/>
+    </file>
+    <file name='tree'>
+     <exports symbol='xmlParserInputBuffer'/>
+     <exports symbol='xmlParserInputBufferPtr'/>
+     <exports symbol='xmlOutputBuffer'/>
+     <exports symbol='xmlOutputBufferPtr'/>
+     <exports symbol='xmlParserInput'/>
+     <exports symbol='xmlParserInputPtr'/>
+     <exports symbol='xmlParserCtxt'/>
+     <exports symbol='xmlParserCtxtPtr'/>
+     <exports symbol='BASE_BUFFER_SIZE'/>
+     <exports symbol='XML_XML_NAMESPACE'/>
+     <exports symbol='xmlElementType'/>
+     <exports symbol='xmlChar'/>
+     <exports symbol='BAD_CAST'/>
+     <exports symbol='xmlNotation'/>
+     <exports symbol='xmlNotationPtr'/>
+     <exports symbol='xmlAttributeType'/>
+     <exports symbol='xmlAttributeDefault'/>
+     <exports symbol='xmlEnumeration'/>
+     <exports symbol='xmlEnumerationPtr'/>
+     <exports symbol='xmlAttribute'/>
+     <exports symbol='xmlAttributePtr'/>
+     <exports symbol='xmlElementContentType'/>
+     <exports symbol='xmlElementContentOccur'/>
+     <exports symbol='xmlElementContent'/>
+     <exports symbol='xmlElementContentPtr'/>
+     <exports symbol='xmlElementTypeVal'/>
+     <exports symbol='xmlElement'/>
+     <exports symbol='xmlElementPtr'/>
+     <exports symbol='XML_LOCAL_NAMESPACE'/>
+     <exports symbol='xmlNsType'/>
+     <exports symbol='xmlNs'/>
+     <exports symbol='xmlNsPtr'/>
+     <exports symbol='xmlDtd'/>
+     <exports symbol='xmlDtdPtr'/>
+     <exports symbol='xmlAttr'/>
+     <exports symbol='xmlAttrPtr'/>
+     <exports symbol='xmlID'/>
+     <exports symbol='xmlIDPtr'/>
+     <exports symbol='xmlRef'/>
+     <exports symbol='xmlRefPtr'/>
+     <exports symbol='xmlBufferAllocationScheme'/>
+     <exports symbol='xmlBuffer'/>
+     <exports symbol='xmlBufferPtr'/>
+     <exports symbol='xmlNode'/>
+     <exports symbol='xmlNodePtr'/>
+     <exports symbol='XML_GET_CONTENT'/>
+     <exports symbol='XML_GET_LINE'/>
+     <exports symbol='xmlDoc'/>
+     <exports symbol='xmlDocPtr'/>
+     <exports symbol='xmlChildrenNode'/>
+     <exports symbol='xmlRootNode'/>
+     <exports symbol='xmlSetBufferAllocationScheme'/>
+     <exports symbol='xmlGetBufferAllocationScheme'/>
+     <exports symbol='xmlBufferCreate'/>
+     <exports symbol='xmlBufferCreateSize'/>
+     <exports symbol='xmlBufferResize'/>
+     <exports symbol='xmlBufferFree'/>
+     <exports symbol='xmlBufferDump'/>
+     <exports symbol='xmlBufferAdd'/>
+     <exports symbol='xmlBufferAddHead'/>
+     <exports symbol='xmlBufferCat'/>
+     <exports symbol='xmlBufferCCat'/>
+     <exports symbol='xmlBufferShrink'/>
+     <exports symbol='xmlBufferGrow'/>
+     <exports symbol='xmlBufferEmpty'/>
+     <exports symbol='xmlBufferContent'/>
+     <exports symbol='xmlBufferSetAllocationScheme'/>
+     <exports symbol='xmlBufferLength'/>
+     <exports symbol='xmlCreateIntSubset'/>
+     <exports symbol='xmlNewDtd'/>
+     <exports symbol='xmlGetIntSubset'/>
+     <exports symbol='xmlFreeDtd'/>
+     <exports symbol='xmlNewGlobalNs'/>
+     <exports symbol='xmlNewNs'/>
+     <exports symbol='xmlFreeNs'/>
+     <exports symbol='xmlFreeNsList'/>
+     <exports symbol='xmlNewDoc'/>
+     <exports symbol='xmlFreeDoc'/>
+     <exports symbol='xmlNewDocProp'/>
+     <exports symbol='xmlNewProp'/>
+     <exports symbol='xmlNewNsProp'/>
+     <exports symbol='xmlFreePropList'/>
+     <exports symbol='xmlFreeProp'/>
+     <exports symbol='xmlCopyProp'/>
+     <exports symbol='xmlCopyPropList'/>
+     <exports symbol='xmlCopyDtd'/>
+     <exports symbol='xmlCopyDoc'/>
+     <exports symbol='xmlNewDocNode'/>
+     <exports symbol='xmlNewDocRawNode'/>
+     <exports symbol='xmlNewNode'/>
+     <exports symbol='xmlNewChild'/>
+     <exports symbol='xmlNewTextChild'/>
+     <exports symbol='xmlNewDocText'/>
+     <exports symbol='xmlNewText'/>
+     <exports symbol='xmlNewPI'/>
+     <exports symbol='xmlNewDocTextLen'/>
+     <exports symbol='xmlNewTextLen'/>
+     <exports symbol='xmlNewDocComment'/>
+     <exports symbol='xmlNewComment'/>
+     <exports symbol='xmlNewCDataBlock'/>
+     <exports symbol='xmlNewCharRef'/>
+     <exports symbol='xmlNewReference'/>
+     <exports symbol='xmlCopyNode'/>
+     <exports symbol='xmlDocCopyNode'/>
+     <exports symbol='xmlCopyNodeList'/>
+     <exports symbol='xmlNewDocFragment'/>
+     <exports symbol='xmlGetLineNo'/>
+     <exports symbol='xmlGetNodePath'/>
+     <exports symbol='xmlDocGetRootElement'/>
+     <exports symbol='xmlGetLastChild'/>
+     <exports symbol='xmlNodeIsText'/>
+     <exports symbol='xmlIsBlankNode'/>
+     <exports symbol='xmlDocSetRootElement'/>
+     <exports symbol='xmlNodeSetName'/>
+     <exports symbol='xmlAddChild'/>
+     <exports symbol='xmlAddChildList'/>
+     <exports symbol='xmlReplaceNode'/>
+     <exports symbol='xmlAddSibling'/>
+     <exports symbol='xmlAddPrevSibling'/>
+     <exports symbol='xmlAddNextSibling'/>
+     <exports symbol='xmlUnlinkNode'/>
+     <exports symbol='xmlTextMerge'/>
+     <exports symbol='xmlTextConcat'/>
+     <exports symbol='xmlFreeNodeList'/>
+     <exports symbol='xmlFreeNode'/>
+     <exports symbol='xmlSetTreeDoc'/>
+     <exports symbol='xmlSetListDoc'/>
+     <exports symbol='xmlSearchNs'/>
+     <exports symbol='xmlSearchNsByHref'/>
+     <exports symbol='xmlGetNsList'/>
+     <exports symbol='xmlSetNs'/>
+     <exports symbol='xmlCopyNamespace'/>
+     <exports symbol='xmlCopyNamespaceList'/>
+     <exports symbol='xmlSetProp'/>
+     <exports symbol='xmlGetProp'/>
+     <exports symbol='xmlHasProp'/>
+     <exports symbol='xmlHasNsProp'/>
+     <exports symbol='xmlSetNsProp'/>
+     <exports symbol='xmlGetNsProp'/>
+     <exports symbol='xmlStringGetNodeList'/>
+     <exports symbol='xmlStringLenGetNodeList'/>
+     <exports symbol='xmlNodeListGetString'/>
+     <exports symbol='xmlNodeListGetRawString'/>
+     <exports symbol='xmlNodeSetContent'/>
+     <exports symbol='xmlNodeSetContentLen'/>
+     <exports symbol='xmlNodeAddContent'/>
+     <exports symbol='xmlNodeAddContentLen'/>
+     <exports symbol='xmlNodeGetContent'/>
+     <exports symbol='xmlNodeGetLang'/>
+     <exports symbol='xmlNodeSetLang'/>
+     <exports symbol='xmlNodeGetSpacePreserve'/>
+     <exports symbol='xmlNodeSetSpacePreserve'/>
+     <exports symbol='xmlNodeGetBase'/>
+     <exports symbol='xmlNodeSetBase'/>
+     <exports symbol='xmlRemoveProp'/>
+     <exports symbol='xmlUnsetProp'/>
+     <exports symbol='xmlUnsetNsProp'/>
+     <exports symbol='xmlBufferWriteXmlCHAR'/>
+     <exports symbol='xmlBufferWriteCHAR'/>
+     <exports symbol='xmlBufferWriteChar'/>
+     <exports symbol='xmlBufferWriteQuotedString'/>
+     <exports symbol='xmlReconciliateNs'/>
+     <exports symbol='xmlDocDumpFormatMemory'/>
+     <exports symbol='xmlDocDumpMemory'/>
+     <exports symbol='xmlDocDumpMemoryEnc'/>
+     <exports symbol='xmlDocDumpFormatMemoryEnc'/>
+     <exports symbol='xmlDocDump'/>
+     <exports symbol='xmlElemDump'/>
+     <exports symbol='xmlSaveFile'/>
+     <exports symbol='xmlSaveFormatFile'/>
+     <exports symbol='xmlNodeDump'/>
+     <exports symbol='xmlSaveFileTo'/>
+     <exports symbol='xmlSaveFormatFileTo'/>
+     <exports symbol='xmlNodeDumpOutput'/>
+     <exports symbol='xmlSaveFormatFileEnc'/>
+     <exports symbol='xmlSaveFileEnc'/>
+     <exports symbol='xmlGetDocCompressMode'/>
+     <exports symbol='xmlSetDocCompressMode'/>
+     <exports symbol='xmlGetCompressMode'/>
+     <exports symbol='xmlSetCompressMode'/>
+    </file>
+    <file name='HTMLtree'>
+     <exports symbol='HTML_TEXT_NODE'/>
+     <exports symbol='HTML_ENTITY_REF_NODE'/>
+     <exports symbol='HTML_COMMENT_NODE'/>
+     <exports symbol='HTML_PRESERVE_NODE'/>
+     <exports symbol='HTML_PI_NODE'/>
+     <exports symbol='htmlNewDoc'/>
+     <exports symbol='htmlNewDocNoDtD'/>
+     <exports symbol='htmlGetMetaEncoding'/>
+     <exports symbol='htmlSetMetaEncoding'/>
+     <exports symbol='htmlDocDumpMemory'/>
+     <exports symbol='htmlDocDump'/>
+     <exports symbol='htmlSaveFile'/>
+     <exports symbol='htmlNodeDump'/>
+     <exports symbol='htmlNodeDumpFile'/>
+     <exports symbol='htmlNodeDumpFileFormat'/>
+     <exports symbol='htmlSaveFileEnc'/>
+     <exports symbol='htmlSaveFileFormat'/>
+     <exports symbol='htmlNodeDumpFormatOutput'/>
+     <exports symbol='htmlDocContentDumpOutput'/>
+     <exports symbol='htmlDocContentDumpFormatOutput'/>
+    </file>
+    <file name='xpathInternals'>
+     <exports symbol='xmlXPathSetError'/>
+     <exports symbol='xmlXPathSetArityError'/>
+     <exports symbol='xmlXPathSetTypeError'/>
+     <exports symbol='xmlXPathGetError'/>
+     <exports symbol='xmlXPathCheckError'/>
+     <exports symbol='xmlXPathGetDocument'/>
+     <exports symbol='xmlXPathGetContextNode'/>
+     <exports symbol='xmlXPathPopBoolean'/>
+     <exports symbol='xmlXPathPopNumber'/>
+     <exports symbol='xmlXPathPopString'/>
+     <exports symbol='xmlXPathPopNodeSet'/>
+     <exports symbol='xmlXPathPopExternal'/>
+     <exports symbol='xmlXPathReturnBoolean'/>
+     <exports symbol='xmlXPathReturnTrue'/>
+     <exports symbol='xmlXPathReturnFalse'/>
+     <exports symbol='xmlXPathReturnNumber'/>
+     <exports symbol='xmlXPathReturnString'/>
+     <exports symbol='xmlXPathReturnEmptyString'/>
+     <exports symbol='xmlXPathReturnNodeSet'/>
+     <exports symbol='xmlXPathReturnEmptyNodeSet'/>
+     <exports symbol='xmlXPathReturnExternal'/>
+     <exports symbol='xmlXPathStackIsNodeSet'/>
+     <exports symbol='xmlXPathStackIsExternal'/>
+     <exports symbol='xmlXPathEmptyNodeSet'/>
+     <exports symbol='CHECK_ERROR'/>
+     <exports symbol='CHECK_ERROR0'/>
+     <exports symbol='XP_ERROR'/>
+     <exports symbol='XP_ERROR0'/>
+     <exports symbol='CHECK_TYPE'/>
+     <exports symbol='CHECK_TYPE0'/>
+     <exports symbol='CHECK_ARITY'/>
+     <exports symbol='CAST_TO_STRING'/>
+     <exports symbol='CAST_TO_NUMBER'/>
+     <exports symbol='CAST_TO_BOOLEAN'/>
+     <exports symbol='xmlXPathVariableLookupFunc'/>
+     <exports symbol='xmlXPathRegisterVariableLookup'/>
+     <exports symbol='xmlXPathFuncLookupFunc'/>
+     <exports symbol='xmlXPathRegisterFuncLookup'/>
+     <exports symbol='xmlXPatherror'/>
+     <exports symbol='xmlXPathDebugDumpObject'/>
+     <exports symbol='xmlXPathDebugDumpCompExpr'/>
+     <exports symbol='xmlXPathNodeSetContains'/>
+     <exports symbol='xmlXPathDifference'/>
+     <exports symbol='xmlXPathIntersection'/>
+     <exports symbol='xmlXPathDistinctSorted'/>
+     <exports symbol='xmlXPathDistinct'/>
+     <exports symbol='xmlXPathHasSameNodes'/>
+     <exports symbol='xmlXPathNodeLeadingSorted'/>
+     <exports symbol='xmlXPathLeadingSorted'/>
+     <exports symbol='xmlXPathNodeLeading'/>
+     <exports symbol='xmlXPathLeading'/>
+     <exports symbol='xmlXPathNodeTrailingSorted'/>
+     <exports symbol='xmlXPathTrailingSorted'/>
+     <exports symbol='xmlXPathNodeTrailing'/>
+     <exports symbol='xmlXPathTrailing'/>
+     <exports symbol='xmlXPathRegisterNs'/>
+     <exports symbol='xmlXPathNsLookup'/>
+     <exports symbol='xmlXPathRegisteredNsCleanup'/>
+     <exports symbol='xmlXPathRegisterFunc'/>
+     <exports symbol='xmlXPathRegisterFuncNS'/>
+     <exports symbol='xmlXPathRegisterVariable'/>
+     <exports symbol='xmlXPathRegisterVariableNS'/>
+     <exports symbol='xmlXPathFunctionLookup'/>
+     <exports symbol='xmlXPathFunctionLookupNS'/>
+     <exports symbol='xmlXPathRegisteredFuncsCleanup'/>
+     <exports symbol='xmlXPathVariableLookup'/>
+     <exports symbol='xmlXPathVariableLookupNS'/>
+     <exports symbol='xmlXPathRegisteredVariablesCleanup'/>
+     <exports symbol='xmlXPathNewParserContext'/>
+     <exports symbol='xmlXPathFreeParserContext'/>
+     <exports symbol='valuePop'/>
+     <exports symbol='valuePush'/>
+     <exports symbol='xmlXPathNewString'/>
+     <exports symbol='xmlXPathNewCString'/>
+     <exports symbol='xmlXPathWrapString'/>
+     <exports symbol='xmlXPathWrapCString'/>
+     <exports symbol='xmlXPathNewFloat'/>
+     <exports symbol='xmlXPathNewBoolean'/>
+     <exports symbol='xmlXPathNewNodeSet'/>
+     <exports symbol='xmlXPathNewValueTree'/>
+     <exports symbol='xmlXPathNodeSetAdd'/>
+     <exports symbol='xmlXPathNodeSetAddUnique'/>
+     <exports symbol='xmlXPathNodeSetSort'/>
+     <exports symbol='xmlXPathIdFunction'/>
+     <exports symbol='xmlXPathRoot'/>
+     <exports symbol='xmlXPathEvalExpr'/>
+     <exports symbol='xmlXPathParseName'/>
+     <exports symbol='xmlXPathParseNCName'/>
+     <exports symbol='xmlXPathStringEvalNumber'/>
+     <exports symbol='xmlXPathEvaluatePredicateResult'/>
+     <exports symbol='xmlXPathInit'/>
+     <exports symbol='xmlXPathStringFunction'/>
+     <exports symbol='xmlXPathRegisterAllFunctions'/>
+     <exports symbol='xmlXPathNodeSetCreate'/>
+     <exports symbol='xmlXPathNodeSetMerge'/>
+     <exports symbol='xmlXPathNodeSetDel'/>
+     <exports symbol='xmlXPathNodeSetRemove'/>
+     <exports symbol='xmlXPathFreeNodeSet'/>
+     <exports symbol='xmlXPathNewNodeSetList'/>
+     <exports symbol='xmlXPathWrapNodeSet'/>
+     <exports symbol='xmlXPathWrapExternal'/>
+     <exports symbol='xmlXPathFreeNodeSetList'/>
+     <exports symbol='xmlXPathFreeObject'/>
+     <exports symbol='xmlXPathNewContext'/>
+     <exports symbol='xmlXPathFreeContext'/>
+     <exports symbol='xmlXPathEqualValues'/>
+     <exports symbol='xmlXPathCompareValues'/>
+     <exports symbol='xmlXPathValueFlipSign'/>
+     <exports symbol='xmlXPathAddValues'/>
+     <exports symbol='xmlXPathSubValues'/>
+     <exports symbol='xmlXPathMultValues'/>
+     <exports symbol='xmlXPathDivValues'/>
+     <exports symbol='xmlXPathModValues'/>
+     <exports symbol='xmlXPathIsNodeType'/>
+     <exports symbol='xmlXPathNextSelf'/>
+     <exports symbol='xmlXPathNextChild'/>
+     <exports symbol='xmlXPathNextDescendant'/>
+     <exports symbol='xmlXPathNextDescendantOrSelf'/>
+     <exports symbol='xmlXPathNextParent'/>
+     <exports symbol='xmlXPathNextAncestorOrSelf'/>
+     <exports symbol='xmlXPathNextFollowingSibling'/>
+     <exports symbol='xmlXPathNextFollowing'/>
+     <exports symbol='xmlXPathNextNamespace'/>
+     <exports symbol='xmlXPathNextAttribute'/>
+     <exports symbol='xmlXPathNextPreceding'/>
+     <exports symbol='xmlXPathNextAncestor'/>
+     <exports symbol='xmlXPathNextPrecedingSibling'/>
+     <exports symbol='xmlXPathLastFunction'/>
+     <exports symbol='xmlXPathPositionFunction'/>
+     <exports symbol='xmlXPathCountFunction'/>
+     <exports symbol='xmlXPathLocalNameFunction'/>
+     <exports symbol='xmlXPathNamespaceURIFunction'/>
+     <exports symbol='xmlXPathStringLengthFunction'/>
+     <exports symbol='xmlXPathConcatFunction'/>
+     <exports symbol='xmlXPathContainsFunction'/>
+     <exports symbol='xmlXPathStartsWithFunction'/>
+     <exports symbol='xmlXPathSubstringFunction'/>
+     <exports symbol='xmlXPathSubstringBeforeFunction'/>
+     <exports symbol='xmlXPathSubstringAfterFunction'/>
+     <exports symbol='xmlXPathNormalizeFunction'/>
+     <exports symbol='xmlXPathTranslateFunction'/>
+     <exports symbol='xmlXPathNotFunction'/>
+     <exports symbol='xmlXPathTrueFunction'/>
+     <exports symbol='xmlXPathFalseFunction'/>
+     <exports symbol='xmlXPathLangFunction'/>
+     <exports symbol='xmlXPathNumberFunction'/>
+     <exports symbol='xmlXPathSumFunction'/>
+     <exports symbol='xmlXPathFloorFunction'/>
+     <exports symbol='xmlXPathCeilingFunction'/>
+     <exports symbol='xmlXPathRoundFunction'/>
+     <exports symbol='xmlXPathBooleanFunction'/>
+    </file>
+    <file name='xinclude'>
+     <exports symbol='xmlXIncludeProcess'/>
+    </file>
+    <file name='xpointer'>
+     <exports symbol='xmlLocationSet'/>
+     <exports symbol='xmlLocationSetPtr'/>
+     <exports symbol='xmlXPtrLocationSetCreate'/>
+     <exports symbol='xmlXPtrFreeLocationSet'/>
+     <exports symbol='xmlXPtrLocationSetMerge'/>
+     <exports symbol='xmlXPtrNewRange'/>
+     <exports symbol='xmlXPtrNewRangePoints'/>
+     <exports symbol='xmlXPtrNewRangeNodePoint'/>
+     <exports symbol='xmlXPtrNewRangePointNode'/>
+     <exports symbol='xmlXPtrNewRangeNodes'/>
+     <exports symbol='xmlXPtrNewLocationSetNodes'/>
+     <exports symbol='xmlXPtrNewLocationSetNodeSet'/>
+     <exports symbol='xmlXPtrNewRangeNodeObject'/>
+     <exports symbol='xmlXPtrNewCollapsedRange'/>
+     <exports symbol='xmlXPtrLocationSetAdd'/>
+     <exports symbol='xmlXPtrWrapLocationSet'/>
+     <exports symbol='xmlXPtrLocationSetDel'/>
+     <exports symbol='xmlXPtrLocationSetRemove'/>
+     <exports symbol='xmlXPtrNewContext'/>
+     <exports symbol='xmlXPtrEval'/>
+     <exports symbol='xmlXPtrRangeToFunction'/>
+     <exports symbol='xmlXPtrBuildNodeList'/>
+     <exports symbol='xmlXPtrEvalRangePredicate'/>
+    </file>
+    <file name='threads'>
+     <exports symbol='xmlMutex'/>
+     <exports symbol='xmlMutexPtr'/>
+     <exports symbol='xmlNewMutex'/>
+     <exports symbol='xmlMutexLock'/>
+     <exports symbol='xmlMutexUnlock'/>
+     <exports symbol='xmlFreeMutex'/>
+     <exports symbol='xmlRMutex'/>
+     <exports symbol='xmlRMutexPtr'/>
+     <exports symbol='xmlNewRMutex'/>
+     <exports symbol='xmlRMutexLock'/>
+     <exports symbol='xmlRMutexUnlock'/>
+     <exports symbol='xmlFreeRMutex'/>
+     <exports symbol='xmlInitThreads'/>
+     <exports symbol='xmlLockLibrary'/>
+     <exports symbol='xmlUnlockLibrary'/>
+     <exports symbol='xmlGetThreadId'/>
+     <exports symbol='xmlIsMainThread'/>
+     <exports symbol='xmlCleanupThreads'/>
+     <exports symbol='xmlGetGlobalState'/>
+    </file>
+    <file name='globals'>
+     <exports symbol='xmlGlobalState'/>
+     <exports symbol='xmlGlobalStatePtr'/>
+     <exports symbol='xmlInitializeGlobalState'/>
+     <exports symbol='xmlMalloc'/>
+     <exports symbol='xmlRealloc'/>
+     <exports symbol='xmlFree'/>
+     <exports symbol='xmlMemStrdup'/>
+     <exports symbol='docbDefaultSAXHandler'/>
+     <exports symbol='htmlDefaultSAXHandler'/>
+     <exports symbol='oldXMLWDcompatibility'/>
+     <exports symbol='xmlBufferAllocScheme'/>
+     <exports symbol='xmlDefaultBufferSize'/>
+     <exports symbol='xmlDefaultSAXHandler'/>
+     <exports symbol='xmlDefaultSAXLocator'/>
+     <exports symbol='xmlDoValidityCheckingDefaultValue'/>
+     <exports symbol='xmlGenericError'/>
+     <exports symbol='xmlGenericErrorContext'/>
+     <exports symbol='xmlGetWarningsDefaultValue'/>
+     <exports symbol='xmlIndentTreeOutput'/>
+     <exports symbol='xmlKeepBlanksDefaultValue'/>
+     <exports symbol='xmlLineNumbersDefaultValue'/>
+     <exports symbol='xmlLoadExtDtdDefaultValue'/>
+     <exports symbol='xmlParserDebugEntities'/>
+     <exports symbol='xmlParserVersion'/>
+     <exports symbol='xmlPedanticParserDefaultValue'/>
+     <exports symbol='xmlSaveNoEmptyTags'/>
+     <exports symbol='xmlSubstituteEntitiesDefaultValue'/>
+    </file>
+    <file name='catalog'>
+     <exports symbol='XML_CATALOGS_NAMESPACE'/>
+     <exports symbol='XML_CATALOG_PI'/>
+     <exports symbol='xmlCatalogPrefer'/>
+     <exports symbol='xmlCatalogAllow'/>
+     <exports symbol='xmlCatalog'/>
+     <exports symbol='xmlCatalogPtr'/>
+     <exports symbol='xmlNewCatalog'/>
+     <exports symbol='xmlLoadACatalog'/>
+     <exports symbol='xmlLoadSGMLSuperCatalog'/>
+     <exports symbol='xmlConvertSGMLCatalog'/>
+     <exports symbol='xmlACatalogAdd'/>
+     <exports symbol='xmlACatalogRemove'/>
+     <exports symbol='xmlACatalogResolve'/>
+     <exports symbol='xmlACatalogResolveSystem'/>
+     <exports symbol='xmlACatalogResolvePublic'/>
+     <exports symbol='xmlACatalogResolveURI'/>
+     <exports symbol='xmlACatalogDump'/>
+     <exports symbol='xmlFreeCatalog'/>
+     <exports symbol='xmlCatalogIsEmpty'/>
+     <exports symbol='xmlInitializeCatalog'/>
+     <exports symbol='xmlLoadCatalog'/>
+     <exports symbol='xmlLoadCatalogs'/>
+     <exports symbol='xmlCatalogCleanup'/>
+     <exports symbol='xmlCatalogDump'/>
+     <exports symbol='xmlCatalogResolve'/>
+     <exports symbol='xmlCatalogResolveSystem'/>
+     <exports symbol='xmlCatalogResolvePublic'/>
+     <exports symbol='xmlCatalogResolveURI'/>
+     <exports symbol='xmlCatalogAdd'/>
+     <exports symbol='xmlCatalogRemove'/>
+     <exports symbol='xmlParseCatalogFile'/>
+     <exports symbol='xmlCatalogConvert'/>
+     <exports symbol='xmlCatalogFreeLocal'/>
+     <exports symbol='xmlCatalogAddLocal'/>
+     <exports symbol='xmlCatalogLocalResolve'/>
+     <exports symbol='xmlCatalogLocalResolveURI'/>
+     <exports symbol='xmlCatalogSetDebug'/>
+     <exports symbol='xmlCatalogSetDefaultPrefer'/>
+     <exports symbol='xmlCatalogSetDefaults'/>
+     <exports symbol='xmlCatalogGetDefaults'/>
+     <exports symbol='xmlCatalogGetSystem'/>
+     <exports symbol='xmlCatalogGetPublic'/>
+    </file>
+    <file name='xmlversion'>
+     <exports symbol='xmlCheckVersion'/>
+     <exports symbol='LIBXML_DOTTED_VERSION'/>
+     <exports symbol='LIBXML_VERSION'/>
+     <exports symbol='LIBXML_VERSION_STRING'/>
+     <exports symbol='LIBXML_TEST_VERSION'/>
+     <exports symbol='WITH_TRIO'/>
+     <exports symbol='WITHOUT_TRIO'/>
+     <exports symbol='LIBXML_THREAD_ENABLED'/>
+     <exports symbol='LIBXML_FTP_ENABLED'/>
+     <exports symbol='LIBXML_HTTP_ENABLED'/>
+     <exports symbol='LIBXML_HTML_ENABLED'/>
+     <exports symbol='LIBXML_CATALOG_ENABLED'/>
+     <exports symbol='LIBXML_DOCB_ENABLED'/>
+     <exports symbol='LIBXML_XPATH_ENABLED'/>
+     <exports symbol='LIBXML_XPTR_ENABLED'/>
+     <exports symbol='LIBXML_XINCLUDE_ENABLED'/>
+     <exports symbol='LIBXML_ICONV_ENABLED'/>
+     <exports symbol='LIBXML_DEBUG_ENABLED'/>
+     <exports symbol='DEBUG_MEMORY_LOCATION'/>
+     <exports symbol='LIBXML_DLL_IMPORT'/>
+     <exports symbol='ATTRIBUTE_UNUSED'/>
+    </file>
+    <file name='parser'>
+     <exports symbol='XML_DEFAULT_VERSION'/>
+     <exports symbol='xmlParserInputDeallocate'/>
+     <exports symbol='xmlParserInput'/>
+     <exports symbol='xmlParserNodeInfo'/>
+     <exports symbol='xmlParserNodeInfoPtr'/>
+     <exports symbol='xmlParserNodeInfoSeq'/>
+     <exports symbol='xmlParserNodeInfoSeqPtr'/>
+     <exports symbol='xmlParserInputState'/>
+     <exports symbol='XML_DETECT_IDS'/>
+     <exports symbol='XML_COMPLETE_ATTRS'/>
+     <exports symbol='xmlParserCtxt'/>
+     <exports symbol='xmlSAXLocator'/>
+     <exports symbol='xmlSAXLocatorPtr'/>
+     <exports symbol='resolveEntitySAXFunc'/>
+     <exports symbol='internalSubsetSAXFunc'/>
+     <exports symbol='externalSubsetSAXFunc'/>
+     <exports symbol='getEntitySAXFunc'/>
+     <exports symbol='getParameterEntitySAXFunc'/>
+     <exports symbol='entityDeclSAXFunc'/>
+     <exports symbol='notationDeclSAXFunc'/>
+     <exports symbol='attributeDeclSAXFunc'/>
+     <exports symbol='elementDeclSAXFunc'/>
+     <exports symbol='unparsedEntityDeclSAXFunc'/>
+     <exports symbol='setDocumentLocatorSAXFunc'/>
+     <exports symbol='startDocumentSAXFunc'/>
+     <exports symbol='endDocumentSAXFunc'/>
+     <exports symbol='startElementSAXFunc'/>
+     <exports symbol='endElementSAXFunc'/>
+     <exports symbol='attributeSAXFunc'/>
+     <exports symbol='referenceSAXFunc'/>
+     <exports symbol='charactersSAXFunc'/>
+     <exports symbol='ignorableWhitespaceSAXFunc'/>
+     <exports symbol='processingInstructionSAXFunc'/>
+     <exports symbol='commentSAXFunc'/>
+     <exports symbol='cdataBlockSAXFunc'/>
+     <exports symbol='warningSAXFunc'/>
+     <exports symbol='errorSAXFunc'/>
+     <exports symbol='fatalErrorSAXFunc'/>
+     <exports symbol='isStandaloneSAXFunc'/>
+     <exports symbol='hasInternalSubsetSAXFunc'/>
+     <exports symbol='hasExternalSubsetSAXFunc'/>
+     <exports symbol='xmlSAXHandler'/>
+     <exports symbol='xmlSAXHandlerPtr'/>
+     <exports symbol='xmlExternalEntityLoader'/>
+     <exports symbol='xmlSubstituteEntitiesDefaultValue'/>
+     <exports symbol='xmlInitParser'/>
+     <exports symbol='xmlCleanupParser'/>
+     <exports symbol='xmlParserInputRead'/>
+     <exports symbol='xmlParserInputGrow'/>
+     <exports symbol='xmlStrdup'/>
+     <exports symbol='xmlStrndup'/>
+     <exports symbol='xmlCharStrndup'/>
+     <exports symbol='xmlCharStrdup'/>
+     <exports symbol='xmlStrsub'/>
+     <exports symbol='xmlStrchr'/>
+     <exports symbol='xmlStrstr'/>
+     <exports symbol='xmlStrcasestr'/>
+     <exports symbol='xmlStrcmp'/>
+     <exports symbol='xmlStrncmp'/>
+     <exports symbol='xmlStrcasecmp'/>
+     <exports symbol='xmlStrncasecmp'/>
+     <exports symbol='xmlStrEqual'/>
+     <exports symbol='xmlStrlen'/>
+     <exports symbol='xmlStrcat'/>
+     <exports symbol='xmlStrncat'/>
+     <exports symbol='xmlParseDoc'/>
+     <exports symbol='xmlParseMemory'/>
+     <exports symbol='xmlParseFile'/>
+     <exports symbol='xmlSubstituteEntitiesDefault'/>
+     <exports symbol='xmlKeepBlanksDefault'/>
+     <exports symbol='xmlStopParser'/>
+     <exports symbol='xmlPedanticParserDefault'/>
+     <exports symbol='xmlLineNumbersDefault'/>
+     <exports symbol='xmlRecoverDoc'/>
+     <exports symbol='xmlRecoverMemory'/>
+     <exports symbol='xmlRecoverFile'/>
+     <exports symbol='xmlParseDocument'/>
+     <exports symbol='xmlParseExtParsedEnt'/>
+     <exports symbol='xmlSAXParseDoc'/>
+     <exports symbol='xmlSAXUserParseFile'/>
+     <exports symbol='xmlSAXUserParseMemory'/>
+     <exports symbol='xmlSAXParseMemory'/>
+     <exports symbol='xmlSAXParseFile'/>
+     <exports symbol='xmlSAXParseFileWithData'/>
+     <exports symbol='xmlSAXParseEntity'/>
+     <exports symbol='xmlParseEntity'/>
+     <exports symbol='xmlParseDTD'/>
+     <exports symbol='xmlSAXParseDTD'/>
+     <exports symbol='xmlIOParseDTD'/>
+     <exports symbol='xmlParseBalancedChunkMemory'/>
+     <exports symbol='xmlParseExternalEntity'/>
+     <exports symbol='xmlParseCtxtExternalEntity'/>
+     <exports symbol='xmlDefaultSAXHandlerInit'/>
+     <exports symbol='htmlDefaultSAXHandlerInit'/>
+     <exports symbol='xmlInitParserCtxt'/>
+     <exports symbol='xmlClearParserCtxt'/>
+     <exports symbol='xmlFreeParserCtxt'/>
+     <exports symbol='xmlSetupParserForBuffer'/>
+     <exports symbol='xmlCreateDocParserCtxt'/>
+     <exports symbol='xmlGetFeaturesList'/>
+     <exports symbol='xmlGetFeature'/>
+     <exports symbol='xmlSetFeature'/>
+     <exports symbol='xmlCreatePushParserCtxt'/>
+     <exports symbol='xmlParseChunk'/>
+     <exports symbol='xmlCreateIOParserCtxt'/>
+     <exports symbol='xmlNewIOInputStream'/>
+     <exports symbol='xmlParserFindNodeInfo'/>
+     <exports symbol='xmlInitNodeInfoSeq'/>
+     <exports symbol='xmlClearNodeInfoSeq'/>
+     <exports symbol='xmlParserFindNodeInfoIndex'/>
+     <exports symbol='xmlParserAddNodeInfo'/>
+     <exports symbol='xmlSetExternalEntityLoader'/>
+     <exports symbol='xmlGetExternalEntityLoader'/>
+     <exports symbol='xmlLoadExternalEntity'/>
+    </file>
+    <file name='xmlerror'>
+     <exports symbol='xmlParserErrors'/>
+     <exports symbol='xmlGenericErrorFunc'/>
+     <exports symbol='xmlSetGenericErrorFunc'/>
+     <exports symbol='initGenericErrorDefaultFunc'/>
+     <exports symbol='xmlParserError'/>
+     <exports symbol='xmlParserWarning'/>
+     <exports symbol='xmlParserValidityError'/>
+     <exports symbol='xmlParserValidityWarning'/>
+     <exports symbol='xmlParserPrintFileInfo'/>
+     <exports symbol='xmlParserPrintFileContext'/>
+    </file>
+    <file name='encoding'>
+     <exports symbol='xmlCharEncoding'/>
+     <exports symbol='xmlCharEncodingInputFunc'/>
+     <exports symbol='xmlCharEncodingOutputFunc'/>
+     <exports symbol='xmlCharEncodingHandler'/>
+     <exports symbol='xmlCharEncodingHandlerPtr'/>
+     <exports symbol='xmlInitCharEncodingHandlers'/>
+     <exports symbol='xmlCleanupCharEncodingHandlers'/>
+     <exports symbol='xmlRegisterCharEncodingHandler'/>
+     <exports symbol='xmlGetCharEncodingHandler'/>
+     <exports symbol='xmlFindCharEncodingHandler'/>
+     <exports symbol='xmlAddEncodingAlias'/>
+     <exports symbol='xmlDelEncodingAlias'/>
+     <exports symbol='xmlGetEncodingAlias'/>
+     <exports symbol='xmlCleanupEncodingAliases'/>
+     <exports symbol='xmlParseCharEncoding'/>
+     <exports symbol='xmlGetCharEncodingName'/>
+     <exports symbol='xmlDetectCharEncoding'/>
+     <exports symbol='xmlCharEncOutFunc'/>
+     <exports symbol='xmlCharEncInFunc'/>
+     <exports symbol='xmlCharEncFirstLine'/>
+     <exports symbol='xmlCharEncCloseFunc'/>
+     <exports symbol='UTF8Toisolat1'/>
+     <exports symbol='isolat1ToUTF8'/>
+     <exports symbol='xmlCheckUTF8'/>
+     <exports symbol='xmlUTF8Strsize'/>
+     <exports symbol='xmlUTF8Strndup'/>
+     <exports symbol='xmlUTF8Strpos'/>
+     <exports symbol='xmlUTF8Strloc'/>
+     <exports symbol='xmlUTF8Strsub'/>
+     <exports symbol='xmlUTF8Strlen'/>
+    </file>
+    <file name='hash'>
+     <exports symbol='xmlHashTable'/>
+     <exports symbol='xmlHashTablePtr'/>
+     <exports symbol='xmlHashDeallocator'/>
+     <exports symbol='xmlHashCopier'/>
+     <exports symbol='xmlHashScanner'/>
+     <exports symbol='xmlHashScannerFull'/>
+     <exports symbol='xmlHashCreate'/>
+     <exports symbol='xmlHashFree'/>
+     <exports symbol='xmlHashAddEntry'/>
+     <exports symbol='xmlHashUpdateEntry'/>
+     <exports symbol='xmlHashAddEntry2'/>
+     <exports symbol='xmlHashUpdateEntry2'/>
+     <exports symbol='xmlHashAddEntry3'/>
+     <exports symbol='xmlHashUpdateEntry3'/>
+     <exports symbol='xmlHashRemoveEntry'/>
+     <exports symbol='xmlHashRemoveEntry2'/>
+     <exports symbol='xmlHashRemoveEntry3'/>
+     <exports symbol='xmlHashLookup'/>
+     <exports symbol='xmlHashLookup2'/>
+     <exports symbol='xmlHashLookup3'/>
+     <exports symbol='xmlHashCopy'/>
+     <exports symbol='xmlHashSize'/>
+     <exports symbol='xmlHashScan'/>
+     <exports symbol='xmlHashScan3'/>
+     <exports symbol='xmlHashScanFull'/>
+     <exports symbol='xmlHashScanFull3'/>
+    </file>
+    <file name='xmlIO'>
+     <exports symbol='xmlInputMatchCallback'/>
+     <exports symbol='xmlInputOpenCallback'/>
+     <exports symbol='xmlInputReadCallback'/>
+     <exports symbol='xmlInputCloseCallback'/>
+     <exports symbol='xmlParserInputBuffer'/>
+     <exports symbol='xmlOutputMatchCallback'/>
+     <exports symbol='xmlOutputOpenCallback'/>
+     <exports symbol='xmlOutputWriteCallback'/>
+     <exports symbol='xmlOutputCloseCallback'/>
+     <exports symbol='xmlOutputBuffer'/>
+     <exports symbol='xmlCleanupInputCallbacks'/>
+     <exports symbol='xmlCleanupOutputCallbacks'/>
+     <exports symbol='xmlRegisterDefaultInputCallbacks'/>
+     <exports symbol='xmlAllocParserInputBuffer'/>
+     <exports symbol='xmlParserInputBufferCreateFname'/>
+     <exports symbol='xmlParserInputBufferCreateFilename'/>
+     <exports symbol='xmlParserInputBufferCreateFile'/>
+     <exports symbol='xmlParserInputBufferCreateFd'/>
+     <exports symbol='xmlParserInputBufferCreateMem'/>
+     <exports symbol='xmlParserInputBufferCreateIO'/>
+     <exports symbol='xmlParserInputBufferRead'/>
+     <exports symbol='xmlParserInputBufferGrow'/>
+     <exports symbol='xmlParserInputBufferPush'/>
+     <exports symbol='xmlFreeParserInputBuffer'/>
+     <exports symbol='xmlParserGetDirectory'/>
+     <exports symbol='xmlRegisterInputCallbacks'/>
+     <exports symbol='xmlRegisterDefaultOutputCallbacks'/>
+     <exports symbol='xmlAllocOutputBuffer'/>
+     <exports symbol='xmlOutputBufferCreateFilename'/>
+     <exports symbol='xmlOutputBufferCreateFile'/>
+     <exports symbol='xmlOutputBufferCreateFd'/>
+     <exports symbol='xmlOutputBufferCreateIO'/>
+     <exports symbol='xmlOutputBufferWrite'/>
+     <exports symbol='xmlOutputBufferWriteString'/>
+     <exports symbol='xmlOutputBufferFlush'/>
+     <exports symbol='xmlOutputBufferClose'/>
+     <exports symbol='xmlRegisterOutputCallbacks'/>
+     <exports symbol='xmlIOHTTPOpenW'/>
+     <exports symbol='xmlRegisterHTTPPostCallbacks'/>
+     <exports symbol='xmlNoNetExternalEntityLoader'/>
+    </file>
+    <file name='xpath'>
+     <exports symbol='xmlXPathContext'/>
+     <exports symbol='xmlXPathContextPtr'/>
+     <exports symbol='xmlXPathParserContext'/>
+     <exports symbol='xmlXPathParserContextPtr'/>
+     <exports symbol='xmlXPathError'/>
+     <exports symbol='xmlNodeSet'/>
+     <exports symbol='xmlNodeSetPtr'/>
+     <exports symbol='xmlXPathObjectType'/>
+     <exports symbol='xmlXPathObject'/>
+     <exports symbol='xmlXPathObjectPtr'/>
+     <exports symbol='xmlXPathConvertFunc'/>
+     <exports symbol='xmlXPathType'/>
+     <exports symbol='xmlXPathTypePtr'/>
+     <exports symbol='xmlXPathVariable'/>
+     <exports symbol='xmlXPathVariablePtr'/>
+     <exports symbol='xmlXPathEvalFunc'/>
+     <exports symbol='xmlXPathFunct'/>
+     <exports symbol='xmlXPathFuncPtr'/>
+     <exports symbol='xmlXPathAxisFunc'/>
+     <exports symbol='xmlXPathAxis'/>
+     <exports symbol='xmlXPathAxisPtr'/>
+     <exports symbol='xmlXPathCompExpr'/>
+     <exports symbol='xmlXPathCompExprPtr'/>
+     <exports symbol='xmlXPathFunction'/>
+     <exports symbol='xmlXPathIsNaN'/>
+     <exports symbol='xmlXPathIsInf'/>
+     <exports symbol='xmlXPathNodeSetGetLength'/>
+     <exports symbol='xmlXPathNodeSetItem'/>
+     <exports symbol='xmlXPathNodeSetIsEmpty'/>
+     <exports symbol='xmlXPathFreeObject'/>
+     <exports symbol='xmlXPathNodeSetCreate'/>
+     <exports symbol='xmlXPathFreeNodeSetList'/>
+     <exports symbol='xmlXPathFreeNodeSet'/>
+     <exports symbol='xmlXPathObjectCopy'/>
+     <exports symbol='xmlXPathCmpNodes'/>
+     <exports symbol='xmlXPathCastNumberToBoolean'/>
+     <exports symbol='xmlXPathCastStringToBoolean'/>
+     <exports symbol='xmlXPathCastNodeSetToBoolean'/>
+     <exports symbol='xmlXPathCastToBoolean'/>
+     <exports symbol='xmlXPathCastBooleanToNumber'/>
+     <exports symbol='xmlXPathCastStringToNumber'/>
+     <exports symbol='xmlXPathCastNodeToNumber'/>
+     <exports symbol='xmlXPathCastNodeSetToNumber'/>
+     <exports symbol='xmlXPathCastToNumber'/>
+     <exports symbol='xmlXPathCastBooleanToString'/>
+     <exports symbol='xmlXPathCastNumberToString'/>
+     <exports symbol='xmlXPathCastNodeToString'/>
+     <exports symbol='xmlXPathCastNodeSetToString'/>
+     <exports symbol='xmlXPathCastToString'/>
+     <exports symbol='xmlXPathConvertBoolean'/>
+     <exports symbol='xmlXPathConvertNumber'/>
+     <exports symbol='xmlXPathConvertString'/>
+     <exports symbol='xmlXPathInit'/>
+     <exports symbol='xmlXPathNewContext'/>
+     <exports symbol='xmlXPathFreeContext'/>
+     <exports symbol='xmlXPathEval'/>
+     <exports symbol='xmlXPathEvalExpression'/>
+     <exports symbol='xmlXPathEvalPredicate'/>
+     <exports symbol='xmlXPathCompile'/>
+     <exports symbol='xmlXPathCompiledEval'/>
+     <exports symbol='xmlXPathFreeCompExpr'/>
+    </file>
+  </files>
+  <symbols>
+    <macro name='ATTRIBUTE_UNUSED' file='xmlversion'/>
+    <macro name='BAD_CAST' file='tree'/>
+    <macro name='BASE_BUFFER_SIZE' file='tree'/>
+    <macro name='CAST_TO_BOOLEAN' file='xpathInternals'/>
+    <macro name='CAST_TO_NUMBER' file='xpathInternals'/>
+    <macro name='CAST_TO_STRING' file='xpathInternals'/>
+    <macro name='CHECK_ARITY' file='xpathInternals'/>
+    <macro name='CHECK_ERROR' file='xpathInternals'/>
+    <macro name='CHECK_ERROR0' file='xpathInternals'/>
+    <macro name='CHECK_TYPE' file='xpathInternals'/>
+    <macro name='CHECK_TYPE0' file='xpathInternals'/>
+    <macro name='DEBUG_MEMORY' file='xmlmemory'/>
+    <macro name='DEBUG_MEMORY_LOCATION' file='xmlversion'/>
+    <macro name='HTML_COMMENT_NODE' file='HTMLtree'/>
+    <macro name='HTML_ENTITY_REF_NODE' file='HTMLtree'/>
+    <macro name='HTML_PI_NODE' file='HTMLtree'/>
+    <macro name='HTML_PRESERVE_NODE' file='HTMLtree'/>
+    <macro name='HTML_TEXT_NODE' file='HTMLtree'/>
+    <macro name='INPUT_CHUNK' file='parserInternals'/>
+    <macro name='IS_BASECHAR' file='parserInternals'/>
+    <macro name='IS_BLANK' file='parserInternals'/>
+    <macro name='IS_CHAR' file='parserInternals'/>
+    <macro name='IS_COMBINING' file='parserInternals'/>
+    <macro name='IS_DIGIT' file='parserInternals'/>
+    <macro name='IS_EXTENDER' file='parserInternals'/>
+    <macro name='IS_IDEOGRAPHIC' file='parserInternals'/>
+    <macro name='IS_LETTER' file='parserInternals'/>
+    <macro name='IS_PUBIDCHAR' file='parserInternals'/>
+    <macro name='LIBXML_CATALOG_ENABLED' file='xmlversion'/>
+    <macro name='LIBXML_DEBUG_ENABLED' file='xmlversion'/>
+    <macro name='LIBXML_DLL_IMPORT' file='xmlversion'/>
+    <macro name='LIBXML_DOCB_ENABLED' file='xmlversion'/>
+    <macro name='LIBXML_DOTTED_VERSION' file='xmlversion'/>
+    <macro name='LIBXML_FTP_ENABLED' file='xmlversion'/>
+    <macro name='LIBXML_HTML_ENABLED' file='xmlversion'/>
+    <macro name='LIBXML_HTTP_ENABLED' file='xmlversion'/>
+    <macro name='LIBXML_ICONV_ENABLED' file='xmlversion'/>
+    <macro name='LIBXML_TEST_VERSION' file='xmlversion'/>
+    <macro name='LIBXML_THREAD_ENABLED' file='xmlversion'/>
+    <macro name='LIBXML_VERSION' file='xmlversion'/>
+    <macro name='LIBXML_VERSION_STRING' file='xmlversion'/>
+    <macro name='LIBXML_XINCLUDE_ENABLED' file='xmlversion'/>
+    <macro name='LIBXML_XPATH_ENABLED' file='xmlversion'/>
+    <macro name='LIBXML_XPTR_ENABLED' file='xmlversion'/>
+    <macro name='MEM_LIST' file='xmlmemory'/>
+    <macro name='MOVETO_ENDTAG' file='parserInternals'/>
+    <macro name='MOVETO_STARTTAG' file='parserInternals'/>
+    <macro name='SKIP_EOL' file='parserInternals'/>
+    <function name='UTF8ToHtml' file='HTMLparser'>
+      <return type='int'/>
+      <arg name='out' type='unsigned char *'/>
+      <arg name='outlen' type='int *'/>
+      <arg name='in' type='const unsigned char *'/>
+      <arg name='inlen' type='int *'/>
+    </function>
+    <function name='UTF8Toisolat1' file='encoding'>
+      <return type='int'/>
+      <arg name='out' type='unsigned char *'/>
+      <arg name='outlen' type='int *'/>
+      <arg name='in' type='const unsigned char *'/>
+      <arg name='inlen' type='int *'/>
+    </function>
+    <macro name='WITHOUT_TRIO' file='xmlversion'/>
+    <macro name='WITH_TRIO' file='xmlversion'/>
+    <const name='XML_ATTRIBUTE_CDATA' file='tree'/>
+    <const name='XML_ATTRIBUTE_DECL' file='tree'/>
+    <const name='XML_ATTRIBUTE_ENTITIES' file='tree'/>
+    <const name='XML_ATTRIBUTE_ENTITY' file='tree'/>
+    <const name='XML_ATTRIBUTE_ENUMERATION' file='tree'/>
+    <const name='XML_ATTRIBUTE_FIXED' file='tree'/>
+    <const name='XML_ATTRIBUTE_ID' file='tree'/>
+    <const name='XML_ATTRIBUTE_IDREF' file='tree'/>
+    <const name='XML_ATTRIBUTE_IDREFS' file='tree'/>
+    <const name='XML_ATTRIBUTE_IMPLIED' file='tree'/>
+    <const name='XML_ATTRIBUTE_NMTOKEN' file='tree'/>
+    <const name='XML_ATTRIBUTE_NMTOKENS' file='tree'/>
+    <const name='XML_ATTRIBUTE_NODE' file='tree'/>
+    <const name='XML_ATTRIBUTE_NONE' file='tree'/>
+    <const name='XML_ATTRIBUTE_NOTATION' file='tree'/>
+    <const name='XML_ATTRIBUTE_REQUIRED' file='tree'/>
+    <const name='XML_BUFFER_ALLOC_DOUBLEIT' file='tree'/>
+    <const name='XML_BUFFER_ALLOC_EXACT' file='tree'/>
+    <macro name='XML_CATALOGS_NAMESPACE' file='catalog'/>
+    <macro name='XML_CATALOG_PI' file='catalog'/>
+    <const name='XML_CATA_ALLOW_ALL' file='catalog'/>
+    <const name='XML_CATA_ALLOW_DOCUMENT' file='catalog'/>
+    <const name='XML_CATA_ALLOW_GLOBAL' file='catalog'/>
+    <const name='XML_CATA_ALLOW_NONE' file='catalog'/>
+    <const name='XML_CATA_PREFER_NONE' file='catalog'/>
+    <const name='XML_CATA_PREFER_PUBLIC' file='catalog'/>
+    <const name='XML_CATA_PREFER_SYSTEM' file='catalog'/>
+    <const name='XML_CDATA_SECTION_NODE' file='tree'/>
+    <const name='XML_CHAR_ENCODING_2022_JP' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_8859_1' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_8859_2' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_8859_3' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_8859_4' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_8859_5' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_8859_6' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_8859_7' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_8859_8' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_8859_9' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_ASCII' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_EBCDIC' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_ERROR' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_EUC_JP' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_NONE' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_SHIFT_JIS' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_UCS2' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_UCS4BE' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_UCS4LE' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_UCS4_2143' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_UCS4_3412' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_UTF16BE' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_UTF16LE' file='encoding'/>
+    <const name='XML_CHAR_ENCODING_UTF8' file='encoding'/>
+    <const name='XML_COMMENT_NODE' file='tree'/>
+    <macro name='XML_COMPLETE_ATTRS' file='parser'/>
+    <macro name='XML_DEFAULT_VERSION' file='parser'/>
+    <macro name='XML_DETECT_IDS' file='parser'/>
+    <const name='XML_DOCB_DOCUMENT_NODE' file='tree'/>
+    <const name='XML_DOCUMENT_FRAG_NODE' file='tree'/>
+    <const name='XML_DOCUMENT_NODE' file='tree'/>
+    <const name='XML_DOCUMENT_TYPE_NODE' file='tree'/>
+    <const name='XML_DTD_NODE' file='tree'/>
+    <const name='XML_ELEMENT_CONTENT_ELEMENT' file='tree'/>
+    <const name='XML_ELEMENT_CONTENT_MULT' file='tree'/>
+    <const name='XML_ELEMENT_CONTENT_ONCE' file='tree'/>
+    <const name='XML_ELEMENT_CONTENT_OPT' file='tree'/>
+    <const name='XML_ELEMENT_CONTENT_OR' file='tree'/>
+    <const name='XML_ELEMENT_CONTENT_PCDATA' file='tree'/>
+    <const name='XML_ELEMENT_CONTENT_PLUS' file='tree'/>
+    <const name='XML_ELEMENT_CONTENT_SEQ' file='tree'/>
+    <const name='XML_ELEMENT_DECL' file='tree'/>
+    <const name='XML_ELEMENT_NODE' file='tree'/>
+    <const name='XML_ELEMENT_TYPE_ANY' file='tree'/>
+    <const name='XML_ELEMENT_TYPE_ELEMENT' file='tree'/>
+    <const name='XML_ELEMENT_TYPE_EMPTY' file='tree'/>
+    <const name='XML_ELEMENT_TYPE_MIXED' file='tree'/>
+    <const name='XML_ELEMENT_TYPE_UNDEFINED' file='tree'/>
+    <const name='XML_ENTITY_DECL' file='tree'/>
+    <const name='XML_ENTITY_NODE' file='tree'/>
+    <const name='XML_ENTITY_REF_NODE' file='tree'/>
+    <const name='XML_ERR_ATTLIST_NOT_FINISHED' file='xmlerror'/>
+    <const name='XML_ERR_ATTLIST_NOT_STARTED' file='xmlerror'/>
+    <const name='XML_ERR_ATTRIBUTE_NOT_FINISHED' file='xmlerror'/>
+    <const name='XML_ERR_ATTRIBUTE_NOT_STARTED' file='xmlerror'/>
+    <const name='XML_ERR_ATTRIBUTE_REDEFINED' file='xmlerror'/>
+    <const name='XML_ERR_ATTRIBUTE_WITHOUT_VALUE' file='xmlerror'/>
+    <const name='XML_ERR_CDATA_NOT_FINISHED' file='xmlerror'/>
+    <const name='XML_ERR_CHARREF_AT_EOF' file='xmlerror'/>
+    <const name='XML_ERR_CHARREF_IN_DTD' file='xmlerror'/>
+    <const name='XML_ERR_CHARREF_IN_EPILOG' file='xmlerror'/>
+    <const name='XML_ERR_CHARREF_IN_PROLOG' file='xmlerror'/>
+    <const name='XML_ERR_COMMENT_NOT_FINISHED' file='xmlerror'/>
+    <const name='XML_ERR_CONDSEC_INVALID' file='xmlerror'/>
+    <const name='XML_ERR_CONDSEC_NOT_FINISHED' file='xmlerror'/>
+    <const name='XML_ERR_CONDSEC_NOT_STARTED' file='xmlerror'/>
+    <const name='XML_ERR_DOCTYPE_NOT_FINISHED' file='xmlerror'/>
+    <const name='XML_ERR_DOCUMENT_EMPTY' file='xmlerror'/>
+    <const name='XML_ERR_DOCUMENT_END' file='xmlerror'/>
+    <const name='XML_ERR_DOCUMENT_START' file='xmlerror'/>
+    <const name='XML_ERR_ELEMCONTENT_NOT_FINISHED' file='xmlerror'/>
+    <const name='XML_ERR_ELEMCONTENT_NOT_STARTED' file='xmlerror'/>
+    <const name='XML_ERR_ENCODING_NAME' file='xmlerror'/>
+    <const name='XML_ERR_ENTITYREF_AT_EOF' file='xmlerror'/>
+    <const name='XML_ERR_ENTITYREF_IN_DTD' file='xmlerror'/>
+    <const name='XML_ERR_ENTITYREF_IN_EPILOG' file='xmlerror'/>
+    <const name='XML_ERR_ENTITYREF_IN_PROLOG' file='xmlerror'/>
+    <const name='XML_ERR_ENTITYREF_NO_NAME' file='xmlerror'/>
+    <const name='XML_ERR_ENTITYREF_SEMICOL_MISSING' file='xmlerror'/>
+    <const name='XML_ERR_ENTITY_BOUNDARY' file='xmlerror'/>
+    <const name='XML_ERR_ENTITY_CHAR_ERROR' file='xmlerror'/>
+    <const name='XML_ERR_ENTITY_IS_EXTERNAL' file='xmlerror'/>
+    <const name='XML_ERR_ENTITY_IS_PARAMETER' file='xmlerror'/>
+    <const name='XML_ERR_ENTITY_LOOP' file='xmlerror'/>
+    <const name='XML_ERR_ENTITY_NOT_FINISHED' file='xmlerror'/>
+    <const name='XML_ERR_ENTITY_NOT_STARTED' file='xmlerror'/>
+    <const name='XML_ERR_ENTITY_PE_INTERNAL' file='xmlerror'/>
+    <const name='XML_ERR_EQUAL_REQUIRED' file='xmlerror'/>
+    <const name='XML_ERR_EXTRA_CONTENT' file='xmlerror'/>
+    <const name='XML_ERR_EXT_ENTITY_STANDALONE' file='xmlerror'/>
+    <const name='XML_ERR_EXT_SUBSET_NOT_FINISHED' file='xmlerror'/>
+    <const name='XML_ERR_GT_REQUIRED' file='xmlerror'/>
+    <const name='XML_ERR_HYPHEN_IN_COMMENT' file='xmlerror'/>
+    <const name='XML_ERR_INTERNAL_ERROR' file='xmlerror'/>
+    <const name='XML_ERR_INVALID_CHAR' file='xmlerror'/>
+    <const name='XML_ERR_INVALID_CHARREF' file='xmlerror'/>
+    <const name='XML_ERR_INVALID_DEC_CHARREF' file='xmlerror'/>
+    <const name='XML_ERR_INVALID_ENCODING' file='xmlerror'/>
+    <const name='XML_ERR_INVALID_HEX_CHARREF' file='xmlerror'/>
+    <const name='XML_ERR_INVALID_URI' file='xmlerror'/>
+    <const name='XML_ERR_LITERAL_NOT_FINISHED' file='xmlerror'/>
+    <const name='XML_ERR_LITERAL_NOT_STARTED' file='xmlerror'/>
+    <const name='XML_ERR_LTSLASH_REQUIRED' file='xmlerror'/>
+    <const name='XML_ERR_LT_IN_ATTRIBUTE' file='xmlerror'/>
+    <const name='XML_ERR_LT_REQUIRED' file='xmlerror'/>
+    <const name='XML_ERR_MISPLACED_CDATA_END' file='xmlerror'/>
+    <const name='XML_ERR_MIXED_NOT_FINISHED' file='xmlerror'/>
+    <const name='XML_ERR_MIXED_NOT_STARTED' file='xmlerror'/>
+    <const name='XML_ERR_NAME_REQUIRED' file='xmlerror'/>
+    <const name='XML_ERR_NMTOKEN_REQUIRED' file='xmlerror'/>
+    <const name='XML_ERR_NOTATION_NOT_FINISHED' file='xmlerror'/>
+    <const name='XML_ERR_NOTATION_NOT_STARTED' file='xmlerror'/>
+    <const name='XML_ERR_NOT_WELL_BALANCED' file='xmlerror'/>
+    <const name='XML_ERR_NO_DTD' file='xmlerror'/>
+    <const name='XML_ERR_NO_MEMORY' file='xmlerror'/>
+    <const name='XML_ERR_NS_DECL_ERROR' file='xmlerror'/>
+    <const name='XML_ERR_OK' file='xmlerror'/>
+    <const name='XML_ERR_PCDATA_REQUIRED' file='xmlerror'/>
+    <const name='XML_ERR_PEREF_AT_EOF' file='xmlerror'/>
+    <const name='XML_ERR_PEREF_IN_EPILOG' file='xmlerror'/>
+    <const name='XML_ERR_PEREF_IN_INT_SUBSET' file='xmlerror'/>
+    <const name='XML_ERR_PEREF_IN_PROLOG' file='xmlerror'/>
+    <const name='XML_ERR_PEREF_NO_NAME' file='xmlerror'/>
+    <const name='XML_ERR_PEREF_SEMICOL_MISSING' file='xmlerror'/>
+    <const name='XML_ERR_PI_NOT_FINISHED' file='xmlerror'/>
+    <const name='XML_ERR_PI_NOT_STARTED' file='xmlerror'/>
+    <const name='XML_ERR_PUBID_REQUIRED' file='xmlerror'/>
+    <const name='XML_ERR_RESERVED_XML_NAME' file='xmlerror'/>
+    <const name='XML_ERR_SEPARATOR_REQUIRED' file='xmlerror'/>
+    <const name='XML_ERR_SPACE_REQUIRED' file='xmlerror'/>
+    <const name='XML_ERR_STANDALONE_VALUE' file='xmlerror'/>
+    <const name='XML_ERR_STRING_NOT_CLOSED' file='xmlerror'/>
+    <const name='XML_ERR_STRING_NOT_STARTED' file='xmlerror'/>
+    <const name='XML_ERR_TAG_NAME_MISMATCH' file='xmlerror'/>
+    <const name='XML_ERR_TAG_NOT_FINISHED' file='xmlerror'/>
+    <const name='XML_ERR_UNDECLARED_ENTITY' file='xmlerror'/>
+    <const name='XML_ERR_UNKNOWN_ENCODING' file='xmlerror'/>
+    <const name='XML_ERR_UNPARSED_ENTITY' file='xmlerror'/>
+    <const name='XML_ERR_UNSUPPORTED_ENCODING' file='xmlerror'/>
+    <const name='XML_ERR_URI_FRAGMENT' file='xmlerror'/>
+    <const name='XML_ERR_URI_REQUIRED' file='xmlerror'/>
+    <const name='XML_ERR_VALUE_REQUIRED' file='xmlerror'/>
+    <const name='XML_ERR_XMLDECL_NOT_FINISHED' file='xmlerror'/>
+    <const name='XML_ERR_XMLDECL_NOT_STARTED' file='xmlerror'/>
+    <const name='XML_EXTERNAL_GENERAL_PARSED_ENTITY' file='entities'/>
+    <const name='XML_EXTERNAL_GENERAL_UNPARSED_ENTITY' file='entities'/>
+    <const name='XML_EXTERNAL_PARAMETER_ENTITY' file='entities'/>
+    <macro name='XML_GET_CONTENT' file='tree'/>
+    <macro name='XML_GET_LINE' file='tree'/>
+    <const name='XML_HTML_DOCUMENT_NODE' file='tree'/>
+    <const name='XML_INTERNAL_GENERAL_ENTITY' file='entities'/>
+    <const name='XML_INTERNAL_PARAMETER_ENTITY' file='entities'/>
+    <const name='XML_INTERNAL_PREDEFINED_ENTITY' file='entities'/>
+    <macro name='XML_LOCAL_NAMESPACE' file='tree'/>
+    <macro name='XML_MAX_NAMELEN' file='parserInternals'/>
+    <const name='XML_NAMESPACE_DECL' file='tree'/>
+    <const name='XML_NOTATION_NODE' file='tree'/>
+    <const name='XML_PARSER_ATTRIBUTE_VALUE' file='parser'/>
+    <const name='XML_PARSER_CDATA_SECTION' file='parser'/>
+    <const name='XML_PARSER_COMMENT' file='parser'/>
+    <const name='XML_PARSER_CONTENT' file='parser'/>
+    <const name='XML_PARSER_DTD' file='parser'/>
+    <const name='XML_PARSER_END_TAG' file='parser'/>
+    <const name='XML_PARSER_ENTITY_DECL' file='parser'/>
+    <const name='XML_PARSER_ENTITY_VALUE' file='parser'/>
+    <const name='XML_PARSER_EOF' file='parser'/>
+    <const name='XML_PARSER_EPILOG' file='parser'/>
+    <const name='XML_PARSER_IGNORE' file='parser'/>
+    <const name='XML_PARSER_MISC' file='parser'/>
+    <const name='XML_PARSER_PI' file='parser'/>
+    <const name='XML_PARSER_PROLOG' file='parser'/>
+    <const name='XML_PARSER_START' file='parser'/>
+    <const name='XML_PARSER_START_TAG' file='parser'/>
+    <const name='XML_PARSER_SYSTEM_LITERAL' file='parser'/>
+    <const name='XML_PI_NODE' file='tree'/>
+    <macro name='XML_SUBSTITUTE_BOTH' file='parserInternals'/>
+    <macro name='XML_SUBSTITUTE_NONE' file='parserInternals'/>
+    <macro name='XML_SUBSTITUTE_PEREF' file='parserInternals'/>
+    <macro name='XML_SUBSTITUTE_REF' file='parserInternals'/>
+    <const name='XML_TEXT_NODE' file='tree'/>
+    <const name='XML_WAR_CATALOG_PI' file='xmlerror'/>
+    <const name='XML_WAR_UNDECLARED_ENTITY' file='xmlerror'/>
+    <const name='XML_XINCLUDE_END' file='tree'/>
+    <const name='XML_XINCLUDE_START' file='tree'/>
+    <macro name='XML_XML_NAMESPACE' file='tree'/>
+    <const name='XPATH_BOOLEAN' file='xpath'/>
+    <const name='XPATH_ENCODING_ERROR' file='xpath'/>
+    <const name='XPATH_EXPRESSION_OK' file='xpath'/>
+    <const name='XPATH_EXPR_ERROR' file='xpath'/>
+    <const name='XPATH_INVALID_ARITY' file='xpath'/>
+    <const name='XPATH_INVALID_CHAR_ERROR' file='xpath'/>
+    <const name='XPATH_INVALID_CTXT_POSITION' file='xpath'/>
+    <const name='XPATH_INVALID_CTXT_SIZE' file='xpath'/>
+    <const name='XPATH_INVALID_OPERAND' file='xpath'/>
+    <const name='XPATH_INVALID_PREDICATE_ERROR' file='xpath'/>
+    <const name='XPATH_INVALID_TYPE' file='xpath'/>
+    <const name='XPATH_LOCATIONSET' file='xpath'/>
+    <const name='XPATH_MEMORY_ERROR' file='xpath'/>
+    <const name='XPATH_NODESET' file='xpath'/>
+    <const name='XPATH_NUMBER' file='xpath'/>
+    <const name='XPATH_NUMBER_ERROR' file='xpath'/>
+    <const name='XPATH_POINT' file='xpath'/>
+    <const name='XPATH_RANGE' file='xpath'/>
+    <const name='XPATH_START_LITERAL_ERROR' file='xpath'/>
+    <const name='XPATH_STRING' file='xpath'/>
+    <const name='XPATH_UNCLOSED_ERROR' file='xpath'/>
+    <const name='XPATH_UNDEFINED' file='xpath'/>
+    <const name='XPATH_UNDEF_PREFIX_ERROR' file='xpath'/>
+    <const name='XPATH_UNDEF_VARIABLE_ERROR' file='xpath'/>
+    <const name='XPATH_UNFINISHED_LITERAL_ERROR' file='xpath'/>
+    <const name='XPATH_UNKNOWN_FUNC_ERROR' file='xpath'/>
+    <const name='XPATH_USERS' file='xpath'/>
+    <const name='XPATH_VARIABLE_REF_ERROR' file='xpath'/>
+    <const name='XPATH_XSLT_TREE' file='xpath'/>
+    <const name='XPTR_RESOURCE_ERROR' file='xpath'/>
+    <const name='XPTR_SUB_RESOURCE_ERROR' file='xpath'/>
+    <const name='XPTR_SYNTAX_ERROR' file='xpath'/>
+    <macro name='XP_ERROR' file='xpathInternals'/>
+    <macro name='XP_ERROR0' file='xpathInternals'/>
+    <function name='attribute' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='fullname' type='const xmlChar *'/>
+      <arg name='value' type='const xmlChar *'/>
+    </function>
+    <function name='attributeDecl' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='elem' type='const xmlChar *'/>
+      <arg name='fullname' type='const xmlChar *'/>
+      <arg name='type' type='int'/>
+      <arg name='def' type='int'/>
+      <arg name='defaultValue' type='const xmlChar *'/>
+      <arg name='tree' type='xmlEnumerationPtr'/>
+    </function>
+    <function name='cdataBlock' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='value' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='characters' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='ch' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='checkNamespace' file='SAX'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='nameSpace' type='xmlChar *'/>
+    </function>
+    <function name='comment' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='value' type='const xmlChar *'/>
+    </function>
+    <function name='docbCreateFileParserCtxt' file='DOCBparser'>
+      <return type='docbParserCtxtPtr'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='encoding' type='const char *'/>
+    </function>
+    <function name='docbCreatePushParserCtxt' file='DOCBparser'>
+      <return type='docbParserCtxtPtr'/>
+      <arg name='sax' type='docbSAXHandlerPtr'/>
+      <arg name='data' type='void *user_'/>
+      <arg name='chunk' type='const char *'/>
+      <arg name='size' type='int'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='enc' type='xmlCharEncoding'/>
+    </function>
+    <macro name='docbDefaultSAXHandler' file='globals'/>
+    <function name='docbDefaultSAXHandlerInit' file='SAX'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <typedef name='docbDocPtr' file='DOCBparser'/>
+    <function name='docbEncodeEntities' file='DOCBparser'>
+      <return type='int'/>
+      <arg name='out' type='unsigned char *'/>
+      <arg name='outlen' type='int *'/>
+      <arg name='in' type='const unsigned char *'/>
+      <arg name='inlen' type='int *'/>
+      <arg name='quoteChar' type='int'/>
+    </function>
+    <function name='docbFreeParserCtxt' file='DOCBparser'>
+      <return type='void'/>
+      <arg name='ctxt' type='docbParserCtxtPtr'/>
+    </function>
+    <typedef name='docbNodePtr' file='DOCBparser'/>
+    <function name='docbParseChunk' file='DOCBparser'>
+      <return type='int'/>
+      <arg name='ctxt' type='docbParserCtxtPtr'/>
+      <arg name='chunk' type='const char *'/>
+      <arg name='size' type='int'/>
+      <arg name='terminate' type='int'/>
+    </function>
+    <function name='docbParseDoc' file='DOCBparser'>
+      <return type='docbDocPtr'/>
+      <arg name='cur' type='xmlChar *'/>
+      <arg name='encoding' type='const char *'/>
+    </function>
+    <function name='docbParseDocument' file='DOCBparser'>
+      <return type='int'/>
+      <arg name='ctxt' type='docbParserCtxtPtr'/>
+    </function>
+    <function name='docbParseFile' file='DOCBparser'>
+      <return type='docbDocPtr'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='encoding' type='const char *'/>
+    </function>
+    <typedef name='docbParserCtxt' file='DOCBparser'/>
+    <typedef name='docbParserCtxtPtr' file='DOCBparser'/>
+    <typedef name='docbParserInput' file='DOCBparser'/>
+    <typedef name='docbParserInputPtr' file='DOCBparser'/>
+    <typedef name='docbParserNodeInfo' file='DOCBparser'/>
+    <typedef name='docbSAXHandler' file='DOCBparser'/>
+    <typedef name='docbSAXHandlerPtr' file='DOCBparser'/>
+    <function name='docbSAXParseDoc' file='DOCBparser'>
+      <return type='docbDocPtr'/>
+      <arg name='cur' type='xmlChar *'/>
+      <arg name='encoding' type='const char *'/>
+      <arg name='sax' type='docbSAXHandlerPtr'/>
+      <arg name='userData' type='void *'/>
+    </function>
+    <function name='docbSAXParseFile' file='DOCBparser'>
+      <return type='docbDocPtr'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='encoding' type='const char *'/>
+      <arg name='sax' type='docbSAXHandlerPtr'/>
+      <arg name='userData' type='void *'/>
+    </function>
+    <function name='elementDecl' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='type' type='int'/>
+      <arg name='content' type='xmlElementContentPtr'/>
+    </function>
+    <function name='endDocument' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='endElement' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='entityDecl' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='type' type='int'/>
+      <arg name='publicId' type='const xmlChar *'/>
+      <arg name='systemId' type='const xmlChar *'/>
+      <arg name='content' type='xmlChar *'/>
+    </function>
+    <function name='externalSubset' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='ExternalID' type='const xmlChar *'/>
+      <arg name='SystemID' type='const xmlChar *'/>
+    </function>
+    <function name='getColumnNumber' file='SAX'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='getEntity' file='SAX'>
+      <return type='xmlEntityPtr'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='getLineNumber' file='SAX'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='getNamespace' file='SAX'>
+      <return type='xmlNsPtr'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='getParameterEntity' file='SAX'>
+      <return type='xmlEntityPtr'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='getPublicId' file='SAX'>
+      <return type='const xmlChar *'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='getSystemId' file='SAX'>
+      <return type='const xmlChar *'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='globalNamespace' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='href' type='const xmlChar *'/>
+      <arg name='prefix' type='const xmlChar *'/>
+    </function>
+    <function name='hasExternalSubset' file='SAX'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='hasInternalSubset' file='SAX'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='htmlAutoCloseTag' file='HTMLparser'>
+      <return type='int'/>
+      <arg name='doc' type='htmlDocPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='elem' type='htmlNodePtr'/>
+    </function>
+    <function name='htmlCreateFileParserCtxt' file='parserInternals'>
+      <return type='htmlParserCtxtPtr'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='encoding' type='const char *'/>
+    </function>
+    <function name='htmlCreatePushParserCtxt' file='HTMLparser'>
+      <return type='htmlParserCtxtPtr'/>
+      <arg name='sax' type='htmlSAXHandlerPtr'/>
+      <arg name='data' type='void *user_'/>
+      <arg name='chunk' type='const char *'/>
+      <arg name='size' type='int'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='enc' type='xmlCharEncoding'/>
+    </function>
+    <macro name='htmlDefaultSAXHandler' file='globals'/>
+    <function name='htmlDefaultSAXHandlerInit' file='parser'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='htmlDocContentDumpFormatOutput' file='HTMLtree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlOutputBufferPtr'/>
+      <arg name='cur' type='xmlDocPtr'/>
+      <arg name='encoding' type='const char *'/>
+      <arg name='format' type='int'/>
+    </function>
+    <function name='htmlDocContentDumpOutput' file='HTMLtree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlOutputBufferPtr'/>
+      <arg name='cur' type='xmlDocPtr'/>
+      <arg name='encoding' type='const char *'/>
+    </function>
+    <function name='htmlDocDump' file='HTMLtree'>
+      <return type='int'/>
+      <arg name='f' type='FILE *'/>
+      <arg name='cur' type='xmlDocPtr'/>
+    </function>
+    <function name='htmlDocDumpMemory' file='HTMLtree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlDocPtr'/>
+      <arg name='mem' type='xmlChar **'/>
+      <arg name='size' type='int *'/>
+    </function>
+    <typedef name='htmlDocPtr' file='HTMLparser'/>
+    <struct name='htmlElemDesc' file='HTMLparser'/>
+    <typedef name='htmlElemDescPtr' file='HTMLparser'/>
+    <function name='htmlEncodeEntities' file='HTMLparser'>
+      <return type='int'/>
+      <arg name='out' type='unsigned char *'/>
+      <arg name='outlen' type='int *'/>
+      <arg name='in' type='const unsigned char *'/>
+      <arg name='inlen' type='int *'/>
+      <arg name='quoteChar' type='int'/>
+    </function>
+    <struct name='htmlEntityDesc' file='HTMLparser'/>
+    <typedef name='htmlEntityDescPtr' file='HTMLparser'/>
+    <function name='htmlEntityLookup' file='HTMLparser'>
+      <return type='const htmlEntityDesc *'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='htmlEntityValueLookup' file='HTMLparser'>
+      <return type='const htmlEntityDesc *'/>
+      <arg name='value' type='unsigned int'/>
+    </function>
+    <function name='htmlFreeParserCtxt' file='HTMLparser'>
+      <return type='void'/>
+      <arg name='ctxt' type='htmlParserCtxtPtr'/>
+    </function>
+    <function name='htmlGetMetaEncoding' file='HTMLtree'>
+      <return type='const xmlChar *'/>
+      <arg name='doc' type='htmlDocPtr'/>
+    </function>
+    <function name='htmlHandleOmittedElem' file='HTMLparser'>
+      <return type='int'/>
+      <arg name='val' type='int'/>
+    </function>
+    <function name='htmlInitAutoClose' file='parserInternals'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='htmlIsAutoClosed' file='HTMLparser'>
+      <return type='int'/>
+      <arg name='doc' type='htmlDocPtr'/>
+      <arg name='elem' type='htmlNodePtr'/>
+    </function>
+    <function name='htmlIsScriptAttribute' file='HTMLparser'>
+      <return type='int'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='htmlNewDoc' file='HTMLtree'>
+      <return type='htmlDocPtr'/>
+      <arg name='URI' type='const xmlChar *'/>
+      <arg name='ExternalID' type='const xmlChar *'/>
+    </function>
+    <function name='htmlNewDocNoDtD' file='HTMLtree'>
+      <return type='htmlDocPtr'/>
+      <arg name='URI' type='const xmlChar *'/>
+      <arg name='ExternalID' type='const xmlChar *'/>
+    </function>
+    <function name='htmlNodeDump' file='HTMLtree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='htmlNodeDumpFile' file='HTMLtree'>
+      <return type='void'/>
+      <arg name='out' type='FILE *'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='htmlNodeDumpFileFormat' file='HTMLtree'>
+      <return type='int'/>
+      <arg name='out' type='FILE *'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+      <arg name='encoding' type='const char *'/>
+      <arg name='format' type='int'/>
+    </function>
+    <function name='htmlNodeDumpFormatOutput' file='HTMLtree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlOutputBufferPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+      <arg name='encoding' type='const char *'/>
+      <arg name='format' type='int'/>
+    </function>
+    <typedef name='htmlNodePtr' file='HTMLparser'/>
+    <function name='htmlParseCharRef' file='HTMLparser'>
+      <return type='int'/>
+      <arg name='ctxt' type='htmlParserCtxtPtr'/>
+    </function>
+    <function name='htmlParseChunk' file='HTMLparser'>
+      <return type='int'/>
+      <arg name='ctxt' type='htmlParserCtxtPtr'/>
+      <arg name='chunk' type='const char *'/>
+      <arg name='size' type='int'/>
+      <arg name='terminate' type='int'/>
+    </function>
+    <function name='htmlParseDoc' file='HTMLparser'>
+      <return type='htmlDocPtr'/>
+      <arg name='cur' type='xmlChar *'/>
+      <arg name='encoding' type='const char *'/>
+    </function>
+    <function name='htmlParseElement' file='HTMLparser'>
+      <return type='void'/>
+      <arg name='ctxt' type='htmlParserCtxtPtr'/>
+    </function>
+    <function name='htmlParseEntityRef' file='HTMLparser'>
+      <return type='const htmlEntityDesc *'/>
+      <arg name='ctxt' type='htmlParserCtxtPtr'/>
+      <arg name='str' type='xmlChar **'/>
+    </function>
+    <function name='htmlParseFile' file='HTMLparser'>
+      <return type='htmlDocPtr'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='encoding' type='const char *'/>
+    </function>
+    <typedef name='htmlParserCtxt' file='HTMLparser'/>
+    <typedef name='htmlParserCtxtPtr' file='HTMLparser'/>
+    <typedef name='htmlParserInput' file='HTMLparser'/>
+    <typedef name='htmlParserInputPtr' file='HTMLparser'/>
+    <typedef name='htmlParserNodeInfo' file='HTMLparser'/>
+    <typedef name='htmlSAXHandler' file='HTMLparser'/>
+    <typedef name='htmlSAXHandlerPtr' file='HTMLparser'/>
+    <function name='htmlSAXParseDoc' file='HTMLparser'>
+      <return type='htmlDocPtr'/>
+      <arg name='cur' type='xmlChar *'/>
+      <arg name='encoding' type='const char *'/>
+      <arg name='sax' type='htmlSAXHandlerPtr'/>
+      <arg name='userData' type='void *'/>
+    </function>
+    <function name='htmlSAXParseFile' file='HTMLparser'>
+      <return type='htmlDocPtr'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='encoding' type='const char *'/>
+      <arg name='sax' type='htmlSAXHandlerPtr'/>
+      <arg name='userData' type='void *'/>
+    </function>
+    <function name='htmlSaveFile' file='HTMLtree'>
+      <return type='int'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='cur' type='xmlDocPtr'/>
+    </function>
+    <function name='htmlSaveFileEnc' file='HTMLtree'>
+      <return type='int'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='cur' type='xmlDocPtr'/>
+      <arg name='encoding' type='const char *'/>
+    </function>
+    <function name='htmlSaveFileFormat' file='HTMLtree'>
+      <return type='int'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='cur' type='xmlDocPtr'/>
+      <arg name='encoding' type='const char *'/>
+      <arg name='format' type='int'/>
+    </function>
+    <function name='htmlSetMetaEncoding' file='HTMLtree'>
+      <return type='int'/>
+      <arg name='doc' type='htmlDocPtr'/>
+      <arg name='encoding' type='const xmlChar *'/>
+    </function>
+    <function name='htmlTagLookup' file='HTMLparser'>
+      <return type='const htmlElemDesc *'/>
+      <arg name='tag' type='const xmlChar *'/>
+    </function>
+    <function name='ignorableWhitespace' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='ch' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='initGenericErrorDefaultFunc' file='xmlerror'>
+      <return type='void'/>
+      <arg name='handler' type='xmlGenericErrorFunc *'/>
+    </function>
+    <function name='initdocbDefaultSAXHandler' file='SAX'>
+      <return type='void'/>
+      <arg name='hdlr' type='xmlSAXHandler *'/>
+    </function>
+    <function name='inithtmlDefaultSAXHandler' file='SAX'>
+      <return type='void'/>
+      <arg name='hdlr' type='xmlSAXHandler *'/>
+    </function>
+    <function name='initxmlDefaultSAXHandler' file='SAX'>
+      <return type='void'/>
+      <arg name='hdlr' type='xmlSAXHandler *'/>
+      <arg name='warning' type='int'/>
+    </function>
+    <function name='inputPop' file='parserInternals'>
+      <return type='xmlParserInputPtr'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='inputPush' file='parserInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='value' type='xmlParserInputPtr'/>
+    </function>
+    <function name='internalSubset' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='ExternalID' type='const xmlChar *'/>
+      <arg name='SystemID' type='const xmlChar *'/>
+    </function>
+    <function name='isStandalone' file='SAX'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='isolat1ToUTF8' file='encoding'>
+      <return type='int'/>
+      <arg name='out' type='unsigned char *'/>
+      <arg name='outlen' type='int *'/>
+      <arg name='in' type='const unsigned char *'/>
+      <arg name='inlen' type='int *'/>
+    </function>
+    <function name='namePop' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='namePush' file='parserInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='value' type='xmlChar *'/>
+    </function>
+    <function name='namespaceDecl' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='href' type='const xmlChar *'/>
+      <arg name='prefix' type='const xmlChar *'/>
+    </function>
+    <function name='nodePop' file='parserInternals'>
+      <return type='xmlNodePtr'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='nodePush' file='parserInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='value' type='xmlNodePtr'/>
+    </function>
+    <function name='notationDecl' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='publicId' type='const xmlChar *'/>
+      <arg name='systemId' type='const xmlChar *'/>
+    </function>
+    <macro name='oldXMLWDcompatibility' file='globals'/>
+    <function name='processingInstruction' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='target' type='const xmlChar *'/>
+      <arg name='data' type='const xmlChar *'/>
+    </function>
+    <function name='reference' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='resolveEntity' file='SAX'>
+      <return type='xmlParserInputPtr'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='publicId' type='const xmlChar *'/>
+      <arg name='systemId' type='const xmlChar *'/>
+    </function>
+    <function name='setDocumentLocator' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='loc' type='xmlSAXLocatorPtr'/>
+    </function>
+    <function name='setNamespace' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='startDocument' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='startElement' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='fullname' type='const xmlChar *'/>
+      <arg name='atts' type='const xmlChar **'/>
+    </function>
+    <function name='unparsedEntityDecl' file='SAX'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='publicId' type='const xmlChar *'/>
+      <arg name='systemId' type='const xmlChar *'/>
+      <arg name='notationName' type='const xmlChar *'/>
+    </function>
+    <function name='valuePop' file='xpathInternals'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <function name='valuePush' file='xpathInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='value' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlACatalogAdd' file='catalog'>
+      <return type='int'/>
+      <arg name='catal' type='xmlCatalogPtr'/>
+      <arg name='type' type='const xmlChar *'/>
+      <arg name='orig' type='const xmlChar *'/>
+      <arg name='replace' type='const xmlChar *'/>
+    </function>
+    <function name='xmlACatalogDump' file='catalog'>
+      <return type='void'/>
+      <arg name='catal' type='xmlCatalogPtr'/>
+      <arg name='out' type='FILE *'/>
+    </function>
+    <function name='xmlACatalogRemove' file='catalog'>
+      <return type='int'/>
+      <arg name='catal' type='xmlCatalogPtr'/>
+      <arg name='value' type='const xmlChar *'/>
+    </function>
+    <function name='xmlACatalogResolve' file='catalog'>
+      <return type='xmlChar *'/>
+      <arg name='catal' type='xmlCatalogPtr'/>
+      <arg name='pubID' type='const xmlChar *'/>
+      <arg name='sysID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlACatalogResolvePublic' file='catalog'>
+      <return type='xmlChar *'/>
+      <arg name='catal' type='xmlCatalogPtr'/>
+      <arg name='pubID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlACatalogResolveSystem' file='catalog'>
+      <return type='xmlChar *'/>
+      <arg name='catal' type='xmlCatalogPtr'/>
+      <arg name='sysID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlACatalogResolveURI' file='catalog'>
+      <return type='xmlChar *'/>
+      <arg name='catal' type='xmlCatalogPtr'/>
+      <arg name='URI' type='const xmlChar *'/>
+    </function>
+    <function name='xmlAddAttributeDecl' file='valid'>
+      <return type='xmlAttributePtr'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='dtd' type='xmlDtdPtr'/>
+      <arg name='elem' type='const xmlChar *'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='ns' type='const xmlChar *'/>
+      <arg name='type' type='xmlAttributeType'/>
+      <arg name='def' type='xmlAttributeDefault'/>
+      <arg name='defaultValue' type='const xmlChar *'/>
+      <arg name='tree' type='xmlEnumerationPtr'/>
+    </function>
+    <function name='xmlAddChild' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='parent' type='xmlNodePtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlAddChildList' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='parent' type='xmlNodePtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlAddDocEntity' file='entities'>
+      <return type='xmlEntityPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='type' type='int'/>
+      <arg name='ExternalID' type='const xmlChar *'/>
+      <arg name='SystemID' type='const xmlChar *'/>
+      <arg name='content' type='const xmlChar *'/>
+    </function>
+    <function name='xmlAddDtdEntity' file='entities'>
+      <return type='xmlEntityPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='type' type='int'/>
+      <arg name='ExternalID' type='const xmlChar *'/>
+      <arg name='SystemID' type='const xmlChar *'/>
+      <arg name='content' type='const xmlChar *'/>
+    </function>
+    <function name='xmlAddElementDecl' file='valid'>
+      <return type='xmlElementPtr'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='dtd' type='xmlDtdPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='type' type='xmlElementTypeVal'/>
+      <arg name='content' type='xmlElementContentPtr'/>
+    </function>
+    <function name='xmlAddEncodingAlias' file='encoding'>
+      <return type='int'/>
+      <arg name='name' type='const char *'/>
+      <arg name='alias' type='const char *'/>
+    </function>
+    <function name='xmlAddID' file='valid'>
+      <return type='xmlIDPtr'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='value' type='const xmlChar *'/>
+      <arg name='attr' type='xmlAttrPtr'/>
+    </function>
+    <function name='xmlAddNextSibling' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+      <arg name='elem' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlAddNotationDecl' file='valid'>
+      <return type='xmlNotationPtr'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='dtd' type='xmlDtdPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='PublicID' type='const xmlChar *'/>
+      <arg name='SystemID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlAddPrevSibling' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+      <arg name='elem' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlAddRef' file='valid'>
+      <return type='xmlRefPtr'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='value' type='const xmlChar *'/>
+      <arg name='attr' type='xmlAttrPtr'/>
+    </function>
+    <function name='xmlAddSibling' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+      <arg name='elem' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlAllocOutputBuffer' file='xmlIO'>
+      <return type='xmlOutputBufferPtr'/>
+      <arg name='encoder' type='xmlCharEncodingHandlerPtr'/>
+    </function>
+    <function name='xmlAllocParserInputBuffer' file='xmlIO'>
+      <return type='xmlParserInputBufferPtr'/>
+      <arg name='enc' type='xmlCharEncoding'/>
+    </function>
+    <struct name='xmlAttr' file='tree'/>
+    <typedef name='xmlAttrPtr' file='tree'/>
+    <struct name='xmlAttribute' file='tree'/>
+    <enum name='xmlAttributeDefault' file='tree'/>
+    <typedef name='xmlAttributePtr' file='tree'/>
+    <typedef name='xmlAttributeTablePtr' file='valid'/>
+    <enum name='xmlAttributeType' file='tree'/>
+    <struct name='xmlBuffer' file='tree'/>
+    <function name='xmlBufferAdd' file='tree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='str' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlBufferAddHead' file='tree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='str' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <macro name='xmlBufferAllocScheme' file='globals'/>
+    <enum name='xmlBufferAllocationScheme' file='tree'/>
+    <function name='xmlBufferCCat' file='tree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='str' type='const char *'/>
+    </function>
+    <function name='xmlBufferCat' file='tree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='str' type='const xmlChar *'/>
+    </function>
+    <function name='xmlBufferContent' file='tree'>
+      <return type='const xmlChar *'/>
+      <arg name='buf' type='const xmlBufferPtr'/>
+    </function>
+    <function name='xmlBufferCreate' file='tree'>
+      <return type='xmlBufferPtr'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlBufferCreateSize' file='tree'>
+      <return type='xmlBufferPtr'/>
+      <arg name='size' type='size_t'/>
+    </function>
+    <function name='xmlBufferDump' file='tree'>
+      <return type='int'/>
+      <arg name='file' type='FILE *'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+    </function>
+    <function name='xmlBufferEmpty' file='tree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+    </function>
+    <function name='xmlBufferFree' file='tree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+    </function>
+    <function name='xmlBufferGrow' file='tree'>
+      <return type='int'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='len' type='unsigned int'/>
+    </function>
+    <function name='xmlBufferLength' file='tree'>
+      <return type='int'/>
+      <arg name='buf' type='const xmlBufferPtr'/>
+    </function>
+    <typedef name='xmlBufferPtr' file='tree'/>
+    <function name='xmlBufferResize' file='tree'>
+      <return type='int'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='size' type='unsigned int'/>
+    </function>
+    <function name='xmlBufferSetAllocationScheme' file='tree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='scheme' type='xmlBufferAllocationScheme'/>
+    </function>
+    <function name='xmlBufferShrink' file='tree'>
+      <return type='int'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='len' type='unsigned int'/>
+    </function>
+    <function name='xmlBufferWriteCHAR' file='tree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='string' type='const xmlChar *'/>
+    </function>
+    <function name='xmlBufferWriteChar' file='tree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='string' type='const char *'/>
+    </function>
+    <function name='xmlBufferWriteQuotedString' file='tree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='string' type='const xmlChar *'/>
+    </function>
+    <function name='xmlBufferWriteXmlCHAR' file='tree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='string' type='const xmlChar *'/>
+    </function>
+    <function name='xmlBuildURI' file='uri'>
+      <return type='xmlChar *'/>
+      <arg name='URI' type='const xmlChar *'/>
+      <arg name='base' type='const xmlChar *'/>
+    </function>
+    <struct name='xmlCatalog' file='catalog'/>
+    <function name='xmlCatalogAdd' file='catalog'>
+      <return type='int'/>
+      <arg name='type' type='const xmlChar *'/>
+      <arg name='orig' type='const xmlChar *'/>
+      <arg name='replace' type='const xmlChar *'/>
+    </function>
+    <function name='xmlCatalogAddLocal' file='catalog'>
+      <return type='void *'/>
+      <arg name='catalogs' type='void *'/>
+      <arg name='URL' type='const xmlChar *'/>
+    </function>
+    <enum name='xmlCatalogAllow' file='catalog'/>
+    <function name='xmlCatalogCleanup' file='catalog'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlCatalogConvert' file='catalog'>
+      <return type='int'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlCatalogDump' file='catalog'>
+      <return type='void'/>
+      <arg name='out' type='FILE *'/>
+    </function>
+    <function name='xmlCatalogFreeLocal' file='catalog'>
+      <return type='void'/>
+      <arg name='catalogs' type='void *'/>
+    </function>
+    <function name='xmlCatalogGetDefaults' file='catalog'>
+      <return type='xmlCatalogAllow'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlCatalogGetPublic' file='catalog'>
+      <return type='const xmlChar *'/>
+      <arg name='pubID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlCatalogGetSystem' file='catalog'>
+      <return type='const xmlChar *'/>
+      <arg name='sysID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlCatalogIsEmpty' file='catalog'>
+      <return type='int'/>
+      <arg name='catal' type='xmlCatalogPtr'/>
+    </function>
+    <function name='xmlCatalogLocalResolve' file='catalog'>
+      <return type='xmlChar *'/>
+      <arg name='catalogs' type='void *'/>
+      <arg name='pubID' type='const xmlChar *'/>
+      <arg name='sysID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlCatalogLocalResolveURI' file='catalog'>
+      <return type='xmlChar *'/>
+      <arg name='catalogs' type='void *'/>
+      <arg name='URI' type='const xmlChar *'/>
+    </function>
+    <enum name='xmlCatalogPrefer' file='catalog'/>
+    <typedef name='xmlCatalogPtr' file='catalog'/>
+    <function name='xmlCatalogRemove' file='catalog'>
+      <return type='int'/>
+      <arg name='value' type='const xmlChar *'/>
+    </function>
+    <function name='xmlCatalogResolve' file='catalog'>
+      <return type='xmlChar *'/>
+      <arg name='pubID' type='const xmlChar *'/>
+      <arg name='sysID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlCatalogResolvePublic' file='catalog'>
+      <return type='xmlChar *'/>
+      <arg name='pubID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlCatalogResolveSystem' file='catalog'>
+      <return type='xmlChar *'/>
+      <arg name='sysID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlCatalogResolveURI' file='catalog'>
+      <return type='xmlChar *'/>
+      <arg name='URI' type='const xmlChar *'/>
+    </function>
+    <function name='xmlCatalogSetDebug' file='catalog'>
+      <return type='int'/>
+      <arg name='level' type='int'/>
+    </function>
+    <function name='xmlCatalogSetDefaultPrefer' file='catalog'>
+      <return type='xmlCatalogPrefer'/>
+      <arg name='prefer' type='xmlCatalogPrefer'/>
+    </function>
+    <function name='xmlCatalogSetDefaults' file='catalog'>
+      <return type='void'/>
+      <arg name='allow' type='xmlCatalogAllow'/>
+    </function>
+    <typedef name='xmlChar' file='tree'/>
+    <function name='xmlCharEncCloseFunc' file='encoding'>
+      <return type='int'/>
+      <arg name='handler' type='xmlCharEncodingHandler *'/>
+    </function>
+    <function name='xmlCharEncFirstLine' file='encoding'>
+      <return type='int'/>
+      <arg name='handler' type='xmlCharEncodingHandler *'/>
+      <arg name='out' type='xmlBufferPtr'/>
+      <arg name='in' type='xmlBufferPtr'/>
+    </function>
+    <function name='xmlCharEncInFunc' file='encoding'>
+      <return type='int'/>
+      <arg name='handler' type='xmlCharEncodingHandler *'/>
+      <arg name='out' type='xmlBufferPtr'/>
+      <arg name='in' type='xmlBufferPtr'/>
+    </function>
+    <function name='xmlCharEncOutFunc' file='encoding'>
+      <return type='int'/>
+      <arg name='handler' type='xmlCharEncodingHandler *'/>
+      <arg name='out' type='xmlBufferPtr'/>
+      <arg name='in' type='xmlBufferPtr'/>
+    </function>
+    <enum name='xmlCharEncoding' file='encoding'/>
+    <struct name='xmlCharEncodingHandler' file='encoding'/>
+    <typedef name='xmlCharEncodingHandlerPtr' file='encoding'/>
+    <function name='xmlCharStrdup' file='parser'>
+      <return type='xmlChar *'/>
+      <arg name='cur' type='const char *'/>
+    </function>
+    <function name='xmlCharStrndup' file='parser'>
+      <return type='xmlChar *'/>
+      <arg name='cur' type='const char *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlCheckLanguageID' file='parserInternals'>
+      <return type='int'/>
+      <arg name='lang' type='const xmlChar *'/>
+    </function>
+    <function name='xmlCheckUTF8' file='encoding'>
+      <return type='int'/>
+      <arg name='utf' type='const unsigned char *'/>
+    </function>
+    <function name='xmlCheckVersion' file='xmlversion'>
+      <return type='void'/>
+      <arg name='version' type='int'/>
+    </function>
+    <macro name='xmlChildrenNode' file='tree'/>
+    <function name='xmlCleanupCharEncodingHandlers' file='encoding'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlCleanupEncodingAliases' file='encoding'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlCleanupInputCallbacks' file='xmlIO'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlCleanupOutputCallbacks' file='xmlIO'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlCleanupParser' file='parser'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlCleanupPredefinedEntities' file='entities'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlCleanupThreads' file='threads'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlClearNodeInfoSeq' file='parser'>
+      <return type='void'/>
+      <arg name='seq' type='xmlParserNodeInfoSeqPtr'/>
+    </function>
+    <function name='xmlClearParserCtxt' file='parser'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlConvertSGMLCatalog' file='catalog'>
+      <return type='int'/>
+      <arg name='catal' type='xmlCatalogPtr'/>
+    </function>
+    <function name='xmlCopyAttributeTable' file='valid'>
+      <return type='xmlAttributeTablePtr'/>
+      <arg name='table' type='xmlAttributeTablePtr'/>
+    </function>
+    <function name='xmlCopyChar' file='parserInternals'>
+      <return type='int'/>
+      <arg name='len' type='int'/>
+      <arg name='out' type='xmlChar *'/>
+      <arg name='val' type='int'/>
+    </function>
+    <function name='xmlCopyCharMultiByte' file='parserInternals'>
+      <return type='int'/>
+      <arg name='out' type='xmlChar *'/>
+      <arg name='val' type='int'/>
+    </function>
+    <function name='xmlCopyDoc' file='tree'>
+      <return type='xmlDocPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='recursive' type='int'/>
+    </function>
+    <function name='xmlCopyDtd' file='tree'>
+      <return type='xmlDtdPtr'/>
+      <arg name='dtd' type='xmlDtdPtr'/>
+    </function>
+    <function name='xmlCopyElementContent' file='valid'>
+      <return type='xmlElementContentPtr'/>
+      <arg name='content' type='xmlElementContentPtr'/>
+    </function>
+    <function name='xmlCopyElementTable' file='valid'>
+      <return type='xmlElementTablePtr'/>
+      <arg name='table' type='xmlElementTablePtr'/>
+    </function>
+    <function name='xmlCopyEntitiesTable' file='entities'>
+      <return type='xmlEntitiesTablePtr'/>
+      <arg name='table' type='xmlEntitiesTablePtr'/>
+    </function>
+    <function name='xmlCopyEnumeration' file='valid'>
+      <return type='xmlEnumerationPtr'/>
+      <arg name='cur' type='xmlEnumerationPtr'/>
+    </function>
+    <function name='xmlCopyNamespace' file='tree'>
+      <return type='xmlNsPtr'/>
+      <arg name='cur' type='xmlNsPtr'/>
+    </function>
+    <function name='xmlCopyNamespaceList' file='tree'>
+      <return type='xmlNsPtr'/>
+      <arg name='cur' type='xmlNsPtr'/>
+    </function>
+    <function name='xmlCopyNode' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='node' type='const xmlNodePtr'/>
+      <arg name='recursive' type='int'/>
+    </function>
+    <function name='xmlCopyNodeList' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlCopyNotationTable' file='valid'>
+      <return type='xmlNotationTablePtr'/>
+      <arg name='table' type='xmlNotationTablePtr'/>
+    </function>
+    <function name='xmlCopyProp' file='tree'>
+      <return type='xmlAttrPtr'/>
+      <arg name='target' type='xmlNodePtr'/>
+      <arg name='cur' type='xmlAttrPtr'/>
+    </function>
+    <function name='xmlCopyPropList' file='tree'>
+      <return type='xmlAttrPtr'/>
+      <arg name='target' type='xmlNodePtr'/>
+      <arg name='cur' type='xmlAttrPtr'/>
+    </function>
+    <function name='xmlCreateDocParserCtxt' file='parser'>
+      <return type='xmlParserCtxtPtr'/>
+      <arg name='cur' type='xmlChar *'/>
+    </function>
+    <function name='xmlCreateEntitiesTable' file='entities'>
+      <return type='xmlEntitiesTablePtr'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlCreateEntityParserCtxt' file='parserInternals'>
+      <return type='xmlParserCtxtPtr'/>
+      <arg name='URL' type='const xmlChar *'/>
+      <arg name='ID' type='const xmlChar *'/>
+      <arg name='base' type='const xmlChar *'/>
+    </function>
+    <function name='xmlCreateEnumeration' file='valid'>
+      <return type='xmlEnumerationPtr'/>
+      <arg name='name' type='xmlChar *'/>
+    </function>
+    <function name='xmlCreateFileParserCtxt' file='parserInternals'>
+      <return type='xmlParserCtxtPtr'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlCreateIOParserCtxt' file='parser'>
+      <return type='xmlParserCtxtPtr'/>
+      <arg name='sax' type='xmlSAXHandlerPtr'/>
+      <arg name='data' type='void *user_'/>
+      <arg name='ioread' type='xmlInputReadCallback'/>
+      <arg name='ioclose' type='xmlInputCloseCallback'/>
+      <arg name='ioctx' type='void *'/>
+      <arg name='enc' type='xmlCharEncoding'/>
+    </function>
+    <function name='xmlCreateIntSubset' file='tree'>
+      <return type='xmlDtdPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='ExternalID' type='const xmlChar *'/>
+      <arg name='SystemID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlCreateMemoryParserCtxt' file='parserInternals'>
+      <return type='xmlParserCtxtPtr'/>
+      <arg name='buffer' type='const char *'/>
+      <arg name='size' type='int'/>
+    </function>
+    <function name='xmlCreatePushParserCtxt' file='parser'>
+      <return type='xmlParserCtxtPtr'/>
+      <arg name='sax' type='xmlSAXHandlerPtr'/>
+      <arg name='data' type='void *user_'/>
+      <arg name='chunk' type='const char *'/>
+      <arg name='size' type='int'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlCreateURI' file='uri'>
+      <return type='xmlURIPtr'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlCurrentChar' file='parserInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='len' type='int *'/>
+    </function>
+    <function name='xmlDebugDumpAttr' file='debugXML'>
+      <return type='void'/>
+      <arg name='output' type='FILE *'/>
+      <arg name='attr' type='xmlAttrPtr'/>
+      <arg name='depth' type='int'/>
+    </function>
+    <function name='xmlDebugDumpAttrList' file='debugXML'>
+      <return type='void'/>
+      <arg name='output' type='FILE *'/>
+      <arg name='attr' type='xmlAttrPtr'/>
+      <arg name='depth' type='int'/>
+    </function>
+    <function name='xmlDebugDumpDTD' file='debugXML'>
+      <return type='void'/>
+      <arg name='output' type='FILE *'/>
+      <arg name='dtd' type='xmlDtdPtr'/>
+    </function>
+    <function name='xmlDebugDumpDocument' file='debugXML'>
+      <return type='void'/>
+      <arg name='output' type='FILE *'/>
+      <arg name='doc' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlDebugDumpDocumentHead' file='debugXML'>
+      <return type='void'/>
+      <arg name='output' type='FILE *'/>
+      <arg name='doc' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlDebugDumpEntities' file='debugXML'>
+      <return type='void'/>
+      <arg name='output' type='FILE *'/>
+      <arg name='doc' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlDebugDumpNode' file='debugXML'>
+      <return type='void'/>
+      <arg name='output' type='FILE *'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='depth' type='int'/>
+    </function>
+    <function name='xmlDebugDumpNodeList' file='debugXML'>
+      <return type='void'/>
+      <arg name='output' type='FILE *'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='depth' type='int'/>
+    </function>
+    <function name='xmlDebugDumpOneNode' file='debugXML'>
+      <return type='void'/>
+      <arg name='output' type='FILE *'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='depth' type='int'/>
+    </function>
+    <function name='xmlDebugDumpString' file='debugXML'>
+      <return type='void'/>
+      <arg name='output' type='FILE *'/>
+      <arg name='str' type='const xmlChar *'/>
+    </function>
+    <function name='xmlDecodeEntities' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='len' type='int'/>
+      <arg name='what' type='int'/>
+      <arg name='end' type='xmlChar'/>
+      <arg name='end2' type='xmlChar'/>
+      <arg name='end3' type='xmlChar'/>
+    </function>
+    <macro name='xmlDefaultBufferSize' file='globals'/>
+    <macro name='xmlDefaultSAXHandler' file='globals'/>
+    <function name='xmlDefaultSAXHandlerInit' file='parser'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <macro name='xmlDefaultSAXLocator' file='globals'/>
+    <function name='xmlDelEncodingAlias' file='encoding'>
+      <return type='int'/>
+      <arg name='alias' type='const char *'/>
+    </function>
+    <function name='xmlDetectCharEncoding' file='encoding'>
+      <return type='xmlCharEncoding'/>
+      <arg name='in' type='const unsigned char *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <macro name='xmlDoValidityCheckingDefaultValue' file='globals'/>
+    <struct name='xmlDoc' file='tree'/>
+    <function name='xmlDocCopyNode' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='recursive' type='int'/>
+    </function>
+    <function name='xmlDocDump' file='tree'>
+      <return type='int'/>
+      <arg name='f' type='FILE *'/>
+      <arg name='cur' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlDocDumpFormatMemory' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlDocPtr'/>
+      <arg name='mem' type='xmlChar **'/>
+      <arg name='size' type='int *'/>
+      <arg name='format' type='int'/>
+    </function>
+    <function name='xmlDocDumpFormatMemoryEnc' file='tree'>
+      <return type='void'/>
+      <arg name='doc' type='xmlDocPtr out_'/>
+      <arg name='ptr' type='xmlChar **doc_txt_'/>
+      <arg name='len' type='int * doc_txt_'/>
+      <arg name='encoding' type='const char *txt_'/>
+      <arg name='format' type='int'/>
+    </function>
+    <function name='xmlDocDumpMemory' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlDocPtr'/>
+      <arg name='mem' type='xmlChar **'/>
+      <arg name='size' type='int *'/>
+    </function>
+    <function name='xmlDocDumpMemoryEnc' file='tree'>
+      <return type='void'/>
+      <arg name='doc' type='xmlDocPtr out_'/>
+      <arg name='ptr' type='xmlChar **doc_txt_'/>
+      <arg name='len' type='int * doc_txt_'/>
+      <arg name='encoding' type='const char *txt_'/>
+    </function>
+    <function name='xmlDocGetRootElement' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+    </function>
+    <typedef name='xmlDocPtr' file='tree'/>
+    <function name='xmlDocSetRootElement' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='root' type='xmlNodePtr'/>
+    </function>
+    <struct name='xmlDtd' file='tree'/>
+    <typedef name='xmlDtdPtr' file='tree'/>
+    <function name='xmlDumpAttributeDecl' file='valid'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='attr' type='xmlAttributePtr'/>
+    </function>
+    <function name='xmlDumpAttributeTable' file='valid'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='table' type='xmlAttributeTablePtr'/>
+    </function>
+    <function name='xmlDumpElementDecl' file='valid'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='elem' type='xmlElementPtr'/>
+    </function>
+    <function name='xmlDumpElementTable' file='valid'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='table' type='xmlElementTablePtr'/>
+    </function>
+    <function name='xmlDumpEntitiesTable' file='entities'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='table' type='xmlEntitiesTablePtr'/>
+    </function>
+    <function name='xmlDumpEntityDecl' file='entities'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='ent' type='xmlEntityPtr'/>
+    </function>
+    <function name='xmlDumpNotationDecl' file='valid'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='nota' type='xmlNotationPtr'/>
+    </function>
+    <function name='xmlDumpNotationTable' file='valid'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='table' type='xmlNotationTablePtr'/>
+    </function>
+    <function name='xmlElemDump' file='tree'>
+      <return type='void'/>
+      <arg name='f' type='FILE *'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <struct name='xmlElement' file='tree'/>
+    <struct name='xmlElementContent' file='tree'/>
+    <enum name='xmlElementContentOccur' file='tree'/>
+    <typedef name='xmlElementContentPtr' file='tree'/>
+    <enum name='xmlElementContentType' file='tree'/>
+    <typedef name='xmlElementPtr' file='tree'/>
+    <typedef name='xmlElementTablePtr' file='valid'/>
+    <enum name='xmlElementType' file='tree'/>
+    <enum name='xmlElementTypeVal' file='tree'/>
+    <function name='xmlEncodeEntities' file='entities'>
+      <return type='const xmlChar *'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='input' type='const xmlChar *'/>
+    </function>
+    <function name='xmlEncodeEntitiesReentrant' file='entities'>
+      <return type='xmlChar *'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='input' type='const xmlChar *'/>
+    </function>
+    <function name='xmlEncodeSpecialChars' file='entities'>
+      <return type='xmlChar *'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='input' type='const xmlChar *'/>
+    </function>
+    <typedef name='xmlEntitiesTablePtr' file='entities'/>
+    <struct name='xmlEntity' file='entities'/>
+    <typedef name='xmlEntityPtr' file='entities'/>
+    <enum name='xmlEntityType' file='entities'/>
+    <struct name='xmlEnumeration' file='tree'/>
+    <typedef name='xmlEnumerationPtr' file='tree'/>
+    <function name='xmlFindCharEncodingHandler' file='encoding'>
+      <return type='xmlCharEncodingHandlerPtr'/>
+      <arg name='name' type='const char *'/>
+    </function>
+    <macro name='xmlFree' file='globals'/>
+    <function name='xmlFreeAttributeTable' file='valid'>
+      <return type='void'/>
+      <arg name='table' type='xmlAttributeTablePtr'/>
+    </function>
+    <function name='xmlFreeCatalog' file='catalog'>
+      <return type='void'/>
+      <arg name='catal' type='xmlCatalogPtr'/>
+    </function>
+    <function name='xmlFreeDoc' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlFreeDtd' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlDtdPtr'/>
+    </function>
+    <function name='xmlFreeElementContent' file='valid'>
+      <return type='void'/>
+      <arg name='cur' type='xmlElementContentPtr'/>
+    </function>
+    <function name='xmlFreeElementTable' file='valid'>
+      <return type='void'/>
+      <arg name='table' type='xmlElementTablePtr'/>
+    </function>
+    <function name='xmlFreeEntitiesTable' file='entities'>
+      <return type='void'/>
+      <arg name='table' type='xmlEntitiesTablePtr'/>
+    </function>
+    <function name='xmlFreeEnumeration' file='valid'>
+      <return type='void'/>
+      <arg name='cur' type='xmlEnumerationPtr'/>
+    </function>
+    <function name='xmlFreeIDTable' file='valid'>
+      <return type='void'/>
+      <arg name='table' type='xmlIDTablePtr'/>
+    </function>
+    <function name='xmlFreeInputStream' file='parserInternals'>
+      <return type='void'/>
+      <arg name='input' type='xmlParserInputPtr'/>
+    </function>
+    <function name='xmlFreeMutex' file='threads'>
+      <return type='void'/>
+      <arg name='tok' type='xmlMutexPtr'/>
+    </function>
+    <function name='xmlFreeNode' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlFreeNodeList' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlFreeNotationTable' file='valid'>
+      <return type='void'/>
+      <arg name='table' type='xmlNotationTablePtr'/>
+    </function>
+    <function name='xmlFreeNs' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNsPtr'/>
+    </function>
+    <function name='xmlFreeNsList' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNsPtr'/>
+    </function>
+    <function name='xmlFreeParserCtxt' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlFreeParserInputBuffer' file='xmlIO'>
+      <return type='void'/>
+      <arg name='in' type='xmlParserInputBufferPtr'/>
+    </function>
+    <function name='xmlFreeProp' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlAttrPtr'/>
+    </function>
+    <function name='xmlFreePropList' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlAttrPtr'/>
+    </function>
+    <function name='xmlFreeRMutex' file='threads'>
+      <return type='void'/>
+      <arg name='tok' type='xmlRMutexPtr'/>
+    </function>
+    <function name='xmlFreeRefTable' file='valid'>
+      <return type='void'/>
+      <arg name='table' type='xmlRefTablePtr'/>
+    </function>
+    <function name='xmlFreeURI' file='uri'>
+      <return type='void'/>
+      <arg name='uri' type='xmlURIPtr'/>
+    </function>
+    <macro name='xmlGenericError' file='globals'/>
+    <macro name='xmlGenericErrorContext' file='globals'/>
+    <function name='xmlGetBufferAllocationScheme' file='tree'>
+      <return type='xmlBufferAllocationScheme'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlGetCharEncodingHandler' file='encoding'>
+      <return type='xmlCharEncodingHandlerPtr'/>
+      <arg name='enc' type='xmlCharEncoding'/>
+    </function>
+    <function name='xmlGetCharEncodingName' file='encoding'>
+      <return type='const char *'/>
+      <arg name='enc' type='xmlCharEncoding'/>
+    </function>
+    <function name='xmlGetCompressMode' file='tree'>
+      <return type='int'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlGetDocCompressMode' file='tree'>
+      <return type='int'/>
+      <arg name='doc' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlGetDocEntity' file='entities'>
+      <return type='xmlEntityPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlGetDtdAttrDesc' file='valid'>
+      <return type='xmlAttributePtr'/>
+      <arg name='dtd' type='xmlDtdPtr'/>
+      <arg name='elem' type='const xmlChar *'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlGetDtdElementDesc' file='valid'>
+      <return type='xmlElementPtr'/>
+      <arg name='dtd' type='xmlDtdPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlGetDtdEntity' file='entities'>
+      <return type='xmlEntityPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlGetDtdNotationDesc' file='valid'>
+      <return type='xmlNotationPtr'/>
+      <arg name='dtd' type='xmlDtdPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlGetDtdQAttrDesc' file='valid'>
+      <return type='xmlAttributePtr'/>
+      <arg name='dtd' type='xmlDtdPtr'/>
+      <arg name='elem' type='const xmlChar *'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='prefix' type='const xmlChar *'/>
+    </function>
+    <function name='xmlGetDtdQElementDesc' file='valid'>
+      <return type='xmlElementPtr'/>
+      <arg name='dtd' type='xmlDtdPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='prefix' type='const xmlChar *'/>
+    </function>
+    <function name='xmlGetEncodingAlias' file='encoding'>
+      <return type='const char *'/>
+      <arg name='alias' type='const char *'/>
+    </function>
+    <function name='xmlGetExternalEntityLoader' file='parser'>
+      <return type='xmlExternalEntityLoader'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlGetFeature' file='parser'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='name' type='const char *'/>
+      <arg name='result' type='void *'/>
+    </function>
+    <function name='xmlGetFeaturesList' file='parser'>
+      <return type='int'/>
+      <arg name='len' type='int *'/>
+      <arg name='result' type='const char **'/>
+    </function>
+    <function name='xmlGetGlobalState' file='threads'>
+      <return type='xmlGlobalStatePtr'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlGetID' file='valid'>
+      <return type='xmlAttrPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='ID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlGetIntSubset' file='tree'>
+      <return type='xmlDtdPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlGetLastChild' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='parent' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlGetLineNo' file='tree'>
+      <return type='long'/>
+      <arg name='node' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlGetNodePath' file='tree'>
+      <return type='xmlChar *'/>
+      <arg name='node' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlGetNsList' file='tree'>
+      <return type='xmlNsPtr *'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlGetNsProp' file='tree'>
+      <return type='xmlChar *'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='nameSpace' type='const xmlChar *'/>
+    </function>
+    <function name='xmlGetParameterEntity' file='entities'>
+      <return type='xmlEntityPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlGetPredefinedEntity' file='entities'>
+      <return type='xmlEntityPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlGetProp' file='tree'>
+      <return type='xmlChar *'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlGetRefs' file='valid'>
+      <return type='xmlListPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='ID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlGetThreadId' file='threads'>
+      <return type='int'/>
+      <arg name='void' type=''/>
+    </function>
+    <macro name='xmlGetWarningsDefaultValue' file='globals'/>
+    <struct name='xmlGlobalState' file='globals'/>
+    <typedef name='xmlGlobalStatePtr' file='globals'/>
+    <function name='xmlHandleEntity' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='entity' type='xmlEntityPtr'/>
+    </function>
+    <function name='xmlHasNsProp' file='tree'>
+      <return type='xmlAttrPtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='nameSpace' type='const xmlChar *'/>
+    </function>
+    <function name='xmlHasProp' file='tree'>
+      <return type='xmlAttrPtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlHashAddEntry' file='hash'>
+      <return type='int'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='userdata' type='void *'/>
+    </function>
+    <function name='xmlHashAddEntry2' file='hash'>
+      <return type='int'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='name2' type='const xmlChar *'/>
+      <arg name='userdata' type='void *'/>
+    </function>
+    <function name='xmlHashAddEntry3' file='hash'>
+      <return type='int'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='name2' type='const xmlChar *'/>
+      <arg name='name3' type='const xmlChar *'/>
+      <arg name='userdata' type='void *'/>
+    </function>
+    <function name='xmlHashCopy' file='hash'>
+      <return type='xmlHashTablePtr'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='f' type='xmlHashCopier'/>
+    </function>
+    <function name='xmlHashCreate' file='hash'>
+      <return type='xmlHashTablePtr'/>
+      <arg name='size' type='int'/>
+    </function>
+    <function name='xmlHashFree' file='hash'>
+      <return type='void'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='f' type='xmlHashDeallocator'/>
+    </function>
+    <function name='xmlHashLookup' file='hash'>
+      <return type='void *'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlHashLookup2' file='hash'>
+      <return type='void *'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='name2' type='const xmlChar *'/>
+    </function>
+    <function name='xmlHashLookup3' file='hash'>
+      <return type='void *'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='name2' type='const xmlChar *'/>
+      <arg name='name3' type='const xmlChar *'/>
+    </function>
+    <function name='xmlHashRemoveEntry' file='hash'>
+      <return type='int'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='f' type='xmlHashDeallocator'/>
+    </function>
+    <function name='xmlHashRemoveEntry2' file='hash'>
+      <return type='int'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='name2' type='const xmlChar *'/>
+      <arg name='f' type='xmlHashDeallocator'/>
+    </function>
+    <function name='xmlHashRemoveEntry3' file='hash'>
+      <return type='int'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='name2' type='const xmlChar *'/>
+      <arg name='name3' type='const xmlChar *'/>
+      <arg name='f' type='xmlHashDeallocator'/>
+    </function>
+    <function name='xmlHashScan' file='hash'>
+      <return type='void'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='f' type='xmlHashScanner'/>
+      <arg name='data' type='void *'/>
+    </function>
+    <function name='xmlHashScan3' file='hash'>
+      <return type='void'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='name2' type='const xmlChar *'/>
+      <arg name='name3' type='const xmlChar *'/>
+      <arg name='f' type='xmlHashScanner'/>
+      <arg name='data' type='void *'/>
+    </function>
+    <function name='xmlHashScanFull' file='hash'>
+      <return type='void'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='f' type='xmlHashScannerFull'/>
+      <arg name='data' type='void *'/>
+    </function>
+    <function name='xmlHashScanFull3' file='hash'>
+      <return type='void'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='name2' type='const xmlChar *'/>
+      <arg name='name3' type='const xmlChar *'/>
+      <arg name='f' type='xmlHashScannerFull'/>
+      <arg name='data' type='void *'/>
+    </function>
+    <function name='xmlHashSize' file='hash'>
+      <return type='int'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+    </function>
+    <struct name='xmlHashTable' file='hash'/>
+    <typedef name='xmlHashTablePtr' file='hash'/>
+    <function name='xmlHashUpdateEntry' file='hash'>
+      <return type='int'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='userdata' type='void *'/>
+      <arg name='f' type='xmlHashDeallocator'/>
+    </function>
+    <function name='xmlHashUpdateEntry2' file='hash'>
+      <return type='int'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='name2' type='const xmlChar *'/>
+      <arg name='userdata' type='void *'/>
+      <arg name='f' type='xmlHashDeallocator'/>
+    </function>
+    <function name='xmlHashUpdateEntry3' file='hash'>
+      <return type='int'/>
+      <arg name='table' type='xmlHashTablePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='name2' type='const xmlChar *'/>
+      <arg name='name3' type='const xmlChar *'/>
+      <arg name='userdata' type='void *'/>
+      <arg name='f' type='xmlHashDeallocator'/>
+    </function>
+    <struct name='xmlID' file='tree'/>
+    <typedef name='xmlIDPtr' file='tree'/>
+    <typedef name='xmlIDTablePtr' file='valid'/>
+    <function name='xmlIOHTTPOpenW' file='xmlIO'>
+      <return type='void *'/>
+      <arg name='uri' type='const char * post_'/>
+      <arg name='compression' type='int'/>
+    </function>
+    <function name='xmlIOParseDTD' file='parser'>
+      <return type='xmlDtdPtr'/>
+      <arg name='sax' type='xmlSAXHandlerPtr'/>
+      <arg name='input' type='xmlParserInputBufferPtr'/>
+      <arg name='enc' type='xmlCharEncoding'/>
+    </function>
+    <macro name='xmlIndentTreeOutput' file='globals'/>
+    <function name='xmlInitCharEncodingHandlers' file='encoding'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlInitMemory' file='xmlmemory'>
+      <return type='int'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlInitNodeInfoSeq' file='parser'>
+      <return type='void'/>
+      <arg name='seq' type='xmlParserNodeInfoSeqPtr'/>
+    </function>
+    <function name='xmlInitParser' file='parser'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlInitParserCtxt' file='parser'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlInitThreads' file='threads'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlInitializeCatalog' file='catalog'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlInitializeGlobalState' file='globals'>
+      <return type='void'/>
+      <arg name='gs' type='xmlGlobalStatePtr'/>
+    </function>
+    <function name='xmlInitializePredefinedEntities' file='entities'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlIsBaseChar' file='parserInternals'>
+      <return type='int'/>
+      <arg name='c' type='int'/>
+    </function>
+    <function name='xmlIsBlank' file='parserInternals'>
+      <return type='int'/>
+      <arg name='c' type='int'/>
+    </function>
+    <function name='xmlIsBlankNode' file='tree'>
+      <return type='int'/>
+      <arg name='node' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlIsChar' file='parserInternals'>
+      <return type='int'/>
+      <arg name='c' type='int'/>
+    </function>
+    <function name='xmlIsCombining' file='parserInternals'>
+      <return type='int'/>
+      <arg name='c' type='int'/>
+    </function>
+    <function name='xmlIsDigit' file='parserInternals'>
+      <return type='int'/>
+      <arg name='c' type='int'/>
+    </function>
+    <function name='xmlIsExtender' file='parserInternals'>
+      <return type='int'/>
+      <arg name='c' type='int'/>
+    </function>
+    <function name='xmlIsID' file='valid'>
+      <return type='int'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='elem' type='xmlNodePtr'/>
+      <arg name='attr' type='xmlAttrPtr'/>
+    </function>
+    <function name='xmlIsIdeographic' file='parserInternals'>
+      <return type='int'/>
+      <arg name='c' type='int'/>
+    </function>
+    <function name='xmlIsLetter' file='parserInternals'>
+      <return type='int'/>
+      <arg name='c' type='int'/>
+    </function>
+    <function name='xmlIsMainThread' file='threads'>
+      <return type='int'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlIsMixedElement' file='valid'>
+      <return type='int'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlIsPubidChar' file='parserInternals'>
+      <return type='int'/>
+      <arg name='c' type='int'/>
+    </function>
+    <function name='xmlIsRef' file='valid'>
+      <return type='int'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='elem' type='xmlNodePtr'/>
+      <arg name='attr' type='xmlAttrPtr'/>
+    </function>
+    <function name='xmlKeepBlanksDefault' file='parser'>
+      <return type='int'/>
+      <arg name='val' type='int'/>
+    </function>
+    <macro name='xmlKeepBlanksDefaultValue' file='globals'/>
+    <function name='xmlLineNumbersDefault' file='parser'>
+      <return type='int'/>
+      <arg name='val' type='int'/>
+    </function>
+    <macro name='xmlLineNumbersDefaultValue' file='globals'/>
+    <struct name='xmlLink' file='list'/>
+    <function name='xmlLinkGetData' file='list'>
+      <return type='void *'/>
+      <arg name='lk' type='xmlLinkPtr'/>
+    </function>
+    <typedef name='xmlLinkPtr' file='list'/>
+    <struct name='xmlList' file='list'/>
+    <function name='xmlListAppend' file='list'>
+      <return type='int'/>
+      <arg name='l' type='xmlListPtr'/>
+      <arg name='data' type='void *'/>
+    </function>
+    <function name='xmlListClear' file='list'>
+      <return type='void'/>
+      <arg name='l' type='xmlListPtr'/>
+    </function>
+    <function name='xmlListCopy' file='list'>
+      <return type='int'/>
+      <arg name='cur' type='xmlListPtr'/>
+      <arg name='old' type='const xmlListPtr'/>
+    </function>
+    <function name='xmlListCreate' file='list'>
+      <return type='xmlListPtr'/>
+      <arg name='deallocator' type='xmlListDeallocator'/>
+      <arg name='compare' type='xmlListDataCompare'/>
+    </function>
+    <function name='xmlListDelete' file='list'>
+      <return type='void'/>
+      <arg name='l' type='xmlListPtr'/>
+    </function>
+    <function name='xmlListDup' file='list'>
+      <return type='xmlListPtr'/>
+      <arg name='old' type='const xmlListPtr'/>
+    </function>
+    <function name='xmlListEmpty' file='list'>
+      <return type='int'/>
+      <arg name='l' type='xmlListPtr'/>
+    </function>
+    <function name='xmlListEnd' file='list'>
+      <return type='xmlLinkPtr'/>
+      <arg name='l' type='xmlListPtr'/>
+    </function>
+    <function name='xmlListFront' file='list'>
+      <return type='xmlLinkPtr'/>
+      <arg name='l' type='xmlListPtr'/>
+    </function>
+    <function name='xmlListInsert' file='list'>
+      <return type='int'/>
+      <arg name='l' type='xmlListPtr'/>
+      <arg name='data' type='void *'/>
+    </function>
+    <function name='xmlListMerge' file='list'>
+      <return type='void'/>
+      <arg name='l1' type='xmlListPtr'/>
+      <arg name='l2' type='xmlListPtr'/>
+    </function>
+    <function name='xmlListPopBack' file='list'>
+      <return type='void'/>
+      <arg name='l' type='xmlListPtr'/>
+    </function>
+    <function name='xmlListPopFront' file='list'>
+      <return type='void'/>
+      <arg name='l' type='xmlListPtr'/>
+    </function>
+    <typedef name='xmlListPtr' file='list'/>
+    <function name='xmlListPushBack' file='list'>
+      <return type='int'/>
+      <arg name='l' type='xmlListPtr'/>
+      <arg name='data' type='void *'/>
+    </function>
+    <function name='xmlListPushFront' file='list'>
+      <return type='int'/>
+      <arg name='l' type='xmlListPtr'/>
+      <arg name='data' type='void *'/>
+    </function>
+    <function name='xmlListRemoveAll' file='list'>
+      <return type='int'/>
+      <arg name='l' type='xmlListPtr'/>
+      <arg name='data' type='void *'/>
+    </function>
+    <function name='xmlListRemoveFirst' file='list'>
+      <return type='int'/>
+      <arg name='l' type='xmlListPtr'/>
+      <arg name='data' type='void *'/>
+    </function>
+    <function name='xmlListRemoveLast' file='list'>
+      <return type='int'/>
+      <arg name='l' type='xmlListPtr'/>
+      <arg name='data' type='void *'/>
+    </function>
+    <function name='xmlListReverse' file='list'>
+      <return type='void'/>
+      <arg name='l' type='xmlListPtr'/>
+    </function>
+    <function name='xmlListReverseSearch' file='list'>
+      <return type='void *'/>
+      <arg name='l' type='xmlListPtr'/>
+      <arg name='data' type='void *'/>
+    </function>
+    <function name='xmlListReverseWalk' file='list'>
+      <return type='void'/>
+      <arg name='l' type='xmlListPtr'/>
+      <arg name='walker' type='xmlListWalker'/>
+      <arg name='user' type='const void *'/>
+    </function>
+    <function name='xmlListSearch' file='list'>
+      <return type='void *'/>
+      <arg name='l' type='xmlListPtr'/>
+      <arg name='data' type='void *'/>
+    </function>
+    <function name='xmlListSize' file='list'>
+      <return type='int'/>
+      <arg name='l' type='xmlListPtr'/>
+    </function>
+    <function name='xmlListSort' file='list'>
+      <return type='void'/>
+      <arg name='l' type='xmlListPtr'/>
+    </function>
+    <function name='xmlListWalk' file='list'>
+      <return type='void'/>
+      <arg name='l' type='xmlListPtr'/>
+      <arg name='walker' type='xmlListWalker'/>
+      <arg name='user' type='const void *'/>
+    </function>
+    <function name='xmlLoadACatalog' file='catalog'>
+      <return type='xmlCatalogPtr'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlLoadCatalog' file='catalog'>
+      <return type='int'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlLoadCatalogs' file='catalog'>
+      <return type='void'/>
+      <arg name='paths' type='const char *'/>
+    </function>
+    <macro name='xmlLoadExtDtdDefaultValue' file='globals'/>
+    <function name='xmlLoadExternalEntity' file='parser'>
+      <return type='xmlParserInputPtr'/>
+      <arg name='URL' type='const char *'/>
+      <arg name='ID' type='const char *'/>
+      <arg name='context' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlLoadSGMLSuperCatalog' file='catalog'>
+      <return type='xmlCatalogPtr'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <struct name='xmlLocationSet' file='xpointer'/>
+    <typedef name='xmlLocationSetPtr' file='xpointer'/>
+    <function name='xmlLockLibrary' file='threads'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlLsCountNode' file='debugXML'>
+      <return type='int'/>
+      <arg name='node' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlLsOneNode' file='debugXML'>
+      <return type='void'/>
+      <arg name='output' type='FILE *'/>
+      <arg name='node' type='xmlNodePtr'/>
+    </function>
+    <macro name='xmlMalloc' file='globals'/>
+    <function name='xmlMallocLoc' file='xmlmemory'>
+      <return type='void *'/>
+      <arg name='size' type='size_t'/>
+      <arg name='file' type='const char *'/>
+      <arg name='line' type='int'/>
+    </function>
+    <function name='xmlMemDisplay' file='xmlmemory'>
+      <return type='void'/>
+      <arg name='fp' type='FILE *'/>
+    </function>
+    <function name='xmlMemGet' file='xmlmemory'>
+      <return type='int'/>
+      <arg name='freeFunc' type='xmlFreeFunc *'/>
+      <arg name='mallocFunc' type='xmlMallocFunc *'/>
+      <arg name='reallocFunc' type='xmlReallocFunc *'/>
+      <arg name='strdupFunc' type='xmlStrdupFunc *'/>
+    </function>
+    <function name='xmlMemSetup' file='xmlmemory'>
+      <return type='int'/>
+      <arg name='freeFunc' type='xmlFreeFunc'/>
+      <arg name='mallocFunc' type='xmlMallocFunc'/>
+      <arg name='reallocFunc' type='xmlReallocFunc'/>
+      <arg name='strdupFunc' type='xmlStrdupFunc'/>
+    </function>
+    <function name='xmlMemShow' file='xmlmemory'>
+      <return type='void'/>
+      <arg name='fp' type='FILE *'/>
+      <arg name='nr' type='int'/>
+    </function>
+    <macro name='xmlMemStrdup' file='globals'/>
+    <function name='xmlMemStrdupLoc' file='xmlmemory'>
+      <return type='char *'/>
+      <arg name='str' type='const char *'/>
+      <arg name='file' type='const char *'/>
+      <arg name='line' type='int'/>
+    </function>
+    <function name='xmlMemUsed' file='xmlmemory'>
+      <return type='int'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlMemoryDump' file='xmlmemory'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <struct name='xmlMutex' file='threads'/>
+    <function name='xmlMutexLock' file='threads'>
+      <return type='void'/>
+      <arg name='tok' type='xmlMutexPtr'/>
+    </function>
+    <typedef name='xmlMutexPtr' file='threads'/>
+    <function name='xmlMutexUnlock' file='threads'>
+      <return type='void'/>
+      <arg name='tok' type='xmlMutexPtr'/>
+    </function>
+    <function name='xmlNamespaceParseNCName' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlNamespaceParseNSDef' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlNamespaceParseQName' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='prefix' type='xmlChar **'/>
+    </function>
+    <function name='xmlNanoFTPCheckResponse' file='nanoftp'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='xmlNanoFTPCleanup' file='nanoftp'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlNanoFTPClose' file='nanoftp'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='xmlNanoFTPCloseConnection' file='nanoftp'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='xmlNanoFTPConnect' file='nanoftp'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='xmlNanoFTPConnectTo' file='nanoftp'>
+      <return type='void *'/>
+      <arg name='server' type='const char *'/>
+      <arg name='port' type='int'/>
+    </function>
+    <function name='xmlNanoFTPCwd' file='nanoftp'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='directory' type='char *'/>
+    </function>
+    <function name='xmlNanoFTPFreeCtxt' file='nanoftp'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='xmlNanoFTPGet' file='nanoftp'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='callback' type='ftpDataCallback'/>
+      <arg name='userData' type='void *'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlNanoFTPGetConnection' file='nanoftp'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='xmlNanoFTPGetResponse' file='nanoftp'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='xmlNanoFTPGetSocket' file='nanoftp'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlNanoFTPInit' file='nanoftp'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlNanoFTPList' file='nanoftp'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='callback' type='ftpListCallback'/>
+      <arg name='userData' type='void *'/>
+      <arg name='filename' type='char *'/>
+    </function>
+    <function name='xmlNanoFTPNewCtxt' file='nanoftp'>
+      <return type='void *'/>
+      <arg name='URL' type='const char *'/>
+    </function>
+    <function name='xmlNanoFTPOpen' file='nanoftp'>
+      <return type='void *'/>
+      <arg name='URL' type='const char *'/>
+    </function>
+    <function name='xmlNanoFTPProxy' file='nanoftp'>
+      <return type='void'/>
+      <arg name='host' type='const char *'/>
+      <arg name='port' type='int'/>
+      <arg name='user' type='const char *'/>
+      <arg name='passwd' type='const char *'/>
+      <arg name='type' type='int'/>
+    </function>
+    <function name='xmlNanoFTPQuit' file='nanoftp'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='xmlNanoFTPRead' file='nanoftp'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='dest' type='void *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlNanoFTPScanProxy' file='nanoftp'>
+      <return type='void'/>
+      <arg name='URL' type='const char *'/>
+    </function>
+    <function name='xmlNanoFTPUpdateURL' file='nanoftp'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='URL' type='const char *'/>
+    </function>
+    <function name='xmlNanoHTTPAuthHeader' file='nanohttp'>
+      <return type='const char *'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='xmlNanoHTTPCleanup' file='nanohttp'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlNanoHTTPClose' file='nanohttp'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='xmlNanoHTTPFetch' file='nanohttp'>
+      <return type='int'/>
+      <arg name='URL' type='const char *'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='contentType' type='char **'/>
+    </function>
+    <function name='xmlNanoHTTPInit' file='nanohttp'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlNanoHTTPMethod' file='nanohttp'>
+      <return type='void *'/>
+      <arg name='URL' type='const char *'/>
+      <arg name='method' type='const char *'/>
+      <arg name='input' type='const char *'/>
+      <arg name='contentType' type='char **'/>
+      <arg name='headers' type='const char *'/>
+      <arg name='ilen' type='int'/>
+    </function>
+    <function name='xmlNanoHTTPMethodRedir' file='nanohttp'>
+      <return type='void *'/>
+      <arg name='URL' type='const char *'/>
+      <arg name='method' type='const char *'/>
+      <arg name='input' type='const char *'/>
+      <arg name='contentType' type='char **'/>
+      <arg name='redir' type='char **'/>
+      <arg name='headers' type='const char *'/>
+      <arg name='ilen' type='int'/>
+    </function>
+    <function name='xmlNanoHTTPOpen' file='nanohttp'>
+      <return type='void *'/>
+      <arg name='URL' type='const char *'/>
+      <arg name='contentType' type='char **'/>
+    </function>
+    <function name='xmlNanoHTTPOpenRedir' file='nanohttp'>
+      <return type='void *'/>
+      <arg name='URL' type='const char *'/>
+      <arg name='contentType' type='char **'/>
+      <arg name='redir' type='char **'/>
+    </function>
+    <function name='xmlNanoHTTPRead' file='nanohttp'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='dest' type='void *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlNanoHTTPReturnCode' file='nanohttp'>
+      <return type='int'/>
+      <arg name='ctx' type='void *'/>
+    </function>
+    <function name='xmlNanoHTTPSave' file='nanohttp'>
+      <return type='int'/>
+      <arg name='ctxt' type='void *'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlNanoHTTPScanProxy' file='nanohttp'>
+      <return type='void'/>
+      <arg name='URL' type='const char *'/>
+    </function>
+    <function name='xmlNewCDataBlock' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='content' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlNewCatalog' file='catalog'>
+      <return type='xmlCatalogPtr'/>
+      <arg name='sgml' type='int'/>
+    </function>
+    <function name='xmlNewCharRef' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewChild' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='parent' type='xmlNodePtr'/>
+      <arg name='ns' type='xmlNsPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='content' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewComment' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='content' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewDoc' file='tree'>
+      <return type='xmlDocPtr'/>
+      <arg name='version' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewDocComment' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='content' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewDocFragment' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlNewDocNode' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='ns' type='xmlNsPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='content' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewDocProp' file='tree'>
+      <return type='xmlAttrPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='value' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewDocRawNode' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='ns' type='xmlNsPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='content' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewDocText' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='content' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewDocTextLen' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='content' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlNewDtd' file='tree'>
+      <return type='xmlDtdPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='ExternalID' type='const xmlChar *'/>
+      <arg name='SystemID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewElementContent' file='valid'>
+      <return type='xmlElementContentPtr'/>
+      <arg name='name' type='xmlChar *'/>
+      <arg name='type' type='xmlElementContentType'/>
+    </function>
+    <function name='xmlNewEntityInputStream' file='parserInternals'>
+      <return type='xmlParserInputPtr'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='entity' type='xmlEntityPtr'/>
+    </function>
+    <function name='xmlNewGlobalNs' file='tree'>
+      <return type='xmlNsPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='href' type='const xmlChar *'/>
+      <arg name='prefix' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewIOInputStream' file='parser'>
+      <return type='xmlParserInputPtr'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='input' type='xmlParserInputBufferPtr'/>
+      <arg name='enc' type='xmlCharEncoding'/>
+    </function>
+    <function name='xmlNewInputFromFile' file='parserInternals'>
+      <return type='xmlParserInputPtr'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlNewInputStream' file='parserInternals'>
+      <return type='xmlParserInputPtr'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlNewMutex' file='threads'>
+      <return type='xmlMutexPtr'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlNewNode' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='ns' type='xmlNsPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewNs' file='tree'>
+      <return type='xmlNsPtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='href' type='const xmlChar *'/>
+      <arg name='prefix' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewNsProp' file='tree'>
+      <return type='xmlAttrPtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='ns' type='xmlNsPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='value' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewPI' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='content' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewParserCtxt' file='parserInternals'>
+      <return type='xmlParserCtxtPtr'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlNewProp' file='tree'>
+      <return type='xmlAttrPtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='value' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewRMutex' file='threads'>
+      <return type='xmlRMutexPtr'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlNewReference' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewStringInputStream' file='parserInternals'>
+      <return type='xmlParserInputPtr'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='buffer' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewText' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='content' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewTextChild' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='parent' type='xmlNodePtr'/>
+      <arg name='ns' type='xmlNsPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='content' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNewTextLen' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='content' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlNextChar' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlNoNetExternalEntityLoader' file='xmlIO'>
+      <return type='xmlParserInputPtr'/>
+      <arg name='URL' type='const char *'/>
+      <arg name='ID' type='const char *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <struct name='xmlNode' file='tree'/>
+    <function name='xmlNodeAddContent' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNodePtr'/>
+      <arg name='content' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNodeAddContentLen' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNodePtr'/>
+      <arg name='content' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlNodeDump' file='tree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlBufferPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+      <arg name='level' type='int'/>
+      <arg name='format' type='int'/>
+    </function>
+    <function name='xmlNodeDumpOutput' file='tree'>
+      <return type='void'/>
+      <arg name='buf' type='xmlOutputBufferPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+      <arg name='level' type='int'/>
+      <arg name='format' type='int'/>
+      <arg name='encoding' type='const char *'/>
+    </function>
+    <function name='xmlNodeGetBase' file='tree'>
+      <return type='xmlChar *'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlNodeGetContent' file='tree'>
+      <return type='xmlChar *'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlNodeGetLang' file='tree'>
+      <return type='xmlChar *'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlNodeGetSpacePreserve' file='tree'>
+      <return type='int'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlNodeIsText' file='tree'>
+      <return type='int'/>
+      <arg name='node' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlNodeListGetRawString' file='tree'>
+      <return type='xmlChar *'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='list' type='xmlNodePtr'/>
+      <arg name='inLine' type='int'/>
+    </function>
+    <function name='xmlNodeListGetString' file='tree'>
+      <return type='xmlChar *'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='list' type='xmlNodePtr'/>
+      <arg name='inLine' type='int'/>
+    </function>
+    <typedef name='xmlNodePtr' file='tree'/>
+    <struct name='xmlNodeSet' file='xpath'/>
+    <function name='xmlNodeSetBase' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNodePtr'/>
+      <arg name='uri' type='xmlChar *'/>
+    </function>
+    <function name='xmlNodeSetContent' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNodePtr'/>
+      <arg name='content' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNodeSetContentLen' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNodePtr'/>
+      <arg name='content' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlNodeSetLang' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNodePtr'/>
+      <arg name='lang' type='const xmlChar *'/>
+    </function>
+    <function name='xmlNodeSetName' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNodePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <typedef name='xmlNodeSetPtr' file='xpath'/>
+    <function name='xmlNodeSetSpacePreserve' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNodePtr'/>
+      <arg name='val' type='int'/>
+    </function>
+    <function name='xmlNormalizeURIPath' file='uri'>
+      <return type='int'/>
+      <arg name='path' type='char *'/>
+    </function>
+    <struct name='xmlNotation' file='tree'/>
+    <typedef name='xmlNotationPtr' file='tree'/>
+    <typedef name='xmlNotationTablePtr' file='valid'/>
+    <struct name='xmlNs' file='tree'/>
+    <typedef name='xmlNsPtr' file='tree'/>
+    <typedef name='xmlNsType' file='tree'/>
+    <struct name='xmlOutputBuffer' file='xmlIO'/>
+    <function name='xmlOutputBufferClose' file='xmlIO'>
+      <return type='int'/>
+      <arg name='out' type='xmlOutputBufferPtr'/>
+    </function>
+    <function name='xmlOutputBufferCreateFd' file='xmlIO'>
+      <return type='xmlOutputBufferPtr'/>
+      <arg name='fd' type='int'/>
+      <arg name='encoder' type='xmlCharEncodingHandlerPtr'/>
+    </function>
+    <function name='xmlOutputBufferCreateFile' file='xmlIO'>
+      <return type='xmlOutputBufferPtr'/>
+      <arg name='file' type='FILE *'/>
+      <arg name='encoder' type='xmlCharEncodingHandlerPtr'/>
+    </function>
+    <function name='xmlOutputBufferCreateFilename' file='xmlIO'>
+      <return type='xmlOutputBufferPtr'/>
+      <arg name='URI' type='const char *'/>
+      <arg name='encoder' type='xmlCharEncodingHandlerPtr'/>
+      <arg name='compression' type='int'/>
+    </function>
+    <function name='xmlOutputBufferCreateIO' file='xmlIO'>
+      <return type='xmlOutputBufferPtr'/>
+      <arg name='iowrite' type='xmlOutputWriteCallback'/>
+      <arg name='ioclose' type='xmlOutputCloseCallback'/>
+      <arg name='ioctx' type='void *'/>
+      <arg name='encoder' type='xmlCharEncodingHandlerPtr'/>
+    </function>
+    <function name='xmlOutputBufferFlush' file='xmlIO'>
+      <return type='int'/>
+      <arg name='out' type='xmlOutputBufferPtr'/>
+    </function>
+    <typedef name='xmlOutputBufferPtr' file='tree'/>
+    <function name='xmlOutputBufferWrite' file='xmlIO'>
+      <return type='int'/>
+      <arg name='out' type='xmlOutputBufferPtr'/>
+      <arg name='len' type='int'/>
+      <arg name='buf' type='const char *'/>
+    </function>
+    <function name='xmlOutputBufferWriteString' file='xmlIO'>
+      <return type='int'/>
+      <arg name='out' type='xmlOutputBufferPtr'/>
+      <arg name='str' type='const char *'/>
+    </function>
+    <function name='xmlParseAttValue' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseAttribute' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='value' type='xmlChar **'/>
+    </function>
+    <function name='xmlParseAttributeListDecl' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseAttributeType' file='parserInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='tree' type='xmlEnumerationPtr *'/>
+    </function>
+    <function name='xmlParseBalancedChunkMemory' file='parser'>
+      <return type='int'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='sax' type='xmlSAXHandlerPtr'/>
+      <arg name='data' type='void *user_'/>
+      <arg name='depth' type='int'/>
+      <arg name='string' type='const xmlChar *'/>
+      <arg name='lst' type='xmlNodePtr *'/>
+    </function>
+    <function name='xmlParseCDSect' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseCatalogFile' file='catalog'>
+      <return type='xmlDocPtr'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlParseCharData' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='cdata' type='int'/>
+    </function>
+    <function name='xmlParseCharEncoding' file='encoding'>
+      <return type='xmlCharEncoding'/>
+      <arg name='name' type='const char *'/>
+    </function>
+    <function name='xmlParseCharRef' file='parserInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseChunk' file='parser'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='chunk' type='const char *'/>
+      <arg name='size' type='int'/>
+      <arg name='terminate' type='int'/>
+    </function>
+    <function name='xmlParseComment' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseContent' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseCtxtExternalEntity' file='parser'>
+      <return type='int'/>
+      <arg name='ctx' type='xmlParserCtxtPtr'/>
+      <arg name='URL' type='const xmlChar *'/>
+      <arg name='ID' type='const xmlChar *'/>
+      <arg name='lst' type='xmlNodePtr *'/>
+    </function>
+    <function name='xmlParseDTD' file='parser'>
+      <return type='xmlDtdPtr'/>
+      <arg name='ExternalID' type='const xmlChar *'/>
+      <arg name='SystemID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlParseDefaultDecl' file='parserInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='value' type='xmlChar **'/>
+    </function>
+    <function name='xmlParseDoc' file='parser'>
+      <return type='xmlDocPtr'/>
+      <arg name='cur' type='xmlChar *'/>
+    </function>
+    <function name='xmlParseDocTypeDecl' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseDocument' file='parser'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseElement' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseElementChildrenContentD' file='parserInternals'>
+      <return type='xmlElementContentPtr'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseElementChildrenContentDecl' file='parserInternals'>
+      <return type='xmlElementContentPtr'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseElementContentDecl' file='parserInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='name' type='xmlChar *'/>
+      <arg name='result' type='xmlElementContentPtr *'/>
+    </function>
+    <function name='xmlParseElementDecl' file='parserInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseElementMixedContentDecl' file='parserInternals'>
+      <return type='xmlElementContentPtr'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseEncName' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseEncodingDecl' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseEndTag' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseEntity' file='parser'>
+      <return type='xmlDocPtr'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlParseEntityDecl' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseEntityRef' file='parserInternals'>
+      <return type='xmlEntityPtr'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseEntityValue' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='orig' type='xmlChar **'/>
+    </function>
+    <function name='xmlParseEnumeratedType' file='parserInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='tree' type='xmlEnumerationPtr *'/>
+    </function>
+    <function name='xmlParseEnumerationType' file='parserInternals'>
+      <return type='xmlEnumerationPtr'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseExtParsedEnt' file='parser'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseExternalEntity' file='parser'>
+      <return type='int'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='sax' type='xmlSAXHandlerPtr'/>
+      <arg name='data' type='void *user_'/>
+      <arg name='depth' type='int'/>
+      <arg name='URL' type='const xmlChar *'/>
+      <arg name='ID' type='const xmlChar *'/>
+      <arg name='lst' type='xmlNodePtr *'/>
+    </function>
+    <function name='xmlParseExternalID' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='publicID' type='xmlChar **'/>
+      <arg name='strict' type='int'/>
+    </function>
+    <function name='xmlParseExternalSubset' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='ExternalID' type='const xmlChar *'/>
+      <arg name='SystemID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlParseFile' file='parser'>
+      <return type='xmlDocPtr'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlParseMarkupDecl' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseMemory' file='parser'>
+      <return type='xmlDocPtr'/>
+      <arg name='buffer' type='const char *'/>
+      <arg name='size' type='int'/>
+    </function>
+    <function name='xmlParseMisc' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseName' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseNamespace' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseNmtoken' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseNotationDecl' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseNotationType' file='parserInternals'>
+      <return type='xmlEnumerationPtr'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParsePEReference' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParsePI' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParsePITarget' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParsePubidLiteral' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseQuotedString' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseReference' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseSDDecl' file='parserInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseStartTag' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseSystemLiteral' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseTextDecl' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseURI' file='uri'>
+      <return type='xmlURIPtr'/>
+      <arg name='str' type='const char *'/>
+    </function>
+    <function name='xmlParseURIReference' file='uri'>
+      <return type='int'/>
+      <arg name='uri' type='xmlURIPtr'/>
+      <arg name='str' type='const char *'/>
+    </function>
+    <function name='xmlParseVersionInfo' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseVersionNum' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParseXMLDecl' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParserAddNodeInfo' file='parser'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='info' type='const xmlParserNodeInfoPtr'/>
+    </function>
+    <struct name='xmlParserCtxt' file='tree'/>
+    <typedef name='xmlParserCtxtPtr' file='tree'/>
+    <macro name='xmlParserDebugEntities' file='globals'/>
+    <function name='xmlParserError' file='xmlerror'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='msg' type='const char *'/>
+      <arg name='' type='...'/>
+    </function>
+    <enum name='xmlParserErrors' file='xmlerror'/>
+    <function name='xmlParserFindNodeInfo' file='parser'>
+      <return type='const xmlParserNodeInfo *'/>
+      <arg name='ctxt' type='const xmlParserCtxtPtr'/>
+      <arg name='node' type='const xmlNodePtr'/>
+    </function>
+    <function name='xmlParserFindNodeInfoIndex' file='parser'>
+      <return type='unsigned long'/>
+      <arg name='seq' type='const xmlParserNodeInfoSeqPtr'/>
+      <arg name='node' type='const xmlNodePtr'/>
+    </function>
+    <function name='xmlParserGetDirectory' file='xmlIO'>
+      <return type='char *'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlParserHandlePEReference' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlParserHandleReference' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <struct name='xmlParserInput' file='tree'/>
+    <struct name='xmlParserInputBuffer' file='xmlIO'/>
+    <function name='xmlParserInputBufferCreateFd' file='xmlIO'>
+      <return type='xmlParserInputBufferPtr'/>
+      <arg name='fd' type='int'/>
+      <arg name='enc' type='xmlCharEncoding'/>
+    </function>
+    <function name='xmlParserInputBufferCreateFile' file='xmlIO'>
+      <return type='xmlParserInputBufferPtr'/>
+      <arg name='file' type='FILE *'/>
+      <arg name='enc' type='xmlCharEncoding'/>
+    </function>
+    <function name='xmlParserInputBufferCreateFilename' file='xmlIO'>
+      <return type='xmlParserInputBufferPtr'/>
+      <arg name='URI' type='const char *'/>
+      <arg name='enc' type='xmlCharEncoding'/>
+    </function>
+    <function name='xmlParserInputBufferCreateFname' file='xmlIO'>
+      <return type='xmlParserInputBufferPtr'/>
+      <arg name='URI' type='const char *'/>
+      <arg name='enc' type='xmlCharEncoding'/>
+    </function>
+    <function name='xmlParserInputBufferCreateIO' file='xmlIO'>
+      <return type='xmlParserInputBufferPtr'/>
+      <arg name='ioread' type='xmlInputReadCallback'/>
+      <arg name='ioclose' type='xmlInputCloseCallback'/>
+      <arg name='ioctx' type='void *'/>
+      <arg name='enc' type='xmlCharEncoding'/>
+    </function>
+    <function name='xmlParserInputBufferCreateMem' file='xmlIO'>
+      <return type='xmlParserInputBufferPtr'/>
+      <arg name='mem' type='const char *'/>
+      <arg name='size' type='int'/>
+      <arg name='enc' type='xmlCharEncoding'/>
+    </function>
+    <function name='xmlParserInputBufferGrow' file='xmlIO'>
+      <return type='int'/>
+      <arg name='in' type='xmlParserInputBufferPtr'/>
+      <arg name='len' type='int'/>
+    </function>
+    <typedef name='xmlParserInputBufferPtr' file='tree'/>
+    <function name='xmlParserInputBufferPush' file='xmlIO'>
+      <return type='int'/>
+      <arg name='in' type='xmlParserInputBufferPtr'/>
+      <arg name='len' type='int'/>
+      <arg name='buf' type='const char *'/>
+    </function>
+    <function name='xmlParserInputBufferRead' file='xmlIO'>
+      <return type='int'/>
+      <arg name='in' type='xmlParserInputBufferPtr'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlParserInputGrow' file='parser'>
+      <return type='int'/>
+      <arg name='in' type='xmlParserInputPtr'/>
+      <arg name='len' type='int'/>
+    </function>
+    <typedef name='xmlParserInputPtr' file='tree'/>
+    <function name='xmlParserInputRead' file='parser'>
+      <return type='int'/>
+      <arg name='in' type='xmlParserInputPtr'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlParserInputShrink' file='parserInternals'>
+      <return type='void'/>
+      <arg name='in' type='xmlParserInputPtr'/>
+    </function>
+    <enum name='xmlParserInputState' file='parser'/>
+    <struct name='xmlParserNodeInfo' file='parser'/>
+    <typedef name='xmlParserNodeInfoPtr' file='parser'/>
+    <struct name='xmlParserNodeInfoSeq' file='parser'/>
+    <typedef name='xmlParserNodeInfoSeqPtr' file='parser'/>
+    <function name='xmlParserPrintFileContext' file='xmlerror'>
+      <return type='void'/>
+      <arg name='input' type='xmlParserInputPtr'/>
+    </function>
+    <function name='xmlParserPrintFileInfo' file='xmlerror'>
+      <return type='void'/>
+      <arg name='input' type='xmlParserInputPtr'/>
+    </function>
+    <function name='xmlParserValidityError' file='xmlerror'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='msg' type='const char *'/>
+      <arg name='' type='...'/>
+    </function>
+    <function name='xmlParserValidityWarning' file='xmlerror'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='msg' type='const char *'/>
+      <arg name='' type='...'/>
+    </function>
+    <macro name='xmlParserVersion' file='globals'/>
+    <function name='xmlParserWarning' file='xmlerror'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='msg' type='const char *'/>
+      <arg name='' type='...'/>
+    </function>
+    <function name='xmlPedanticParserDefault' file='parser'>
+      <return type='int'/>
+      <arg name='val' type='int'/>
+    </function>
+    <macro name='xmlPedanticParserDefaultValue' file='globals'/>
+    <function name='xmlPopInput' file='parserInternals'>
+      <return type='xmlChar'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlPrintURI' file='uri'>
+      <return type='void'/>
+      <arg name='stream' type='FILE *'/>
+      <arg name='uri' type='xmlURIPtr'/>
+    </function>
+    <function name='xmlPushInput' file='parserInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='input' type='xmlParserInputPtr'/>
+    </function>
+    <struct name='xmlRMutex' file='threads'/>
+    <function name='xmlRMutexLock' file='threads'>
+      <return type='void'/>
+      <arg name='tok' type='xmlRMutexPtr'/>
+    </function>
+    <typedef name='xmlRMutexPtr' file='threads'/>
+    <function name='xmlRMutexUnlock' file='threads'>
+      <return type='void'/>
+      <arg name='tok' type='xmlRMutexPtr'/>
+    </function>
+    <macro name='xmlRealloc' file='globals'/>
+    <function name='xmlReallocLoc' file='xmlmemory'>
+      <return type='void *'/>
+      <arg name='ptr' type='void *'/>
+      <arg name='size' type='size_t'/>
+      <arg name='file' type='const char *'/>
+      <arg name='line' type='int'/>
+    </function>
+    <function name='xmlReconciliateNs' file='tree'>
+      <return type='int'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='tree' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlRecoverDoc' file='parser'>
+      <return type='xmlDocPtr'/>
+      <arg name='cur' type='xmlChar *'/>
+    </function>
+    <function name='xmlRecoverFile' file='parser'>
+      <return type='xmlDocPtr'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlRecoverMemory' file='parser'>
+      <return type='xmlDocPtr'/>
+      <arg name='buffer' type='const char *'/>
+      <arg name='size' type='int'/>
+    </function>
+    <struct name='xmlRef' file='tree'/>
+    <typedef name='xmlRefPtr' file='tree'/>
+    <typedef name='xmlRefTablePtr' file='valid'/>
+    <function name='xmlRegisterCharEncodingHandler' file='encoding'>
+      <return type='void'/>
+      <arg name='handler' type='xmlCharEncodingHandlerPtr'/>
+    </function>
+    <function name='xmlRegisterDefaultInputCallbacks' file='xmlIO'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlRegisterDefaultOutputCallbacks' file='xmlIO'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlRegisterHTTPPostCallbacks' file='xmlIO'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlRegisterInputCallbacks' file='xmlIO'>
+      <return type='int'/>
+      <arg name='matchFunc' type='xmlInputMatchCallback'/>
+      <arg name='openFunc' type='xmlInputOpenCallback'/>
+      <arg name='readFunc' type='xmlInputReadCallback'/>
+      <arg name='closeFunc' type='xmlInputCloseCallback'/>
+    </function>
+    <function name='xmlRegisterOutputCallbacks' file='xmlIO'>
+      <return type='int'/>
+      <arg name='matchFunc' type='xmlOutputMatchCallback'/>
+      <arg name='openFunc' type='xmlOutputOpenCallback'/>
+      <arg name='writeFunc' type='xmlOutputWriteCallback'/>
+      <arg name='closeFunc' type='xmlOutputCloseCallback'/>
+    </function>
+    <function name='xmlRemoveID' file='valid'>
+      <return type='int'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='attr' type='xmlAttrPtr'/>
+    </function>
+    <function name='xmlRemoveProp' file='tree'>
+      <return type='int'/>
+      <arg name='cur' type='xmlAttrPtr'/>
+    </function>
+    <function name='xmlRemoveRef' file='valid'>
+      <return type='int'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='attr' type='xmlAttrPtr'/>
+    </function>
+    <function name='xmlReplaceNode' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='old' type='xmlNodePtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <macro name='xmlRootNode' file='tree'/>
+    <struct name='xmlSAXHandler' file='parser'/>
+    <typedef name='xmlSAXHandlerPtr' file='parser'/>
+    <struct name='xmlSAXLocator' file='parser'/>
+    <typedef name='xmlSAXLocatorPtr' file='parser'/>
+    <function name='xmlSAXParseDTD' file='parser'>
+      <return type='xmlDtdPtr'/>
+      <arg name='sax' type='xmlSAXHandlerPtr'/>
+      <arg name='ExternalID' type='const xmlChar *'/>
+      <arg name='SystemID' type='const xmlChar *'/>
+    </function>
+    <function name='xmlSAXParseDoc' file='parser'>
+      <return type='xmlDocPtr'/>
+      <arg name='sax' type='xmlSAXHandlerPtr'/>
+      <arg name='cur' type='xmlChar *'/>
+      <arg name='recovery' type='int'/>
+    </function>
+    <function name='xmlSAXParseEntity' file='parser'>
+      <return type='xmlDocPtr'/>
+      <arg name='sax' type='xmlSAXHandlerPtr'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlSAXParseFile' file='parser'>
+      <return type='xmlDocPtr'/>
+      <arg name='sax' type='xmlSAXHandlerPtr'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='recovery' type='int'/>
+    </function>
+    <function name='xmlSAXParseFileWithData' file='parser'>
+      <return type='xmlDocPtr'/>
+      <arg name='sax' type='xmlSAXHandlerPtr'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='recovery' type='int'/>
+      <arg name='data' type='void *'/>
+    </function>
+    <function name='xmlSAXParseMemory' file='parser'>
+      <return type='xmlDocPtr'/>
+      <arg name='sax' type='xmlSAXHandlerPtr'/>
+      <arg name='buffer' type='const char *'/>
+      <arg name='size' type='int'/>
+      <arg name='recovery' type='int'/>
+    </function>
+    <function name='xmlSAXUserParseFile' file='parser'>
+      <return type='int'/>
+      <arg name='sax' type='xmlSAXHandlerPtr'/>
+      <arg name='data' type='void *user_'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlSAXUserParseMemory' file='parser'>
+      <return type='int'/>
+      <arg name='sax' type='xmlSAXHandlerPtr'/>
+      <arg name='data' type='void *user_'/>
+      <arg name='buffer' type='const char *'/>
+      <arg name='size' type='int'/>
+    </function>
+    <function name='xmlSaveFile' file='tree'>
+      <return type='int'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='cur' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlSaveFileEnc' file='tree'>
+      <return type='int'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='cur' type='xmlDocPtr'/>
+      <arg name='encoding' type='const char *'/>
+    </function>
+    <function name='xmlSaveFileTo' file='tree'>
+      <return type='int'/>
+      <arg name='buf' type='xmlOutputBufferPtr'/>
+      <arg name='cur' type='xmlDocPtr'/>
+      <arg name='encoding' type='const char *'/>
+    </function>
+    <function name='xmlSaveFormatFile' file='tree'>
+      <return type='int'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='cur' type='xmlDocPtr'/>
+      <arg name='format' type='int'/>
+    </function>
+    <function name='xmlSaveFormatFileEnc' file='tree'>
+      <return type='int'/>
+      <arg name='filename' type='const char *'/>
+      <arg name='cur' type='xmlDocPtr'/>
+      <arg name='encoding' type='const char *'/>
+      <arg name='format' type='int'/>
+    </function>
+    <function name='xmlSaveFormatFileTo' file='tree'>
+      <return type='int'/>
+      <arg name='buf' type='xmlOutputBufferPtr'/>
+      <arg name='cur' type='xmlDocPtr'/>
+      <arg name='encoding' type='const char *'/>
+      <arg name='format' type='int'/>
+    </function>
+    <macro name='xmlSaveNoEmptyTags' file='globals'/>
+    <function name='xmlSaveUri' file='uri'>
+      <return type='xmlChar *'/>
+      <arg name='uri' type='xmlURIPtr'/>
+    </function>
+    <function name='xmlScanName' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlSearchNs' file='tree'>
+      <return type='xmlNsPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='nameSpace' type='const xmlChar *'/>
+    </function>
+    <function name='xmlSearchNsByHref' file='tree'>
+      <return type='xmlNsPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='href' type='const xmlChar *'/>
+    </function>
+    <function name='xmlSetBufferAllocationScheme' file='tree'>
+      <return type='void'/>
+      <arg name='scheme' type='xmlBufferAllocationScheme'/>
+    </function>
+    <function name='xmlSetCompressMode' file='tree'>
+      <return type='void'/>
+      <arg name='mode' type='int'/>
+    </function>
+    <function name='xmlSetDocCompressMode' file='tree'>
+      <return type='void'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='mode' type='int'/>
+    </function>
+    <function name='xmlSetEntityReferenceFunc' file='parserInternals'>
+      <return type='void'/>
+      <arg name='func' type='xmlEntityReferenceFunc'/>
+    </function>
+    <function name='xmlSetExternalEntityLoader' file='parser'>
+      <return type='void'/>
+      <arg name='f' type='xmlExternalEntityLoader'/>
+    </function>
+    <function name='xmlSetFeature' file='parser'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='name' type='const char *'/>
+      <arg name='value' type='void *'/>
+    </function>
+    <function name='xmlSetGenericErrorFunc' file='xmlerror'>
+      <return type='void'/>
+      <arg name='ctx' type='void *'/>
+      <arg name='handler' type='xmlGenericErrorFunc'/>
+    </function>
+    <function name='xmlSetListDoc' file='tree'>
+      <return type='void'/>
+      <arg name='list' type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlSetNs' file='tree'>
+      <return type='void'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='ns' type='xmlNsPtr'/>
+    </function>
+    <function name='xmlSetNsProp' file='tree'>
+      <return type='xmlAttrPtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='ns' type='xmlNsPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='value' type='const xmlChar *'/>
+    </function>
+    <function name='xmlSetProp' file='tree'>
+      <return type='xmlAttrPtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='value' type='const xmlChar *'/>
+    </function>
+    <function name='xmlSetTreeDoc' file='tree'>
+      <return type='void'/>
+      <arg name='tree' type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlSetupParserForBuffer' file='parser'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='buffer' type='const xmlChar*'/>
+      <arg name='filename' type='const char *'/>
+    </function>
+    <function name='xmlShell' file='debugXML'>
+      <return type='void'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='filename' type='char *'/>
+      <arg name='input' type='xmlShellReadlineFunc'/>
+      <arg name='output' type='FILE *'/>
+    </function>
+    <function name='xmlShellBase' file='debugXML'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlShellCtxtPtr'/>
+      <arg name='arg' type='char *'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='node2' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlShellCat' file='debugXML'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlShellCtxtPtr'/>
+      <arg name='arg' type='char *'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='node2' type='xmlNodePtr'/>
+    </function>
+    <struct name='xmlShellCtxt' file='debugXML'/>
+    <typedef name='xmlShellCtxtPtr' file='debugXML'/>
+    <function name='xmlShellDir' file='debugXML'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlShellCtxtPtr'/>
+      <arg name='arg' type='char *'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='node2' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlShellDu' file='debugXML'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlShellCtxtPtr'/>
+      <arg name='arg' type='char *'/>
+      <arg name='tree' type='xmlNodePtr'/>
+      <arg name='node2' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlShellList' file='debugXML'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlShellCtxtPtr'/>
+      <arg name='arg' type='char *'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='node2' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlShellLoad' file='debugXML'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlShellCtxtPtr'/>
+      <arg name='filename' type='char *'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='node2' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlShellPrintNode' file='debugXML'>
+      <return type='void'/>
+      <arg name='node' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlShellPrintXPathError' file='debugXML'>
+      <return type='void'/>
+      <arg name='errorType' type='int'/>
+      <arg name='arg' type='const char *'/>
+    </function>
+    <function name='xmlShellPrintXPathResult' file='debugXML'>
+      <return type='void'/>
+      <arg name='list' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlShellPwd' file='debugXML'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlShellCtxtPtr'/>
+      <arg name='buffer' type='char *'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='node2' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlShellSave' file='debugXML'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlShellCtxtPtr'/>
+      <arg name='filename' type='char *'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='node2' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlShellValidate' file='debugXML'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlShellCtxtPtr'/>
+      <arg name='dtd' type='char *'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='node2' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlShellWrite' file='debugXML'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlShellCtxtPtr'/>
+      <arg name='filename' type='char *'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='node2' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlSkipBlankChars' file='parserInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlSnprintfElementContent' file='valid'>
+      <return type='void'/>
+      <arg name='buf' type='char *'/>
+      <arg name='size' type='int'/>
+      <arg name='content' type='xmlElementContentPtr'/>
+      <arg name='glob' type='int'/>
+    </function>
+    <function name='xmlSplitQName' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='prefix' type='xmlChar **'/>
+    </function>
+    <function name='xmlSplitQName2' file='valid'>
+      <return type='xmlChar *'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='prefix' type='xmlChar **'/>
+    </function>
+    <function name='xmlSprintfElementContent' file='valid'>
+      <return type='void'/>
+      <arg name='buf' type='char *'/>
+      <arg name='content' type='xmlElementContentPtr'/>
+      <arg name='glob' type='int'/>
+    </function>
+    <function name='xmlStopParser' file='parser'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+    </function>
+    <function name='xmlStrEqual' file='parser'>
+      <return type='int'/>
+      <arg name='str1' type='const xmlChar *'/>
+      <arg name='str2' type='const xmlChar *'/>
+    </function>
+    <function name='xmlStrcasecmp' file='parser'>
+      <return type='int'/>
+      <arg name='str1' type='const xmlChar *'/>
+      <arg name='str2' type='const xmlChar *'/>
+    </function>
+    <function name='xmlStrcasestr' file='parser'>
+      <return type='const xmlChar *'/>
+      <arg name='str' type='const xmlChar *'/>
+      <arg name='val' type='xmlChar *'/>
+    </function>
+    <function name='xmlStrcat' file='parser'>
+      <return type='xmlChar *'/>
+      <arg name='cur' type='xmlChar *'/>
+      <arg name='add' type='const xmlChar *'/>
+    </function>
+    <function name='xmlStrchr' file='parser'>
+      <return type='const xmlChar *'/>
+      <arg name='str' type='const xmlChar *'/>
+      <arg name='val' type='xmlChar'/>
+    </function>
+    <function name='xmlStrcmp' file='parser'>
+      <return type='int'/>
+      <arg name='str1' type='const xmlChar *'/>
+      <arg name='str2' type='const xmlChar *'/>
+    </function>
+    <function name='xmlStrdup' file='parser'>
+      <return type='xmlChar *'/>
+      <arg name='cur' type='const xmlChar *'/>
+    </function>
+    <function name='xmlStringCurrentChar' file='parserInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='cur' type='const xmlChar *'/>
+      <arg name='len' type='int *'/>
+    </function>
+    <function name='xmlStringDecodeEntities' file='parserInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='str' type='const xmlChar *'/>
+      <arg name='what' type='int'/>
+      <arg name='end' type='xmlChar'/>
+      <arg name='end2' type='xmlChar'/>
+      <arg name='end3' type='xmlChar'/>
+    </function>
+    <function name='xmlStringGetNodeList' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='value' type='const xmlChar *'/>
+    </function>
+    <function name='xmlStringLenGetNodeList' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='value' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlStrlen' file='parser'>
+      <return type='int'/>
+      <arg name='str' type='const xmlChar *'/>
+    </function>
+    <function name='xmlStrncasecmp' file='parser'>
+      <return type='int'/>
+      <arg name='str1' type='const xmlChar *'/>
+      <arg name='str2' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlStrncat' file='parser'>
+      <return type='xmlChar *'/>
+      <arg name='cur' type='xmlChar *'/>
+      <arg name='add' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlStrncmp' file='parser'>
+      <return type='int'/>
+      <arg name='str1' type='const xmlChar *'/>
+      <arg name='str2' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlStrndup' file='parser'>
+      <return type='xmlChar *'/>
+      <arg name='cur' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlStrstr' file='parser'>
+      <return type='const xmlChar *'/>
+      <arg name='str' type='const xmlChar *'/>
+      <arg name='val' type='const xmlChar *'/>
+    </function>
+    <function name='xmlStrsub' file='parser'>
+      <return type='xmlChar *'/>
+      <arg name='str' type='const xmlChar *'/>
+      <arg name='start' type='int'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlSubstituteEntitiesDefault' file='parser'>
+      <return type='int'/>
+      <arg name='val' type='int'/>
+    </function>
+    <macro name='xmlSubstituteEntitiesDefaultValue' file='globals'/>
+    <function name='xmlSwitchEncoding' file='parserInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='enc' type='xmlCharEncoding'/>
+    </function>
+    <function name='xmlSwitchToEncoding' file='parserInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlParserCtxtPtr'/>
+      <arg name='handler' type='xmlCharEncodingHandlerPtr'/>
+    </function>
+    <function name='xmlTextConcat' file='tree'>
+      <return type='void'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='content' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlTextMerge' file='tree'>
+      <return type='xmlNodePtr'/>
+      <arg name='first' type='xmlNodePtr'/>
+      <arg name='second' type='xmlNodePtr'/>
+    </function>
+    <struct name='xmlURI' file='uri'/>
+    <function name='xmlURIEscape' file='uri'>
+      <return type='xmlChar *'/>
+      <arg name='str' type='const xmlChar *'/>
+    </function>
+    <function name='xmlURIEscapeStr' file='uri'>
+      <return type='xmlChar *'/>
+      <arg name='str' type='const xmlChar *'/>
+      <arg name='list' type='const xmlChar *'/>
+    </function>
+    <typedef name='xmlURIPtr' file='uri'/>
+    <function name='xmlURIUnescapeString' file='uri'>
+      <return type='char *'/>
+      <arg name='str' type='const char *'/>
+      <arg name='len' type='int'/>
+      <arg name='target' type='char *'/>
+    </function>
+    <function name='xmlUTF8Strlen' file='encoding'>
+      <return type='int'/>
+      <arg name='utf' type='const xmlChar *'/>
+    </function>
+    <function name='xmlUTF8Strloc' file='encoding'>
+      <return type='int'/>
+      <arg name='utf' type='const xmlChar *'/>
+      <arg name='utfchar' type='const xmlChar *'/>
+    </function>
+    <function name='xmlUTF8Strndup' file='encoding'>
+      <return type='xmlChar *'/>
+      <arg name='utf' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlUTF8Strpos' file='encoding'>
+      <return type='xmlChar *'/>
+      <arg name='utf' type='const xmlChar *'/>
+      <arg name='pos' type='int'/>
+    </function>
+    <function name='xmlUTF8Strsize' file='encoding'>
+      <return type='int'/>
+      <arg name='utf' type='const xmlChar *'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlUTF8Strsub' file='encoding'>
+      <return type='xmlChar *'/>
+      <arg name='utf' type='const xmlChar *'/>
+      <arg name='start' type='int'/>
+      <arg name='len' type='int'/>
+    </function>
+    <function name='xmlUnlinkNode' file='tree'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlUnlockLibrary' file='threads'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlUnsetNsProp' file='tree'>
+      <return type='int'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='ns' type='xmlNsPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlUnsetProp' file='tree'>
+      <return type='int'/>
+      <arg name='node' type='xmlNodePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <struct name='xmlValidCtxt' file='valid'/>
+    <typedef name='xmlValidCtxtPtr' file='valid'/>
+    <function name='xmlValidGetPotentialChildren' file='valid'>
+      <return type='int'/>
+      <arg name='ctree' type='xmlElementContent *'/>
+      <arg name='list' type='const xmlChar **'/>
+      <arg name='len' type='int *'/>
+      <arg name='max' type='int'/>
+    </function>
+    <function name='xmlValidGetValidElements' file='valid'>
+      <return type='int'/>
+      <arg name='prev' type='xmlNode *'/>
+      <arg name='next' type='xmlNode *'/>
+      <arg name='list' type='const xmlChar **'/>
+      <arg name='max' type='int'/>
+    </function>
+    <function name='xmlValidNormalizeAttributeValue' file='valid'>
+      <return type='xmlChar *'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='elem' type='xmlNodePtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='value' type='const xmlChar *'/>
+    </function>
+    <struct name='xmlValidState' file='valid'/>
+    <typedef name='xmlValidStatePtr' file='valid'/>
+    <function name='xmlValidateAttributeDecl' file='valid'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='attr' type='xmlAttributePtr'/>
+    </function>
+    <function name='xmlValidateAttributeValue' file='valid'>
+      <return type='int'/>
+      <arg name='type' type='xmlAttributeType'/>
+      <arg name='value' type='const xmlChar *'/>
+    </function>
+    <function name='xmlValidateDocument' file='valid'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlValidateDocumentFinal' file='valid'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlValidateDtd' file='valid'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='dtd' type='xmlDtdPtr'/>
+    </function>
+    <function name='xmlValidateDtdFinal' file='valid'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlValidateElement' file='valid'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='elem' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlValidateElementDecl' file='valid'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='elem' type='xmlElementPtr'/>
+    </function>
+    <function name='xmlValidateNotationDecl' file='valid'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='nota' type='xmlNotationPtr'/>
+    </function>
+    <function name='xmlValidateNotationUse' file='valid'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='notationName' type='const xmlChar *'/>
+    </function>
+    <function name='xmlValidateOneAttribute' file='valid'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='elem' type='xmlNodePtr'/>
+      <arg name='attr' type='xmlAttrPtr'/>
+      <arg name='value' type='const xmlChar *'/>
+    </function>
+    <function name='xmlValidateOneElement' file='valid'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='elem' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlValidateRoot' file='valid'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlValidCtxtPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlXIncludeProcess' file='xinclude'>
+      <return type='int'/>
+      <arg name='doc' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlXPathAddValues' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <struct name='xmlXPathAxis' file='xpath'/>
+    <typedef name='xmlXPathAxisPtr' file='xpath'/>
+    <function name='xmlXPathBooleanFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathCastBooleanToNumber' file='xpath'>
+      <return type='double'/>
+      <arg name='val' type='int'/>
+    </function>
+    <function name='xmlXPathCastBooleanToString' file='xpath'>
+      <return type='xmlChar *'/>
+      <arg name='val' type='int'/>
+    </function>
+    <function name='xmlXPathCastNodeSetToBoolean' file='xpath'>
+      <return type='int'/>
+      <arg name='ns' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathCastNodeSetToNumber' file='xpath'>
+      <return type='double'/>
+      <arg name='ns' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathCastNodeSetToString' file='xpath'>
+      <return type='xmlChar *'/>
+      <arg name='ns' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathCastNodeToNumber' file='xpath'>
+      <return type='double'/>
+      <arg name='node' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathCastNodeToString' file='xpath'>
+      <return type='xmlChar *'/>
+      <arg name='node' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathCastNumberToBoolean' file='xpath'>
+      <return type='int'/>
+      <arg name='val' type='double'/>
+    </function>
+    <function name='xmlXPathCastNumberToString' file='xpath'>
+      <return type='xmlChar *'/>
+      <arg name='val' type='double'/>
+    </function>
+    <function name='xmlXPathCastStringToBoolean' file='xpath'>
+      <return type='int'/>
+      <arg name='val' type='const xmlChar *'/>
+    </function>
+    <function name='xmlXPathCastStringToNumber' file='xpath'>
+      <return type='double'/>
+      <arg name='val' type='const xmlChar *'/>
+    </function>
+    <function name='xmlXPathCastToBoolean' file='xpath'>
+      <return type='int'/>
+      <arg name='val' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPathCastToNumber' file='xpath'>
+      <return type='double'/>
+      <arg name='val' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPathCastToString' file='xpath'>
+      <return type='xmlChar *'/>
+      <arg name='val' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPathCeilingFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <macro name='xmlXPathCheckError' file='xpathInternals'/>
+    <function name='xmlXPathCmpNodes' file='xpath'>
+      <return type='int'/>
+      <arg name='node1' type='xmlNodePtr'/>
+      <arg name='node2' type='xmlNodePtr'/>
+    </function>
+    <struct name='xmlXPathCompExpr' file='xpath'/>
+    <typedef name='xmlXPathCompExprPtr' file='xpath'/>
+    <function name='xmlXPathCompareValues' file='xpathInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='inf' type='int'/>
+      <arg name='strict' type='int'/>
+    </function>
+    <function name='xmlXPathCompile' file='xpath'>
+      <return type='xmlXPathCompExprPtr'/>
+      <arg name='str' type='const xmlChar *'/>
+    </function>
+    <function name='xmlXPathCompiledEval' file='xpath'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='comp' type='xmlXPathCompExprPtr'/>
+      <arg name='ctx' type='xmlXPathContextPtr'/>
+    </function>
+    <function name='xmlXPathConcatFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathContainsFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <struct name='xmlXPathContext' file='xpath'/>
+    <typedef name='xmlXPathContextPtr' file='xpath'/>
+    <function name='xmlXPathConvertBoolean' file='xpath'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPathConvertNumber' file='xpath'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPathConvertString' file='xpath'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPathCountFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathDebugDumpCompExpr' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='output' type='FILE *'/>
+      <arg name='comp' type='xmlXPathCompExprPtr'/>
+      <arg name='depth' type='int'/>
+    </function>
+    <function name='xmlXPathDebugDumpObject' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='output' type='FILE *'/>
+      <arg name='cur' type='xmlXPathObjectPtr'/>
+      <arg name='depth' type='int'/>
+    </function>
+    <function name='xmlXPathDifference' file='xpathInternals'>
+      <return type='xmlNodeSetPtr'/>
+      <arg name='nodes1' type='xmlNodeSetPtr'/>
+      <arg name='nodes2' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathDistinct' file='xpathInternals'>
+      <return type='xmlNodeSetPtr'/>
+      <arg name='nodes' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathDistinctSorted' file='xpathInternals'>
+      <return type='xmlNodeSetPtr'/>
+      <arg name='nodes' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathDivValues' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <macro name='xmlXPathEmptyNodeSet' file='xpathInternals'/>
+    <function name='xmlXPathEqualValues' file='xpathInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <enum name='xmlXPathError' file='xpath'/>
+    <function name='xmlXPathEval' file='xpath'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='str' type='const xmlChar *'/>
+      <arg name='ctx' type='xmlXPathContextPtr'/>
+    </function>
+    <function name='xmlXPathEvalExpr' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <function name='xmlXPathEvalExpression' file='xpath'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='str' type='const xmlChar *'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+    </function>
+    <function name='xmlXPathEvalPredicate' file='xpath'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+      <arg name='res' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPathEvaluatePredicateResult' file='xpathInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='res' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPathFalseFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathFloorFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathFreeCompExpr' file='xpath'>
+      <return type='void'/>
+      <arg name='comp' type='xmlXPathCompExprPtr'/>
+    </function>
+    <function name='xmlXPathFreeContext' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+    </function>
+    <function name='xmlXPathFreeNodeSet' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='obj' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathFreeNodeSetList' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='obj' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPathFreeObject' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='obj' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPathFreeParserContext' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <typedef name='xmlXPathFuncPtr' file='xpath'/>
+    <struct name='xmlXPathFunct' file='xpath'/>
+    <function name='xmlXPathFunctionLookup' file='xpathInternals'>
+      <return type='xmlXPathFunction'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlXPathFunctionLookupNS' file='xpathInternals'>
+      <return type='xmlXPathFunction'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='uri' type='const xmlChar *ns_'/>
+    </function>
+    <macro name='xmlXPathGetContextNode' file='xpathInternals'/>
+    <macro name='xmlXPathGetDocument' file='xpathInternals'/>
+    <macro name='xmlXPathGetError' file='xpathInternals'/>
+    <function name='xmlXPathHasSameNodes' file='xpathInternals'>
+      <return type='int'/>
+      <arg name='nodes1' type='xmlNodeSetPtr'/>
+      <arg name='nodes2' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathIdFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathInit' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='void' type=''/>
+    </function>
+    <function name='xmlXPathIntersection' file='xpathInternals'>
+      <return type='xmlNodeSetPtr'/>
+      <arg name='nodes1' type='xmlNodeSetPtr'/>
+      <arg name='nodes2' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathIsInf' file='xpath'>
+      <return type='int'/>
+      <arg name='val' type='double'/>
+    </function>
+    <function name='xmlXPathIsNaN' file='xpath'>
+      <return type='int'/>
+      <arg name='val' type='double'/>
+    </function>
+    <function name='xmlXPathIsNodeType' file='xpathInternals'>
+      <return type='int'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlXPathLangFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathLastFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathLeading' file='xpathInternals'>
+      <return type='xmlNodeSetPtr'/>
+      <arg name='nodes1' type='xmlNodeSetPtr'/>
+      <arg name='nodes2' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathLeadingSorted' file='xpathInternals'>
+      <return type='xmlNodeSetPtr'/>
+      <arg name='nodes1' type='xmlNodeSetPtr'/>
+      <arg name='nodes2' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathLocalNameFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathModValues' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <function name='xmlXPathMultValues' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <function name='xmlXPathNamespaceURIFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathNewBoolean' file='xpathInternals'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='int'/>
+    </function>
+    <function name='xmlXPathNewCString' file='xpathInternals'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='const char *'/>
+    </function>
+    <function name='xmlXPathNewContext' file='xpathInternals'>
+      <return type='xmlXPathContextPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+    </function>
+    <function name='xmlXPathNewFloat' file='xpathInternals'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='double'/>
+    </function>
+    <function name='xmlXPathNewNodeSet' file='xpathInternals'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNewNodeSetList' file='xpathInternals'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathNewParserContext' file='xpathInternals'>
+      <return type='xmlXPathParserContextPtr'/>
+      <arg name='str' type='const xmlChar *'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+    </function>
+    <function name='xmlXPathNewString' file='xpathInternals'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='const xmlChar *'/>
+    </function>
+    <function name='xmlXPathNewValueTree' file='xpathInternals'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNextAncestor' file='xpathInternals'>
+      <return type='xmlNodePtr'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNextAncestorOrSelf' file='xpathInternals'>
+      <return type='xmlNodePtr'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNextAttribute' file='xpathInternals'>
+      <return type='xmlNodePtr'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNextChild' file='xpathInternals'>
+      <return type='xmlNodePtr'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNextDescendant' file='xpathInternals'>
+      <return type='xmlNodePtr'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNextDescendantOrSelf' file='xpathInternals'>
+      <return type='xmlNodePtr'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNextFollowing' file='xpathInternals'>
+      <return type='xmlNodePtr'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNextFollowingSibling' file='xpathInternals'>
+      <return type='xmlNodePtr'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNextNamespace' file='xpathInternals'>
+      <return type='xmlNodePtr'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNextParent' file='xpathInternals'>
+      <return type='xmlNodePtr'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNextPreceding' file='xpathInternals'>
+      <return type='xmlNodePtr'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNextPrecedingSibling' file='xpathInternals'>
+      <return type='xmlNodePtr'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNextSelf' file='xpathInternals'>
+      <return type='xmlNodePtr'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='cur' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNodeLeading' file='xpathInternals'>
+      <return type='xmlNodeSetPtr'/>
+      <arg name='nodes' type='xmlNodeSetPtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNodeLeadingSorted' file='xpathInternals'>
+      <return type='xmlNodeSetPtr'/>
+      <arg name='nodes' type='xmlNodeSetPtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNodeSetAdd' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNodeSetPtr'/>
+      <arg name='val' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNodeSetAddUnique' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNodeSetPtr'/>
+      <arg name='val' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNodeSetContains' file='xpathInternals'>
+      <return type='int'/>
+      <arg name='cur' type='xmlNodeSetPtr'/>
+      <arg name='val' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNodeSetCreate' file='xpathInternals'>
+      <return type='xmlNodeSetPtr'/>
+      <arg name='val' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNodeSetDel' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNodeSetPtr'/>
+      <arg name='val' type='xmlNodePtr'/>
+    </function>
+    <macro name='xmlXPathNodeSetGetLength' file='xpath'/>
+    <macro name='xmlXPathNodeSetIsEmpty' file='xpath'/>
+    <macro name='xmlXPathNodeSetItem' file='xpath'/>
+    <function name='xmlXPathNodeSetMerge' file='xpathInternals'>
+      <return type='xmlNodeSetPtr'/>
+      <arg name='val1' type='xmlNodeSetPtr'/>
+      <arg name='val2' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathNodeSetRemove' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='cur' type='xmlNodeSetPtr'/>
+      <arg name='val' type='int'/>
+    </function>
+    <function name='xmlXPathNodeSetSort' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='set' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathNodeTrailing' file='xpathInternals'>
+      <return type='xmlNodeSetPtr'/>
+      <arg name='nodes' type='xmlNodeSetPtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNodeTrailingSorted' file='xpathInternals'>
+      <return type='xmlNodeSetPtr'/>
+      <arg name='nodes' type='xmlNodeSetPtr'/>
+      <arg name='node' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPathNormalizeFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathNotFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathNsLookup' file='xpathInternals'>
+      <return type='const xmlChar *'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+      <arg name='prefix' type='const xmlChar *'/>
+    </function>
+    <function name='xmlXPathNumberFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <struct name='xmlXPathObject' file='xpath'/>
+    <function name='xmlXPathObjectCopy' file='xpath'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='xmlXPathObjectPtr'/>
+    </function>
+    <typedef name='xmlXPathObjectPtr' file='xpath'/>
+    <enum name='xmlXPathObjectType' file='xpath'/>
+    <function name='xmlXPathParseNCName' file='xpathInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <function name='xmlXPathParseName' file='xpathInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <struct name='xmlXPathParserContext' file='xpath'/>
+    <typedef name='xmlXPathParserContextPtr' file='xpath'/>
+    <function name='xmlXPathPopBoolean' file='xpathInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <function name='xmlXPathPopExternal' file='xpathInternals'>
+      <return type='void *'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <function name='xmlXPathPopNodeSet' file='xpathInternals'>
+      <return type='xmlNodeSetPtr'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <function name='xmlXPathPopNumber' file='xpathInternals'>
+      <return type='double'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <function name='xmlXPathPopString' file='xpathInternals'>
+      <return type='xmlChar *'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <function name='xmlXPathPositionFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathRegisterAllFunctions' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+    </function>
+    <function name='xmlXPathRegisterFunc' file='xpathInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='f' type='xmlXPathFunction'/>
+    </function>
+    <function name='xmlXPathRegisterFuncLookup' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+      <arg name='f' type='xmlXPathFuncLookupFunc'/>
+      <arg name='funcCtxt' type='void *'/>
+    </function>
+    <function name='xmlXPathRegisterFuncNS' file='xpathInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='uri' type='const xmlChar *ns_'/>
+      <arg name='f' type='xmlXPathFunction'/>
+    </function>
+    <function name='xmlXPathRegisterNs' file='xpathInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+      <arg name='prefix' type='const xmlChar *'/>
+      <arg name='uri' type='const xmlChar *ns_'/>
+    </function>
+    <function name='xmlXPathRegisterVariable' file='xpathInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='value' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPathRegisterVariableLookup' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+      <arg name='f' type='xmlXPathVariableLookupFunc'/>
+      <arg name='data' type='void *'/>
+    </function>
+    <function name='xmlXPathRegisterVariableNS' file='xpathInternals'>
+      <return type='int'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='uri' type='const xmlChar *ns_'/>
+      <arg name='value' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPathRegisteredFuncsCleanup' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+    </function>
+    <function name='xmlXPathRegisteredNsCleanup' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+    </function>
+    <function name='xmlXPathRegisteredVariablesCleanup' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+    </function>
+    <macro name='xmlXPathReturnBoolean' file='xpathInternals'/>
+    <macro name='xmlXPathReturnEmptyNodeSet' file='xpathInternals'/>
+    <macro name='xmlXPathReturnEmptyString' file='xpathInternals'/>
+    <macro name='xmlXPathReturnExternal' file='xpathInternals'/>
+    <macro name='xmlXPathReturnFalse' file='xpathInternals'/>
+    <macro name='xmlXPathReturnNodeSet' file='xpathInternals'/>
+    <macro name='xmlXPathReturnNumber' file='xpathInternals'/>
+    <macro name='xmlXPathReturnString' file='xpathInternals'/>
+    <macro name='xmlXPathReturnTrue' file='xpathInternals'/>
+    <function name='xmlXPathRoot' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <function name='xmlXPathRoundFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <macro name='xmlXPathSetArityError' file='xpathInternals'/>
+    <macro name='xmlXPathSetError' file='xpathInternals'/>
+    <macro name='xmlXPathSetTypeError' file='xpathInternals'/>
+    <macro name='xmlXPathStackIsExternal' file='xpathInternals'/>
+    <macro name='xmlXPathStackIsNodeSet' file='xpathInternals'/>
+    <function name='xmlXPathStartsWithFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathStringEvalNumber' file='xpathInternals'>
+      <return type='double'/>
+      <arg name='str' type='const xmlChar *'/>
+    </function>
+    <function name='xmlXPathStringFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathStringLengthFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathSubValues' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <function name='xmlXPathSubstringAfterFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathSubstringBeforeFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathSubstringFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathSumFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathTrailing' file='xpathInternals'>
+      <return type='xmlNodeSetPtr'/>
+      <arg name='nodes1' type='xmlNodeSetPtr'/>
+      <arg name='nodes2' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathTrailingSorted' file='xpathInternals'>
+      <return type='xmlNodeSetPtr'/>
+      <arg name='nodes1' type='xmlNodeSetPtr'/>
+      <arg name='nodes2' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathTranslateFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPathTrueFunction' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <struct name='xmlXPathType' file='xpath'/>
+    <typedef name='xmlXPathTypePtr' file='xpath'/>
+    <function name='xmlXPathValueFlipSign' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <struct name='xmlXPathVariable' file='xpath'/>
+    <function name='xmlXPathVariableLookup' file='xpathInternals'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+    </function>
+    <function name='xmlXPathVariableLookupNS' file='xpathInternals'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='ctxt' type='xmlXPathContextPtr'/>
+      <arg name='name' type='const xmlChar *'/>
+      <arg name='uri' type='const xmlChar *ns_'/>
+    </function>
+    <typedef name='xmlXPathVariablePtr' file='xpath'/>
+    <function name='xmlXPathWrapCString' file='xpathInternals'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='char *'/>
+    </function>
+    <function name='xmlXPathWrapExternal' file='xpathInternals'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='void *'/>
+    </function>
+    <function name='xmlXPathWrapNodeSet' file='xpathInternals'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPathWrapString' file='xpathInternals'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='xmlChar *'/>
+    </function>
+    <function name='xmlXPatherror' file='xpathInternals'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='file' type='const char *'/>
+      <arg name='line' type='int'/>
+      <arg name='no' type='int'/>
+    </function>
+    <function name='xmlXPtrBuildNodeList' file='xpointer'>
+      <return type='xmlNodePtr'/>
+      <arg name='obj' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPtrEval' file='xpointer'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='str' type='const xmlChar *'/>
+      <arg name='ctx' type='xmlXPathContextPtr'/>
+    </function>
+    <function name='xmlXPtrEvalRangePredicate' file='xpointer'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+    </function>
+    <function name='xmlXPtrFreeLocationSet' file='xpointer'>
+      <return type='void'/>
+      <arg name='obj' type='xmlLocationSetPtr'/>
+    </function>
+    <function name='xmlXPtrLocationSetAdd' file='xpointer'>
+      <return type='void'/>
+      <arg name='cur' type='xmlLocationSetPtr'/>
+      <arg name='val' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPtrLocationSetCreate' file='xpointer'>
+      <return type='xmlLocationSetPtr'/>
+      <arg name='val' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPtrLocationSetDel' file='xpointer'>
+      <return type='void'/>
+      <arg name='cur' type='xmlLocationSetPtr'/>
+      <arg name='val' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPtrLocationSetMerge' file='xpointer'>
+      <return type='xmlLocationSetPtr'/>
+      <arg name='val1' type='xmlLocationSetPtr'/>
+      <arg name='val2' type='xmlLocationSetPtr'/>
+    </function>
+    <function name='xmlXPtrLocationSetRemove' file='xpointer'>
+      <return type='void'/>
+      <arg name='cur' type='xmlLocationSetPtr'/>
+      <arg name='val' type='int'/>
+    </function>
+    <function name='xmlXPtrNewCollapsedRange' file='xpointer'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='start' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPtrNewContext' file='xpointer'>
+      <return type='xmlXPathContextPtr'/>
+      <arg name='doc' type='xmlDocPtr'/>
+      <arg name='here' type='xmlNodePtr'/>
+      <arg name='origin' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPtrNewLocationSetNodeSet' file='xpointer'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='set' type='xmlNodeSetPtr'/>
+    </function>
+    <function name='xmlXPtrNewLocationSetNodes' file='xpointer'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='start' type='xmlNodePtr'/>
+      <arg name='end' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPtrNewRange' file='xpointer'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='start' type='xmlNodePtr'/>
+      <arg name='startindex' type='int'/>
+      <arg name='end' type='xmlNodePtr'/>
+      <arg name='endindex' type='int'/>
+    </function>
+    <function name='xmlXPtrNewRangeNodeObject' file='xpointer'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='start' type='xmlNodePtr'/>
+      <arg name='end' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPtrNewRangeNodePoint' file='xpointer'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='start' type='xmlNodePtr'/>
+      <arg name='end' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPtrNewRangeNodes' file='xpointer'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='start' type='xmlNodePtr'/>
+      <arg name='end' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPtrNewRangePointNode' file='xpointer'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='start' type='xmlXPathObjectPtr'/>
+      <arg name='end' type='xmlNodePtr'/>
+    </function>
+    <function name='xmlXPtrNewRangePoints' file='xpointer'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='start' type='xmlXPathObjectPtr'/>
+      <arg name='end' type='xmlXPathObjectPtr'/>
+    </function>
+    <function name='xmlXPtrRangeToFunction' file='xpointer'>
+      <return type='void'/>
+      <arg name='ctxt' type='xmlXPathParserContextPtr'/>
+      <arg name='nargs' type='int'/>
+    </function>
+    <function name='xmlXPtrWrapLocationSet' file='xpointer'>
+      <return type='xmlXPathObjectPtr'/>
+      <arg name='val' type='xmlLocationSetPtr'/>
+    </function>
+  </symbols>
+</api>
diff --git a/doc/parsedecl.py b/doc/parsedecl.py
new file mode 100755
index 0000000..0243347
--- /dev/null
+++ b/doc/parsedecl.py
@@ -0,0 +1,336 @@
+#!/usr/bin/python -u
+#
+# tries to parse the output of gtk-doc declaration files and make
+# an XML reusable description from them
+#
+# TODO: try to extracts comments from the DocBook output of
+
+import sys
+import string
+
+macros = []
+structs = []
+typedefs = []
+enums = {}
+functions = {}
+private_functions = {}
+ret_types = {}
+types = {}
+
+sections = []
+files = {}
+identifiers_file = {}
+identifiers_type = {}
+
+def mormalizeTypeSpaces(raw, function):
+    global types
+
+    tokens = string.split(raw)
+    type = ''
+    for token in tokens:
+	if type != '':
+	    type = type + ' ' + token
+	else:
+	    type = token
+    if types.has_key(type):
+        types[type].append(function)
+    else:
+        types[type] = [function]
+    return type
+
+def removeComments(raw):
+    while string.find(raw, '/*') > 0:
+        e = string.find(raw, '/*')
+	tmp = raw[0:e]
+	raw = raw[e:]
+	e = string.find(raw, '*/')
+	if e > 0:
+	    raw = tmp + raw[e + 2:]
+	else:
+	    raw = tmp
+    return raw
+
+def extractArgs(raw, function):
+    raw = removeComments(raw)
+    list = string.split(raw, ",")
+    ret = []
+    for arg in list:
+        i = len(arg)
+	if i == 0:
+	    continue
+	i = i - 1
+	c = arg[i]
+	while string.find(string.letters, c) >= 0 or \
+	      string.find(string.digits, c) >= 0:
+	    i = i - 1
+	    if i < 0:
+	        break
+	    c = arg[i]
+	name = arg[i+1:]
+        while string.find(string.whitespace, c) >= 0:
+	    i = i - 1
+	    if i < 0:
+	        break
+	    c = arg[i]
+	type = mormalizeTypeSpaces(arg[0:i+1], function)
+#	print "list: %s -> %s, %s" % (list, type, name)
+	ret.append((type, name))
+    return ret
+
+def extractTypes(raw, function):
+    global ret_types
+
+    tokens = string.split(raw)
+    type = ''
+    for token in tokens:
+	if type != '':
+	    type = type + ' ' + token
+	else:
+	    type = token
+    if ret_types.has_key(type):
+        ret_types[type].append(function)
+    else:
+        ret_types[type] = [function]
+    return type
+
+def parseMacro():
+    global input
+    global macros
+
+    line = input.readline()[:-1]
+    while line != "</MACRO>":
+        if line[0:6] == "<NAME>" and line[-7:] == "</NAME>":
+	    name = line[6:-7]
+	line = input.readline()[:-1]
+
+    macros.append(name)
+    identifiers_type[name] = "macro"
+
+def parseStruct():
+    global input
+    global structs
+
+    line = input.readline()[:-1]
+    while line != "</STRUCT>":
+        if line[0:6] == "<NAME>" and line[-7:] == "</NAME>":
+	    name = line[6:-7]
+	line = input.readline()[:-1]
+
+    structs.append(name)
+    identifiers_type[name] = "struct"
+
+def parseTypedef():
+    global input
+    global typedefs
+
+    line = input.readline()[:-1]
+    while line != "</TYPEDEF>":
+        if line[0:6] == "<NAME>" and line[-7:] == "</NAME>":
+	    name = line[6:-7]
+	line = input.readline()[:-1]
+
+    typedefs.append(name)
+    identifiers_type[name] = "typedef"
+
+def parseEnum():
+    global input
+    global enums
+
+    line = input.readline()[:-1]
+    consts = []
+    while line != "</ENUM>":
+        if line[0:6] == "<NAME>" and line[-7:] == "</NAME>":
+	    name = line[6:-7]
+	elif string.find(line, 'enum') >= 0:
+	    pass
+	elif string.find(line, '{') >= 0:
+	    pass
+	elif string.find(line, '}') >= 0:
+	    pass
+	elif string.find(line, ';') >= 0:
+	    pass
+	else:
+	    comment = string.find(line, '/*')
+	    if comment >= 0:
+	        line = line[0:comment]
+	    decls = string.split(line, ",")
+	    for decl in decls:
+		val = string.split(decl, "=")[0]
+		tokens = string.split(val)
+		if len(tokens) >= 1:
+		    token = tokens[0]
+		    if string.find(string.letters, token[0]) >= 0:
+			consts.append(token)
+			identifiers_type[token] = "const"
+	line = input.readline()[:-1]
+        
+    enums[name] = consts
+    identifiers_type[name] = "enum"
+
+def parseStaticFunction():
+    global input
+    global private_functions
+
+    line = input.readline()[:-1]
+    type = None
+    signature = None
+    while line != "</USER_FUNCTION>":
+        if line[0:6] == "<NAME>" and line[-7:] == "</NAME>":
+	    name = line[6:-7]
+        elif line[0:9] == "<RETURNS>" and line[-10:] == "</RETURNS>":
+	    type = extractTypes(line[9:-10], name)
+	else:
+	    signature = line
+	line = input.readline()[:-1]
+
+    args = extractArgs(signature, name)
+    private_functions[name] = (type , args)
+    identifiers_type[name] = "private_func"
+
+def parseFunction():
+    global input
+    global functions
+
+    line = input.readline()[:-1]
+    type = None
+    signature = None
+    while line != "</FUNCTION>":
+        if line[0:6] == "<NAME>" and line[-7:] == "</NAME>":
+	    name = line[6:-7]
+        elif line[0:9] == "<RETURNS>" and line[-10:] == "</RETURNS>":
+	    type = extractTypes(line[9:-10], name)
+	else:
+	    signature = line
+	line = input.readline()[:-1]
+
+    args = extractArgs(signature, name)
+    functions[name] = (type , args)
+    identifiers_type[name] = "function"
+
+def parseSection():
+    global input
+    global sections
+    global files
+    global identifiers_file
+
+    tokens = []
+    line = input.readline()[:-1]
+    while line != "</SECTION>":
+        if line[0:6] == "<FILE>" and line[-7:] == "</FILE>":
+	    name = line[6:-7]
+	elif len(line) > 0:
+	    tokens.append(line)
+	line = input.readline()[:-1]
+
+    sections.append(name)
+    files[name] = tokens
+    for token in tokens:
+        identifiers_file[token] = name
+	#
+	# Small transitivity for enum values
+	#
+	if enums.has_key(token):
+	    for const in enums[token]:
+	        identifiers_file[const] = name
+
+print "Parsing: libxml-decl.txt"
+input = open('libxml-decl.txt')
+while 1:
+    line = input.readline()
+    if not line:
+        break
+    line = line[:-1]
+    if line == "<MACRO>":
+        parseMacro()
+    elif line == "<ENUM>":
+        parseEnum()
+    elif line == "<FUNCTION>":
+        parseFunction()
+    elif line == "<STRUCT>":
+        parseStruct()
+    elif line == "<TYPEDEF>":
+        parseTypedef()
+    elif line == "<USER_FUNCTION>":
+        parseStaticFunction()
+    elif len(line) >= 1 and line[0] == "<":
+        print "unhandled %s" % (line)
+
+print "Parsed: %d macros. %d structs, %d typedefs, %d enums" % (
+          len(macros), len(structs), len(typedefs), len(enums))
+c = 0
+for enum in enums.keys():
+    consts = enums[enum]
+    c = c + len(consts)
+print "        %d constants, %d functions and %d private functions" % (
+          c, len(functions.keys()), len(private_functions.keys()))
+print "The functions manipulates %d different types" % (len(types.keys()))
+print "The functions returns %d different types" % (len(ret_types.keys()))
+
+print "Parsing: libxml-decl-list.txt"
+input = open('libxml-decl-list.txt')
+while 1:
+    line = input.readline()
+    if not line:
+        break
+    line = line[:-1]
+    if line == "<SECTION>":
+        parseSection()
+    elif len(line) >= 1 and line[0] == "<":
+        print "unhandled %s" % (line)
+
+print "Parsed: %d files %d identifiers" % (len(files), len(identifiers_file.keys()))
+
+print "Saving XML description libxml2-api.xml"
+output = open("libxml2-api.xml", "w")
+output.write("<api name='libxml2'>\n")
+output.write("  <files>\n")
+for file in files.keys():
+    output.write("    <file name='%s'>\n" % file)
+    for symbol in files[file]:
+        output.write("     <exports symbol='%s'/>\n" % (symbol))
+    output.write("    </file>\n")
+output.write("  </files>\n")
+
+output.write("  <symbols>\n")
+symbols=macros
+for i in structs: symbols.append(i)
+for i in typedefs: symbols.append(i)
+for i in enums.keys():
+    symbols.append(i)
+    for j in enums[i]:
+        symbols.append(j)
+for i in functions.keys(): symbols.append(i)
+symbols.sort()
+prev = None
+for i in symbols:
+    if i == prev:
+#        print "Symbol %s redefined" % (i)
+	continue
+    else:
+        prev = i
+    if identifiers_type.has_key(i):
+        type = identifiers_type[i]
+	
+        if identifiers_file.has_key(i):
+	    file = identifiers_file[i]
+	else:
+	    file = None
+
+	output.write("    <%s name='%s'" % (type, i))
+	if file != None:
+	    output.write(" file='%s'" % (file))
+	if type == "function":
+	   output.write(">\n");
+	   (ret, args) = functions[i]
+	   output.write("      <return type='%s'/>\n" % (ret))
+	   for arg in args:
+	       output.write("      <arg name='%s' type='%s'/>\n" % (
+	                    arg[1], arg[0]))
+	   output.write("    </%s>\n" % (type));
+	else:
+	   output.write("/>\n");
+    else:
+        print "Symbol %s not found in identifiers list" % (i)
+output.write("  </symbols>\n")
+output.write("</api>\n")
+print "generated XML for %d symbols" % (len(symbols))
diff --git a/parsedecl.py b/parsedecl.py
deleted file mode 100755
index c97e51a..0000000
--- a/parsedecl.py
+++ /dev/null
@@ -1,185 +0,0 @@
-#!/usr/bin/python -u
-#
-# tries to parse the output of gtk-doc declaration files and make
-# something usable from them
-#
-
-import sys
-import string
-
-input = open('doc/libxml-decl.txt')
-macros = []
-structs = []
-typedefs = []
-enums = {}
-functions = {}
-private_functions = {}
-types = {}
-
-def extractTypes(raw, function):
-    global types
-
-    tokens = string.split(raw)
-    type = ''
-    for token in tokens:
-	if type != '':
-	    type = type + ' ' + token
-	else:
-	    type = token
-    if types.has_key(type):
-        types[type].append(function)
-    else:
-        types[type] = [function]
-    return type
-
-def parseMacro():
-    global input
-    global macros
-
-    line = input.readline()[:-1]
-    while line != "</MACRO>":
-        if line[0:6] == "<NAME>" and line[-7:] == "</NAME>":
-	    name = line[6:-7]
-	line = input.readline()[:-1]
-
-    macros.append(name)
-
-def parseStruct():
-    global input
-    global structs
-
-    line = input.readline()[:-1]
-    while line != "</STRUCT>":
-        if line[0:6] == "<NAME>" and line[-7:] == "</NAME>":
-	    name = line[6:-7]
-	line = input.readline()[:-1]
-
-    structs.append(name)
-
-def parseTypedef():
-    global input
-    global typedefs
-
-    line = input.readline()[:-1]
-    while line != "</TYPEDEF>":
-        if line[0:6] == "<NAME>" and line[-7:] == "</NAME>":
-	    name = line[6:-7]
-	line = input.readline()[:-1]
-
-    typedefs.append(name)
-
-def parseEnum():
-    global input
-    global enums
-
-    line = input.readline()[:-1]
-    consts = []
-    while line != "</ENUM>":
-        if line[0:6] == "<NAME>" and line[-7:] == "</NAME>":
-	    name = line[6:-7]
-	elif string.find(line, 'enum') >= 0:
-	    pass
-	elif string.find(line, '{') >= 0:
-	    pass
-	elif string.find(line, '}') >= 0:
-	    pass
-	elif string.find(line, ';') >= 0:
-	    pass
-	else:
-	    comment = string.find(line, '/*')
-	    if comment >= 0:
-	        line = line[0:comment]
-	    decls = string.split(line, ",")
-	    for decl in decls:
-		val = string.split(decl, "=")[0]
-		tokens = string.split(val)
-		if len(tokens) >= 1:
-		    token = tokens[0]
-		    if string.find(string.letters, token[0]) >= 0:
-			consts.append(token)
-	line = input.readline()[:-1]
-        
-    enums[name] = consts
-
-def parseStaticFunction():
-    global input
-    global private_functions
-
-    line = input.readline()[:-1]
-    type = None
-    signature = None
-    while line != "</USER_FUNCTION>":
-        if line[0:6] == "<NAME>" and line[-7:] == "</NAME>":
-	    name = line[6:-7]
-        elif line[0:9] == "<RETURNS>" and line[-10:] == "</RETURNS>":
-	    type = extractTypes(line[9:-10], name)
-	else:
-	    signature = line
-	line = input.readline()[:-1]
-
-    args = string.split(signature, ",")
-    sig = []
-    for arg in args:
-        l = string.split(arg)
-	sig.append(extractTypes(l[0], name))
-
-    private_functions[name] = (type , sig)
-
-def parseFunction():
-    global input
-    global functions
-
-    line = input.readline()[:-1]
-    type = None
-    signature = None
-    while line != "</FUNCTION>":
-        if line[0:6] == "<NAME>" and line[-7:] == "</NAME>":
-	    name = line[6:-7]
-        elif line[0:9] == "<RETURNS>" and line[-10:] == "</RETURNS>":
-	    type = extractTypes(line[9:-10], name)
-	else:
-	    signature = line
-	line = input.readline()[:-1]
-
-    args = string.split(signature, ",")
-    sig = []
-    for arg in args:
-        l = string.split(arg)
-	sig.append(extractTypes(l[0], name))
-
-    functions[name] = (type , sig)
-
-while 1:
-    line = input.readline()
-    if not line:
-        break
-    line = line[:-1]
-    if line == "<MACRO>":
-        parseMacro()
-    elif line == "<ENUM>":
-        parseEnum()
-    elif line == "<FUNCTION>":
-        parseFunction()
-    elif line == "<STRUCT>":
-        parseStruct()
-    elif line == "<TYPEDEF>":
-        parseTypedef()
-    elif line == "<USER_FUNCTION>":
-        parseStaticFunction()
-    elif len(line) >= 1 and line[0] == "<":
-        print "unhandled %s" % (line)
-
-print "Parsed: %d macros. %d structs, %d typedefs, %d enums" % (
-          len(macros), len(structs), len(typedefs), len(enums))
-c = 0
-for enum in enums.keys():
-    consts = enums[enum]
-    c = c + len(consts)
-print "        %d constants, %d functions and %d private functions" % (
-          c, len(functions.keys()), len(private_functions.keys()))
-print "The functions uses %d different types" % (len(types.keys()))
-for type in types.keys():
-    if string.find(type, '*') >= 0 or (type[0:3] != 'xml' and
-       type[0:4] != 'html' and type[0:4] != 'docb'):
-#        print "  %s : %s" % (type, types[type])
-        print "  %s" % (type)
