do not package cvs versioning temp files. more cleanup, slightly improved

* Makefile.am: do not package cvs versioning temp files.
* doc/apibuild.py doc/libxml2-api.xml doc/newapi.xsl: more cleanup,
  slightly improved the API xml format, fixed a lot of small
  rendering problems
* doc/html/libxml*.html: rebuilt
Daniel
diff --git a/ChangeLog b/ChangeLog
index b240c6d..d7687a7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+Wed Nov 19 00:48:56 CET 2003 Daniel Veillard <daniel@veillard.com>
+
+	* Makefile.am: do not package cvs versioning temp files.
+	* doc/apibuild.py doc/libxml2-api.xml doc/newapi.xsl: more cleanup,
+	  slightly improved the API xml format, fixed a lot of small
+	  rendering problems
+	* doc/html/libxml*.html: rebuilt
+
 Tue Nov 18 21:51:15 CET 2003 Daniel Veillard <daniel@veillard.com>
 
 	* include/libxml/*.h include/libxml/*.h.in: modified the file
diff --git a/Makefile.am b/Makefile.am
index db37aeb..11745e5 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -841,14 +841,17 @@
 	       fi ; fi ; \
 	  done; done)
 
-dist-hook: libxml2.spec
+cleanup:
+	-@(find . -name .\#\* -exec rm {} \;)
+
+dist-hook: cleanup libxml2.spec
 	-cp libxml2.spec $(distdir)
 	(cd $(srcdir) ; tar -cf - --exclude CVS win32 macos vms test result SAXresult ) | (cd $(distdir); tar xf -)
 
 cleantar:
 	@(rm -f libxml*.tar.gz COPYING.LIB)
 
-rpm: cleantar
+rpm: cleanup cleantar
 	@(unset CDPATH ; $(MAKE) dist && rpmbuild -ta $(distdir).tar.gz)
 
 ## We create xml2Conf.sh here and not from configure because we want
diff --git a/doc/apibuild.py b/doc/apibuild.py
index 57a205f..223214d 100755
--- a/doc/apibuild.py
+++ b/doc/apibuild.py
@@ -1602,12 +1602,41 @@
 		if string.find(desc, "DEPRECATED") != -1:
 		    output.write("     <deprecated/>\n")
 
-	ids = dict.functions.keys() + dict.variables.keys() + \
-	      dict.macros.keys() + dict.typedefs.keys() + \
-	      dict.structs.keys() + dict.enums.keys()
+        ids = dict.macros.keys()
 	ids.sort()
 	for id in uniq(ids):
-	    output.write("     <exports symbol='%s'/>\n" % (id))
+	    # Macros are sometime used to masquerade other types.
+	    if dict.functions.has_key(id):
+	        continue
+	    if dict.variables.has_key(id):
+	        continue
+	    if dict.typedefs.has_key(id):
+	        continue
+	    if dict.structs.has_key(id):
+	        continue
+	    if dict.enums.has_key(id):
+	        continue
+	    output.write("     <exports symbol='%s' type='macro'/>\n" % (id))
+        ids = dict.enums.keys()
+	ids.sort()
+	for id in uniq(ids):
+	    output.write("     <exports symbol='%s' type='enum'/>\n" % (id))
+        ids = dict.typedefs.keys()
+	ids.sort()
+	for id in uniq(ids):
+	    output.write("     <exports symbol='%s' type='typedef'/>\n" % (id))
+        ids = dict.structs.keys()
+	ids.sort()
+	for id in uniq(ids):
+	    output.write("     <exports symbol='%s' type='struct'/>\n" % (id))
+        ids = dict.variables.keys()
+	ids.sort()
+	for id in uniq(ids):
+	    output.write("     <exports symbol='%s' type='variable'/>\n" % (id))
+        ids = dict.functions.keys()
+	ids.sort()
+	for id in uniq(ids):
+	    output.write("     <exports symbol='%s' type='function'/>\n" % (id))
 	output.write("    </file>\n")
 
     def serialize_xrefs_files(self, output):
diff --git a/doc/html/libxml-DOCBparser.html b/doc/html/libxml-DOCBparser.html
index 62bd7bb..54dab0b 100644
--- a/doc/html/libxml-DOCBparser.html
+++ b/doc/html/libxml-DOCBparser.html
@@ -10,49 +10,42 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module DOCBparser from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module DOCBparser from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-HTMLparser.html">HTMLparser</a></th><td><a accesskey="n" href="libxml-HTMLparser.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><h2 style="font-weight:bold;color:red;text-align:center">This module is deprecated</h2><p>interface for a DocBook SGML non-verifying parser This code is DEPRECATED, and should not be used anymore. </p><div class="deprecated"><h2>Table of Contents</h2><pre class="programlisting">void	<a href="#docbFreeParserCtxt">docbFreeParserCtxt</a>	(<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	<a href="#docbParseDoc">docbParseDoc</a>	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * encoding)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> <a name="docbDocPtr" id="docbDocPtr">docbDocPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a>	<a href="#docbCreateFileParserCtxt">docbCreateFileParserCtxt</a>	(const char * filename, <br />				 const char * encoding)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> <a name="docbParserCtxtPtr" id="docbParserCtxtPtr">docbParserCtxtPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	<a href="#docbSAXParseDoc">docbSAXParseDoc</a>	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * encoding, <br />				 <a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax, <br />				 void * userData)<br />
-</pre><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	<a href="#docbSAXParseFile">docbSAXParseFile</a>	(const char * filename, <br />				 const char * encoding, <br />				 <a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax, <br />				 void * userData)<br />
-</pre><pre class="programlisting"><a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a>	<a href="#docbCreatePushParserCtxt">docbCreatePushParserCtxt</a>	(<a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 const char * chunk, <br />				 int size, <br />				 const char * filename, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><pre class="programlisting">int	<a href="#docbEncodeEntities">docbEncodeEntities</a>	(unsigned char * out, <br />				 int * outlen, <br />				 const unsigned char * in, <br />				 int * inlen, <br />				 int quoteChar)<br />
-</pre><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	<a href="#docbParseFile">docbParseFile</a>	(const char * filename, <br />				 const char * encoding)<br />
-</pre><pre class="programlisting">int	<a href="#docbParseDocument">docbParseDocument</a>	(<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserInput">xmlParserInput</a> <a name="docbParserInput" id="docbParserInput">docbParserInput</a>
-
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> <a name="docbSAXHandler" id="docbSAXHandler">docbSAXHandler</a>
-
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserCtxt">xmlParserCtxt</a> <a name="docbParserCtxt" id="docbParserCtxt">docbParserCtxt</a>
-
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> <a name="docbSAXHandlerPtr" id="docbSAXHandlerPtr">docbSAXHandlerPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#docbParseChunk">docbParseChunk</a>	(<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt, <br />				 const char * chunk, <br />				 int size, <br />				 int terminate)<br />
+    </style><title>Module DOCBparser from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module DOCBparser from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-HTMLparser.html">HTMLparser</a></th><td><a accesskey="n" href="libxml-HTMLparser.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><h2 style="font-weight:bold;color:red;text-align:center">This module is deprecated</h2><p>interface for a DocBook SGML non-verifying parser This code is DEPRECATED, and should not be used anymore. </p><div class="deprecated"><h2>Table of Contents</h2><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserInput">xmlParserInput</a> <a name="docbParserInput" id="docbParserInput">docbParserInput</a>
 </pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> <a name="docbParserInputPtr" id="docbParserInputPtr">docbParserInputPtr</a>
-
-</pre><h2>Description</h2>
-<h3><a name="docbFreeParserCtxt" id="docbFreeParserCtxt"></a>Function: docbFreeParserCtxt</h3><pre class="programlisting">void	docbFreeParserCtxt	(<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt)<br />
-</pre><p>Free all the memory used by a parser context. However the parsed document in ctxt-&gt;myDoc is not freed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an SGML parser context</td></tr></tbody></table></div><h3><a name="docbParseDoc" id="docbParseDoc"></a>Function: docbParseDoc</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	docbParseDoc	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * encoding)<br />
-</pre><p>parse an SGML in-memory document and build a tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the SGML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="docbCreateFileParserCtxt" id="docbCreateFileParserCtxt"></a>Function: docbCreateFileParserCtxt</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a>	docbCreateFileParserCtxt	(const char * filename, <br />				 const char * encoding)<br />
-</pre><p>Create a parser context for a file content. Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the SGML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="docbSAXParseDoc" id="docbSAXParseDoc"></a>Function: docbSAXParseDoc</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	docbSAXParseDoc	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * encoding, <br />				 <a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax, <br />				 void * userData)<br />
-</pre><p>parse an SGML 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>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the SGML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>if using SAX, this pointer will be provided on callbacks.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="docbSAXParseFile" id="docbSAXParseFile"></a>Function: docbSAXParseFile</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	docbSAXParseFile	(const char * filename, <br />				 const char * encoding, <br />				 <a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax, <br />				 void * userData)<br />
-</pre><p>parse an SGML 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>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the SGML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>if using SAX, this pointer will be provided on callbacks.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="docbCreatePushParserCtxt" id="docbCreatePushParserCtxt"></a>Function: docbCreatePushParserCtxt</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a>	docbCreatePushParserCtxt	(<a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 const char * chunk, <br />				 int size, <br />				 const char * filename, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserCtxt">xmlParserCtxt</a> <a name="docbParserCtxt" id="docbParserCtxt">docbParserCtxt</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> <a name="docbParserCtxtPtr" id="docbParserCtxtPtr">docbParserCtxtPtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> <a name="docbDocPtr" id="docbDocPtr">docbDocPtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> <a name="docbSAXHandler" id="docbSAXHandler">docbSAXHandler</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> <a name="docbSAXHandlerPtr" id="docbSAXHandlerPtr">docbSAXHandlerPtr</a>
+</pre><pre class="programlisting"><a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a>	<a href="#docbCreatePushParserCtxt">docbCreatePushParserCtxt</a>	(<a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax, <br />							 void * user_data, <br />							 const char * chunk, <br />							 int size, <br />							 const char * filename, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)</pre>
+<pre class="programlisting">int	<a href="#docbEncodeEntities">docbEncodeEntities</a>		(unsigned char * out, <br />					 int * outlen, <br />					 const unsigned char * in, <br />					 int * inlen, <br />					 int quoteChar)</pre>
+<pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	<a href="#docbParseFile">docbParseFile</a>		(const char * filename, <br />					 const char * encoding)</pre>
+<pre class="programlisting">int	<a href="#docbParseDocument">docbParseDocument</a>		(<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a>	<a href="#docbCreateFileParserCtxt">docbCreateFileParserCtxt</a>	(const char * filename, <br />							 const char * encoding)</pre>
+<pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	<a href="#docbParseDoc">docbParseDoc</a>		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * encoding)</pre>
+<pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	<a href="#docbSAXParseDoc">docbSAXParseDoc</a>		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * encoding, <br />					 <a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax, <br />					 void * userData)</pre>
+<pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	<a href="#docbSAXParseFile">docbSAXParseFile</a>	(const char * filename, <br />					 const char * encoding, <br />					 <a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax, <br />					 void * userData)</pre>
+<pre class="programlisting">int	<a href="#docbParseChunk">docbParseChunk</a>			(<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt, <br />					 const char * chunk, <br />					 int size, <br />					 int terminate)</pre>
+<pre class="programlisting">void	<a href="#docbFreeParserCtxt">docbFreeParserCtxt</a>		(<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt)</pre>
+<h2>Description</h2>
+<h3><a name="docbCreatePushParserCtxt" id="docbCreatePushParserCtxt"></a>Function: docbCreatePushParserCtxt</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a>	docbCreatePushParserCtxt	(<a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax, <br />							 void * user_data, <br />							 const char * chunk, <br />							 int size, <br />							 const char * filename, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
 </pre><p>Create a parser context for using the DocBook SGML parser in push mode To allow content encoding detection, @size should be &gt;= 4 The value of @filename is used for fetching external entities and error/warning reports.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>a SAX handler</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>a pointer to an array of chars</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>number of chars in the array</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>an optional file name or URI</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>an optional encoding</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="docbEncodeEntities" id="docbEncodeEntities"></a>Function: docbEncodeEntities</h3><pre class="programlisting">int	docbEncodeEntities	(unsigned char * out, <br />				 int * outlen, <br />				 const unsigned char * in, <br />				 int * inlen, <br />				 int quoteChar)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>a SAX handler</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>a pointer to an array of chars</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>number of chars in the array</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>an optional file name or URI</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>an optional encoding</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="docbEncodeEntities" id="docbEncodeEntities"></a>Function: docbEncodeEntities</h3><pre class="programlisting">int	docbEncodeEntities		(unsigned char * out, <br />					 int * outlen, <br />					 const unsigned char * in, <br />					 int * inlen, <br />					 int quoteChar)<br />
 </pre><p>Take a block of UTF-8 chars in and try to convert it to an ASCII plus SGML entities block of chars out.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a pointer to an array of bytes to store the result</td></tr><tr><td><span class="term"><i><tt>outlen</tt></i>:</span></td><td>the length of @out</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to an array of UTF-8 chars</td></tr><tr><td><span class="term"><i><tt>inlen</tt></i>:</span></td><td>the length of @in</td></tr><tr><td><span class="term"><i><tt>quoteChar</tt></i>:</span></td><td>the quote character to escape (' or &quot;) or zero.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if success, -2 if the transcoding fails, or -1 otherwise The value of @inlen after return is the number of octets consumed as the return value is positive, else unpredictable. The value of @outlen after return is the number of octets consumed.</td></tr></tbody></table></div><h3><a name="docbParseFile" id="docbParseFile"></a>Function: docbParseFile</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	docbParseFile	(const char * filename, <br />				 const char * encoding)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a pointer to an array of bytes to store the result</td></tr><tr><td><span class="term"><i><tt>outlen</tt></i>:</span></td><td>the length of @out</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to an array of UTF-8 chars</td></tr><tr><td><span class="term"><i><tt>inlen</tt></i>:</span></td><td>the length of @in</td></tr><tr><td><span class="term"><i><tt>quoteChar</tt></i>:</span></td><td>the quote character to escape (' or &quot;) or zero.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if success, -2 if the transcoding fails, or -1 otherwise The value of @inlen after return is the number of octets consumed as the return value is positive, else unpredictable. The value of @outlen after return is the number of octets consumed.</td></tr></tbody></table></div><h3><a name="docbParseFile" id="docbParseFile"></a>Function: docbParseFile</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	docbParseFile		(const char * filename, <br />					 const char * encoding)<br />
 </pre><p>parse a Docbook SGML file and build a tree. Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="docbParseDocument" id="docbParseDocument"></a>Function: docbParseDocument</h3><pre class="programlisting">int	docbParseDocument	(<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="docbParseDocument" id="docbParseDocument"></a>Function: docbParseDocument</h3><pre class="programlisting">int	docbParseDocument		(<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse an SGML document (and build a tree if using the standard SAX interface).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an SGML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0, -1 in case of error. the parser context is augmented as a result of the parsing.</td></tr></tbody></table></div><h3><a name="docbParseChunk" id="docbParseChunk"></a>Function: docbParseChunk</h3><pre class="programlisting">int	docbParseChunk	(<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt, <br />				 const char * chunk, <br />				 int size, <br />				 int terminate)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an SGML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0, -1 in case of error. the parser context is augmented as a result of the parsing.</td></tr></tbody></table></div><h3><a name="docbCreateFileParserCtxt" id="docbCreateFileParserCtxt"></a>Function: docbCreateFileParserCtxt</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a>	docbCreateFileParserCtxt	(const char * filename, <br />							 const char * encoding)<br />
+</pre><p>Create a parser context for a file content. Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the SGML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="docbParseDoc" id="docbParseDoc"></a>Function: docbParseDoc</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	docbParseDoc		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * encoding)<br />
+</pre><p>parse an SGML in-memory document and build a tree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the SGML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="docbSAXParseDoc" id="docbSAXParseDoc"></a>Function: docbSAXParseDoc</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	docbSAXParseDoc		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * encoding, <br />					 <a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax, <br />					 void * userData)<br />
+</pre><p>parse an SGML 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>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the SGML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>if using SAX, this pointer will be provided on callbacks.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="docbSAXParseFile" id="docbSAXParseFile"></a>Function: docbSAXParseFile</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>	docbSAXParseFile	(const char * filename, <br />					 const char * encoding, <br />					 <a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax, <br />					 void * userData)<br />
+</pre><p>parse an SGML 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>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the SGML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>if using SAX, this pointer will be provided on callbacks.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="docbParseChunk" id="docbParseChunk"></a>Function: docbParseChunk</h3><pre class="programlisting">int	docbParseChunk			(<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt, <br />					 const char * chunk, <br />					 int size, <br />					 int terminate)<br />
 </pre><p>Parse a Chunk of memory</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>an char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size in byte of the chunk</td></tr><tr><td><span class="term"><i><tt>terminate</tt></i>:</span></td><td>last chunk indicator</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>zero if no error, the <a href="libxml-xmlerror.html#xmlParserErrors">xmlParserErrors</a> otherwise.</td></tr></tbody></table></div></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>an char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size in byte of the chunk</td></tr><tr><td><span class="term"><i><tt>terminate</tt></i>:</span></td><td>last chunk indicator</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>zero if no error, the <a href="libxml-xmlerror.html#xmlParserErrors">xmlParserErrors</a> otherwise.</td></tr></tbody></table></div><h3><a name="docbFreeParserCtxt" id="docbFreeParserCtxt"></a>Function: docbFreeParserCtxt</h3><pre class="programlisting">void	docbFreeParserCtxt		(<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt)<br />
+</pre><p>Free all the memory used by a parser context. However the parsed document in ctxt-&gt;myDoc is not freed.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an SGML parser context</td></tr></tbody></table></div></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-HTMLparser.html b/doc/html/libxml-HTMLparser.html
index 22bc22a..b8c6eb1 100644
--- a/doc/html/libxml-HTMLparser.html
+++ b/doc/html/libxml-HTMLparser.html
@@ -10,85 +10,74 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module HTMLparser from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module HTMLparser from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-DOCBparser.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-DOCBparser.html">DOCBparser</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-HTMLtree.html">HTMLtree</a></th><td><a accesskey="n" href="libxml-HTMLtree.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this module implements an HTML 4.0 non-verifying parser with API compatible with the XML parser ones. It should be able to parse &quot;real world&quot; HTML, even if severely broken from a specification point of view. </p><h2>Table of Contents</h2><pre class="programlisting">Typedef <a href="libxml-parser.html#xmlParserNodeInfo">xmlParserNodeInfo</a> <a name="htmlParserNodeInfo" id="htmlParserNodeInfo">htmlParserNodeInfo</a>
-
-</pre><pre class="programlisting">int	<a href="#htmlIsScriptAttribute">htmlIsScriptAttribute</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">int	<a href="#htmlHandleOmittedElem">htmlHandleOmittedElem</a>	(int val)<br />
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlCtxtReadDoc">htmlCtxtReadDoc</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
+    </style><title>Module HTMLparser from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module HTMLparser from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-DOCBparser.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-DOCBparser.html">DOCBparser</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-HTMLtree.html">HTMLtree</a></th><td><a accesskey="n" href="libxml-HTMLtree.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this module implements an HTML 4.0 non-verifying parser with API compatible with the XML parser ones. It should be able to parse &quot;real world&quot; HTML, even if severely broken from a specification point of view. </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#htmlDefaultSubelement">htmlDefaultSubelement</a></pre><pre class="programlisting">#define <a href="#htmlElementAllowedHereDesc">htmlElementAllowedHereDesc</a></pre><pre class="programlisting">#define <a href="#htmlRequiredAttrs">htmlRequiredAttrs</a></pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> <a name="htmlDocPtr" id="htmlDocPtr">htmlDocPtr</a>
+</pre><pre class="programlisting">Structure <a href="#htmlElemDesc">htmlElemDesc</a><br />struct _htmlElemDesc
+</pre><pre class="programlisting">Typedef <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * <a name="htmlElemDescPtr" id="htmlElemDescPtr">htmlElemDescPtr</a>
+</pre><pre class="programlisting">Structure <a href="#htmlEntityDesc">htmlEntityDesc</a><br />struct _htmlEntityDesc
+</pre><pre class="programlisting">Typedef <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a> * <a name="htmlEntityDescPtr" id="htmlEntityDescPtr">htmlEntityDescPtr</a>
 </pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a name="htmlNodePtr" id="htmlNodePtr">htmlNodePtr</a>
-
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserCtxt">xmlParserCtxt</a> <a name="htmlParserCtxt" id="htmlParserCtxt">htmlParserCtxt</a>
 </pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> <a name="htmlParserCtxtPtr" id="htmlParserCtxtPtr">htmlParserCtxtPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlParseFile">htmlParseFile</a>	(const char * filename, <br />				 const char * encoding)<br />
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlReadIO">htmlReadIO</a>	(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">int	<a href="#htmlAutoCloseTag">htmlAutoCloseTag</a>	(<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> elem)<br />
-</pre><pre class="programlisting">int	<a href="#htmlParseChunk">htmlParseChunk</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 const char * chunk, <br />				 int size, <br />				 int terminate)<br />
-</pre><pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> *	<a href="#htmlTagLookup">htmlTagLookup</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * tag)<br />
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a>	<a href="#htmlCreateMemoryParserCtxt">htmlCreateMemoryParserCtxt</a>	(const char * buffer, <br />				 int size)<br />
-</pre><pre class="programlisting">void	<a href="#htmlCtxtReset">htmlCtxtReset</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserInput">xmlParserInput</a> <a name="htmlParserInput" id="htmlParserInput">htmlParserInput</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> <a name="htmlParserInputPtr" id="htmlParserInputPtr">htmlParserInputPtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-parser.html#xmlParserNodeInfo">xmlParserNodeInfo</a> <a name="htmlParserNodeInfo" id="htmlParserNodeInfo">htmlParserNodeInfo</a>
+</pre><pre class="programlisting">Enum <a href="#htmlParserOption">htmlParserOption</a>
 </pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> <a name="htmlSAXHandler" id="htmlSAXHandler">htmlSAXHandler</a>
-
-</pre><pre class="programlisting">int	<a href="#htmlElementAllowedHere">htmlElementAllowedHere</a>	(const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * parent, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elt)<br />
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlCtxtReadIO">htmlCtxtReadIO</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
 </pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> <a name="htmlSAXHandlerPtr" id="htmlSAXHandlerPtr">htmlSAXHandlerPtr</a>
-
-</pre><pre class="programlisting">Enum <a name="htmlStatus" id="htmlStatus">htmlStatus</a> {
+</pre><pre class="programlisting">Enum <a href="#htmlStatus">htmlStatus</a>
+</pre><pre class="programlisting">int	<a href="#UTF8ToHtml">UTF8ToHtml</a>			(unsigned char * out, <br />					 int * outlen, <br />					 const unsigned char * in, <br />					 int * inlen)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlStatus">htmlStatus</a>	<a href="#htmlAttrAllowed">htmlAttrAllowed</a>		(const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * elt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * attr, <br />					 int legacy)</pre>
+<pre class="programlisting">int	<a href="#htmlAutoCloseTag">htmlAutoCloseTag</a>		(<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> elem)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a>	<a href="#htmlCreateMemoryParserCtxt">htmlCreateMemoryParserCtxt</a>	(const char * buffer, <br />							 int size)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a>	<a href="#htmlCreatePushParserCtxt">htmlCreatePushParserCtxt</a>	(<a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br />							 void * user_data, <br />							 const char * chunk, <br />							 int size, <br />							 const char * filename, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlCtxtReadDoc">htmlCtxtReadDoc</a>		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlCtxtReadFd">htmlCtxtReadFd</a>		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />					 int fd, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlCtxtReadFile">htmlCtxtReadFile</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />					 const char * filename, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlCtxtReadIO">htmlCtxtReadIO</a>		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />					 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />					 void * ioctx, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlCtxtReadMemory">htmlCtxtReadMemory</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />					 const char * buffer, <br />					 int size, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting">void	<a href="#htmlCtxtReset">htmlCtxtReset</a>			(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#htmlCtxtUseOptions">htmlCtxtUseOptions</a>		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />					 int options)</pre>
+<pre class="programlisting">int	<a href="#htmlElementAllowedHere">htmlElementAllowedHere</a>		(const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * parent, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elt)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlStatus">htmlStatus</a>	<a href="#htmlElementStatusHere">htmlElementStatusHere</a>	(const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * parent, <br />					 const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * elt)</pre>
+<pre class="programlisting">int	<a href="#htmlEncodeEntities">htmlEncodeEntities</a>		(unsigned char * out, <br />					 int * outlen, <br />					 const unsigned char * in, <br />					 int * inlen, <br />					 int quoteChar)</pre>
+<pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a> *	<a href="#htmlEntityLookup">htmlEntityLookup</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a> *	<a href="#htmlEntityValueLookup">htmlEntityValueLookup</a>	(unsigned int value)</pre>
+<pre class="programlisting">void	<a href="#htmlFreeParserCtxt">htmlFreeParserCtxt</a>		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#htmlHandleOmittedElem">htmlHandleOmittedElem</a>		(int val)</pre>
+<pre class="programlisting">int	<a href="#htmlIsAutoClosed">htmlIsAutoClosed</a>		(<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc, <br />					 <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> elem)</pre>
+<pre class="programlisting">int	<a href="#htmlIsScriptAttribute">htmlIsScriptAttribute</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlStatus">htmlStatus</a>	<a href="#htmlNodeStatus">htmlNodeStatus</a>		(const <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> node, <br />					 int legacy)</pre>
+<pre class="programlisting">int	<a href="#htmlParseCharRef">htmlParseCharRef</a>		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#htmlParseChunk">htmlParseChunk</a>			(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />					 const char * chunk, <br />					 int size, <br />					 int terminate)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlParseDoc">htmlParseDoc</a>		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * encoding)</pre>
+<pre class="programlisting">int	<a href="#htmlParseDocument">htmlParseDocument</a>		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#htmlParseElement">htmlParseElement</a>		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a> *	<a href="#htmlParseEntityRef">htmlParseEntityRef</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** str)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlParseFile">htmlParseFile</a>		(const char * filename, <br />					 const char * encoding)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlReadDoc">htmlReadDoc</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlReadFd">htmlReadFd</a>		(int fd, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlReadFile">htmlReadFile</a>		(const char * filename, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlReadIO">htmlReadIO</a>		(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />					 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />					 void * ioctx, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlReadMemory">htmlReadMemory</a>		(const char * buffer, <br />					 int size, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlSAXParseDoc">htmlSAXParseDoc</a>		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * encoding, <br />					 <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br />					 void * userData)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlSAXParseFile">htmlSAXParseFile</a>	(const char * filename, <br />					 const char * encoding, <br />					 <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br />					 void * userData)</pre>
+<pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> *	<a href="#htmlTagLookup">htmlTagLookup</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * tag)</pre>
+<h2>Description</h2>
+<h3><a name="htmlDefaultSubelement" id="htmlDefaultSubelement"></a>Macro: htmlDefaultSubelement</h3><pre>#define htmlDefaultSubelement</pre><p>Returns the default subelement for this element</p>
+<h3><a name="htmlElementAllowedHereDesc" id="htmlElementAllowedHereDesc"></a>Macro: htmlElementAllowedHereDesc</h3><pre>#define htmlElementAllowedHereDesc</pre><p>Checks whether an HTML element description may be a direct child of the specified element. Returns 1 if allowed; 0 otherwise.</p>
+<h3><a name="htmlRequiredAttrs" id="htmlRequiredAttrs"></a>Macro: htmlRequiredAttrs</h3><pre>#define htmlRequiredAttrs</pre><p>Returns the attributes required for the specified element.</p>
+<h3><a name="htmlEntityDesc" id="htmlEntityDesc">Structure htmlEntityDesc</a></h3><pre class="programlisting">Structure htmlEntityDesc<br />struct _htmlEntityDesc {
+    unsigned int	value	: the UNICODE value for the character
+    const char *	name	: The entity name
+    const char *	desc	: the description
+}</pre><h3><a name="htmlStatus" id="htmlStatus">htmlStatus</a></h3><pre class="programlisting">Enum htmlStatus {
     <a name="HTML_NA" id="HTML_NA">HTML_NA</a> = 0 : something we don't check at all
     <a name="HTML_INVALID" id="HTML_INVALID">HTML_INVALID</a> = 1
     <a name="HTML_DEPRECATED" id="HTML_DEPRECATED">HTML_DEPRECATED</a> = 2
     <a name="HTML_VALID" id="HTML_VALID">HTML_VALID</a> = 4
     <a name="HTML_REQUIRED" id="HTML_REQUIRED">HTML_REQUIRED</a> = 12 : VALID bit set so ( &amp; <a href="libxml-HTMLparser.html#HTML_VALID">HTML_VALID</a> ) is TRUE
 }
-
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a>	<a href="#htmlCreatePushParserCtxt">htmlCreatePushParserCtxt</a>	(<a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 const char * chunk, <br />				 int size, <br />				 const char * filename, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlReadMemory">htmlReadMemory</a>	(const char * buffer, <br />				 int size, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">int	<a href="#htmlIsAutoClosed">htmlIsAutoClosed</a>	(<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc, <br />				 <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> elem)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> <a name="htmlDocPtr" id="htmlDocPtr">htmlDocPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlReadDoc">htmlReadDoc</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">Enum <a name="htmlParserOption" id="htmlParserOption">htmlParserOption</a> {
-    <a name="HTML_PARSE_NOERROR" id="HTML_PARSE_NOERROR">HTML_PARSE_NOERROR</a> = 32 : suppress error reports
-    <a name="HTML_PARSE_NOWARNING" id="HTML_PARSE_NOWARNING">HTML_PARSE_NOWARNING</a> = 64 : suppress warning reports
-    <a name="HTML_PARSE_PEDANTIC" id="HTML_PARSE_PEDANTIC">HTML_PARSE_PEDANTIC</a> = 128 : pedantic error reporting
-    <a name="HTML_PARSE_NOBLANKS" id="HTML_PARSE_NOBLANKS">HTML_PARSE_NOBLANKS</a> = 256 : remove blank nodes
-    <a name="HTML_PARSE_NONET" id="HTML_PARSE_NONET">HTML_PARSE_NONET</a> = 2048 : Forbid network access
-}
-
-</pre><pre class="programlisting">Typedef <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a> * <a name="htmlEntityDescPtr" id="htmlEntityDescPtr">htmlEntityDescPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#htmlEncodeEntities">htmlEncodeEntities</a>	(unsigned char * out, <br />				 int * outlen, <br />				 const unsigned char * in, <br />				 int * inlen, <br />				 int quoteChar)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserCtxt">xmlParserCtxt</a> <a name="htmlParserCtxt" id="htmlParserCtxt">htmlParserCtxt</a>
-
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlStatus">htmlStatus</a>	<a href="#htmlNodeStatus">htmlNodeStatus</a>	(const <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> node, <br />				 int legacy)<br />
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlStatus">htmlStatus</a>	<a href="#htmlAttrAllowed">htmlAttrAllowed</a>	(const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * elt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * attr, <br />				 int legacy)<br />
-</pre><pre class="programlisting">#define <a href="#htmlDefaultSubelement">htmlDefaultSubelement</a>
-
-</pre><pre class="programlisting">int	<a href="#htmlParseCharRef">htmlParseCharRef</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlSAXParseFile">htmlSAXParseFile</a>	(const char * filename, <br />				 const char * encoding, <br />				 <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br />				 void * userData)<br />
-</pre><pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a> *	<a href="#htmlParseEntityRef">htmlParseEntityRef</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** str)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserInput">xmlParserInput</a> <a name="htmlParserInput" id="htmlParserInput">htmlParserInput</a>
-
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlStatus">htmlStatus</a>	<a href="#htmlElementStatusHere">htmlElementStatusHere</a>	(const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * parent, <br />				 const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * elt)<br />
-</pre><pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a> *	<a href="#htmlEntityValueLookup">htmlEntityValueLookup</a>	(unsigned int value)<br />
-</pre><pre class="programlisting">void	<a href="#htmlParseElement">htmlParseElement</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">int	<a href="#UTF8ToHtml">UTF8ToHtml</a>	(unsigned char * out, <br />				 int * outlen, <br />				 const unsigned char * in, <br />				 int * inlen)<br />
-</pre><pre class="programlisting">#define <a href="#htmlRequiredAttrs">htmlRequiredAttrs</a>
-
-</pre><pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a> *	<a href="#htmlEntityLookup">htmlEntityLookup</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">void	<a href="#htmlFreeParserCtxt">htmlFreeParserCtxt</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlCtxtReadMemory">htmlCtxtReadMemory</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 const char * buffer, <br />				 int size, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlCtxtReadFd">htmlCtxtReadFd</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 int fd, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">Structure <a name="htmlEntityDesc" id="htmlEntityDesc">htmlEntityDesc</a><br />struct _htmlEntityDesc {
-    unsigned int	value	: the UNICODE value for the character
-    const char *	name	: The entity name
-    const char *	desc	: the description
-}</pre><br /><pre class="programlisting">#define <a href="#htmlElementAllowedHereDesc">htmlElementAllowedHereDesc</a>
-
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlReadFile">htmlReadFile</a>	(const char * filename, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlCtxtReadFile">htmlCtxtReadFile</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 const char * filename, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * <a name="htmlElemDescPtr" id="htmlElemDescPtr">htmlElemDescPtr</a>
-
-</pre><pre class="programlisting">Structure <a name="htmlElemDesc" id="htmlElemDesc">htmlElemDesc</a><br />struct _htmlElemDesc {
+</pre><h3><a name="htmlElemDesc" id="htmlElemDesc">Structure htmlElemDesc</a></h3><pre class="programlisting">Structure htmlElemDesc<br />struct _htmlElemDesc {
     const char *	name	: The tag name
     char	startTag	: Whether the start tag can be implied
     char	endTag	: Whether the end tag can be implied
@@ -103,108 +92,85 @@
     const char **	attrs_opt	: Optional Attributes
     const char **	attrs_depr	: Additional deprecated attributes
     const char **	attrs_req	: Required attributes
-}</pre><br /><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlSAXParseDoc">htmlSAXParseDoc</a>	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * encoding, <br />				 <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br />				 void * userData)<br />
-</pre><pre class="programlisting">int	<a href="#htmlCtxtUseOptions">htmlCtxtUseOptions</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 int options)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> <a name="htmlParserInputPtr" id="htmlParserInputPtr">htmlParserInputPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlReadFd">htmlReadFd</a>	(int fd, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlParseDoc">htmlParseDoc</a>	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * encoding)<br />
-</pre><pre class="programlisting">int	<a href="#htmlParseDocument">htmlParseDocument</a>	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
-</pre><h2>Description</h2>
-<h3><a name="htmlIsScriptAttribute" id="htmlIsScriptAttribute"></a>Function: htmlIsScriptAttribute</h3><pre class="programlisting">int	htmlIsScriptAttribute	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Check if an <a href="libxml-SAX.html#attribute">attribute</a> is of content type Script</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>an <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 is the <a href="libxml-SAX.html#attribute">attribute</a> is a script 0 otherwise</td></tr></tbody></table></div><h3><a name="htmlHandleOmittedElem" id="htmlHandleOmittedElem"></a>Function: htmlHandleOmittedElem</h3><pre class="programlisting">int	htmlHandleOmittedElem	(int val)<br />
-</pre><p>Set and return the previous value for handling HTML omitted tags.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>int 0 or 1</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last value for 0 for no handling, 1 for auto insertion.</td></tr></tbody></table></div><h3><a name="htmlCtxtReadDoc" id="htmlCtxtReadDoc"></a>Function: htmlCtxtReadDoc</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlCtxtReadDoc	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an XML in-memory document and build a tree. This reuses the existing @ctxt parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to a zero terminated string</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlParseFile" id="htmlParseFile"></a>Function: htmlParseFile</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlParseFile	(const char * filename, <br />				 const char * encoding)<br />
-</pre><p>parse an HTML file and build a tree. Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the HTML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlReadIO" id="htmlReadIO"></a>Function: htmlReadIO</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlReadIO	(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an HTML document from I/O functions and source and build a tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlAutoCloseTag" id="htmlAutoCloseTag"></a>Function: htmlAutoCloseTag</h3><pre class="programlisting">int	htmlAutoCloseTag	(<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> elem)<br />
-</pre><p>The HTML DTD allows a tag to implicitly close other tags. The list is kept in htmlStartClose array. This function checks if the element or one of it's children would autoclose the given tag.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the HTML document</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The tag name</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the HTML element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if autoclose, 0 otherwise</td></tr></tbody></table></div><h3><a name="htmlParseChunk" id="htmlParseChunk"></a>Function: htmlParseChunk</h3><pre class="programlisting">int	htmlParseChunk	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 const char * chunk, <br />				 int size, <br />				 int terminate)<br />
+}</pre><h3><a name="htmlParserOption" id="htmlParserOption">htmlParserOption</a></h3><pre class="programlisting">Enum htmlParserOption {
+    <a name="HTML_PARSE_NOERROR" id="HTML_PARSE_NOERROR">HTML_PARSE_NOERROR</a> = 32 : suppress error reports
+    <a name="HTML_PARSE_NOWARNING" id="HTML_PARSE_NOWARNING">HTML_PARSE_NOWARNING</a> = 64 : suppress warning reports
+    <a name="HTML_PARSE_PEDANTIC" id="HTML_PARSE_PEDANTIC">HTML_PARSE_PEDANTIC</a> = 128 : pedantic error reporting
+    <a name="HTML_PARSE_NOBLANKS" id="HTML_PARSE_NOBLANKS">HTML_PARSE_NOBLANKS</a> = 256 : remove blank nodes
+    <a name="HTML_PARSE_NONET" id="HTML_PARSE_NONET">HTML_PARSE_NONET</a> = 2048 : Forbid network access
+}
+</pre><h3><a name="htmlParseChunk" id="htmlParseChunk"></a>Function: htmlParseChunk</h3><pre class="programlisting">int	htmlParseChunk			(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />					 const char * chunk, <br />					 int size, <br />					 int terminate)<br />
 </pre><p>Parse a Chunk of memory</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>an char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size in byte of the chunk</td></tr><tr><td><span class="term"><i><tt>terminate</tt></i>:</span></td><td>last chunk indicator</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>zero if no error, the <a href="libxml-xmlerror.html#xmlParserErrors">xmlParserErrors</a> otherwise.</td></tr></tbody></table></div><h3><a name="htmlTagLookup" id="htmlTagLookup"></a>Function: htmlTagLookup</h3><pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> *	htmlTagLookup	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * tag)<br />
-</pre><p>Lookup the HTML tag in the ElementTable</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tag</tt></i>:</span></td><td>The tag name in lowercase</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the related <a href="libxml-HTMLparser.html#htmlElemDescPtr">htmlElemDescPtr</a> or NULL if not found.</td></tr></tbody></table></div><h3><a name="htmlCreateMemoryParserCtxt" id="htmlCreateMemoryParserCtxt"></a>Function: htmlCreateMemoryParserCtxt</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a>	htmlCreateMemoryParserCtxt	(const char * buffer, <br />				 int size)<br />
-</pre><p>Create a parser context for an HTML in-memory document.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="htmlCtxtReset" id="htmlCtxtReset"></a>Function: htmlCtxtReset</h3><pre class="programlisting">void	htmlCtxtReset	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>Reset a parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr></tbody></table></div><h3><a name="htmlElementAllowedHere" id="htmlElementAllowedHere"></a>Function: htmlElementAllowedHere</h3><pre class="programlisting">int	htmlElementAllowedHere	(const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * parent, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elt)<br />
-</pre><p>Checks whether an HTML element may be a direct child of a parent element. Note - doesn't check for deprecated elements</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>HTML parent element</td></tr><tr><td><span class="term"><i><tt>elt</tt></i>:</span></td><td>HTML element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if allowed; 0 otherwise.</td></tr></tbody></table></div><h3><a name="htmlCtxtReadIO" id="htmlCtxtReadIO"></a>Function: htmlCtxtReadIO</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlCtxtReadIO	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an HTML document from I/O functions and source and build a tree. This reuses the existing @ctxt parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlCreatePushParserCtxt" id="htmlCreatePushParserCtxt"></a>Function: htmlCreatePushParserCtxt</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a>	htmlCreatePushParserCtxt	(<a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 const char * chunk, <br />				 int size, <br />				 const char * filename, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><p>Create a parser context for using the HTML parser in push mode The value of @filename is used for fetching external entities and error/warning reports.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>a SAX handler</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>a pointer to an array of chars</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>number of chars in the array</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>an optional file name or URI</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>an optional encoding</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="htmlReadMemory" id="htmlReadMemory"></a>Function: htmlReadMemory</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlReadMemory	(const char * buffer, <br />				 int size, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an XML in-memory document and build a tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlIsAutoClosed" id="htmlIsAutoClosed"></a>Function: htmlIsAutoClosed</h3><pre class="programlisting">int	htmlIsAutoClosed	(<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc, <br />				 <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> elem)<br />
-</pre><p>The HTML DTD allows a tag to implicitly close other tags. The list is kept in htmlStartClose array. This function checks if a tag is autoclosed by one of it's child</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the HTML document</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the HTML element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if autoclosed, 0 otherwise</td></tr></tbody></table></div><h3><a name="htmlReadDoc" id="htmlReadDoc"></a>Function: htmlReadDoc</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlReadDoc	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an XML in-memory document and build a tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to a zero terminated string</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlEncodeEntities" id="htmlEncodeEntities"></a>Function: htmlEncodeEntities</h3><pre class="programlisting">int	htmlEncodeEntities	(unsigned char * out, <br />				 int * outlen, <br />				 const unsigned char * in, <br />				 int * inlen, <br />				 int quoteChar)<br />
-</pre><p>Take a block of UTF-8 chars in and try to convert it to an ASCII plus HTML entities block of chars out.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a pointer to an array of bytes to store the result</td></tr><tr><td><span class="term"><i><tt>outlen</tt></i>:</span></td><td>the length of @out</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to an array of UTF-8 chars</td></tr><tr><td><span class="term"><i><tt>inlen</tt></i>:</span></td><td>the length of @in</td></tr><tr><td><span class="term"><i><tt>quoteChar</tt></i>:</span></td><td>the quote character to escape (' or &quot;) or zero.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if success, -2 if the transcoding fails, or -1 otherwise The value of @inlen after return is the number of octets consumed as the return value is positive, else unpredictable. The value of @outlen after return is the number of octets consumed.</td></tr></tbody></table></div><h3><a name="htmlNodeStatus" id="htmlNodeStatus"></a>Function: htmlNodeStatus</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlStatus">htmlStatus</a>	htmlNodeStatus	(const <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> node, <br />				 int legacy)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>an char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size in byte of the chunk</td></tr><tr><td><span class="term"><i><tt>terminate</tt></i>:</span></td><td>last chunk indicator</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>zero if no error, the <a href="libxml-xmlerror.html#xmlParserErrors">xmlParserErrors</a> otherwise.</td></tr></tbody></table></div><h3><a name="htmlNodeStatus" id="htmlNodeStatus"></a>Function: htmlNodeStatus</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlStatus">htmlStatus</a>	htmlNodeStatus		(const <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> node, <br />					 int legacy)<br />
 </pre><p>Checks whether the tree node is valid. Experimental (the author only uses the HTML enhancements in a SAX parser)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>an <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> in a tree</td></tr><tr><td><span class="term"><i><tt>legacy</tt></i>:</span></td><td>whether to allow deprecated elements (YES is faster here for Element nodes)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>for Element nodes, a return from <a href="libxml-HTMLparser.html#htmlElementAllowedHere">htmlElementAllowedHere</a> (if legacy allowed) or <a href="libxml-HTMLparser.html#htmlElementStatusHere">htmlElementStatusHere</a> (otherwise). for Attribute nodes, a return from <a href="libxml-HTMLparser.html#htmlAttrAllowed">htmlAttrAllowed</a> for other nodes, <a href="libxml-HTMLparser.html#HTML_NA">HTML_NA</a> (no checks performed)</td></tr></tbody></table></div><h3><a name="htmlAttrAllowed" id="htmlAttrAllowed"></a>Function: htmlAttrAllowed</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlStatus">htmlStatus</a>	htmlAttrAllowed	(const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * elt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * attr, <br />				 int legacy)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>an <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> in a tree</td></tr><tr><td><span class="term"><i><tt>legacy</tt></i>:</span></td><td>whether to allow deprecated elements (YES is faster here for Element nodes)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>for Element nodes, a return from <a href="libxml-HTMLparser.html#htmlElementAllowedHere">htmlElementAllowedHere</a> (if legacy allowed) or <a href="libxml-HTMLparser.html#htmlElementStatusHere">htmlElementStatusHere</a> (otherwise). for Attribute nodes, a return from <a href="libxml-HTMLparser.html#htmlAttrAllowed">htmlAttrAllowed</a> for other nodes, <a href="libxml-HTMLparser.html#HTML_NA">HTML_NA</a> (no checks performed)</td></tr></tbody></table></div><h3><a name="htmlAttrAllowed" id="htmlAttrAllowed"></a>Function: htmlAttrAllowed</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlStatus">htmlStatus</a>	htmlAttrAllowed		(const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * elt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * attr, <br />					 int legacy)<br />
 </pre><p>Checks whether an <a href="libxml-SAX.html#attribute">attribute</a> is valid for an element Has full knowledge of Required and Deprecated attributes</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>elt</tt></i>:</span></td><td>HTML element</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>HTML <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>legacy</tt></i>:</span></td><td>whether to allow deprecated attributes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>one of HTML_REQUIRED, HTML_VALID, HTML_DEPRECATED, <a href="libxml-HTMLparser.html#HTML_INVALID">HTML_INVALID</a></td></tr></tbody></table></div><h3><a name="htmlDefaultSubelement" id="htmlDefaultSubelement"></a>Macro: htmlDefaultSubelement</h3><pre>#define htmlDefaultSubelement</pre><p>Returns the default subelement for this element</p>
-<h3><a name="htmlParseCharRef" id="htmlParseCharRef"></a>Function: htmlParseCharRef</h3><pre class="programlisting">int	htmlParseCharRef	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>parse Reference declarations [66] CharRef ::= '&amp;#' [0-9]+ ';' | '&amp;#x' [0-9a-fA-F]+ ';'</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value parsed (as an int)</td></tr></tbody></table></div><h3><a name="htmlSAXParseFile" id="htmlSAXParseFile"></a>Function: htmlSAXParseFile</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlSAXParseFile	(const char * filename, <br />				 const char * encoding, <br />				 <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br />				 void * userData)<br />
-</pre><p>parse an HTML 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>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the HTML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>if using SAX, this pointer will be provided on callbacks.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree unless SAX is NULL or the document is not well formed.</td></tr></tbody></table></div><h3><a name="htmlParseEntityRef" id="htmlParseEntityRef"></a>Function: htmlParseEntityRef</h3><pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a> *	htmlParseEntityRef	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** str)<br />
-</pre><p>parse an HTML ENTITY references [68] EntityRef ::= '&amp;' Name ';'</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>location to store the entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the associated <a href="libxml-HTMLparser.html#htmlEntityDescPtr">htmlEntityDescPtr</a> if found, or NULL otherwise, if non-NULL *str will have to be freed by the caller.</td></tr></tbody></table></div><h3><a name="htmlElementStatusHere" id="htmlElementStatusHere"></a>Function: htmlElementStatusHere</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlStatus">htmlStatus</a>	htmlElementStatusHere	(const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * parent, <br />				 const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * elt)<br />
-</pre><p>Checks whether an HTML element may be a direct child of a parent element. and if so whether it is valid or deprecated.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>HTML parent element</td></tr><tr><td><span class="term"><i><tt>elt</tt></i>:</span></td><td>HTML element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>one of HTML_VALID, HTML_DEPRECATED, <a href="libxml-HTMLparser.html#HTML_INVALID">HTML_INVALID</a></td></tr></tbody></table></div><h3><a name="htmlEntityValueLookup" id="htmlEntityValueLookup"></a>Function: htmlEntityValueLookup</h3><pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a> *	htmlEntityValueLookup	(unsigned int value)<br />
-</pre><p>Lookup the given entity in EntitiesTable TODO: the linear scan is really ugly, an hash table is really needed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the entity's unicode value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the associated <a href="libxml-HTMLparser.html#htmlEntityDescPtr">htmlEntityDescPtr</a> if found, NULL otherwise.</td></tr></tbody></table></div><h3><a name="htmlParseElement" id="htmlParseElement"></a>Function: htmlParseElement</h3><pre class="programlisting">void	htmlParseElement	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>parse an HTML element, this is highly recursive [39] element ::= EmptyElemTag | STag content ETag [41] Attribute ::= Name Eq AttValue</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr></tbody></table></div><h3><a name="UTF8ToHtml" id="UTF8ToHtml"></a>Function: UTF8ToHtml</h3><pre class="programlisting">int	UTF8ToHtml	(unsigned char * out, <br />				 int * outlen, <br />				 const unsigned char * in, <br />				 int * inlen)<br />
-</pre><p>Take a block of UTF-8 chars in and try to convert it to an ASCII plus HTML entities block of chars out.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a pointer to an array of bytes to store the result</td></tr><tr><td><span class="term"><i><tt>outlen</tt></i>:</span></td><td>the length of @out</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to an array of UTF-8 chars</td></tr><tr><td><span class="term"><i><tt>inlen</tt></i>:</span></td><td>the length of @in</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if success, -2 if the transcoding fails, or -1 otherwise The value of @inlen after return is the number of octets consumed as the return value is positive, else unpredictable. The value of @outlen after return is the number of octets consumed.</td></tr></tbody></table></div><h3><a name="htmlRequiredAttrs" id="htmlRequiredAttrs"></a>Macro: htmlRequiredAttrs</h3><pre>#define htmlRequiredAttrs</pre><p>Returns the attributes required for the specified element.</p>
-<h3><a name="htmlEntityLookup" id="htmlEntityLookup"></a>Function: htmlEntityLookup</h3><pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a> *	htmlEntityLookup	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Lookup the given entity in EntitiesTable TODO: the linear scan is really ugly, an hash table is really needed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the associated <a href="libxml-HTMLparser.html#htmlEntityDescPtr">htmlEntityDescPtr</a> if found, NULL otherwise.</td></tr></tbody></table></div><h3><a name="htmlFreeParserCtxt" id="htmlFreeParserCtxt"></a>Function: htmlFreeParserCtxt</h3><pre class="programlisting">void	htmlFreeParserCtxt	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>Free all the memory used by a parser context. However the parsed document in ctxt-&gt;myDoc is not freed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr></tbody></table></div><h3><a name="htmlCtxtReadMemory" id="htmlCtxtReadMemory"></a>Function: htmlCtxtReadMemory</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlCtxtReadMemory	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 const char * buffer, <br />				 int size, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an XML in-memory document and build a tree. This reuses the existing @ctxt parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlCtxtReadFd" id="htmlCtxtReadFd"></a>Function: htmlCtxtReadFd</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlCtxtReadFd	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 int fd, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an XML from a file descriptor and build a tree. This reuses the existing @ctxt parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>an open file descriptor</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div>
-      
-      
-      
-    <h3><a name="htmlElementAllowedHereDesc" id="htmlElementAllowedHereDesc"></a>Macro: htmlElementAllowedHereDesc</h3><pre>#define htmlElementAllowedHereDesc</pre><p>Checks whether an HTML element description may be a direct child of the specified element. Returns 1 if allowed; 0 otherwise.</p>
-<h3><a name="htmlReadFile" id="htmlReadFile"></a>Function: htmlReadFile</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlReadFile	(const char * filename, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an XML file from the filesystem or the network.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file or URL</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlCtxtReadFile" id="htmlCtxtReadFile"></a>Function: htmlCtxtReadFile</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlCtxtReadFile	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 const char * filename, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an XML file from the filesystem or the network. This reuses the existing @ctxt parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file or URL</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="htmlSAXParseDoc" id="htmlSAXParseDoc"></a>Function: htmlSAXParseDoc</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlSAXParseDoc	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * encoding, <br />				 <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br />				 void * userData)<br />
-</pre><p>Parse an HTML in-memory document. If sax is not NULL, use the SAX callbacks to handle parse events. If sax is NULL, fallback to the default DOM behavior and return a tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the HTML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>if using SAX, this pointer will be provided on callbacks.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree unless SAX is NULL or the document is not well formed.</td></tr></tbody></table></div><h3><a name="htmlCtxtUseOptions" id="htmlCtxtUseOptions"></a>Function: htmlCtxtUseOptions</h3><pre class="programlisting">int	htmlCtxtUseOptions	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />				 int options)<br />
-</pre><p>Applies the options to the parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, the set of unknown or unimplemented options in case of error.</td></tr></tbody></table></div><h3><a name="htmlReadFd" id="htmlReadFd"></a>Function: htmlReadFd</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlReadFd	(int fd, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>elt</tt></i>:</span></td><td>HTML element</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>HTML <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>legacy</tt></i>:</span></td><td>whether to allow deprecated attributes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>one of HTML_REQUIRED, HTML_VALID, HTML_DEPRECATED, <a href="libxml-HTMLparser.html#HTML_INVALID">HTML_INVALID</a></td></tr></tbody></table></div><h3><a name="htmlIsScriptAttribute" id="htmlIsScriptAttribute"></a>Function: htmlIsScriptAttribute</h3><pre class="programlisting">int	htmlIsScriptAttribute		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Check if an <a href="libxml-SAX.html#attribute">attribute</a> is of content type Script</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>an <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 is the <a href="libxml-SAX.html#attribute">attribute</a> is a script 0 otherwise</td></tr></tbody></table></div><h3><a name="htmlHandleOmittedElem" id="htmlHandleOmittedElem"></a>Function: htmlHandleOmittedElem</h3><pre class="programlisting">int	htmlHandleOmittedElem		(int val)<br />
+</pre><p>Set and return the previous value for handling HTML omitted tags.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>int 0 or 1</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last value for 0 for no handling, 1 for auto insertion.</td></tr></tbody></table></div><h3><a name="htmlReadFd" id="htmlReadFd"></a>Function: htmlReadFd</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlReadFd		(int fd, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
 </pre><p>parse an XML from a file descriptor and build a tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>an open file descriptor</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlParseDoc" id="htmlParseDoc"></a>Function: htmlParseDoc</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlParseDoc	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * encoding)<br />
-</pre><p>parse an HTML in-memory document and build a tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the HTML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlParseDocument" id="htmlParseDocument"></a>Function: htmlParseDocument</h3><pre class="programlisting">int	htmlParseDocument	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>an open file descriptor</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlSAXParseFile" id="htmlSAXParseFile"></a>Function: htmlSAXParseFile</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlSAXParseFile	(const char * filename, <br />					 const char * encoding, <br />					 <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br />					 void * userData)<br />
+</pre><p>parse an HTML 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>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the HTML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>if using SAX, this pointer will be provided on callbacks.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree unless SAX is NULL or the document is not well formed.</td></tr></tbody></table></div><h3><a name="htmlParseEntityRef" id="htmlParseEntityRef"></a>Function: htmlParseEntityRef</h3><pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a> *	htmlParseEntityRef	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** str)<br />
+</pre><p>parse an HTML ENTITY references [68] EntityRef ::= '&amp;' Name ';'</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>location to store the entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the associated <a href="libxml-HTMLparser.html#htmlEntityDescPtr">htmlEntityDescPtr</a> if found, or NULL otherwise, if non-NULL *str will have to be freed by the caller.</td></tr></tbody></table></div><h3><a name="htmlSAXParseDoc" id="htmlSAXParseDoc"></a>Function: htmlSAXParseDoc</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlSAXParseDoc		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * encoding, <br />					 <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br />					 void * userData)<br />
+</pre><p>Parse an HTML in-memory document. If sax is not NULL, use the SAX callbacks to handle parse events. If sax is NULL, fallback to the default DOM behavior and return a tree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the HTML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>if using SAX, this pointer will be provided on callbacks.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree unless SAX is NULL or the document is not well formed.</td></tr></tbody></table></div><h3><a name="htmlParseFile" id="htmlParseFile"></a>Function: htmlParseFile</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlParseFile		(const char * filename, <br />					 const char * encoding)<br />
+</pre><p>parse an HTML file and build a tree. Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the HTML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlReadIO" id="htmlReadIO"></a>Function: htmlReadIO</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlReadIO		(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />					 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />					 void * ioctx, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an HTML document from I/O functions and source and build a tree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlCtxtReadDoc" id="htmlCtxtReadDoc"></a>Function: htmlCtxtReadDoc</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlCtxtReadDoc		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an XML in-memory document and build a tree. This reuses the existing @ctxt parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to a zero terminated string</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlElementStatusHere" id="htmlElementStatusHere"></a>Function: htmlElementStatusHere</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlStatus">htmlStatus</a>	htmlElementStatusHere	(const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * parent, <br />					 const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * elt)<br />
+</pre><p>Checks whether an HTML element may be a direct child of a parent element. and if so whether it is valid or deprecated.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>HTML parent element</td></tr><tr><td><span class="term"><i><tt>elt</tt></i>:</span></td><td>HTML element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>one of HTML_VALID, HTML_DEPRECATED, <a href="libxml-HTMLparser.html#HTML_INVALID">HTML_INVALID</a></td></tr></tbody></table></div><h3><a name="htmlEntityLookup" id="htmlEntityLookup"></a>Function: htmlEntityLookup</h3><pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a> *	htmlEntityLookup	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Lookup the given entity in EntitiesTable TODO: the linear scan is really ugly, an hash table is really needed.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the associated <a href="libxml-HTMLparser.html#htmlEntityDescPtr">htmlEntityDescPtr</a> if found, NULL otherwise.</td></tr></tbody></table></div><h3><a name="htmlEntityValueLookup" id="htmlEntityValueLookup"></a>Function: htmlEntityValueLookup</h3><pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a> *	htmlEntityValueLookup	(unsigned int value)<br />
+</pre><p>Lookup the given entity in EntitiesTable TODO: the linear scan is really ugly, an hash table is really needed.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the entity's unicode value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the associated <a href="libxml-HTMLparser.html#htmlEntityDescPtr">htmlEntityDescPtr</a> if found, NULL otherwise.</td></tr></tbody></table></div><h3><a name="htmlParseElement" id="htmlParseElement"></a>Function: htmlParseElement</h3><pre class="programlisting">void	htmlParseElement		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>parse an HTML element, this is highly recursive [39] element ::= EmptyElemTag | STag content ETag [41] Attribute ::= Name Eq AttValue</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr></tbody></table></div><h3><a name="htmlAutoCloseTag" id="htmlAutoCloseTag"></a>Function: htmlAutoCloseTag</h3><pre class="programlisting">int	htmlAutoCloseTag		(<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> elem)<br />
+</pre><p>The HTML DTD allows a tag to implicitly close other tags. The list is kept in htmlStartClose array. This function checks if the element or one of it's children would autoclose the given tag.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the HTML document</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The tag name</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the HTML element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if autoclose, 0 otherwise</td></tr></tbody></table></div><h3><a name="UTF8ToHtml" id="UTF8ToHtml"></a>Function: UTF8ToHtml</h3><pre class="programlisting">int	UTF8ToHtml			(unsigned char * out, <br />					 int * outlen, <br />					 const unsigned char * in, <br />					 int * inlen)<br />
+</pre><p>Take a block of UTF-8 chars in and try to convert it to an ASCII plus HTML entities block of chars out.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a pointer to an array of bytes to store the result</td></tr><tr><td><span class="term"><i><tt>outlen</tt></i>:</span></td><td>the length of @out</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to an array of UTF-8 chars</td></tr><tr><td><span class="term"><i><tt>inlen</tt></i>:</span></td><td>the length of @in</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if success, -2 if the transcoding fails, or -1 otherwise The value of @inlen after return is the number of octets consumed as the return value is positive, else unpredictable. The value of @outlen after return is the number of octets consumed.</td></tr></tbody></table></div><h3><a name="htmlTagLookup" id="htmlTagLookup"></a>Function: htmlTagLookup</h3><pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> *	htmlTagLookup	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * tag)<br />
+</pre><p>Lookup the HTML tag in the ElementTable</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tag</tt></i>:</span></td><td>The tag name in lowercase</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the related <a href="libxml-HTMLparser.html#htmlElemDescPtr">htmlElemDescPtr</a> or NULL if not found.</td></tr></tbody></table></div><h3><a name="htmlCreateMemoryParserCtxt" id="htmlCreateMemoryParserCtxt"></a>Function: htmlCreateMemoryParserCtxt</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a>	htmlCreateMemoryParserCtxt	(const char * buffer, <br />							 int size)<br />
+</pre><p>Create a parser context for an HTML in-memory document.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="htmlCtxtReset" id="htmlCtxtReset"></a>Function: htmlCtxtReset</h3><pre class="programlisting">void	htmlCtxtReset			(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>Reset a parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr></tbody></table></div><h3><a name="htmlFreeParserCtxt" id="htmlFreeParserCtxt"></a>Function: htmlFreeParserCtxt</h3><pre class="programlisting">void	htmlFreeParserCtxt		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>Free all the memory used by a parser context. However the parsed document in ctxt-&gt;myDoc is not freed.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr></tbody></table></div><h3><a name="htmlCtxtReadMemory" id="htmlCtxtReadMemory"></a>Function: htmlCtxtReadMemory</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlCtxtReadMemory	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />					 const char * buffer, <br />					 int size, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an XML in-memory document and build a tree. This reuses the existing @ctxt parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlCtxtReadFd" id="htmlCtxtReadFd"></a>Function: htmlCtxtReadFd</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlCtxtReadFd		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />					 int fd, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an XML from a file descriptor and build a tree. This reuses the existing @ctxt parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>an open file descriptor</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlElementAllowedHere" id="htmlElementAllowedHere"></a>Function: htmlElementAllowedHere</h3><pre class="programlisting">int	htmlElementAllowedHere		(const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a> * parent, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elt)<br />
+</pre><p>Checks whether an HTML element may be a direct child of a parent element. Note - doesn't check for deprecated elements</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>HTML parent element</td></tr><tr><td><span class="term"><i><tt>elt</tt></i>:</span></td><td>HTML element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if allowed; 0 otherwise.</td></tr></tbody></table></div><h3><a name="htmlCtxtReadIO" id="htmlCtxtReadIO"></a>Function: htmlCtxtReadIO</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlCtxtReadIO		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />					 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />					 void * ioctx, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an HTML document from I/O functions and source and build a tree. This reuses the existing @ctxt parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlReadFile" id="htmlReadFile"></a>Function: htmlReadFile</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlReadFile		(const char * filename, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an XML file from the filesystem or the network.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file or URL</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlCtxtReadFile" id="htmlCtxtReadFile"></a>Function: htmlCtxtReadFile</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlCtxtReadFile	(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />					 const char * filename, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an XML file from the filesystem or the network. This reuses the existing @ctxt parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file or URL</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlCreatePushParserCtxt" id="htmlCreatePushParserCtxt"></a>Function: htmlCreatePushParserCtxt</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a>	htmlCreatePushParserCtxt	(<a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax, <br />							 void * user_data, <br />							 const char * chunk, <br />							 int size, <br />							 const char * filename, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
+</pre><p>Create a parser context for using the HTML parser in push mode The value of @filename is used for fetching external entities and error/warning reports.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>a SAX handler</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>a pointer to an array of chars</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>number of chars in the array</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>an optional file name or URI</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>an optional encoding</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="htmlReadMemory" id="htmlReadMemory"></a>Function: htmlReadMemory</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlReadMemory		(const char * buffer, <br />					 int size, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an XML in-memory document and build a tree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlParseDocument" id="htmlParseDocument"></a>Function: htmlParseDocument</h3><pre class="programlisting">int	htmlParseDocument		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse an HTML document (and build a tree if using the standard SAX interface).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0, -1 in case of error. the parser context is augmented as a result of the parsing.</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0, -1 in case of error. the parser context is augmented as a result of the parsing.</td></tr></tbody></table></div><h3><a name="htmlIsAutoClosed" id="htmlIsAutoClosed"></a>Function: htmlIsAutoClosed</h3><pre class="programlisting">int	htmlIsAutoClosed		(<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc, <br />					 <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> elem)<br />
+</pre><p>The HTML DTD allows a tag to implicitly close other tags. The list is kept in htmlStartClose array. This function checks if a tag is autoclosed by one of it's child</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the HTML document</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the HTML element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if autoclosed, 0 otherwise</td></tr></tbody></table></div><h3><a name="htmlParseCharRef" id="htmlParseCharRef"></a>Function: htmlParseCharRef</h3><pre class="programlisting">int	htmlParseCharRef		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>parse Reference declarations [66] CharRef ::= '&amp;#' [0-9]+ ';' | '&amp;#x' [0-9a-fA-F]+ ';'</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value parsed (as an int)</td></tr></tbody></table></div><h3><a name="htmlCtxtUseOptions" id="htmlCtxtUseOptions"></a>Function: htmlCtxtUseOptions</h3><pre class="programlisting">int	htmlCtxtUseOptions		(<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt, <br />					 int options)<br />
+</pre><p>Applies the options to the parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an HTML parser context</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, the set of unknown or unimplemented options in case of error.</td></tr></tbody></table></div><h3><a name="htmlReadDoc" id="htmlReadDoc"></a>Function: htmlReadDoc</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlReadDoc		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an XML in-memory document and build a tree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to a zero terminated string</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of htmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlParseDoc" id="htmlParseDoc"></a>Function: htmlParseDoc</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlParseDoc		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * encoding)<br />
+</pre><p>parse an HTML in-memory document and build a tree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the HTML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="htmlEncodeEntities" id="htmlEncodeEntities"></a>Function: htmlEncodeEntities</h3><pre class="programlisting">int	htmlEncodeEntities		(unsigned char * out, <br />					 int * outlen, <br />					 const unsigned char * in, <br />					 int * inlen, <br />					 int quoteChar)<br />
+</pre><p>Take a block of UTF-8 chars in and try to convert it to an ASCII plus HTML entities block of chars out.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a pointer to an array of bytes to store the result</td></tr><tr><td><span class="term"><i><tt>outlen</tt></i>:</span></td><td>the length of @out</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to an array of UTF-8 chars</td></tr><tr><td><span class="term"><i><tt>inlen</tt></i>:</span></td><td>the length of @in</td></tr><tr><td><span class="term"><i><tt>quoteChar</tt></i>:</span></td><td>the quote character to escape (' or &quot;) or zero.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if success, -2 if the transcoding fails, or -1 otherwise The value of @inlen after return is the number of octets consumed as the return value is positive, else unpredictable. The value of @outlen after return is the number of octets consumed.</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-HTMLtree.html b/doc/html/libxml-HTMLtree.html
index b3400f0..c46b5ae 100644
--- a/doc/html/libxml-HTMLtree.html
+++ b/doc/html/libxml-HTMLtree.html
@@ -10,71 +10,61 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module HTMLtree from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module HTMLtree from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-HTMLparser.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-HTMLparser.html">HTMLparser</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-SAX.html">SAX</a></th><td><a accesskey="n" href="libxml-SAX.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this module implements a few function needed to process tree in an HTML specific way. </p><h2>Table of Contents</h2><pre class="programlisting">void	<a href="#htmlDocDumpMemory">htmlDocDumpMemory</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** mem, <br />				 int * size)<br />
-</pre><pre class="programlisting">int	<a href="#htmlSaveFile">htmlSaveFile</a>	(const char * filename, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
-</pre><pre class="programlisting">#define <a href="#HTML_TEXT_NODE">HTML_TEXT_NODE</a>
-
-</pre><pre class="programlisting">int	<a href="#htmlNodeDump">htmlNodeDump</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">void	<a href="#htmlNodeDumpFormatOutput">htmlNodeDumpFormatOutput</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const char * encoding, <br />				 int format)<br />
-</pre><pre class="programlisting">int	<a href="#htmlSaveFileEnc">htmlSaveFileEnc</a>	(const char * filename, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding)<br />
-</pre><pre class="programlisting">void	<a href="#htmlNodeDumpOutput">htmlNodeDumpOutput</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const char * encoding)<br />
-</pre><pre class="programlisting">int	<a href="#htmlDocDump">htmlDocDump</a>	(FILE * f, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlNewDoc">htmlNewDoc</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#htmlGetMetaEncoding">htmlGetMetaEncoding</a>	(<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">void	<a href="#htmlNodeDumpFile">htmlNodeDumpFile</a>	(FILE * out, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">int	<a href="#htmlNodeDumpFileFormat">htmlNodeDumpFileFormat</a>	(FILE * out, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const char * encoding, <br />				 int format)<br />
-</pre><pre class="programlisting">#define <a href="#HTML_PRESERVE_NODE">HTML_PRESERVE_NODE</a>
-
-</pre><pre class="programlisting">int	<a href="#htmlSetMetaEncoding">htmlSetMetaEncoding</a>	(<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * encoding)<br />
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlNewDocNoDtD">htmlNewDocNoDtD</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID)<br />
-</pre><pre class="programlisting">#define <a href="#HTML_COMMENT_NODE">HTML_COMMENT_NODE</a>
-
-</pre><pre class="programlisting">int	<a href="#htmlIsBooleanAttr">htmlIsBooleanAttr</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">#define <a href="#HTML_PI_NODE">HTML_PI_NODE</a>
-
-</pre><pre class="programlisting">#define <a href="#HTML_ENTITY_REF_NODE">HTML_ENTITY_REF_NODE</a>
-
-</pre><pre class="programlisting">void	<a href="#htmlDocContentDumpFormatOutput">htmlDocContentDumpFormatOutput</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding, <br />				 int format)<br />
-</pre><pre class="programlisting">int	<a href="#htmlSaveFileFormat">htmlSaveFileFormat</a>	(const char * filename, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding, <br />				 int format)<br />
-</pre><pre class="programlisting">void	<a href="#htmlDocContentDumpOutput">htmlDocContentDumpOutput</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding)<br />
-</pre><h2>Description</h2>
-<h3><a name="htmlDocDumpMemory" id="htmlDocDumpMemory"></a>Function: htmlDocDumpMemory</h3><pre class="programlisting">void	htmlDocDumpMemory	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** mem, <br />				 int * size)<br />
+    </style><title>Module HTMLtree from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module HTMLtree from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-HTMLparser.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-HTMLparser.html">HTMLparser</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-SAX.html">SAX</a></th><td><a accesskey="n" href="libxml-SAX.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this module implements a few function needed to process tree in an HTML specific way. </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#HTML_COMMENT_NODE">HTML_COMMENT_NODE</a></pre><pre class="programlisting">#define <a href="#HTML_ENTITY_REF_NODE">HTML_ENTITY_REF_NODE</a></pre><pre class="programlisting">#define <a href="#HTML_PI_NODE">HTML_PI_NODE</a></pre><pre class="programlisting">#define <a href="#HTML_PRESERVE_NODE">HTML_PRESERVE_NODE</a></pre><pre class="programlisting">#define <a href="#HTML_TEXT_NODE">HTML_TEXT_NODE</a></pre><pre class="programlisting">void	<a href="#htmlDocContentDumpFormatOutput">htmlDocContentDumpFormatOutput</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding, <br />					 int format)</pre>
+<pre class="programlisting">void	<a href="#htmlDocContentDumpOutput">htmlDocContentDumpOutput</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding)</pre>
+<pre class="programlisting">int	<a href="#htmlDocDump">htmlDocDump</a>			(FILE * f, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)</pre>
+<pre class="programlisting">void	<a href="#htmlDocDumpMemory">htmlDocDumpMemory</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** mem, <br />					 int * size)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#htmlGetMetaEncoding">htmlGetMetaEncoding</a>	(<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc)</pre>
+<pre class="programlisting">int	<a href="#htmlIsBooleanAttr">htmlIsBooleanAttr</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlNewDoc">htmlNewDoc</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID)</pre>
+<pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	<a href="#htmlNewDocNoDtD">htmlNewDocNoDtD</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID)</pre>
+<pre class="programlisting">int	<a href="#htmlNodeDump">htmlNodeDump</a>			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting">void	<a href="#htmlNodeDumpFile">htmlNodeDumpFile</a>		(FILE * out, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting">int	<a href="#htmlNodeDumpFileFormat">htmlNodeDumpFileFormat</a>		(FILE * out, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const char * encoding, <br />					 int format)</pre>
+<pre class="programlisting">void	<a href="#htmlNodeDumpFormatOutput">htmlNodeDumpFormatOutput</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const char * encoding, <br />					 int format)</pre>
+<pre class="programlisting">void	<a href="#htmlNodeDumpOutput">htmlNodeDumpOutput</a>		(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const char * encoding)</pre>
+<pre class="programlisting">int	<a href="#htmlSaveFile">htmlSaveFile</a>			(const char * filename, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)</pre>
+<pre class="programlisting">int	<a href="#htmlSaveFileEnc">htmlSaveFileEnc</a>			(const char * filename, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding)</pre>
+<pre class="programlisting">int	<a href="#htmlSaveFileFormat">htmlSaveFileFormat</a>		(const char * filename, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding, <br />					 int format)</pre>
+<pre class="programlisting">int	<a href="#htmlSetMetaEncoding">htmlSetMetaEncoding</a>		(<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * encoding)</pre>
+<h2>Description</h2>
+<h3><a name="HTML_ENTITY_REF_NODE" id="HTML_ENTITY_REF_NODE"></a>Macro: HTML_ENTITY_REF_NODE</h3><pre>#define HTML_ENTITY_REF_NODE</pre><p>Macro. An entity <a href="libxml-SAX.html#reference">reference</a> in a HTML document is really implemented the same way as an entity <a href="libxml-SAX.html#reference">reference</a> in an XML document.</p>
+<h3><a name="HTML_COMMENT_NODE" id="HTML_COMMENT_NODE"></a>Macro: HTML_COMMENT_NODE</h3><pre>#define HTML_COMMENT_NODE</pre><p>Macro. A <a href="libxml-SAX.html#comment">comment</a> in a HTML document is really implemented the same way as a <a href="libxml-SAX.html#comment">comment</a> in an XML document.</p>
+<h3><a name="HTML_PRESERVE_NODE" id="HTML_PRESERVE_NODE"></a>Macro: HTML_PRESERVE_NODE</h3><pre>#define HTML_PRESERVE_NODE</pre><p>Macro. A preserved node in a HTML document is really implemented the same way as a CDATA section in an XML document.</p>
+<h3><a name="HTML_TEXT_NODE" id="HTML_TEXT_NODE"></a>Macro: HTML_TEXT_NODE</h3><pre>#define HTML_TEXT_NODE</pre><p>Macro. A text node in a HTML document is really implemented the same way as a text node in an XML document.</p>
+<h3><a name="HTML_PI_NODE" id="HTML_PI_NODE"></a>Macro: HTML_PI_NODE</h3><pre>#define HTML_PI_NODE</pre><p>Macro. A processing instruction in a HTML document is really implemented the same way as a processing instruction in an XML document.</p>
+<h3><a name="htmlDocDumpMemory" id="htmlDocDumpMemory"></a>Function: htmlDocDumpMemory</h3><pre class="programlisting">void	htmlDocDumpMemory		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** mem, <br />					 int * size)<br />
 </pre><p>Dump an HTML document in memory and return the <a href="libxml-tree.html#xmlChar">xmlChar</a> * and it's size. It's up to the caller to free the memory.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>OUT: the memory pointer</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>OUT: the memory length</td></tr></tbody></table></div><h3><a name="htmlSaveFile" id="htmlSaveFile"></a>Function: htmlSaveFile</h3><pre class="programlisting">int	htmlSaveFile	(const char * filename, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>OUT: the memory pointer</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>OUT: the memory length</td></tr></tbody></table></div><h3><a name="htmlSaveFile" id="htmlSaveFile"></a>Function: htmlSaveFile</h3><pre class="programlisting">int	htmlSaveFile			(const char * filename, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
 </pre><p>Dump an HTML document to a file. If @filename is &quot;-&quot; the stdout file is used.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename (or URL)</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="HTML_TEXT_NODE" id="HTML_TEXT_NODE"></a>Macro: HTML_TEXT_NODE</h3><pre>#define HTML_TEXT_NODE</pre><p>Macro. A text node in a HTML document is really implemented the same way as a text node in an XML document.</p>
-<h3><a name="htmlNodeDump" id="htmlNodeDump"></a>Function: htmlNodeDump</h3><pre class="programlisting">int	htmlNodeDump	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><p>Dump an HTML node, recursive behaviour,children are printed too, and formatting returns are added.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the HTML buffer output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of error</td></tr></tbody></table></div><h3><a name="htmlNodeDumpFormatOutput" id="htmlNodeDumpFormatOutput"></a>Function: htmlNodeDumpFormatOutput</h3><pre class="programlisting">void	htmlNodeDumpFormatOutput	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const char * encoding, <br />				 int format)<br />
-</pre><p>Dump an HTML node, recursive behaviour,children are printed too.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the HTML buffer output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding string</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr></tbody></table></div><h3><a name="htmlSaveFileEnc" id="htmlSaveFileEnc"></a>Function: htmlSaveFileEnc</h3><pre class="programlisting">int	htmlSaveFileEnc	(const char * filename, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding)<br />
-</pre><p>Dump an HTML document to a file using a given encoding and formatting returns/spaces are added.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="htmlNodeDumpOutput" id="htmlNodeDumpOutput"></a>Function: htmlNodeDumpOutput</h3><pre class="programlisting">void	htmlNodeDumpOutput	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const char * encoding)<br />
-</pre><p>Dump an HTML node, recursive behaviour,children are printed too, and formatting returns/spaces are added.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the HTML buffer output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding string</td></tr></tbody></table></div><h3><a name="htmlDocDump" id="htmlDocDump"></a>Function: htmlDocDump</h3><pre class="programlisting">int	htmlDocDump	(FILE * f, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename (or URL)</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="htmlNewDocNoDtD" id="htmlNewDocNoDtD"></a>Function: htmlNewDocNoDtD</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlNewDocNoDtD		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID)<br />
+</pre><p>Creates a new HTML document without a DTD node if @URI and @ExternalID are NULL</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>URI for the dtd, or NULL</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID of the DTD, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new document, do not initialize the DTD if not provided</td></tr></tbody></table></div><h3><a name="htmlDocDump" id="htmlDocDump"></a>Function: htmlDocDump</h3><pre class="programlisting">int	htmlDocDump			(FILE * f, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
 </pre><p>Dump an HTML document to an open FILE.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the FILE*</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="htmlNewDoc" id="htmlNewDoc"></a>Function: htmlNewDoc</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlNewDoc	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the FILE*</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="htmlNodeDump" id="htmlNodeDump"></a>Function: htmlNodeDump</h3><pre class="programlisting">int	htmlNodeDump			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+</pre><p>Dump an HTML node, recursive behaviour,children are printed too, and formatting returns are added.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the HTML buffer output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of error</td></tr></tbody></table></div><h3><a name="htmlDocContentDumpFormatOutput" id="htmlDocContentDumpFormatOutput"></a>Function: htmlDocContentDumpFormatOutput</h3><pre class="programlisting">void	htmlDocContentDumpFormatOutput	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding, <br />					 int format)<br />
+</pre><p>Dump an HTML document.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the HTML buffer output</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding string</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr></tbody></table></div><h3><a name="htmlSetMetaEncoding" id="htmlSetMetaEncoding"></a>Function: htmlSetMetaEncoding</h3><pre class="programlisting">int	htmlSetMetaEncoding		(<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * encoding)<br />
+</pre><p>Sets the current encoding in the Meta tags NOTE: this will not change the document content encoding, just the META flag associated.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="htmlSaveFileEnc" id="htmlSaveFileEnc"></a>Function: htmlSaveFileEnc</h3><pre class="programlisting">int	htmlSaveFileEnc			(const char * filename, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding)<br />
+</pre><p>Dump an HTML document to a file using a given encoding and formatting returns/spaces are added.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="htmlNodeDumpOutput" id="htmlNodeDumpOutput"></a>Function: htmlNodeDumpOutput</h3><pre class="programlisting">void	htmlNodeDumpOutput		(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const char * encoding)<br />
+</pre><p>Dump an HTML node, recursive behaviour,children are printed too, and formatting returns/spaces are added.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the HTML buffer output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding string</td></tr></tbody></table></div><h3><a name="htmlIsBooleanAttr" id="htmlIsBooleanAttr"></a>Function: htmlIsBooleanAttr</h3><pre class="programlisting">int	htmlIsBooleanAttr		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Determine if a given <a href="libxml-SAX.html#attribute">attribute</a> is a boolean attribute.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the <a href="libxml-SAX.html#attribute">attribute</a> to check</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>false if the <a href="libxml-SAX.html#attribute">attribute</a> is not boolean, true otherwise.</td></tr></tbody></table></div><h3><a name="htmlNodeDumpFormatOutput" id="htmlNodeDumpFormatOutput"></a>Function: htmlNodeDumpFormatOutput</h3><pre class="programlisting">void	htmlNodeDumpFormatOutput	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const char * encoding, <br />					 int format)<br />
+</pre><p>Dump an HTML node, recursive behaviour,children are printed too.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the HTML buffer output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding string</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr></tbody></table></div><h3><a name="htmlNewDoc" id="htmlNewDoc"></a>Function: htmlNewDoc</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlNewDoc		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID)<br />
 </pre><p>Creates a new HTML document</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>URI for the dtd, or NULL</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID of the DTD, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new document</td></tr></tbody></table></div><h3><a name="htmlGetMetaEncoding" id="htmlGetMetaEncoding"></a>Function: htmlGetMetaEncoding</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	htmlGetMetaEncoding	(<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc)<br />
 </pre><p>Encoding definition lookup in the Meta tags</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current encoding as flagged in the HTML source</td></tr></tbody></table></div><h3><a name="htmlNodeDumpFile" id="htmlNodeDumpFile"></a>Function: htmlNodeDumpFile</h3><pre class="programlisting">void	htmlNodeDumpFile	(FILE * out, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current encoding as flagged in the HTML source</td></tr></tbody></table></div><h3><a name="htmlNodeDumpFile" id="htmlNodeDumpFile"></a>Function: htmlNodeDumpFile</h3><pre class="programlisting">void	htmlNodeDumpFile		(FILE * out, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
 </pre><p>Dump an HTML node, recursive behaviour,children are printed too, and formatting returns are added.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>the FILE pointer</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr></tbody></table></div><h3><a name="htmlNodeDumpFileFormat" id="htmlNodeDumpFileFormat"></a>Function: htmlNodeDumpFileFormat</h3><pre class="programlisting">int	htmlNodeDumpFileFormat	(FILE * out, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const char * encoding, <br />				 int format)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>the FILE pointer</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr></tbody></table></div><h3><a name="htmlNodeDumpFileFormat" id="htmlNodeDumpFileFormat"></a>Function: htmlNodeDumpFileFormat</h3><pre class="programlisting">int	htmlNodeDumpFileFormat		(FILE * out, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const char * encoding, <br />					 int format)<br />
 </pre><p>Dump an HTML node, recursive behaviour,children are printed too. TODO: if encoding == NULL try to save in the doc encoding</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>the FILE pointer</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="HTML_PRESERVE_NODE" id="HTML_PRESERVE_NODE"></a>Macro: HTML_PRESERVE_NODE</h3><pre>#define HTML_PRESERVE_NODE</pre><p>Macro. A preserved node in a HTML document is really implemented the same way as a CDATA section in an XML document.</p>
-<h3><a name="htmlSetMetaEncoding" id="htmlSetMetaEncoding"></a>Function: htmlSetMetaEncoding</h3><pre class="programlisting">int	htmlSetMetaEncoding	(<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * encoding)<br />
-</pre><p>Sets the current encoding in the Meta tags NOTE: this will not change the document content encoding, just the META flag associated.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="htmlNewDocNoDtD" id="htmlNewDocNoDtD"></a>Function: htmlNewDocNoDtD</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>	htmlNewDocNoDtD	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID)<br />
-</pre><p>Creates a new HTML document without a DTD node if @URI and @ExternalID are NULL</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>URI for the dtd, or NULL</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID of the DTD, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new document, do not initialize the DTD if not provided</td></tr></tbody></table></div><h3><a name="HTML_COMMENT_NODE" id="HTML_COMMENT_NODE"></a>Macro: HTML_COMMENT_NODE</h3><pre>#define HTML_COMMENT_NODE</pre><p>Macro. A <a href="libxml-SAX.html#comment">comment</a> in a HTML document is really implemented the same way as a <a href="libxml-SAX.html#comment">comment</a> in an XML document.</p>
-<h3><a name="htmlIsBooleanAttr" id="htmlIsBooleanAttr"></a>Function: htmlIsBooleanAttr</h3><pre class="programlisting">int	htmlIsBooleanAttr	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Determine if a given <a href="libxml-SAX.html#attribute">attribute</a> is a boolean attribute.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the <a href="libxml-SAX.html#attribute">attribute</a> to check</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>false if the <a href="libxml-SAX.html#attribute">attribute</a> is not boolean, true otherwise.</td></tr></tbody></table></div><h3><a name="HTML_PI_NODE" id="HTML_PI_NODE"></a>Macro: HTML_PI_NODE</h3><pre>#define HTML_PI_NODE</pre><p>Macro. A processing instruction in a HTML document is really implemented the same way as a processing instruction in an XML document.</p>
-<h3><a name="HTML_ENTITY_REF_NODE" id="HTML_ENTITY_REF_NODE"></a>Macro: HTML_ENTITY_REF_NODE</h3><pre>#define HTML_ENTITY_REF_NODE</pre><p>Macro. An entity <a href="libxml-SAX.html#reference">reference</a> in a HTML document is really implemented the same way as an entity <a href="libxml-SAX.html#reference">reference</a> in an XML document.</p>
-<h3><a name="htmlDocContentDumpFormatOutput" id="htmlDocContentDumpFormatOutput"></a>Function: htmlDocContentDumpFormatOutput</h3><pre class="programlisting">void	htmlDocContentDumpFormatOutput	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding, <br />				 int format)<br />
-</pre><p>Dump an HTML document.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the HTML buffer output</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding string</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr></tbody></table></div><h3><a name="htmlSaveFileFormat" id="htmlSaveFileFormat"></a>Function: htmlSaveFileFormat</h3><pre class="programlisting">int	htmlSaveFileFormat	(const char * filename, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding, <br />				 int format)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>the FILE pointer</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="htmlSaveFileFormat" id="htmlSaveFileFormat"></a>Function: htmlSaveFileFormat</h3><pre class="programlisting">int	htmlSaveFileFormat		(const char * filename, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding, <br />					 int format)<br />
 </pre><p>Dump an HTML document to a file using a given encoding.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="htmlDocContentDumpOutput" id="htmlDocContentDumpOutput"></a>Function: htmlDocContentDumpOutput</h3><pre class="programlisting">void	htmlDocContentDumpOutput	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="htmlDocContentDumpOutput" id="htmlDocContentDumpOutput"></a>Function: htmlDocContentDumpOutput</h3><pre class="programlisting">void	htmlDocContentDumpOutput	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding)<br />
 </pre><p>Dump an HTML document. Formating return/spaces are added.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the HTML buffer output</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding string</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-SAX.html b/doc/html/libxml-SAX.html
index 64c7202..7c29852 100644
--- a/doc/html/libxml-SAX.html
+++ b/doc/html/libxml-SAX.html
@@ -10,116 +10,116 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module SAX from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module SAX from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-HTMLtree.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-HTMLtree.html">HTMLtree</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-SAX2.html">SAX2</a></th><td><a accesskey="n" href="libxml-SAX2.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><h2 style="font-weight:bold;color:red;text-align:center">This module is deprecated</h2><p>DEPRECATED set of SAX version 1 interfaces used to build the DOM tree. </p><div class="deprecated"><h2>Table of Contents</h2><pre class="programlisting">void	<a href="#cdataBlock">cdataBlock</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 int len)<br />
-</pre><pre class="programlisting">void	<a href="#comment">comment</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">int	<a href="#checkNamespace">checkNamespace</a>	(void * ctx, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespace)<br />
-</pre><pre class="programlisting">void	<a href="#startElement">startElement</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** atts)<br />
-</pre><pre class="programlisting">void	<a href="#inithtmlDefaultSAXHandler">inithtmlDefaultSAXHandler</a>	(<a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a> * hdlr)<br />
-</pre><pre class="programlisting">int	<a href="#getColumnNumber">getColumnNumber</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#endElement">endElement</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">void	<a href="#attribute">attribute</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">void	<a href="#namespaceDecl">namespaceDecl</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#getNamespace">getNamespace</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#initdocbDefaultSAXHandler">initdocbDefaultSAXHandler</a>	(<a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a> * hdlr)<br />
-</pre><pre class="programlisting">void	<a href="#setDocumentLocator">setDocumentLocator</a>	(void * ctx, <br />				 <a href="libxml-tree.html#xmlSAXLocatorPtr">xmlSAXLocatorPtr</a> loc)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#getPublicId">getPublicId</a>	(void * ctx)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#getEntity">getEntity</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">void	<a href="#characters">characters</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />				 int len)<br />
-</pre><pre class="programlisting">void	<a href="#elementDecl">elementDecl</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int type, <br />				 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)<br />
-</pre><pre class="programlisting">void	<a href="#ignorableWhitespace">ignorableWhitespace</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />				 int len)<br />
-</pre><pre class="programlisting">int	<a href="#hasExternalSubset">hasExternalSubset</a>	(void * ctx)<br />
-</pre><pre class="programlisting">int	<a href="#isStandalone">isStandalone</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#unparsedEntityDecl">unparsedEntityDecl</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * notationName)<br />
-</pre><pre class="programlisting">void	<a href="#reference">reference</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">void	<a href="#globalNamespace">globalNamespace</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
-</pre><pre class="programlisting">void	<a href="#initxmlDefaultSAXHandler">initxmlDefaultSAXHandler</a>	(<a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a> * hdlr, <br />				 int warning)<br />
-</pre><pre class="programlisting">int	<a href="#hasInternalSubset">hasInternalSubset</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#processingInstruction">processingInstruction</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#getParameterEntity">getParameterEntity</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">void	<a href="#attributeDecl">attributeDecl</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />				 int type, <br />				 int def, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * defaultValue, <br />				 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)<br />
-</pre><pre class="programlisting">void	<a href="#notationDecl">notationDecl</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)<br />
-</pre><pre class="programlisting">void	<a href="#entityDecl">entityDecl</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">void	<a href="#setNamespace">setNamespace</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">void	<a href="#externalSubset">externalSubset</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#resolveEntity">resolveEntity</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#getSystemId">getSystemId</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#startDocument">startDocument</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#internalSubset">internalSubset</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
-</pre><pre class="programlisting">void	<a href="#endDocument">endDocument</a>	(void * ctx)<br />
-</pre><pre class="programlisting">int	<a href="#getLineNumber">getLineNumber</a>	(void * ctx)<br />
-</pre><h2>Description</h2>
-<h3><a name="cdataBlock" id="cdataBlock"></a>Function: cdataBlock</h3><pre class="programlisting">void	cdataBlock	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 int len)<br />
+    </style><title>Module SAX from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module SAX from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-HTMLtree.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-HTMLtree.html">HTMLtree</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-SAX2.html">SAX2</a></th><td><a accesskey="n" href="libxml-SAX2.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><h2 style="font-weight:bold;color:red;text-align:center">This module is deprecated</h2><p>DEPRECATED set of SAX version 1 interfaces used to build the DOM tree. </p><div class="deprecated"><h2>Table of Contents</h2><pre class="programlisting">void	<a href="#cdataBlock">cdataBlock</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int len)</pre>
+<pre class="programlisting">void	<a href="#comment">comment</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting">int	<a href="#checkNamespace">checkNamespace</a>			(void * ctx, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespace)</pre>
+<pre class="programlisting">void	<a href="#startElement">startElement</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** atts)</pre>
+<pre class="programlisting">void	<a href="#inithtmlDefaultSAXHandler">inithtmlDefaultSAXHandler</a>	(<a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a> * hdlr)</pre>
+<pre class="programlisting">int	<a href="#getColumnNumber">getColumnNumber</a>			(void * ctx)</pre>
+<pre class="programlisting">void	<a href="#endElement">endElement</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">void	<a href="#attribute">attribute</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting">void	<a href="#namespaceDecl">namespaceDecl</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#getNamespace">getNamespace</a>		(void * ctx)</pre>
+<pre class="programlisting">void	<a href="#initdocbDefaultSAXHandler">initdocbDefaultSAXHandler</a>	(<a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a> * hdlr)</pre>
+<pre class="programlisting">void	<a href="#setDocumentLocator">setDocumentLocator</a>		(void * ctx, <br />					 <a href="libxml-tree.html#xmlSAXLocatorPtr">xmlSAXLocatorPtr</a> loc)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#getPublicId">getPublicId</a>		(void * ctx)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#getEntity">getEntity</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">void	<a href="#characters">characters</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />					 int len)</pre>
+<pre class="programlisting">void	<a href="#elementDecl">elementDecl</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)</pre>
+<pre class="programlisting">void	<a href="#ignorableWhitespace">ignorableWhitespace</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#hasExternalSubset">hasExternalSubset</a>		(void * ctx)</pre>
+<pre class="programlisting">int	<a href="#isStandalone">isStandalone</a>			(void * ctx)</pre>
+<pre class="programlisting">void	<a href="#unparsedEntityDecl">unparsedEntityDecl</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * notationName)</pre>
+<pre class="programlisting">void	<a href="#reference">reference</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">void	<a href="#globalNamespace">globalNamespace</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)</pre>
+<pre class="programlisting">void	<a href="#initxmlDefaultSAXHandler">initxmlDefaultSAXHandler</a>	(<a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a> * hdlr, <br />					 int warning)</pre>
+<pre class="programlisting">int	<a href="#hasInternalSubset">hasInternalSubset</a>		(void * ctx)</pre>
+<pre class="programlisting">void	<a href="#processingInstruction">processingInstruction</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#getParameterEntity">getParameterEntity</a>	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">void	<a href="#attributeDecl">attributeDecl</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />					 int type, <br />					 int def, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * defaultValue, <br />					 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)</pre>
+<pre class="programlisting">void	<a href="#notationDecl">notationDecl</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)</pre>
+<pre class="programlisting">void	<a href="#entityDecl">entityDecl</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">void	<a href="#setNamespace">setNamespace</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">void	<a href="#externalSubset">externalSubset</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#resolveEntity">resolveEntity</a>	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#getSystemId">getSystemId</a>		(void * ctx)</pre>
+<pre class="programlisting">void	<a href="#startDocument">startDocument</a>			(void * ctx)</pre>
+<pre class="programlisting">void	<a href="#internalSubset">internalSubset</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)</pre>
+<pre class="programlisting">void	<a href="#endDocument">endDocument</a>			(void * ctx)</pre>
+<pre class="programlisting">int	<a href="#getLineNumber">getLineNumber</a>			(void * ctx)</pre>
+<h2>Description</h2>
+<h3><a name="cdataBlock" id="cdataBlock"></a>Function: cdataBlock</h3><pre class="programlisting">void	cdataBlock			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int len)<br />
 </pre><p>called when a pcdata block has been parsed DEPRECATED: use xmlSAX2CDataBlock()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>The pcdata content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the block length</td></tr></tbody></table></div><h3><a name="comment" id="comment"></a>Function: comment</h3><pre class="programlisting">void	comment	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>The pcdata content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the block length</td></tr></tbody></table></div><h3><a name="comment" id="comment"></a>Function: comment</h3><pre class="programlisting">void	comment			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
 </pre><p>A <a href="libxml-SAX.html#comment">comment</a> has been parsed. DEPRECATED: use xmlSAX2Comment()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#comment">comment</a> content</td></tr></tbody></table></div><h3><a name="checkNamespace" id="checkNamespace"></a>Function: checkNamespace</h3><pre class="programlisting">int	checkNamespace	(void * ctx, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespace)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#comment">comment</a> content</td></tr></tbody></table></div><h3><a name="checkNamespace" id="checkNamespace"></a>Function: checkNamespace</h3><pre class="programlisting">int	checkNamespace			(void * ctx, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespace)<br />
 </pre><p>Check that the current element namespace is the same as the one read upon parsing. DEPRECATED</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>namespace</tt></i>:</span></td><td>the namespace to check against</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="startElement" id="startElement"></a>Function: startElement</h3><pre class="programlisting">void	startElement	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** atts)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>namespace</tt></i>:</span></td><td>the namespace to check against</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="startElement" id="startElement"></a>Function: startElement</h3><pre class="programlisting">void	startElement			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** atts)<br />
 </pre><p>called when an opening tag has been processed. DEPRECATED: use xmlSAX2StartElement()</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>fullname</tt></i>:</span></td><td>The element name, including namespace prefix</td></tr><tr><td><span class="term"><i><tt>atts</tt></i>:</span></td><td>An array of name/value attributes pairs, NULL terminated</td></tr></tbody></table></div><h3><a name="inithtmlDefaultSAXHandler" id="inithtmlDefaultSAXHandler"></a>Function: inithtmlDefaultSAXHandler</h3><pre class="programlisting">void	inithtmlDefaultSAXHandler	(<a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a> * hdlr)<br />
 </pre><p>Initialize the default HTML SAX version 1 handler DEPRECATED: use xmlSAX2InitHtmlDefaultSAXHandler() for the new SAX2 blocks</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>hdlr</tt></i>:</span></td><td>the SAX handler</td></tr></tbody></table></div><h3><a name="getColumnNumber" id="getColumnNumber"></a>Function: getColumnNumber</h3><pre class="programlisting">int	getColumnNumber	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>hdlr</tt></i>:</span></td><td>the SAX handler</td></tr></tbody></table></div><h3><a name="getColumnNumber" id="getColumnNumber"></a>Function: getColumnNumber</h3><pre class="programlisting">int	getColumnNumber			(void * ctx)<br />
 </pre><p>Provide the column number of the current parsing point. DEPRECATED: use xmlSAX2GetColumnNumber()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an int</td></tr></tbody></table></div><h3><a name="endElement" id="endElement"></a>Function: endElement</h3><pre class="programlisting">void	endElement	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an int</td></tr></tbody></table></div><h3><a name="endElement" id="endElement"></a>Function: endElement</h3><pre class="programlisting">void	endElement			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>called when the end of an element has been detected. DEPRECATED: use xmlSAX2EndElement()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The element name</td></tr></tbody></table></div><h3><a name="attribute" id="attribute"></a>Function: attribute</h3><pre class="programlisting">void	attribute	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The element name</td></tr></tbody></table></div><h3><a name="attribute" id="attribute"></a>Function: attribute</h3><pre class="programlisting">void	attribute			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
 </pre><p>Handle an <a href="libxml-SAX.html#attribute">attribute</a> that has been read by the parser. The default handling is to convert the <a href="libxml-SAX.html#attribute">attribute</a> into an DOM subtree and past it in a new <a href="libxml-tree.html#xmlAttr">xmlAttr</a> element added to the element. DEPRECATED: use xmlSAX2Attribute()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>fullname</tt></i>:</span></td><td>The <a href="libxml-SAX.html#attribute">attribute</a> name, including namespace prefix</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>The <a href="libxml-SAX.html#attribute">attribute</a> value</td></tr></tbody></table></div><h3><a name="namespaceDecl" id="namespaceDecl"></a>Function: namespaceDecl</h3><pre class="programlisting">void	namespaceDecl	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>fullname</tt></i>:</span></td><td>The <a href="libxml-SAX.html#attribute">attribute</a> name, including namespace prefix</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>The <a href="libxml-SAX.html#attribute">attribute</a> value</td></tr></tbody></table></div><h3><a name="namespaceDecl" id="namespaceDecl"></a>Function: namespaceDecl</h3><pre class="programlisting">void	namespaceDecl			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
 </pre><p>A namespace has been parsed. DEPRECATED</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td>the namespace associated URN</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the namespace prefix</td></tr></tbody></table></div><h3><a name="getNamespace" id="getNamespace"></a>Function: getNamespace</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	getNamespace	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td>the namespace associated URN</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the namespace prefix</td></tr></tbody></table></div><h3><a name="getNamespace" id="getNamespace"></a>Function: getNamespace</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	getNamespace		(void * ctx)<br />
 </pre><p>Get the current element namespace. DEPRECATED</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> or NULL if none</td></tr></tbody></table></div><h3><a name="initdocbDefaultSAXHandler" id="initdocbDefaultSAXHandler"></a>Function: initdocbDefaultSAXHandler</h3><pre class="programlisting">void	initdocbDefaultSAXHandler	(<a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a> * hdlr)<br />
 </pre><p>Initialize the default DocBook SAX version 1 handler DEPRECATED: use xmlSAX2InitDocbDefaultSAXHandler() for the new SAX2 blocks</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>hdlr</tt></i>:</span></td><td>the SAX handler</td></tr></tbody></table></div><h3><a name="setDocumentLocator" id="setDocumentLocator"></a>Function: setDocumentLocator</h3><pre class="programlisting">void	setDocumentLocator	(void * ctx, <br />				 <a href="libxml-tree.html#xmlSAXLocatorPtr">xmlSAXLocatorPtr</a> loc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>hdlr</tt></i>:</span></td><td>the SAX handler</td></tr></tbody></table></div><h3><a name="setDocumentLocator" id="setDocumentLocator"></a>Function: setDocumentLocator</h3><pre class="programlisting">void	setDocumentLocator		(void * ctx, <br />					 <a href="libxml-tree.html#xmlSAXLocatorPtr">xmlSAXLocatorPtr</a> loc)<br />
 </pre><p>Receive the document locator at startup, actually <a href="libxml-globals.html#xmlDefaultSAXLocator">xmlDefaultSAXLocator</a> Everything is available on the context, so this is useless in our case. DEPRECATED</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>loc</tt></i>:</span></td><td>A SAX Locator</td></tr></tbody></table></div><h3><a name="getPublicId" id="getPublicId"></a>Function: getPublicId</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	getPublicId	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>loc</tt></i>:</span></td><td>A SAX Locator</td></tr></tbody></table></div><h3><a name="getPublicId" id="getPublicId"></a>Function: getPublicId</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	getPublicId		(void * ctx)<br />
 </pre><p>Provides the public ID e.g. &quot;-//SGMLSOURCE//DTD DEMO//EN&quot; DEPRECATED: use xmlSAX2GetPublicId()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr></tbody></table></div><h3><a name="getEntity" id="getEntity"></a>Function: getEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	getEntity	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr></tbody></table></div><h3><a name="getEntity" id="getEntity"></a>Function: getEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	getEntity		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Get an entity by name DEPRECATED: use xmlSAX2GetEntity()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> if found.</td></tr></tbody></table></div><h3><a name="characters" id="characters"></a>Function: characters</h3><pre class="programlisting">void	characters	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> if found.</td></tr></tbody></table></div><h3><a name="characters" id="characters"></a>Function: characters</h3><pre class="programlisting">void	characters			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />					 int len)<br />
 </pre><p>receiving some chars from the parser. DEPRECATED: use xmlSAX2Characters()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr></tbody></table></div><h3><a name="elementDecl" id="elementDecl"></a>Function: elementDecl</h3><pre class="programlisting">void	elementDecl	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int type, <br />				 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr></tbody></table></div><h3><a name="elementDecl" id="elementDecl"></a>Function: elementDecl</h3><pre class="programlisting">void	elementDecl			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)<br />
 </pre><p>An element definition has been parsed DEPRECATED: use xmlSAX2ElementDecl()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the element type</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the element value tree</td></tr></tbody></table></div><h3><a name="ignorableWhitespace" id="ignorableWhitespace"></a>Function: ignorableWhitespace</h3><pre class="programlisting">void	ignorableWhitespace	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the element type</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the element value tree</td></tr></tbody></table></div><h3><a name="ignorableWhitespace" id="ignorableWhitespace"></a>Function: ignorableWhitespace</h3><pre class="programlisting">void	ignorableWhitespace		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />					 int len)<br />
 </pre><p>receiving some ignorable whitespaces from the parser. UNUSED: by default the DOM building will use <a href="libxml-SAX.html#characters">characters</a> DEPRECATED: use xmlSAX2IgnorableWhitespace()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr></tbody></table></div><h3><a name="hasExternalSubset" id="hasExternalSubset"></a>Function: hasExternalSubset</h3><pre class="programlisting">int	hasExternalSubset	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr></tbody></table></div><h3><a name="hasExternalSubset" id="hasExternalSubset"></a>Function: hasExternalSubset</h3><pre class="programlisting">int	hasExternalSubset		(void * ctx)<br />
 </pre><p>Does this document has an external subset DEPRECATED: use xmlSAX2HasExternalSubset()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><h3><a name="isStandalone" id="isStandalone"></a>Function: isStandalone</h3><pre class="programlisting">int	isStandalone	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><h3><a name="isStandalone" id="isStandalone"></a>Function: isStandalone</h3><pre class="programlisting">int	isStandalone			(void * ctx)<br />
 </pre><p>Is this document tagged standalone ? DEPRECATED: use xmlSAX2IsStandalone()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><h3><a name="unparsedEntityDecl" id="unparsedEntityDecl"></a>Function: unparsedEntityDecl</h3><pre class="programlisting">void	unparsedEntityDecl	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * notationName)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><h3><a name="unparsedEntityDecl" id="unparsedEntityDecl"></a>Function: unparsedEntityDecl</h3><pre class="programlisting">void	unparsedEntityDecl		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * notationName)<br />
 </pre><p>What to do when an unparsed entity declaration is parsed DEPRECATED: use xmlSAX2UnparsedEntityDecl()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The name of the entity</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>notationName</tt></i>:</span></td><td>the name of the notation</td></tr></tbody></table></div><h3><a name="reference" id="reference"></a>Function: reference</h3><pre class="programlisting">void	reference	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The name of the entity</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>notationName</tt></i>:</span></td><td>the name of the notation</td></tr></tbody></table></div><h3><a name="reference" id="reference"></a>Function: reference</h3><pre class="programlisting">void	reference			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>called when an entity <a href="libxml-SAX.html#reference">reference</a> is detected. DEPRECATED: use xmlSAX2Reference()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr></tbody></table></div><h3><a name="globalNamespace" id="globalNamespace"></a>Function: globalNamespace</h3><pre class="programlisting">void	globalNamespace	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr></tbody></table></div><h3><a name="globalNamespace" id="globalNamespace"></a>Function: globalNamespace</h3><pre class="programlisting">void	globalNamespace			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
 </pre><p>An old global namespace has been parsed. DEPRECATED</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td>the namespace associated URN</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the namespace prefix</td></tr></tbody></table></div><h3><a name="initxmlDefaultSAXHandler" id="initxmlDefaultSAXHandler"></a>Function: initxmlDefaultSAXHandler</h3><pre class="programlisting">void	initxmlDefaultSAXHandler	(<a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a> * hdlr, <br />				 int warning)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td>the namespace associated URN</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the namespace prefix</td></tr></tbody></table></div><h3><a name="initxmlDefaultSAXHandler" id="initxmlDefaultSAXHandler"></a>Function: initxmlDefaultSAXHandler</h3><pre class="programlisting">void	initxmlDefaultSAXHandler	(<a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a> * hdlr, <br />					 int warning)<br />
 </pre><p>Initialize the default XML SAX version 1 handler DEPRECATED: use xmlSAX2InitDefaultSAXHandler() for the new SAX2 blocks</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>hdlr</tt></i>:</span></td><td>the SAX handler</td></tr><tr><td><span class="term"><i><tt>warning</tt></i>:</span></td><td>flag if non-zero sets the handler warning procedure</td></tr></tbody></table></div><h3><a name="hasInternalSubset" id="hasInternalSubset"></a>Function: hasInternalSubset</h3><pre class="programlisting">int	hasInternalSubset	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>hdlr</tt></i>:</span></td><td>the SAX handler</td></tr><tr><td><span class="term"><i><tt>warning</tt></i>:</span></td><td>flag if non-zero sets the handler warning procedure</td></tr></tbody></table></div><h3><a name="hasInternalSubset" id="hasInternalSubset"></a>Function: hasInternalSubset</h3><pre class="programlisting">int	hasInternalSubset		(void * ctx)<br />
 </pre><p>Does this document has an internal subset DEPRECATED: use xmlSAX2HasInternalSubset()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><h3><a name="processingInstruction" id="processingInstruction"></a>Function: processingInstruction</h3><pre class="programlisting">void	processingInstruction	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><h3><a name="processingInstruction" id="processingInstruction"></a>Function: processingInstruction</h3><pre class="programlisting">void	processingInstruction		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data)<br />
 </pre><p>A processing instruction has been parsed. DEPRECATED: use xmlSAX2ProcessingInstruction()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>the target name</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the PI data's</td></tr></tbody></table></div><h3><a name="getParameterEntity" id="getParameterEntity"></a>Function: getParameterEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	getParameterEntity	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>the target name</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the PI data's</td></tr></tbody></table></div><h3><a name="getParameterEntity" id="getParameterEntity"></a>Function: getParameterEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	getParameterEntity	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Get a parameter entity by name DEPRECATED: use xmlSAX2GetParameterEntity()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> if found.</td></tr></tbody></table></div><h3><a name="attributeDecl" id="attributeDecl"></a>Function: attributeDecl</h3><pre class="programlisting">void	attributeDecl	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />				 int type, <br />				 int def, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * defaultValue, <br />				 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> if found.</td></tr></tbody></table></div><h3><a name="attributeDecl" id="attributeDecl"></a>Function: attributeDecl</h3><pre class="programlisting">void	attributeDecl			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />					 int type, <br />					 int def, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * defaultValue, <br />					 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)<br />
 </pre><p>An <a href="libxml-SAX.html#attribute">attribute</a> definition has been parsed DEPRECATED: use xmlSAX2AttributeDecl()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the name of the element</td></tr><tr><td><span class="term"><i><tt>fullname</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> type</td></tr><tr><td><span class="term"><i><tt>def</tt></i>:</span></td><td>the type of default value</td></tr><tr><td><span class="term"><i><tt>defaultValue</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> default value</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>the tree of enumerated value set</td></tr></tbody></table></div><h3><a name="notationDecl" id="notationDecl"></a>Function: notationDecl</h3><pre class="programlisting">void	notationDecl	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the name of the element</td></tr><tr><td><span class="term"><i><tt>fullname</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> type</td></tr><tr><td><span class="term"><i><tt>def</tt></i>:</span></td><td>the type of default value</td></tr><tr><td><span class="term"><i><tt>defaultValue</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> default value</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>the tree of enumerated value set</td></tr></tbody></table></div><h3><a name="notationDecl" id="notationDecl"></a>Function: notationDecl</h3><pre class="programlisting">void	notationDecl			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)<br />
 </pre><p>What to do when a notation declaration has been parsed. DEPRECATED: use xmlSAX2NotationDecl()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The name of the notation</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr></tbody></table></div><h3><a name="entityDecl" id="entityDecl"></a>Function: entityDecl</h3><pre class="programlisting">void	entityDecl	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The name of the notation</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr></tbody></table></div><h3><a name="entityDecl" id="entityDecl"></a>Function: entityDecl</h3><pre class="programlisting">void	entityDecl			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p>An entity definition has been parsed DEPRECATED: use xmlSAX2EntityDecl()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the entity type</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the entity value (without processing).</td></tr></tbody></table></div><h3><a name="setNamespace" id="setNamespace"></a>Function: setNamespace</h3><pre class="programlisting">void	setNamespace	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the entity type</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the entity value (without processing).</td></tr></tbody></table></div><h3><a name="setNamespace" id="setNamespace"></a>Function: setNamespace</h3><pre class="programlisting">void	setNamespace			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Set the current element namespace. DEPRECATED</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the namespace prefix</td></tr></tbody></table></div><h3><a name="externalSubset" id="externalSubset"></a>Function: externalSubset</h3><pre class="programlisting">void	externalSubset	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the namespace prefix</td></tr></tbody></table></div><h3><a name="externalSubset" id="externalSubset"></a>Function: externalSubset</h3><pre class="programlisting">void	externalSubset			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
 </pre><p>Callback on external subset declaration. DEPRECATED: use xmlSAX2ExternalSubset()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the root element name</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the SYSTEM ID (e.g. filename or URL)</td></tr></tbody></table></div><h3><a name="resolveEntity" id="resolveEntity"></a>Function: resolveEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	resolveEntity	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the root element name</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the SYSTEM ID (e.g. filename or URL)</td></tr></tbody></table></div><h3><a name="resolveEntity" id="resolveEntity"></a>Function: resolveEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	resolveEntity	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)<br />
 </pre><p>The entity loader, to control the loading of external entities, the application can either: - override this resolveEntity() callback in the SAX block - or better use the xmlSetExternalEntityLoader() function to set up it's own entity resolution routine DEPRECATED: use xmlSAX2ResolveEntity()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> if inlined or NULL for DOM behaviour.</td></tr></tbody></table></div><h3><a name="getSystemId" id="getSystemId"></a>Function: getSystemId</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	getSystemId	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> if inlined or NULL for DOM behaviour.</td></tr></tbody></table></div><h3><a name="getSystemId" id="getSystemId"></a>Function: getSystemId</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	getSystemId		(void * ctx)<br />
 </pre><p>Provides the system ID, basically URL or filename e.g. http://www.sgmlsource.com/dtds/memo.dtd DEPRECATED: use xmlSAX2GetSystemId()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr></tbody></table></div><h3><a name="startDocument" id="startDocument"></a>Function: startDocument</h3><pre class="programlisting">void	startDocument	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr></tbody></table></div><h3><a name="startDocument" id="startDocument"></a>Function: startDocument</h3><pre class="programlisting">void	startDocument			(void * ctx)<br />
 </pre><p>called when the document start being processed. DEPRECATED: use xmlSAX2StartDocument()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr></tbody></table></div><h3><a name="internalSubset" id="internalSubset"></a>Function: internalSubset</h3><pre class="programlisting">void	internalSubset	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr></tbody></table></div><h3><a name="internalSubset" id="internalSubset"></a>Function: internalSubset</h3><pre class="programlisting">void	internalSubset			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
 </pre><p>Callback on internal subset declaration. DEPRECATED: use xmlSAX2InternalSubset()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the root element name</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the SYSTEM ID (e.g. filename or URL)</td></tr></tbody></table></div><h3><a name="endDocument" id="endDocument"></a>Function: endDocument</h3><pre class="programlisting">void	endDocument	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the root element name</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the SYSTEM ID (e.g. filename or URL)</td></tr></tbody></table></div><h3><a name="endDocument" id="endDocument"></a>Function: endDocument</h3><pre class="programlisting">void	endDocument			(void * ctx)<br />
 </pre><p>called when the document end has been detected. DEPRECATED: use xmlSAX2EndDocument()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr></tbody></table></div><h3><a name="getLineNumber" id="getLineNumber"></a>Function: getLineNumber</h3><pre class="programlisting">int	getLineNumber	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr></tbody></table></div><h3><a name="getLineNumber" id="getLineNumber"></a>Function: getLineNumber</h3><pre class="programlisting">int	getLineNumber			(void * ctx)<br />
 </pre><p>Provide the line number of the current parsing point. DEPRECATED: use xmlSAX2GetLineNumber()</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an int</td></tr></tbody></table></div></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-SAX2.html b/doc/html/libxml-SAX2.html
index ede7b22..31c8c9e 100644
--- a/doc/html/libxml-SAX2.html
+++ b/doc/html/libxml-SAX2.html
@@ -10,121 +10,121 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module SAX2 from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module SAX2 from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-SAX.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-SAX.html">SAX</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-c14n.html">c14n</a></th><td><a accesskey="n" href="libxml-c14n.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>those are the default SAX2 interfaces used by the library when building DOM tree. </p><h2>Table of Contents</h2><pre class="programlisting">int	<a href="#xmlSAX2CheckNamespace">xmlSAX2CheckNamespace</a>	(void * ctx, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2EndElementNs">xmlSAX2EndElementNs</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localname, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2Reference">xmlSAX2Reference</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#xmlSAX2GetNamespace">xmlSAX2GetNamespace</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2ElementDecl">xmlSAX2ElementDecl</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int type, <br />				 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2NamespaceDecl">xmlSAX2NamespaceDecl</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2AttributeDecl">xmlSAX2AttributeDecl</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />				 int type, <br />				 int def, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * defaultValue, <br />				 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2EntityDecl">xmlSAX2EntityDecl</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSAX2GetColumnNumber">xmlSAX2GetColumnNumber</a>	(void * ctx)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlSAX2GetEntity">xmlSAX2GetEntity</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2UnparsedEntityDecl">xmlSAX2UnparsedEntityDecl</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * notationName)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2InitDocbDefaultSAXHandler">xmlSAX2InitDocbDefaultSAXHandler</a>	(<a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> * hdlr)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSAXVersion">xmlSAXVersion</a>	(<a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> * hdlr, <br />				 int version)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2IgnorableWhitespace">xmlSAX2IgnorableWhitespace</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />				 int len)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2NotationDecl">xmlSAX2NotationDecl</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDefaultSAXHandlerInit">xmlDefaultSAXHandlerInit</a>	(void)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2StartDocument">xmlSAX2StartDocument</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2EndElement">xmlSAX2EndElement</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlSAX2ResolveEntity">xmlSAX2ResolveEntity</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2ExternalSubset">xmlSAX2ExternalSubset</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlSAX2GetPublicId">xmlSAX2GetPublicId</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2SetNamespace">xmlSAX2SetNamespace</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSAX2IsStandalone">xmlSAX2IsStandalone</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2EndDocument">xmlSAX2EndDocument</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2ProcessingInstruction">xmlSAX2ProcessingInstruction</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2InternalSubset">xmlSAX2InternalSubset</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2Characters">xmlSAX2Characters</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />				 int len)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2Comment">xmlSAX2Comment</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2StartElement">xmlSAX2StartElement</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** atts)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2SetDocumentLocator">xmlSAX2SetDocumentLocator</a>	(void * ctx, <br />				 <a href="libxml-tree.html#xmlSAXLocatorPtr">xmlSAXLocatorPtr</a> loc)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2CDataBlock">xmlSAX2CDataBlock</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 int len)<br />
-</pre><pre class="programlisting">void	<a href="#htmlDefaultSAXHandlerInit">htmlDefaultSAXHandlerInit</a>	(void)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSAX2HasExternalSubset">xmlSAX2HasExternalSubset</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2StartElementNs">xmlSAX2StartElementNs</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localname, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />				 int nb_namespaces, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** namespaces, <br />				 int nb_attributes, <br />				 int nb_defaulted, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** attributes)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2GlobalNamespace">xmlSAX2GlobalNamespace</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSAX2GetLineNumber">xmlSAX2GetLineNumber</a>	(void * ctx)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSAX2HasInternalSubset">xmlSAX2HasInternalSubset</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2InitHtmlDefaultSAXHandler">xmlSAX2InitHtmlDefaultSAXHandler</a>	(<a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> * hdlr)<br />
-</pre><pre class="programlisting">void	<a href="#docbDefaultSAXHandlerInit">docbDefaultSAXHandlerInit</a>	(void)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSAXDefaultVersion">xmlSAXDefaultVersion</a>	(int version)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSAX2InitDefaultSAXHandler">xmlSAX2InitDefaultSAXHandler</a>	(<a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> * hdlr, <br />				 int warning)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlSAX2GetParameterEntity">xmlSAX2GetParameterEntity</a>	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlSAX2GetSystemId">xmlSAX2GetSystemId</a>	(void * ctx)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlSAX2CheckNamespace" id="xmlSAX2CheckNamespace"></a>Function: xmlSAX2CheckNamespace</h3><pre class="programlisting">int	xmlSAX2CheckNamespace	(void * ctx, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)<br />
+    </style><title>Module SAX2 from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module SAX2 from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-SAX.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-SAX.html">SAX</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-c14n.html">c14n</a></th><td><a accesskey="n" href="libxml-c14n.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>those are the default SAX2 interfaces used by the library when building DOM tree. </p><h2>Table of Contents</h2><pre class="programlisting">void	<a href="#docbDefaultSAXHandlerInit">docbDefaultSAXHandlerInit</a>	(void)</pre>
+<pre class="programlisting">void	<a href="#htmlDefaultSAXHandlerInit">htmlDefaultSAXHandlerInit</a>	(void)</pre>
+<pre class="programlisting">void	<a href="#xmlDefaultSAXHandlerInit">xmlDefaultSAXHandlerInit</a>	(void)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2AttributeDecl">xmlSAX2AttributeDecl</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />					 int type, <br />					 int def, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * defaultValue, <br />					 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2CDataBlock">xmlSAX2CDataBlock</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int len)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2Characters">xmlSAX2Characters</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#xmlSAX2CheckNamespace">xmlSAX2CheckNamespace</a>		(void * ctx, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2Comment">xmlSAX2Comment</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2ElementDecl">xmlSAX2ElementDecl</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2EndDocument">xmlSAX2EndDocument</a>		(void * ctx)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2EndElement">xmlSAX2EndElement</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2EndElementNs">xmlSAX2EndElementNs</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2EntityDecl">xmlSAX2EntityDecl</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2ExternalSubset">xmlSAX2ExternalSubset</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)</pre>
+<pre class="programlisting">int	<a href="#xmlSAX2GetColumnNumber">xmlSAX2GetColumnNumber</a>		(void * ctx)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlSAX2GetEntity">xmlSAX2GetEntity</a>	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">int	<a href="#xmlSAX2GetLineNumber">xmlSAX2GetLineNumber</a>		(void * ctx)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#xmlSAX2GetNamespace">xmlSAX2GetNamespace</a>	(void * ctx)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlSAX2GetParameterEntity">xmlSAX2GetParameterEntity</a>	(void * ctx, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlSAX2GetPublicId">xmlSAX2GetPublicId</a>	(void * ctx)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlSAX2GetSystemId">xmlSAX2GetSystemId</a>	(void * ctx)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2GlobalNamespace">xmlSAX2GlobalNamespace</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)</pre>
+<pre class="programlisting">int	<a href="#xmlSAX2HasExternalSubset">xmlSAX2HasExternalSubset</a>	(void * ctx)</pre>
+<pre class="programlisting">int	<a href="#xmlSAX2HasInternalSubset">xmlSAX2HasInternalSubset</a>	(void * ctx)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2IgnorableWhitespace">xmlSAX2IgnorableWhitespace</a>	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />					 int len)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2InitDefaultSAXHandler">xmlSAX2InitDefaultSAXHandler</a>	(<a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> * hdlr, <br />					 int warning)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2InitDocbDefaultSAXHandler">xmlSAX2InitDocbDefaultSAXHandler</a>	(<a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> * hdlr)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2InitHtmlDefaultSAXHandler">xmlSAX2InitHtmlDefaultSAXHandler</a>	(<a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> * hdlr)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2InternalSubset">xmlSAX2InternalSubset</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)</pre>
+<pre class="programlisting">int	<a href="#xmlSAX2IsStandalone">xmlSAX2IsStandalone</a>		(void * ctx)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2NamespaceDecl">xmlSAX2NamespaceDecl</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2NotationDecl">xmlSAX2NotationDecl</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2ProcessingInstruction">xmlSAX2ProcessingInstruction</a>	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2Reference">xmlSAX2Reference</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlSAX2ResolveEntity">xmlSAX2ResolveEntity</a>	(void * ctx, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2SetDocumentLocator">xmlSAX2SetDocumentLocator</a>	(void * ctx, <br />					 <a href="libxml-tree.html#xmlSAXLocatorPtr">xmlSAXLocatorPtr</a> loc)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2SetNamespace">xmlSAX2SetNamespace</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2StartDocument">xmlSAX2StartDocument</a>		(void * ctx)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2StartElement">xmlSAX2StartElement</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** atts)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2StartElementNs">xmlSAX2StartElementNs</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />					 int nb_namespaces, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** namespaces, <br />					 int nb_attributes, <br />					 int nb_defaulted, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** attributes)</pre>
+<pre class="programlisting">void	<a href="#xmlSAX2UnparsedEntityDecl">xmlSAX2UnparsedEntityDecl</a>	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * notationName)</pre>
+<pre class="programlisting">int	<a href="#xmlSAXDefaultVersion">xmlSAXDefaultVersion</a>		(int version)</pre>
+<pre class="programlisting">int	<a href="#xmlSAXVersion">xmlSAXVersion</a>			(<a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> * hdlr, <br />					 int version)</pre>
+<h2>Description</h2>
+<h3><a name="xmlSAX2CheckNamespace" id="xmlSAX2CheckNamespace"></a>Function: xmlSAX2CheckNamespace</h3><pre class="programlisting">int	xmlSAX2CheckNamespace		(void * ctx, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlSAX2EndElementNs" id="xmlSAX2EndElementNs"></a>Function: xmlSAX2EndElementNs</h3><pre class="programlisting">void	xmlSAX2EndElementNs	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localname, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlSAX2EndElementNs" id="xmlSAX2EndElementNs"></a>Function: xmlSAX2EndElementNs</h3><pre class="programlisting">void	xmlSAX2EndElementNs		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)<br />
 </pre><p>SAX2 callback when an element end has been detected by the parser. It provides the namespace informations for the element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>localname</tt></i>:</span></td><td>the local name of the element</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the element namespace prefix if available</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the element namespace name if available</td></tr></tbody></table></div><h3><a name="xmlSAX2Reference" id="xmlSAX2Reference"></a>Function: xmlSAX2Reference</h3><pre class="programlisting">void	xmlSAX2Reference	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>localname</tt></i>:</span></td><td>the local name of the element</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the element namespace prefix if available</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the element namespace name if available</td></tr></tbody></table></div><h3><a name="xmlSAX2Reference" id="xmlSAX2Reference"></a>Function: xmlSAX2Reference</h3><pre class="programlisting">void	xmlSAX2Reference		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>called when an entity <a href="libxml-SAX2.html#xmlSAX2Reference">xmlSAX2Reference</a> is detected.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr></tbody></table></div><h3><a name="xmlSAX2GetNamespace" id="xmlSAX2GetNamespace"></a>Function: xmlSAX2GetNamespace</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	xmlSAX2GetNamespace	(void * ctx)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlSAX2ElementDecl" id="xmlSAX2ElementDecl"></a>Function: xmlSAX2ElementDecl</h3><pre class="programlisting">void	xmlSAX2ElementDecl	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int type, <br />				 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlSAX2ElementDecl" id="xmlSAX2ElementDecl"></a>Function: xmlSAX2ElementDecl</h3><pre class="programlisting">void	xmlSAX2ElementDecl		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)<br />
 </pre><p>An element definition has been parsed</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the element type</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the element value tree</td></tr></tbody></table></div><h3><a name="xmlSAX2NamespaceDecl" id="xmlSAX2NamespaceDecl"></a>Function: xmlSAX2NamespaceDecl</h3><pre class="programlisting">void	xmlSAX2NamespaceDecl	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the element type</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the element value tree</td></tr></tbody></table></div><h3><a name="xmlSAX2NamespaceDecl" id="xmlSAX2NamespaceDecl"></a>Function: xmlSAX2NamespaceDecl</h3><pre class="programlisting">void	xmlSAX2NamespaceDecl		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlSAX2AttributeDecl" id="xmlSAX2AttributeDecl"></a>Function: xmlSAX2AttributeDecl</h3><pre class="programlisting">void	xmlSAX2AttributeDecl	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />				 int type, <br />				 int def, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * defaultValue, <br />				 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlSAX2AttributeDecl" id="xmlSAX2AttributeDecl"></a>Function: xmlSAX2AttributeDecl</h3><pre class="programlisting">void	xmlSAX2AttributeDecl		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />					 int type, <br />					 int def, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * defaultValue, <br />					 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)<br />
 </pre><p>An <a href="libxml-SAX.html#attribute">attribute</a> definition has been parsed</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the name of the element</td></tr><tr><td><span class="term"><i><tt>fullname</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> type</td></tr><tr><td><span class="term"><i><tt>def</tt></i>:</span></td><td>the type of default value</td></tr><tr><td><span class="term"><i><tt>defaultValue</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> default value</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>the tree of enumerated value set</td></tr></tbody></table></div><h3><a name="xmlSAX2EntityDecl" id="xmlSAX2EntityDecl"></a>Function: xmlSAX2EntityDecl</h3><pre class="programlisting">void	xmlSAX2EntityDecl	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the name of the element</td></tr><tr><td><span class="term"><i><tt>fullname</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> type</td></tr><tr><td><span class="term"><i><tt>def</tt></i>:</span></td><td>the type of default value</td></tr><tr><td><span class="term"><i><tt>defaultValue</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> default value</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>the tree of enumerated value set</td></tr></tbody></table></div><h3><a name="xmlSAX2EntityDecl" id="xmlSAX2EntityDecl"></a>Function: xmlSAX2EntityDecl</h3><pre class="programlisting">void	xmlSAX2EntityDecl		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p>An entity definition has been parsed</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the entity type</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the entity value (without processing).</td></tr></tbody></table></div><h3><a name="xmlSAX2GetColumnNumber" id="xmlSAX2GetColumnNumber"></a>Function: xmlSAX2GetColumnNumber</h3><pre class="programlisting">int	xmlSAX2GetColumnNumber	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the entity type</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the entity value (without processing).</td></tr></tbody></table></div><h3><a name="xmlSAX2GetColumnNumber" id="xmlSAX2GetColumnNumber"></a>Function: xmlSAX2GetColumnNumber</h3><pre class="programlisting">int	xmlSAX2GetColumnNumber		(void * ctx)<br />
 </pre><p>Provide the column number of the current parsing point.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an int</td></tr></tbody></table></div><h3><a name="xmlSAX2GetEntity" id="xmlSAX2GetEntity"></a>Function: xmlSAX2GetEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlSAX2GetEntity	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an int</td></tr></tbody></table></div><h3><a name="xmlSAX2GetEntity" id="xmlSAX2GetEntity"></a>Function: xmlSAX2GetEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlSAX2GetEntity	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Get an entity by name</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> if found.</td></tr></tbody></table></div><h3><a name="xmlSAX2UnparsedEntityDecl" id="xmlSAX2UnparsedEntityDecl"></a>Function: xmlSAX2UnparsedEntityDecl</h3><pre class="programlisting">void	xmlSAX2UnparsedEntityDecl	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * notationName)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> if found.</td></tr></tbody></table></div><h3><a name="xmlSAX2UnparsedEntityDecl" id="xmlSAX2UnparsedEntityDecl"></a>Function: xmlSAX2UnparsedEntityDecl</h3><pre class="programlisting">void	xmlSAX2UnparsedEntityDecl	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * notationName)<br />
 </pre><p>What to do when an unparsed entity declaration is parsed</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The name of the entity</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>notationName</tt></i>:</span></td><td>the name of the notation</td></tr></tbody></table></div><h3><a name="xmlSAX2InitDocbDefaultSAXHandler" id="xmlSAX2InitDocbDefaultSAXHandler"></a>Function: xmlSAX2InitDocbDefaultSAXHandler</h3><pre class="programlisting">void	xmlSAX2InitDocbDefaultSAXHandler	(<a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> * hdlr)<br />
 </pre><p>Initialize the default DocBook SAX2 handler</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>hdlr</tt></i>:</span></td><td>the SAX handler</td></tr></tbody></table></div><h3><a name="xmlSAXVersion" id="xmlSAXVersion"></a>Function: xmlSAXVersion</h3><pre class="programlisting">int	xmlSAXVersion	(<a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> * hdlr, <br />				 int version)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>hdlr</tt></i>:</span></td><td>the SAX handler</td></tr></tbody></table></div><h3><a name="xmlSAXVersion" id="xmlSAXVersion"></a>Function: xmlSAXVersion</h3><pre class="programlisting">int	xmlSAXVersion			(<a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> * hdlr, <br />					 int version)<br />
 </pre><p>Initialize the default XML SAX handler according to the version</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>hdlr</tt></i>:</span></td><td>the SAX handler</td></tr><tr><td><span class="term"><i><tt>version</tt></i>:</span></td><td>the version, 1 or 2</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlSAX2IgnorableWhitespace" id="xmlSAX2IgnorableWhitespace"></a>Function: xmlSAX2IgnorableWhitespace</h3><pre class="programlisting">void	xmlSAX2IgnorableWhitespace	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>hdlr</tt></i>:</span></td><td>the SAX handler</td></tr><tr><td><span class="term"><i><tt>version</tt></i>:</span></td><td>the version, 1 or 2</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlSAX2IgnorableWhitespace" id="xmlSAX2IgnorableWhitespace"></a>Function: xmlSAX2IgnorableWhitespace</h3><pre class="programlisting">void	xmlSAX2IgnorableWhitespace	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />					 int len)<br />
 </pre><p>receiving some ignorable whitespaces from the parser. UNUSED: by default the DOM building will use <a href="libxml-SAX2.html#xmlSAX2Characters">xmlSAX2Characters</a></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr></tbody></table></div><h3><a name="xmlSAX2NotationDecl" id="xmlSAX2NotationDecl"></a>Function: xmlSAX2NotationDecl</h3><pre class="programlisting">void	xmlSAX2NotationDecl	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr></tbody></table></div><h3><a name="xmlSAX2NotationDecl" id="xmlSAX2NotationDecl"></a>Function: xmlSAX2NotationDecl</h3><pre class="programlisting">void	xmlSAX2NotationDecl		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)<br />
 </pre><p>What to do when a notation declaration has been parsed.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The name of the notation</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr></tbody></table></div><h3><a name="xmlDefaultSAXHandlerInit" id="xmlDefaultSAXHandlerInit"></a>Function: xmlDefaultSAXHandlerInit</h3><pre class="programlisting">void	xmlDefaultSAXHandlerInit	(void)<br />
 </pre><p>Initialize the default SAX2 handler</p>
-<h3><a name="xmlSAX2StartDocument" id="xmlSAX2StartDocument"></a>Function: xmlSAX2StartDocument</h3><pre class="programlisting">void	xmlSAX2StartDocument	(void * ctx)<br />
+<h3><a name="xmlSAX2StartDocument" id="xmlSAX2StartDocument"></a>Function: xmlSAX2StartDocument</h3><pre class="programlisting">void	xmlSAX2StartDocument		(void * ctx)<br />
 </pre><p>called when the document start being processed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr></tbody></table></div><h3><a name="xmlSAX2EndElement" id="xmlSAX2EndElement"></a>Function: xmlSAX2EndElement</h3><pre class="programlisting">void	xmlSAX2EndElement	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr></tbody></table></div><h3><a name="xmlSAX2EndElement" id="xmlSAX2EndElement"></a>Function: xmlSAX2EndElement</h3><pre class="programlisting">void	xmlSAX2EndElement		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>called when the end of an element has been detected.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The element name</td></tr></tbody></table></div><h3><a name="xmlSAX2ResolveEntity" id="xmlSAX2ResolveEntity"></a>Function: xmlSAX2ResolveEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlSAX2ResolveEntity	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The element name</td></tr></tbody></table></div><h3><a name="xmlSAX2ResolveEntity" id="xmlSAX2ResolveEntity"></a>Function: xmlSAX2ResolveEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlSAX2ResolveEntity	(void * ctx, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)<br />
 </pre><p>The entity loader, to control the loading of external entities, the application can either: - override this xmlSAX2ResolveEntity() callback in the SAX block - or better use the xmlSetExternalEntityLoader() function to set up it's own entity resolution routine</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> if inlined or NULL for DOM behaviour.</td></tr></tbody></table></div><h3><a name="xmlSAX2ExternalSubset" id="xmlSAX2ExternalSubset"></a>Function: xmlSAX2ExternalSubset</h3><pre class="programlisting">void	xmlSAX2ExternalSubset	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> if inlined or NULL for DOM behaviour.</td></tr></tbody></table></div><h3><a name="xmlSAX2ExternalSubset" id="xmlSAX2ExternalSubset"></a>Function: xmlSAX2ExternalSubset</h3><pre class="programlisting">void	xmlSAX2ExternalSubset		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
 </pre><p>Callback on external subset declaration.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the root element name</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the SYSTEM ID (e.g. filename or URL)</td></tr></tbody></table></div><h3><a name="xmlSAX2GetPublicId" id="xmlSAX2GetPublicId"></a>Function: xmlSAX2GetPublicId</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlSAX2GetPublicId	(void * ctx)<br />
 </pre><p>Provides the public ID e.g. &quot;-//SGMLSOURCE//DTD DEMO//EN&quot;</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr></tbody></table></div><h3><a name="xmlSAX2SetNamespace" id="xmlSAX2SetNamespace"></a>Function: xmlSAX2SetNamespace</h3><pre class="programlisting">void	xmlSAX2SetNamespace	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr></tbody></table></div><h3><a name="xmlSAX2SetNamespace" id="xmlSAX2SetNamespace"></a>Function: xmlSAX2SetNamespace</h3><pre class="programlisting">void	xmlSAX2SetNamespace		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlSAX2IsStandalone" id="xmlSAX2IsStandalone"></a>Function: xmlSAX2IsStandalone</h3><pre class="programlisting">int	xmlSAX2IsStandalone	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlSAX2IsStandalone" id="xmlSAX2IsStandalone"></a>Function: xmlSAX2IsStandalone</h3><pre class="programlisting">int	xmlSAX2IsStandalone		(void * ctx)<br />
 </pre><p>Is this document tagged standalone ?</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><h3><a name="xmlSAX2EndDocument" id="xmlSAX2EndDocument"></a>Function: xmlSAX2EndDocument</h3><pre class="programlisting">void	xmlSAX2EndDocument	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><h3><a name="xmlSAX2EndDocument" id="xmlSAX2EndDocument"></a>Function: xmlSAX2EndDocument</h3><pre class="programlisting">void	xmlSAX2EndDocument		(void * ctx)<br />
 </pre><p>called when the document end has been detected.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr></tbody></table></div><h3><a name="xmlSAX2ProcessingInstruction" id="xmlSAX2ProcessingInstruction"></a>Function: xmlSAX2ProcessingInstruction</h3><pre class="programlisting">void	xmlSAX2ProcessingInstruction	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr></tbody></table></div><h3><a name="xmlSAX2ProcessingInstruction" id="xmlSAX2ProcessingInstruction"></a>Function: xmlSAX2ProcessingInstruction</h3><pre class="programlisting">void	xmlSAX2ProcessingInstruction	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data)<br />
 </pre><p>A processing instruction has been parsed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>the target name</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the PI data's</td></tr></tbody></table></div><h3><a name="xmlSAX2InternalSubset" id="xmlSAX2InternalSubset"></a>Function: xmlSAX2InternalSubset</h3><pre class="programlisting">void	xmlSAX2InternalSubset	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>the target name</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the PI data's</td></tr></tbody></table></div><h3><a name="xmlSAX2InternalSubset" id="xmlSAX2InternalSubset"></a>Function: xmlSAX2InternalSubset</h3><pre class="programlisting">void	xmlSAX2InternalSubset		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
 </pre><p>Callback on internal subset declaration.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the root element name</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the SYSTEM ID (e.g. filename or URL)</td></tr></tbody></table></div><h3><a name="xmlSAX2Characters" id="xmlSAX2Characters"></a>Function: xmlSAX2Characters</h3><pre class="programlisting">void	xmlSAX2Characters	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the root element name</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the SYSTEM ID (e.g. filename or URL)</td></tr></tbody></table></div><h3><a name="xmlSAX2Characters" id="xmlSAX2Characters"></a>Function: xmlSAX2Characters</h3><pre class="programlisting">void	xmlSAX2Characters		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />					 int len)<br />
 </pre><p>receiving some chars from the parser.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr></tbody></table></div><h3><a name="xmlSAX2Comment" id="xmlSAX2Comment"></a>Function: xmlSAX2Comment</h3><pre class="programlisting">void	xmlSAX2Comment	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr></tbody></table></div><h3><a name="xmlSAX2Comment" id="xmlSAX2Comment"></a>Function: xmlSAX2Comment</h3><pre class="programlisting">void	xmlSAX2Comment			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
 </pre><p>A <a href="libxml-SAX2.html#xmlSAX2Comment">xmlSAX2Comment</a> has been parsed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX2.html#xmlSAX2Comment">xmlSAX2Comment</a> content</td></tr></tbody></table></div><h3><a name="xmlSAX2StartElement" id="xmlSAX2StartElement"></a>Function: xmlSAX2StartElement</h3><pre class="programlisting">void	xmlSAX2StartElement	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** atts)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX2.html#xmlSAX2Comment">xmlSAX2Comment</a> content</td></tr></tbody></table></div><h3><a name="xmlSAX2StartElement" id="xmlSAX2StartElement"></a>Function: xmlSAX2StartElement</h3><pre class="programlisting">void	xmlSAX2StartElement		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** atts)<br />
 </pre><p>called when an opening tag has been processed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>fullname</tt></i>:</span></td><td>The element name, including namespace prefix</td></tr><tr><td><span class="term"><i><tt>atts</tt></i>:</span></td><td>An array of name/value attributes pairs, NULL terminated</td></tr></tbody></table></div><h3><a name="xmlSAX2SetDocumentLocator" id="xmlSAX2SetDocumentLocator"></a>Function: xmlSAX2SetDocumentLocator</h3><pre class="programlisting">void	xmlSAX2SetDocumentLocator	(void * ctx, <br />				 <a href="libxml-tree.html#xmlSAXLocatorPtr">xmlSAXLocatorPtr</a> loc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>fullname</tt></i>:</span></td><td>The element name, including namespace prefix</td></tr><tr><td><span class="term"><i><tt>atts</tt></i>:</span></td><td>An array of name/value attributes pairs, NULL terminated</td></tr></tbody></table></div><h3><a name="xmlSAX2SetDocumentLocator" id="xmlSAX2SetDocumentLocator"></a>Function: xmlSAX2SetDocumentLocator</h3><pre class="programlisting">void	xmlSAX2SetDocumentLocator	(void * ctx, <br />					 <a href="libxml-tree.html#xmlSAXLocatorPtr">xmlSAXLocatorPtr</a> loc)<br />
 </pre><p>Receive the document locator at startup, actually <a href="libxml-globals.html#xmlDefaultSAXLocator">xmlDefaultSAXLocator</a> Everything is available on the context, so this is useless in our case.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>loc</tt></i>:</span></td><td>A SAX Locator</td></tr></tbody></table></div><h3><a name="xmlSAX2CDataBlock" id="xmlSAX2CDataBlock"></a>Function: xmlSAX2CDataBlock</h3><pre class="programlisting">void	xmlSAX2CDataBlock	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>loc</tt></i>:</span></td><td>A SAX Locator</td></tr></tbody></table></div><h3><a name="xmlSAX2CDataBlock" id="xmlSAX2CDataBlock"></a>Function: xmlSAX2CDataBlock</h3><pre class="programlisting">void	xmlSAX2CDataBlock		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int len)<br />
 </pre><p>called when a pcdata block has been parsed</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>The pcdata content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the block length</td></tr></tbody></table></div><h3><a name="htmlDefaultSAXHandlerInit" id="htmlDefaultSAXHandlerInit"></a>Function: htmlDefaultSAXHandlerInit</h3><pre class="programlisting">void	htmlDefaultSAXHandlerInit	(void)<br />
 </pre><p>Initialize the default SAX handler</p>
 <h3><a name="xmlSAX2HasExternalSubset" id="xmlSAX2HasExternalSubset"></a>Function: xmlSAX2HasExternalSubset</h3><pre class="programlisting">int	xmlSAX2HasExternalSubset	(void * ctx)<br />
 </pre><p>Does this document has an external subset</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><h3><a name="xmlSAX2StartElementNs" id="xmlSAX2StartElementNs"></a>Function: xmlSAX2StartElementNs</h3><pre class="programlisting">void	xmlSAX2StartElementNs	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localname, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />				 int nb_namespaces, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** namespaces, <br />				 int nb_attributes, <br />				 int nb_defaulted, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** attributes)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><h3><a name="xmlSAX2StartElementNs" id="xmlSAX2StartElementNs"></a>Function: xmlSAX2StartElementNs</h3><pre class="programlisting">void	xmlSAX2StartElementNs		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />					 int nb_namespaces, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** namespaces, <br />					 int nb_attributes, <br />					 int nb_defaulted, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** attributes)<br />
 </pre><p>SAX2 callback when an element start has been detected by the parser. It provides the namespace informations for the element, as well as the new namespace declarations on the element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>localname</tt></i>:</span></td><td>the local name of the element</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the element namespace prefix if available</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the element namespace name if available</td></tr><tr><td><span class="term"><i><tt>nb_namespaces</tt></i>:</span></td><td>number of namespace definitions on that node</td></tr><tr><td><span class="term"><i><tt>namespaces</tt></i>:</span></td><td>pointer to the array of prefix/URI pairs namespace definitions</td></tr><tr><td><span class="term"><i><tt>nb_attributes</tt></i>:</span></td><td>the number of attributes on that node</td></tr><tr><td><span class="term"><i><tt>nb_defaulted</tt></i>:</span></td><td>the number of defaulted attributes.</td></tr><tr><td><span class="term"><i><tt>attributes</tt></i>:</span></td><td>pointer to the array of (localname/prefix/URI/value/end) <a href="libxml-SAX.html#attribute">attribute</a> values.</td></tr></tbody></table></div><h3><a name="xmlSAX2GlobalNamespace" id="xmlSAX2GlobalNamespace"></a>Function: xmlSAX2GlobalNamespace</h3><pre class="programlisting">void	xmlSAX2GlobalNamespace	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>localname</tt></i>:</span></td><td>the local name of the element</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the element namespace prefix if available</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the element namespace name if available</td></tr><tr><td><span class="term"><i><tt>nb_namespaces</tt></i>:</span></td><td>number of namespace definitions on that node</td></tr><tr><td><span class="term"><i><tt>namespaces</tt></i>:</span></td><td>pointer to the array of prefix/URI pairs namespace definitions</td></tr><tr><td><span class="term"><i><tt>nb_attributes</tt></i>:</span></td><td>the number of attributes on that node</td></tr><tr><td><span class="term"><i><tt>nb_defaulted</tt></i>:</span></td><td>the number of defaulted attributes.</td></tr><tr><td><span class="term"><i><tt>attributes</tt></i>:</span></td><td>pointer to the array of (localname/prefix/URI/value/end) <a href="libxml-SAX.html#attribute">attribute</a> values.</td></tr></tbody></table></div><h3><a name="xmlSAX2GlobalNamespace" id="xmlSAX2GlobalNamespace"></a>Function: xmlSAX2GlobalNamespace</h3><pre class="programlisting">void	xmlSAX2GlobalNamespace		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlSAX2GetLineNumber" id="xmlSAX2GetLineNumber"></a>Function: xmlSAX2GetLineNumber</h3><pre class="programlisting">int	xmlSAX2GetLineNumber	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlSAX2GetLineNumber" id="xmlSAX2GetLineNumber"></a>Function: xmlSAX2GetLineNumber</h3><pre class="programlisting">int	xmlSAX2GetLineNumber		(void * ctx)<br />
 </pre><p>Provide the line number of the current parsing point.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an int</td></tr></tbody></table></div><h3><a name="xmlSAX2HasInternalSubset" id="xmlSAX2HasInternalSubset"></a>Function: xmlSAX2HasInternalSubset</h3><pre class="programlisting">int	xmlSAX2HasInternalSubset	(void * ctx)<br />
 </pre><p>Does this document has an internal subset</p>
@@ -132,11 +132,11 @@
 </pre><p>Initialize the default HTML SAX2 handler</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>hdlr</tt></i>:</span></td><td>the SAX handler</td></tr></tbody></table></div><h3><a name="docbDefaultSAXHandlerInit" id="docbDefaultSAXHandlerInit"></a>Function: docbDefaultSAXHandlerInit</h3><pre class="programlisting">void	docbDefaultSAXHandlerInit	(void)<br />
 </pre><p>Initialize the default SAX handler</p>
-<h3><a name="xmlSAXDefaultVersion" id="xmlSAXDefaultVersion"></a>Function: xmlSAXDefaultVersion</h3><pre class="programlisting">int	xmlSAXDefaultVersion	(int version)<br />
+<h3><a name="xmlSAXDefaultVersion" id="xmlSAXDefaultVersion"></a>Function: xmlSAXDefaultVersion</h3><pre class="programlisting">int	xmlSAXDefaultVersion		(int version)<br />
 </pre><p>Set the default version of SAX used globally by the library. Note that this may not be a good thing to do from a library it is better to use xmlSAXVersion() to set up specifically the version for a given parsing context.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>version</tt></i>:</span></td><td>the version, 1 or 2</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the previous value in case of success and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlSAX2InitDefaultSAXHandler" id="xmlSAX2InitDefaultSAXHandler"></a>Function: xmlSAX2InitDefaultSAXHandler</h3><pre class="programlisting">void	xmlSAX2InitDefaultSAXHandler	(<a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> * hdlr, <br />				 int warning)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>version</tt></i>:</span></td><td>the version, 1 or 2</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the previous value in case of success and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlSAX2InitDefaultSAXHandler" id="xmlSAX2InitDefaultSAXHandler"></a>Function: xmlSAX2InitDefaultSAXHandler</h3><pre class="programlisting">void	xmlSAX2InitDefaultSAXHandler	(<a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> * hdlr, <br />					 int warning)<br />
 </pre><p>Initialize the default XML SAX2 handler</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>hdlr</tt></i>:</span></td><td>the SAX handler</td></tr><tr><td><span class="term"><i><tt>warning</tt></i>:</span></td><td>flag if non-zero sets the handler warning procedure</td></tr></tbody></table></div><h3><a name="xmlSAX2GetParameterEntity" id="xmlSAX2GetParameterEntity"></a>Function: xmlSAX2GetParameterEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlSAX2GetParameterEntity	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>hdlr</tt></i>:</span></td><td>the SAX handler</td></tr><tr><td><span class="term"><i><tt>warning</tt></i>:</span></td><td>flag if non-zero sets the handler warning procedure</td></tr></tbody></table></div><h3><a name="xmlSAX2GetParameterEntity" id="xmlSAX2GetParameterEntity"></a>Function: xmlSAX2GetParameterEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlSAX2GetParameterEntity	(void * ctx, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Get a parameter entity by name</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> if found.</td></tr></tbody></table></div><h3><a name="xmlSAX2GetSystemId" id="xmlSAX2GetSystemId"></a>Function: xmlSAX2GetSystemId</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlSAX2GetSystemId	(void * ctx)<br />
 </pre><p>Provides the system ID, basically URL or filename e.g. http://www.sgmlsource.com/dtds/memo.dtd</p>
diff --git a/doc/html/libxml-c14n.html b/doc/html/libxml-c14n.html
index ccc44a1..f4223d1 100644
--- a/doc/html/libxml-c14n.html
+++ b/doc/html/libxml-c14n.html
@@ -10,26 +10,23 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module c14n from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module c14n from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-SAX2.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-SAX2.html">SAX2</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-catalog.html">catalog</a></th><td><a accesskey="n" href="libxml-catalog.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>the c14n modules provides a  &quot;Canonical XML&quot; implementation</p><h2>Table of Contents</h2><pre class="programlisting">int	<a href="#xmlC14NExecute">xmlC14NExecute</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-c14n.html#xmlC14NIsVisibleCallback">xmlC14NIsVisibleCallback</a> is_visible_callback, <br />				 void * user_data, <br />				 int exclusive, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />				 int with_comments, <br />				 <a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf)<br />
-</pre><pre class="programlisting">int	<a href="#xmlC14NDocSaveTo">xmlC14NDocSaveTo</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />				 int exclusive, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />				 int with_comments, <br />				 <a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf)<br />
-</pre><pre class="programlisting"><a name="xmlC14NIsVisibleCallback" id="xmlC14NIsVisibleCallback"></a>Function type: xmlC14NIsVisibleCallback
-int	xmlC14NIsVisibleCallback	(void * user_data, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent)
+    </style><title>Module c14n from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module c14n from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-SAX2.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-SAX2.html">SAX2</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-catalog.html">catalog</a></th><td><a accesskey="n" href="libxml-catalog.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>the c14n modules provides a  &quot;Canonical XML&quot; implementation</p><h2>Table of Contents</h2><pre class="programlisting">int	<a href="#xmlC14NDocDumpMemory">xmlC14NDocDumpMemory</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />					 int exclusive, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />					 int with_comments, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** doc_txt_ptr)</pre>
+<pre class="programlisting">int	<a href="#xmlC14NDocSave">xmlC14NDocSave</a>			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />					 int exclusive, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />					 int with_comments, <br />					 const char * filename, <br />					 int compression)</pre>
+<pre class="programlisting">int	<a href="#xmlC14NDocSaveTo">xmlC14NDocSaveTo</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />					 int exclusive, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />					 int with_comments, <br />					 <a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf)</pre>
+<pre class="programlisting">int	<a href="#xmlC14NExecute">xmlC14NExecute</a>			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-c14n.html#xmlC14NIsVisibleCallback">xmlC14NIsVisibleCallback</a> is_visible_callback, <br />					 void * user_data, <br />					 int exclusive, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />					 int with_comments, <br />					 <a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf)</pre>
+<pre class="programlisting">Function type: <a href="#xmlC14NIsVisibleCallback">xmlC14NIsVisibleCallback</a>
+int	<a href="#xmlC14NIsVisibleCallback">xmlC14NIsVisibleCallback</a>	(void * user_data, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent)
+</pre>
+<h2>Description</h2>
+<h3><a name="xmlC14NExecute" id="xmlC14NExecute"></a>Function: xmlC14NExecute</h3><pre class="programlisting">int	xmlC14NExecute			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-c14n.html#xmlC14NIsVisibleCallback">xmlC14NIsVisibleCallback</a> is_visible_callback, <br />					 void * user_data, <br />					 int exclusive, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />					 int with_comments, <br />					 <a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf)<br />
+</pre><p>Dumps the canonized image of given XML document into the provided buffer. For details see &quot;Canonical XML&quot; (http://www.w3.org/TR/xml-c14n) or &quot;Exclusive XML Canonicalization&quot; (http://www.w3.org/TR/xml-exc-c14n)</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the XML document for canonization</td></tr><tr><td><span class="term"><i><tt>is_visible_callback</tt></i>:</span></td><td>the function to use to determine is node visible or not</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>the first parameter for @is_visible_callback function (in most cases, it is nodes set)</td></tr><tr><td><span class="term"><i><tt>exclusive</tt></i>:</span></td><td>the exclusive flag (0 - non-exclusive canonicalization; otherwise - exclusive canonicalization)</td></tr><tr><td><span class="term"><i><tt>inclusive_ns_prefixes</tt></i>:</span></td><td>the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise)</td></tr><tr><td><span class="term"><i><tt>with_comments</tt></i>:</span></td><td>include comments in the result (!=0) or not (==0)</td></tr><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the output buffer to store canonical XML; this buffer MUST have encoder==NULL because C14N requires UTF-8 output</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>non-negative value on success or a negative value on fail</td></tr></tbody></table></div><h3><a name="xmlC14NDocSaveTo" id="xmlC14NDocSaveTo"></a>Function: xmlC14NDocSaveTo</h3><pre class="programlisting">int	xmlC14NDocSaveTo		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />					 int exclusive, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />					 int with_comments, <br />					 <a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf)<br />
+</pre><p>Dumps the canonized image of given XML document into the provided buffer. For details see &quot;Canonical XML&quot; (http://www.w3.org/TR/xml-c14n) or &quot;Exclusive XML Canonicalization&quot; (http://www.w3.org/TR/xml-exc-c14n)</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the XML document for canonization</td></tr><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>the nodes set to be included in the canonized image or NULL if all document nodes should be included</td></tr><tr><td><span class="term"><i><tt>exclusive</tt></i>:</span></td><td>the exclusive flag (0 - non-exclusive canonicalization; otherwise - exclusive canonicalization)</td></tr><tr><td><span class="term"><i><tt>inclusive_ns_prefixes</tt></i>:</span></td><td>the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise)</td></tr><tr><td><span class="term"><i><tt>with_comments</tt></i>:</span></td><td>include comments in the result (!=0) or not (==0)</td></tr><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the output buffer to store canonical XML; this buffer MUST have encoder==NULL because C14N requires UTF-8 output</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>non-negative value on success or a negative value on fail</td></tr></tbody></table></div><h3><a name="xmlC14NIsVisibleCallback" id="xmlC14NIsVisibleCallback"></a>Function type: xmlC14NIsVisibleCallback</h3><pre class="programlisting">Function type: xmlC14NIsVisibleCallback
+int	xmlC14NIsVisibleCallback	(void * user_data, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent)
 </pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlC14NDocSave">xmlC14NDocSave</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />				 int exclusive, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />				 int with_comments, <br />				 const char * filename, <br />				 int compression)<br />
-</pre><pre class="programlisting">int	<a href="#xmlC14NDocDumpMemory">xmlC14NDocDumpMemory</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />				 int exclusive, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />				 int with_comments, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** doc_txt_ptr)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlC14NExecute" id="xmlC14NExecute"></a>Function: xmlC14NExecute</h3><pre class="programlisting">int	xmlC14NExecute	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-c14n.html#xmlC14NIsVisibleCallback">xmlC14NIsVisibleCallback</a> is_visible_callback, <br />				 void * user_data, <br />				 int exclusive, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />				 int with_comments, <br />				 <a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf)<br />
-</pre><p>Dumps the canonized image of given XML document into the provided buffer. For details see &quot;Canonical XML&quot; (http://www.w3.org/TR/xml-c14n) or &quot;Exclusive XML Canonicalization&quot; (http://www.w3.org/TR/xml-exc-c14n)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the XML document for canonization</td></tr><tr><td><span class="term"><i><tt>is_visible_callback</tt></i>:</span></td><td>the function to use to determine is node visible or not</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>the first parameter for @is_visible_callback function (in most cases, it is nodes set)</td></tr><tr><td><span class="term"><i><tt>exclusive</tt></i>:</span></td><td>the exclusive flag (0 - non-exclusive canonicalization; otherwise - exclusive canonicalization)</td></tr><tr><td><span class="term"><i><tt>inclusive_ns_prefixes</tt></i>:</span></td><td>the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise)</td></tr><tr><td><span class="term"><i><tt>with_comments</tt></i>:</span></td><td>include comments in the result (!=0) or not (==0)</td></tr><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the output buffer to store canonical XML; this buffer MUST have encoder==NULL because C14N requires UTF-8 output</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>non-negative value on success or a negative value on fail</td></tr></tbody></table></div><h3><a name="xmlC14NDocSaveTo" id="xmlC14NDocSaveTo"></a>Function: xmlC14NDocSaveTo</h3><pre class="programlisting">int	xmlC14NDocSaveTo	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />				 int exclusive, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />				 int with_comments, <br />				 <a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf)<br />
-</pre><p>Dumps the canonized image of given XML document into the provided buffer. For details see &quot;Canonical XML&quot; (http://www.w3.org/TR/xml-c14n) or &quot;Exclusive XML Canonicalization&quot; (http://www.w3.org/TR/xml-exc-c14n)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the XML document for canonization</td></tr><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>the nodes set to be included in the canonized image or NULL if all document nodes should be included</td></tr><tr><td><span class="term"><i><tt>exclusive</tt></i>:</span></td><td>the exclusive flag (0 - non-exclusive canonicalization; otherwise - exclusive canonicalization)</td></tr><tr><td><span class="term"><i><tt>inclusive_ns_prefixes</tt></i>:</span></td><td>the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise)</td></tr><tr><td><span class="term"><i><tt>with_comments</tt></i>:</span></td><td>include comments in the result (!=0) or not (==0)</td></tr><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the output buffer to store canonical XML; this buffer MUST have encoder==NULL because C14N requires UTF-8 output</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>non-negative value on success or a negative value on fail</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-    <h3><a name="xmlC14NDocSave" id="xmlC14NDocSave"></a>Function: xmlC14NDocSave</h3><pre class="programlisting">int	xmlC14NDocSave	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />				 int exclusive, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />				 int with_comments, <br />				 const char * filename, <br />				 int compression)<br />
+<h3><a name="xmlC14NDocSave" id="xmlC14NDocSave"></a>Function: xmlC14NDocSave</h3><pre class="programlisting">int	xmlC14NDocSave			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />					 int exclusive, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />					 int with_comments, <br />					 const char * filename, <br />					 int compression)<br />
 </pre><p>Dumps the canonized image of given XML document into the file. For details see &quot;Canonical XML&quot; (http://www.w3.org/TR/xml-c14n) or &quot;Exclusive XML Canonicalization&quot; (http://www.w3.org/TR/xml-exc-c14n)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the XML document for canonization</td></tr><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>the nodes set to be included in the canonized image or NULL if all document nodes should be included</td></tr><tr><td><span class="term"><i><tt>exclusive</tt></i>:</span></td><td>the exclusive flag (0 - non-exclusive canonicalization; otherwise - exclusive canonicalization)</td></tr><tr><td><span class="term"><i><tt>inclusive_ns_prefixes</tt></i>:</span></td><td>the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise)</td></tr><tr><td><span class="term"><i><tt>with_comments</tt></i>:</span></td><td>include comments in the result (!=0) or not (==0)</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename to store canonical XML image</td></tr><tr><td><span class="term"><i><tt>compression</tt></i>:</span></td><td>the compression level (zlib requred): -1 - libxml default, 0 - uncompressed, &gt;0 - compression level</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written success or a negative value on fail</td></tr></tbody></table></div><h3><a name="xmlC14NDocDumpMemory" id="xmlC14NDocDumpMemory"></a>Function: xmlC14NDocDumpMemory</h3><pre class="programlisting">int	xmlC14NDocDumpMemory	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />				 int exclusive, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />				 int with_comments, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** doc_txt_ptr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the XML document for canonization</td></tr><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>the nodes set to be included in the canonized image or NULL if all document nodes should be included</td></tr><tr><td><span class="term"><i><tt>exclusive</tt></i>:</span></td><td>the exclusive flag (0 - non-exclusive canonicalization; otherwise - exclusive canonicalization)</td></tr><tr><td><span class="term"><i><tt>inclusive_ns_prefixes</tt></i>:</span></td><td>the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise)</td></tr><tr><td><span class="term"><i><tt>with_comments</tt></i>:</span></td><td>include comments in the result (!=0) or not (==0)</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename to store canonical XML image</td></tr><tr><td><span class="term"><i><tt>compression</tt></i>:</span></td><td>the compression level (zlib requred): -1 - libxml default, 0 - uncompressed, &gt;0 - compression level</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written success or a negative value on fail</td></tr></tbody></table></div><h3><a name="xmlC14NDocDumpMemory" id="xmlC14NDocDumpMemory"></a>Function: xmlC14NDocDumpMemory</h3><pre class="programlisting">int	xmlC14NDocDumpMemory		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />					 int exclusive, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** inclusive_ns_prefixes, <br />					 int with_comments, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** doc_txt_ptr)<br />
 </pre><p>Dumps the canonized image of given XML document into memory. For details see &quot;Canonical XML&quot; (http://www.w3.org/TR/xml-c14n) or &quot;Exclusive XML Canonicalization&quot; (http://www.w3.org/TR/xml-exc-c14n)</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the XML document for canonization</td></tr><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>the nodes set to be included in the canonized image or NULL if all document nodes should be included</td></tr><tr><td><span class="term"><i><tt>exclusive</tt></i>:</span></td><td>the exclusive flag (0 - non-exclusive canonicalization; otherwise - exclusive canonicalization)</td></tr><tr><td><span class="term"><i><tt>inclusive_ns_prefixes</tt></i>:</span></td><td>the list of inclusive namespace prefixes ended with a NULL or NULL if there is no inclusive namespaces (only for exclusive canonicalization, ignored otherwise)</td></tr><tr><td><span class="term"><i><tt>with_comments</tt></i>:</span></td><td>include comments in the result (!=0) or not (==0)</td></tr><tr><td><span class="term"><i><tt>doc_txt_ptr</tt></i>:</span></td><td>the memory pointer for allocated canonical XML text; the caller of this functions is responsible for calling xmlFree() to free allocated memory</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written on success or a negative value on fail</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-catalog.html b/doc/html/libxml-catalog.html
index 362e672..e23cd81 100644
--- a/doc/html/libxml-catalog.html
+++ b/doc/html/libxml-catalog.html
@@ -10,136 +10,133 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module catalog from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module catalog from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-c14n.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-c14n.html">c14n</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-chvalid.html">chvalid</a></th><td><a accesskey="n" href="libxml-chvalid.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>the catalog module implements the support for XML Catalogs and SGML catalogs </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#XML_CATALOGS_NAMESPACE">XML_CATALOGS_NAMESPACE</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogLocalResolve">xmlCatalogLocalResolve</a>	(void * catalogs, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
-</pre><pre class="programlisting">int	<a href="#xmlACatalogAdd">xmlACatalogAdd</a>	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * orig, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * replace)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogResolvePublic">xmlCatalogResolvePublic</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID)<br />
-</pre><pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogAllow">xmlCatalogAllow</a>	<a href="#xmlCatalogGetDefaults">xmlCatalogGetDefaults</a>	(void)<br />
-</pre><pre class="programlisting">int	<a href="#xmlCatalogAdd">xmlCatalogAdd</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * orig, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * replace)<br />
-</pre><pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogPrefer">xmlCatalogPrefer</a>	<a href="#xmlCatalogSetDefaultPrefer">xmlCatalogSetDefaultPrefer</a>	(<a href="libxml-catalog.html#xmlCatalogPrefer">xmlCatalogPrefer</a> prefer)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlParseCatalogFile">xmlParseCatalogFile</a>	(const char * filename)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlACatalogResolveURI">xmlACatalogResolveURI</a>	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)<br />
-</pre><pre class="programlisting">int	<a href="#xmlACatalogRemove">xmlACatalogRemove</a>	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">void	<a href="#xmlLoadCatalogs">xmlLoadCatalogs</a>	(const char * pathss)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogGetSystem">xmlCatalogGetSystem</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
-</pre><pre class="programlisting">void	<a href="#xmlInitializeCatalog">xmlInitializeCatalog</a>	(void)<br />
-</pre><pre class="programlisting">int	<a href="#xmlLoadCatalog">xmlLoadCatalog</a>	(const char * filename)<br />
-</pre><pre class="programlisting">#define <a href="#XML_CATALOG_PI">XML_CATALOG_PI</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlCatalogIsEmpty">xmlCatalogIsEmpty</a>	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal)<br />
-</pre><pre class="programlisting">void	<a href="#xmlACatalogDump">xmlACatalogDump</a>	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />				 FILE * out)<br />
+    </style><title>Module catalog from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module catalog from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-c14n.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-c14n.html">c14n</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-chvalid.html">chvalid</a></th><td><a accesskey="n" href="libxml-chvalid.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>the catalog module implements the support for XML Catalogs and SGML catalogs </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#XML_CATALOGS_NAMESPACE">XML_CATALOGS_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#XML_CATALOG_PI">XML_CATALOG_PI</a></pre><pre class="programlisting">Structure <a href="#xmlCatalog">xmlCatalog</a><br />struct _xmlCatalog
+The content of this structure is not made public by the API.
+</pre><pre class="programlisting">Enum <a href="#xmlCatalogAllow">xmlCatalogAllow</a>
+</pre><pre class="programlisting">Enum <a href="#xmlCatalogPrefer">xmlCatalogPrefer</a>
 </pre><pre class="programlisting">Typedef <a href="libxml-catalog.html#xmlCatalog">xmlCatalog</a> * <a name="xmlCatalogPtr" id="xmlCatalogPtr">xmlCatalogPtr</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlCatalogFreeLocal">xmlCatalogFreeLocal</a>	(void * catalogs)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlACatalogResolve">xmlACatalogResolve</a>	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogResolveSystem">xmlCatalogResolveSystem</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
-</pre><pre class="programlisting">Enum <a name="xmlCatalogPrefer" id="xmlCatalogPrefer">xmlCatalogPrefer</a> {
-    <a name="XML_CATA_PREFER_NONE" id="XML_CATA_PREFER_NONE">XML_CATA_PREFER_NONE</a> = 0
-    <a name="XML_CATA_PREFER_PUBLIC" id="XML_CATA_PREFER_PUBLIC">XML_CATA_PREFER_PUBLIC</a> = 1
-    <a name="XML_CATA_PREFER_SYSTEM" id="XML_CATA_PREFER_SYSTEM">XML_CATA_PREFER_SYSTEM</a> = 2
-}
-
-</pre><pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a>	<a href="#xmlLoadSGMLSuperCatalog">xmlLoadSGMLSuperCatalog</a>	(const char * filename)<br />
-</pre><pre class="programlisting">int	<a href="#xmlCatalogConvert">xmlCatalogConvert</a>	(void)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogGetPublic">xmlCatalogGetPublic</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID)<br />
-</pre><pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a>	<a href="#xmlLoadACatalog">xmlLoadACatalog</a>	(const char * filename)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlACatalogResolveSystem">xmlACatalogResolveSystem</a>	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogLocalResolveURI">xmlCatalogLocalResolveURI</a>	(void * catalogs, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)<br />
-</pre><pre class="programlisting">int	<a href="#xmlConvertSGMLCatalog">xmlConvertSGMLCatalog</a>	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlACatalogResolvePublic">xmlACatalogResolvePublic</a>	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlCatalogAddLocal">xmlCatalogAddLocal</a>	(void * catalogs, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL)<br />
-</pre><pre class="programlisting">int	<a href="#xmlCatalogRemove">xmlCatalogRemove</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeCatalog">xmlFreeCatalog</a>	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal)<br />
-</pre><pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a>	<a href="#xmlNewCatalog">xmlNewCatalog</a>	(int sgml)<br />
-</pre><pre class="programlisting">Enum <a name="xmlCatalogAllow" id="xmlCatalogAllow">xmlCatalogAllow</a> {
+</pre><pre class="programlisting">int	<a href="#xmlACatalogAdd">xmlACatalogAdd</a>			(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * orig, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * replace)</pre>
+<pre class="programlisting">void	<a href="#xmlACatalogDump">xmlACatalogDump</a>			(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />					 FILE * out)</pre>
+<pre class="programlisting">int	<a href="#xmlACatalogRemove">xmlACatalogRemove</a>		(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlACatalogResolve">xmlACatalogResolve</a>	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlACatalogResolvePublic">xmlACatalogResolvePublic</a>	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlACatalogResolveSystem">xmlACatalogResolveSystem</a>	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlACatalogResolveURI">xmlACatalogResolveURI</a>	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)</pre>
+<pre class="programlisting">int	<a href="#xmlCatalogAdd">xmlCatalogAdd</a>			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * orig, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * replace)</pre>
+<pre class="programlisting">void *	<a href="#xmlCatalogAddLocal">xmlCatalogAddLocal</a>		(void * catalogs, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL)</pre>
+<pre class="programlisting">void	<a href="#xmlCatalogCleanup">xmlCatalogCleanup</a>		(void)</pre>
+<pre class="programlisting">int	<a href="#xmlCatalogConvert">xmlCatalogConvert</a>		(void)</pre>
+<pre class="programlisting">void	<a href="#xmlCatalogDump">xmlCatalogDump</a>			(FILE * out)</pre>
+<pre class="programlisting">void	<a href="#xmlCatalogFreeLocal">xmlCatalogFreeLocal</a>		(void * catalogs)</pre>
+<pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogAllow">xmlCatalogAllow</a>	<a href="#xmlCatalogGetDefaults">xmlCatalogGetDefaults</a>	(void)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogGetPublic">xmlCatalogGetPublic</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogGetSystem">xmlCatalogGetSystem</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)</pre>
+<pre class="programlisting">int	<a href="#xmlCatalogIsEmpty">xmlCatalogIsEmpty</a>		(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogLocalResolve">xmlCatalogLocalResolve</a>	(void * catalogs, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogLocalResolveURI">xmlCatalogLocalResolveURI</a>	(void * catalogs, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)</pre>
+<pre class="programlisting">int	<a href="#xmlCatalogRemove">xmlCatalogRemove</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogResolve">xmlCatalogResolve</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogResolvePublic">xmlCatalogResolvePublic</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogResolveSystem">xmlCatalogResolveSystem</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogResolveURI">xmlCatalogResolveURI</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)</pre>
+<pre class="programlisting">int	<a href="#xmlCatalogSetDebug">xmlCatalogSetDebug</a>		(int level)</pre>
+<pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogPrefer">xmlCatalogPrefer</a>	<a href="#xmlCatalogSetDefaultPrefer">xmlCatalogSetDefaultPrefer</a>	(<a href="libxml-catalog.html#xmlCatalogPrefer">xmlCatalogPrefer</a> prefer)</pre>
+<pre class="programlisting">void	<a href="#xmlCatalogSetDefaults">xmlCatalogSetDefaults</a>		(<a href="libxml-catalog.html#xmlCatalogAllow">xmlCatalogAllow</a> allow)</pre>
+<pre class="programlisting">int	<a href="#xmlConvertSGMLCatalog">xmlConvertSGMLCatalog</a>		(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeCatalog">xmlFreeCatalog</a>			(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal)</pre>
+<pre class="programlisting">void	<a href="#xmlInitializeCatalog">xmlInitializeCatalog</a>		(void)</pre>
+<pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a>	<a href="#xmlLoadACatalog">xmlLoadACatalog</a>		(const char * filename)</pre>
+<pre class="programlisting">int	<a href="#xmlLoadCatalog">xmlLoadCatalog</a>			(const char * filename)</pre>
+<pre class="programlisting">void	<a href="#xmlLoadCatalogs">xmlLoadCatalogs</a>			(const char * pathss)</pre>
+<pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a>	<a href="#xmlLoadSGMLSuperCatalog">xmlLoadSGMLSuperCatalog</a>	(const char * filename)</pre>
+<pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a>	<a href="#xmlNewCatalog">xmlNewCatalog</a>		(int sgml)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlParseCatalogFile">xmlParseCatalogFile</a>	(const char * filename)</pre>
+<h2>Description</h2>
+<h3><a name="XML_CATALOG_PI" id="XML_CATALOG_PI"></a>Macro: XML_CATALOG_PI</h3><pre>#define XML_CATALOG_PI</pre><p>The specific XML Catalog Processing Instuction name.</p>
+<h3><a name="XML_CATALOGS_NAMESPACE" id="XML_CATALOGS_NAMESPACE"></a>Macro: XML_CATALOGS_NAMESPACE</h3><pre>#define XML_CATALOGS_NAMESPACE</pre><p>The namespace for the XML Catalogs elements.</p>
+<h3><a name="xmlCatalogAllow" id="xmlCatalogAllow">xmlCatalogAllow</a></h3><pre class="programlisting">Enum xmlCatalogAllow {
     <a name="XML_CATA_ALLOW_NONE" id="XML_CATA_ALLOW_NONE">XML_CATA_ALLOW_NONE</a> = 0
     <a name="XML_CATA_ALLOW_GLOBAL" id="XML_CATA_ALLOW_GLOBAL">XML_CATA_ALLOW_GLOBAL</a> = 1
     <a name="XML_CATA_ALLOW_DOCUMENT" id="XML_CATA_ALLOW_DOCUMENT">XML_CATA_ALLOW_DOCUMENT</a> = 2
     <a name="XML_CATA_ALLOW_ALL" id="XML_CATA_ALLOW_ALL">XML_CATA_ALLOW_ALL</a> = 3
 }
-
-</pre><pre class="programlisting">int	<a href="#xmlCatalogSetDebug">xmlCatalogSetDebug</a>	(int level)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogResolve">xmlCatalogResolve</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
-</pre><pre class="programlisting">Structure <a name="xmlCatalog" id="xmlCatalog">xmlCatalog</a><br />struct _xmlCatalog {
+</pre><h3><a name="xmlCatalogPrefer" id="xmlCatalogPrefer">xmlCatalogPrefer</a></h3><pre class="programlisting">Enum xmlCatalogPrefer {
+    <a name="XML_CATA_PREFER_NONE" id="XML_CATA_PREFER_NONE">XML_CATA_PREFER_NONE</a> = 0
+    <a name="XML_CATA_PREFER_PUBLIC" id="XML_CATA_PREFER_PUBLIC">XML_CATA_PREFER_PUBLIC</a> = 1
+    <a name="XML_CATA_PREFER_SYSTEM" id="XML_CATA_PREFER_SYSTEM">XML_CATA_PREFER_SYSTEM</a> = 2
+}
+</pre><h3><a name="xmlCatalog" id="xmlCatalog">Structure xmlCatalog</a></h3><pre class="programlisting">Structure xmlCatalog<br />struct _xmlCatalog {
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">void	<a href="#xmlCatalogSetDefaults">xmlCatalogSetDefaults</a>	(<a href="libxml-catalog.html#xmlCatalogAllow">xmlCatalogAllow</a> allow)<br />
-</pre><pre class="programlisting">void	<a href="#xmlCatalogDump">xmlCatalogDump</a>	(FILE * out)<br />
-</pre><pre class="programlisting">void	<a href="#xmlCatalogCleanup">xmlCatalogCleanup</a>	(void)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCatalogResolveURI">xmlCatalogResolveURI</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)<br />
-</pre><h2>Description</h2>
-<h3><a name="XML_CATALOGS_NAMESPACE" id="XML_CATALOGS_NAMESPACE"></a>Macro: XML_CATALOGS_NAMESPACE</h3><pre>#define XML_CATALOGS_NAMESPACE</pre><p>The namespace for the XML Catalogs elements.</p>
-<h3><a name="xmlCatalogLocalResolve" id="xmlCatalogLocalResolve"></a>Function: xmlCatalogLocalResolve</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogLocalResolve	(void * catalogs, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
-</pre><p>Do a complete resolution lookup of an External Identifier using a document's private catalog list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catalogs</tt></i>:</span></td><td>a document's list of catalogs</td></tr><tr><td><span class="term"><i><tt>pubID</tt></i>:</span></td><td>the public ID string</td></tr><tr><td><span class="term"><i><tt>sysID</tt></i>:</span></td><td>the system ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the URI of the resource or NULL if not found, it must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlACatalogAdd" id="xmlACatalogAdd"></a>Function: xmlACatalogAdd</h3><pre class="programlisting">int	xmlACatalogAdd	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * orig, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * replace)<br />
-</pre><p>Add an entry in the catalog, it may overwrite existing but different entries.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the type of record to add to the catalog</td></tr><tr><td><span class="term"><i><tt>orig</tt></i>:</span></td><td>the system, public or prefix to match</td></tr><tr><td><span class="term"><i><tt>replace</tt></i>:</span></td><td>the replacement value for the match</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if successful, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlCatalogResolvePublic" id="xmlCatalogResolvePublic"></a>Function: xmlCatalogResolvePublic</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogResolvePublic	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID)<br />
-</pre><p>Try to lookup the system ID associated to a public ID</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>pubID</tt></i>:</span></td><td>the public ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the system ID if found or NULL otherwise, the value returned must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlCatalogGetDefaults" id="xmlCatalogGetDefaults"></a>Function: xmlCatalogGetDefaults</h3><pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogAllow">xmlCatalogAllow</a>	xmlCatalogGetDefaults	(void)<br />
-</pre><p>Used to get the user preference w.r.t. to what catalogs should be accepted</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current <a href="libxml-catalog.html#xmlCatalogAllow">xmlCatalogAllow</a> value</td></tr></tbody></table></div><h3><a name="xmlCatalogAdd" id="xmlCatalogAdd"></a>Function: xmlCatalogAdd</h3><pre class="programlisting">int	xmlCatalogAdd	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * orig, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * replace)<br />
-</pre><p>Add an entry in the catalog, it may overwrite existing but different entries. If called before any other catalog routine, allows to override the default shared catalog put in place by xmlInitializeCatalog();</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the type of record to add to the catalog</td></tr><tr><td><span class="term"><i><tt>orig</tt></i>:</span></td><td>the system, public or prefix to match</td></tr><tr><td><span class="term"><i><tt>replace</tt></i>:</span></td><td>the replacement value for the match</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if successful, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlCatalogSetDefaultPrefer" id="xmlCatalogSetDefaultPrefer"></a>Function: xmlCatalogSetDefaultPrefer</h3><pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogPrefer">xmlCatalogPrefer</a>	xmlCatalogSetDefaultPrefer	(<a href="libxml-catalog.html#xmlCatalogPrefer">xmlCatalogPrefer</a> prefer)<br />
-</pre><p>Allows to set the preference between public and system for deletion in XML Catalog resolution. C.f. section 4.1.1 of the spec Values accepted are <a href="libxml-catalog.html#XML_CATA_PREFER_PUBLIC">XML_CATA_PREFER_PUBLIC</a> or <a href="libxml-catalog.html#XML_CATA_PREFER_SYSTEM">XML_CATA_PREFER_SYSTEM</a></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>prefer</tt></i>:</span></td><td>the default preference for delegation</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the previous value of the default preference for delegation</td></tr></tbody></table></div><h3><a name="xmlParseCatalogFile" id="xmlParseCatalogFile"></a>Function: xmlParseCatalogFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlParseCatalogFile	(const char * filename)<br />
-</pre><p>parse an XML file and build a tree. It's like xmlParseFile() except it bypass all catalog lookups.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlACatalogResolveURI" id="xmlACatalogResolveURI"></a>Function: xmlACatalogResolveURI</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlACatalogResolveURI	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)<br />
-</pre><p>Do a complete resolution lookup of an URI</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the URI of the resource or NULL if not found, it must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlACatalogRemove" id="xmlACatalogRemove"></a>Function: xmlACatalogRemove</h3><pre class="programlisting">int	xmlACatalogRemove	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><p>Remove an entry from the catalog</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to remove</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of entries removed if successful, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlLoadCatalogs" id="xmlLoadCatalogs"></a>Function: xmlLoadCatalogs</h3><pre class="programlisting">void	xmlLoadCatalogs	(const char * pathss)<br />
+}</pre><h3><a name="xmlCatalogConvert" id="xmlCatalogConvert"></a>Function: xmlCatalogConvert</h3><pre class="programlisting">int	xmlCatalogConvert		(void)<br />
+</pre><p>Convert all the SGML catalog entries as XML ones</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of entries converted if successful, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlFreeCatalog" id="xmlFreeCatalog"></a>Function: xmlFreeCatalog</h3><pre class="programlisting">void	xmlFreeCatalog			(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal)<br />
+</pre><p>Free the memory allocated to a Catalog</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog entry</td></tr></tbody></table></div><h3><a name="xmlLoadCatalogs" id="xmlLoadCatalogs"></a>Function: xmlLoadCatalogs</h3><pre class="programlisting">void	xmlLoadCatalogs			(const char * pathss)<br />
 </pre><p>Load the catalogs and makes their definitions effective for the default external entity loader. this function is not thread safe, catalog initialization should preferably be done once at startup</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>pathss</tt></i>:</span></td><td>a list of directories separated by a colon or a space.</td></tr></tbody></table></div><h3><a name="xmlCatalogGetSystem" id="xmlCatalogGetSystem"></a>Function: xmlCatalogGetSystem</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogGetSystem	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
-</pre><p>Try to lookup the system ID associated to a public ID DEPRECATED, use xmlCatalogResolveSystem()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sysID</tt></i>:</span></td><td>the system ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the system ID if found or NULL otherwise.</td></tr></tbody></table></div><h3><a name="xmlInitializeCatalog" id="xmlInitializeCatalog"></a>Function: xmlInitializeCatalog</h3><pre class="programlisting">void	xmlInitializeCatalog	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>pathss</tt></i>:</span></td><td>a list of directories separated by a colon or a space.</td></tr></tbody></table></div><h3><a name="xmlCatalogLocalResolve" id="xmlCatalogLocalResolve"></a>Function: xmlCatalogLocalResolve</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogLocalResolve	(void * catalogs, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
+</pre><p>Do a complete resolution lookup of an External Identifier using a document's private catalog list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catalogs</tt></i>:</span></td><td>a document's list of catalogs</td></tr><tr><td><span class="term"><i><tt>pubID</tt></i>:</span></td><td>the public ID string</td></tr><tr><td><span class="term"><i><tt>sysID</tt></i>:</span></td><td>the system ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the URI of the resource or NULL if not found, it must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlACatalogAdd" id="xmlACatalogAdd"></a>Function: xmlACatalogAdd</h3><pre class="programlisting">int	xmlACatalogAdd			(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * orig, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * replace)<br />
+</pre><p>Add an entry in the catalog, it may overwrite existing but different entries.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the type of record to add to the catalog</td></tr><tr><td><span class="term"><i><tt>orig</tt></i>:</span></td><td>the system, public or prefix to match</td></tr><tr><td><span class="term"><i><tt>replace</tt></i>:</span></td><td>the replacement value for the match</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if successful, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlACatalogResolvePublic" id="xmlACatalogResolvePublic"></a>Function: xmlACatalogResolvePublic</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlACatalogResolvePublic	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID)<br />
+</pre><p>Try to lookup the system ID associated to a public ID in that catalog</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog</td></tr><tr><td><span class="term"><i><tt>pubID</tt></i>:</span></td><td>the public ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the system ID if found or NULL otherwise, the value returned must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlCatalogGetDefaults" id="xmlCatalogGetDefaults"></a>Function: xmlCatalogGetDefaults</h3><pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogAllow">xmlCatalogAllow</a>	xmlCatalogGetDefaults	(void)<br />
+</pre><p>Used to get the user preference w.r.t. to what catalogs should be accepted</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current <a href="libxml-catalog.html#xmlCatalogAllow">xmlCatalogAllow</a> value</td></tr></tbody></table></div><h3><a name="xmlInitializeCatalog" id="xmlInitializeCatalog"></a>Function: xmlInitializeCatalog</h3><pre class="programlisting">void	xmlInitializeCatalog		(void)<br />
 </pre><p>Do the catalog initialization. this function is not thread safe, catalog initialization should preferably be done once at startup</p>
-<h3><a name="xmlLoadCatalog" id="xmlLoadCatalog"></a>Function: xmlLoadCatalog</h3><pre class="programlisting">int	xmlLoadCatalog	(const char * filename)<br />
-</pre><p>Load the catalog and makes its definitions effective for the default external entity loader. It will recurse in SGML CATALOG entries. this function is not thread safe, catalog initialization should preferably be done once at startup</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file path</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success -1 in case of error</td></tr></tbody></table></div><h3><a name="XML_CATALOG_PI" id="XML_CATALOG_PI"></a>Macro: XML_CATALOG_PI</h3><pre>#define XML_CATALOG_PI</pre><p>The specific XML Catalog Processing Instuction name.</p>
-<h3><a name="xmlCatalogIsEmpty" id="xmlCatalogIsEmpty"></a>Function: xmlCatalogIsEmpty</h3><pre class="programlisting">int	xmlCatalogIsEmpty	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal)<br />
-</pre><p>Check is a catalog is empty</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>should this create an SGML catalog</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the catalog is empty, 0 if not, amd -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlACatalogDump" id="xmlACatalogDump"></a>Function: xmlACatalogDump</h3><pre class="programlisting">void	xmlACatalogDump	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />				 FILE * out)<br />
+<h3><a name="xmlLoadACatalog" id="xmlLoadACatalog"></a>Function: xmlLoadACatalog</h3><pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a>	xmlLoadACatalog		(const char * filename)<br />
+</pre><p>Load the catalog and build the associated data structures. This can be either an XML Catalog or an SGML Catalog It will recurse in SGML CATALOG entries. On the other hand XML Catalogs are not handled recursively.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file path</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the catalog parsed or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlCatalogAddLocal" id="xmlCatalogAddLocal"></a>Function: xmlCatalogAddLocal</h3><pre class="programlisting">void *	xmlCatalogAddLocal		(void * catalogs, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL)<br />
+</pre><p>Add the new entry to the catalog list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catalogs</tt></i>:</span></td><td>a document's list of catalogs</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the URL to a new local catalog</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the updated list</td></tr></tbody></table></div><h3><a name="xmlCatalogLocalResolveURI" id="xmlCatalogLocalResolveURI"></a>Function: xmlCatalogLocalResolveURI</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogLocalResolveURI	(void * catalogs, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)<br />
+</pre><p>Do a complete resolution lookup of an URI using a document's private catalog list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catalogs</tt></i>:</span></td><td>a document's list of catalogs</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the URI of the resource or NULL if not found, it must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlCatalogSetDefaultPrefer" id="xmlCatalogSetDefaultPrefer"></a>Function: xmlCatalogSetDefaultPrefer</h3><pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogPrefer">xmlCatalogPrefer</a>	xmlCatalogSetDefaultPrefer	(<a href="libxml-catalog.html#xmlCatalogPrefer">xmlCatalogPrefer</a> prefer)<br />
+</pre><p>Allows to set the preference between public and system for deletion in XML Catalog resolution. C.f. section 4.1.1 of the spec Values accepted are <a href="libxml-catalog.html#XML_CATA_PREFER_PUBLIC">XML_CATA_PREFER_PUBLIC</a> or <a href="libxml-catalog.html#XML_CATA_PREFER_SYSTEM">XML_CATA_PREFER_SYSTEM</a></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>prefer</tt></i>:</span></td><td>the default preference for delegation</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the previous value of the default preference for delegation</td></tr></tbody></table></div><h3><a name="xmlCatalogDump" id="xmlCatalogDump"></a>Function: xmlCatalogDump</h3><pre class="programlisting">void	xmlCatalogDump			(FILE * out)<br />
 </pre><p>Free up all the memory associated with catalogs</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog</td></tr><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>the file.</td></tr></tbody></table></div><h3><a name="xmlCatalogFreeLocal" id="xmlCatalogFreeLocal"></a>Function: xmlCatalogFreeLocal</h3><pre class="programlisting">void	xmlCatalogFreeLocal	(void * catalogs)<br />
-</pre><p>Free up the memory associated to the catalog list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catalogs</tt></i>:</span></td><td>a document's list of catalogs</td></tr></tbody></table></div><h3><a name="xmlACatalogResolve" id="xmlACatalogResolve"></a>Function: xmlACatalogResolve</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlACatalogResolve	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>the file.</td></tr></tbody></table></div><h3><a name="xmlACatalogResolveURI" id="xmlACatalogResolveURI"></a>Function: xmlACatalogResolveURI</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlACatalogResolveURI	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)<br />
+</pre><p>Do a complete resolution lookup of an URI</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the URI of the resource or NULL if not found, it must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlCatalogCleanup" id="xmlCatalogCleanup"></a>Function: xmlCatalogCleanup</h3><pre class="programlisting">void	xmlCatalogCleanup		(void)<br />
+</pre><p>Free up all the memory associated with catalogs</p>
+<h3><a name="xmlCatalogAdd" id="xmlCatalogAdd"></a>Function: xmlCatalogAdd</h3><pre class="programlisting">int	xmlCatalogAdd			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * orig, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * replace)<br />
+</pre><p>Add an entry in the catalog, it may overwrite existing but different entries. If called before any other catalog routine, allows to override the default shared catalog put in place by xmlInitializeCatalog();</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the type of record to add to the catalog</td></tr><tr><td><span class="term"><i><tt>orig</tt></i>:</span></td><td>the system, public or prefix to match</td></tr><tr><td><span class="term"><i><tt>replace</tt></i>:</span></td><td>the replacement value for the match</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if successful, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlConvertSGMLCatalog" id="xmlConvertSGMLCatalog"></a>Function: xmlConvertSGMLCatalog</h3><pre class="programlisting">int	xmlConvertSGMLCatalog		(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal)<br />
+</pre><p>Convert all the SGML catalog entries as XML ones</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>the catalog</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of entries converted if successful, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlCatalogResolvePublic" id="xmlCatalogResolvePublic"></a>Function: xmlCatalogResolvePublic</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogResolvePublic	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID)<br />
+</pre><p>Try to lookup the system ID associated to a public ID</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>pubID</tt></i>:</span></td><td>the public ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the system ID if found or NULL otherwise, the value returned must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlCatalogGetSystem" id="xmlCatalogGetSystem"></a>Function: xmlCatalogGetSystem</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogGetSystem	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
+</pre><p>Try to lookup the system ID associated to a public ID DEPRECATED, use xmlCatalogResolveSystem()</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sysID</tt></i>:</span></td><td>the system ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the system ID if found or NULL otherwise.</td></tr></tbody></table></div><h3><a name="xmlACatalogRemove" id="xmlACatalogRemove"></a>Function: xmlACatalogRemove</h3><pre class="programlisting">int	xmlACatalogRemove		(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+</pre><p>Remove an entry from the catalog</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to remove</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of entries removed if successful, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlNewCatalog" id="xmlNewCatalog"></a>Function: xmlNewCatalog</h3><pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a>	xmlNewCatalog		(int sgml)<br />
+</pre><p>create a new Catalog.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sgml</tt></i>:</span></td><td>should this create an SGML catalog</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlLoadCatalog" id="xmlLoadCatalog"></a>Function: xmlLoadCatalog</h3><pre class="programlisting">int	xmlLoadCatalog			(const char * filename)<br />
+</pre><p>Load the catalog and makes its definitions effective for the default external entity loader. It will recurse in SGML CATALOG entries. this function is not thread safe, catalog initialization should preferably be done once at startup</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file path</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlCatalogResolve" id="xmlCatalogResolve"></a>Function: xmlCatalogResolve</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogResolve	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
 </pre><p>Do a complete resolution lookup of an External Identifier</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog</td></tr><tr><td><span class="term"><i><tt>pubID</tt></i>:</span></td><td>the public ID string</td></tr><tr><td><span class="term"><i><tt>sysID</tt></i>:</span></td><td>the system ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the URI of the resource or NULL if not found, it must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlCatalogResolveSystem" id="xmlCatalogResolveSystem"></a>Function: xmlCatalogResolveSystem</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogResolveSystem	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>pubID</tt></i>:</span></td><td>the public ID string</td></tr><tr><td><span class="term"><i><tt>sysID</tt></i>:</span></td><td>the system ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the URI of the resource or NULL if not found, it must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlParseCatalogFile" id="xmlParseCatalogFile"></a>Function: xmlParseCatalogFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlParseCatalogFile	(const char * filename)<br />
+</pre><p>parse an XML file and build a tree. It's like xmlParseFile() except it bypass all catalog lookups.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlCatalogSetDebug" id="xmlCatalogSetDebug"></a>Function: xmlCatalogSetDebug</h3><pre class="programlisting">int	xmlCatalogSetDebug		(int level)<br />
+</pre><p>Used to set the debug level for catalog operation, 0 disable debugging, 1 enable it</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>level</tt></i>:</span></td><td>the debug level of catalogs required</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the previous value of the catalog debugging level</td></tr></tbody></table></div><h3><a name="xmlCatalogRemove" id="xmlCatalogRemove"></a>Function: xmlCatalogRemove</h3><pre class="programlisting">int	xmlCatalogRemove		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+</pre><p>Remove an entry from the catalog</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to remove</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of entries removed if successful, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlCatalogIsEmpty" id="xmlCatalogIsEmpty"></a>Function: xmlCatalogIsEmpty</h3><pre class="programlisting">int	xmlCatalogIsEmpty		(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal)<br />
+</pre><p>Check is a catalog is empty</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>should this create an SGML catalog</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the catalog is empty, 0 if not, amd -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlCatalogGetPublic" id="xmlCatalogGetPublic"></a>Function: xmlCatalogGetPublic</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogGetPublic	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID)<br />
+</pre><p>Try to lookup the system ID associated to a public ID DEPRECATED, use xmlCatalogResolvePublic()</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>pubID</tt></i>:</span></td><td>the public ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the system ID if found or NULL otherwise.</td></tr></tbody></table></div><h3><a name="xmlACatalogResolveSystem" id="xmlACatalogResolveSystem"></a>Function: xmlACatalogResolveSystem</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlACatalogResolveSystem	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
+</pre><p>Try to lookup the catalog resource for a system ID</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog</td></tr><tr><td><span class="term"><i><tt>sysID</tt></i>:</span></td><td>the public ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the system ID if found or NULL otherwise, the value returned must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlACatalogDump" id="xmlACatalogDump"></a>Function: xmlACatalogDump</h3><pre class="programlisting">void	xmlACatalogDump			(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />					 FILE * out)<br />
+</pre><p>Free up all the memory associated with catalogs</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog</td></tr><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>the file.</td></tr></tbody></table></div><h3><a name="xmlCatalogSetDefaults" id="xmlCatalogSetDefaults"></a>Function: xmlCatalogSetDefaults</h3><pre class="programlisting">void	xmlCatalogSetDefaults		(<a href="libxml-catalog.html#xmlCatalogAllow">xmlCatalogAllow</a> allow)<br />
+</pre><p>Used to set the user preference w.r.t. to what catalogs should be accepted</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>allow</tt></i>:</span></td><td>what catalogs should be accepted</td></tr></tbody></table></div><h3><a name="xmlCatalogFreeLocal" id="xmlCatalogFreeLocal"></a>Function: xmlCatalogFreeLocal</h3><pre class="programlisting">void	xmlCatalogFreeLocal		(void * catalogs)<br />
+</pre><p>Free up the memory associated to the catalog list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catalogs</tt></i>:</span></td><td>a document's list of catalogs</td></tr></tbody></table></div><h3><a name="xmlACatalogResolve" id="xmlACatalogResolve"></a>Function: xmlACatalogResolve</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlACatalogResolve	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
+</pre><p>Do a complete resolution lookup of an External Identifier</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog</td></tr><tr><td><span class="term"><i><tt>pubID</tt></i>:</span></td><td>the public ID string</td></tr><tr><td><span class="term"><i><tt>sysID</tt></i>:</span></td><td>the system ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the URI of the resource or NULL if not found, it must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlCatalogResolveURI" id="xmlCatalogResolveURI"></a>Function: xmlCatalogResolveURI</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogResolveURI	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)<br />
+</pre><p>Do a complete resolution lookup of an URI</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the URI of the resource or NULL if not found, it must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlCatalogResolveSystem" id="xmlCatalogResolveSystem"></a>Function: xmlCatalogResolveSystem</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogResolveSystem	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
 </pre><p>Try to lookup the catalog resource for a system ID</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sysID</tt></i>:</span></td><td>the public ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the system ID if found or NULL otherwise, the value returned must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlLoadSGMLSuperCatalog" id="xmlLoadSGMLSuperCatalog"></a>Function: xmlLoadSGMLSuperCatalog</h3><pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a>	xmlLoadSGMLSuperCatalog	(const char * filename)<br />
 </pre><p>Load an SGML super catalog. It won't expand CATALOG or DELEGATE references. This is only needed for manipulating SGML Super Catalogs like adding and removing CATALOG or DELEGATE entries.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file path</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the catalog parsed or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlCatalogConvert" id="xmlCatalogConvert"></a>Function: xmlCatalogConvert</h3><pre class="programlisting">int	xmlCatalogConvert	(void)<br />
-</pre><p>Convert all the SGML catalog entries as XML ones</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of entries converted if successful, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlCatalogGetPublic" id="xmlCatalogGetPublic"></a>Function: xmlCatalogGetPublic</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogGetPublic	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID)<br />
-</pre><p>Try to lookup the system ID associated to a public ID DEPRECATED, use xmlCatalogResolvePublic()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>pubID</tt></i>:</span></td><td>the public ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the system ID if found or NULL otherwise.</td></tr></tbody></table></div><h3><a name="xmlLoadACatalog" id="xmlLoadACatalog"></a>Function: xmlLoadACatalog</h3><pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a>	xmlLoadACatalog	(const char * filename)<br />
-</pre><p>Load the catalog and build the associated data structures. This can be either an XML Catalog or an SGML Catalog It will recurse in SGML CATALOG entries. On the other hand XML Catalogs are not handled recursively.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file path</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the catalog parsed or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlACatalogResolveSystem" id="xmlACatalogResolveSystem"></a>Function: xmlACatalogResolveSystem</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlACatalogResolveSystem	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
-</pre><p>Try to lookup the catalog resource for a system ID</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog</td></tr><tr><td><span class="term"><i><tt>sysID</tt></i>:</span></td><td>the public ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the system ID if found or NULL otherwise, the value returned must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlCatalogLocalResolveURI" id="xmlCatalogLocalResolveURI"></a>Function: xmlCatalogLocalResolveURI</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogLocalResolveURI	(void * catalogs, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)<br />
-</pre><p>Do a complete resolution lookup of an URI using a document's private catalog list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catalogs</tt></i>:</span></td><td>a document's list of catalogs</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the URI of the resource or NULL if not found, it must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlConvertSGMLCatalog" id="xmlConvertSGMLCatalog"></a>Function: xmlConvertSGMLCatalog</h3><pre class="programlisting">int	xmlConvertSGMLCatalog	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal)<br />
-</pre><p>Convert all the SGML catalog entries as XML ones</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>the catalog</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of entries converted if successful, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlACatalogResolvePublic" id="xmlACatalogResolvePublic"></a>Function: xmlACatalogResolvePublic</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlACatalogResolvePublic	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID)<br />
-</pre><p>Try to lookup the system ID associated to a public ID in that catalog</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog</td></tr><tr><td><span class="term"><i><tt>pubID</tt></i>:</span></td><td>the public ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the system ID if found or NULL otherwise, the value returned must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlCatalogAddLocal" id="xmlCatalogAddLocal"></a>Function: xmlCatalogAddLocal</h3><pre class="programlisting">void *	xmlCatalogAddLocal	(void * catalogs, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL)<br />
-</pre><p>Add the new entry to the catalog list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catalogs</tt></i>:</span></td><td>a document's list of catalogs</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the URL to a new local catalog</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the updated list</td></tr></tbody></table></div><h3><a name="xmlCatalogRemove" id="xmlCatalogRemove"></a>Function: xmlCatalogRemove</h3><pre class="programlisting">int	xmlCatalogRemove	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><p>Remove an entry from the catalog</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to remove</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of entries removed if successful, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlFreeCatalog" id="xmlFreeCatalog"></a>Function: xmlFreeCatalog</h3><pre class="programlisting">void	xmlFreeCatalog	(<a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> catal)<br />
-</pre><p>Free the memory allocated to a Catalog</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>catal</tt></i>:</span></td><td>a Catalog entry</td></tr></tbody></table></div><h3><a name="xmlNewCatalog" id="xmlNewCatalog"></a>Function: xmlNewCatalog</h3><pre class="programlisting"><a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a>	xmlNewCatalog	(int sgml)<br />
-</pre><p>create a new Catalog.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sgml</tt></i>:</span></td><td>should this create an SGML catalog</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-catalog.html#xmlCatalogPtr">xmlCatalogPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlCatalogSetDebug" id="xmlCatalogSetDebug"></a>Function: xmlCatalogSetDebug</h3><pre class="programlisting">int	xmlCatalogSetDebug	(int level)<br />
-</pre><p>Used to set the debug level for catalog operation, 0 disable debugging, 1 enable it</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>level</tt></i>:</span></td><td>the debug level of catalogs required</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the previous value of the catalog debugging level</td></tr></tbody></table></div><h3><a name="xmlCatalogResolve" id="xmlCatalogResolve"></a>Function: xmlCatalogResolve</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogResolve	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysID)<br />
-</pre><p>Do a complete resolution lookup of an External Identifier</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>pubID</tt></i>:</span></td><td>the public ID string</td></tr><tr><td><span class="term"><i><tt>sysID</tt></i>:</span></td><td>the system ID string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the URI of the resource or NULL if not found, it must be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlCatalogSetDefaults" id="xmlCatalogSetDefaults"></a>Function: xmlCatalogSetDefaults</h3><pre class="programlisting">void	xmlCatalogSetDefaults	(<a href="libxml-catalog.html#xmlCatalogAllow">xmlCatalogAllow</a> allow)<br />
-</pre><p>Used to set the user preference w.r.t. to what catalogs should be accepted</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>allow</tt></i>:</span></td><td>what catalogs should be accepted</td></tr></tbody></table></div><h3><a name="xmlCatalogDump" id="xmlCatalogDump"></a>Function: xmlCatalogDump</h3><pre class="programlisting">void	xmlCatalogDump	(FILE * out)<br />
-</pre><p>Free up all the memory associated with catalogs</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>the file.</td></tr></tbody></table></div><h3><a name="xmlCatalogCleanup" id="xmlCatalogCleanup"></a>Function: xmlCatalogCleanup</h3><pre class="programlisting">void	xmlCatalogCleanup	(void)<br />
-</pre><p>Free up all the memory associated with catalogs</p>
-<h3><a name="xmlCatalogResolveURI" id="xmlCatalogResolveURI"></a>Function: xmlCatalogResolveURI</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCatalogResolveURI	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)<br />
-</pre><p>Do a complete resolution lookup of an URI</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the URI of the resource or NULL if not found, it must be freed by the caller.</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file path</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the catalog parsed or NULL in case of error</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-chvalid.html b/doc/html/libxml-chvalid.html
index 273dfd9..89c1cbf 100644
--- a/doc/html/libxml-chvalid.html
+++ b/doc/html/libxml-chvalid.html
@@ -10,116 +10,63 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module chvalid from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module chvalid from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-catalog.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-catalog.html">catalog</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-debugXML.html">debugXML</a></th><td><a accesskey="n" href="libxml-debugXML.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this module exports interfaces for the character range validation APIs  This file is automatically generated from the cvs source definition files using the genChRanges.py Python script </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#xmlIsPubidChar_ch">xmlIsPubidChar_ch</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlIsBlank">xmlIsBlank</a>	(unsigned int ch)<br />
-</pre><pre class="programlisting">Structure <a name="xmlChLRange" id="xmlChLRange">xmlChLRange</a><br />struct _xmlChLRange {
+    </style><title>Module chvalid from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module chvalid from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-catalog.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-catalog.html">catalog</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-debugXML.html">debugXML</a></th><td><a accesskey="n" href="libxml-debugXML.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this module exports interfaces for the character range validation APIs  This file is automatically generated from the cvs source definition files using the genChRanges.py Python script </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#xmlIsBaseCharQ">xmlIsBaseCharQ</a></pre><pre class="programlisting">#define <a href="#xmlIsBaseChar_ch">xmlIsBaseChar_ch</a></pre><pre class="programlisting">#define <a href="#xmlIsBlankQ">xmlIsBlankQ</a></pre><pre class="programlisting">#define <a href="#xmlIsBlank_ch">xmlIsBlank_ch</a></pre><pre class="programlisting">#define <a href="#xmlIsCharQ">xmlIsCharQ</a></pre><pre class="programlisting">#define <a href="#xmlIsChar_ch">xmlIsChar_ch</a></pre><pre class="programlisting">#define <a href="#xmlIsCombiningQ">xmlIsCombiningQ</a></pre><pre class="programlisting">#define <a href="#xmlIsDigitQ">xmlIsDigitQ</a></pre><pre class="programlisting">#define <a href="#xmlIsDigit_ch">xmlIsDigit_ch</a></pre><pre class="programlisting">#define <a href="#xmlIsExtenderQ">xmlIsExtenderQ</a></pre><pre class="programlisting">#define <a href="#xmlIsExtender_ch">xmlIsExtender_ch</a></pre><pre class="programlisting">#define <a href="#xmlIsIdeographicQ">xmlIsIdeographicQ</a></pre><pre class="programlisting">#define <a href="#xmlIsPubidCharQ">xmlIsPubidCharQ</a></pre><pre class="programlisting">#define <a href="#xmlIsPubidChar_ch">xmlIsPubidChar_ch</a></pre><pre class="programlisting">Structure <a href="#xmlChLRange">xmlChLRange</a><br />struct _xmlChLRange
+</pre><pre class="programlisting">Typedef <a href="libxml-chvalid.html#xmlChLRange">xmlChLRange</a> * <a name="xmlChLRangePtr" id="xmlChLRangePtr">xmlChLRangePtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlChRangeGroup">xmlChRangeGroup</a><br />struct _xmlChRangeGroup
+</pre><pre class="programlisting">Typedef <a href="libxml-chvalid.html#xmlChRangeGroup">xmlChRangeGroup</a> * <a name="xmlChRangeGroupPtr" id="xmlChRangeGroupPtr">xmlChRangeGroupPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlChSRange">xmlChSRange</a><br />struct _xmlChSRange
+</pre><pre class="programlisting">Typedef <a href="libxml-chvalid.html#xmlChSRange">xmlChSRange</a> * <a name="xmlChSRangePtr" id="xmlChSRangePtr">xmlChSRangePtr</a>
+</pre><pre class="programlisting">int	<a href="#xmlCharInRange">xmlCharInRange</a>			(unsigned int val, <br />					 const <a href="libxml-chvalid.html#xmlChRangeGroupPtr">xmlChRangeGroupPtr</a> rptr)</pre>
+<pre class="programlisting">int	<a href="#xmlIsBaseChar">xmlIsBaseChar</a>			(unsigned int ch)</pre>
+<pre class="programlisting">int	<a href="#xmlIsBlank">xmlIsBlank</a>			(unsigned int ch)</pre>
+<pre class="programlisting">int	<a href="#xmlIsChar">xmlIsChar</a>			(unsigned int ch)</pre>
+<pre class="programlisting">int	<a href="#xmlIsCombining">xmlIsCombining</a>			(unsigned int ch)</pre>
+<pre class="programlisting">int	<a href="#xmlIsDigit">xmlIsDigit</a>			(unsigned int ch)</pre>
+<pre class="programlisting">int	<a href="#xmlIsExtender">xmlIsExtender</a>			(unsigned int ch)</pre>
+<pre class="programlisting">int	<a href="#xmlIsIdeographic">xmlIsIdeographic</a>		(unsigned int ch)</pre>
+<pre class="programlisting">int	<a href="#xmlIsPubidChar">xmlIsPubidChar</a>			(unsigned int ch)</pre>
+<h2>Description</h2>
+<h3><a name="xmlIsExtender_ch" id="xmlIsExtender_ch"></a>Macro: xmlIsExtender_ch</h3><pre>#define xmlIsExtender_ch</pre><p>Automatically generated by genChRanges.py</p>
+<h3><a name="xmlIsPubidCharQ" id="xmlIsPubidCharQ"></a>Macro: xmlIsPubidCharQ</h3><pre>#define xmlIsPubidCharQ</pre><p>Automatically generated by genChRanges.py</p>
+<h3><a name="xmlIsIdeographicQ" id="xmlIsIdeographicQ"></a>Macro: xmlIsIdeographicQ</h3><pre>#define xmlIsIdeographicQ</pre><p>Automatically generated by genChRanges.py</p>
+<h3><a name="xmlIsExtenderQ" id="xmlIsExtenderQ"></a>Macro: xmlIsExtenderQ</h3><pre>#define xmlIsExtenderQ</pre><p>Automatically generated by genChRanges.py</p>
+<h3><a name="xmlIsCombiningQ" id="xmlIsCombiningQ"></a>Macro: xmlIsCombiningQ</h3><pre>#define xmlIsCombiningQ</pre><p>Automatically generated by genChRanges.py</p>
+<h3><a name="xmlIsDigitQ" id="xmlIsDigitQ"></a>Macro: xmlIsDigitQ</h3><pre>#define xmlIsDigitQ</pre><p>Automatically generated by genChRanges.py</p>
+<h3><a name="xmlIsDigit_ch" id="xmlIsDigit_ch"></a>Macro: xmlIsDigit_ch</h3><pre>#define xmlIsDigit_ch</pre><p>Automatically generated by genChRanges.py</p>
+<h3><a name="xmlIsBaseChar_ch" id="xmlIsBaseChar_ch"></a>Macro: xmlIsBaseChar_ch</h3><pre>#define xmlIsBaseChar_ch</pre><p>Automatically generated by genChRanges.py</p>
+<h3><a name="xmlIsPubidChar_ch" id="xmlIsPubidChar_ch"></a>Macro: xmlIsPubidChar_ch</h3><pre>#define xmlIsPubidChar_ch</pre><p>Automatically generated by genChRanges.py</p>
+<h3><a name="xmlIsBlankQ" id="xmlIsBlankQ"></a>Macro: xmlIsBlankQ</h3><pre>#define xmlIsBlankQ</pre><p>Automatically generated by genChRanges.py</p>
+<h3><a name="xmlIsCharQ" id="xmlIsCharQ"></a>Macro: xmlIsCharQ</h3><pre>#define xmlIsCharQ</pre><p>Automatically generated by genChRanges.py</p>
+<h3><a name="xmlIsBaseCharQ" id="xmlIsBaseCharQ"></a>Macro: xmlIsBaseCharQ</h3><pre>#define xmlIsBaseCharQ</pre><p>Automatically generated by genChRanges.py</p>
+<h3><a name="xmlIsBlank_ch" id="xmlIsBlank_ch"></a>Macro: xmlIsBlank_ch</h3><pre>#define xmlIsBlank_ch</pre><p>Automatically generated by genChRanges.py</p>
+<h3><a name="xmlIsChar_ch" id="xmlIsChar_ch"></a>Macro: xmlIsChar_ch</h3><pre>#define xmlIsChar_ch</pre><p>Automatically generated by genChRanges.py</p>
+<h3><a name="xmlChSRange" id="xmlChSRange">Structure xmlChSRange</a></h3><pre class="programlisting">Structure xmlChSRange<br />struct _xmlChSRange {
+    unsigned short	low
+    unsigned short	high
+}</pre><h3><a name="xmlChLRange" id="xmlChLRange">Structure xmlChLRange</a></h3><pre class="programlisting">Structure xmlChLRange<br />struct _xmlChLRange {
     unsigned int	low
     unsigned int	high
-}</pre><br /><pre class="programlisting">#define <a href="#xmlIsIdeographicQ">xmlIsIdeographicQ</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlCharInRange">xmlCharInRange</a>	(unsigned int val, <br />				 const <a href="libxml-chvalid.html#xmlChRangeGroupPtr">xmlChRangeGroupPtr</a> rptr)<br />
-</pre><pre class="programlisting">#define <a href="#xmlIsBaseCharQ">xmlIsBaseCharQ</a>
-
-</pre><pre class="programlisting">#define <a href="#xmlIsDigitQ">xmlIsDigitQ</a>
-
-</pre><pre class="programlisting">Variable <a href="libxml-chvalid.html#xmlChRangeGroup">xmlChRangeGroup</a> <a name="xmlIsExtenderGroup" id="xmlIsExtenderGroup"></a>xmlIsExtenderGroup
-
-</pre><pre class="programlisting">#define <a href="#xmlIsBaseChar_ch">xmlIsBaseChar_ch</a>
-
-</pre><pre class="programlisting">#define <a href="#xmlIsPubidCharQ">xmlIsPubidCharQ</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlIsCombining">xmlIsCombining</a>	(unsigned int ch)<br />
-</pre><pre class="programlisting">int	<a href="#xmlIsIdeographic">xmlIsIdeographic</a>	(unsigned int ch)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-chvalid.html#xmlChLRange">xmlChLRange</a> * <a name="xmlChLRangePtr" id="xmlChLRangePtr">xmlChLRangePtr</a>
-
-</pre><pre class="programlisting">#define <a href="#xmlIsCharQ">xmlIsCharQ</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlChRangeGroup" id="xmlChRangeGroup">xmlChRangeGroup</a><br />struct _xmlChRangeGroup {
+}</pre><h3><a name="xmlChRangeGroup" id="xmlChRangeGroup">Structure xmlChRangeGroup</a></h3><pre class="programlisting">Structure xmlChRangeGroup<br />struct _xmlChRangeGroup {
     int	nbShortRange
     int	nbLongRange
     <a href="libxml-chvalid.html#xmlChSRangePtr">xmlChSRangePtr</a>	shortRange	: points to an array of ranges
     <a href="libxml-chvalid.html#xmlChLRangePtr">xmlChLRangePtr</a>	longRange
-}</pre><br /><pre class="programlisting">#define <a href="#xmlIsChar_ch">xmlIsChar_ch</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlIsExtender">xmlIsExtender</a>	(unsigned int ch)<br />
-</pre><pre class="programlisting">Variable <a href="libxml-chvalid.html#xmlChRangeGroup">xmlChRangeGroup</a> <a name="xmlIsDigitGroup" id="xmlIsDigitGroup"></a>xmlIsDigitGroup
-
-</pre><pre class="programlisting">int	<a href="#xmlIsChar">xmlIsChar</a>	(unsigned int ch)<br />
-</pre><pre class="programlisting">Variable <a href="libxml-chvalid.html#xmlChRangeGroup">xmlChRangeGroup</a> <a name="xmlIsBaseCharGroup" id="xmlIsBaseCharGroup"></a>xmlIsBaseCharGroup
-
-</pre><pre class="programlisting">int	<a href="#xmlIsDigit">xmlIsDigit</a>	(unsigned int ch)<br />
-</pre><pre class="programlisting">#define <a href="#xmlIsExtender_ch">xmlIsExtender_ch</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlIsPubidChar">xmlIsPubidChar</a>	(unsigned int ch)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-chvalid.html#xmlChSRange">xmlChSRange</a> * <a name="xmlChSRangePtr" id="xmlChSRangePtr">xmlChSRangePtr</a>
-
-</pre><pre class="programlisting">#define <a href="#xmlIsExtenderQ">xmlIsExtenderQ</a>
-
-</pre><pre class="programlisting">Variable <a href="libxml-chvalid.html#xmlChRangeGroup">xmlChRangeGroup</a> <a name="xmlIsIdeographicGroup" id="xmlIsIdeographicGroup"></a>xmlIsIdeographicGroup
-
-</pre><pre class="programlisting">#define <a href="#xmlIsCombiningQ">xmlIsCombiningQ</a>
-
-</pre><pre class="programlisting">#define <a href="#xmlIsDigit_ch">xmlIsDigit_ch</a>
-
-</pre><pre class="programlisting">Typedef <a href="libxml-chvalid.html#xmlChRangeGroup">xmlChRangeGroup</a> * <a name="xmlChRangeGroupPtr" id="xmlChRangeGroupPtr">xmlChRangeGroupPtr</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlChSRange" id="xmlChSRange">xmlChSRange</a><br />struct _xmlChSRange {
-    unsigned short	low
-    unsigned short	high
-}</pre><br /><pre class="programlisting">Variable unsigned charxmlIsPubidChar_tab[256] <a name="xmlIsPubidChar_tab" id="xmlIsPubidChar_tab"></a>xmlIsPubidChar_tab
-
-</pre><pre class="programlisting">Variable <a href="libxml-chvalid.html#xmlChRangeGroup">xmlChRangeGroup</a> <a name="xmlIsCharGroup" id="xmlIsCharGroup"></a>xmlIsCharGroup
-
-</pre><pre class="programlisting">#define <a href="#xmlIsBlankQ">xmlIsBlankQ</a>
-
-</pre><pre class="programlisting">#define <a href="#xmlIsBlank_ch">xmlIsBlank_ch</a>
-
-</pre><pre class="programlisting">Variable <a href="libxml-chvalid.html#xmlChRangeGroup">xmlChRangeGroup</a> <a name="xmlIsCombiningGroup" id="xmlIsCombiningGroup"></a>xmlIsCombiningGroup
-
-</pre><pre class="programlisting">int	<a href="#xmlIsBaseChar">xmlIsBaseChar</a>	(unsigned int ch)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlIsPubidChar_ch" id="xmlIsPubidChar_ch"></a>Macro: xmlIsPubidChar_ch</h3><pre>#define xmlIsPubidChar_ch</pre><p>Automatically generated by genChRanges.py</p>
-<h3><a name="xmlIsBlank" id="xmlIsBlank"></a>Function: xmlIsBlank</h3><pre class="programlisting">int	xmlIsBlank	(unsigned int ch)<br />
-</pre><p>This function is DEPRECATED. Use <a href="libxml-chvalid.html#xmlIsBlank_ch">xmlIsBlank_ch</a> or <a href="libxml-chvalid.html#xmlIsBlankQ">xmlIsBlankQ</a> instead</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>character to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if argument valid, false otherwise</td></tr></tbody></table></div>
-      
-      
-    <h3><a name="xmlIsIdeographicQ" id="xmlIsIdeographicQ"></a>Macro: xmlIsIdeographicQ</h3><pre>#define xmlIsIdeographicQ</pre><p>Automatically generated by genChRanges.py</p>
-<h3><a name="xmlCharInRange" id="xmlCharInRange"></a>Function: xmlCharInRange</h3><pre class="programlisting">int	xmlCharInRange	(unsigned int val, <br />				 const <a href="libxml-chvalid.html#xmlChRangeGroupPtr">xmlChRangeGroupPtr</a> rptr)<br />
-</pre><p>Does a binary search of the range table to determine if char is valid</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>character to be validated</td></tr><tr><td><span class="term"><i><tt>rptr</tt></i>:</span></td><td>pointer to range to be used to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if character valid, false otherwise</td></tr></tbody></table></div><h3><a name="xmlIsBaseCharQ" id="xmlIsBaseCharQ"></a>Macro: xmlIsBaseCharQ</h3><pre>#define xmlIsBaseCharQ</pre><p>Automatically generated by genChRanges.py</p>
-<h3><a name="xmlIsDigitQ" id="xmlIsDigitQ"></a>Macro: xmlIsDigitQ</h3><pre>#define xmlIsDigitQ</pre><p>Automatically generated by genChRanges.py</p>
-<h3><a name="xmlIsBaseChar_ch" id="xmlIsBaseChar_ch"></a>Macro: xmlIsBaseChar_ch</h3><pre>#define xmlIsBaseChar_ch</pre><p>Automatically generated by genChRanges.py</p>
-<h3><a name="xmlIsPubidCharQ" id="xmlIsPubidCharQ"></a>Macro: xmlIsPubidCharQ</h3><pre>#define xmlIsPubidCharQ</pre><p>Automatically generated by genChRanges.py</p>
-<h3><a name="xmlIsCombining" id="xmlIsCombining"></a>Function: xmlIsCombining</h3><pre class="programlisting">int	xmlIsCombining	(unsigned int ch)<br />
-</pre><p>This function is DEPRECATED. Use <a href="libxml-chvalid.html#xmlIsCombiningQ">xmlIsCombiningQ</a> instead</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>character to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if argument valid, false otherwise</td></tr></tbody></table></div><h3><a name="xmlIsIdeographic" id="xmlIsIdeographic"></a>Function: xmlIsIdeographic</h3><pre class="programlisting">int	xmlIsIdeographic	(unsigned int ch)<br />
-</pre><p>This function is DEPRECATED. Use <a href="libxml-chvalid.html#xmlIsIdeographicQ">xmlIsIdeographicQ</a> instead</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>character to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if argument valid, false otherwise</td></tr></tbody></table></div><h3><a name="xmlIsCharQ" id="xmlIsCharQ"></a>Macro: xmlIsCharQ</h3><pre>#define xmlIsCharQ</pre><p>Automatically generated by genChRanges.py</p>
-
-      
-      
-      
-      
-    <h3><a name="xmlIsChar_ch" id="xmlIsChar_ch"></a>Macro: xmlIsChar_ch</h3><pre>#define xmlIsChar_ch</pre><p>Automatically generated by genChRanges.py</p>
-<h3><a name="xmlIsExtender" id="xmlIsExtender"></a>Function: xmlIsExtender</h3><pre class="programlisting">int	xmlIsExtender	(unsigned int ch)<br />
-</pre><p>This function is DEPRECATED. Use <a href="libxml-chvalid.html#xmlIsExtender_ch">xmlIsExtender_ch</a> or <a href="libxml-chvalid.html#xmlIsExtenderQ">xmlIsExtenderQ</a> instead</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>character to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if argument valid, false otherwise</td></tr></tbody></table></div><h3><a name="xmlIsChar" id="xmlIsChar"></a>Function: xmlIsChar</h3><pre class="programlisting">int	xmlIsChar	(unsigned int ch)<br />
-</pre><p>This function is DEPRECATED. Use <a href="libxml-chvalid.html#xmlIsChar_ch">xmlIsChar_ch</a> or <a href="libxml-chvalid.html#xmlIsCharQ">xmlIsCharQ</a> instead</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>character to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if argument valid, false otherwise</td></tr></tbody></table></div><h3><a name="xmlIsDigit" id="xmlIsDigit"></a>Function: xmlIsDigit</h3><pre class="programlisting">int	xmlIsDigit	(unsigned int ch)<br />
-</pre><p>This function is DEPRECATED. Use <a href="libxml-chvalid.html#xmlIsDigit_ch">xmlIsDigit_ch</a> or <a href="libxml-chvalid.html#xmlIsDigitQ">xmlIsDigitQ</a> instead</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>character to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if argument valid, false otherwise</td></tr></tbody></table></div><h3><a name="xmlIsExtender_ch" id="xmlIsExtender_ch"></a>Macro: xmlIsExtender_ch</h3><pre>#define xmlIsExtender_ch</pre><p>Automatically generated by genChRanges.py</p>
-<h3><a name="xmlIsPubidChar" id="xmlIsPubidChar"></a>Function: xmlIsPubidChar</h3><pre class="programlisting">int	xmlIsPubidChar	(unsigned int ch)<br />
+}</pre><h3><a name="xmlIsPubidChar" id="xmlIsPubidChar"></a>Function: xmlIsPubidChar</h3><pre class="programlisting">int	xmlIsPubidChar			(unsigned int ch)<br />
 </pre><p>This function is DEPRECATED. Use <a href="libxml-chvalid.html#xmlIsPubidChar_ch">xmlIsPubidChar_ch</a> or <a href="libxml-chvalid.html#xmlIsPubidCharQ">xmlIsPubidCharQ</a> instead</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>character to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if argument valid, false otherwise</td></tr></tbody></table></div><h3><a name="xmlIsExtenderQ" id="xmlIsExtenderQ"></a>Macro: xmlIsExtenderQ</h3><pre>#define xmlIsExtenderQ</pre><p>Automatically generated by genChRanges.py</p>
-<h3><a name="xmlIsCombiningQ" id="xmlIsCombiningQ"></a>Macro: xmlIsCombiningQ</h3><pre>#define xmlIsCombiningQ</pre><p>Automatically generated by genChRanges.py</p>
-<h3><a name="xmlIsDigit_ch" id="xmlIsDigit_ch"></a>Macro: xmlIsDigit_ch</h3><pre>#define xmlIsDigit_ch</pre><p>Automatically generated by genChRanges.py</p>
-
-      
-      
-    <h3><a name="xmlIsBlankQ" id="xmlIsBlankQ"></a>Macro: xmlIsBlankQ</h3><pre>#define xmlIsBlankQ</pre><p>Automatically generated by genChRanges.py</p>
-<h3><a name="xmlIsBlank_ch" id="xmlIsBlank_ch"></a>Macro: xmlIsBlank_ch</h3><pre>#define xmlIsBlank_ch</pre><p>Automatically generated by genChRanges.py</p>
-<h3><a name="xmlIsBaseChar" id="xmlIsBaseChar"></a>Function: xmlIsBaseChar</h3><pre class="programlisting">int	xmlIsBaseChar	(unsigned int ch)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>character to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if argument valid, false otherwise</td></tr></tbody></table></div><h3><a name="xmlIsChar" id="xmlIsChar"></a>Function: xmlIsChar</h3><pre class="programlisting">int	xmlIsChar			(unsigned int ch)<br />
+</pre><p>This function is DEPRECATED. Use <a href="libxml-chvalid.html#xmlIsChar_ch">xmlIsChar_ch</a> or <a href="libxml-chvalid.html#xmlIsCharQ">xmlIsCharQ</a> instead</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>character to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if argument valid, false otherwise</td></tr></tbody></table></div><h3><a name="xmlIsDigit" id="xmlIsDigit"></a>Function: xmlIsDigit</h3><pre class="programlisting">int	xmlIsDigit			(unsigned int ch)<br />
+</pre><p>This function is DEPRECATED. Use <a href="libxml-chvalid.html#xmlIsDigit_ch">xmlIsDigit_ch</a> or <a href="libxml-chvalid.html#xmlIsDigitQ">xmlIsDigitQ</a> instead</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>character to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if argument valid, false otherwise</td></tr></tbody></table></div><h3><a name="xmlIsCombining" id="xmlIsCombining"></a>Function: xmlIsCombining</h3><pre class="programlisting">int	xmlIsCombining			(unsigned int ch)<br />
+</pre><p>This function is DEPRECATED. Use <a href="libxml-chvalid.html#xmlIsCombiningQ">xmlIsCombiningQ</a> instead</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>character to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if argument valid, false otherwise</td></tr></tbody></table></div><h3><a name="xmlIsIdeographic" id="xmlIsIdeographic"></a>Function: xmlIsIdeographic</h3><pre class="programlisting">int	xmlIsIdeographic		(unsigned int ch)<br />
+</pre><p>This function is DEPRECATED. Use <a href="libxml-chvalid.html#xmlIsIdeographicQ">xmlIsIdeographicQ</a> instead</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>character to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if argument valid, false otherwise</td></tr></tbody></table></div><h3><a name="xmlIsExtender" id="xmlIsExtender"></a>Function: xmlIsExtender</h3><pre class="programlisting">int	xmlIsExtender			(unsigned int ch)<br />
+</pre><p>This function is DEPRECATED. Use <a href="libxml-chvalid.html#xmlIsExtender_ch">xmlIsExtender_ch</a> or <a href="libxml-chvalid.html#xmlIsExtenderQ">xmlIsExtenderQ</a> instead</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>character to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if argument valid, false otherwise</td></tr></tbody></table></div><h3><a name="xmlCharInRange" id="xmlCharInRange"></a>Function: xmlCharInRange</h3><pre class="programlisting">int	xmlCharInRange			(unsigned int val, <br />					 const <a href="libxml-chvalid.html#xmlChRangeGroupPtr">xmlChRangeGroupPtr</a> rptr)<br />
+</pre><p>Does a binary search of the range table to determine if char is valid</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>character to be validated</td></tr><tr><td><span class="term"><i><tt>rptr</tt></i>:</span></td><td>pointer to range to be used to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if character valid, false otherwise</td></tr></tbody></table></div><h3><a name="xmlIsBaseChar" id="xmlIsBaseChar"></a>Function: xmlIsBaseChar</h3><pre class="programlisting">int	xmlIsBaseChar			(unsigned int ch)<br />
 </pre><p>This function is DEPRECATED. Use <a href="libxml-chvalid.html#xmlIsBaseChar_ch">xmlIsBaseChar_ch</a> or <a href="libxml-chvalid.html#xmlIsBaseCharQ">xmlIsBaseCharQ</a> instead</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>character to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if argument valid, false otherwise</td></tr></tbody></table></div><h3><a name="xmlIsBlank" id="xmlIsBlank"></a>Function: xmlIsBlank</h3><pre class="programlisting">int	xmlIsBlank			(unsigned int ch)<br />
+</pre><p>This function is DEPRECATED. Use <a href="libxml-chvalid.html#xmlIsBlank_ch">xmlIsBlank_ch</a> or <a href="libxml-chvalid.html#xmlIsBlankQ">xmlIsBlankQ</a> instead</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>character to validate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true if argument valid, false otherwise</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-debugXML.html b/doc/html/libxml-debugXML.html
index f4aa2cc..66222a6 100644
--- a/doc/html/libxml-debugXML.html
+++ b/doc/html/libxml-debugXML.html
@@ -10,9 +10,43 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module debugXML from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module debugXML from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-chvalid.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-chvalid.html">chvalid</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-dict.html">dict</a></th><td><a accesskey="n" href="libxml-dict.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>Interfaces to a set of routines used for debugging the tree produced by the XML parser. </p><h2>Table of Contents</h2><pre class="programlisting">int	<a href="#xmlShellWrite">xmlShellWrite</a>	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * filename, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDebugDumpEntities">xmlDebugDumpEntities</a>	(FILE * output, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">Structure <a name="xmlShellCtxt" id="xmlShellCtxt">xmlShellCtxt</a><br />struct _xmlShellCtxt {
+    </style><title>Module debugXML from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module debugXML from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-chvalid.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-chvalid.html">chvalid</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-dict.html">dict</a></th><td><a accesskey="n" href="libxml-dict.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>Interfaces to a set of routines used for debugging the tree produced by the XML parser. </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xmlShellCtxt">xmlShellCtxt</a><br />struct _xmlShellCtxt
+</pre><pre class="programlisting">Typedef <a href="libxml-debugXML.html#xmlShellCtxt">xmlShellCtxt</a> * <a name="xmlShellCtxtPtr" id="xmlShellCtxtPtr">xmlShellCtxtPtr</a>
+</pre><pre class="programlisting">const char *	<a href="#xmlBoolToText">xmlBoolToText</a>		(int boolval)</pre>
+<pre class="programlisting">void	<a href="#xmlDebugDumpAttr">xmlDebugDumpAttr</a>		(FILE * output, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr, <br />					 int depth)</pre>
+<pre class="programlisting">void	<a href="#xmlDebugDumpAttrList">xmlDebugDumpAttrList</a>		(FILE * output, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr, <br />					 int depth)</pre>
+<pre class="programlisting">void	<a href="#xmlDebugDumpDTD">xmlDebugDumpDTD</a>			(FILE * output, <br />					 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd)</pre>
+<pre class="programlisting">void	<a href="#xmlDebugDumpDocument">xmlDebugDumpDocument</a>		(FILE * output, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting">void	<a href="#xmlDebugDumpDocumentHead">xmlDebugDumpDocumentHead</a>	(FILE * output, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting">void	<a href="#xmlDebugDumpEntities">xmlDebugDumpEntities</a>		(FILE * output, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting">void	<a href="#xmlDebugDumpNode">xmlDebugDumpNode</a>		(FILE * output, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 int depth)</pre>
+<pre class="programlisting">void	<a href="#xmlDebugDumpNodeList">xmlDebugDumpNodeList</a>		(FILE * output, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 int depth)</pre>
+<pre class="programlisting">void	<a href="#xmlDebugDumpOneNode">xmlDebugDumpOneNode</a>		(FILE * output, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 int depth)</pre>
+<pre class="programlisting">void	<a href="#xmlDebugDumpString">xmlDebugDumpString</a>		(FILE * output, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)</pre>
+<pre class="programlisting">int	<a href="#xmlLsCountNode">xmlLsCountNode</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting">void	<a href="#xmlLsOneNode">xmlLsOneNode</a>			(FILE * output, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting">void	<a href="#xmlShell">xmlShell</a>			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 char * filename, <br />					 <a href="libxml-debugXML.html#xmlShellReadlineFunc">xmlShellReadlineFunc</a> input, <br />					 FILE * output)</pre>
+<pre class="programlisting">int	<a href="#xmlShellBase">xmlShellBase</a>			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * arg, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)</pre>
+<pre class="programlisting">int	<a href="#xmlShellCat">xmlShellCat</a>			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * arg, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)</pre>
+<pre class="programlisting">Function type: <a href="#xmlShellCmd">xmlShellCmd</a>
+int	<a href="#xmlShellCmd">xmlShellCmd</a>			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * arg, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)
+</pre>
+<pre class="programlisting">int	<a href="#xmlShellDir">xmlShellDir</a>			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * arg, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)</pre>
+<pre class="programlisting">int	<a href="#xmlShellDu">xmlShellDu</a>			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * arg, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)</pre>
+<pre class="programlisting">int	<a href="#xmlShellList">xmlShellList</a>			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * arg, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)</pre>
+<pre class="programlisting">int	<a href="#xmlShellLoad">xmlShellLoad</a>			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * filename, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)</pre>
+<pre class="programlisting">void	<a href="#xmlShellPrintNode">xmlShellPrintNode</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting">void	<a href="#xmlShellPrintXPathError">xmlShellPrintXPathError</a>		(int errorType, <br />					 const char * arg)</pre>
+<pre class="programlisting">void	<a href="#xmlShellPrintXPathResult">xmlShellPrintXPathResult</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> list)</pre>
+<pre class="programlisting">int	<a href="#xmlShellPwd">xmlShellPwd</a>			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * buffer, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)</pre>
+<pre class="programlisting">Function type: <a href="#xmlShellReadlineFunc">xmlShellReadlineFunc</a>
+char *	<a href="#xmlShellReadlineFunc">xmlShellReadlineFunc</a>		(char * prompt)
+</pre>
+<pre class="programlisting">int	<a href="#xmlShellSave">xmlShellSave</a>			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * filename, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)</pre>
+<pre class="programlisting">int	<a href="#xmlShellValidate">xmlShellValidate</a>		(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * dtd, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)</pre>
+<pre class="programlisting">int	<a href="#xmlShellWrite">xmlShellWrite</a>			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * filename, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)</pre>
+<h2>Description</h2>
+<h3><a name="xmlShellCtxt" id="xmlShellCtxt">Structure xmlShellCtxt</a></h3><pre class="programlisting">Structure xmlShellCtxt<br />struct _xmlShellCtxt {
     char *	filename
     <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	doc
     <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	node
@@ -20,111 +54,64 @@
     int	loaded
     FILE *	output
     <a href="libxml-debugXML.html#xmlShellReadlineFunc">xmlShellReadlineFunc</a>	input
-}</pre><br /><pre class="programlisting">void	<a href="#xmlDebugDumpDTD">xmlDebugDumpDTD</a>	(FILE * output, <br />				 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDebugDumpNode">xmlDebugDumpNode</a>	(FILE * output, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 int depth)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDebugDumpAttrList">xmlDebugDumpAttrList</a>	(FILE * output, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr, <br />				 int depth)<br />
-</pre><pre class="programlisting">void	<a href="#xmlShellPrintNode">xmlShellPrintNode</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">void	<a href="#xmlLsOneNode">xmlLsOneNode</a>	(FILE * output, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting"><a name="xmlShellReadlineFunc" id="xmlShellReadlineFunc"></a>Function type: xmlShellReadlineFunc
-char *	xmlShellReadlineFunc	(char * prompt)
-</pre><p>This is a generic signature for the XML shell input function.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>prompt</tt></i>:</span></td><td>a string prompt</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string which will be freed by the Shell.</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlShellSave">xmlShellSave</a>	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * filename, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><pre class="programlisting">int	<a href="#xmlShellPwd">xmlShellPwd</a>	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * buffer, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><pre class="programlisting">const char *	<a href="#xmlBoolToText">xmlBoolToText</a>	(int boolval)<br />
-</pre><pre class="programlisting">int	<a href="#xmlShellBase">xmlShellBase</a>	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * arg, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDebugDumpString">xmlDebugDumpString</a>	(FILE * output, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDebugDumpAttr">xmlDebugDumpAttr</a>	(FILE * output, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr, <br />				 int depth)<br />
-</pre><pre class="programlisting">int	<a href="#xmlShellDu">xmlShellDu</a>	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * arg, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDebugDumpNodeList">xmlDebugDumpNodeList</a>	(FILE * output, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 int depth)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDebugDumpDocument">xmlDebugDumpDocument</a>	(FILE * output, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">int	<a href="#xmlShellCat">xmlShellCat</a>	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * arg, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><pre class="programlisting">int	<a href="#xmlShellDir">xmlShellDir</a>	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * arg, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><pre class="programlisting">int	<a href="#xmlLsCountNode">xmlLsCountNode</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">int	<a href="#xmlShellValidate">xmlShellValidate</a>	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * dtd, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><pre class="programlisting">void	<a href="#xmlShellPrintXPathError">xmlShellPrintXPathError</a>	(int errorType, <br />				 const char * arg)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-debugXML.html#xmlShellCtxt">xmlShellCtxt</a> * <a name="xmlShellCtxtPtr" id="xmlShellCtxtPtr">xmlShellCtxtPtr</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlShellPrintXPathResult">xmlShellPrintXPathResult</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> list)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDebugDumpOneNode">xmlDebugDumpOneNode</a>	(FILE * output, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 int depth)<br />
-</pre><pre class="programlisting"><a name="xmlShellCmd" id="xmlShellCmd"></a>Function type: xmlShellCmd
-int	xmlShellCmd	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * arg, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)
-</pre><p>This is a generic signature for the XML shell functions.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a shell context</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>a string argument</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a first node</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>a second node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an int, negative returns indicating errors.</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlShellLoad">xmlShellLoad</a>	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * filename, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><pre class="programlisting">int	<a href="#xmlShellList">xmlShellList</a>	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * arg, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDebugDumpDocumentHead">xmlDebugDumpDocumentHead</a>	(FILE * output, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">void	<a href="#xmlShell">xmlShell</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 char * filename, <br />				 <a href="libxml-debugXML.html#xmlShellReadlineFunc">xmlShellReadlineFunc</a> input, <br />				 FILE * output)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlShellWrite" id="xmlShellWrite"></a>Function: xmlShellWrite</h3><pre class="programlisting">int	xmlShellWrite	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * filename, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><p>Implements the XML shell function &quot;write&quot; Write the current node to the filename, it saves the serialization of the subtree under the @node specified</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the file name</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node in the tree</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlDebugDumpEntities" id="xmlDebugDumpEntities"></a>Function: xmlDebugDumpEntities</h3><pre class="programlisting">void	xmlDebugDumpEntities	(FILE * output, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+}</pre><h3><a name="xmlDebugDumpEntities" id="xmlDebugDumpEntities"></a>Function: xmlDebugDumpEntities</h3><pre class="programlisting">void	xmlDebugDumpEntities		(FILE * output, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
 </pre><p>Dumps debug information for all the entities in use by the document</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlDebugDumpDTD" id="xmlDebugDumpDTD"></a>Function: xmlDebugDumpDTD</h3><pre class="programlisting">void	xmlDebugDumpDTD	(FILE * output, <br />				 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd)<br />
-</pre><p>Dumps debug information for the DTD</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>the DTD</td></tr></tbody></table></div><h3><a name="xmlDebugDumpNode" id="xmlDebugDumpNode"></a>Function: xmlDebugDumpNode</h3><pre class="programlisting">void	xmlDebugDumpNode	(FILE * output, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 int depth)<br />
-</pre><p>Dumps debug information for the element node, it is recursive</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>the indentation level.</td></tr></tbody></table></div><h3><a name="xmlDebugDumpAttrList" id="xmlDebugDumpAttrList"></a>Function: xmlDebugDumpAttrList</h3><pre class="programlisting">void	xmlDebugDumpAttrList	(FILE * output, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr, <br />				 int depth)<br />
-</pre><p>Dumps debug information for the <a href="libxml-SAX.html#attribute">attribute</a> list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> list</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>the indentation level.</td></tr></tbody></table></div><h3><a name="xmlShellPrintNode" id="xmlShellPrintNode"></a>Function: xmlShellPrintNode</h3><pre class="programlisting">void	xmlShellPrintNode	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><p>Print node to the output FILE</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a non-null node to print to the output FILE</td></tr></tbody></table></div><h3><a name="xmlLsOneNode" id="xmlLsOneNode"></a>Function: xmlLsOneNode</h3><pre class="programlisting">void	xmlLsOneNode	(FILE * output, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><p>Dump to @output the type and name of @node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node to dump</td></tr></tbody></table></div>
-      This is a generic signature for the XML shell input function.
-      
-      
-    <h3><a name="xmlShellSave" id="xmlShellSave"></a>Function: xmlShellSave</h3><pre class="programlisting">int	xmlShellSave	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * filename, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><p>Implements the XML shell function &quot;save&quot; Write the current document to the filename, or it's original name</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the file name (optional)</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlShellPwd" id="xmlShellPwd"></a>Function: xmlShellPwd</h3><pre class="programlisting">int	xmlShellPwd	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * buffer, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><p>Implements the XML shell function &quot;pwd&quot; Show the full path from the root to the node, if needed building thumblers when similar elements exists at a given ancestor level. The output is compatible with XPath commands.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>the output buffer</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlBoolToText" id="xmlBoolToText"></a>Function: xmlBoolToText</h3><pre class="programlisting">const char *	xmlBoolToText	(int boolval)<br />
-</pre><p>Convenient way to turn bool into text</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>boolval</tt></i>:</span></td><td>a bool to turn into text</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to either &quot;True&quot; or &quot;False&quot;</td></tr></tbody></table></div><h3><a name="xmlShellBase" id="xmlShellBase"></a>Function: xmlShellBase</h3><pre class="programlisting">int	xmlShellBase	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * arg, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr></tbody></table></div><h3><a name="xmlShellBase" id="xmlShellBase"></a>Function: xmlShellBase</h3><pre class="programlisting">int	xmlShellBase			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * arg, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
 </pre><p>Implements the XML shell function &quot;base&quot; dumps the current XML base of the node</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0</td></tr></tbody></table></div><h3><a name="xmlDebugDumpString" id="xmlDebugDumpString"></a>Function: xmlDebugDumpString</h3><pre class="programlisting">void	xmlDebugDumpString	(FILE * output, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
-</pre><p>Dumps informations about the string, shorten it if necessary</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the string</td></tr></tbody></table></div><h3><a name="xmlDebugDumpAttr" id="xmlDebugDumpAttr"></a>Function: xmlDebugDumpAttr</h3><pre class="programlisting">void	xmlDebugDumpAttr	(FILE * output, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr, <br />				 int depth)<br />
-</pre><p>Dumps debug information for the <a href="libxml-SAX.html#attribute">attribute</a></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>the indentation level.</td></tr></tbody></table></div><h3><a name="xmlShellDu" id="xmlShellDu"></a>Function: xmlShellDu</h3><pre class="programlisting">int	xmlShellDu	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * arg, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><p>Implements the XML shell function &quot;du&quot; show the structure of the subtree under node @tree If @tree is null, the command works on the current node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>a node defining a subtree</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlDebugDumpNodeList" id="xmlDebugDumpNodeList"></a>Function: xmlDebugDumpNodeList</h3><pre class="programlisting">void	xmlDebugDumpNodeList	(FILE * output, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 int depth)<br />
-</pre><p>Dumps debug information for the list of element node, it is recursive</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node list</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>the indentation level.</td></tr></tbody></table></div><h3><a name="xmlDebugDumpDocument" id="xmlDebugDumpDocument"></a>Function: xmlDebugDumpDocument</h3><pre class="programlisting">void	xmlDebugDumpDocument	(FILE * output, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><p>Dumps debug information for the document, it's recursive</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr></tbody></table></div><h3><a name="xmlShellCat" id="xmlShellCat"></a>Function: xmlShellCat</h3><pre class="programlisting">int	xmlShellCat	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * arg, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0</td></tr></tbody></table></div><h3><a name="xmlShellCat" id="xmlShellCat"></a>Function: xmlShellCat</h3><pre class="programlisting">int	xmlShellCat			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * arg, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
 </pre><p>Implements the XML shell function &quot;cat&quot; dumps the serialization node content (XML or HTML).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0</td></tr></tbody></table></div><h3><a name="xmlShellDir" id="xmlShellDir"></a>Function: xmlShellDir</h3><pre class="programlisting">int	xmlShellDir	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * arg, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><p>Implements the XML shell function &quot;dir&quot; dumps informations about the node (namespace, attributes, content).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0</td></tr></tbody></table></div><h3><a name="xmlLsCountNode" id="xmlLsCountNode"></a>Function: xmlLsCountNode</h3><pre class="programlisting">int	xmlLsCountNode	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0</td></tr></tbody></table></div><h3><a name="xmlDebugDumpDTD" id="xmlDebugDumpDTD"></a>Function: xmlDebugDumpDTD</h3><pre class="programlisting">void	xmlDebugDumpDTD			(FILE * output, <br />					 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd)<br />
+</pre><p>Dumps debug information for the DTD</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>the DTD</td></tr></tbody></table></div><h3><a name="xmlDebugDumpNode" id="xmlDebugDumpNode"></a>Function: xmlDebugDumpNode</h3><pre class="programlisting">void	xmlDebugDumpNode		(FILE * output, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 int depth)<br />
+</pre><p>Dumps debug information for the element node, it is recursive</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>the indentation level.</td></tr></tbody></table></div><h3><a name="xmlDebugDumpAttrList" id="xmlDebugDumpAttrList"></a>Function: xmlDebugDumpAttrList</h3><pre class="programlisting">void	xmlDebugDumpAttrList		(FILE * output, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr, <br />					 int depth)<br />
+</pre><p>Dumps debug information for the <a href="libxml-SAX.html#attribute">attribute</a> list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> list</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>the indentation level.</td></tr></tbody></table></div><h3><a name="xmlShellPrintNode" id="xmlShellPrintNode"></a>Function: xmlShellPrintNode</h3><pre class="programlisting">void	xmlShellPrintNode		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+</pre><p>Print node to the output FILE</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a non-null node to print to the output FILE</td></tr></tbody></table></div><h3><a name="xmlLsOneNode" id="xmlLsOneNode"></a>Function: xmlLsOneNode</h3><pre class="programlisting">void	xmlLsOneNode			(FILE * output, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+</pre><p>Dump to @output the type and name of @node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node to dump</td></tr></tbody></table></div><h3><a name="xmlShellReadlineFunc" id="xmlShellReadlineFunc"></a>Function type: xmlShellReadlineFunc</h3><pre class="programlisting">Function type: xmlShellReadlineFunc
+char *	xmlShellReadlineFunc		(char * prompt)
+</pre><p>This is a generic signature for the XML shell input function.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>prompt</tt></i>:</span></td><td>a string prompt</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string which will be freed by the Shell.</td></tr></tbody></table></div><br />
+<h3><a name="xmlShellSave" id="xmlShellSave"></a>Function: xmlShellSave</h3><pre class="programlisting">int	xmlShellSave			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * filename, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
+</pre><p>Implements the XML shell function &quot;save&quot; Write the current document to the filename, or it's original name</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the file name (optional)</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlShellPwd" id="xmlShellPwd"></a>Function: xmlShellPwd</h3><pre class="programlisting">int	xmlShellPwd			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * buffer, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
+</pre><p>Implements the XML shell function &quot;pwd&quot; Show the full path from the root to the node, if needed building thumblers when similar elements exists at a given ancestor level. The output is compatible with XPath commands.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>the output buffer</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlBoolToText" id="xmlBoolToText"></a>Function: xmlBoolToText</h3><pre class="programlisting">const char *	xmlBoolToText		(int boolval)<br />
+</pre><p>Convenient way to turn bool into text</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>boolval</tt></i>:</span></td><td>a bool to turn into text</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to either &quot;True&quot; or &quot;False&quot;</td></tr></tbody></table></div><h3><a name="xmlShellWrite" id="xmlShellWrite"></a>Function: xmlShellWrite</h3><pre class="programlisting">int	xmlShellWrite			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * filename, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
+</pre><p>Implements the XML shell function &quot;write&quot; Write the current node to the filename, it saves the serialization of the subtree under the @node specified</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the file name</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node in the tree</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlDebugDumpString" id="xmlDebugDumpString"></a>Function: xmlDebugDumpString</h3><pre class="programlisting">void	xmlDebugDumpString		(FILE * output, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
+</pre><p>Dumps informations about the string, shorten it if necessary</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the string</td></tr></tbody></table></div><h3><a name="xmlDebugDumpAttr" id="xmlDebugDumpAttr"></a>Function: xmlDebugDumpAttr</h3><pre class="programlisting">void	xmlDebugDumpAttr		(FILE * output, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr, <br />					 int depth)<br />
+</pre><p>Dumps debug information for the <a href="libxml-SAX.html#attribute">attribute</a></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>the indentation level.</td></tr></tbody></table></div><h3><a name="xmlShellDu" id="xmlShellDu"></a>Function: xmlShellDu</h3><pre class="programlisting">int	xmlShellDu			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * arg, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
+</pre><p>Implements the XML shell function &quot;du&quot; show the structure of the subtree under node @tree If @tree is null, the command works on the current node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>a node defining a subtree</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlDebugDumpNodeList" id="xmlDebugDumpNodeList"></a>Function: xmlDebugDumpNodeList</h3><pre class="programlisting">void	xmlDebugDumpNodeList		(FILE * output, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 int depth)<br />
+</pre><p>Dumps debug information for the list of element node, it is recursive</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node list</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>the indentation level.</td></tr></tbody></table></div><h3><a name="xmlDebugDumpDocument" id="xmlDebugDumpDocument"></a>Function: xmlDebugDumpDocument</h3><pre class="programlisting">void	xmlDebugDumpDocument		(FILE * output, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+</pre><p>Dumps debug information for the document, it's recursive</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr></tbody></table></div><h3><a name="xmlLsCountNode" id="xmlLsCountNode"></a>Function: xmlLsCountNode</h3><pre class="programlisting">int	xmlLsCountNode			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
 </pre><p>Count the children of @node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node to count</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of children of @node.</td></tr></tbody></table></div><h3><a name="xmlShellValidate" id="xmlShellValidate"></a>Function: xmlShellValidate</h3><pre class="programlisting">int	xmlShellValidate	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * dtd, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node to count</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of children of @node.</td></tr></tbody></table></div><h3><a name="xmlShellValidate" id="xmlShellValidate"></a>Function: xmlShellValidate</h3><pre class="programlisting">int	xmlShellValidate		(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * dtd, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
 </pre><p>Implements the XML shell function &quot;validate&quot; Validate the document, if a DTD path is provided, then the validation is done against the given DTD.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>the DTD URI (optional)</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlShellPrintXPathError" id="xmlShellPrintXPathError"></a>Function: xmlShellPrintXPathError</h3><pre class="programlisting">void	xmlShellPrintXPathError	(int errorType, <br />				 const char * arg)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>the DTD URI (optional)</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlShellPrintXPathError" id="xmlShellPrintXPathError"></a>Function: xmlShellPrintXPathError</h3><pre class="programlisting">void	xmlShellPrintXPathError		(int errorType, <br />					 const char * arg)<br />
 </pre><p>Print the xpath error to libxml default error channel</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>errorType</tt></i>:</span></td><td>valid xpath error id</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>the argument that cause xpath to fail</td></tr></tbody></table></div><h3><a name="xmlShellPrintXPathResult" id="xmlShellPrintXPathResult"></a>Function: xmlShellPrintXPathResult</h3><pre class="programlisting">void	xmlShellPrintXPathResult	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> list)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>errorType</tt></i>:</span></td><td>valid xpath error id</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>the argument that cause xpath to fail</td></tr></tbody></table></div><h3><a name="xmlShellDir" id="xmlShellDir"></a>Function: xmlShellDir</h3><pre class="programlisting">int	xmlShellDir			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * arg, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
+</pre><p>Implements the XML shell function &quot;dir&quot; dumps informations about the node (namespace, attributes, content).</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0</td></tr></tbody></table></div><h3><a name="xmlShellPrintXPathResult" id="xmlShellPrintXPathResult"></a>Function: xmlShellPrintXPathResult</h3><pre class="programlisting">void	xmlShellPrintXPathResult	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> list)<br />
 </pre><p>Prints result to the output FILE</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>a valid result generated by an xpath evaluation</td></tr></tbody></table></div><h3><a name="xmlDebugDumpOneNode" id="xmlDebugDumpOneNode"></a>Function: xmlDebugDumpOneNode</h3><pre class="programlisting">void	xmlDebugDumpOneNode	(FILE * output, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 int depth)<br />
-</pre><p>Dumps debug information for the element node, it is not recursive</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>the indentation level.</td></tr></tbody></table></div>
-      This is a generic signature for the XML shell functions.
-      
-      
-      
-      
-      
-    <h3><a name="xmlShellLoad" id="xmlShellLoad"></a>Function: xmlShellLoad</h3><pre class="programlisting">int	xmlShellLoad	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * filename, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><p>Implements the XML shell function &quot;load&quot; loads a new document specified by the filename</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the file name</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 if loading failed</td></tr></tbody></table></div><h3><a name="xmlShellList" id="xmlShellList"></a>Function: xmlShellList</h3><pre class="programlisting">int	xmlShellList	(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />				 char * arg, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><p>Implements the XML shell function &quot;ls&quot; Does an Unix like listing of the given node (like a directory)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0</td></tr></tbody></table></div><h3><a name="xmlDebugDumpDocumentHead" id="xmlDebugDumpDocumentHead"></a>Function: xmlDebugDumpDocumentHead</h3><pre class="programlisting">void	xmlDebugDumpDocumentHead	(FILE * output, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>a valid result generated by an xpath evaluation</td></tr></tbody></table></div><h3><a name="xmlDebugDumpDocumentHead" id="xmlDebugDumpDocumentHead"></a>Function: xmlDebugDumpDocumentHead</h3><pre class="programlisting">void	xmlDebugDumpDocumentHead	(FILE * output, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
 </pre><p>Dumps debug information cncerning the document, not recursive</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr></tbody></table></div><h3><a name="xmlShell" id="xmlShell"></a>Function: xmlShell</h3><pre class="programlisting">void	xmlShell	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 char * filename, <br />				 <a href="libxml-debugXML.html#xmlShellReadlineFunc">xmlShellReadlineFunc</a> input, <br />				 FILE * output)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr></tbody></table></div><h3><a name="xmlDebugDumpOneNode" id="xmlDebugDumpOneNode"></a>Function: xmlDebugDumpOneNode</h3><pre class="programlisting">void	xmlDebugDumpOneNode		(FILE * output, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 int depth)<br />
+</pre><p>Dumps debug information for the element node, it is not recursive</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>the indentation level.</td></tr></tbody></table></div><h3><a name="xmlShellCmd" id="xmlShellCmd"></a>Function type: xmlShellCmd</h3><pre class="programlisting">Function type: xmlShellCmd
+int	xmlShellCmd			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * arg, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)
+</pre><p>This is a generic signature for the XML shell functions.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a shell context</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>a string argument</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a first node</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>a second node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an int, negative returns indicating errors.</td></tr></tbody></table></div><br />
+<h3><a name="xmlShellList" id="xmlShellList"></a>Function: xmlShellList</h3><pre class="programlisting">int	xmlShellList			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * arg, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
+</pre><p>Implements the XML shell function &quot;ls&quot; Does an Unix like listing of the given node (like a directory)</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0</td></tr></tbody></table></div><h3><a name="xmlShell" id="xmlShell"></a>Function: xmlShell</h3><pre class="programlisting">void	xmlShell			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 char * filename, <br />					 <a href="libxml-debugXML.html#xmlShellReadlineFunc">xmlShellReadlineFunc</a> input, <br />					 FILE * output)<br />
 </pre><p>Implements the XML shell This allow to load, validate, view, modify and save a document using a environment similar to a UNIX commandline.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the initial document</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the output buffer</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>the line reading function</td></tr><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the output FILE*, defaults to stdout if NULL</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the initial document</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the output buffer</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>the line reading function</td></tr><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the output FILE*, defaults to stdout if NULL</td></tr></tbody></table></div><h3><a name="xmlShellLoad" id="xmlShellLoad"></a>Function: xmlShellLoad</h3><pre class="programlisting">int	xmlShellLoad			(<a href="libxml-debugXML.html#xmlShellCtxtPtr">xmlShellCtxtPtr</a> ctxt, <br />					 char * filename, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
+</pre><p>Implements the XML shell function &quot;load&quot; loads a new document specified by the filename</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the shell context</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the file name</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>unused</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 if loading failed</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-dict.html b/doc/html/libxml-dict.html
index 0425205..c30156a 100644
--- a/doc/html/libxml-dict.html
+++ b/doc/html/libxml-dict.html
@@ -10,30 +10,31 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module dict from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module dict from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-debugXML.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-debugXML.html">debugXML</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-encoding.html">encoding</a></th><td><a accesskey="n" href="libxml-encoding.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>dictionary of reusable strings, just used to avoid allocation and freeing operations. </p><h2>Table of Contents</h2><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlDictQLookup">xmlDictQLookup</a>	(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-dict.html#xmlDict">xmlDict</a> * <a name="xmlDictPtr" id="xmlDictPtr">xmlDictPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlDictReference">xmlDictReference</a>	(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br />
-</pre><pre class="programlisting">int	<a href="#xmlDictSize">xmlDictSize</a>	(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br />
-</pre><pre class="programlisting">Structure <a name="xmlDict" id="xmlDict">xmlDict</a><br />struct _xmlDict {
+    </style><title>Module dict from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module dict from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-debugXML.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-debugXML.html">debugXML</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-encoding.html">encoding</a></th><td><a accesskey="n" href="libxml-encoding.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>dictionary of reusable strings, just used to avoid allocation and freeing operations. </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xmlDict">xmlDict</a><br />struct _xmlDict
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting"><a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a>	<a href="#xmlDictCreate">xmlDictCreate</a>	(void)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlDictLookup">xmlDictLookup</a>	(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int len)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDictFree">xmlDictFree</a>	(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br />
-</pre><pre class="programlisting">int	<a href="#xmlDictOwns">xmlDictOwns</a>	(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlDictQLookup" id="xmlDictQLookup"></a>Function: xmlDictQLookup</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlDictQLookup	(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><pre class="programlisting">Typedef <a href="libxml-dict.html#xmlDict">xmlDict</a> * <a name="xmlDictPtr" id="xmlDictPtr">xmlDictPtr</a>
+</pre><pre class="programlisting"><a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a>	<a href="#xmlDictCreate">xmlDictCreate</a>		(void)</pre>
+<pre class="programlisting">void	<a href="#xmlDictFree">xmlDictFree</a>			(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlDictLookup">xmlDictLookup</a>		(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#xmlDictOwns">xmlDictOwns</a>			(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlDictQLookup">xmlDictQLookup</a>		(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">int	<a href="#xmlDictReference">xmlDictReference</a>		(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)</pre>
+<pre class="programlisting">int	<a href="#xmlDictSize">xmlDictSize</a>			(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)</pre>
+<h2>Description</h2>
+<h3><a name="xmlDict" id="xmlDict">Structure xmlDict</a></h3><pre class="programlisting">Structure xmlDict<br />struct _xmlDict {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlDictQLookup" id="xmlDictQLookup"></a>Function: xmlDictQLookup</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlDictQLookup		(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Add the QName @prefix:@name to the hash @dict if not present.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the internal copy of the QName or NULL in case of internal error</td></tr></tbody></table></div><h3><a name="xmlDictReference" id="xmlDictReference"></a>Function: xmlDictReference</h3><pre class="programlisting">int	xmlDictReference	(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the internal copy of the QName or NULL in case of internal error</td></tr></tbody></table></div><h3><a name="xmlDictReference" id="xmlDictReference"></a>Function: xmlDictReference</h3><pre class="programlisting">int	xmlDictReference		(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br />
 </pre><p>Increment the <a href="libxml-SAX.html#reference">reference</a> counter of a dictionary</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlDictSize" id="xmlDictSize"></a>Function: xmlDictSize</h3><pre class="programlisting">int	xmlDictSize	(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlDictSize" id="xmlDictSize"></a>Function: xmlDictSize</h3><pre class="programlisting">int	xmlDictSize			(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br />
 </pre><p>Query the number of elements installed in the hash @dict.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of elements in the dictionnary or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlDictCreate" id="xmlDictCreate"></a>Function: xmlDictCreate</h3><pre class="programlisting"><a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a>	xmlDictCreate	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of elements in the dictionnary or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlDictCreate" id="xmlDictCreate"></a>Function: xmlDictCreate</h3><pre class="programlisting"><a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a>	xmlDictCreate		(void)<br />
 </pre><p>Create a new dictionary</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object, or NULL if an error occured.</td></tr></tbody></table></div><h3><a name="xmlDictLookup" id="xmlDictLookup"></a>Function: xmlDictLookup</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlDictLookup	(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object, or NULL if an error occured.</td></tr></tbody></table></div><h3><a name="xmlDictLookup" id="xmlDictLookup"></a>Function: xmlDictLookup</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlDictLookup		(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int len)<br />
 </pre><p>Add the @name to the hash @dict if not present.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the name, if -1 it is recomputed</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the internal copy of the name or NULL in case of internal error</td></tr></tbody></table></div><h3><a name="xmlDictFree" id="xmlDictFree"></a>Function: xmlDictFree</h3><pre class="programlisting">void	xmlDictFree	(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the name, if -1 it is recomputed</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the internal copy of the name or NULL in case of internal error</td></tr></tbody></table></div><h3><a name="xmlDictFree" id="xmlDictFree"></a>Function: xmlDictFree</h3><pre class="programlisting">void	xmlDictFree			(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict)<br />
 </pre><p>Free the hash @dict and its contents. The userdata is deallocated with @f if provided.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr></tbody></table></div><h3><a name="xmlDictOwns" id="xmlDictOwns"></a>Function: xmlDictOwns</h3><pre class="programlisting">int	xmlDictOwns	(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr></tbody></table></div><h3><a name="xmlDictOwns" id="xmlDictOwns"></a>Function: xmlDictOwns</h3><pre class="programlisting">int	xmlDictOwns			(<a href="libxml-dict.html#xmlDictPtr">xmlDictPtr</a> dict, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
 </pre><p>check if a string is owned by the disctionary</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dict</tt></i>:</span></td><td>the dictionnary</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true, 0 if false and -1 in case of error -1 in case of error</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-encoding.html b/doc/html/libxml-encoding.html
index 16ce063..eb5d029 100644
--- a/doc/html/libxml-encoding.html
+++ b/doc/html/libxml-encoding.html
@@ -10,41 +10,46 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module encoding from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module encoding from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-dict.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-dict.html">dict</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-entities.html">entities</a></th><td><a accesskey="n" href="libxml-entities.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>interface for the encoding conversion functions needed for XML basic encoding and iconv() support.  Related specs are rfc2044        (UTF-8 and UTF-16) F. Yergeau Alis Technologies [ISO-10646]    UTF-8 and UTF-16 in Annexes [ISO-8859-1]   ISO Latin-1 characters codes. [UNICODE]      The Unicode Consortium, &quot;The Unicode Standard -- Worldwide Character Encoding -- Version 1.0&quot;, Addison- Wesley, Volume 1, 1991, Volume 2, 1992.  UTF-8 is described in Unicode Technical Report #4. [US-ASCII]     Coded Character Set--7-bit American Standard Code for Information Interchange, ANSI X3.4-1986. </p><h2>Table of Contents</h2><pre class="programlisting">int	<a href="#xmlDelEncodingAlias">xmlDelEncodingAlias</a>	(const char * alias)<br />
-</pre><pre class="programlisting">const char *	<a href="#xmlGetEncodingAlias">xmlGetEncodingAlias</a>	(const char * alias)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUTF8Strloc">xmlUTF8Strloc</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utfchar)<br />
-</pre><pre class="programlisting">void	<a href="#xmlCleanupCharEncodingHandlers">xmlCleanupCharEncodingHandlers</a>	(void)<br />
-</pre><pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>	<a href="#xmlFindCharEncodingHandler">xmlFindCharEncodingHandler</a>	(const char * name)<br />
-</pre><pre class="programlisting">int	<a href="#xmlCharEncCloseFunc">xmlCharEncCloseFunc</a>	(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUTF8Size">xmlUTF8Size</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf)<br />
-</pre><pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a>	<a href="#xmlParseCharEncoding">xmlParseCharEncoding</a>	(const char * name)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlUTF8Strpos">xmlUTF8Strpos</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />				 int pos)<br />
-</pre><pre class="programlisting">Structure <a name="xmlCharEncodingHandler" id="xmlCharEncodingHandler">xmlCharEncodingHandler</a><br />struct _xmlCharEncodingHandler {
-    char *	name
-    <a href="libxml-encoding.html#xmlCharEncodingInputFunc">xmlCharEncodingInputFunc</a>	input
-    <a href="libxml-encoding.html#xmlCharEncodingOutputFunc">xmlCharEncodingOutputFunc</a>	output
-    iconv_t	iconv_in
-    iconv_t	iconv_out
-}</pre><br /><pre class="programlisting">const char *	<a href="#xmlGetCharEncodingName">xmlGetCharEncodingName</a>	(<a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><pre class="programlisting">int	<a href="#xmlCheckUTF8">xmlCheckUTF8</a>	(const unsigned char * utf)<br />
-</pre><pre class="programlisting">int	<a href="#UTF8Toisolat1">UTF8Toisolat1</a>	(unsigned char * out, <br />				 int * outlen, <br />				 const unsigned char * in, <br />				 int * inlen)<br />
-</pre><pre class="programlisting">int	<a href="#xmlCharEncInFunc">xmlCharEncInFunc</a>	(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler, <br />				 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> out, <br />				 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> in)<br />
-</pre><pre class="programlisting">int	<a href="#xmlAddEncodingAlias">xmlAddEncodingAlias</a>	(const char * name, <br />				 const char * alias)<br />
+    </style><title>Module encoding from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module encoding from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-dict.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-dict.html">dict</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-entities.html">entities</a></th><td><a accesskey="n" href="libxml-entities.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>interface for the encoding conversion functions needed for XML basic encoding and iconv() support.  Related specs are rfc2044        (UTF-8 and UTF-16) F. Yergeau Alis Technologies [ISO-10646]    UTF-8 and UTF-16 in Annexes [ISO-8859-1]   ISO Latin-1 characters codes. [UNICODE]      The Unicode Consortium, &quot;The Unicode Standard -- Worldwide Character Encoding -- Version 1.0&quot;, Addison- Wesley, Volume 1, 1991, Volume 2, 1992.  UTF-8 is described in Unicode Technical Report #4. [US-ASCII]     Coded Character Set--7-bit American Standard Code for Information Interchange, ANSI X3.4-1986. </p><h2>Table of Contents</h2><pre class="programlisting">Enum <a href="#xmlCharEncoding">xmlCharEncoding</a>
+</pre><pre class="programlisting">Structure <a href="#xmlCharEncodingHandler">xmlCharEncodingHandler</a><br />struct _xmlCharEncodingHandler
 </pre><pre class="programlisting">Typedef <a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * <a name="xmlCharEncodingHandlerPtr" id="xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlCharEncOutFunc">xmlCharEncOutFunc</a>	(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler, <br />				 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> out, <br />				 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> in)<br />
-</pre><pre class="programlisting"><a name="xmlCharEncodingInputFunc" id="xmlCharEncodingInputFunc"></a>Function type: xmlCharEncodingInputFunc
-int	xmlCharEncodingInputFunc	(unsigned char * out, <br />				 int * outlen, <br />				 const unsigned char * in, <br />				 int * inlen)
-</pre><p>Take a block of chars in the original encoding and try to convert it to an UTF-8 block of chars out.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a pointer to an array of bytes to store the UTF-8 result</td></tr><tr><td><span class="term"><i><tt>outlen</tt></i>:</span></td><td>the length of @out</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to an array of chars in the original encoding</td></tr><tr><td><span class="term"><i><tt>inlen</tt></i>:</span></td><td>the length of @in</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written, or -1 by lack of space, or -2 if the transcoding failed. The value of @inlen after return is the number of octets consumed as the return value is positive, else unpredictiable. The value of @outlen after return is the number of octets consumed.</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>	<a href="#xmlGetCharEncodingHandler">xmlGetCharEncodingHandler</a>	(<a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlUTF8Strsub">xmlUTF8Strsub</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />				 int start, <br />				 int len)<br />
-</pre><pre class="programlisting">int	<a href="#xmlGetUTF8Char">xmlGetUTF8Char</a>	(const unsigned char * utf, <br />				 int * len)<br />
-</pre><pre class="programlisting">int	<a href="#isolat1ToUTF8">isolat1ToUTF8</a>	(unsigned char * out, <br />				 int * outlen, <br />				 const unsigned char * in, <br />				 int * inlen)<br />
-</pre><pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>	<a href="#xmlNewCharEncodingHandler">xmlNewCharEncodingHandler</a>	(const char * name, <br />				 <a href="libxml-encoding.html#xmlCharEncodingInputFunc">xmlCharEncodingInputFunc</a> input, <br />				 <a href="libxml-encoding.html#xmlCharEncodingOutputFunc">xmlCharEncodingOutputFunc</a> output)<br />
-</pre><pre class="programlisting">void	<a href="#xmlInitCharEncodingHandlers">xmlInitCharEncodingHandlers</a>	(void)<br />
-</pre><pre class="programlisting">void	<a href="#xmlRegisterCharEncodingHandler">xmlRegisterCharEncodingHandler</a>	(<a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler)<br />
-</pre><pre class="programlisting">int	<a href="#xmlCharEncFirstLine">xmlCharEncFirstLine</a>	(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler, <br />				 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> out, <br />				 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> in)<br />
-</pre><pre class="programlisting">Enum <a name="xmlCharEncoding" id="xmlCharEncoding">xmlCharEncoding</a> {
+</pre><pre class="programlisting">int	<a href="#UTF8Toisolat1">UTF8Toisolat1</a>			(unsigned char * out, <br />					 int * outlen, <br />					 const unsigned char * in, <br />					 int * inlen)</pre>
+<pre class="programlisting">int	<a href="#isolat1ToUTF8">isolat1ToUTF8</a>			(unsigned char * out, <br />					 int * outlen, <br />					 const unsigned char * in, <br />					 int * inlen)</pre>
+<pre class="programlisting">int	<a href="#xmlAddEncodingAlias">xmlAddEncodingAlias</a>		(const char * name, <br />					 const char * alias)</pre>
+<pre class="programlisting">int	<a href="#xmlCharEncCloseFunc">xmlCharEncCloseFunc</a>		(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler)</pre>
+<pre class="programlisting">int	<a href="#xmlCharEncFirstLine">xmlCharEncFirstLine</a>		(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler, <br />					 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> out, <br />					 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> in)</pre>
+<pre class="programlisting">int	<a href="#xmlCharEncInFunc">xmlCharEncInFunc</a>		(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler, <br />					 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> out, <br />					 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> in)</pre>
+<pre class="programlisting">int	<a href="#xmlCharEncOutFunc">xmlCharEncOutFunc</a>		(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler, <br />					 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> out, <br />					 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> in)</pre>
+<pre class="programlisting">Function type: <a href="#xmlCharEncodingInputFunc">xmlCharEncodingInputFunc</a>
+int	<a href="#xmlCharEncodingInputFunc">xmlCharEncodingInputFunc</a>	(unsigned char * out, <br />					 int * outlen, <br />					 const unsigned char * in, <br />					 int * inlen)
+</pre>
+<pre class="programlisting">Function type: <a href="#xmlCharEncodingOutputFunc">xmlCharEncodingOutputFunc</a>
+int	<a href="#xmlCharEncodingOutputFunc">xmlCharEncodingOutputFunc</a>	(unsigned char * out, <br />					 int * outlen, <br />					 const unsigned char * in, <br />					 int * inlen)
+</pre>
+<pre class="programlisting">int	<a href="#xmlCheckUTF8">xmlCheckUTF8</a>			(const unsigned char * utf)</pre>
+<pre class="programlisting">void	<a href="#xmlCleanupCharEncodingHandlers">xmlCleanupCharEncodingHandlers</a>	(void)</pre>
+<pre class="programlisting">void	<a href="#xmlCleanupEncodingAliases">xmlCleanupEncodingAliases</a>	(void)</pre>
+<pre class="programlisting">int	<a href="#xmlDelEncodingAlias">xmlDelEncodingAlias</a>		(const char * alias)</pre>
+<pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a>	<a href="#xmlDetectCharEncoding">xmlDetectCharEncoding</a>	(const unsigned char * in, <br />					 int len)</pre>
+<pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>	<a href="#xmlFindCharEncodingHandler">xmlFindCharEncodingHandler</a>	(const char * name)</pre>
+<pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>	<a href="#xmlGetCharEncodingHandler">xmlGetCharEncodingHandler</a>	(<a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)</pre>
+<pre class="programlisting">const char *	<a href="#xmlGetCharEncodingName">xmlGetCharEncodingName</a>	(<a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)</pre>
+<pre class="programlisting">const char *	<a href="#xmlGetEncodingAlias">xmlGetEncodingAlias</a>	(const char * alias)</pre>
+<pre class="programlisting">int	<a href="#xmlGetUTF8Char">xmlGetUTF8Char</a>			(const unsigned char * utf, <br />					 int * len)</pre>
+<pre class="programlisting">void	<a href="#xmlInitCharEncodingHandlers">xmlInitCharEncodingHandlers</a>	(void)</pre>
+<pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>	<a href="#xmlNewCharEncodingHandler">xmlNewCharEncodingHandler</a>	(const char * name, <br />							 <a href="libxml-encoding.html#xmlCharEncodingInputFunc">xmlCharEncodingInputFunc</a> input, <br />							 <a href="libxml-encoding.html#xmlCharEncodingOutputFunc">xmlCharEncodingOutputFunc</a> output)</pre>
+<pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a>	<a href="#xmlParseCharEncoding">xmlParseCharEncoding</a>	(const char * name)</pre>
+<pre class="programlisting">void	<a href="#xmlRegisterCharEncodingHandler">xmlRegisterCharEncodingHandler</a>	(<a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler)</pre>
+<pre class="programlisting">int	<a href="#xmlUTF8Charcmp">xmlUTF8Charcmp</a>			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf1, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf2)</pre>
+<pre class="programlisting">int	<a href="#xmlUTF8Size">xmlUTF8Size</a>			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf)</pre>
+<pre class="programlisting">int	<a href="#xmlUTF8Strlen">xmlUTF8Strlen</a>			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf)</pre>
+<pre class="programlisting">int	<a href="#xmlUTF8Strloc">xmlUTF8Strloc</a>			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utfchar)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlUTF8Strndup">xmlUTF8Strndup</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />					 int len)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlUTF8Strpos">xmlUTF8Strpos</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />					 int pos)</pre>
+<pre class="programlisting">int	<a href="#xmlUTF8Strsize">xmlUTF8Strsize</a>			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />					 int len)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlUTF8Strsub">xmlUTF8Strsub</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />					 int start, <br />					 int len)</pre>
+<h2>Description</h2>
+<h3><a name="xmlCharEncoding" id="xmlCharEncoding">xmlCharEncoding</a></h3><pre class="programlisting">Enum xmlCharEncoding {
     <a name="XML_CHAR_ENCODING_ERROR" id="XML_CHAR_ENCODING_ERROR">XML_CHAR_ENCODING_ERROR</a> = -1 : No char encoding detected
     <a name="XML_CHAR_ENCODING_NONE" id="XML_CHAR_ENCODING_NONE">XML_CHAR_ENCODING_NONE</a> = 0 : No char encoding detected
     <a name="XML_CHAR_ENCODING_UTF8" id="XML_CHAR_ENCODING_UTF8">XML_CHAR_ENCODING_UTF8</a> = 1 : UTF-8
@@ -70,93 +75,74 @@
     <a name="XML_CHAR_ENCODING_EUC_JP" id="XML_CHAR_ENCODING_EUC_JP">XML_CHAR_ENCODING_EUC_JP</a> = 21 : EUC-JP
     <a name="XML_CHAR_ENCODING_ASCII" id="XML_CHAR_ENCODING_ASCII">XML_CHAR_ENCODING_ASCII</a> = 22 : pure ASCII
 }
-
-</pre><pre class="programlisting">int	<a href="#xmlUTF8Strsize">xmlUTF8Strsize</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />				 int len)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUTF8Charcmp">xmlUTF8Charcmp</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf1, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf2)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUTF8Strlen">xmlUTF8Strlen</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf)<br />
-</pre><pre class="programlisting"><a name="xmlCharEncodingOutputFunc" id="xmlCharEncodingOutputFunc"></a>Function type: xmlCharEncodingOutputFunc
-int	xmlCharEncodingOutputFunc	(unsigned char * out, <br />				 int * outlen, <br />				 const unsigned char * in, <br />				 int * inlen)
-</pre><p>Take a block of UTF-8 chars in and try to convert it to an other encoding. Note: a first call designed to produce heading info is called with in = NULL. If stateful this should also initialize the encoder state.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a pointer to an array of bytes to store the result</td></tr><tr><td><span class="term"><i><tt>outlen</tt></i>:</span></td><td>the length of @out</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to an array of UTF-8 chars</td></tr><tr><td><span class="term"><i><tt>inlen</tt></i>:</span></td><td>the length of @in</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written, or -1 by lack of space, or -2 if the transcoding failed. The value of @inlen after return is the number of octets consumed as the return value is positive, else unpredictiable. The value of @outlen after return is the number of ocetes consumed.</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlUTF8Strndup">xmlUTF8Strndup</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />				 int len)<br />
-</pre><pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a>	<a href="#xmlDetectCharEncoding">xmlDetectCharEncoding</a>	(const unsigned char * in, <br />				 int len)<br />
-</pre><pre class="programlisting">void	<a href="#xmlCleanupEncodingAliases">xmlCleanupEncodingAliases</a>	(void)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlDelEncodingAlias" id="xmlDelEncodingAlias"></a>Function: xmlDelEncodingAlias</h3><pre class="programlisting">int	xmlDelEncodingAlias	(const char * alias)<br />
+</pre><h3><a name="xmlCharEncodingHandler" id="xmlCharEncodingHandler">Structure xmlCharEncodingHandler</a></h3><pre class="programlisting">Structure xmlCharEncodingHandler<br />struct _xmlCharEncodingHandler {
+    char *	name
+    <a href="libxml-encoding.html#xmlCharEncodingInputFunc">xmlCharEncodingInputFunc</a>	input
+    <a href="libxml-encoding.html#xmlCharEncodingOutputFunc">xmlCharEncodingOutputFunc</a>	output
+    iconv_t	iconv_in
+    iconv_t	iconv_out
+}</pre><h3><a name="xmlDelEncodingAlias" id="xmlDelEncodingAlias"></a>Function: xmlDelEncodingAlias</h3><pre class="programlisting">int	xmlDelEncodingAlias		(const char * alias)<br />
 </pre><p>Unregisters an encoding alias @alias</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>alias</tt></i>:</span></td><td>the alias name as parsed, in UTF-8 format (ASCII actually)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlGetEncodingAlias" id="xmlGetEncodingAlias"></a>Function: xmlGetEncodingAlias</h3><pre class="programlisting">const char *	xmlGetEncodingAlias	(const char * alias)<br />
 </pre><p>Lookup an encoding name for the given alias.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>alias</tt></i>:</span></td><td>the alias name as parsed, in UTF-8 format (ASCII actually)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not found the original name otherwise</td></tr></tbody></table></div><h3><a name="xmlUTF8Strloc" id="xmlUTF8Strloc"></a>Function: xmlUTF8Strloc</h3><pre class="programlisting">int	xmlUTF8Strloc	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utfchar)<br />
-</pre><p>a function to provide relative location of a UTF8 char</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>the input UTF8 *</td></tr><tr><td><span class="term"><i><tt>utfchar</tt></i>:</span></td><td>the UTF8 character to be found</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the relative character position of the desired char or -1 if not found</td></tr></tbody></table></div><h3><a name="xmlCleanupCharEncodingHandlers" id="xmlCleanupCharEncodingHandlers"></a>Function: xmlCleanupCharEncodingHandlers</h3><pre class="programlisting">void	xmlCleanupCharEncodingHandlers	(void)<br />
-</pre><p>Cleanup the memory allocated for the char encoding support, it unregisters all the encoding handlers and the aliases.</p>
-<h3><a name="xmlFindCharEncodingHandler" id="xmlFindCharEncodingHandler"></a>Function: xmlFindCharEncodingHandler</h3><pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>	xmlFindCharEncodingHandler	(const char * name)<br />
-</pre><p>Search in the registered set the handler able to read/write that encoding.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>a string describing the char encoding.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the handler or NULL if not found</td></tr></tbody></table></div><h3><a name="xmlCharEncCloseFunc" id="xmlCharEncCloseFunc"></a>Function: xmlCharEncCloseFunc</h3><pre class="programlisting">int	xmlCharEncCloseFunc	(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler)<br />
-</pre><p>Generic front-end for encoding handler close function</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>char enconding transformation data structure</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if success, or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlUTF8Size" id="xmlUTF8Size"></a>Function: xmlUTF8Size</h3><pre class="programlisting">int	xmlUTF8Size	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf)<br />
-</pre><p>calulates the internal size of a UTF8 character</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>pointer to the UTF8 character</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the numbers of bytes in the character, -1 on format error</td></tr></tbody></table></div><h3><a name="xmlParseCharEncoding" id="xmlParseCharEncoding"></a>Function: xmlParseCharEncoding</h3><pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a>	xmlParseCharEncoding	(const char * name)<br />
-</pre><p>Compare the string to the known encoding schemes already known. Note that the comparison is case insensitive accordingly to the section [XML] 4.3.3 Character Encoding in Entities.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the encoding name as parsed, in UTF-8 format (ASCII actually)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>one of the XML_CHAR_ENCODING_... values or <a href="libxml-encoding.html#XML_CHAR_ENCODING_NONE">XML_CHAR_ENCODING_NONE</a> if not recognized.</td></tr></tbody></table></div><h3><a name="xmlUTF8Strpos" id="xmlUTF8Strpos"></a>Function: xmlUTF8Strpos</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlUTF8Strpos	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />				 int pos)<br />
-</pre><p>a function to provide the equivalent of fetching a character from a string array</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>the input UTF8 *</td></tr><tr><td><span class="term"><i><tt>pos</tt></i>:</span></td><td>the position of the desired UTF8 char (in chars)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the UTF8 character or NULL</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-    <h3><a name="xmlGetCharEncodingName" id="xmlGetCharEncodingName"></a>Function: xmlGetCharEncodingName</h3><pre class="programlisting">const char *	xmlGetCharEncodingName	(<a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><p>The &quot;canonical&quot; name for XML encoding. C.f. http://www.w3.org/TR/REC-xml#charencoding Section 4.3.3 Character Encoding in Entities</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the encoding</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the canonical name for the given encoding</td></tr></tbody></table></div><h3><a name="xmlCheckUTF8" id="xmlCheckUTF8"></a>Function: xmlCheckUTF8</h3><pre class="programlisting">int	xmlCheckUTF8	(const unsigned char * utf)<br />
-</pre><p>Checks @utf for being valid utf-8. @utf is assumed to be null-terminated. This function is not super-strict, as it will allow longer utf-8 sequences than necessary. Note that Java is capable of producing these sequences if provoked. Also note, this routine checks for the 4-byte maximum size, but does not check for 0x10ffff maximum value.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>Pointer to putative utf-8 encoded string.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>value: true if @utf is valid.</td></tr></tbody></table></div><h3><a name="UTF8Toisolat1" id="UTF8Toisolat1"></a>Function: UTF8Toisolat1</h3><pre class="programlisting">int	UTF8Toisolat1	(unsigned char * out, <br />				 int * outlen, <br />				 const unsigned char * in, <br />				 int * inlen)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>alias</tt></i>:</span></td><td>the alias name as parsed, in UTF-8 format (ASCII actually)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not found the original name otherwise</td></tr></tbody></table></div><h3><a name="UTF8Toisolat1" id="UTF8Toisolat1"></a>Function: UTF8Toisolat1</h3><pre class="programlisting">int	UTF8Toisolat1			(unsigned char * out, <br />					 int * outlen, <br />					 const unsigned char * in, <br />					 int * inlen)<br />
 </pre><p>Take a block of UTF-8 chars in and try to convert it to an ISO Latin 1 block of chars out.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a pointer to an array of bytes to store the result</td></tr><tr><td><span class="term"><i><tt>outlen</tt></i>:</span></td><td>the length of @out</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to an array of UTF-8 chars</td></tr><tr><td><span class="term"><i><tt>inlen</tt></i>:</span></td><td>the length of @in</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if success, -2 if the transcoding fails, or -1 otherwise The value of @inlen after return is the number of octets consumed as the return value is positive, else unpredictable. The value of @outlen after return is the number of ocetes consumed.</td></tr></tbody></table></div><h3><a name="xmlCharEncInFunc" id="xmlCharEncInFunc"></a>Function: xmlCharEncInFunc</h3><pre class="programlisting">int	xmlCharEncInFunc	(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler, <br />				 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> out, <br />				 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> in)<br />
-</pre><p>Generic front-end for the encoding handler input function</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>char encoding transformation data structure</td></tr><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a> for the output.</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a> for the input</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written if success, or -1 general error -2 if the transcoding fails (for *in is not valid utf8 string or the result of transformation can't fit into the encoding we want), or</td></tr></tbody></table></div><h3><a name="xmlAddEncodingAlias" id="xmlAddEncodingAlias"></a>Function: xmlAddEncodingAlias</h3><pre class="programlisting">int	xmlAddEncodingAlias	(const char * name, <br />				 const char * alias)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a pointer to an array of bytes to store the result</td></tr><tr><td><span class="term"><i><tt>outlen</tt></i>:</span></td><td>the length of @out</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to an array of UTF-8 chars</td></tr><tr><td><span class="term"><i><tt>inlen</tt></i>:</span></td><td>the length of @in</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if success, -2 if the transcoding fails, or -1 otherwise The value of @inlen after return is the number of octets consumed as the return value is positive, else unpredictable. The value of @outlen after return is the number of ocetes consumed.</td></tr></tbody></table></div><h3><a name="xmlUTF8Strloc" id="xmlUTF8Strloc"></a>Function: xmlUTF8Strloc</h3><pre class="programlisting">int	xmlUTF8Strloc			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utfchar)<br />
+</pre><p>a function to provide relative location of a UTF8 char</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>the input UTF8 *</td></tr><tr><td><span class="term"><i><tt>utfchar</tt></i>:</span></td><td>the UTF8 character to be found</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the relative character position of the desired char or -1 if not found</td></tr></tbody></table></div><h3><a name="xmlAddEncodingAlias" id="xmlAddEncodingAlias"></a>Function: xmlAddEncodingAlias</h3><pre class="programlisting">int	xmlAddEncodingAlias		(const char * name, <br />					 const char * alias)<br />
 </pre><p>Registers and alias @alias for an encoding named @name. Existing alias will be overwritten.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the encoding name as parsed, in UTF-8 format (ASCII actually)</td></tr><tr><td><span class="term"><i><tt>alias</tt></i>:</span></td><td>the alias name as parsed, in UTF-8 format (ASCII actually)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlCharEncOutFunc" id="xmlCharEncOutFunc"></a>Function: xmlCharEncOutFunc</h3><pre class="programlisting">int	xmlCharEncOutFunc	(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler, <br />				 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> out, <br />				 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> in)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the encoding name as parsed, in UTF-8 format (ASCII actually)</td></tr><tr><td><span class="term"><i><tt>alias</tt></i>:</span></td><td>the alias name as parsed, in UTF-8 format (ASCII actually)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlCharEncOutFunc" id="xmlCharEncOutFunc"></a>Function: xmlCharEncOutFunc</h3><pre class="programlisting">int	xmlCharEncOutFunc		(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler, <br />					 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> out, <br />					 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> in)<br />
 </pre><p>Generic front-end for the encoding handler output function a first call with @in == NULL has to be made firs to initiate the output in case of non-stateless encoding needing to initiate their state or the output (like the BOM in UTF16). In case of UTF8 sequence conversion errors for the given encoder, the content will be automatically remapped to a CharRef sequence.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>char enconding transformation data structure</td></tr><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a> for the output.</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a> for the input</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written if success, or -1 general error -2 if the transcoding fails (for *in is not valid utf8 string or the result of transformation can't fit into the encoding we want), or</td></tr></tbody></table></div>
-      Take a block of chars in the original encoding and try to convert it to an UTF-8 block of chars out.
-      
-      
-      
-      
-      
-    <h3><a name="xmlGetCharEncodingHandler" id="xmlGetCharEncodingHandler"></a>Function: xmlGetCharEncodingHandler</h3><pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>	xmlGetCharEncodingHandler	(<a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><p>Search in the registered set the handler able to read/write that encoding.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>an <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> value.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the handler or NULL if not found</td></tr></tbody></table></div><h3><a name="xmlUTF8Strsub" id="xmlUTF8Strsub"></a>Function: xmlUTF8Strsub</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlUTF8Strsub	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />				 int start, <br />				 int len)<br />
-</pre><p>Note: positions are given in units of UTF-8 chars</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>a sequence of UTF-8 encoded bytes</td></tr><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>relative pos of first char</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>total number to copy</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to a newly created string or NULL if any problem</td></tr></tbody></table></div><h3><a name="xmlGetUTF8Char" id="xmlGetUTF8Char"></a>Function: xmlGetUTF8Char</h3><pre class="programlisting">int	xmlGetUTF8Char	(const unsigned char * utf, <br />				 int * len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>char enconding transformation data structure</td></tr><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a> for the output.</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a> for the input</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written if success, or -1 general error -2 if the transcoding fails (for *in is not valid utf8 string or the result of transformation can't fit into the encoding we want), or</td></tr></tbody></table></div><h3><a name="xmlCharEncodingInputFunc" id="xmlCharEncodingInputFunc"></a>Function type: xmlCharEncodingInputFunc</h3><pre class="programlisting">Function type: xmlCharEncodingInputFunc
+int	xmlCharEncodingInputFunc	(unsigned char * out, <br />					 int * outlen, <br />					 const unsigned char * in, <br />					 int * inlen)
+</pre><p>Take a block of chars in the original encoding and try to convert it to an UTF-8 block of chars out.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a pointer to an array of bytes to store the UTF-8 result</td></tr><tr><td><span class="term"><i><tt>outlen</tt></i>:</span></td><td>the length of @out</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to an array of chars in the original encoding</td></tr><tr><td><span class="term"><i><tt>inlen</tt></i>:</span></td><td>the length of @in</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written, or -1 by lack of space, or -2 if the transcoding failed. The value of @inlen after return is the number of octets consumed as the return value is positive, else unpredictiable. The value of @outlen after return is the number of octets consumed.</td></tr></tbody></table></div><br />
+<h3><a name="xmlCleanupCharEncodingHandlers" id="xmlCleanupCharEncodingHandlers"></a>Function: xmlCleanupCharEncodingHandlers</h3><pre class="programlisting">void	xmlCleanupCharEncodingHandlers	(void)<br />
+</pre><p>Cleanup the memory allocated for the char encoding support, it unregisters all the encoding handlers and the aliases.</p>
+<h3><a name="xmlGetUTF8Char" id="xmlGetUTF8Char"></a>Function: xmlGetUTF8Char</h3><pre class="programlisting">int	xmlGetUTF8Char			(const unsigned char * utf, <br />					 int * len)<br />
 </pre><p>Read one UTF8 Char from @utf</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>a sequence of UTF-8 encoded bytes</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>a pointer to @bytes len</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the char value or -1 in case of error and update @len with the number of bytes used</td></tr></tbody></table></div><h3><a name="isolat1ToUTF8" id="isolat1ToUTF8"></a>Function: isolat1ToUTF8</h3><pre class="programlisting">int	isolat1ToUTF8	(unsigned char * out, <br />				 int * outlen, <br />				 const unsigned char * in, <br />				 int * inlen)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>a sequence of UTF-8 encoded bytes</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>a pointer to @bytes len</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the char value or -1 in case of error and update @len with the number of bytes used</td></tr></tbody></table></div><h3><a name="isolat1ToUTF8" id="isolat1ToUTF8"></a>Function: isolat1ToUTF8</h3><pre class="programlisting">int	isolat1ToUTF8			(unsigned char * out, <br />					 int * outlen, <br />					 const unsigned char * in, <br />					 int * inlen)<br />
 </pre><p>Take a block of ISO Latin 1 chars in and try to convert it to an UTF-8 block of chars out.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a pointer to an array of bytes to store the result</td></tr><tr><td><span class="term"><i><tt>outlen</tt></i>:</span></td><td>the length of @out</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to an array of ISO Latin 1 chars</td></tr><tr><td><span class="term"><i><tt>inlen</tt></i>:</span></td><td>the length of @in</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if success, or -1 otherwise The value of @inlen after return is the number of octets consumed as the return value is positive, else unpredictable. The value of @outlen after return is the number of ocetes consumed.</td></tr></tbody></table></div><h3><a name="xmlNewCharEncodingHandler" id="xmlNewCharEncodingHandler"></a>Function: xmlNewCharEncodingHandler</h3><pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>	xmlNewCharEncodingHandler	(const char * name, <br />				 <a href="libxml-encoding.html#xmlCharEncodingInputFunc">xmlCharEncodingInputFunc</a> input, <br />				 <a href="libxml-encoding.html#xmlCharEncodingOutputFunc">xmlCharEncodingOutputFunc</a> output)<br />
-</pre><p>Create and registers an xmlCharEncodingHandler.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the encoding name, in UTF-8 format (ASCII actually)</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>the <a href="libxml-encoding.html#xmlCharEncodingInputFunc">xmlCharEncodingInputFunc</a> to read that encoding</td></tr><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the <a href="libxml-encoding.html#xmlCharEncodingOutputFunc">xmlCharEncodingOutputFunc</a> to write that encoding</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> created (or NULL in case of error).</td></tr></tbody></table></div><h3><a name="xmlInitCharEncodingHandlers" id="xmlInitCharEncodingHandlers"></a>Function: xmlInitCharEncodingHandlers</h3><pre class="programlisting">void	xmlInitCharEncodingHandlers	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a pointer to an array of bytes to store the result</td></tr><tr><td><span class="term"><i><tt>outlen</tt></i>:</span></td><td>the length of @out</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to an array of ISO Latin 1 chars</td></tr><tr><td><span class="term"><i><tt>inlen</tt></i>:</span></td><td>the length of @in</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if success, or -1 otherwise The value of @inlen after return is the number of octets consumed as the return value is positive, else unpredictable. The value of @outlen after return is the number of ocetes consumed.</td></tr></tbody></table></div><h3><a name="xmlFindCharEncodingHandler" id="xmlFindCharEncodingHandler"></a>Function: xmlFindCharEncodingHandler</h3><pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>	xmlFindCharEncodingHandler	(const char * name)<br />
+</pre><p>Search in the registered set the handler able to read/write that encoding.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>a string describing the char encoding.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the handler or NULL if not found</td></tr></tbody></table></div><h3><a name="xmlInitCharEncodingHandlers" id="xmlInitCharEncodingHandlers"></a>Function: xmlInitCharEncodingHandlers</h3><pre class="programlisting">void	xmlInitCharEncodingHandlers	(void)<br />
 </pre><p>Initialize the char encoding support, it registers the default encoding supported. NOTE: while public, this function usually doesn't need to be called in normal processing.</p>
 <h3><a name="xmlRegisterCharEncodingHandler" id="xmlRegisterCharEncodingHandler"></a>Function: xmlRegisterCharEncodingHandler</h3><pre class="programlisting">void	xmlRegisterCharEncodingHandler	(<a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler)<br />
 </pre><p>Register the char encoding handler, surprising, isn't it ?</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler block</td></tr></tbody></table></div><h3><a name="xmlCharEncFirstLine" id="xmlCharEncFirstLine"></a>Function: xmlCharEncFirstLine</h3><pre class="programlisting">int	xmlCharEncFirstLine	(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler, <br />				 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> out, <br />				 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> in)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler block</td></tr></tbody></table></div><h3><a name="xmlCharEncFirstLine" id="xmlCharEncFirstLine"></a>Function: xmlCharEncFirstLine</h3><pre class="programlisting">int	xmlCharEncFirstLine		(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler, <br />					 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> out, <br />					 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> in)<br />
 </pre><p>Front-end for the encoding handler input function, but handle only the very first line, i.e. limit itself to 45 chars.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>char enconding transformation data structure</td></tr><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a> for the output.</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a> for the input</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written if success, or -1 general error -2 if the transcoding fails (for *in is not valid utf8 string or the result of transformation can't fit into the encoding we want), or</td></tr></tbody></table></div><h3><a name="xmlUTF8Strsize" id="xmlUTF8Strsize"></a>Function: xmlUTF8Strsize</h3><pre class="programlisting">int	xmlUTF8Strsize	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />				 int len)<br />
-</pre><p>storage size of an UTF8 string</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>a sequence of UTF-8 encoded bytes</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-SAX.html#characters">characters</a> in the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the storage size of the first 'len' <a href="libxml-SAX.html#characters">characters</a> of ARRAY</td></tr></tbody></table></div><h3><a name="xmlUTF8Charcmp" id="xmlUTF8Charcmp"></a>Function: xmlUTF8Charcmp</h3><pre class="programlisting">int	xmlUTF8Charcmp	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf1, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf2)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>char enconding transformation data structure</td></tr><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a> for the output.</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a> for the input</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written if success, or -1 general error -2 if the transcoding fails (for *in is not valid utf8 string or the result of transformation can't fit into the encoding we want), or</td></tr></tbody></table></div><h3><a name="xmlCharEncCloseFunc" id="xmlCharEncCloseFunc"></a>Function: xmlCharEncCloseFunc</h3><pre class="programlisting">int	xmlCharEncCloseFunc		(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler)<br />
+</pre><p>Generic front-end for encoding handler close function</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>char enconding transformation data structure</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if success, or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlCheckUTF8" id="xmlCheckUTF8"></a>Function: xmlCheckUTF8</h3><pre class="programlisting">int	xmlCheckUTF8			(const unsigned char * utf)<br />
+</pre><p>Checks @utf for being valid utf-8. @utf is assumed to be null-terminated. This function is not super-strict, as it will allow longer utf-8 sequences than necessary. Note that Java is capable of producing these sequences if provoked. Also note, this routine checks for the 4-byte maximum size, but does not check for 0x10ffff maximum value.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>Pointer to putative utf-8 encoded string.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>value: true if @utf is valid.</td></tr></tbody></table></div><h3><a name="xmlUTF8Charcmp" id="xmlUTF8Charcmp"></a>Function: xmlUTF8Charcmp</h3><pre class="programlisting">int	xmlUTF8Charcmp			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf1, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf2)<br />
 </pre><p>compares the two UCS4 values</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf1</tt></i>:</span></td><td>pointer to first UTF8 char</td></tr><tr><td><span class="term"><i><tt>utf2</tt></i>:</span></td><td>pointer to second UTF8 char</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>result of the compare as with <a href="libxml-parser.html#xmlStrncmp">xmlStrncmp</a></td></tr></tbody></table></div><h3><a name="xmlUTF8Strlen" id="xmlUTF8Strlen"></a>Function: xmlUTF8Strlen</h3><pre class="programlisting">int	xmlUTF8Strlen	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf1</tt></i>:</span></td><td>pointer to first UTF8 char</td></tr><tr><td><span class="term"><i><tt>utf2</tt></i>:</span></td><td>pointer to second UTF8 char</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>result of the compare as with <a href="libxml-parser.html#xmlStrncmp">xmlStrncmp</a></td></tr></tbody></table></div><h3><a name="xmlUTF8Strlen" id="xmlUTF8Strlen"></a>Function: xmlUTF8Strlen</h3><pre class="programlisting">int	xmlUTF8Strlen			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf)<br />
 </pre><p>compute the length of an UTF8 string, it doesn't do a full UTF8 checking of the content of the string.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>a sequence of UTF-8 encoded bytes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of <a href="libxml-SAX.html#characters">characters</a> in the string or -1 in case of error</td></tr></tbody></table></div>
-      Take a block of UTF-8 chars in and try to convert it to an other encoding. Note: a first call designed to produce heading info is called with in = NULL. If stateful this should also initialize the encoder state.
-      
-      
-      
-      
-      
-    <h3><a name="xmlUTF8Strndup" id="xmlUTF8Strndup"></a>Function: xmlUTF8Strndup</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlUTF8Strndup	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />				 int len)<br />
-</pre><p>a strndup for array of UTF8's</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>the input UTF8 *</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the len of @utf (in chars)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new UTF8 * or NULL</td></tr></tbody></table></div><h3><a name="xmlDetectCharEncoding" id="xmlDetectCharEncoding"></a>Function: xmlDetectCharEncoding</h3><pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a>	xmlDetectCharEncoding	(const unsigned char * in, <br />				 int len)<br />
-</pre><p>Guess the encoding of the entity using the first bytes of the entity content accordingly of the non-normative appendix F of the XML-1.0 recommendation.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to the first bytes of the XML entity, must be at least 4 bytes long.</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>pointer to the length of the buffer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>one of the XML_CHAR_ENCODING_... values.</td></tr></tbody></table></div><h3><a name="xmlCleanupEncodingAliases" id="xmlCleanupEncodingAliases"></a>Function: xmlCleanupEncodingAliases</h3><pre class="programlisting">void	xmlCleanupEncodingAliases	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>a sequence of UTF-8 encoded bytes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of <a href="libxml-SAX.html#characters">characters</a> in the string or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlUTF8Size" id="xmlUTF8Size"></a>Function: xmlUTF8Size</h3><pre class="programlisting">int	xmlUTF8Size			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf)<br />
+</pre><p>calulates the internal size of a UTF8 character</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>pointer to the UTF8 character</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the numbers of bytes in the character, -1 on format error</td></tr></tbody></table></div><h3><a name="xmlCleanupEncodingAliases" id="xmlCleanupEncodingAliases"></a>Function: xmlCleanupEncodingAliases</h3><pre class="programlisting">void	xmlCleanupEncodingAliases	(void)<br />
 </pre><p>Unregisters all aliases</p>
-<p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<h3><a name="xmlUTF8Strsub" id="xmlUTF8Strsub"></a>Function: xmlUTF8Strsub</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlUTF8Strsub		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />					 int start, <br />					 int len)<br />
+</pre><p>Note: positions are given in units of UTF-8 chars</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>a sequence of UTF-8 encoded bytes</td></tr><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>relative pos of first char</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>total number to copy</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to a newly created string or NULL if any problem</td></tr></tbody></table></div><h3><a name="xmlUTF8Strpos" id="xmlUTF8Strpos"></a>Function: xmlUTF8Strpos</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlUTF8Strpos		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />					 int pos)<br />
+</pre><p>a function to provide the equivalent of fetching a character from a string array</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>the input UTF8 *</td></tr><tr><td><span class="term"><i><tt>pos</tt></i>:</span></td><td>the position of the desired UTF8 char (in chars)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the UTF8 character or NULL</td></tr></tbody></table></div><h3><a name="xmlParseCharEncoding" id="xmlParseCharEncoding"></a>Function: xmlParseCharEncoding</h3><pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a>	xmlParseCharEncoding	(const char * name)<br />
+</pre><p>Compare the string to the known encoding schemes already known. Note that the comparison is case insensitive accordingly to the section [XML] 4.3.3 Character Encoding in Entities.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the encoding name as parsed, in UTF-8 format (ASCII actually)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>one of the XML_CHAR_ENCODING_... values or <a href="libxml-encoding.html#XML_CHAR_ENCODING_NONE">XML_CHAR_ENCODING_NONE</a> if not recognized.</td></tr></tbody></table></div><h3><a name="xmlCharEncodingOutputFunc" id="xmlCharEncodingOutputFunc"></a>Function type: xmlCharEncodingOutputFunc</h3><pre class="programlisting">Function type: xmlCharEncodingOutputFunc
+int	xmlCharEncodingOutputFunc	(unsigned char * out, <br />					 int * outlen, <br />					 const unsigned char * in, <br />					 int * inlen)
+</pre><p>Take a block of UTF-8 chars in and try to convert it to an other encoding. Note: a first call designed to produce heading info is called with in = NULL. If stateful this should also initialize the encoder state.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a pointer to an array of bytes to store the result</td></tr><tr><td><span class="term"><i><tt>outlen</tt></i>:</span></td><td>the length of @out</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to an array of UTF-8 chars</td></tr><tr><td><span class="term"><i><tt>inlen</tt></i>:</span></td><td>the length of @in</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written, or -1 by lack of space, or -2 if the transcoding failed. The value of @inlen after return is the number of octets consumed as the return value is positive, else unpredictiable. The value of @outlen after return is the number of ocetes consumed.</td></tr></tbody></table></div><br />
+<h3><a name="xmlUTF8Strndup" id="xmlUTF8Strndup"></a>Function: xmlUTF8Strndup</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlUTF8Strndup		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />					 int len)<br />
+</pre><p>a strndup for array of UTF8's</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>the input UTF8 *</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the len of @utf (in chars)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new UTF8 * or NULL</td></tr></tbody></table></div><h3><a name="xmlGetCharEncodingName" id="xmlGetCharEncodingName"></a>Function: xmlGetCharEncodingName</h3><pre class="programlisting">const char *	xmlGetCharEncodingName	(<a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
+</pre><p>The &quot;canonical&quot; name for XML encoding. C.f. http://www.w3.org/TR/REC-xml#charencoding Section 4.3.3 Character Encoding in Entities</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the encoding</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the canonical name for the given encoding</td></tr></tbody></table></div><h3><a name="xmlCharEncInFunc" id="xmlCharEncInFunc"></a>Function: xmlCharEncInFunc</h3><pre class="programlisting">int	xmlCharEncInFunc		(<a href="libxml-encoding.html#xmlCharEncodingHandler">xmlCharEncodingHandler</a> * handler, <br />					 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> out, <br />					 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> in)<br />
+</pre><p>Generic front-end for the encoding handler input function</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>char encoding transformation data structure</td></tr><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a> for the output.</td></tr><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a> for the input</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written if success, or -1 general error -2 if the transcoding fails (for *in is not valid utf8 string or the result of transformation can't fit into the encoding we want), or</td></tr></tbody></table></div><h3><a name="xmlGetCharEncodingHandler" id="xmlGetCharEncodingHandler"></a>Function: xmlGetCharEncodingHandler</h3><pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>	xmlGetCharEncodingHandler	(<a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
+</pre><p>Search in the registered set the handler able to read/write that encoding.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>an <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> value.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the handler or NULL if not found</td></tr></tbody></table></div><h3><a name="xmlUTF8Strsize" id="xmlUTF8Strsize"></a>Function: xmlUTF8Strsize</h3><pre class="programlisting">int	xmlUTF8Strsize			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * utf, <br />					 int len)<br />
+</pre><p>storage size of an UTF8 string</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>utf</tt></i>:</span></td><td>a sequence of UTF-8 encoded bytes</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-SAX.html#characters">characters</a> in the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the storage size of the first 'len' <a href="libxml-SAX.html#characters">characters</a> of ARRAY</td></tr></tbody></table></div><h3><a name="xmlDetectCharEncoding" id="xmlDetectCharEncoding"></a>Function: xmlDetectCharEncoding</h3><pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a>	xmlDetectCharEncoding	(const unsigned char * in, <br />					 int len)<br />
+</pre><p>Guess the encoding of the entity using the first bytes of the entity content accordingly of the non-normative appendix F of the XML-1.0 recommendation.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a pointer to the first bytes of the XML entity, must be at least 4 bytes long.</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>pointer to the length of the buffer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>one of the XML_CHAR_ENCODING_... values.</td></tr></tbody></table></div><h3><a name="xmlNewCharEncodingHandler" id="xmlNewCharEncodingHandler"></a>Function: xmlNewCharEncodingHandler</h3><pre class="programlisting"><a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>	xmlNewCharEncodingHandler	(const char * name, <br />							 <a href="libxml-encoding.html#xmlCharEncodingInputFunc">xmlCharEncodingInputFunc</a> input, <br />							 <a href="libxml-encoding.html#xmlCharEncodingOutputFunc">xmlCharEncodingOutputFunc</a> output)<br />
+</pre><p>Create and registers an xmlCharEncodingHandler.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the encoding name, in UTF-8 format (ASCII actually)</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>the <a href="libxml-encoding.html#xmlCharEncodingInputFunc">xmlCharEncodingInputFunc</a> to read that encoding</td></tr><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the <a href="libxml-encoding.html#xmlCharEncodingOutputFunc">xmlCharEncodingOutputFunc</a> to write that encoding</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> created (or NULL in case of error).</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-entities.html b/doc/html/libxml-entities.html
index 60fca2e..eb63bba 100644
--- a/doc/html/libxml-entities.html
+++ b/doc/html/libxml-entities.html
@@ -10,21 +10,28 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module entities from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module entities from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-encoding.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-encoding.html">encoding</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-globals.html">globals</a></th><td><a accesskey="n" href="libxml-globals.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this module provides some of the entity API needed for the parser and applications. </p><h2>Table of Contents</h2><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlAddDocEntity">xmlAddDocEntity</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlGetDtdEntity">xmlGetDtdEntity</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlAddDtdEntity">xmlAddDtdEntity</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeEntitiesTable">xmlFreeEntitiesTable</a>	(<a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> table)<br />
-</pre><pre class="programlisting">Structure <a name="xmlEntitiesTable" id="xmlEntitiesTable">xmlEntitiesTable</a><br />struct _xmlHashTable {
+    </style><title>Module entities from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module entities from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-encoding.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-encoding.html">encoding</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-globals.html">globals</a></th><td><a accesskey="n" href="libxml-globals.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this module provides some of the entity API needed for the parser and applications. </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xmlEntitiesTable">xmlEntitiesTable</a><br />struct _xmlHashTable
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlEncodeSpecialChars">xmlEncodeSpecialChars</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * input)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlGetDocEntity">xmlGetDocEntity</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlEncodeEntities">xmlEncodeEntities</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * input)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlGetPredefinedEntity">xmlGetPredefinedEntity</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">void	<a href="#xmlInitializePredefinedEntities">xmlInitializePredefinedEntities</a>	(void)<br />
 </pre><pre class="programlisting">Typedef <a href="libxml-entities.html#xmlEntitiesTable">xmlEntitiesTable</a> * <a name="xmlEntitiesTablePtr" id="xmlEntitiesTablePtr">xmlEntitiesTablePtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlEncodeEntitiesReentrant">xmlEncodeEntitiesReentrant</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * input)<br />
-</pre><pre class="programlisting">Enum <a name="xmlEntityType" id="xmlEntityType">xmlEntityType</a> {
+</pre><pre class="programlisting">Enum <a href="#xmlEntityType">xmlEntityType</a>
+</pre><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlAddDocEntity">xmlAddDocEntity</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlAddDtdEntity">xmlAddDtdEntity</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">void	<a href="#xmlCleanupPredefinedEntities">xmlCleanupPredefinedEntities</a>	(void)</pre>
+<pre class="programlisting"><a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a>	<a href="#xmlCopyEntitiesTable">xmlCopyEntitiesTable</a>	(<a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> table)</pre>
+<pre class="programlisting"><a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a>	<a href="#xmlCreateEntitiesTable">xmlCreateEntitiesTable</a>	(void)</pre>
+<pre class="programlisting">void	<a href="#xmlDumpEntitiesTable">xmlDumpEntitiesTable</a>		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> table)</pre>
+<pre class="programlisting">void	<a href="#xmlDumpEntityDecl">xmlDumpEntityDecl</a>		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> ent)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlEncodeEntities">xmlEncodeEntities</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * input)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlEncodeEntitiesReentrant">xmlEncodeEntitiesReentrant</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * input)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlEncodeSpecialChars">xmlEncodeSpecialChars</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * input)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeEntitiesTable">xmlFreeEntitiesTable</a>		(<a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> table)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlGetDocEntity">xmlGetDocEntity</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlGetDtdEntity">xmlGetDtdEntity</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlGetParameterEntity">xmlGetParameterEntity</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlGetPredefinedEntity">xmlGetPredefinedEntity</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">void	<a href="#xmlInitializePredefinedEntities">xmlInitializePredefinedEntities</a>	(void)</pre>
+<h2>Description</h2>
+<h3><a name="xmlEntityType" id="xmlEntityType">xmlEntityType</a></h3><pre class="programlisting">Enum xmlEntityType {
     <a name="XML_INTERNAL_GENERAL_ENTITY" id="XML_INTERNAL_GENERAL_ENTITY">XML_INTERNAL_GENERAL_ENTITY</a> = 1
     <a name="XML_EXTERNAL_GENERAL_PARSED_ENTITY" id="XML_EXTERNAL_GENERAL_PARSED_ENTITY">XML_EXTERNAL_GENERAL_PARSED_ENTITY</a> = 2
     <a name="XML_EXTERNAL_GENERAL_UNPARSED_ENTITY" id="XML_EXTERNAL_GENERAL_UNPARSED_ENTITY">XML_EXTERNAL_GENERAL_UNPARSED_ENTITY</a> = 3
@@ -32,44 +39,38 @@
     <a name="XML_EXTERNAL_PARAMETER_ENTITY" id="XML_EXTERNAL_PARAMETER_ENTITY">XML_EXTERNAL_PARAMETER_ENTITY</a> = 5
     <a name="XML_INTERNAL_PREDEFINED_ENTITY" id="XML_INTERNAL_PREDEFINED_ENTITY">XML_INTERNAL_PREDEFINED_ENTITY</a> = 6
 }
-
-</pre><pre class="programlisting"><a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a>	<a href="#xmlCopyEntitiesTable">xmlCopyEntitiesTable</a>	(<a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> table)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlGetParameterEntity">xmlGetParameterEntity</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDumpEntitiesTable">xmlDumpEntitiesTable</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> table)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDumpEntityDecl">xmlDumpEntityDecl</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> ent)<br />
-</pre><pre class="programlisting">void	<a href="#xmlCleanupPredefinedEntities">xmlCleanupPredefinedEntities</a>	(void)<br />
-</pre><pre class="programlisting"><a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a>	<a href="#xmlCreateEntitiesTable">xmlCreateEntitiesTable</a>	(void)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlAddDocEntity" id="xmlAddDocEntity"></a>Function: xmlAddDocEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlAddDocEntity	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+</pre><h3><a name="xmlEntitiesTable" id="xmlEntitiesTable">Structure xmlEntitiesTable</a></h3><pre class="programlisting">Structure xmlEntitiesTable<br />struct _xmlHashTable {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlAddDocEntity" id="xmlAddDocEntity"></a>Function: xmlAddDocEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlAddDocEntity		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p>Register a new entity for this document.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the entity type XML_xxx_yyy_ENTITY</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the entity external ID if available</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the entity system ID if available</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the entity content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the entity or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlGetDtdEntity" id="xmlGetDtdEntity"></a>Function: xmlGetDtdEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlGetDtdEntity	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Do an entity lookup in the DTD entity hash table and</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document referencing the entity</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the corresponding entity, if found. Note: the first argument is the document node, not the DTD node. Returns A pointer to the entity structure or NULL if not found.</td></tr></tbody></table></div><h3><a name="xmlAddDtdEntity" id="xmlAddDtdEntity"></a>Function: xmlAddDtdEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlAddDtdEntity	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><p>Register a new entity for this document DTD external subset.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the entity type XML_xxx_yyy_ENTITY</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the entity external ID if available</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the entity system ID if available</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the entity content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the entity or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlFreeEntitiesTable" id="xmlFreeEntitiesTable"></a>Function: xmlFreeEntitiesTable</h3><pre class="programlisting">void	xmlFreeEntitiesTable	(<a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> table)<br />
-</pre><p>Deallocate the memory used by an entities hash table.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An entity table</td></tr></tbody></table></div><h3><a name="xmlEncodeSpecialChars" id="xmlEncodeSpecialChars"></a>Function: xmlEncodeSpecialChars</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlEncodeSpecialChars	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * input)<br />
-</pre><p>Do a global encoding of a string, replacing the predefined entities this routine is reentrant, and result must be deallocated.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document containing the string</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>A string to convert to XML.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>A newly allocated string with the substitution done.</td></tr></tbody></table></div><h3><a name="xmlGetDocEntity" id="xmlGetDocEntity"></a>Function: xmlGetDocEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlGetDocEntity	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Do an entity lookup in the document entity hash table and</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document referencing the entity</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the corresponding entity, otherwise a lookup is done in the predefined entities too. Returns A pointer to the entity structure or NULL if not found.</td></tr></tbody></table></div><h3><a name="xmlEncodeEntities" id="xmlEncodeEntities"></a>Function: xmlEncodeEntities</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlEncodeEntities	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * input)<br />
-</pre><p>TODO: remove xmlEncodeEntities, once we are not afraid of breaking binary compatibility People must migrate their code to <a href="libxml-entities.html#xmlEncodeEntitiesReentrant">xmlEncodeEntitiesReentrant</a> ! This routine will issue a warning when encountered.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document containing the string</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>A string to convert to XML.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL</td></tr></tbody></table></div><h3><a name="xmlGetPredefinedEntity" id="xmlGetPredefinedEntity"></a>Function: xmlGetPredefinedEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlGetPredefinedEntity	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Check whether this name is an predefined entity.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the entity</td></tr></tbody></table></div><h3><a name="xmlInitializePredefinedEntities" id="xmlInitializePredefinedEntities"></a>Function: xmlInitializePredefinedEntities</h3><pre class="programlisting">void	xmlInitializePredefinedEntities	(void)<br />
-</pre><p>Set up the predefined entities. Deprecated call</p>
-<h3><a name="xmlEncodeEntitiesReentrant" id="xmlEncodeEntitiesReentrant"></a>Function: xmlEncodeEntitiesReentrant</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlEncodeEntitiesReentrant	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * input)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the entity type XML_xxx_yyy_ENTITY</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the entity external ID if available</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the entity system ID if available</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the entity content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the entity or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlEncodeEntitiesReentrant" id="xmlEncodeEntitiesReentrant"></a>Function: xmlEncodeEntitiesReentrant</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlEncodeEntitiesReentrant	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * input)<br />
 </pre><p>Do a global encoding of a string, replacing the predefined entities and non ASCII values with their entities and CharRef counterparts. Contrary to xmlEncodeEntities, this routine is reentrant, and result must be deallocated.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document containing the string</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>A string to convert to XML.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>A newly allocated string with the substitution done.</td></tr></tbody></table></div><h3><a name="xmlCopyEntitiesTable" id="xmlCopyEntitiesTable"></a>Function: xmlCopyEntitiesTable</h3><pre class="programlisting"><a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a>	xmlCopyEntitiesTable	(<a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> table)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document containing the string</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>A string to convert to XML.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>A newly allocated string with the substitution done.</td></tr></tbody></table></div><h3><a name="xmlCreateEntitiesTable" id="xmlCreateEntitiesTable"></a>Function: xmlCreateEntitiesTable</h3><pre class="programlisting"><a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a>	xmlCreateEntitiesTable	(void)<br />
+</pre><p>create and initialize an empty entities hash table.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> just created or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlGetDtdEntity" id="xmlGetDtdEntity"></a>Function: xmlGetDtdEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlGetDtdEntity		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Do an entity lookup in the DTD entity hash table and</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document referencing the entity</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the corresponding entity, if found. Note: the first argument is the document node, not the DTD node. Returns A pointer to the entity structure or NULL if not found.</td></tr></tbody></table></div><h3><a name="xmlAddDtdEntity" id="xmlAddDtdEntity"></a>Function: xmlAddDtdEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlAddDtdEntity		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+</pre><p>Register a new entity for this document DTD external subset.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the entity type XML_xxx_yyy_ENTITY</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the entity external ID if available</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the entity system ID if available</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the entity content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the entity or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlCopyEntitiesTable" id="xmlCopyEntitiesTable"></a>Function: xmlCopyEntitiesTable</h3><pre class="programlisting"><a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a>	xmlCopyEntitiesTable	(<a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> table)<br />
 </pre><p>Build a copy of an entity table.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An entity table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlGetParameterEntity" id="xmlGetParameterEntity"></a>Function: xmlGetParameterEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlGetParameterEntity	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An entity table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlFreeEntitiesTable" id="xmlFreeEntitiesTable"></a>Function: xmlFreeEntitiesTable</h3><pre class="programlisting">void	xmlFreeEntitiesTable		(<a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> table)<br />
+</pre><p>Deallocate the memory used by an entities hash table.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An entity table</td></tr></tbody></table></div><h3><a name="xmlGetParameterEntity" id="xmlGetParameterEntity"></a>Function: xmlGetParameterEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlGetParameterEntity	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Do an entity lookup in the internal and external subsets and</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document referencing the entity</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the corresponding parameter entity, if found. Returns A pointer to the entity structure or NULL if not found.</td></tr></tbody></table></div><h3><a name="xmlDumpEntitiesTable" id="xmlDumpEntitiesTable"></a>Function: xmlDumpEntitiesTable</h3><pre class="programlisting">void	xmlDumpEntitiesTable	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> table)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document referencing the entity</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the corresponding parameter entity, if found. Returns A pointer to the entity structure or NULL if not found.</td></tr></tbody></table></div><h3><a name="xmlDumpEntitiesTable" id="xmlDumpEntitiesTable"></a>Function: xmlDumpEntitiesTable</h3><pre class="programlisting">void	xmlDumpEntitiesTable		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> table)<br />
 </pre><p>This will dump the content of the entity table as an XML DTD definition</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>An XML buffer.</td></tr><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An entity table</td></tr></tbody></table></div><h3><a name="xmlDumpEntityDecl" id="xmlDumpEntityDecl"></a>Function: xmlDumpEntityDecl</h3><pre class="programlisting">void	xmlDumpEntityDecl	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> ent)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>An XML buffer.</td></tr><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An entity table</td></tr></tbody></table></div><h3><a name="xmlDumpEntityDecl" id="xmlDumpEntityDecl"></a>Function: xmlDumpEntityDecl</h3><pre class="programlisting">void	xmlDumpEntityDecl		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> ent)<br />
 </pre><p>This will dump the content of the entity table as an XML DTD definition</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>An XML buffer.</td></tr><tr><td><span class="term"><i><tt>ent</tt></i>:</span></td><td>An entity table</td></tr></tbody></table></div><h3><a name="xmlCleanupPredefinedEntities" id="xmlCleanupPredefinedEntities"></a>Function: xmlCleanupPredefinedEntities</h3><pre class="programlisting">void	xmlCleanupPredefinedEntities	(void)<br />
 </pre><p>Cleanup up the predefined entities table. Deprecated call</p>
-<h3><a name="xmlCreateEntitiesTable" id="xmlCreateEntitiesTable"></a>Function: xmlCreateEntitiesTable</h3><pre class="programlisting"><a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a>	xmlCreateEntitiesTable	(void)<br />
-</pre><p>create and initialize an empty entities hash table.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-entities.html#xmlEntitiesTablePtr">xmlEntitiesTablePtr</a> just created or NULL in case of error.</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<h3><a name="xmlEncodeSpecialChars" id="xmlEncodeSpecialChars"></a>Function: xmlEncodeSpecialChars</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlEncodeSpecialChars	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * input)<br />
+</pre><p>Do a global encoding of a string, replacing the predefined entities this routine is reentrant, and result must be deallocated.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document containing the string</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>A string to convert to XML.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>A newly allocated string with the substitution done.</td></tr></tbody></table></div><h3><a name="xmlEncodeEntities" id="xmlEncodeEntities"></a>Function: xmlEncodeEntities</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlEncodeEntities	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * input)<br />
+</pre><p>TODO: remove xmlEncodeEntities, once we are not afraid of breaking binary compatibility People must migrate their code to <a href="libxml-entities.html#xmlEncodeEntitiesReentrant">xmlEncodeEntitiesReentrant</a> ! This routine will issue a warning when encountered.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document containing the string</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>A string to convert to XML.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL</td></tr></tbody></table></div><h3><a name="xmlGetDocEntity" id="xmlGetDocEntity"></a>Function: xmlGetDocEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlGetDocEntity		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Do an entity lookup in the document entity hash table and</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document referencing the entity</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the corresponding entity, otherwise a lookup is done in the predefined entities too. Returns A pointer to the entity structure or NULL if not found.</td></tr></tbody></table></div><h3><a name="xmlInitializePredefinedEntities" id="xmlInitializePredefinedEntities"></a>Function: xmlInitializePredefinedEntities</h3><pre class="programlisting">void	xmlInitializePredefinedEntities	(void)<br />
+</pre><p>Set up the predefined entities. Deprecated call</p>
+<h3><a name="xmlGetPredefinedEntity" id="xmlGetPredefinedEntity"></a>Function: xmlGetPredefinedEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlGetPredefinedEntity	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Check whether this name is an predefined entity.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the entity</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-globals.html b/doc/html/libxml-globals.html
index 8b6b608..4e39a59 100644
--- a/doc/html/libxml-globals.html
+++ b/doc/html/libxml-globals.html
@@ -10,63 +10,38 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module globals from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module globals from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-entities.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-entities.html">entities</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-hash.html">hash</a></th><td><a accesskey="n" href="libxml-hash.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>all the global variables and thread handling for those variables is handled by this module.  The bottom of this file is automatically generated by build_glob.py based on the description file global.data </p><h2>Table of Contents</h2><pre class="programlisting">void	<a href="#xmlThrDefSetStructuredErrorFunc">xmlThrDefSetStructuredErrorFunc</a>	(void * ctx, <br />				 <a href="libxml-xmlerror.html#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a> handler)<br />
-</pre><pre class="programlisting">void	<a href="#xmlInitializeGlobalState">xmlInitializeGlobalState</a>	(<a href="libxml-globals.html#xmlGlobalStatePtr">xmlGlobalStatePtr</a> gs)<br />
-</pre><pre class="programlisting">Variable const char * <a name="xmlTreeIndentString" id="xmlTreeIndentString"></a>xmlTreeIndentString
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a>	<a href="#xmlThrDefBufferAllocScheme">xmlThrDefBufferAllocScheme</a>	(<a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> v)<br />
-</pre><pre class="programlisting">Variable int <a name="xmlIndentTreeOutput" id="xmlIndentTreeOutput"></a>xmlIndentTreeOutput
-
-</pre><pre class="programlisting">int	<a href="#xmlThrDefPedanticParserDefaultValue">xmlThrDefPedanticParserDefaultValue</a>	(int v)<br />
-</pre><pre class="programlisting">Variable <a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> <a name="xmlBufferAllocScheme" id="xmlBufferAllocScheme"></a>xmlBufferAllocScheme
-
-</pre><pre class="programlisting"><a href="libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a>	<a href="#xmlRegisterNodeDefault">xmlRegisterNodeDefault</a>	(<a href="libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a> func)<br />
-</pre><pre class="programlisting">Variable int <a name="xmlDefaultBufferSize" id="xmlDefaultBufferSize"></a>xmlDefaultBufferSize
-
-</pre><pre class="programlisting">Variable <a href="libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a> <a name="xmlRegisterNodeDefaultValue" id="xmlRegisterNodeDefaultValue"></a>xmlRegisterNodeDefaultValue
-
-</pre><pre class="programlisting">Variable int <a name="xmlGetWarningsDefaultValue" id="xmlGetWarningsDefaultValue"></a>xmlGetWarningsDefaultValue
-
-</pre><pre class="programlisting">const char *	<a href="#xmlThrDefTreeIndentString">xmlThrDefTreeIndentString</a>	(const char * v)<br />
-</pre><pre class="programlisting">Variable <a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a> <a name="docbDefaultSAXHandler" id="docbDefaultSAXHandler"></a>docbDefaultSAXHandler
-
-</pre><pre class="programlisting">Variable void * <a name="xmlGenericErrorContext" id="xmlGenericErrorContext"></a>xmlGenericErrorContext
-
-</pre><pre class="programlisting">int	<a href="#xmlThrDefDefaultBufferSize">xmlThrDefDefaultBufferSize</a>	(int v)<br />
-</pre><pre class="programlisting">int	<a href="#xmlThrDefLoadExtDtdDefaultValue">xmlThrDefLoadExtDtdDefaultValue</a>	(int v)<br />
-</pre><pre class="programlisting">Variable <a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a> <a name="xmlDeregisterNodeDefaultValue" id="xmlDeregisterNodeDefaultValue"></a>xmlDeregisterNodeDefaultValue
-
-</pre><pre class="programlisting">Variable <a href="libxml-xmlerror.html#xmlGenericErrorFunc">xmlGenericErrorFunc</a> <a name="xmlGenericError" id="xmlGenericError"></a>xmlGenericError
-
-</pre><pre class="programlisting"><a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a>	<a href="#xmlDeregisterNodeDefault">xmlDeregisterNodeDefault</a>	(<a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a> func)<br />
-</pre><pre class="programlisting">Variable <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> <a name="xmlMalloc" id="xmlMalloc"></a>xmlMalloc
-
-</pre><pre class="programlisting">Variable const char * <a name="xmlParserVersion" id="xmlParserVersion"></a>xmlParserVersion
-
-</pre><pre class="programlisting">Variable <a href="libxml-xmlerror.html#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a> <a name="xmlStructuredError" id="xmlStructuredError"></a>xmlStructuredError
-
-</pre><pre class="programlisting">int	<a href="#xmlThrDefKeepBlanksDefaultValue">xmlThrDefKeepBlanksDefaultValue</a>	(int v)<br />
-</pre><pre class="programlisting">Variable int <a name="xmlSaveNoEmptyTags" id="xmlSaveNoEmptyTags"></a>xmlSaveNoEmptyTags
-
-</pre><pre class="programlisting"><a name="xmlDeregisterNodeFunc" id="xmlDeregisterNodeFunc"></a>Function type: xmlDeregisterNodeFunc
-void	xmlDeregisterNodeFunc	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)
-</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
-<pre class="programlisting">Variable int <a name="xmlPedanticParserDefaultValue" id="xmlPedanticParserDefaultValue"></a>xmlPedanticParserDefaultValue
-
-</pre><pre class="programlisting">Variable int <a name="xmlParserDebugEntities" id="xmlParserDebugEntities"></a>xmlParserDebugEntities
-
+    </style><title>Module globals from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module globals from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-entities.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-entities.html">entities</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-hash.html">hash</a></th><td><a accesskey="n" href="libxml-hash.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>all the global variables and thread handling for those variables is handled by this module.  The bottom of this file is automatically generated by build_glob.py based on the description file global.data </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xmlGlobalState">xmlGlobalState</a><br />struct _xmlGlobalState
 </pre><pre class="programlisting">Typedef <a href="libxml-globals.html#xmlGlobalState">xmlGlobalState</a> * <a name="xmlGlobalStatePtr" id="xmlGlobalStatePtr">xmlGlobalStatePtr</a>
-
-</pre><pre class="programlisting">Variable <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> <a name="xmlRealloc" id="xmlRealloc"></a>xmlRealloc
-
-</pre><pre class="programlisting"><a href="libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a>	<a href="#xmlThrDefRegisterNodeDefault">xmlThrDefRegisterNodeDefault</a>	(<a href="libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a> func)<br />
-</pre><pre class="programlisting">int	<a href="#xmlThrDefParserDebugEntities">xmlThrDefParserDebugEntities</a>	(int v)<br />
-</pre><pre class="programlisting">Variable <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> <a name="xmlMemStrdup" id="xmlMemStrdup"></a>xmlMemStrdup
-
-</pre><pre class="programlisting">Variable <a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a> <a name="htmlDefaultSAXHandler" id="htmlDefaultSAXHandler"></a>htmlDefaultSAXHandler
-
-</pre><pre class="programlisting">void	<a href="#xmlThrDefSetGenericErrorFunc">xmlThrDefSetGenericErrorFunc</a>	(void * ctx, <br />				 <a href="libxml-xmlerror.html#xmlGenericErrorFunc">xmlGenericErrorFunc</a> handler)<br />
-</pre><pre class="programlisting">Structure <a name="xmlGlobalState" id="xmlGlobalState">xmlGlobalState</a><br />struct _xmlGlobalState {
+</pre><pre class="programlisting">void	<a href="#xmlCleanupGlobals">xmlCleanupGlobals</a>		(void)</pre>
+<pre class="programlisting"><a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a>	<a href="#xmlDeregisterNodeDefault">xmlDeregisterNodeDefault</a>	(<a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a> func)</pre>
+<pre class="programlisting">Function type: <a href="#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a>
+void	<a href="#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)
+</pre>
+<pre class="programlisting">void	<a href="#xmlInitGlobals">xmlInitGlobals</a>			(void)</pre>
+<pre class="programlisting">void	<a href="#xmlInitializeGlobalState">xmlInitializeGlobalState</a>	(<a href="libxml-globals.html#xmlGlobalStatePtr">xmlGlobalStatePtr</a> gs)</pre>
+<pre class="programlisting"><a href="libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a>	<a href="#xmlRegisterNodeDefault">xmlRegisterNodeDefault</a>	(<a href="libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a> func)</pre>
+<pre class="programlisting">Function type: <a href="#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a>
+void	<a href="#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)
+</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a>	<a href="#xmlThrDefBufferAllocScheme">xmlThrDefBufferAllocScheme</a>	(<a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> v)</pre>
+<pre class="programlisting">int	<a href="#xmlThrDefDefaultBufferSize">xmlThrDefDefaultBufferSize</a>	(int v)</pre>
+<pre class="programlisting"><a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a>	<a href="#xmlThrDefDeregisterNodeDefault">xmlThrDefDeregisterNodeDefault</a>	(<a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a> func)</pre>
+<pre class="programlisting">int	<a href="#xmlThrDefDoValidityCheckingDefaultValue">xmlThrDefDoValidityCheckingDefaultValue</a>	(int v)</pre>
+<pre class="programlisting">int	<a href="#xmlThrDefGetWarningsDefaultValue">xmlThrDefGetWarningsDefaultValue</a>	(int v)</pre>
+<pre class="programlisting">int	<a href="#xmlThrDefIndentTreeOutput">xmlThrDefIndentTreeOutput</a>	(int v)</pre>
+<pre class="programlisting">int	<a href="#xmlThrDefKeepBlanksDefaultValue">xmlThrDefKeepBlanksDefaultValue</a>	(int v)</pre>
+<pre class="programlisting">int	<a href="#xmlThrDefLineNumbersDefaultValue">xmlThrDefLineNumbersDefaultValue</a>	(int v)</pre>
+<pre class="programlisting">int	<a href="#xmlThrDefLoadExtDtdDefaultValue">xmlThrDefLoadExtDtdDefaultValue</a>	(int v)</pre>
+<pre class="programlisting">int	<a href="#xmlThrDefParserDebugEntities">xmlThrDefParserDebugEntities</a>	(int v)</pre>
+<pre class="programlisting">int	<a href="#xmlThrDefPedanticParserDefaultValue">xmlThrDefPedanticParserDefaultValue</a>	(int v)</pre>
+<pre class="programlisting"><a href="libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a>	<a href="#xmlThrDefRegisterNodeDefault">xmlThrDefRegisterNodeDefault</a>	(<a href="libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a> func)</pre>
+<pre class="programlisting">int	<a href="#xmlThrDefSaveNoEmptyTags">xmlThrDefSaveNoEmptyTags</a>	(int v)</pre>
+<pre class="programlisting">void	<a href="#xmlThrDefSetGenericErrorFunc">xmlThrDefSetGenericErrorFunc</a>	(void * ctx, <br />					 <a href="libxml-xmlerror.html#xmlGenericErrorFunc">xmlGenericErrorFunc</a> handler)</pre>
+<pre class="programlisting">void	<a href="#xmlThrDefSetStructuredErrorFunc">xmlThrDefSetStructuredErrorFunc</a>	(void * ctx, <br />					 <a href="libxml-xmlerror.html#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a> handler)</pre>
+<pre class="programlisting">int	<a href="#xmlThrDefSubstituteEntitiesDefaultValue">xmlThrDefSubstituteEntitiesDefaultValue</a>	(int v)</pre>
+<pre class="programlisting">const char *	<a href="#xmlThrDefTreeIndentString">xmlThrDefTreeIndentString</a>	(const char * v)</pre>
+<h2>Description</h2>
+<h3><a name="xmlGlobalState" id="xmlGlobalState">Structure xmlGlobalState</a></h3><pre class="programlisting">Structure xmlGlobalState<br />struct _xmlGlobalState {
     const char *	xmlParserVersion
     <a href="libxml-tree.html#xmlSAXLocator">xmlSAXLocator</a>	xmlDefaultSAXLocator
     <a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a>	xmlDefaultSAXHandler
@@ -97,122 +72,54 @@
     <a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a>	xmlDeregisterNodeDefaultValue
     <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a>	xmlMallocAtomic
     <a href="libxml-xmlerror.html#xmlError">xmlError</a>	xmlLastError
-}</pre><br /><pre class="programlisting">int	<a href="#xmlThrDefDoValidityCheckingDefaultValue">xmlThrDefDoValidityCheckingDefaultValue</a>	(int v)<br />
-</pre><pre class="programlisting">void	<a href="#xmlCleanupGlobals">xmlCleanupGlobals</a>	(void)<br />
-</pre><pre class="programlisting">Variable int <a name="xmlDoValidityCheckingDefaultValue" id="xmlDoValidityCheckingDefaultValue"></a>xmlDoValidityCheckingDefaultValue
-
-</pre><pre class="programlisting">int	<a href="#xmlThrDefGetWarningsDefaultValue">xmlThrDefGetWarningsDefaultValue</a>	(int v)<br />
-</pre><pre class="programlisting">Variable int <a name="xmlKeepBlanksDefaultValue" id="xmlKeepBlanksDefaultValue"></a>xmlKeepBlanksDefaultValue
-
-</pre><pre class="programlisting"><a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a>	<a href="#xmlThrDefDeregisterNodeDefault">xmlThrDefDeregisterNodeDefault</a>	(<a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a> func)<br />
-</pre><pre class="programlisting">int	<a href="#xmlThrDefSubstituteEntitiesDefaultValue">xmlThrDefSubstituteEntitiesDefaultValue</a>	(int v)<br />
-</pre><pre class="programlisting"><a name="xmlRegisterNodeFunc" id="xmlRegisterNodeFunc"></a>Function type: xmlRegisterNodeFunc
-void	xmlRegisterNodeFunc	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)
-</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlThrDefSaveNoEmptyTags">xmlThrDefSaveNoEmptyTags</a>	(int v)<br />
-</pre><pre class="programlisting">Variable <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> <a name="xmlMallocAtomic" id="xmlMallocAtomic"></a>xmlMallocAtomic
-
-</pre><pre class="programlisting">int	<a href="#xmlThrDefIndentTreeOutput">xmlThrDefIndentTreeOutput</a>	(int v)<br />
-</pre><pre class="programlisting">Variable int <a name="xmlSubstituteEntitiesDefaultValue" id="xmlSubstituteEntitiesDefaultValue"></a>xmlSubstituteEntitiesDefaultValue
-
-</pre><pre class="programlisting">Variable int <a name="oldXMLWDcompatibility" id="oldXMLWDcompatibility"></a>oldXMLWDcompatibility
-
-</pre><pre class="programlisting">Variable <a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> <a name="xmlFree" id="xmlFree"></a>xmlFree
-
-</pre><pre class="programlisting">Variable int <a name="xmlLoadExtDtdDefaultValue" id="xmlLoadExtDtdDefaultValue"></a>xmlLoadExtDtdDefaultValue
-
-</pre><pre class="programlisting">Variable <a href="libxml-xmlerror.html#xmlError">xmlError</a> <a name="xmlLastError" id="xmlLastError"></a>xmlLastError
-
-</pre><pre class="programlisting">void	<a href="#xmlInitGlobals">xmlInitGlobals</a>	(void)<br />
-</pre><pre class="programlisting">Variable int <a name="xmlLineNumbersDefaultValue" id="xmlLineNumbersDefaultValue"></a>xmlLineNumbersDefaultValue
-
-</pre><pre class="programlisting">int	<a href="#xmlThrDefLineNumbersDefaultValue">xmlThrDefLineNumbersDefaultValue</a>	(int v)<br />
-</pre><pre class="programlisting">Variable <a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a> <a name="xmlDefaultSAXHandler" id="xmlDefaultSAXHandler"></a>xmlDefaultSAXHandler
-
-</pre><pre class="programlisting">Variable <a href="libxml-tree.html#xmlSAXLocator">xmlSAXLocator</a> <a name="xmlDefaultSAXLocator" id="xmlDefaultSAXLocator"></a>xmlDefaultSAXLocator
-
-</pre><h2>Description</h2>
-<h3><a name="xmlThrDefSetStructuredErrorFunc" id="xmlThrDefSetStructuredErrorFunc"></a>Function: xmlThrDefSetStructuredErrorFunc</h3><pre class="programlisting">void	xmlThrDefSetStructuredErrorFunc	(void * ctx, <br />				 <a href="libxml-xmlerror.html#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a> handler)<br />
+}</pre><h3><a name="xmlThrDefSetStructuredErrorFunc" id="xmlThrDefSetStructuredErrorFunc"></a>Function: xmlThrDefSetStructuredErrorFunc</h3><pre class="programlisting">void	xmlThrDefSetStructuredErrorFunc	(void * ctx, <br />					 <a href="libxml-xmlerror.html#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a> handler)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlInitializeGlobalState" id="xmlInitializeGlobalState"></a>Function: xmlInitializeGlobalState</h3><pre class="programlisting">void	xmlInitializeGlobalState	(<a href="libxml-globals.html#xmlGlobalStatePtr">xmlGlobalStatePtr</a> gs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlCleanupGlobals" id="xmlCleanupGlobals"></a>Function: xmlCleanupGlobals</h3><pre class="programlisting">void	xmlCleanupGlobals		(void)<br />
+</pre><p></p>
+<h3><a name="xmlThrDefRegisterNodeDefault" id="xmlThrDefRegisterNodeDefault"></a>Function: xmlThrDefRegisterNodeDefault</h3><pre class="programlisting"><a href="libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a>	xmlThrDefRegisterNodeDefault	(<a href="libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a> func)<br />
+</pre><p></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>func</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlInitializeGlobalState" id="xmlInitializeGlobalState"></a>Function: xmlInitializeGlobalState</h3><pre class="programlisting">void	xmlInitializeGlobalState	(<a href="libxml-globals.html#xmlGlobalStatePtr">xmlGlobalStatePtr</a> gs)<br />
 </pre><p>xmlInitializeGlobalState() initialize a global state with all the default values of the library.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>gs</tt></i>:</span></td><td>a pointer to a newly allocated global state</td></tr></tbody></table></div><h3><a name="xmlThrDefBufferAllocScheme" id="xmlThrDefBufferAllocScheme"></a>Function: xmlThrDefBufferAllocScheme</h3><pre class="programlisting"><a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a>	xmlThrDefBufferAllocScheme	(<a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> v)<br />
 </pre><p></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlThrDefSetGenericErrorFunc" id="xmlThrDefSetGenericErrorFunc"></a>Function: xmlThrDefSetGenericErrorFunc</h3><pre class="programlisting">void	xmlThrDefSetGenericErrorFunc	(void * ctx, <br />					 <a href="libxml-xmlerror.html#xmlGenericErrorFunc">xmlGenericErrorFunc</a> handler)<br />
+</pre><p></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlThrDefDoValidityCheckingDefaultValue" id="xmlThrDefDoValidityCheckingDefaultValue"></a>Function: xmlThrDefDoValidityCheckingDefaultValue</h3><pre class="programlisting">int	xmlThrDefDoValidityCheckingDefaultValue	(int v)<br />
+</pre><p></p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlThrDefPedanticParserDefaultValue" id="xmlThrDefPedanticParserDefaultValue"></a>Function: xmlThrDefPedanticParserDefaultValue</h3><pre class="programlisting">int	xmlThrDefPedanticParserDefaultValue	(int v)<br />
 </pre><p></p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlRegisterNodeDefault" id="xmlRegisterNodeDefault"></a>Function: xmlRegisterNodeDefault</h3><pre class="programlisting"><a href="libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a>	xmlRegisterNodeDefault	(<a href="libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a> func)<br />
 </pre><p>Registers a callback for node creation</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>func</tt></i>:</span></td><td>function pointer to the new RegisterNodeFunc</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the old value of the registration function</td></tr></tbody></table></div><h3><a name="xmlThrDefTreeIndentString" id="xmlThrDefTreeIndentString"></a>Function: xmlThrDefTreeIndentString</h3><pre class="programlisting">const char *	xmlThrDefTreeIndentString	(const char * v)<br />
-</pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlThrDefDefaultBufferSize" id="xmlThrDefDefaultBufferSize"></a>Function: xmlThrDefDefaultBufferSize</h3><pre class="programlisting">int	xmlThrDefDefaultBufferSize	(int v)<br />
-</pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlThrDefLoadExtDtdDefaultValue" id="xmlThrDefLoadExtDtdDefaultValue"></a>Function: xmlThrDefLoadExtDtdDefaultValue</h3><pre class="programlisting">int	xmlThrDefLoadExtDtdDefaultValue	(int v)<br />
-</pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlDeregisterNodeDefault" id="xmlDeregisterNodeDefault"></a>Function: xmlDeregisterNodeDefault</h3><pre class="programlisting"><a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a>	xmlDeregisterNodeDefault	(<a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a> func)<br />
-</pre><p>Registers a callback for node destruction</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>func</tt></i>:</span></td><td>function pointer to the new DeregisterNodeFunc</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the previous value of the deregistration function</td></tr></tbody></table></div><h3><a name="xmlThrDefKeepBlanksDefaultValue" id="xmlThrDefKeepBlanksDefaultValue"></a>Function: xmlThrDefKeepBlanksDefaultValue</h3><pre class="programlisting">int	xmlThrDefKeepBlanksDefaultValue	(int v)<br />
-</pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div>
-      
-      
-      
-    <h3><a name="xmlThrDefRegisterNodeDefault" id="xmlThrDefRegisterNodeDefault"></a>Function: xmlThrDefRegisterNodeDefault</h3><pre class="programlisting"><a href="libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a>	xmlThrDefRegisterNodeDefault	(<a href="libxml-globals.html#xmlRegisterNodeFunc">xmlRegisterNodeFunc</a> func)<br />
-</pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>func</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlThrDefParserDebugEntities" id="xmlThrDefParserDebugEntities"></a>Function: xmlThrDefParserDebugEntities</h3><pre class="programlisting">int	xmlThrDefParserDebugEntities	(int v)<br />
-</pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlThrDefSetGenericErrorFunc" id="xmlThrDefSetGenericErrorFunc"></a>Function: xmlThrDefSetGenericErrorFunc</h3><pre class="programlisting">void	xmlThrDefSetGenericErrorFunc	(void * ctx, <br />				 <a href="libxml-xmlerror.html#xmlGenericErrorFunc">xmlGenericErrorFunc</a> handler)<br />
-</pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td></td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlThrDefDoValidityCheckingDefaultValue" id="xmlThrDefDoValidityCheckingDefaultValue"></a>Function: xmlThrDefDoValidityCheckingDefaultValue</h3><pre class="programlisting">int	xmlThrDefDoValidityCheckingDefaultValue	(int v)<br />
-</pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlCleanupGlobals" id="xmlCleanupGlobals"></a>Function: xmlCleanupGlobals</h3><pre class="programlisting">void	xmlCleanupGlobals	(void)<br />
-</pre><p></p>
-<h3><a name="xmlThrDefGetWarningsDefaultValue" id="xmlThrDefGetWarningsDefaultValue"></a>Function: xmlThrDefGetWarningsDefaultValue</h3><pre class="programlisting">int	xmlThrDefGetWarningsDefaultValue	(int v)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>func</tt></i>:</span></td><td>function pointer to the new RegisterNodeFunc</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the old value of the registration function</td></tr></tbody></table></div><h3><a name="xmlThrDefGetWarningsDefaultValue" id="xmlThrDefGetWarningsDefaultValue"></a>Function: xmlThrDefGetWarningsDefaultValue</h3><pre class="programlisting">int	xmlThrDefGetWarningsDefaultValue	(int v)<br />
 </pre><p></p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlThrDefDeregisterNodeDefault" id="xmlThrDefDeregisterNodeDefault"></a>Function: xmlThrDefDeregisterNodeDefault</h3><pre class="programlisting"><a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a>	xmlThrDefDeregisterNodeDefault	(<a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a> func)<br />
 </pre><p></p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>func</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlThrDefSubstituteEntitiesDefaultValue" id="xmlThrDefSubstituteEntitiesDefaultValue"></a>Function: xmlThrDefSubstituteEntitiesDefaultValue</h3><pre class="programlisting">int	xmlThrDefSubstituteEntitiesDefaultValue	(int v)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div>
-      
-      
-      
-    <h3><a name="xmlThrDefSaveNoEmptyTags" id="xmlThrDefSaveNoEmptyTags"></a>Function: xmlThrDefSaveNoEmptyTags</h3><pre class="programlisting">int	xmlThrDefSaveNoEmptyTags	(int v)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlRegisterNodeFunc" id="xmlRegisterNodeFunc"></a>Function type: xmlRegisterNodeFunc</h3><pre class="programlisting">Function type: xmlRegisterNodeFunc
+void	xmlRegisterNodeFunc		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)
+</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
+<h3><a name="xmlThrDefSaveNoEmptyTags" id="xmlThrDefSaveNoEmptyTags"></a>Function: xmlThrDefSaveNoEmptyTags</h3><pre class="programlisting">int	xmlThrDefSaveNoEmptyTags	(int v)<br />
 </pre><p></p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlThrDefIndentTreeOutput" id="xmlThrDefIndentTreeOutput"></a>Function: xmlThrDefIndentTreeOutput</h3><pre class="programlisting">int	xmlThrDefIndentTreeOutput	(int v)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlInitGlobals" id="xmlInitGlobals"></a>Function: xmlInitGlobals</h3><pre class="programlisting">void	xmlInitGlobals	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlThrDefDefaultBufferSize" id="xmlThrDefDefaultBufferSize"></a>Function: xmlThrDefDefaultBufferSize</h3><pre class="programlisting">int	xmlThrDefDefaultBufferSize	(int v)<br />
 </pre><p></p>
-<h3><a name="xmlThrDefLineNumbersDefaultValue" id="xmlThrDefLineNumbersDefaultValue"></a>Function: xmlThrDefLineNumbersDefaultValue</h3><pre class="programlisting">int	xmlThrDefLineNumbersDefaultValue	(int v)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlDeregisterNodeDefault" id="xmlDeregisterNodeDefault"></a>Function: xmlDeregisterNodeDefault</h3><pre class="programlisting"><a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a>	xmlDeregisterNodeDefault	(<a href="libxml-globals.html#xmlDeregisterNodeFunc">xmlDeregisterNodeFunc</a> func)<br />
+</pre><p>Registers a callback for node destruction</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>func</tt></i>:</span></td><td>function pointer to the new DeregisterNodeFunc</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the previous value of the deregistration function</td></tr></tbody></table></div><h3><a name="xmlInitGlobals" id="xmlInitGlobals"></a>Function: xmlInitGlobals</h3><pre class="programlisting">void	xmlInitGlobals			(void)<br />
+</pre><p></p>
+<h3><a name="xmlThrDefLoadExtDtdDefaultValue" id="xmlThrDefLoadExtDtdDefaultValue"></a>Function: xmlThrDefLoadExtDtdDefaultValue</h3><pre class="programlisting">int	xmlThrDefLoadExtDtdDefaultValue	(int v)<br />
+</pre><p></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlThrDefLineNumbersDefaultValue" id="xmlThrDefLineNumbersDefaultValue"></a>Function: xmlThrDefLineNumbersDefaultValue</h3><pre class="programlisting">int	xmlThrDefLineNumbersDefaultValue	(int v)<br />
+</pre><p></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlThrDefKeepBlanksDefaultValue" id="xmlThrDefKeepBlanksDefaultValue"></a>Function: xmlThrDefKeepBlanksDefaultValue</h3><pre class="programlisting">int	xmlThrDefKeepBlanksDefaultValue	(int v)<br />
+</pre><p></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlDeregisterNodeFunc" id="xmlDeregisterNodeFunc"></a>Function type: xmlDeregisterNodeFunc</h3><pre class="programlisting">Function type: xmlDeregisterNodeFunc
+void	xmlDeregisterNodeFunc		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)
+</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
+<h3><a name="xmlThrDefParserDebugEntities" id="xmlThrDefParserDebugEntities"></a>Function: xmlThrDefParserDebugEntities</h3><pre class="programlisting">int	xmlThrDefParserDebugEntities	(int v)<br />
+</pre><p></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlThrDefTreeIndentString" id="xmlThrDefTreeIndentString"></a>Function: xmlThrDefTreeIndentString</h3><pre class="programlisting">const char *	xmlThrDefTreeIndentString	(const char * v)<br />
 </pre><p></p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>v</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-hash.html b/doc/html/libxml-hash.html
index 9c98bd9..a850040 100644
--- a/doc/html/libxml-hash.html
+++ b/doc/html/libxml-hash.html
@@ -10,114 +10,103 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module hash from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module hash from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-globals.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-globals.html">globals</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-list.html">list</a></th><td><a accesskey="n" href="libxml-list.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><h2>Table of Contents</h2><pre class="programlisting">void	<a href="#xmlHashScanFull">xmlHashScanFull</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 <a href="libxml-hash.html#xmlHashScannerFull">xmlHashScannerFull</a> f, <br />				 void * data)<br />
-</pre><pre class="programlisting"><a name="xmlHashDeallocator" id="xmlHashDeallocator"></a>Function type: xmlHashDeallocator
-void	xmlHashDeallocator	(void * payload, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
-</pre><p>Callback to free data from a hash.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>payload</tt></i>:</span></td><td>the data in the hash</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name associated</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a name="xmlHashScannerFull" id="xmlHashScannerFull"></a>Function type: xmlHashScannerFull
-void	xmlHashScannerFull	(void * payload, <br />				 void * data, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3)
-</pre><p>Callback when scanning data in a hash with the full scanner.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>payload</tt></i>:</span></td><td>the data in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra scannner data</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name associated</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>the second name associated</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>the third name associated</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	<a href="#xmlHashCopy">xmlHashCopy</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 <a href="libxml-hash.html#xmlHashCopier">xmlHashCopier</a> f)<br />
-</pre><pre class="programlisting">void	<a href="#xmlHashScanFull3">xmlHashScanFull3</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />				 <a href="libxml-hash.html#xmlHashScannerFull">xmlHashScannerFull</a> f, <br />				 void * data)<br />
-</pre><pre class="programlisting">int	<a href="#xmlHashUpdateEntry3">xmlHashUpdateEntry3</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />				 void * userdata, <br />				 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
-</pre><pre class="programlisting">void	<a href="#xmlHashScan">xmlHashScan</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 <a href="libxml-hash.html#xmlHashScanner">xmlHashScanner</a> f, <br />				 void * data)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlHashLookup3">xmlHashLookup3</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlHashLookup2">xmlHashLookup2</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2)<br />
-</pre><pre class="programlisting">int	<a href="#xmlHashUpdateEntry">xmlHashUpdateEntry</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 void * userdata, <br />				 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
-</pre><pre class="programlisting">int	<a href="#xmlHashRemoveEntry">xmlHashRemoveEntry</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
-</pre><pre class="programlisting">int	<a href="#xmlHashRemoveEntry2">xmlHashRemoveEntry2</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlHashQLookup3">xmlHashQLookup3</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix3, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlHashQLookup2">xmlHashQLookup2</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2)<br />
-</pre><pre class="programlisting">int	<a href="#xmlHashAddEntry3">xmlHashAddEntry3</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />				 void * userdata)<br />
-</pre><pre class="programlisting">void	<a href="#xmlHashScan3">xmlHashScan3</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />				 <a href="libxml-hash.html#xmlHashScanner">xmlHashScanner</a> f, <br />				 void * data)<br />
-</pre><pre class="programlisting"><a name="xmlHashScanner" id="xmlHashScanner"></a>Function type: xmlHashScanner
-void	xmlHashScanner	(void * payload, <br />				 void * data, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
-</pre><p>Callback when scanning data in a hash with the simple scanner.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>payload</tt></i>:</span></td><td>the data in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra scannner data</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name associated</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlHashAddEntry">xmlHashAddEntry</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 void * userdata)<br />
-</pre><pre class="programlisting"><a name="xmlHashCopier" id="xmlHashCopier"></a>Function type: xmlHashCopier
-void *	xmlHashCopier	(void * payload, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
-</pre><p>Callback to copy data from a hash.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>payload</tt></i>:</span></td><td>the data in the hash</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name associated</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a copy of the data or NULL in case of error.</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	<a href="#xmlHashCreate">xmlHashCreate</a>	(int size)<br />
-</pre><pre class="programlisting">void	<a href="#xmlHashFree">xmlHashFree</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
-</pre><pre class="programlisting">int	<a href="#xmlHashUpdateEntry2">xmlHashUpdateEntry2</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 void * userdata, <br />				 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlHashLookup">xmlHashLookup</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-hash.html#xmlHashTable">xmlHashTable</a> * <a name="xmlHashTablePtr" id="xmlHashTablePtr">xmlHashTablePtr</a>
-
-</pre><pre class="programlisting">void *	<a href="#xmlHashQLookup">xmlHashQLookup</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">Structure <a name="xmlHashTable" id="xmlHashTable">xmlHashTable</a><br />struct _xmlHashTable {
+    </style><title>Module hash from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module hash from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-globals.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-globals.html">globals</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-list.html">list</a></th><td><a accesskey="n" href="libxml-list.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xmlHashTable">xmlHashTable</a><br />struct _xmlHashTable
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">int	<a href="#xmlHashAddEntry2">xmlHashAddEntry2</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 void * userdata)<br />
-</pre><pre class="programlisting">int	<a href="#xmlHashRemoveEntry3">xmlHashRemoveEntry3</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />				 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
-</pre><pre class="programlisting">int	<a href="#xmlHashSize">xmlHashSize</a>	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlHashScanFull" id="xmlHashScanFull"></a>Function: xmlHashScanFull</h3><pre class="programlisting">void	xmlHashScanFull	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 <a href="libxml-hash.html#xmlHashScannerFull">xmlHashScannerFull</a> f, <br />				 void * data)<br />
+</pre><pre class="programlisting">Typedef <a href="libxml-hash.html#xmlHashTable">xmlHashTable</a> * <a name="xmlHashTablePtr" id="xmlHashTablePtr">xmlHashTablePtr</a>
+</pre><pre class="programlisting">int	<a href="#xmlHashAddEntry">xmlHashAddEntry</a>			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 void * userdata)</pre>
+<pre class="programlisting">int	<a href="#xmlHashAddEntry2">xmlHashAddEntry2</a>		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 void * userdata)</pre>
+<pre class="programlisting">int	<a href="#xmlHashAddEntry3">xmlHashAddEntry3</a>		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />					 void * userdata)</pre>
+<pre class="programlisting">Function type: <a href="#xmlHashCopier">xmlHashCopier</a>
+void *	<a href="#xmlHashCopier">xmlHashCopier</a>			(void * payload, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
+</pre>
+<pre class="programlisting"><a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	<a href="#xmlHashCopy">xmlHashCopy</a>		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 <a href="libxml-hash.html#xmlHashCopier">xmlHashCopier</a> f)</pre>
+<pre class="programlisting"><a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	<a href="#xmlHashCreate">xmlHashCreate</a>		(int size)</pre>
+<pre class="programlisting">Function type: <a href="#xmlHashDeallocator">xmlHashDeallocator</a>
+void	<a href="#xmlHashDeallocator">xmlHashDeallocator</a>		(void * payload, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
+</pre>
+<pre class="programlisting">void	<a href="#xmlHashFree">xmlHashFree</a>			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)</pre>
+<pre class="programlisting">void *	<a href="#xmlHashLookup">xmlHashLookup</a>			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">void *	<a href="#xmlHashLookup2">xmlHashLookup2</a>			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2)</pre>
+<pre class="programlisting">void *	<a href="#xmlHashLookup3">xmlHashLookup3</a>			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3)</pre>
+<pre class="programlisting">void *	<a href="#xmlHashQLookup">xmlHashQLookup</a>			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">void *	<a href="#xmlHashQLookup2">xmlHashQLookup2</a>			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2)</pre>
+<pre class="programlisting">void *	<a href="#xmlHashQLookup3">xmlHashQLookup3</a>			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix3, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3)</pre>
+<pre class="programlisting">int	<a href="#xmlHashRemoveEntry">xmlHashRemoveEntry</a>		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)</pre>
+<pre class="programlisting">int	<a href="#xmlHashRemoveEntry2">xmlHashRemoveEntry2</a>		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)</pre>
+<pre class="programlisting">int	<a href="#xmlHashRemoveEntry3">xmlHashRemoveEntry3</a>		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />					 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)</pre>
+<pre class="programlisting">void	<a href="#xmlHashScan">xmlHashScan</a>			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 <a href="libxml-hash.html#xmlHashScanner">xmlHashScanner</a> f, <br />					 void * data)</pre>
+<pre class="programlisting">void	<a href="#xmlHashScan3">xmlHashScan3</a>			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />					 <a href="libxml-hash.html#xmlHashScanner">xmlHashScanner</a> f, <br />					 void * data)</pre>
+<pre class="programlisting">void	<a href="#xmlHashScanFull">xmlHashScanFull</a>			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 <a href="libxml-hash.html#xmlHashScannerFull">xmlHashScannerFull</a> f, <br />					 void * data)</pre>
+<pre class="programlisting">void	<a href="#xmlHashScanFull3">xmlHashScanFull3</a>		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />					 <a href="libxml-hash.html#xmlHashScannerFull">xmlHashScannerFull</a> f, <br />					 void * data)</pre>
+<pre class="programlisting">Function type: <a href="#xmlHashScanner">xmlHashScanner</a>
+void	<a href="#xmlHashScanner">xmlHashScanner</a>			(void * payload, <br />					 void * data, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
+</pre>
+<pre class="programlisting">Function type: <a href="#xmlHashScannerFull">xmlHashScannerFull</a>
+void	<a href="#xmlHashScannerFull">xmlHashScannerFull</a>		(void * payload, <br />					 void * data, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3)
+</pre>
+<pre class="programlisting">int	<a href="#xmlHashSize">xmlHashSize</a>			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table)</pre>
+<pre class="programlisting">int	<a href="#xmlHashUpdateEntry">xmlHashUpdateEntry</a>		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 void * userdata, <br />					 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)</pre>
+<pre class="programlisting">int	<a href="#xmlHashUpdateEntry2">xmlHashUpdateEntry2</a>		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 void * userdata, <br />					 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)</pre>
+<pre class="programlisting">int	<a href="#xmlHashUpdateEntry3">xmlHashUpdateEntry3</a>		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />					 void * userdata, <br />					 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)</pre>
+<h2>Description</h2>
+<h3><a name="xmlHashTable" id="xmlHashTable">Structure xmlHashTable</a></h3><pre class="programlisting">Structure xmlHashTable<br />struct _xmlHashTable {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlHashScanFull" id="xmlHashScanFull"></a>Function: xmlHashScanFull</h3><pre class="programlisting">void	xmlHashScanFull			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 <a href="libxml-hash.html#xmlHashScannerFull">xmlHashScannerFull</a> f, <br />					 void * data)<br />
 </pre><p>Scan the hash @table and applied @f to each value.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the scanner function for items in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra data passed to f</td></tr></tbody></table></div>
-      Callback to free data from a hash.
-      
-      
-      
-    
-      Callback when scanning data in a hash with the full scanner.
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlHashCopy" id="xmlHashCopy"></a>Function: xmlHashCopy</h3><pre class="programlisting"><a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	xmlHashCopy	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 <a href="libxml-hash.html#xmlHashCopier">xmlHashCopier</a> f)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the scanner function for items in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra data passed to f</td></tr></tbody></table></div><h3><a name="xmlHashDeallocator" id="xmlHashDeallocator"></a>Function type: xmlHashDeallocator</h3><pre class="programlisting">Function type: xmlHashDeallocator
+void	xmlHashDeallocator		(void * payload, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
+</pre><p>Callback to free data from a hash.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>payload</tt></i>:</span></td><td>the data in the hash</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name associated</td></tr></tbody></table></div><br />
+<h3><a name="xmlHashScannerFull" id="xmlHashScannerFull"></a>Function type: xmlHashScannerFull</h3><pre class="programlisting">Function type: xmlHashScannerFull
+void	xmlHashScannerFull		(void * payload, <br />					 void * data, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3)
+</pre><p>Callback when scanning data in a hash with the full scanner.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>payload</tt></i>:</span></td><td>the data in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra scannner data</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name associated</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>the second name associated</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>the third name associated</td></tr></tbody></table></div><br />
+<h3><a name="xmlHashCopy" id="xmlHashCopy"></a>Function: xmlHashCopy</h3><pre class="programlisting"><a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	xmlHashCopy		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 <a href="libxml-hash.html#xmlHashCopier">xmlHashCopier</a> f)<br />
 </pre><p>Scan the hash @table and applied @f to each value.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the copier function for items in the hash</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new table or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashScanFull3" id="xmlHashScanFull3"></a>Function: xmlHashScanFull3</h3><pre class="programlisting">void	xmlHashScanFull3	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />				 <a href="libxml-hash.html#xmlHashScannerFull">xmlHashScannerFull</a> f, <br />				 void * data)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the copier function for items in the hash</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new table or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashScanFull3" id="xmlHashScanFull3"></a>Function: xmlHashScanFull3</h3><pre class="programlisting">void	xmlHashScanFull3		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />					 <a href="libxml-hash.html#xmlHashScannerFull">xmlHashScannerFull</a> f, <br />					 void * data)<br />
 </pre><p>Scan the hash @table and applied @f to each value matching (@name, @name2, @name3) tuple. If one of the names is null, the comparison is considered to match.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata or NULL</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata or NULL</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata or NULL</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the scanner function for items in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra data passed to f</td></tr></tbody></table></div><h3><a name="xmlHashUpdateEntry3" id="xmlHashUpdateEntry3"></a>Function: xmlHashUpdateEntry3</h3><pre class="programlisting">int	xmlHashUpdateEntry3	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />				 void * userdata, <br />				 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata or NULL</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata or NULL</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata or NULL</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the scanner function for items in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra data passed to f</td></tr></tbody></table></div><h3><a name="xmlHashUpdateEntry3" id="xmlHashUpdateEntry3"></a>Function: xmlHashUpdateEntry3</h3><pre class="programlisting">int	xmlHashUpdateEntry3		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />					 void * userdata, <br />					 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
 </pre><p>Add the @userdata to the hash @table. This can later be retrieved by using the tuple (@name, @name2, @name3). Existing entry for this tuple will be removed and freed with @f if found.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata</td></tr><tr><td><span class="term"><i><tt>userdata</tt></i>:</span></td><td>a pointer to the userdata</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the deallocator function for replaced item (if any)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 the addition succeeded and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashScan" id="xmlHashScan"></a>Function: xmlHashScan</h3><pre class="programlisting">void	xmlHashScan	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 <a href="libxml-hash.html#xmlHashScanner">xmlHashScanner</a> f, <br />				 void * data)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata</td></tr><tr><td><span class="term"><i><tt>userdata</tt></i>:</span></td><td>a pointer to the userdata</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the deallocator function for replaced item (if any)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 the addition succeeded and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashScan" id="xmlHashScan"></a>Function: xmlHashScan</h3><pre class="programlisting">void	xmlHashScan			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 <a href="libxml-hash.html#xmlHashScanner">xmlHashScanner</a> f, <br />					 void * data)<br />
 </pre><p>Scan the hash @table and applied @f to each value.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the scanner function for items in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra data passed to f</td></tr></tbody></table></div><h3><a name="xmlHashLookup3" id="xmlHashLookup3"></a>Function: xmlHashLookup3</h3><pre class="programlisting">void *	xmlHashLookup3	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the scanner function for items in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra data passed to f</td></tr></tbody></table></div><h3><a name="xmlHashLookup3" id="xmlHashLookup3"></a>Function: xmlHashLookup3</h3><pre class="programlisting">void *	xmlHashLookup3			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3)<br />
 </pre><p>Find the userdata specified by the (@name, @name2, @name3) tuple.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the a pointer to the userdata</td></tr></tbody></table></div><h3><a name="xmlHashLookup2" id="xmlHashLookup2"></a>Function: xmlHashLookup2</h3><pre class="programlisting">void *	xmlHashLookup2	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the a pointer to the userdata</td></tr></tbody></table></div><h3><a name="xmlHashLookup2" id="xmlHashLookup2"></a>Function: xmlHashLookup2</h3><pre class="programlisting">void *	xmlHashLookup2			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2)<br />
 </pre><p>Find the userdata specified by the (@name, @name2) tuple.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the pointer to the userdata</td></tr></tbody></table></div><h3><a name="xmlHashUpdateEntry" id="xmlHashUpdateEntry"></a>Function: xmlHashUpdateEntry</h3><pre class="programlisting">int	xmlHashUpdateEntry	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 void * userdata, <br />				 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the pointer to the userdata</td></tr></tbody></table></div><h3><a name="xmlHashUpdateEntry" id="xmlHashUpdateEntry"></a>Function: xmlHashUpdateEntry</h3><pre class="programlisting">int	xmlHashUpdateEntry		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 void * userdata, <br />					 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
 </pre><p>Add the @userdata to the hash @table. This can later be retrieved by using the @name. Existing entry for this @name will be removed and freed with @f if found.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>userdata</tt></i>:</span></td><td>a pointer to the userdata</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the deallocator function for replaced item (if any)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 the addition succeeded and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashRemoveEntry" id="xmlHashRemoveEntry"></a>Function: xmlHashRemoveEntry</h3><pre class="programlisting">int	xmlHashRemoveEntry	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>userdata</tt></i>:</span></td><td>a pointer to the userdata</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the deallocator function for replaced item (if any)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 the addition succeeded and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashRemoveEntry" id="xmlHashRemoveEntry"></a>Function: xmlHashRemoveEntry</h3><pre class="programlisting">int	xmlHashRemoveEntry		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
 </pre><p>Find the userdata specified by the @name and remove it from the hash @table. Existing userdata for this tuple will be removed and freed with @f.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the deallocator function for removed item (if any)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the removal succeeded and -1 in case of error or not found.</td></tr></tbody></table></div><h3><a name="xmlHashRemoveEntry2" id="xmlHashRemoveEntry2"></a>Function: xmlHashRemoveEntry2</h3><pre class="programlisting">int	xmlHashRemoveEntry2	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the deallocator function for removed item (if any)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the removal succeeded and -1 in case of error or not found.</td></tr></tbody></table></div><h3><a name="xmlHashRemoveEntry2" id="xmlHashRemoveEntry2"></a>Function: xmlHashRemoveEntry2</h3><pre class="programlisting">int	xmlHashRemoveEntry2		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
 </pre><p>Find the userdata specified by the (@name, @name2) tuple and remove it from the hash @table. Existing userdata for this tuple will be removed and freed with @f.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the deallocator function for removed item (if any)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the removal succeeded and -1 in case of error or not found.</td></tr></tbody></table></div><h3><a name="xmlHashQLookup3" id="xmlHashQLookup3"></a>Function: xmlHashQLookup3</h3><pre class="programlisting">void *	xmlHashQLookup3	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix3, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the deallocator function for removed item (if any)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the removal succeeded and -1 in case of error or not found.</td></tr></tbody></table></div><h3><a name="xmlHashQLookup3" id="xmlHashQLookup3"></a>Function: xmlHashQLookup3</h3><pre class="programlisting">void *	xmlHashQLookup3			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix3, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3)<br />
 </pre><p>Find the userdata specified by the (@name, @name2, @name3) tuple.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix of the userdata</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>prefix2</tt></i>:</span></td><td>the second prefix of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>prefix3</tt></i>:</span></td><td>the third prefix of the userdata</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the a pointer to the userdata</td></tr></tbody></table></div><h3><a name="xmlHashQLookup2" id="xmlHashQLookup2"></a>Function: xmlHashQLookup2</h3><pre class="programlisting">void *	xmlHashQLookup2	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix of the userdata</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>prefix2</tt></i>:</span></td><td>the second prefix of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>prefix3</tt></i>:</span></td><td>the third prefix of the userdata</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the a pointer to the userdata</td></tr></tbody></table></div><h3><a name="xmlHashQLookup2" id="xmlHashQLookup2"></a>Function: xmlHashQLookup2</h3><pre class="programlisting">void *	xmlHashQLookup2			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2)<br />
 </pre><p>Find the userdata specified by the QNames tuple</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix of the userdata</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>prefix2</tt></i>:</span></td><td>the second prefix of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the pointer to the userdata</td></tr></tbody></table></div><h3><a name="xmlHashAddEntry3" id="xmlHashAddEntry3"></a>Function: xmlHashAddEntry3</h3><pre class="programlisting">int	xmlHashAddEntry3	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />				 void * userdata)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix of the userdata</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>prefix2</tt></i>:</span></td><td>the second prefix of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the pointer to the userdata</td></tr></tbody></table></div><h3><a name="xmlHashAddEntry3" id="xmlHashAddEntry3"></a>Function: xmlHashAddEntry3</h3><pre class="programlisting">int	xmlHashAddEntry3		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />					 void * userdata)<br />
 </pre><p>Add the @userdata to the hash @table. This can later be retrieved by using the tuple (@name, @name2, @name3). Duplicate entries generate errors.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata</td></tr><tr><td><span class="term"><i><tt>userdata</tt></i>:</span></td><td>a pointer to the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 the addition succeeded and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashScan3" id="xmlHashScan3"></a>Function: xmlHashScan3</h3><pre class="programlisting">void	xmlHashScan3	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />				 <a href="libxml-hash.html#xmlHashScanner">xmlHashScanner</a> f, <br />				 void * data)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata</td></tr><tr><td><span class="term"><i><tt>userdata</tt></i>:</span></td><td>a pointer to the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 the addition succeeded and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashScan3" id="xmlHashScan3"></a>Function: xmlHashScan3</h3><pre class="programlisting">void	xmlHashScan3			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />					 <a href="libxml-hash.html#xmlHashScanner">xmlHashScanner</a> f, <br />					 void * data)<br />
 </pre><p>Scan the hash @table and applied @f to each value matching (@name, @name2, @name3) tuple. If one of the names is null, the comparison is considered to match.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata or NULL</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata or NULL</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata or NULL</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the scanner function for items in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra data passed to f</td></tr></tbody></table></div>
-      Callback when scanning data in a hash with the simple scanner.
-      
-      
-      
-      
-    <h3><a name="xmlHashAddEntry" id="xmlHashAddEntry"></a>Function: xmlHashAddEntry</h3><pre class="programlisting">int	xmlHashAddEntry	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 void * userdata)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata or NULL</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata or NULL</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata or NULL</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the scanner function for items in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra data passed to f</td></tr></tbody></table></div><h3><a name="xmlHashScanner" id="xmlHashScanner"></a>Function type: xmlHashScanner</h3><pre class="programlisting">Function type: xmlHashScanner
+void	xmlHashScanner			(void * payload, <br />					 void * data, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
+</pre><p>Callback when scanning data in a hash with the simple scanner.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>payload</tt></i>:</span></td><td>the data in the hash</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>extra scannner data</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name associated</td></tr></tbody></table></div><br />
+<h3><a name="xmlHashAddEntry" id="xmlHashAddEntry"></a>Function: xmlHashAddEntry</h3><pre class="programlisting">int	xmlHashAddEntry			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 void * userdata)<br />
 </pre><p>Add the @userdata to the hash @table. This can later be retrieved by using the @name. Duplicate names generate errors.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>userdata</tt></i>:</span></td><td>a pointer to the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 the addition succeeded and -1 in case of error.</td></tr></tbody></table></div>
-      Callback to copy data from a hash.
-      
-      
-      
-    <h3><a name="xmlHashCreate" id="xmlHashCreate"></a>Function: xmlHashCreate</h3><pre class="programlisting"><a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	xmlHashCreate	(int size)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>userdata</tt></i>:</span></td><td>a pointer to the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 the addition succeeded and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashCopier" id="xmlHashCopier"></a>Function type: xmlHashCopier</h3><pre class="programlisting">Function type: xmlHashCopier
+void *	xmlHashCopier			(void * payload, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
+</pre><p>Callback to copy data from a hash.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>payload</tt></i>:</span></td><td>the data in the hash</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name associated</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a copy of the data or NULL in case of error.</td></tr></tbody></table></div><br />
+<h3><a name="xmlHashCreate" id="xmlHashCreate"></a>Function: xmlHashCreate</h3><pre class="programlisting"><a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	xmlHashCreate		(int size)<br />
 </pre><p>Create a new xmlHashTablePtr.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the hash table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object, or NULL if an error occured.</td></tr></tbody></table></div><h3><a name="xmlHashFree" id="xmlHashFree"></a>Function: xmlHashFree</h3><pre class="programlisting">void	xmlHashFree	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the hash table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object, or NULL if an error occured.</td></tr></tbody></table></div><h3><a name="xmlHashFree" id="xmlHashFree"></a>Function: xmlHashFree</h3><pre class="programlisting">void	xmlHashFree			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
 </pre><p>Free the hash @table and its contents. The userdata is deallocated with @f if provided.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the deallocator function for items in the hash</td></tr></tbody></table></div><h3><a name="xmlHashUpdateEntry2" id="xmlHashUpdateEntry2"></a>Function: xmlHashUpdateEntry2</h3><pre class="programlisting">int	xmlHashUpdateEntry2	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 void * userdata, <br />				 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
-</pre><p>Add the @userdata to the hash @table. This can later be retrieved by using the (@name, @name2) tuple. Existing entry for this tuple will be removed and freed with @f if found.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>userdata</tt></i>:</span></td><td>a pointer to the userdata</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the deallocator function for replaced item (if any)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 the addition succeeded and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashLookup" id="xmlHashLookup"></a>Function: xmlHashLookup</h3><pre class="programlisting">void *	xmlHashLookup	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the deallocator function for items in the hash</td></tr></tbody></table></div><h3><a name="xmlHashLookup" id="xmlHashLookup"></a>Function: xmlHashLookup</h3><pre class="programlisting">void *	xmlHashLookup			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Find the userdata specified by the @name.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the pointer to the userdata</td></tr></tbody></table></div><h3><a name="xmlHashQLookup" id="xmlHashQLookup"></a>Function: xmlHashQLookup</h3><pre class="programlisting">void *	xmlHashQLookup	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the pointer to the userdata</td></tr></tbody></table></div><h3><a name="xmlHashQLookup" id="xmlHashQLookup"></a>Function: xmlHashQLookup</h3><pre class="programlisting">void *	xmlHashQLookup			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Find the userdata specified by the QName @prefix:@name/@name.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix of the userdata</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the pointer to the userdata</td></tr></tbody></table></div><h3><a name="xmlHashAddEntry2" id="xmlHashAddEntry2"></a>Function: xmlHashAddEntry2</h3><pre class="programlisting">int	xmlHashAddEntry2	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 void * userdata)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix of the userdata</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the pointer to the userdata</td></tr></tbody></table></div><h3><a name="xmlHashUpdateEntry2" id="xmlHashUpdateEntry2"></a>Function: xmlHashUpdateEntry2</h3><pre class="programlisting">int	xmlHashUpdateEntry2		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 void * userdata, <br />					 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
+</pre><p>Add the @userdata to the hash @table. This can later be retrieved by using the (@name, @name2) tuple. Existing entry for this tuple will be removed and freed with @f if found.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>userdata</tt></i>:</span></td><td>a pointer to the userdata</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the deallocator function for replaced item (if any)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 the addition succeeded and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashAddEntry2" id="xmlHashAddEntry2"></a>Function: xmlHashAddEntry2</h3><pre class="programlisting">int	xmlHashAddEntry2		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 void * userdata)<br />
 </pre><p>Add the @userdata to the hash @table. This can later be retrieved by using the (@name, @name2) tuple. Duplicate tuples generate errors.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>userdata</tt></i>:</span></td><td>a pointer to the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 the addition succeeded and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashRemoveEntry3" id="xmlHashRemoveEntry3"></a>Function: xmlHashRemoveEntry3</h3><pre class="programlisting">int	xmlHashRemoveEntry3	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />				 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>userdata</tt></i>:</span></td><td>a pointer to the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 the addition succeeded and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlHashRemoveEntry3" id="xmlHashRemoveEntry3"></a>Function: xmlHashRemoveEntry3</h3><pre class="programlisting">int	xmlHashRemoveEntry3		(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name2, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name3, <br />					 <a href="libxml-hash.html#xmlHashDeallocator">xmlHashDeallocator</a> f)<br />
 </pre><p>Find the userdata specified by the (@name, @name2, @name3) tuple and remove it from the hash @table. Existing userdata for this tuple will be removed and freed with @f.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the deallocator function for removed item (if any)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the removal succeeded and -1 in case of error or not found.</td></tr></tbody></table></div><h3><a name="xmlHashSize" id="xmlHashSize"></a>Function: xmlHashSize</h3><pre class="programlisting">int	xmlHashSize	(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the userdata</td></tr><tr><td><span class="term"><i><tt>name2</tt></i>:</span></td><td>a second name of the userdata</td></tr><tr><td><span class="term"><i><tt>name3</tt></i>:</span></td><td>a third name of the userdata</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the deallocator function for removed item (if any)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the removal succeeded and -1 in case of error or not found.</td></tr></tbody></table></div><h3><a name="xmlHashSize" id="xmlHashSize"></a>Function: xmlHashSize</h3><pre class="programlisting">int	xmlHashSize			(<a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a> table)<br />
 </pre><p>Query the number of elements installed in the hash @table.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>the hash table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of elements in the hash table or -1 in case of error</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-list.html b/doc/html/libxml-list.html
index a64b7fc..2af621f 100644
--- a/doc/html/libxml-list.html
+++ b/doc/html/libxml-list.html
@@ -10,114 +10,111 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module list from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module list from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-hash.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-hash.html">hash</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-nanoftp.html">nanoftp</a></th><td><a accesskey="n" href="libxml-nanoftp.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this module implement the list support used in various place in the library. </p><h2>Table of Contents</h2><pre class="programlisting"><a name="xmlListWalker" id="xmlListWalker"></a>Function type: xmlListWalker
-int	xmlListWalker	(const void * data, <br />				 const void * user)
-</pre><p>Callback function used when walking a list with xmlListWalk().</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the data found in the list</td></tr><tr><td><span class="term"><i><tt>user</tt></i>:</span></td><td>extra user provided data to the walker</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 to stop walking the list, 1 otherwise.</td></tr></tbody></table></div><br />
-<pre class="programlisting">Typedef <a href="libxml-list.html#xmlLink">xmlLink</a> * <a name="xmlLinkPtr" id="xmlLinkPtr">xmlLinkPtr</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlListReverseWalk">xmlListReverseWalk</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br />				 const void * user)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlLinkGetData">xmlLinkGetData</a>	(<a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a> lk)<br />
-</pre><pre class="programlisting">int	<a href="#xmlListInsert">xmlListInsert</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><pre class="programlisting">int	<a href="#xmlListEmpty">xmlListEmpty</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><pre class="programlisting">int	<a href="#xmlListRemoveFirst">xmlListRemoveFirst</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><pre class="programlisting"><a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a>	<a href="#xmlListFront">xmlListFront</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><pre class="programlisting">void	<a href="#xmlListSort">xmlListSort</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><pre class="programlisting">void	<a href="#xmlListClear">xmlListClear</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><pre class="programlisting"><a name="xmlListDeallocator" id="xmlListDeallocator"></a>Function type: xmlListDeallocator
-void	xmlListDeallocator	(<a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a> lk)
-</pre><p>Callback function used to free data from a list.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>lk</tt></i>:</span></td><td>the data to deallocate</td></tr></tbody></table></div><br />
-<pre class="programlisting">Structure <a name="xmlList" id="xmlList">xmlList</a><br />struct _xmlList {
+    </style><title>Module list from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module list from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-hash.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-hash.html">hash</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-nanoftp.html">nanoftp</a></th><td><a accesskey="n" href="libxml-nanoftp.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this module implement the list support used in various place in the library. </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xmlLink">xmlLink</a><br />struct _xmlLink
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">Structure <a name="xmlLink" id="xmlLink">xmlLink</a><br />struct _xmlLink {
+</pre><pre class="programlisting">Typedef <a href="libxml-list.html#xmlLink">xmlLink</a> * <a name="xmlLinkPtr" id="xmlLinkPtr">xmlLinkPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlList">xmlList</a><br />struct _xmlList
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting"><a href="libxml-list.html#xmlListPtr">xmlListPtr</a>	<a href="#xmlListCreate">xmlListCreate</a>	(<a href="libxml-list.html#xmlListDeallocator">xmlListDeallocator</a> deallocator, <br />				 <a href="libxml-list.html#xmlListDataCompare">xmlListDataCompare</a> compare)<br />
-</pre><pre class="programlisting">int	<a href="#xmlListAppend">xmlListAppend</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><pre class="programlisting">int	<a href="#xmlListRemoveAll">xmlListRemoveAll</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><pre class="programlisting"><a href="libxml-list.html#xmlListPtr">xmlListPtr</a>	<a href="#xmlListDup">xmlListDup</a>	(const <a href="libxml-list.html#xmlListPtr">xmlListPtr</a> old)<br />
 </pre><pre class="programlisting">Typedef <a href="libxml-list.html#xmlList">xmlList</a> * <a name="xmlListPtr" id="xmlListPtr">xmlListPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlListRemoveLast">xmlListRemoveLast</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><pre class="programlisting">void	<a href="#xmlListWalk">xmlListWalk</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br />				 const void * user)<br />
-</pre><pre class="programlisting">void	<a href="#xmlListReverse">xmlListReverse</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><pre class="programlisting"><a name="xmlListDataCompare" id="xmlListDataCompare"></a>Function type: xmlListDataCompare
-int	xmlListDataCompare	(const void * data0, <br />				 const void * data1)
-</pre><p>Callback function used to compare 2 data.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>data0</tt></i>:</span></td><td>the first data</td></tr><tr><td><span class="term"><i><tt>data1</tt></i>:</span></td><td>the second data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 is equality, -1 or 1 otherwise depending on the ordering.</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlListSize">xmlListSize</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><pre class="programlisting">int	<a href="#xmlListPushFront">xmlListPushFront</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><pre class="programlisting"><a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a>	<a href="#xmlListEnd">xmlListEnd</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><pre class="programlisting">int	<a href="#xmlListCopy">xmlListCopy</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> cur, <br />				 const <a href="libxml-list.html#xmlListPtr">xmlListPtr</a> old)<br />
-</pre><pre class="programlisting">void	<a href="#xmlListPopBack">xmlListPopBack</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><pre class="programlisting">int	<a href="#xmlListPushBack">xmlListPushBack</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><pre class="programlisting">void	<a href="#xmlListPopFront">xmlListPopFront</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><pre class="programlisting">void	<a href="#xmlListDelete">xmlListDelete</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlListReverseSearch">xmlListReverseSearch</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlListSearch">xmlListSearch</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><pre class="programlisting">void	<a href="#xmlListMerge">xmlListMerge</a>	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l1, <br />				 <a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l2)<br />
-</pre><h2>Description</h2>
-
-      Callback function used when walking a list with xmlListWalk().
-      
-      
-      
-    <h3><a name="xmlListReverseWalk" id="xmlListReverseWalk"></a>Function: xmlListReverseWalk</h3><pre class="programlisting">void	xmlListReverseWalk	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br />				 const void * user)<br />
-</pre><p>Walk all the element of the list in reverse order and apply the walker function to it</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>walker</tt></i>:</span></td><td>a processing function</td></tr><tr><td><span class="term"><i><tt>user</tt></i>:</span></td><td>a user parameter passed to the walker function</td></tr></tbody></table></div><h3><a name="xmlLinkGetData" id="xmlLinkGetData"></a>Function: xmlLinkGetData</h3><pre class="programlisting">void *	xmlLinkGetData	(<a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a> lk)<br />
-</pre><p>See Returns.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>lk</tt></i>:</span></td><td>a link</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the data referenced from this link</td></tr></tbody></table></div><h3><a name="xmlListInsert" id="xmlListInsert"></a>Function: xmlListInsert</h3><pre class="programlisting">int	xmlListInsert	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><p>Insert data in the ordered list at the beginning for this value</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, 1 in case of failure</td></tr></tbody></table></div><h3><a name="xmlListEmpty" id="xmlListEmpty"></a>Function: xmlListEmpty</h3><pre class="programlisting">int	xmlListEmpty	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><p>Is the list empty ?</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the list is empty, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlListRemoveFirst" id="xmlListRemoveFirst"></a>Function: xmlListRemoveFirst</h3><pre class="programlisting">int	xmlListRemoveFirst	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
+</pre><pre class="programlisting">void *	<a href="#xmlLinkGetData">xmlLinkGetData</a>			(<a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a> lk)</pre>
+<pre class="programlisting">int	<a href="#xmlListAppend">xmlListAppend</a>			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)</pre>
+<pre class="programlisting">void	<a href="#xmlListClear">xmlListClear</a>			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)</pre>
+<pre class="programlisting">int	<a href="#xmlListCopy">xmlListCopy</a>			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> cur, <br />					 const <a href="libxml-list.html#xmlListPtr">xmlListPtr</a> old)</pre>
+<pre class="programlisting"><a href="libxml-list.html#xmlListPtr">xmlListPtr</a>	<a href="#xmlListCreate">xmlListCreate</a>		(<a href="libxml-list.html#xmlListDeallocator">xmlListDeallocator</a> deallocator, <br />					 <a href="libxml-list.html#xmlListDataCompare">xmlListDataCompare</a> compare)</pre>
+<pre class="programlisting">Function type: <a href="#xmlListDataCompare">xmlListDataCompare</a>
+int	<a href="#xmlListDataCompare">xmlListDataCompare</a>		(const void * data0, <br />					 const void * data1)
+</pre>
+<pre class="programlisting">Function type: <a href="#xmlListDeallocator">xmlListDeallocator</a>
+void	<a href="#xmlListDeallocator">xmlListDeallocator</a>		(<a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a> lk)
+</pre>
+<pre class="programlisting">void	<a href="#xmlListDelete">xmlListDelete</a>			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)</pre>
+<pre class="programlisting"><a href="libxml-list.html#xmlListPtr">xmlListPtr</a>	<a href="#xmlListDup">xmlListDup</a>		(const <a href="libxml-list.html#xmlListPtr">xmlListPtr</a> old)</pre>
+<pre class="programlisting">int	<a href="#xmlListEmpty">xmlListEmpty</a>			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)</pre>
+<pre class="programlisting"><a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a>	<a href="#xmlListEnd">xmlListEnd</a>		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)</pre>
+<pre class="programlisting"><a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a>	<a href="#xmlListFront">xmlListFront</a>		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)</pre>
+<pre class="programlisting">int	<a href="#xmlListInsert">xmlListInsert</a>			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)</pre>
+<pre class="programlisting">void	<a href="#xmlListMerge">xmlListMerge</a>			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l1, <br />					 <a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l2)</pre>
+<pre class="programlisting">void	<a href="#xmlListPopBack">xmlListPopBack</a>			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)</pre>
+<pre class="programlisting">void	<a href="#xmlListPopFront">xmlListPopFront</a>			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)</pre>
+<pre class="programlisting">int	<a href="#xmlListPushBack">xmlListPushBack</a>			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)</pre>
+<pre class="programlisting">int	<a href="#xmlListPushFront">xmlListPushFront</a>		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)</pre>
+<pre class="programlisting">int	<a href="#xmlListRemoveAll">xmlListRemoveAll</a>		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)</pre>
+<pre class="programlisting">int	<a href="#xmlListRemoveFirst">xmlListRemoveFirst</a>		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)</pre>
+<pre class="programlisting">int	<a href="#xmlListRemoveLast">xmlListRemoveLast</a>		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)</pre>
+<pre class="programlisting">void	<a href="#xmlListReverse">xmlListReverse</a>			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)</pre>
+<pre class="programlisting">void *	<a href="#xmlListReverseSearch">xmlListReverseSearch</a>		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)</pre>
+<pre class="programlisting">void	<a href="#xmlListReverseWalk">xmlListReverseWalk</a>		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br />					 const void * user)</pre>
+<pre class="programlisting">void *	<a href="#xmlListSearch">xmlListSearch</a>			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)</pre>
+<pre class="programlisting">int	<a href="#xmlListSize">xmlListSize</a>			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)</pre>
+<pre class="programlisting">void	<a href="#xmlListSort">xmlListSort</a>			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)</pre>
+<pre class="programlisting">void	<a href="#xmlListWalk">xmlListWalk</a>			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br />					 const void * user)</pre>
+<pre class="programlisting">Function type: <a href="#xmlListWalker">xmlListWalker</a>
+int	<a href="#xmlListWalker">xmlListWalker</a>			(const void * data, <br />					 const void * user)
+</pre>
+<h2>Description</h2>
+<h3><a name="xmlLink" id="xmlLink">Structure xmlLink</a></h3><pre class="programlisting">Structure xmlLink<br />struct _xmlLink {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlList" id="xmlList">Structure xmlList</a></h3><pre class="programlisting">Structure xmlList<br />struct _xmlList {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlListWalker" id="xmlListWalker"></a>Function type: xmlListWalker</h3><pre class="programlisting">Function type: xmlListWalker
+int	xmlListWalker			(const void * data, <br />					 const void * user)
+</pre><p>Callback function used when walking a list with xmlListWalk().</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the data found in the list</td></tr><tr><td><span class="term"><i><tt>user</tt></i>:</span></td><td>extra user provided data to the walker</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 to stop walking the list, 1 otherwise.</td></tr></tbody></table></div><br />
+<h3><a name="xmlListRemoveFirst" id="xmlListRemoveFirst"></a>Function: xmlListRemoveFirst</h3><pre class="programlisting">int	xmlListRemoveFirst		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)<br />
 </pre><p>Remove the first instance associated to data in the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>list data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if a deallocation occured, or 0 if not found</td></tr></tbody></table></div><h3><a name="xmlListFront" id="xmlListFront"></a>Function: xmlListFront</h3><pre class="programlisting"><a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a>	xmlListFront	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>list data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if a deallocation occured, or 0 if not found</td></tr></tbody></table></div><h3><a name="xmlListReverseWalk" id="xmlListReverseWalk"></a>Function: xmlListReverseWalk</h3><pre class="programlisting">void	xmlListReverseWalk		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br />					 const void * user)<br />
+</pre><p>Walk all the element of the list in reverse order and apply the walker function to it</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>walker</tt></i>:</span></td><td>a processing function</td></tr><tr><td><span class="term"><i><tt>user</tt></i>:</span></td><td>a user parameter passed to the walker function</td></tr></tbody></table></div><h3><a name="xmlLinkGetData" id="xmlLinkGetData"></a>Function: xmlLinkGetData</h3><pre class="programlisting">void *	xmlLinkGetData			(<a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a> lk)<br />
+</pre><p>See Returns.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>lk</tt></i>:</span></td><td>a link</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the data referenced from this link</td></tr></tbody></table></div><h3><a name="xmlListInsert" id="xmlListInsert"></a>Function: xmlListInsert</h3><pre class="programlisting">int	xmlListInsert			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)<br />
+</pre><p>Insert data in the ordered list at the beginning for this value</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, 1 in case of failure</td></tr></tbody></table></div><h3><a name="xmlListEmpty" id="xmlListEmpty"></a>Function: xmlListEmpty</h3><pre class="programlisting">int	xmlListEmpty			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
+</pre><p>Is the list empty ?</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the list is empty, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlListFront" id="xmlListFront"></a>Function: xmlListFront</h3><pre class="programlisting"><a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a>	xmlListFront		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
 </pre><p>Get the first element in the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the first element in the list, or NULL</td></tr></tbody></table></div><h3><a name="xmlListSort" id="xmlListSort"></a>Function: xmlListSort</h3><pre class="programlisting">void	xmlListSort	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the first element in the list, or NULL</td></tr></tbody></table></div><h3><a name="xmlListSort" id="xmlListSort"></a>Function: xmlListSort</h3><pre class="programlisting">void	xmlListSort			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
 </pre><p>Sort all the elements in the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div><h3><a name="xmlListClear" id="xmlListClear"></a>Function: xmlListClear</h3><pre class="programlisting">void	xmlListClear	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div><h3><a name="xmlListClear" id="xmlListClear"></a>Function: xmlListClear</h3><pre class="programlisting">void	xmlListClear			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
 </pre><p>Remove the all data in the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div>
-      Callback function used to free data from a list.
-      
-      
-    <h3><a name="xmlListCreate" id="xmlListCreate"></a>Function: xmlListCreate</h3><pre class="programlisting"><a href="libxml-list.html#xmlListPtr">xmlListPtr</a>	xmlListCreate	(<a href="libxml-list.html#xmlListDeallocator">xmlListDeallocator</a> deallocator, <br />				 <a href="libxml-list.html#xmlListDataCompare">xmlListDataCompare</a> compare)<br />
-</pre><p>Create a new list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>deallocator</tt></i>:</span></td><td>an optional deallocator function</td></tr><tr><td><span class="term"><i><tt>compare</tt></i>:</span></td><td>an optional comparison function</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new list or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlListAppend" id="xmlListAppend"></a>Function: xmlListAppend</h3><pre class="programlisting">int	xmlListAppend	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><p>Insert data in the ordered list at the end for this value</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, 1 in case of failure</td></tr></tbody></table></div><h3><a name="xmlListRemoveAll" id="xmlListRemoveAll"></a>Function: xmlListRemoveAll</h3><pre class="programlisting">int	xmlListRemoveAll	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><p>Remove the all instance associated to data in the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>list data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of deallocation, or 0 if not found</td></tr></tbody></table></div><h3><a name="xmlListDup" id="xmlListDup"></a>Function: xmlListDup</h3><pre class="programlisting"><a href="libxml-list.html#xmlListPtr">xmlListPtr</a>	xmlListDup	(const <a href="libxml-list.html#xmlListPtr">xmlListPtr</a> old)<br />
-</pre><p>Duplicate the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>old</tt></i>:</span></td><td>the list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new copy of the list or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlListRemoveLast" id="xmlListRemoveLast"></a>Function: xmlListRemoveLast</h3><pre class="programlisting">int	xmlListRemoveLast	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><p>Remove the last instance associated to data in the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>list data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if a deallocation occured, or 0 if not found</td></tr></tbody></table></div><h3><a name="xmlListWalk" id="xmlListWalk"></a>Function: xmlListWalk</h3><pre class="programlisting">void	xmlListWalk	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br />				 const void * user)<br />
-</pre><p>Walk all the element of the first from first to last and apply the walker function to it</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>walker</tt></i>:</span></td><td>a processing function</td></tr><tr><td><span class="term"><i><tt>user</tt></i>:</span></td><td>a user parameter passed to the walker function</td></tr></tbody></table></div><h3><a name="xmlListReverse" id="xmlListReverse"></a>Function: xmlListReverse</h3><pre class="programlisting">void	xmlListReverse	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><p>Reverse the order of the elements in the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div>
-      Callback function used to compare 2 data.
-      
-      
-      
-    <h3><a name="xmlListSize" id="xmlListSize"></a>Function: xmlListSize</h3><pre class="programlisting">int	xmlListSize	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><p>Get the number of elements in the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of elements in the list</td></tr></tbody></table></div><h3><a name="xmlListPushFront" id="xmlListPushFront"></a>Function: xmlListPushFront</h3><pre class="programlisting">int	xmlListPushFront	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><p>add the new data at the beginning of the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>new data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if successful, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlListEnd" id="xmlListEnd"></a>Function: xmlListEnd</h3><pre class="programlisting"><a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a>	xmlListEnd	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><p>Get the last element in the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last element in the list, or NULL</td></tr></tbody></table></div><h3><a name="xmlListCopy" id="xmlListCopy"></a>Function: xmlListCopy</h3><pre class="programlisting">int	xmlListCopy	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> cur, <br />				 const <a href="libxml-list.html#xmlListPtr">xmlListPtr</a> old)<br />
-</pre><p>Move all the element from the old list in the new list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the new list</td></tr><tr><td><span class="term"><i><tt>old</tt></i>:</span></td><td>the old list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success 1 in case of error</td></tr></tbody></table></div><h3><a name="xmlListPopBack" id="xmlListPopBack"></a>Function: xmlListPopBack</h3><pre class="programlisting">void	xmlListPopBack	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><p>Removes the last element in the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div><h3><a name="xmlListPushBack" id="xmlListPushBack"></a>Function: xmlListPushBack</h3><pre class="programlisting">int	xmlListPushBack	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><p>add the new data at the end of the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>new data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if successful, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlListPopFront" id="xmlListPopFront"></a>Function: xmlListPopFront</h3><pre class="programlisting">void	xmlListPopFront	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><p>Removes the first element in the list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div><h3><a name="xmlListDelete" id="xmlListDelete"></a>Function: xmlListDelete</h3><pre class="programlisting">void	xmlListDelete	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
-</pre><p>Deletes the list and its associated data</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div><h3><a name="xmlListReverseSearch" id="xmlListReverseSearch"></a>Function: xmlListReverseSearch</h3><pre class="programlisting">void *	xmlListReverseSearch	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><p>Search the list in reverse order for an existing value of @data</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>a search value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value associated to @data or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlListSearch" id="xmlListSearch"></a>Function: xmlListSearch</h3><pre class="programlisting">void *	xmlListSearch	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />				 void * data)<br />
-</pre><p>Search the list for an existing value of @data</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>a search value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value associated to @data or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlListMerge" id="xmlListMerge"></a>Function: xmlListMerge</h3><pre class="programlisting">void	xmlListMerge	(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l1, <br />				 <a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l2)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div><h3><a name="xmlListDeallocator" id="xmlListDeallocator"></a>Function type: xmlListDeallocator</h3><pre class="programlisting">Function type: xmlListDeallocator
+void	xmlListDeallocator		(<a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a> lk)
+</pre><p>Callback function used to free data from a list.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>lk</tt></i>:</span></td><td>the data to deallocate</td></tr></tbody></table></div><br />
+<h3><a name="xmlListMerge" id="xmlListMerge"></a>Function: xmlListMerge</h3><pre class="programlisting">void	xmlListMerge			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l1, <br />					 <a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l2)<br />
 </pre><p>include all the elements of the second list in the first one and clear the second list</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l1</tt></i>:</span></td><td>the original list</td></tr><tr><td><span class="term"><i><tt>l2</tt></i>:</span></td><td>the new list</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l1</tt></i>:</span></td><td>the original list</td></tr><tr><td><span class="term"><i><tt>l2</tt></i>:</span></td><td>the new list</td></tr></tbody></table></div><h3><a name="xmlListCreate" id="xmlListCreate"></a>Function: xmlListCreate</h3><pre class="programlisting"><a href="libxml-list.html#xmlListPtr">xmlListPtr</a>	xmlListCreate		(<a href="libxml-list.html#xmlListDeallocator">xmlListDeallocator</a> deallocator, <br />					 <a href="libxml-list.html#xmlListDataCompare">xmlListDataCompare</a> compare)<br />
+</pre><p>Create a new list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>deallocator</tt></i>:</span></td><td>an optional deallocator function</td></tr><tr><td><span class="term"><i><tt>compare</tt></i>:</span></td><td>an optional comparison function</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new list or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlListAppend" id="xmlListAppend"></a>Function: xmlListAppend</h3><pre class="programlisting">int	xmlListAppend			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)<br />
+</pre><p>Insert data in the ordered list at the end for this value</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, 1 in case of failure</td></tr></tbody></table></div><h3><a name="xmlListRemoveAll" id="xmlListRemoveAll"></a>Function: xmlListRemoveAll</h3><pre class="programlisting">int	xmlListRemoveAll		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)<br />
+</pre><p>Remove the all instance associated to data in the list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>list data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of deallocation, or 0 if not found</td></tr></tbody></table></div><h3><a name="xmlListDup" id="xmlListDup"></a>Function: xmlListDup</h3><pre class="programlisting"><a href="libxml-list.html#xmlListPtr">xmlListPtr</a>	xmlListDup		(const <a href="libxml-list.html#xmlListPtr">xmlListPtr</a> old)<br />
+</pre><p>Duplicate the list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>old</tt></i>:</span></td><td>the list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new copy of the list or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlListReverse" id="xmlListReverse"></a>Function: xmlListReverse</h3><pre class="programlisting">void	xmlListReverse			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
+</pre><p>Reverse the order of the elements in the list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div><h3><a name="xmlListRemoveLast" id="xmlListRemoveLast"></a>Function: xmlListRemoveLast</h3><pre class="programlisting">int	xmlListRemoveLast		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)<br />
+</pre><p>Remove the last instance associated to data in the list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>list data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if a deallocation occured, or 0 if not found</td></tr></tbody></table></div><h3><a name="xmlListWalk" id="xmlListWalk"></a>Function: xmlListWalk</h3><pre class="programlisting">void	xmlListWalk			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 <a href="libxml-list.html#xmlListWalker">xmlListWalker</a> walker, <br />					 const void * user)<br />
+</pre><p>Walk all the element of the first from first to last and apply the walker function to it</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>walker</tt></i>:</span></td><td>a processing function</td></tr><tr><td><span class="term"><i><tt>user</tt></i>:</span></td><td>a user parameter passed to the walker function</td></tr></tbody></table></div><h3><a name="xmlListDataCompare" id="xmlListDataCompare"></a>Function type: xmlListDataCompare</h3><pre class="programlisting">Function type: xmlListDataCompare
+int	xmlListDataCompare		(const void * data0, <br />					 const void * data1)
+</pre><p>Callback function used to compare 2 data.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>data0</tt></i>:</span></td><td>the first data</td></tr><tr><td><span class="term"><i><tt>data1</tt></i>:</span></td><td>the second data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 is equality, -1 or 1 otherwise depending on the ordering.</td></tr></tbody></table></div><br />
+<h3><a name="xmlListSize" id="xmlListSize"></a>Function: xmlListSize</h3><pre class="programlisting">int	xmlListSize			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
+</pre><p>Get the number of elements in the list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of elements in the list</td></tr></tbody></table></div><h3><a name="xmlListPushFront" id="xmlListPushFront"></a>Function: xmlListPushFront</h3><pre class="programlisting">int	xmlListPushFront		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)<br />
+</pre><p>add the new data at the beginning of the list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>new data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if successful, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlListEnd" id="xmlListEnd"></a>Function: xmlListEnd</h3><pre class="programlisting"><a href="libxml-list.html#xmlLinkPtr">xmlLinkPtr</a>	xmlListEnd		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
+</pre><p>Get the last element in the list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last element in the list, or NULL</td></tr></tbody></table></div><h3><a name="xmlListCopy" id="xmlListCopy"></a>Function: xmlListCopy</h3><pre class="programlisting">int	xmlListCopy			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> cur, <br />					 const <a href="libxml-list.html#xmlListPtr">xmlListPtr</a> old)<br />
+</pre><p>Move all the element from the old list in the new list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the new list</td></tr><tr><td><span class="term"><i><tt>old</tt></i>:</span></td><td>the old list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success 1 in case of error</td></tr></tbody></table></div><h3><a name="xmlListPopBack" id="xmlListPopBack"></a>Function: xmlListPopBack</h3><pre class="programlisting">void	xmlListPopBack			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
+</pre><p>Removes the last element in the list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div><h3><a name="xmlListPushBack" id="xmlListPushBack"></a>Function: xmlListPushBack</h3><pre class="programlisting">int	xmlListPushBack			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)<br />
+</pre><p>add the new data at the end of the list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>new data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if successful, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlListPopFront" id="xmlListPopFront"></a>Function: xmlListPopFront</h3><pre class="programlisting">void	xmlListPopFront			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
+</pre><p>Removes the first element in the list</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div><h3><a name="xmlListDelete" id="xmlListDelete"></a>Function: xmlListDelete</h3><pre class="programlisting">void	xmlListDelete			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l)<br />
+</pre><p>Deletes the list and its associated data</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr></tbody></table></div><h3><a name="xmlListReverseSearch" id="xmlListReverseSearch"></a>Function: xmlListReverseSearch</h3><pre class="programlisting">void *	xmlListReverseSearch		(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)<br />
+</pre><p>Search the list in reverse order for an existing value of @data</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>a search value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value associated to @data or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlListSearch" id="xmlListSearch"></a>Function: xmlListSearch</h3><pre class="programlisting">void *	xmlListSearch			(<a href="libxml-list.html#xmlListPtr">xmlListPtr</a> l, <br />					 void * data)<br />
+</pre><p>Search the list for an existing value of @data</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>l</tt></i>:</span></td><td>a list</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>a search value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value associated to @data or NULL in case of error</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-nanoftp.html b/doc/html/libxml-nanoftp.html
index 999c9c3..15f8d88 100644
--- a/doc/html/libxml-nanoftp.html
+++ b/doc/html/libxml-nanoftp.html
@@ -10,98 +10,83 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module nanoftp from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module nanoftp from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-list.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-list.html">list</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-nanohttp.html">nanohttp</a></th><td><a accesskey="n" href="libxml-nanohttp.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>minimal FTP implementation allowing to fetch resources like external subset. </p><h2>Table of Contents</h2><pre class="programlisting">void	<a href="#xmlNanoFTPScanProxy">xmlNanoFTPScanProxy</a>	(const char * URL)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNanoFTPQuit">xmlNanoFTPQuit</a>	(void * ctx)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNanoFTPClose">xmlNanoFTPClose</a>	(void * ctx)<br />
-</pre><pre class="programlisting"><a name="ftpDataCallback" id="ftpDataCallback"></a>Function type: ftpDataCallback
-void	ftpDataCallback	(void * userData, <br />				 const char * data, <br />				 int len)
-</pre><p>A callback for the <a href="libxml-nanoftp.html#xmlNanoFTPGet">xmlNanoFTPGet</a> command.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>the user provided context</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the data received</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>its size in bytes</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlNanoFTPGetResponse">xmlNanoFTPGetResponse</a>	(void * ctx)<br />
-</pre><pre class="programlisting"><a name="ftpListCallback" id="ftpListCallback"></a>Function type: ftpListCallback
-void	ftpListCallback	(void * userData, <br />				 const char * filename, <br />				 const char * attrib, <br />				 const char * owner, <br />				 const char * group, <br />				 unsigned long size, <br />				 int links, <br />				 int year, <br />				 const char * month, <br />				 int day, <br />				 int hour, <br />				 int minute)
-</pre><p>A callback for the <a href="libxml-nanoftp.html#xmlNanoFTPList">xmlNanoFTPList</a> command. Note that only one of year and day:minute are specified.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>user provided data for the callback</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the file name (including &quot;-&gt;&quot; when links are shown)</td></tr><tr><td><span class="term"><i><tt>attrib</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> string</td></tr><tr><td><span class="term"><i><tt>owner</tt></i>:</span></td><td>the owner string</td></tr><tr><td><span class="term"><i><tt>group</tt></i>:</span></td><td>the group string</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the file size</td></tr><tr><td><span class="term"><i><tt>links</tt></i>:</span></td><td>the link count</td></tr><tr><td><span class="term"><i><tt>year</tt></i>:</span></td><td>the year</td></tr><tr><td><span class="term"><i><tt>month</tt></i>:</span></td><td>the month</td></tr><tr><td><span class="term"><i><tt>day</tt></i>:</span></td><td>the day</td></tr><tr><td><span class="term"><i><tt>hour</tt></i>:</span></td><td>the hour</td></tr><tr><td><span class="term"><i><tt>minute</tt></i>:</span></td><td>the minute</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlNanoFTPCwd">xmlNanoFTPCwd</a>	(void * ctx, <br />				 char * directory)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNanoFTPCloseConnection">xmlNanoFTPCloseConnection</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#xmlNanoFTPProxy">xmlNanoFTPProxy</a>	(const char * host, <br />				 int port, <br />				 const char * user, <br />				 const char * passwd, <br />				 int type)<br />
-</pre><pre class="programlisting">void	<a href="#xmlNanoFTPInit">xmlNanoFTPInit</a>	(void)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlNanoFTPConnectTo">xmlNanoFTPConnectTo</a>	(const char * server, <br />				 int port)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNanoFTPList">xmlNanoFTPList</a>	(void * ctx, <br />				 <a href="libxml-nanoftp.html#ftpListCallback">ftpListCallback</a> callback, <br />				 void * userData, <br />				 char * filename)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNanoFTPUpdateURL">xmlNanoFTPUpdateURL</a>	(void * ctx, <br />				 const char * URL)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlNanoFTPOpen">xmlNanoFTPOpen</a>	(const char * URL)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNanoFTPConnect">xmlNanoFTPConnect</a>	(void * ctx)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNanoFTPDele">xmlNanoFTPDele</a>	(void * ctx, <br />				 char * file)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNanoFTPGet">xmlNanoFTPGet</a>	(void * ctx, <br />				 <a href="libxml-nanoftp.html#ftpDataCallback">ftpDataCallback</a> callback, <br />				 void * userData, <br />				 const char * filename)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNanoFTPGetSocket">xmlNanoFTPGetSocket</a>	(void * ctx, <br />				 const char * filename)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlNanoFTPNewCtxt">xmlNanoFTPNewCtxt</a>	(const char * URL)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNanoFTPCheckResponse">xmlNanoFTPCheckResponse</a>	(void * ctx)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNanoFTPRead">xmlNanoFTPRead</a>	(void * ctx, <br />				 void * dest, <br />				 int len)<br />
-</pre><pre class="programlisting">void	<a href="#xmlNanoFTPFreeCtxt">xmlNanoFTPFreeCtxt</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#xmlNanoFTPCleanup">xmlNanoFTPCleanup</a>	(void)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNanoFTPGetConnection">xmlNanoFTPGetConnection</a>	(void * ctx)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlNanoFTPScanProxy" id="xmlNanoFTPScanProxy"></a>Function: xmlNanoFTPScanProxy</h3><pre class="programlisting">void	xmlNanoFTPScanProxy	(const char * URL)<br />
+    </style><title>Module nanoftp from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module nanoftp from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-list.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-list.html">list</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-nanohttp.html">nanohttp</a></th><td><a accesskey="n" href="libxml-nanohttp.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>minimal FTP implementation allowing to fetch resources like external subset. </p><h2>Table of Contents</h2><pre class="programlisting">Function type: <a href="#ftpDataCallback">ftpDataCallback</a>
+void	<a href="#ftpDataCallback">ftpDataCallback</a>			(void * userData, <br />					 const char * data, <br />					 int len)
+</pre>
+<pre class="programlisting">Function type: <a href="#ftpListCallback">ftpListCallback</a>
+void	<a href="#ftpListCallback">ftpListCallback</a>			(void * userData, <br />					 const char * filename, <br />					 const char * attrib, <br />					 const char * owner, <br />					 const char * group, <br />					 unsigned long size, <br />					 int links, <br />					 int year, <br />					 const char * month, <br />					 int day, <br />					 int hour, <br />					 int minute)
+</pre>
+<pre class="programlisting">int	<a href="#xmlNanoFTPCheckResponse">xmlNanoFTPCheckResponse</a>		(void * ctx)</pre>
+<pre class="programlisting">void	<a href="#xmlNanoFTPCleanup">xmlNanoFTPCleanup</a>		(void)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoFTPClose">xmlNanoFTPClose</a>			(void * ctx)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoFTPCloseConnection">xmlNanoFTPCloseConnection</a>	(void * ctx)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoFTPConnect">xmlNanoFTPConnect</a>		(void * ctx)</pre>
+<pre class="programlisting">void *	<a href="#xmlNanoFTPConnectTo">xmlNanoFTPConnectTo</a>		(const char * server, <br />					 int port)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoFTPCwd">xmlNanoFTPCwd</a>			(void * ctx, <br />					 char * directory)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoFTPDele">xmlNanoFTPDele</a>			(void * ctx, <br />					 char * file)</pre>
+<pre class="programlisting">void	<a href="#xmlNanoFTPFreeCtxt">xmlNanoFTPFreeCtxt</a>		(void * ctx)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoFTPGet">xmlNanoFTPGet</a>			(void * ctx, <br />					 <a href="libxml-nanoftp.html#ftpDataCallback">ftpDataCallback</a> callback, <br />					 void * userData, <br />					 const char * filename)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoFTPGetConnection">xmlNanoFTPGetConnection</a>		(void * ctx)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoFTPGetResponse">xmlNanoFTPGetResponse</a>		(void * ctx)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoFTPGetSocket">xmlNanoFTPGetSocket</a>		(void * ctx, <br />					 const char * filename)</pre>
+<pre class="programlisting">void	<a href="#xmlNanoFTPInit">xmlNanoFTPInit</a>			(void)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoFTPList">xmlNanoFTPList</a>			(void * ctx, <br />					 <a href="libxml-nanoftp.html#ftpListCallback">ftpListCallback</a> callback, <br />					 void * userData, <br />					 char * filename)</pre>
+<pre class="programlisting">void *	<a href="#xmlNanoFTPNewCtxt">xmlNanoFTPNewCtxt</a>		(const char * URL)</pre>
+<pre class="programlisting">void *	<a href="#xmlNanoFTPOpen">xmlNanoFTPOpen</a>			(const char * URL)</pre>
+<pre class="programlisting">void	<a href="#xmlNanoFTPProxy">xmlNanoFTPProxy</a>			(const char * host, <br />					 int port, <br />					 const char * user, <br />					 const char * passwd, <br />					 int type)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoFTPQuit">xmlNanoFTPQuit</a>			(void * ctx)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoFTPRead">xmlNanoFTPRead</a>			(void * ctx, <br />					 void * dest, <br />					 int len)</pre>
+<pre class="programlisting">void	<a href="#xmlNanoFTPScanProxy">xmlNanoFTPScanProxy</a>		(const char * URL)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoFTPUpdateURL">xmlNanoFTPUpdateURL</a>		(void * ctx, <br />					 const char * URL)</pre>
+<h2>Description</h2>
+<h3><a name="xmlNanoFTPScanProxy" id="xmlNanoFTPScanProxy"></a>Function: xmlNanoFTPScanProxy</h3><pre class="programlisting">void	xmlNanoFTPScanProxy		(const char * URL)<br />
 </pre><p>(Re)Initialize the FTP Proxy context by parsing the URL and finding the protocol host port it indicates. Should be like ftp://myproxy/ or ftp://myproxy:3128/ A NULL URL cleans up proxy informations.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The proxy URL used to initialize the proxy context</td></tr></tbody></table></div><h3><a name="xmlNanoFTPQuit" id="xmlNanoFTPQuit"></a>Function: xmlNanoFTPQuit</h3><pre class="programlisting">int	xmlNanoFTPQuit	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The proxy URL used to initialize the proxy context</td></tr></tbody></table></div><h3><a name="xmlNanoFTPQuit" id="xmlNanoFTPQuit"></a>Function: xmlNanoFTPQuit</h3><pre class="programlisting">int	xmlNanoFTPQuit			(void * ctx)<br />
 </pre><p>Send a QUIT command to the server</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of error, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlNanoFTPClose" id="xmlNanoFTPClose"></a>Function: xmlNanoFTPClose</h3><pre class="programlisting">int	xmlNanoFTPClose	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of error, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlNanoFTPClose" id="xmlNanoFTPClose"></a>Function: xmlNanoFTPClose</h3><pre class="programlisting">int	xmlNanoFTPClose			(void * ctx)<br />
 </pre><p>Close the connection and both control and transport</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 incase of error, 0 otherwise</td></tr></tbody></table></div>
-      A callback for the xmlNanoFTPGet command.
-      
-      
-      
-      
-    <h3><a name="xmlNanoFTPGetResponse" id="xmlNanoFTPGetResponse"></a>Function: xmlNanoFTPGetResponse</h3><pre class="programlisting">int	xmlNanoFTPGetResponse	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 incase of error, 0 otherwise</td></tr></tbody></table></div><h3><a name="ftpDataCallback" id="ftpDataCallback"></a>Function type: ftpDataCallback</h3><pre class="programlisting">Function type: ftpDataCallback
+void	ftpDataCallback			(void * userData, <br />					 const char * data, <br />					 int len)
+</pre><p>A callback for the <a href="libxml-nanoftp.html#xmlNanoFTPGet">xmlNanoFTPGet</a> command.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>the user provided context</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the data received</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>its size in bytes</td></tr></tbody></table></div><br />
+<h3><a name="xmlNanoFTPGetResponse" id="xmlNanoFTPGetResponse"></a>Function: xmlNanoFTPGetResponse</h3><pre class="programlisting">int	xmlNanoFTPGetResponse		(void * ctx)<br />
 </pre><p>Get the response from the FTP server after a command.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the code number</td></tr></tbody></table></div>
-      A callback for the xmlNanoFTPList command. Note that only one of year and day:minute are specified.
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlNanoFTPCwd" id="xmlNanoFTPCwd"></a>Function: xmlNanoFTPCwd</h3><pre class="programlisting">int	xmlNanoFTPCwd	(void * ctx, <br />				 char * directory)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the code number</td></tr></tbody></table></div><h3><a name="ftpListCallback" id="ftpListCallback"></a>Function type: ftpListCallback</h3><pre class="programlisting">Function type: ftpListCallback
+void	ftpListCallback			(void * userData, <br />					 const char * filename, <br />					 const char * attrib, <br />					 const char * owner, <br />					 const char * group, <br />					 unsigned long size, <br />					 int links, <br />					 int year, <br />					 const char * month, <br />					 int day, <br />					 int hour, <br />					 int minute)
+</pre><p>A callback for the <a href="libxml-nanoftp.html#xmlNanoFTPList">xmlNanoFTPList</a> command. Note that only one of year and day:minute are specified.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>user provided data for the callback</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the file name (including &quot;-&gt;&quot; when links are shown)</td></tr><tr><td><span class="term"><i><tt>attrib</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> string</td></tr><tr><td><span class="term"><i><tt>owner</tt></i>:</span></td><td>the owner string</td></tr><tr><td><span class="term"><i><tt>group</tt></i>:</span></td><td>the group string</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the file size</td></tr><tr><td><span class="term"><i><tt>links</tt></i>:</span></td><td>the link count</td></tr><tr><td><span class="term"><i><tt>year</tt></i>:</span></td><td>the year</td></tr><tr><td><span class="term"><i><tt>month</tt></i>:</span></td><td>the month</td></tr><tr><td><span class="term"><i><tt>day</tt></i>:</span></td><td>the day</td></tr><tr><td><span class="term"><i><tt>hour</tt></i>:</span></td><td>the hour</td></tr><tr><td><span class="term"><i><tt>minute</tt></i>:</span></td><td>the minute</td></tr></tbody></table></div><br />
+<h3><a name="xmlNanoFTPCwd" id="xmlNanoFTPCwd"></a>Function: xmlNanoFTPCwd</h3><pre class="programlisting">int	xmlNanoFTPCwd			(void * ctx, <br />					 char * directory)<br />
 </pre><p>Tries to change the remote directory</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>directory</tt></i>:</span></td><td>a directory on the server</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 incase of error, 1 if CWD worked, 0 if it failed</td></tr></tbody></table></div><h3><a name="xmlNanoFTPCloseConnection" id="xmlNanoFTPCloseConnection"></a>Function: xmlNanoFTPCloseConnection</h3><pre class="programlisting">int	xmlNanoFTPCloseConnection	(void * ctx)<br />
 </pre><p>Close the data connection from the server</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 incase of error, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlNanoFTPProxy" id="xmlNanoFTPProxy"></a>Function: xmlNanoFTPProxy</h3><pre class="programlisting">void	xmlNanoFTPProxy	(const char * host, <br />				 int port, <br />				 const char * user, <br />				 const char * passwd, <br />				 int type)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 incase of error, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlNanoFTPProxy" id="xmlNanoFTPProxy"></a>Function: xmlNanoFTPProxy</h3><pre class="programlisting">void	xmlNanoFTPProxy			(const char * host, <br />					 int port, <br />					 const char * user, <br />					 const char * passwd, <br />					 int type)<br />
 </pre><p>Setup the FTP proxy informations. This can also be done by using ftp_proxy ftp_proxy_user and ftp_proxy_password environment variables.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>host</tt></i>:</span></td><td>the proxy host name</td></tr><tr><td><span class="term"><i><tt>port</tt></i>:</span></td><td>the proxy port</td></tr><tr><td><span class="term"><i><tt>user</tt></i>:</span></td><td>the proxy user name</td></tr><tr><td><span class="term"><i><tt>passwd</tt></i>:</span></td><td>the proxy password</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the type of proxy 1 for using SITE, 2 for USER a@b</td></tr></tbody></table></div><h3><a name="xmlNanoFTPInit" id="xmlNanoFTPInit"></a>Function: xmlNanoFTPInit</h3><pre class="programlisting">void	xmlNanoFTPInit	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>host</tt></i>:</span></td><td>the proxy host name</td></tr><tr><td><span class="term"><i><tt>port</tt></i>:</span></td><td>the proxy port</td></tr><tr><td><span class="term"><i><tt>user</tt></i>:</span></td><td>the proxy user name</td></tr><tr><td><span class="term"><i><tt>passwd</tt></i>:</span></td><td>the proxy password</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the type of proxy 1 for using SITE, 2 for USER a@b</td></tr></tbody></table></div><h3><a name="xmlNanoFTPInit" id="xmlNanoFTPInit"></a>Function: xmlNanoFTPInit</h3><pre class="programlisting">void	xmlNanoFTPInit			(void)<br />
 </pre><p>Initialize the FTP protocol layer. Currently it just checks for proxy informations, and get the hostname</p>
-<h3><a name="xmlNanoFTPConnectTo" id="xmlNanoFTPConnectTo"></a>Function: xmlNanoFTPConnectTo</h3><pre class="programlisting">void *	xmlNanoFTPConnectTo	(const char * server, <br />				 int port)<br />
+<h3><a name="xmlNanoFTPConnectTo" id="xmlNanoFTPConnectTo"></a>Function: xmlNanoFTPConnectTo</h3><pre class="programlisting">void *	xmlNanoFTPConnectTo		(const char * server, <br />					 int port)<br />
 </pre><p>Tries to open a control connection to the given server/port</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>server</tt></i>:</span></td><td>an FTP server name</td></tr><tr><td><span class="term"><i><tt>port</tt></i>:</span></td><td>the port (use 21 if 0)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an fTP context or NULL if it failed</td></tr></tbody></table></div><h3><a name="xmlNanoFTPList" id="xmlNanoFTPList"></a>Function: xmlNanoFTPList</h3><pre class="programlisting">int	xmlNanoFTPList	(void * ctx, <br />				 <a href="libxml-nanoftp.html#ftpListCallback">ftpListCallback</a> callback, <br />				 void * userData, <br />				 char * filename)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>server</tt></i>:</span></td><td>an FTP server name</td></tr><tr><td><span class="term"><i><tt>port</tt></i>:</span></td><td>the port (use 21 if 0)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an fTP context or NULL if it failed</td></tr></tbody></table></div><h3><a name="xmlNanoFTPList" id="xmlNanoFTPList"></a>Function: xmlNanoFTPList</h3><pre class="programlisting">int	xmlNanoFTPList			(void * ctx, <br />					 <a href="libxml-nanoftp.html#ftpListCallback">ftpListCallback</a> callback, <br />					 void * userData, <br />					 char * filename)<br />
 </pre><p>Do a listing on the server. All files info are passed back in the callbacks.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>callback</tt></i>:</span></td><td>the user callback</td></tr><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>the user callback data</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>optional files to list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 incase of error, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlNanoFTPUpdateURL" id="xmlNanoFTPUpdateURL"></a>Function: xmlNanoFTPUpdateURL</h3><pre class="programlisting">int	xmlNanoFTPUpdateURL	(void * ctx, <br />				 const char * URL)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>callback</tt></i>:</span></td><td>the user callback</td></tr><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>the user callback data</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>optional files to list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 incase of error, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlNanoFTPUpdateURL" id="xmlNanoFTPUpdateURL"></a>Function: xmlNanoFTPUpdateURL</h3><pre class="programlisting">int	xmlNanoFTPUpdateURL		(void * ctx, <br />					 const char * URL)<br />
 </pre><p>Update an FTP context by parsing the URL and finding new path it indicates. If there is an error in the protocol, hostname, port or other information, the error is raised. It indicates a new connection has to be established.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The URL used to update the context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if Ok, -1 in case of error (other host).</td></tr></tbody></table></div><h3><a name="xmlNanoFTPOpen" id="xmlNanoFTPOpen"></a>Function: xmlNanoFTPOpen</h3><pre class="programlisting">void *	xmlNanoFTPOpen	(const char * URL)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The URL used to update the context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if Ok, -1 in case of error (other host).</td></tr></tbody></table></div><h3><a name="xmlNanoFTPOpen" id="xmlNanoFTPOpen"></a>Function: xmlNanoFTPOpen</h3><pre class="programlisting">void *	xmlNanoFTPOpen			(const char * URL)<br />
 </pre><p>Start to fetch the given ftp:// resource</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the URL to the resource</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an FTP context, or NULL</td></tr></tbody></table></div><h3><a name="xmlNanoFTPConnect" id="xmlNanoFTPConnect"></a>Function: xmlNanoFTPConnect</h3><pre class="programlisting">int	xmlNanoFTPConnect	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the URL to the resource</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an FTP context, or NULL</td></tr></tbody></table></div><h3><a name="xmlNanoFTPConnect" id="xmlNanoFTPConnect"></a>Function: xmlNanoFTPConnect</h3><pre class="programlisting">int	xmlNanoFTPConnect		(void * ctx)<br />
 </pre><p>Tries to open a control connection</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of error, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlNanoFTPDele" id="xmlNanoFTPDele"></a>Function: xmlNanoFTPDele</h3><pre class="programlisting">int	xmlNanoFTPDele	(void * ctx, <br />				 char * file)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of error, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlNanoFTPDele" id="xmlNanoFTPDele"></a>Function: xmlNanoFTPDele</h3><pre class="programlisting">int	xmlNanoFTPDele			(void * ctx, <br />					 char * file)<br />
 </pre><p>Tries to delete an item (file or directory) from server</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>a file or directory on the server</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 incase of error, 1 if DELE worked, 0 if it failed</td></tr></tbody></table></div><h3><a name="xmlNanoFTPGet" id="xmlNanoFTPGet"></a>Function: xmlNanoFTPGet</h3><pre class="programlisting">int	xmlNanoFTPGet	(void * ctx, <br />				 <a href="libxml-nanoftp.html#ftpDataCallback">ftpDataCallback</a> callback, <br />				 void * userData, <br />				 const char * filename)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>a file or directory on the server</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 incase of error, 1 if DELE worked, 0 if it failed</td></tr></tbody></table></div><h3><a name="xmlNanoFTPGet" id="xmlNanoFTPGet"></a>Function: xmlNanoFTPGet</h3><pre class="programlisting">int	xmlNanoFTPGet			(void * ctx, <br />					 <a href="libxml-nanoftp.html#ftpDataCallback">ftpDataCallback</a> callback, <br />					 void * userData, <br />					 const char * filename)<br />
 </pre><p>Fetch the given file from the server. All data are passed back in the callbacks. The last callback has a size of 0 block.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>callback</tt></i>:</span></td><td>the user callback</td></tr><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>the user callback data</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the file to retrieve</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 incase of error, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlNanoFTPGetSocket" id="xmlNanoFTPGetSocket"></a>Function: xmlNanoFTPGetSocket</h3><pre class="programlisting">int	xmlNanoFTPGetSocket	(void * ctx, <br />				 const char * filename)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>callback</tt></i>:</span></td><td>the user callback</td></tr><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>the user callback data</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the file to retrieve</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 incase of error, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlNanoFTPGetSocket" id="xmlNanoFTPGetSocket"></a>Function: xmlNanoFTPGetSocket</h3><pre class="programlisting">int	xmlNanoFTPGetSocket		(void * ctx, <br />					 const char * filename)<br />
 </pre><p>Initiate fetch of the given file from the server.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the file to retrieve (or NULL if path is in context).</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the socket for the data connection, or &lt;0 in case of error</td></tr></tbody></table></div><h3><a name="xmlNanoFTPNewCtxt" id="xmlNanoFTPNewCtxt"></a>Function: xmlNanoFTPNewCtxt</h3><pre class="programlisting">void *	xmlNanoFTPNewCtxt	(const char * URL)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the file to retrieve (or NULL if path is in context).</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the socket for the data connection, or &lt;0 in case of error</td></tr></tbody></table></div><h3><a name="xmlNanoFTPNewCtxt" id="xmlNanoFTPNewCtxt"></a>Function: xmlNanoFTPNewCtxt</h3><pre class="programlisting">void *	xmlNanoFTPNewCtxt		(const char * URL)<br />
 </pre><p>Allocate and initialize a new FTP context.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The URL used to initialize the context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an FTP context or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlNanoFTPCheckResponse" id="xmlNanoFTPCheckResponse"></a>Function: xmlNanoFTPCheckResponse</h3><pre class="programlisting">int	xmlNanoFTPCheckResponse	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The URL used to initialize the context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an FTP context or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlNanoFTPCheckResponse" id="xmlNanoFTPCheckResponse"></a>Function: xmlNanoFTPCheckResponse</h3><pre class="programlisting">int	xmlNanoFTPCheckResponse		(void * ctx)<br />
 </pre><p>Check if there is a response from the FTP server after a command.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the code number, or 0</td></tr></tbody></table></div><h3><a name="xmlNanoFTPRead" id="xmlNanoFTPRead"></a>Function: xmlNanoFTPRead</h3><pre class="programlisting">int	xmlNanoFTPRead	(void * ctx, <br />				 void * dest, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the code number, or 0</td></tr></tbody></table></div><h3><a name="xmlNanoFTPRead" id="xmlNanoFTPRead"></a>Function: xmlNanoFTPRead</h3><pre class="programlisting">int	xmlNanoFTPRead			(void * ctx, <br />					 void * dest, <br />					 int len)<br />
 </pre><p>This function tries to read @len bytes from the existing FTP connection and saves them in @dest. This is a blocking call.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the FTP context</td></tr><tr><td><span class="term"><i><tt>dest</tt></i>:</span></td><td>a buffer</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the buffer length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte read. 0 is an indication of an end of connection. -1 indicates a parameter error.</td></tr></tbody></table></div><h3><a name="xmlNanoFTPFreeCtxt" id="xmlNanoFTPFreeCtxt"></a>Function: xmlNanoFTPFreeCtxt</h3><pre class="programlisting">void	xmlNanoFTPFreeCtxt	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the FTP context</td></tr><tr><td><span class="term"><i><tt>dest</tt></i>:</span></td><td>a buffer</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the buffer length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte read. 0 is an indication of an end of connection. -1 indicates a parameter error.</td></tr></tbody></table></div><h3><a name="xmlNanoFTPFreeCtxt" id="xmlNanoFTPFreeCtxt"></a>Function: xmlNanoFTPFreeCtxt</h3><pre class="programlisting">void	xmlNanoFTPFreeCtxt		(void * ctx)<br />
 </pre><p>Frees the context after closing the connection.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr></tbody></table></div><h3><a name="xmlNanoFTPCleanup" id="xmlNanoFTPCleanup"></a>Function: xmlNanoFTPCleanup</h3><pre class="programlisting">void	xmlNanoFTPCleanup	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr></tbody></table></div><h3><a name="xmlNanoFTPCleanup" id="xmlNanoFTPCleanup"></a>Function: xmlNanoFTPCleanup</h3><pre class="programlisting">void	xmlNanoFTPCleanup		(void)<br />
 </pre><p>Cleanup the FTP protocol layer. This cleanup proxy informations.</p>
-<h3><a name="xmlNanoFTPGetConnection" id="xmlNanoFTPGetConnection"></a>Function: xmlNanoFTPGetConnection</h3><pre class="programlisting">int	xmlNanoFTPGetConnection	(void * ctx)<br />
+<h3><a name="xmlNanoFTPGetConnection" id="xmlNanoFTPGetConnection"></a>Function: xmlNanoFTPGetConnection</h3><pre class="programlisting">int	xmlNanoFTPGetConnection		(void * ctx)<br />
 </pre><p>Try to open a data connection to the server. Currently only passive mode is supported.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an FTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 incase of error, 0 otherwise</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-nanohttp.html b/doc/html/libxml-nanohttp.html
index 190b214..2a16c37 100644
--- a/doc/html/libxml-nanohttp.html
+++ b/doc/html/libxml-nanohttp.html
@@ -10,53 +10,53 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module nanohttp from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module nanohttp from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-nanoftp.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-nanoftp.html">nanoftp</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-parser.html">parser</a></th><td><a accesskey="n" href="libxml-parser.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>minimal HTTP implementation allowing to fetch resources like external subset. </p><h2>Table of Contents</h2><pre class="programlisting">int	<a href="#xmlNanoHTTPSave">xmlNanoHTTPSave</a>	(void * ctxt, <br />				 const char * filename)<br />
-</pre><pre class="programlisting">const char *	<a href="#xmlNanoHTTPRedir">xmlNanoHTTPRedir</a>	(void * ctx)<br />
-</pre><pre class="programlisting">const char *	<a href="#xmlNanoHTTPAuthHeader">xmlNanoHTTPAuthHeader</a>	(void * ctx)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNanoHTTPFetch">xmlNanoHTTPFetch</a>	(const char * URL, <br />				 const char * filename, <br />				 char ** contentType)<br />
-</pre><pre class="programlisting">void	<a href="#xmlNanoHTTPInit">xmlNanoHTTPInit</a>	(void)<br />
-</pre><pre class="programlisting">const char *	<a href="#xmlNanoHTTPMimeType">xmlNanoHTTPMimeType</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#xmlNanoHTTPClose">xmlNanoHTTPClose</a>	(void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#xmlNanoHTTPCleanup">xmlNanoHTTPCleanup</a>	(void)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlNanoHTTPMethod">xmlNanoHTTPMethod</a>	(const char * URL, <br />				 const char * method, <br />				 const char * input, <br />				 char ** contentType, <br />				 const char * headers, <br />				 int ilen)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNanoHTTPRead">xmlNanoHTTPRead</a>	(void * ctx, <br />				 void * dest, <br />				 int len)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlNanoHTTPOpen">xmlNanoHTTPOpen</a>	(const char * URL, <br />				 char ** contentType)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlNanoHTTPOpenRedir">xmlNanoHTTPOpenRedir</a>	(const char * URL, <br />				 char ** contentType, <br />				 char ** redir)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlNanoHTTPMethodRedir">xmlNanoHTTPMethodRedir</a>	(const char * URL, <br />				 const char * method, <br />				 const char * input, <br />				 char ** contentType, <br />				 char ** redir, <br />				 const char * headers, <br />				 int ilen)<br />
-</pre><pre class="programlisting">void	<a href="#xmlNanoHTTPScanProxy">xmlNanoHTTPScanProxy</a>	(const char * URL)<br />
-</pre><pre class="programlisting">const char *	<a href="#xmlNanoHTTPEncoding">xmlNanoHTTPEncoding</a>	(void * ctx)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNanoHTTPReturnCode">xmlNanoHTTPReturnCode</a>	(void * ctx)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlNanoHTTPSave" id="xmlNanoHTTPSave"></a>Function: xmlNanoHTTPSave</h3><pre class="programlisting">int	xmlNanoHTTPSave	(void * ctxt, <br />				 const char * filename)<br />
+    </style><title>Module nanohttp from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module nanohttp from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-nanoftp.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-nanoftp.html">nanoftp</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-parser.html">parser</a></th><td><a accesskey="n" href="libxml-parser.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>minimal HTTP implementation allowing to fetch resources like external subset. </p><h2>Table of Contents</h2><pre class="programlisting">const char *	<a href="#xmlNanoHTTPAuthHeader">xmlNanoHTTPAuthHeader</a>	(void * ctx)</pre>
+<pre class="programlisting">void	<a href="#xmlNanoHTTPCleanup">xmlNanoHTTPCleanup</a>		(void)</pre>
+<pre class="programlisting">void	<a href="#xmlNanoHTTPClose">xmlNanoHTTPClose</a>		(void * ctx)</pre>
+<pre class="programlisting">const char *	<a href="#xmlNanoHTTPEncoding">xmlNanoHTTPEncoding</a>	(void * ctx)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoHTTPFetch">xmlNanoHTTPFetch</a>		(const char * URL, <br />					 const char * filename, <br />					 char ** contentType)</pre>
+<pre class="programlisting">void	<a href="#xmlNanoHTTPInit">xmlNanoHTTPInit</a>			(void)</pre>
+<pre class="programlisting">void *	<a href="#xmlNanoHTTPMethod">xmlNanoHTTPMethod</a>		(const char * URL, <br />					 const char * method, <br />					 const char * input, <br />					 char ** contentType, <br />					 const char * headers, <br />					 int ilen)</pre>
+<pre class="programlisting">void *	<a href="#xmlNanoHTTPMethodRedir">xmlNanoHTTPMethodRedir</a>		(const char * URL, <br />					 const char * method, <br />					 const char * input, <br />					 char ** contentType, <br />					 char ** redir, <br />					 const char * headers, <br />					 int ilen)</pre>
+<pre class="programlisting">const char *	<a href="#xmlNanoHTTPMimeType">xmlNanoHTTPMimeType</a>	(void * ctx)</pre>
+<pre class="programlisting">void *	<a href="#xmlNanoHTTPOpen">xmlNanoHTTPOpen</a>			(const char * URL, <br />					 char ** contentType)</pre>
+<pre class="programlisting">void *	<a href="#xmlNanoHTTPOpenRedir">xmlNanoHTTPOpenRedir</a>		(const char * URL, <br />					 char ** contentType, <br />					 char ** redir)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoHTTPRead">xmlNanoHTTPRead</a>			(void * ctx, <br />					 void * dest, <br />					 int len)</pre>
+<pre class="programlisting">const char *	<a href="#xmlNanoHTTPRedir">xmlNanoHTTPRedir</a>	(void * ctx)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoHTTPReturnCode">xmlNanoHTTPReturnCode</a>		(void * ctx)</pre>
+<pre class="programlisting">int	<a href="#xmlNanoHTTPSave">xmlNanoHTTPSave</a>			(void * ctxt, <br />					 const char * filename)</pre>
+<pre class="programlisting">void	<a href="#xmlNanoHTTPScanProxy">xmlNanoHTTPScanProxy</a>		(const char * URL)</pre>
+<h2>Description</h2>
+<h3><a name="xmlNanoHTTPSave" id="xmlNanoHTTPSave"></a>Function: xmlNanoHTTPSave</h3><pre class="programlisting">int	xmlNanoHTTPSave			(void * ctxt, <br />					 const char * filename)<br />
 </pre><p>This function saves the output of the HTTP transaction to a file It closes and free the context at the end</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the HTTP context</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename where the content should be saved</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of failure, 0 incase of success.</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPRedir" id="xmlNanoHTTPRedir"></a>Function: xmlNanoHTTPRedir</h3><pre class="programlisting">const char *	xmlNanoHTTPRedir	(void * ctx)<br />
 </pre><p>Provides the specified redirection URL if available from the HTTP header.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the HTTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the specified redirection URL or NULL if not redirected.</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPAuthHeader" id="xmlNanoHTTPAuthHeader"></a>Function: xmlNanoHTTPAuthHeader</h3><pre class="programlisting">const char *	xmlNanoHTTPAuthHeader	(void * ctx)<br />
 </pre><p>Get the authentication header of an HTTP context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the HTTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the stashed value of the WWW-Authenticate or Proxy-Authenticate header.</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPFetch" id="xmlNanoHTTPFetch"></a>Function: xmlNanoHTTPFetch</h3><pre class="programlisting">int	xmlNanoHTTPFetch	(const char * URL, <br />				 const char * filename, <br />				 char ** contentType)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the HTTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the stashed value of the WWW-Authenticate or Proxy-Authenticate header.</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPFetch" id="xmlNanoHTTPFetch"></a>Function: xmlNanoHTTPFetch</h3><pre class="programlisting">int	xmlNanoHTTPFetch		(const char * URL, <br />					 const char * filename, <br />					 char ** contentType)<br />
 </pre><p>This function try to fetch the indicated resource via HTTP GET and save it's content in the file.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The URL to load</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename where the content should be saved</td></tr><tr><td><span class="term"><i><tt>contentType</tt></i>:</span></td><td>if available the Content-Type information will be returned at that location</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of failure, 0 incase of success. The contentType, if provided must be freed by the caller</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPInit" id="xmlNanoHTTPInit"></a>Function: xmlNanoHTTPInit</h3><pre class="programlisting">void	xmlNanoHTTPInit	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The URL to load</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename where the content should be saved</td></tr><tr><td><span class="term"><i><tt>contentType</tt></i>:</span></td><td>if available the Content-Type information will be returned at that location</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of failure, 0 incase of success. The contentType, if provided must be freed by the caller</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPInit" id="xmlNanoHTTPInit"></a>Function: xmlNanoHTTPInit</h3><pre class="programlisting">void	xmlNanoHTTPInit			(void)<br />
 </pre><p>Initialize the HTTP protocol layer. Currently it just checks for proxy informations</p>
 <h3><a name="xmlNanoHTTPMimeType" id="xmlNanoHTTPMimeType"></a>Function: xmlNanoHTTPMimeType</h3><pre class="programlisting">const char *	xmlNanoHTTPMimeType	(void * ctx)<br />
 </pre><p>Provides the specified Mime-Type if specified in the HTTP headers.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the HTTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the specified Mime-Type or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPClose" id="xmlNanoHTTPClose"></a>Function: xmlNanoHTTPClose</h3><pre class="programlisting">void	xmlNanoHTTPClose	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the HTTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the specified Mime-Type or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPClose" id="xmlNanoHTTPClose"></a>Function: xmlNanoHTTPClose</h3><pre class="programlisting">void	xmlNanoHTTPClose		(void * ctx)<br />
 </pre><p>This function closes an HTTP context, it ends up the connection and free all data related to it.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the HTTP context</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPCleanup" id="xmlNanoHTTPCleanup"></a>Function: xmlNanoHTTPCleanup</h3><pre class="programlisting">void	xmlNanoHTTPCleanup	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the HTTP context</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPCleanup" id="xmlNanoHTTPCleanup"></a>Function: xmlNanoHTTPCleanup</h3><pre class="programlisting">void	xmlNanoHTTPCleanup		(void)<br />
 </pre><p>Cleanup the HTTP protocol layer.</p>
-<h3><a name="xmlNanoHTTPMethod" id="xmlNanoHTTPMethod"></a>Function: xmlNanoHTTPMethod</h3><pre class="programlisting">void *	xmlNanoHTTPMethod	(const char * URL, <br />				 const char * method, <br />				 const char * input, <br />				 char ** contentType, <br />				 const char * headers, <br />				 int ilen)<br />
+<h3><a name="xmlNanoHTTPMethod" id="xmlNanoHTTPMethod"></a>Function: xmlNanoHTTPMethod</h3><pre class="programlisting">void *	xmlNanoHTTPMethod		(const char * URL, <br />					 const char * method, <br />					 const char * input, <br />					 char ** contentType, <br />					 const char * headers, <br />					 int ilen)<br />
 </pre><p>This function try to open a connection to the indicated resource via HTTP using the given @method, adding the given extra headers and the input buffer for the request content.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The URL to load</td></tr><tr><td><span class="term"><i><tt>method</tt></i>:</span></td><td>the HTTP method to use</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>the input string if any</td></tr><tr><td><span class="term"><i><tt>contentType</tt></i>:</span></td><td>the Content-Type information IN and OUT</td></tr><tr><td><span class="term"><i><tt>headers</tt></i>:</span></td><td>the extra headers</td></tr><tr><td><span class="term"><i><tt>ilen</tt></i>:</span></td><td>input length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL in case of failure, otherwise a request handler. The contentType, if provided must be freed by the caller</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPRead" id="xmlNanoHTTPRead"></a>Function: xmlNanoHTTPRead</h3><pre class="programlisting">int	xmlNanoHTTPRead	(void * ctx, <br />				 void * dest, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The URL to load</td></tr><tr><td><span class="term"><i><tt>method</tt></i>:</span></td><td>the HTTP method to use</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>the input string if any</td></tr><tr><td><span class="term"><i><tt>contentType</tt></i>:</span></td><td>the Content-Type information IN and OUT</td></tr><tr><td><span class="term"><i><tt>headers</tt></i>:</span></td><td>the extra headers</td></tr><tr><td><span class="term"><i><tt>ilen</tt></i>:</span></td><td>input length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL in case of failure, otherwise a request handler. The contentType, if provided must be freed by the caller</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPRead" id="xmlNanoHTTPRead"></a>Function: xmlNanoHTTPRead</h3><pre class="programlisting">int	xmlNanoHTTPRead			(void * ctx, <br />					 void * dest, <br />					 int len)<br />
 </pre><p>This function tries to read @len bytes from the existing HTTP connection and saves them in @dest. This is a blocking call.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the HTTP context</td></tr><tr><td><span class="term"><i><tt>dest</tt></i>:</span></td><td>a buffer</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the buffer length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte read. 0 is an indication of an end of connection. -1 indicates a parameter error.</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPOpen" id="xmlNanoHTTPOpen"></a>Function: xmlNanoHTTPOpen</h3><pre class="programlisting">void *	xmlNanoHTTPOpen	(const char * URL, <br />				 char ** contentType)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the HTTP context</td></tr><tr><td><span class="term"><i><tt>dest</tt></i>:</span></td><td>a buffer</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the buffer length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte read. 0 is an indication of an end of connection. -1 indicates a parameter error.</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPOpen" id="xmlNanoHTTPOpen"></a>Function: xmlNanoHTTPOpen</h3><pre class="programlisting">void *	xmlNanoHTTPOpen			(const char * URL, <br />					 char ** contentType)<br />
 </pre><p>This function try to open a connection to the indicated resource via HTTP GET.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The URL to load</td></tr><tr><td><span class="term"><i><tt>contentType</tt></i>:</span></td><td>if available the Content-Type information will be returned at that location</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL in case of failure, otherwise a request handler. The contentType, if provided must be freed by the caller</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPOpenRedir" id="xmlNanoHTTPOpenRedir"></a>Function: xmlNanoHTTPOpenRedir</h3><pre class="programlisting">void *	xmlNanoHTTPOpenRedir	(const char * URL, <br />				 char ** contentType, <br />				 char ** redir)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The URL to load</td></tr><tr><td><span class="term"><i><tt>contentType</tt></i>:</span></td><td>if available the Content-Type information will be returned at that location</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL in case of failure, otherwise a request handler. The contentType, if provided must be freed by the caller</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPOpenRedir" id="xmlNanoHTTPOpenRedir"></a>Function: xmlNanoHTTPOpenRedir</h3><pre class="programlisting">void *	xmlNanoHTTPOpenRedir		(const char * URL, <br />					 char ** contentType, <br />					 char ** redir)<br />
 </pre><p>This function try to open a connection to the indicated resource via HTTP GET.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The URL to load</td></tr><tr><td><span class="term"><i><tt>contentType</tt></i>:</span></td><td>if available the Content-Type information will be returned at that location</td></tr><tr><td><span class="term"><i><tt>redir</tt></i>:</span></td><td>if available the redirected URL will be returned</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL in case of failure, otherwise a request handler. The contentType, if provided must be freed by the caller</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPMethodRedir" id="xmlNanoHTTPMethodRedir"></a>Function: xmlNanoHTTPMethodRedir</h3><pre class="programlisting">void *	xmlNanoHTTPMethodRedir	(const char * URL, <br />				 const char * method, <br />				 const char * input, <br />				 char ** contentType, <br />				 char ** redir, <br />				 const char * headers, <br />				 int ilen)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The URL to load</td></tr><tr><td><span class="term"><i><tt>contentType</tt></i>:</span></td><td>if available the Content-Type information will be returned at that location</td></tr><tr><td><span class="term"><i><tt>redir</tt></i>:</span></td><td>if available the redirected URL will be returned</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL in case of failure, otherwise a request handler. The contentType, if provided must be freed by the caller</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPMethodRedir" id="xmlNanoHTTPMethodRedir"></a>Function: xmlNanoHTTPMethodRedir</h3><pre class="programlisting">void *	xmlNanoHTTPMethodRedir		(const char * URL, <br />					 const char * method, <br />					 const char * input, <br />					 char ** contentType, <br />					 char ** redir, <br />					 const char * headers, <br />					 int ilen)<br />
 </pre><p>This function try to open a connection to the indicated resource via HTTP using the given @method, adding the given extra headers and the input buffer for the request content.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The URL to load</td></tr><tr><td><span class="term"><i><tt>method</tt></i>:</span></td><td>the HTTP method to use</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>the input string if any</td></tr><tr><td><span class="term"><i><tt>contentType</tt></i>:</span></td><td>the Content-Type information IN and OUT</td></tr><tr><td><span class="term"><i><tt>redir</tt></i>:</span></td><td>the redirected URL OUT</td></tr><tr><td><span class="term"><i><tt>headers</tt></i>:</span></td><td>the extra headers</td></tr><tr><td><span class="term"><i><tt>ilen</tt></i>:</span></td><td>input length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL in case of failure, otherwise a request handler. The contentType, or redir, if provided must be freed by the caller</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPScanProxy" id="xmlNanoHTTPScanProxy"></a>Function: xmlNanoHTTPScanProxy</h3><pre class="programlisting">void	xmlNanoHTTPScanProxy	(const char * URL)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The URL to load</td></tr><tr><td><span class="term"><i><tt>method</tt></i>:</span></td><td>the HTTP method to use</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>the input string if any</td></tr><tr><td><span class="term"><i><tt>contentType</tt></i>:</span></td><td>the Content-Type information IN and OUT</td></tr><tr><td><span class="term"><i><tt>redir</tt></i>:</span></td><td>the redirected URL OUT</td></tr><tr><td><span class="term"><i><tt>headers</tt></i>:</span></td><td>the extra headers</td></tr><tr><td><span class="term"><i><tt>ilen</tt></i>:</span></td><td>input length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL in case of failure, otherwise a request handler. The contentType, or redir, if provided must be freed by the caller</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPScanProxy" id="xmlNanoHTTPScanProxy"></a>Function: xmlNanoHTTPScanProxy</h3><pre class="programlisting">void	xmlNanoHTTPScanProxy		(const char * URL)<br />
 </pre><p>(Re)Initialize the HTTP Proxy context by parsing the URL and finding the protocol host port it indicates. Should be like http://myproxy/ or http://myproxy:3128/ A NULL URL cleans up proxy informations.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The proxy URL used to initialize the proxy context</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPEncoding" id="xmlNanoHTTPEncoding"></a>Function: xmlNanoHTTPEncoding</h3><pre class="programlisting">const char *	xmlNanoHTTPEncoding	(void * ctx)<br />
 </pre><p>Provides the specified encoding if specified in the HTTP headers.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the HTTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the specified encoding or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPReturnCode" id="xmlNanoHTTPReturnCode"></a>Function: xmlNanoHTTPReturnCode</h3><pre class="programlisting">int	xmlNanoHTTPReturnCode	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the HTTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the specified encoding or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlNanoHTTPReturnCode" id="xmlNanoHTTPReturnCode"></a>Function: xmlNanoHTTPReturnCode</h3><pre class="programlisting">int	xmlNanoHTTPReturnCode		(void * ctx)<br />
 </pre><p>Get the latest HTTP return code received</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the HTTP context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the HTTP return code for the request.</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-parser.html b/doc/html/libxml-parser.html
index b519a2a..cd9949e 100644
--- a/doc/html/libxml-parser.html
+++ b/doc/html/libxml-parser.html
@@ -10,214 +10,203 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module parser from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module parser from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-nanohttp.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-nanohttp.html">nanohttp</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-parserInternals.html">parserInternals</a></th><td><a accesskey="n" href="libxml-parserInternals.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>Interfaces, constants and types related to the XML parser </p><h2>Table of Contents</h2><pre class="programlisting">void	<a href="#xmlSetupParserForBuffer">xmlSetupParserForBuffer</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * buffer, <br />				 const char * filename)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlCtxtReadFile">xmlCtxtReadFile</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * filename, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">int	<a href="#xmlStrcmp">xmlStrcmp</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlParseMemory">xmlParseMemory</a>	(const char * buffer, <br />				 int size)<br />
-</pre><pre class="programlisting">int	<a href="#xmlParseCtxtExternalEntity">xmlParseCtxtExternalEntity</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst)<br />
-</pre><pre class="programlisting">Structure <a name="xmlParserNodeInfoSeq" id="xmlParserNodeInfoSeq">xmlParserNodeInfoSeq</a><br />struct _xmlParserNodeInfoSeq {
-    unsigned long	maximum
-    unsigned long	length
-    <a href="libxml-parser.html#xmlParserNodeInfo">xmlParserNodeInfo</a> *	buffer
-}</pre><br /><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrcasestr">xmlStrcasestr</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrcat">xmlStrcat</a>	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * add)<br />
-</pre><pre class="programlisting"><a name="attributeDeclSAXFunc" id="attributeDeclSAXFunc"></a>Function type: attributeDeclSAXFunc
-void	attributeDeclSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />				 int type, <br />				 int def, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * defaultValue, <br />				 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)
-</pre><p>An <a href="libxml-SAX.html#attribute">attribute</a> definition has been parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the name of the element</td></tr><tr><td><span class="term"><i><tt>fullname</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> type</td></tr><tr><td><span class="term"><i><tt>def</tt></i>:</span></td><td>the type of default value</td></tr><tr><td><span class="term"><i><tt>defaultValue</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> default value</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>the tree of enumerated value set</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a name="getEntitySAXFunc" id="getEntitySAXFunc"></a>Function type: getEntitySAXFunc
-<a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	getEntitySAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
-</pre><p>Get an entity by name.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> if found.</td></tr></tbody></table></div><br />
-<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrstr">xmlStrstr</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
-</pre><pre class="programlisting"><a name="startElementSAXFunc" id="startElementSAXFunc"></a>Function type: startElementSAXFunc
-void	startElementSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** atts)
-</pre><p>Called when an opening tag has been processed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The element name, including namespace prefix</td></tr><tr><td><span class="term"><i><tt>atts</tt></i>:</span></td><td>An array of name/value attributes pairs, NULL terminated</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a name="charactersSAXFunc" id="charactersSAXFunc"></a>Function type: charactersSAXFunc
-void	charactersSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />				 int len)
-</pre><p>Receiving some chars from the parser.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr></tbody></table></div><br />
-<pre class="programlisting">void	<a href="#xmlClearNodeInfoSeq">xmlClearNodeInfoSeq</a>	(<a href="libxml-parser.html#xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a> seq)<br />
-</pre><pre class="programlisting">int	<a href="#xmlParseChunk">xmlParseChunk</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * chunk, <br />				 int size, <br />				 int terminate)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlReadMemory">xmlReadMemory</a>	(const char * buffer, <br />				 int size, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlParseEntity">xmlParseEntity</a>	(const char * filename)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlRecoverFile">xmlRecoverFile</a>	(const char * filename)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrdup">xmlStrdup</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)<br />
-</pre><pre class="programlisting"><a name="unparsedEntityDeclSAXFunc" id="unparsedEntityDeclSAXFunc"></a>Function type: unparsedEntityDeclSAXFunc
-void	unparsedEntityDeclSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * notationName)
-</pre><p>What to do when an unparsed entity declaration is parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The name of the entity</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>notationName</tt></i>:</span></td><td>the name of the notation</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a name="startElementNsSAX2Func" id="startElementNsSAX2Func"></a>Function type: startElementNsSAX2Func
-void	startElementNsSAX2Func	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localname, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />				 int nb_namespaces, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** namespaces, <br />				 int nb_attributes, <br />				 int nb_defaulted, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** attributes)
-</pre><p>SAX2 callback when an element start has been detected by the parser. It provides the namespace informations for the element, as well as the new namespace declarations on the element.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>localname</tt></i>:</span></td><td>the local name of the element</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the element namespace prefix if available</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the element namespace name if available</td></tr><tr><td><span class="term"><i><tt>nb_namespaces</tt></i>:</span></td><td>number of namespace definitions on that node</td></tr><tr><td><span class="term"><i><tt>namespaces</tt></i>:</span></td><td>pointer to the array of prefix/URI pairs namespace definitions</td></tr><tr><td><span class="term"><i><tt>nb_attributes</tt></i>:</span></td><td>the number of attributes on that node</td></tr><tr><td><span class="term"><i><tt>nb_defaulted</tt></i>:</span></td><td>the number of defaulted attributes. The defaulted ones are at the end of the array</td></tr><tr><td><span class="term"><i><tt>attributes</tt></i>:</span></td><td>pointer to the array of (localname/prefix/URI/value/end) <a href="libxml-SAX.html#attribute">attribute</a> values.</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlCreateIOParserCtxt">xmlCreateIOParserCtxt</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><pre class="programlisting"><a name="referenceSAXFunc" id="referenceSAXFunc"></a>Function type: referenceSAXFunc
-void	referenceSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
-</pre><p>Called when an entity <a href="libxml-SAX.html#reference">reference</a> is detected.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrncat">xmlStrncat</a>	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * add, <br />				 int len)<br />
-</pre><pre class="programlisting"><a name="hasExternalSubsetSAXFunc" id="hasExternalSubsetSAXFunc"></a>Function type: hasExternalSubsetSAXFunc
-int	hasExternalSubsetSAXFunc	(void * ctx)
-</pre><p>Does this document has an external subset?</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><br />
-<pre class="programlisting">Typedef <a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a> * <a name="xmlSAXHandlerV1Ptr" id="xmlSAXHandlerV1Ptr">xmlSAXHandlerV1Ptr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlStrPrintf">xmlStrPrintf</a>	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * buf, <br />				 int len, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * msg, <br />				 ... ...)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlSAXParseDoc">xmlSAXParseDoc</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 int recovery)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrndup">xmlStrndup</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 int len)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCharStrdup">xmlCharStrdup</a>	(const char * cur)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlNewIOInputStream">xmlNewIOInputStream</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><pre class="programlisting"><a name="processingInstructionSAXFunc" id="processingInstructionSAXFunc"></a>Function type: processingInstructionSAXFunc
-void	processingInstructionSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data)
-</pre><p>A processing instruction has been parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>the target name</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the PI data's</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlParseBalancedChunkMemoryRecover">xmlParseBalancedChunkMemoryRecover</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 int depth, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst, <br />				 int recover)<br />
-</pre><pre class="programlisting">void	<a href="#xmlInitParser">xmlInitParser</a>	(void)<br />
-</pre><pre class="programlisting"><a name="errorSAXFunc" id="errorSAXFunc"></a>Function type: errorSAXFunc
-void	errorSAXFunc	(void * ctx, <br />				 const char * msg, <br />				 ... ...)
-</pre><p>Display and format an error messages, callback.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div><br />
-<pre class="programlisting">Enum <a name="xmlParserInputState" id="xmlParserInputState">xmlParserInputState</a> {
-    <a name="XML_PARSER_EOF" id="XML_PARSER_EOF">XML_PARSER_EOF</a> = -1 : nothing is to be parsed
-    <a name="XML_PARSER_START" id="XML_PARSER_START">XML_PARSER_START</a> = 0 : nothing has been parsed
-    <a name="XML_PARSER_MISC" id="XML_PARSER_MISC">XML_PARSER_MISC</a> = 1 : Misc* before int subset
-    <a name="XML_PARSER_PI" id="XML_PARSER_PI">XML_PARSER_PI</a> = 2 : Within a processing instruction
-    <a name="XML_PARSER_DTD" id="XML_PARSER_DTD">XML_PARSER_DTD</a> = 3 : within some DTD content
-    <a name="XML_PARSER_PROLOG" id="XML_PARSER_PROLOG">XML_PARSER_PROLOG</a> = 4 : Misc* after internal subset
-    <a name="XML_PARSER_COMMENT" id="XML_PARSER_COMMENT">XML_PARSER_COMMENT</a> = 5 : within a <a href="libxml-SAX.html#comment">comment</a>
-    <a name="XML_PARSER_START_TAG" id="XML_PARSER_START_TAG">XML_PARSER_START_TAG</a> = 6 : within a start tag
-    <a name="XML_PARSER_CONTENT" id="XML_PARSER_CONTENT">XML_PARSER_CONTENT</a> = 7 : within the content
-    <a name="XML_PARSER_CDATA_SECTION" id="XML_PARSER_CDATA_SECTION">XML_PARSER_CDATA_SECTION</a> = 8 : within a CDATA section
-    <a name="XML_PARSER_END_TAG" id="XML_PARSER_END_TAG">XML_PARSER_END_TAG</a> = 9 : within a closing tag
-    <a name="XML_PARSER_ENTITY_DECL" id="XML_PARSER_ENTITY_DECL">XML_PARSER_ENTITY_DECL</a> = 10 : within an entity declaration
-    <a name="XML_PARSER_ENTITY_VALUE" id="XML_PARSER_ENTITY_VALUE">XML_PARSER_ENTITY_VALUE</a> = 11 : within an entity value in a decl
-    <a name="XML_PARSER_ATTRIBUTE_VALUE" id="XML_PARSER_ATTRIBUTE_VALUE">XML_PARSER_ATTRIBUTE_VALUE</a> = 12 : within an <a href="libxml-SAX.html#attribute">attribute</a> value
-    <a name="XML_PARSER_SYSTEM_LITERAL" id="XML_PARSER_SYSTEM_LITERAL">XML_PARSER_SYSTEM_LITERAL</a> = 13 : within a SYSTEM value
-    <a name="XML_PARSER_EPILOG" id="XML_PARSER_EPILOG">XML_PARSER_EPILOG</a> = 14 : the Misc* after the last end tag
-    <a name="XML_PARSER_IGNORE" id="XML_PARSER_IGNORE">XML_PARSER_IGNORE</a> = 15 : within an IGNORED section
-    <a name="XML_PARSER_PUBLIC_LITERAL" id="XML_PARSER_PUBLIC_LITERAL">XML_PARSER_PUBLIC_LITERAL</a> = 16 : within a PUBLIC value
-}
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlSAXParseMemory">xmlSAXParseMemory</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 const char * buffer, <br />				 int size, <br />				 int recovery)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlRecoverMemory">xmlRecoverMemory</a>	(const char * buffer, <br />				 int size)<br />
-</pre><pre class="programlisting"><a name="xmlExternalEntityLoader" id="xmlExternalEntityLoader"></a>Function type: xmlExternalEntityLoader
-<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlExternalEntityLoader	(const char * URL, <br />				 const char * ID, <br />				 <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> context)
-</pre><p>External entity loaders types.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The System ID of the resource requested</td></tr><tr><td><span class="term"><i><tt>ID</tt></i>:</span></td><td>The Public ID of the resource requested</td></tr><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>the XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the entity input parser.</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a name="hasInternalSubsetSAXFunc" id="hasInternalSubsetSAXFunc"></a>Function type: hasInternalSubsetSAXFunc
-int	hasInternalSubsetSAXFunc	(void * ctx)
-</pre><p>Does this document has an internal subset.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlReadDoc">xmlReadDoc</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting"><a name="cdataBlockSAXFunc" id="cdataBlockSAXFunc"></a>Function type: cdataBlockSAXFunc
-void	cdataBlockSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 int len)
-</pre><p>Called when a pcdata block has been parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>The pcdata content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the block length</td></tr></tbody></table></div><br />
-<pre class="programlisting">#define <a href="#XML_COMPLETE_ATTRS">XML_COMPLETE_ATTRS</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlSAXParseFile">xmlSAXParseFile</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 const char * filename, <br />				 int recovery)<br />
-</pre><pre class="programlisting"><a name="xmlParserInputDeallocate" id="xmlParserInputDeallocate"></a>Function type: xmlParserInputDeallocate
-void	xmlParserInputDeallocate	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * str)
-</pre><p>Callback for freeing some parser input allocations.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the string to deallocate</td></tr></tbody></table></div><br />
-<pre class="programlisting">Typedef <a href="libxml-parser.html#xmlParserNodeInfo">xmlParserNodeInfo</a> * <a name="xmlParserNodeInfoPtr" id="xmlParserNodeInfoPtr">xmlParserNodeInfoPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlCtxtReadIO">xmlCtxtReadIO</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlSAXParseMemoryWithData">xmlSAXParseMemoryWithData</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 const char * buffer, <br />				 int size, <br />				 int recovery, <br />				 void * data)<br />
-</pre><pre class="programlisting">const <a href="libxml-parser.html#xmlParserNodeInfo">xmlParserNodeInfo</a> *	<a href="#xmlParserFindNodeInfo">xmlParserFindNodeInfo</a>	(const <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctx, <br />				 const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">int	<a href="#xmlGetFeature">xmlGetFeature</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * name, <br />				 void * result)<br />
-</pre><pre class="programlisting">Structure <a name="xmlParserNodeInfo" id="xmlParserNodeInfo">xmlParserNodeInfo</a><br />struct _xmlParserNodeInfo {
-    const struct _xmlNode *	node	: Position &amp; line # that text that create
-    unsigned long	begin_pos
-    unsigned long	begin_line
-    unsigned long	end_pos
-    unsigned long	end_line
-}</pre><br /><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrchr">xmlStrchr</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> val)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	<a href="#xmlIOParseDTD">xmlIOParseDTD</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeParserCtxt">xmlFreeParserCtxt</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	<a href="#xmlParseDTD">xmlParseDTD</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
-</pre><pre class="programlisting"><a name="commentSAXFunc" id="commentSAXFunc"></a>Function type: commentSAXFunc
-void	commentSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)
-</pre><p>A <a href="libxml-SAX.html#comment">comment</a> has been parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#comment">comment</a> content</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlInitParserCtxt">xmlInitParserCtxt</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a name="attributeSAXFunc" id="attributeSAXFunc"></a>Function type: attributeSAXFunc
-void	attributeSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)
-</pre><p>Handle an <a href="libxml-SAX.html#attribute">attribute</a> that has been read by the parser. The default handling is to convert the <a href="libxml-SAX.html#attribute">attribute</a> into an DOM subtree and past it in a new <a href="libxml-tree.html#xmlAttr">xmlAttr</a> element added to the element.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The <a href="libxml-SAX.html#attribute">attribute</a> name, including namespace prefix</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>The <a href="libxml-SAX.html#attribute">attribute</a> value</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlStrQEqual">xmlStrQEqual</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pref, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
-</pre><pre class="programlisting">int	<a href="#xmlParserInputGrow">xmlParserInputGrow</a>	(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> in, <br />				 int len)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlCtxtReadMemory">xmlCtxtReadMemory</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * buffer, <br />				 int size, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting"><a name="externalSubsetSAXFunc" id="externalSubsetSAXFunc"></a>Function type: externalSubsetSAXFunc
-void	externalSubsetSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)
-</pre><p>Callback on external subset declaration.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the root element name</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the SYSTEM ID (e.g. filename or URL)</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a name="resolveEntitySAXFunc" id="resolveEntitySAXFunc"></a>Function type: resolveEntitySAXFunc
-<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	resolveEntitySAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)
-</pre><p>Callback: The entity loader, to control the loading of external entities, the application can either: - override this resolveEntity() callback in the SAX block - or better use the xmlSetExternalEntityLoader() function to set up it's own entity resolution routine</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> if inlined or NULL for DOM behaviour.</td></tr></tbody></table></div><br />
-<pre class="programlisting">Enum <a name="xmlParserOption" id="xmlParserOption">xmlParserOption</a> {
-    <a name="XML_PARSE_RECOVER" id="XML_PARSE_RECOVER">XML_PARSE_RECOVER</a> = 1 : recover on errors
-    <a name="XML_PARSE_NOENT" id="XML_PARSE_NOENT">XML_PARSE_NOENT</a> = 2 : substitute entities
-    <a name="XML_PARSE_DTDLOAD" id="XML_PARSE_DTDLOAD">XML_PARSE_DTDLOAD</a> = 4 : load the external subset
-    <a name="XML_PARSE_DTDATTR" id="XML_PARSE_DTDATTR">XML_PARSE_DTDATTR</a> = 8 : default DTD attributes
-    <a name="XML_PARSE_DTDVALID" id="XML_PARSE_DTDVALID">XML_PARSE_DTDVALID</a> = 16 : validate with the DTD
-    <a name="XML_PARSE_NOERROR" id="XML_PARSE_NOERROR">XML_PARSE_NOERROR</a> = 32 : suppress error reports
-    <a name="XML_PARSE_NOWARNING" id="XML_PARSE_NOWARNING">XML_PARSE_NOWARNING</a> = 64 : suppress warning reports
-    <a name="XML_PARSE_PEDANTIC" id="XML_PARSE_PEDANTIC">XML_PARSE_PEDANTIC</a> = 128 : pedantic error reporting
-    <a name="XML_PARSE_NOBLANKS" id="XML_PARSE_NOBLANKS">XML_PARSE_NOBLANKS</a> = 256 : remove blank nodes
-    <a name="XML_PARSE_SAX1" id="XML_PARSE_SAX1">XML_PARSE_SAX1</a> = 512 : use the SAX1 interface internally
-    <a name="XML_PARSE_XINCLUDE" id="XML_PARSE_XINCLUDE">XML_PARSE_XINCLUDE</a> = 1024 : Implement XInclude substitition
-    <a name="XML_PARSE_NONET" id="XML_PARSE_NONET">XML_PARSE_NONET</a> = 2048 : Forbid network access
-    <a name="XML_PARSE_NODICT" id="XML_PARSE_NODICT">XML_PARSE_NODICT</a> = 4096 : Do not reuse the context dictionnary
-    <a name="XML_PARSE_NSCLEAN" id="XML_PARSE_NSCLEAN">XML_PARSE_NSCLEAN</a> = 8192 : remove redundant namespaces declarations
-    <a name="XML_PARSE_NOCDATA" id="XML_PARSE_NOCDATA">XML_PARSE_NOCDATA</a> = 16384 : merge CDATA as text nodes
-}
-
-</pre><pre class="programlisting">int	<a href="#xmlPedanticParserDefault">xmlPedanticParserDefault</a>	(int val)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlSAXParseEntity">xmlSAXParseEntity</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 const char * filename)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlParseDoc">xmlParseDoc</a>	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParserAddNodeInfo">xmlParserAddNodeInfo</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-parser.html#xmlParserNodeInfoPtr">xmlParserNodeInfoPtr</a> info)<br />
-</pre><pre class="programlisting">#define <a href="#XML_SAX2_MAGIC">XML_SAX2_MAGIC</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlSAXParseFileWithData">xmlSAXParseFileWithData</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 const char * filename, <br />				 int recovery, <br />				 void * data)<br />
-</pre><pre class="programlisting">int	<a href="#xmlLineNumbersDefault">xmlLineNumbersDefault</a>	(int val)<br />
-</pre><pre class="programlisting"><a href="libxml-parser.html#xmlExternalEntityLoader">xmlExternalEntityLoader</a>	<a href="#xmlGetExternalEntityLoader">xmlGetExternalEntityLoader</a>	(void)<br />
-</pre><pre class="programlisting"><a name="elementDeclSAXFunc" id="elementDeclSAXFunc"></a>Function type: elementDeclSAXFunc
-void	elementDeclSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int type, <br />				 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)
-</pre><p>An element definition has been parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the element type</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the element value tree</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlCtxtUseOptions">xmlCtxtUseOptions</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 int options)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlCreatePushParserCtxt">xmlCreatePushParserCtxt</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 const char * chunk, <br />				 int size, <br />				 const char * filename)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCharStrndup">xmlCharStrndup</a>	(const char * cur, <br />				 int len)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlCtxtReadFd">xmlCtxtReadFd</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 int fd, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting"><a name="internalSubsetSAXFunc" id="internalSubsetSAXFunc"></a>Function type: internalSubsetSAXFunc
-void	internalSubsetSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)
-</pre><p>Callback on internal subset declaration.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the root element name</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the SYSTEM ID (e.g. filename or URL)</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlNewParserCtxt">xmlNewParserCtxt</a>	(void)<br />
-</pre><pre class="programlisting"><a name="endDocumentSAXFunc" id="endDocumentSAXFunc"></a>Function type: endDocumentSAXFunc
-void	endDocumentSAXFunc	(void * ctx)
-</pre><p>Called when the document end has been detected.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlParseFile">xmlParseFile</a>	(const char * filename)<br />
+    </style><title>Module parser from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module parser from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-nanohttp.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-nanohttp.html">nanohttp</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-parserInternals.html">parserInternals</a></th><td><a accesskey="n" href="libxml-parserInternals.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>Interfaces, constants and types related to the XML parser </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#XML_COMPLETE_ATTRS">XML_COMPLETE_ATTRS</a></pre><pre class="programlisting">#define <a href="#XML_DEFAULT_VERSION">XML_DEFAULT_VERSION</a></pre><pre class="programlisting">#define <a href="#XML_DETECT_IDS">XML_DETECT_IDS</a></pre><pre class="programlisting">#define <a href="#XML_SAX2_MAGIC">XML_SAX2_MAGIC</a></pre><pre class="programlisting">#define <a href="#XML_SKIP_IDS">XML_SKIP_IDS</a></pre><pre class="programlisting">Enum <a href="#xmlParserInputState">xmlParserInputState</a>
+</pre><pre class="programlisting">Structure <a href="#xmlParserNodeInfo">xmlParserNodeInfo</a><br />struct _xmlParserNodeInfo
+</pre><pre class="programlisting">Typedef <a href="libxml-parser.html#xmlParserNodeInfo">xmlParserNodeInfo</a> * <a name="xmlParserNodeInfoPtr" id="xmlParserNodeInfoPtr">xmlParserNodeInfoPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlParserNodeInfoSeq">xmlParserNodeInfoSeq</a><br />struct _xmlParserNodeInfoSeq
 </pre><pre class="programlisting">Typedef <a href="libxml-parser.html#xmlParserNodeInfoSeq">xmlParserNodeInfoSeq</a> * <a name="xmlParserNodeInfoSeqPtr" id="xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlParseDocument">xmlParseDocument</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">int	<a href="#xmlStrncmp">xmlStrncmp</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2, <br />				 int len)<br />
-</pre><pre class="programlisting"><a name="setDocumentLocatorSAXFunc" id="setDocumentLocatorSAXFunc"></a>Function type: setDocumentLocatorSAXFunc
-void	setDocumentLocatorSAXFunc	(void * ctx, <br />				 <a href="libxml-tree.html#xmlSAXLocatorPtr">xmlSAXLocatorPtr</a> loc)
-</pre><p>Receive the document locator at startup, actually xmlDefaultSAXLocator. Everything is available on the context, so this is useless in our case.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>loc</tt></i>:</span></td><td>A SAX Locator</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a name="endElementSAXFunc" id="endElementSAXFunc"></a>Function type: endElementSAXFunc
-void	endElementSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
-</pre><p>Called when the end of an element has been detected.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The element name</td></tr></tbody></table></div><br />
-<pre class="programlisting">#define <a href="#XML_DETECT_IDS">XML_DETECT_IDS</a>
-
-</pre><pre class="programlisting"><a name="getParameterEntitySAXFunc" id="getParameterEntitySAXFunc"></a>Function type: getParameterEntitySAXFunc
-<a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	getParameterEntitySAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
-</pre><p>Get a parameter entity by name.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> if found.</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a name="endElementNsSAX2Func" id="endElementNsSAX2Func"></a>Function type: endElementNsSAX2Func
-void	endElementNsSAX2Func	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localname, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)
-</pre><p>SAX2 callback when an element end has been detected by the parser. It provides the namespace informations for the element.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>localname</tt></i>:</span></td><td>the local name of the element</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the element namespace prefix if available</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the element namespace name if available</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a name="ignorableWhitespaceSAXFunc" id="ignorableWhitespaceSAXFunc"></a>Function type: ignorableWhitespaceSAXFunc
-void	ignorableWhitespaceSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />				 int len)
-</pre><p>Receiving some ignorable whitespaces from the parser. UNUSED: by default the DOM building will use characters.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr></tbody></table></div><br />
-<pre class="programlisting">void	<a href="#xmlInitNodeInfoSeq">xmlInitNodeInfoSeq</a>	(<a href="libxml-parser.html#xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a> seq)<br />
-</pre><pre class="programlisting">int	<a href="#xmlStrlen">xmlStrlen</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSubstituteEntitiesDefault">xmlSubstituteEntitiesDefault</a>	(int val)<br />
-</pre><pre class="programlisting">int	<a href="#xmlStrncasecmp">xmlStrncasecmp</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2, <br />				 int len)<br />
-</pre><pre class="programlisting">unsigned long	<a href="#xmlParserFindNodeInfoIndex">xmlParserFindNodeInfoIndex</a>	(const <a href="libxml-parser.html#xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a> seq, <br />				 const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSAXUserParseMemory">xmlSAXUserParseMemory</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 const char * buffer, <br />				 int size)<br />
-</pre><pre class="programlisting">void	<a href="#xmlCtxtReset">xmlCtxtReset</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSetFeature">xmlSetFeature</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * name, <br />				 void * value)<br />
-</pre><pre class="programlisting">int	<a href="#xmlStrEqual">xmlStrEqual</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2)<br />
-</pre><pre class="programlisting">int	<a href="#xmlKeepBlanksDefault">xmlKeepBlanksDefault</a>	(int val)<br />
-</pre><pre class="programlisting">int	<a href="#xmlParserInputRead">xmlParserInputRead</a>	(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> in, <br />				 int len)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlReadFile">xmlReadFile</a>	(const char * filename, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">int	<a href="#xmlGetFeaturesList">xmlGetFeaturesList</a>	(int * len, <br />				 const char ** result)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlCtxtReadDoc">xmlCtxtReadDoc</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">Structure <a name="xmlSAXHandlerV1" id="xmlSAXHandlerV1">xmlSAXHandlerV1</a><br />struct _xmlSAXHandlerV1 {
+</pre><pre class="programlisting">Enum <a href="#xmlParserOption">xmlParserOption</a>
+</pre><pre class="programlisting">Structure <a href="#xmlSAXHandlerV1">xmlSAXHandlerV1</a><br />struct _xmlSAXHandlerV1
+</pre><pre class="programlisting">Typedef <a href="libxml-parser.html#xmlSAXHandlerV1">xmlSAXHandlerV1</a> * <a name="xmlSAXHandlerV1Ptr" id="xmlSAXHandlerV1Ptr">xmlSAXHandlerV1Ptr</a>
+</pre><pre class="programlisting">Function type: <a href="#attributeDeclSAXFunc">attributeDeclSAXFunc</a>
+void	<a href="#attributeDeclSAXFunc">attributeDeclSAXFunc</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />					 int type, <br />					 int def, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * defaultValue, <br />					 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)
+</pre>
+<pre class="programlisting">Function type: <a href="#attributeSAXFunc">attributeSAXFunc</a>
+void	<a href="#attributeSAXFunc">attributeSAXFunc</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)
+</pre>
+<pre class="programlisting">Function type: <a href="#cdataBlockSAXFunc">cdataBlockSAXFunc</a>
+void	<a href="#cdataBlockSAXFunc">cdataBlockSAXFunc</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int len)
+</pre>
+<pre class="programlisting">Function type: <a href="#charactersSAXFunc">charactersSAXFunc</a>
+void	<a href="#charactersSAXFunc">charactersSAXFunc</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />					 int len)
+</pre>
+<pre class="programlisting">Function type: <a href="#commentSAXFunc">commentSAXFunc</a>
+void	<a href="#commentSAXFunc">commentSAXFunc</a>			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)
+</pre>
+<pre class="programlisting">Function type: <a href="#elementDeclSAXFunc">elementDeclSAXFunc</a>
+void	<a href="#elementDeclSAXFunc">elementDeclSAXFunc</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)
+</pre>
+<pre class="programlisting">Function type: <a href="#endDocumentSAXFunc">endDocumentSAXFunc</a>
+void	<a href="#endDocumentSAXFunc">endDocumentSAXFunc</a>		(void * ctx)
+</pre>
+<pre class="programlisting">Function type: <a href="#endElementNsSAX2Func">endElementNsSAX2Func</a>
+void	<a href="#endElementNsSAX2Func">endElementNsSAX2Func</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)
+</pre>
+<pre class="programlisting">Function type: <a href="#endElementSAXFunc">endElementSAXFunc</a>
+void	<a href="#endElementSAXFunc">endElementSAXFunc</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
+</pre>
+<pre class="programlisting">Function type: <a href="#entityDeclSAXFunc">entityDeclSAXFunc</a>
+void	<a href="#entityDeclSAXFunc">entityDeclSAXFunc</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)
+</pre>
+<pre class="programlisting">Function type: <a href="#errorSAXFunc">errorSAXFunc</a>
+void	<a href="#errorSAXFunc">errorSAXFunc</a>			(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre>
+<pre class="programlisting">Function type: <a href="#externalSubsetSAXFunc">externalSubsetSAXFunc</a>
+void	<a href="#externalSubsetSAXFunc">externalSubsetSAXFunc</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)
+</pre>
+<pre class="programlisting">Function type: <a href="#fatalErrorSAXFunc">fatalErrorSAXFunc</a>
+void	<a href="#fatalErrorSAXFunc">fatalErrorSAXFunc</a>		(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre>
+<pre class="programlisting">Function type: <a href="#getEntitySAXFunc">getEntitySAXFunc</a>
+<a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#getEntitySAXFunc">getEntitySAXFunc</a>	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
+</pre>
+<pre class="programlisting">Function type: <a href="#getParameterEntitySAXFunc">getParameterEntitySAXFunc</a>
+<a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#getParameterEntitySAXFunc">getParameterEntitySAXFunc</a>	(void * ctx, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
+</pre>
+<pre class="programlisting">Function type: <a href="#hasExternalSubsetSAXFunc">hasExternalSubsetSAXFunc</a>
+int	<a href="#hasExternalSubsetSAXFunc">hasExternalSubsetSAXFunc</a>	(void * ctx)
+</pre>
+<pre class="programlisting">Function type: <a href="#hasInternalSubsetSAXFunc">hasInternalSubsetSAXFunc</a>
+int	<a href="#hasInternalSubsetSAXFunc">hasInternalSubsetSAXFunc</a>	(void * ctx)
+</pre>
+<pre class="programlisting">Function type: <a href="#ignorableWhitespaceSAXFunc">ignorableWhitespaceSAXFunc</a>
+void	<a href="#ignorableWhitespaceSAXFunc">ignorableWhitespaceSAXFunc</a>	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />					 int len)
+</pre>
+<pre class="programlisting">Function type: <a href="#internalSubsetSAXFunc">internalSubsetSAXFunc</a>
+void	<a href="#internalSubsetSAXFunc">internalSubsetSAXFunc</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)
+</pre>
+<pre class="programlisting">Function type: <a href="#isStandaloneSAXFunc">isStandaloneSAXFunc</a>
+int	<a href="#isStandaloneSAXFunc">isStandaloneSAXFunc</a>		(void * ctx)
+</pre>
+<pre class="programlisting">Function type: <a href="#notationDeclSAXFunc">notationDeclSAXFunc</a>
+void	<a href="#notationDeclSAXFunc">notationDeclSAXFunc</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)
+</pre>
+<pre class="programlisting">Function type: <a href="#processingInstructionSAXFunc">processingInstructionSAXFunc</a>
+void	<a href="#processingInstructionSAXFunc">processingInstructionSAXFunc</a>	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data)
+</pre>
+<pre class="programlisting">Function type: <a href="#referenceSAXFunc">referenceSAXFunc</a>
+void	<a href="#referenceSAXFunc">referenceSAXFunc</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
+</pre>
+<pre class="programlisting">Function type: <a href="#resolveEntitySAXFunc">resolveEntitySAXFunc</a>
+<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#resolveEntitySAXFunc">resolveEntitySAXFunc</a>	(void * ctx, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)
+</pre>
+<pre class="programlisting">Function type: <a href="#setDocumentLocatorSAXFunc">setDocumentLocatorSAXFunc</a>
+void	<a href="#setDocumentLocatorSAXFunc">setDocumentLocatorSAXFunc</a>	(void * ctx, <br />					 <a href="libxml-tree.html#xmlSAXLocatorPtr">xmlSAXLocatorPtr</a> loc)
+</pre>
+<pre class="programlisting">Function type: <a href="#startDocumentSAXFunc">startDocumentSAXFunc</a>
+void	<a href="#startDocumentSAXFunc">startDocumentSAXFunc</a>		(void * ctx)
+</pre>
+<pre class="programlisting">Function type: <a href="#startElementNsSAX2Func">startElementNsSAX2Func</a>
+void	<a href="#startElementNsSAX2Func">startElementNsSAX2Func</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />					 int nb_namespaces, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** namespaces, <br />					 int nb_attributes, <br />					 int nb_defaulted, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** attributes)
+</pre>
+<pre class="programlisting">Function type: <a href="#startElementSAXFunc">startElementSAXFunc</a>
+void	<a href="#startElementSAXFunc">startElementSAXFunc</a>		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** atts)
+</pre>
+<pre class="programlisting">Function type: <a href="#unparsedEntityDeclSAXFunc">unparsedEntityDeclSAXFunc</a>
+void	<a href="#unparsedEntityDeclSAXFunc">unparsedEntityDeclSAXFunc</a>	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * notationName)
+</pre>
+<pre class="programlisting">Function type: <a href="#warningSAXFunc">warningSAXFunc</a>
+void	<a href="#warningSAXFunc">warningSAXFunc</a>			(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCharStrdup">xmlCharStrdup</a>		(const char * cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCharStrndup">xmlCharStrndup</a>		(const char * cur, <br />					 int len)</pre>
+<pre class="programlisting">void	<a href="#xmlCleanupParser">xmlCleanupParser</a>		(void)</pre>
+<pre class="programlisting">void	<a href="#xmlClearNodeInfoSeq">xmlClearNodeInfoSeq</a>		(<a href="libxml-parser.html#xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a> seq)</pre>
+<pre class="programlisting">void	<a href="#xmlClearParserCtxt">xmlClearParserCtxt</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlCreateDocParserCtxt">xmlCreateDocParserCtxt</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlCreateIOParserCtxt">xmlCreateIOParserCtxt</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />						 void * user_data, <br />						 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />						 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />						 void * ioctx, <br />						 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlCreatePushParserCtxt">xmlCreatePushParserCtxt</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />						 void * user_data, <br />						 const char * chunk, <br />						 int size, <br />						 const char * filename)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlCtxtReadDoc">xmlCtxtReadDoc</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlCtxtReadFd">xmlCtxtReadFd</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 int fd, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlCtxtReadFile">xmlCtxtReadFile</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const char * filename, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlCtxtReadIO">xmlCtxtReadIO</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />					 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />					 void * ioctx, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlCtxtReadMemory">xmlCtxtReadMemory</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const char * buffer, <br />					 int size, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting">void	<a href="#xmlCtxtReset">xmlCtxtReset</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#xmlCtxtResetPush">xmlCtxtResetPush</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const char * chunk, <br />					 int size, <br />					 const char * filename, <br />					 const char * encoding)</pre>
+<pre class="programlisting">int	<a href="#xmlCtxtUseOptions">xmlCtxtUseOptions</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 int options)</pre>
+<pre class="programlisting">Function type: <a href="#xmlExternalEntityLoader">xmlExternalEntityLoader</a>
+<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlExternalEntityLoader">xmlExternalEntityLoader</a>	(const char * URL, <br />						 const char * ID, <br />						 <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> context)
+</pre>
+<pre class="programlisting">void	<a href="#xmlFreeParserCtxt">xmlFreeParserCtxt</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-parser.html#xmlExternalEntityLoader">xmlExternalEntityLoader</a>	<a href="#xmlGetExternalEntityLoader">xmlGetExternalEntityLoader</a>	(void)</pre>
+<pre class="programlisting">int	<a href="#xmlGetFeature">xmlGetFeature</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const char * name, <br />					 void * result)</pre>
+<pre class="programlisting">int	<a href="#xmlGetFeaturesList">xmlGetFeaturesList</a>		(int * len, <br />					 const char ** result)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	<a href="#xmlIOParseDTD">xmlIOParseDTD</a>		(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />					 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)</pre>
+<pre class="programlisting">void	<a href="#xmlInitNodeInfoSeq">xmlInitNodeInfoSeq</a>		(<a href="libxml-parser.html#xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a> seq)</pre>
+<pre class="programlisting">void	<a href="#xmlInitParser">xmlInitParser</a>			(void)</pre>
+<pre class="programlisting">int	<a href="#xmlInitParserCtxt">xmlInitParserCtxt</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#xmlKeepBlanksDefault">xmlKeepBlanksDefault</a>		(int val)</pre>
+<pre class="programlisting">int	<a href="#xmlLineNumbersDefault">xmlLineNumbersDefault</a>		(int val)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlLoadExternalEntity">xmlLoadExternalEntity</a>	(const char * URL, <br />						 const char * ID, <br />						 <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlNewIOInputStream">xmlNewIOInputStream</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />						 <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />						 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlNewParserCtxt">xmlNewParserCtxt</a>	(void)</pre>
+<pre class="programlisting">int	<a href="#xmlParseBalancedChunkMemory">xmlParseBalancedChunkMemory</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 void * user_data, <br />					 int depth, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst)</pre>
+<pre class="programlisting">int	<a href="#xmlParseBalancedChunkMemoryRecover">xmlParseBalancedChunkMemoryRecover</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />						 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />						 void * user_data, <br />						 int depth, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst, <br />						 int recover)</pre>
+<pre class="programlisting">int	<a href="#xmlParseChunk">xmlParseChunk</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const char * chunk, <br />					 int size, <br />					 int terminate)</pre>
+<pre class="programlisting">int	<a href="#xmlParseCtxtExternalEntity">xmlParseCtxtExternalEntity</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	<a href="#xmlParseDTD">xmlParseDTD</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlParseDoc">xmlParseDoc</a>		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)</pre>
+<pre class="programlisting">int	<a href="#xmlParseDocument">xmlParseDocument</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlParseEntity">xmlParseEntity</a>		(const char * filename)</pre>
+<pre class="programlisting">int	<a href="#xmlParseExtParsedEnt">xmlParseExtParsedEnt</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#xmlParseExternalEntity">xmlParseExternalEntity</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 void * user_data, <br />					 int depth, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlParseFile">xmlParseFile</a>		(const char * filename)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlParseMemory">xmlParseMemory</a>		(const char * buffer, <br />					 int size)</pre>
+<pre class="programlisting">void	<a href="#xmlParserAddNodeInfo">xmlParserAddNodeInfo</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-parser.html#xmlParserNodeInfoPtr">xmlParserNodeInfoPtr</a> info)</pre>
+<pre class="programlisting">const <a href="libxml-parser.html#xmlParserNodeInfo">xmlParserNodeInfo</a> *	<a href="#xmlParserFindNodeInfo">xmlParserFindNodeInfo</a>	(const <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctx, <br />							 const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting">unsigned long	<a href="#xmlParserFindNodeInfoIndex">xmlParserFindNodeInfoIndex</a>	(const <a href="libxml-parser.html#xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a> seq, <br />						 const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting">Function type: <a href="#xmlParserInputDeallocate">xmlParserInputDeallocate</a>
+void	<a href="#xmlParserInputDeallocate">xmlParserInputDeallocate</a>	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * str)
+</pre>
+<pre class="programlisting">int	<a href="#xmlParserInputGrow">xmlParserInputGrow</a>		(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> in, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#xmlParserInputRead">xmlParserInputRead</a>		(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> in, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#xmlPedanticParserDefault">xmlPedanticParserDefault</a>	(int val)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlReadDoc">xmlReadDoc</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlReadFd">xmlReadFd</a>		(int fd, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlReadFile">xmlReadFile</a>		(const char * filename, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlReadIO">xmlReadIO</a>		(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />					 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />					 void * ioctx, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlReadMemory">xmlReadMemory</a>		(const char * buffer, <br />					 int size, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlRecoverDoc">xmlRecoverDoc</a>		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlRecoverFile">xmlRecoverFile</a>		(const char * filename)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlRecoverMemory">xmlRecoverMemory</a>	(const char * buffer, <br />					 int size)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	<a href="#xmlSAXParseDTD">xmlSAXParseDTD</a>		(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlSAXParseDoc">xmlSAXParseDoc</a>		(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 int recovery)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlSAXParseEntity">xmlSAXParseEntity</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 const char * filename)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlSAXParseFile">xmlSAXParseFile</a>		(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 const char * filename, <br />					 int recovery)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlSAXParseFileWithData">xmlSAXParseFileWithData</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 const char * filename, <br />					 int recovery, <br />					 void * data)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlSAXParseMemory">xmlSAXParseMemory</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 const char * buffer, <br />					 int size, <br />					 int recovery)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlSAXParseMemoryWithData">xmlSAXParseMemoryWithData</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />						 const char * buffer, <br />						 int size, <br />						 int recovery, <br />						 void * data)</pre>
+<pre class="programlisting">int	<a href="#xmlSAXUserParseFile">xmlSAXUserParseFile</a>		(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 void * user_data, <br />					 const char * filename)</pre>
+<pre class="programlisting">int	<a href="#xmlSAXUserParseMemory">xmlSAXUserParseMemory</a>		(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 void * user_data, <br />					 const char * buffer, <br />					 int size)</pre>
+<pre class="programlisting">void	<a href="#xmlSetExternalEntityLoader">xmlSetExternalEntityLoader</a>	(<a href="libxml-parser.html#xmlExternalEntityLoader">xmlExternalEntityLoader</a> f)</pre>
+<pre class="programlisting">int	<a href="#xmlSetFeature">xmlSetFeature</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const char * name, <br />					 void * value)</pre>
+<pre class="programlisting">void	<a href="#xmlSetupParserForBuffer">xmlSetupParserForBuffer</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * buffer, <br />					 const char * filename)</pre>
+<pre class="programlisting">void	<a href="#xmlStopParser">xmlStopParser</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#xmlStrEqual">xmlStrEqual</a>			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2)</pre>
+<pre class="programlisting">int	<a href="#xmlStrPrintf">xmlStrPrintf</a>			(<a href="libxml-tree.html#xmlChar">xmlChar</a> * buf, <br />					 int len, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * msg, <br />					 ... ...)</pre>
+<pre class="programlisting">int	<a href="#xmlStrQEqual">xmlStrQEqual</a>			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pref, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)</pre>
+<pre class="programlisting">int	<a href="#xmlStrVPrintf">xmlStrVPrintf</a>			(<a href="libxml-tree.html#xmlChar">xmlChar</a> * buf, <br />					 int len, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * msg, <br />					 va_list ap)</pre>
+<pre class="programlisting">int	<a href="#xmlStrcasecmp">xmlStrcasecmp</a>			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrcasestr">xmlStrcasestr</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrcat">xmlStrcat</a>		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * add)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrchr">xmlStrchr</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> val)</pre>
+<pre class="programlisting">int	<a href="#xmlStrcmp">xmlStrcmp</a>			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrdup">xmlStrdup</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)</pre>
+<pre class="programlisting">int	<a href="#xmlStrlen">xmlStrlen</a>			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)</pre>
+<pre class="programlisting">int	<a href="#xmlStrncasecmp">xmlStrncasecmp</a>			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2, <br />					 int len)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrncat">xmlStrncat</a>		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * add, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#xmlStrncmp">xmlStrncmp</a>			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2, <br />					 int len)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrndup">xmlStrndup</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 int len)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrstr">xmlStrstr</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrsub">xmlStrsub</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 int start, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#xmlSubstituteEntitiesDefault">xmlSubstituteEntitiesDefault</a>	(int val)</pre>
+<h2>Description</h2>
+<h3><a name="XML_COMPLETE_ATTRS" id="XML_COMPLETE_ATTRS"></a>Macro: XML_COMPLETE_ATTRS</h3><pre>#define XML_COMPLETE_ATTRS</pre><p>Bit in the loadsubset context field to tell to do complete the elements attributes lists with the ones defaulted from the DTDs. Use it to initialize xmlLoadExtDtdDefaultValue.</p>
+<h3><a name="XML_SKIP_IDS" id="XML_SKIP_IDS"></a>Macro: XML_SKIP_IDS</h3><pre>#define XML_SKIP_IDS</pre><p>Bit in the loadsubset context field to tell to not do ID/REFs registration. Used to initialize <a href="libxml-globals.html#xmlLoadExtDtdDefaultValue">xmlLoadExtDtdDefaultValue</a> in some special cases.</p>
+<h3><a name="XML_SAX2_MAGIC" id="XML_SAX2_MAGIC"></a>Macro: XML_SAX2_MAGIC</h3><pre>#define XML_SAX2_MAGIC</pre><p>Special constant found in SAX2 blocks initialized fields</p>
+<h3><a name="XML_DETECT_IDS" id="XML_DETECT_IDS"></a>Macro: XML_DETECT_IDS</h3><pre>#define XML_DETECT_IDS</pre><p>Bit in the loadsubset context field to tell to do ID/REFs lookups. Use it to initialize xmlLoadExtDtdDefaultValue.</p>
+<h3><a name="XML_DEFAULT_VERSION" id="XML_DEFAULT_VERSION"></a>Macro: XML_DEFAULT_VERSION</h3><pre>#define XML_DEFAULT_VERSION</pre><p>The default version of XML used: 1.0</p>
+<h3><a name="xmlSAXHandlerV1" id="xmlSAXHandlerV1">Structure xmlSAXHandlerV1</a></h3><pre class="programlisting">Structure xmlSAXHandlerV1<br />struct _xmlSAXHandlerV1 {
     <a href="libxml-parser.html#internalSubsetSAXFunc">internalSubsetSAXFunc</a>	internalSubset
     <a href="libxml-parser.html#isStandaloneSAXFunc">isStandaloneSAXFunc</a>	isStandalone
     <a href="libxml-parser.html#hasInternalSubsetSAXFunc">hasInternalSubsetSAXFunc</a>	hasInternalSubset
@@ -246,455 +235,319 @@
     <a href="libxml-parser.html#cdataBlockSAXFunc">cdataBlockSAXFunc</a>	cdataBlock
     <a href="libxml-parser.html#externalSubsetSAXFunc">externalSubsetSAXFunc</a>	externalSubset
     unsigned int	initialized
-}</pre><br /><pre class="programlisting">int	<a href="#xmlSAXUserParseFile">xmlSAXUserParseFile</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 const char * filename)<br />
-</pre><pre class="programlisting"><a name="fatalErrorSAXFunc" id="fatalErrorSAXFunc"></a>Function type: fatalErrorSAXFunc
-void	fatalErrorSAXFunc	(void * ctx, <br />				 const char * msg, <br />				 ... ...)
-</pre><p>Display and format fatal error messages, callback. Note: so far fatalError() SAX callbacks are not used, error() get all the callbacks for errors.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	<a href="#xmlSAXParseDTD">xmlSAXParseDTD</a>	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
-</pre><pre class="programlisting"><a name="entityDeclSAXFunc" id="entityDeclSAXFunc"></a>Function type: entityDeclSAXFunc
-void	entityDeclSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)
-</pre><p>An entity definition has been parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the entity type</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the entity value (without processing).</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlLoadExternalEntity">xmlLoadExternalEntity</a>	(const char * URL, <br />				 const char * ID, <br />				 <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#XML_DEFAULT_VERSION">XML_DEFAULT_VERSION</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlStopParser">xmlStopParser</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlReadFd">xmlReadFd</a>	(int fd, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">int	<a href="#xmlParseExtParsedEnt">xmlParseExtParsedEnt</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlReadIO">xmlReadIO</a>	(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">int	<a href="#xmlStrVPrintf">xmlStrVPrintf</a>	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * buf, <br />				 int len, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * msg, <br />				 va_list ap)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlCreateDocParserCtxt">xmlCreateDocParserCtxt</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStrsub">xmlStrsub</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 int start, <br />				 int len)<br />
-</pre><pre class="programlisting">int	<a href="#xmlParseBalancedChunkMemory">xmlParseBalancedChunkMemory</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 int depth, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlRecoverDoc">xmlRecoverDoc</a>	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)<br />
-</pre><pre class="programlisting">void	<a href="#xmlCleanupParser">xmlCleanupParser</a>	(void)<br />
-</pre><pre class="programlisting">int	<a href="#xmlStrcasecmp">xmlStrcasecmp</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2)<br />
-</pre><pre class="programlisting">int	<a href="#xmlCtxtResetPush">xmlCtxtResetPush</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * chunk, <br />				 int size, <br />				 const char * filename, <br />				 const char * encoding)<br />
-</pre><pre class="programlisting"><a name="isStandaloneSAXFunc" id="isStandaloneSAXFunc"></a>Function type: isStandaloneSAXFunc
-int	isStandaloneSAXFunc	(void * ctx)
-</pre><p>Is this document tagged standalone?</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a name="startDocumentSAXFunc" id="startDocumentSAXFunc"></a>Function type: startDocumentSAXFunc
-void	startDocumentSAXFunc	(void * ctx)
-</pre><p>Called when the document start being processed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr></tbody></table></div><br />
-<pre class="programlisting">#define <a href="#XML_SKIP_IDS">XML_SKIP_IDS</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlClearParserCtxt">xmlClearParserCtxt</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">int	<a href="#xmlParseExternalEntity">xmlParseExternalEntity</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 int depth, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst)<br />
-</pre><pre class="programlisting"><a name="notationDeclSAXFunc" id="notationDeclSAXFunc"></a>Function type: notationDeclSAXFunc
-void	notationDeclSAXFunc	(void * ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)
-</pre><p>What to do when a notation declaration has been parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The name of the notation</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a name="warningSAXFunc" id="warningSAXFunc"></a>Function type: warningSAXFunc
-void	warningSAXFunc	(void * ctx, <br />				 const char * msg, <br />				 ... ...)
-</pre><p>Display and format a warning messages, callback.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div><br />
-<pre class="programlisting">void	<a href="#xmlSetExternalEntityLoader">xmlSetExternalEntityLoader</a>	(<a href="libxml-parser.html#xmlExternalEntityLoader">xmlExternalEntityLoader</a> f)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlSetupParserForBuffer" id="xmlSetupParserForBuffer"></a>Function: xmlSetupParserForBuffer</h3><pre class="programlisting">void	xmlSetupParserForBuffer	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * buffer, <br />				 const char * filename)<br />
-</pre><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>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> * buffer</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file name</td></tr></tbody></table></div><h3><a name="xmlCtxtReadFile" id="xmlCtxtReadFile"></a>Function: xmlCtxtReadFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlCtxtReadFile	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * filename, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an XML file from the filesystem or the network. This reuses the existing @ctxt parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file or URL</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlStrcmp" id="xmlStrcmp"></a>Function: xmlStrcmp</h3><pre class="programlisting">int	xmlStrcmp	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2)<br />
-</pre><p>a strcmp for xmlChar's</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str1</tt></i>:</span></td><td>the first <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>str2</tt></i>:</span></td><td>the second <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the integer result of the comparison</td></tr></tbody></table></div><h3><a name="xmlParseMemory" id="xmlParseMemory"></a>Function: xmlParseMemory</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlParseMemory	(const char * buffer, <br />				 int size)<br />
-</pre><p>parse an XML in-memory block and build a tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>an pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlParseCtxtExternalEntity" id="xmlParseCtxtExternalEntity"></a>Function: xmlParseCtxtExternalEntity</h3><pre class="programlisting">int	xmlParseCtxtExternalEntity	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctx, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst)<br />
-</pre><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. [78] extParsedEnt ::= TextDecl? content</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the existing parsing context</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the URL for the entity to load</td></tr><tr><td><span class="term"><i><tt>ID</tt></i>:</span></td><td>the System ID for the entity to load</td></tr><tr><td><span class="term"><i><tt>lst</tt></i>:</span></td><td>the return value for the set of parsed nodes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the entity is well formed, -1 in case of args problem and the parser error code otherwise</td></tr></tbody></table></div>
-      
-      
-      
-    <h3><a name="xmlStrcasestr" id="xmlStrcasestr"></a>Function: xmlStrcasestr</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrcasestr	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
-</pre><p>a case-ignoring strstr for xmlChar's</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * array (haystack)</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> to search (needle)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * for the first occurrence or NULL.</td></tr></tbody></table></div><h3><a name="xmlStrcat" id="xmlStrcat"></a>Function: xmlStrcat</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrcat	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * add)<br />
-</pre><p>a strcat for array of xmlChar's. Since they are supposed to be encoded in UTF-8 or an encoding with 8bit based chars, we assume a termination mark of '0'.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the original <a href="libxml-tree.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>add</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * array added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-tree.html#xmlChar">xmlChar</a> * containing the concatenated string.</td></tr></tbody></table></div>
-      An attribute definition has been parsed.
-      
-      
-      
-      
-      
-      
-      
-      
-    
-      Get an entity by name.
-      
-      
-      
-    <h3><a name="xmlStrstr" id="xmlStrstr"></a>Function: xmlStrstr</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrstr	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
-</pre><p>a strstr for xmlChar's</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * array (haystack)</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> to search (needle)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * for the first occurrence or NULL.</td></tr></tbody></table></div>
-      Called when an opening tag has been processed.
-      
-      
-      
-      
-    
-      Receiving some chars from the parser.
-      
-      
-      
-      
-    <h3><a name="xmlClearNodeInfoSeq" id="xmlClearNodeInfoSeq"></a>Function: xmlClearNodeInfoSeq</h3><pre class="programlisting">void	xmlClearNodeInfoSeq	(<a href="libxml-parser.html#xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a> seq)<br />
-</pre><p>-- Clear (release memory and reinitialize) node info sequence</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>seq</tt></i>:</span></td><td>a node info sequence pointer</td></tr></tbody></table></div><h3><a name="xmlParseChunk" id="xmlParseChunk"></a>Function: xmlParseChunk</h3><pre class="programlisting">int	xmlParseChunk	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * chunk, <br />				 int size, <br />				 int terminate)<br />
-</pre><p>Parse a Chunk of memory</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>an char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size in byte of the chunk</td></tr><tr><td><span class="term"><i><tt>terminate</tt></i>:</span></td><td>last chunk indicator</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>zero if no error, the <a href="libxml-xmlerror.html#xmlParserErrors">xmlParserErrors</a> otherwise.</td></tr></tbody></table></div><h3><a name="xmlReadMemory" id="xmlReadMemory"></a>Function: xmlReadMemory</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlReadMemory	(const char * buffer, <br />				 int size, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
+}</pre><h3><a name="xmlParserInputState" id="xmlParserInputState">xmlParserInputState</a></h3><pre class="programlisting">Enum xmlParserInputState {
+    <a name="XML_PARSER_EOF" id="XML_PARSER_EOF">XML_PARSER_EOF</a> = -1 : nothing is to be parsed
+    <a name="XML_PARSER_START" id="XML_PARSER_START">XML_PARSER_START</a> = 0 : nothing has been parsed
+    <a name="XML_PARSER_MISC" id="XML_PARSER_MISC">XML_PARSER_MISC</a> = 1 : Misc* before int subset
+    <a name="XML_PARSER_PI" id="XML_PARSER_PI">XML_PARSER_PI</a> = 2 : Within a processing instruction
+    <a name="XML_PARSER_DTD" id="XML_PARSER_DTD">XML_PARSER_DTD</a> = 3 : within some DTD content
+    <a name="XML_PARSER_PROLOG" id="XML_PARSER_PROLOG">XML_PARSER_PROLOG</a> = 4 : Misc* after internal subset
+    <a name="XML_PARSER_COMMENT" id="XML_PARSER_COMMENT">XML_PARSER_COMMENT</a> = 5 : within a <a href="libxml-SAX.html#comment">comment</a>
+    <a name="XML_PARSER_START_TAG" id="XML_PARSER_START_TAG">XML_PARSER_START_TAG</a> = 6 : within a start tag
+    <a name="XML_PARSER_CONTENT" id="XML_PARSER_CONTENT">XML_PARSER_CONTENT</a> = 7 : within the content
+    <a name="XML_PARSER_CDATA_SECTION" id="XML_PARSER_CDATA_SECTION">XML_PARSER_CDATA_SECTION</a> = 8 : within a CDATA section
+    <a name="XML_PARSER_END_TAG" id="XML_PARSER_END_TAG">XML_PARSER_END_TAG</a> = 9 : within a closing tag
+    <a name="XML_PARSER_ENTITY_DECL" id="XML_PARSER_ENTITY_DECL">XML_PARSER_ENTITY_DECL</a> = 10 : within an entity declaration
+    <a name="XML_PARSER_ENTITY_VALUE" id="XML_PARSER_ENTITY_VALUE">XML_PARSER_ENTITY_VALUE</a> = 11 : within an entity value in a decl
+    <a name="XML_PARSER_ATTRIBUTE_VALUE" id="XML_PARSER_ATTRIBUTE_VALUE">XML_PARSER_ATTRIBUTE_VALUE</a> = 12 : within an <a href="libxml-SAX.html#attribute">attribute</a> value
+    <a name="XML_PARSER_SYSTEM_LITERAL" id="XML_PARSER_SYSTEM_LITERAL">XML_PARSER_SYSTEM_LITERAL</a> = 13 : within a SYSTEM value
+    <a name="XML_PARSER_EPILOG" id="XML_PARSER_EPILOG">XML_PARSER_EPILOG</a> = 14 : the Misc* after the last end tag
+    <a name="XML_PARSER_IGNORE" id="XML_PARSER_IGNORE">XML_PARSER_IGNORE</a> = 15 : within an IGNORED section
+    <a name="XML_PARSER_PUBLIC_LITERAL" id="XML_PARSER_PUBLIC_LITERAL">XML_PARSER_PUBLIC_LITERAL</a> = 16 : within a PUBLIC value
+}
+</pre><h3><a name="xmlParserOption" id="xmlParserOption">xmlParserOption</a></h3><pre class="programlisting">Enum xmlParserOption {
+    <a name="XML_PARSE_RECOVER" id="XML_PARSE_RECOVER">XML_PARSE_RECOVER</a> = 1 : recover on errors
+    <a name="XML_PARSE_NOENT" id="XML_PARSE_NOENT">XML_PARSE_NOENT</a> = 2 : substitute entities
+    <a name="XML_PARSE_DTDLOAD" id="XML_PARSE_DTDLOAD">XML_PARSE_DTDLOAD</a> = 4 : load the external subset
+    <a name="XML_PARSE_DTDATTR" id="XML_PARSE_DTDATTR">XML_PARSE_DTDATTR</a> = 8 : default DTD attributes
+    <a name="XML_PARSE_DTDVALID" id="XML_PARSE_DTDVALID">XML_PARSE_DTDVALID</a> = 16 : validate with the DTD
+    <a name="XML_PARSE_NOERROR" id="XML_PARSE_NOERROR">XML_PARSE_NOERROR</a> = 32 : suppress error reports
+    <a name="XML_PARSE_NOWARNING" id="XML_PARSE_NOWARNING">XML_PARSE_NOWARNING</a> = 64 : suppress warning reports
+    <a name="XML_PARSE_PEDANTIC" id="XML_PARSE_PEDANTIC">XML_PARSE_PEDANTIC</a> = 128 : pedantic error reporting
+    <a name="XML_PARSE_NOBLANKS" id="XML_PARSE_NOBLANKS">XML_PARSE_NOBLANKS</a> = 256 : remove blank nodes
+    <a name="XML_PARSE_SAX1" id="XML_PARSE_SAX1">XML_PARSE_SAX1</a> = 512 : use the SAX1 interface internally
+    <a name="XML_PARSE_XINCLUDE" id="XML_PARSE_XINCLUDE">XML_PARSE_XINCLUDE</a> = 1024 : Implement XInclude substitition
+    <a name="XML_PARSE_NONET" id="XML_PARSE_NONET">XML_PARSE_NONET</a> = 2048 : Forbid network access
+    <a name="XML_PARSE_NODICT" id="XML_PARSE_NODICT">XML_PARSE_NODICT</a> = 4096 : Do not reuse the context dictionnary
+    <a name="XML_PARSE_NSCLEAN" id="XML_PARSE_NSCLEAN">XML_PARSE_NSCLEAN</a> = 8192 : remove redundant namespaces declarations
+    <a name="XML_PARSE_NOCDATA" id="XML_PARSE_NOCDATA">XML_PARSE_NOCDATA</a> = 16384 : merge CDATA as text nodes
+}
+</pre><h3><a name="xmlParserNodeInfo" id="xmlParserNodeInfo">Structure xmlParserNodeInfo</a></h3><pre class="programlisting">Structure xmlParserNodeInfo<br />struct _xmlParserNodeInfo {
+    const struct _xmlNode *	node	: Position &amp; line # that text that create
+    unsigned long	begin_pos
+    unsigned long	begin_line
+    unsigned long	end_pos
+    unsigned long	end_line
+}</pre><h3><a name="xmlParserNodeInfoSeq" id="xmlParserNodeInfoSeq">Structure xmlParserNodeInfoSeq</a></h3><pre class="programlisting">Structure xmlParserNodeInfoSeq<br />struct _xmlParserNodeInfoSeq {
+    unsigned long	maximum
+    unsigned long	length
+    <a href="libxml-parser.html#xmlParserNodeInfo">xmlParserNodeInfo</a> *	buffer
+}</pre><h3><a name="xmlParseDoc" id="xmlParseDoc"></a>Function: xmlParseDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlParseDoc		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)<br />
 </pre><p>parse an XML in-memory document and build a tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlParseEntity" id="xmlParseEntity"></a>Function: xmlParseEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlParseEntity	(const char * filename)<br />
-</pre><p>parse an XML external entity out of context and build a tree. [78] extParsedEnt ::= TextDecl? content This correspond to a &quot;Well Balanced&quot; chunk</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlRecoverFile" id="xmlRecoverFile"></a>Function: xmlRecoverFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlRecoverFile	(const char * filename)<br />
-</pre><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>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlStrdup" id="xmlStrdup"></a>Function: xmlStrdup</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrdup	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)<br />
-</pre><p>a strdup for array of xmlChar's. Since they are supposed to be encoded in UTF-8 or an encoding with 8bit based chars, we assume a termination mark of '0'.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the input <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-tree.html#xmlChar">xmlChar</a> * or NULL</td></tr></tbody></table></div>
-      What to do when an unparsed entity declaration is parsed.
-      
-      
-      
-      
-      
-      
-    
-      SAX2 callback when an element start has been detected by the parser. It provides the namespace informations for the element, as well as the new namespace declarations on the element.
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlCreateIOParserCtxt" id="xmlCreateIOParserCtxt"></a>Function: xmlCreateIOParserCtxt</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	xmlCreateIOParserCtxt	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><p>Create a parser context for using the XML parser with an existing I/O stream</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>a SAX handler</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks</td></tr><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div>
-      Called when an entity reference is detected.
-      
-      
-      
-    <h3><a name="xmlStrncat" id="xmlStrncat"></a>Function: xmlStrncat</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrncat	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * add, <br />				 int len)<br />
-</pre><p>a strncat for array of xmlChar's, it will extend @cur with the len first bytes of @add.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the original <a href="libxml-tree.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>add</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * array added</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of @add</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-tree.html#xmlChar">xmlChar</a> *, the original @cur is reallocated if needed and should not be freed</td></tr></tbody></table></div>
-      Does this document has an external subset?
-      
-      
-    <h3><a name="xmlStrPrintf" id="xmlStrPrintf"></a>Function: xmlStrPrintf</h3><pre class="programlisting">int	xmlStrPrintf	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * buf, <br />				 int len, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * msg, <br />				 ... ...)<br />
-</pre><p>Formats @msg and places result into @buf.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the result buffer.</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the result buffer length.</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message with printf formatting.</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of <a href="libxml-SAX.html#characters">characters</a> written to @buf or -1 if an error occurs.</td></tr></tbody></table></div><h3><a name="xmlSAXParseDoc" id="xmlSAXParseDoc"></a>Function: xmlSAXParseDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlSAXParseDoc	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 int recovery)<br />
-</pre><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>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>recovery</tt></i>:</span></td><td>work in recovery mode, i.e. tries to read no Well Formed documents</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlStrndup" id="xmlStrndup"></a>Function: xmlStrndup</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrndup	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlStrndup" id="xmlStrndup"></a>Function: xmlStrndup</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrndup		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 int len)<br />
 </pre><p>a strndup for array of xmlChar's</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the input <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the len of @cur</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-tree.html#xmlChar">xmlChar</a> * or NULL</td></tr></tbody></table></div><h3><a name="xmlCharStrdup" id="xmlCharStrdup"></a>Function: xmlCharStrdup</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCharStrdup	(const char * cur)<br />
-</pre><p>a strdup for char's to xmlChar's</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the input char *</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-tree.html#xmlChar">xmlChar</a> * or NULL</td></tr></tbody></table></div><h3><a name="xmlNewIOInputStream" id="xmlNewIOInputStream"></a>Function: xmlNewIOInputStream</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlNewIOInputStream	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><p>Create a new input stream structure encapsulating the @input into a stream suitable for the parser.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an I/O Input</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new input stream or NULL</td></tr></tbody></table></div>
-      A processing instruction has been parsed.
-      
-      
-      
-      
-    <h3><a name="xmlParseBalancedChunkMemoryRecover" id="xmlParseBalancedChunkMemoryRecover"></a>Function: xmlParseBalancedChunkMemoryRecover</h3><pre class="programlisting">int	xmlParseBalancedChunkMemoryRecover	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 int depth, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst, <br />				 int recover)<br />
-</pre><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: [43] content ::= (element | CharData | Reference | CDSect | PI | Comment)*</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document the chunk pertains to</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler bloc (possibly NULL)</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks (possibly NULL)</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>Used for loop detection, use 0</td></tr><tr><td><span class="term"><i><tt>string</tt></i>:</span></td><td>the input string in UTF8 or ISO-Latin (zero terminated)</td></tr><tr><td><span class="term"><i><tt>lst</tt></i>:</span></td><td>the return value for the set of parsed nodes</td></tr><tr><td><span class="term"><i><tt>recover</tt></i>:</span></td><td>return nodes even if the data is broken (use 0)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the chunk is well balanced, -1 in case of args problem and the parser error code otherwise In case recover is set to 1, the nodelist will not be empty even if the parsed chunk is not well balanced.</td></tr></tbody></table></div><h3><a name="xmlInitParser" id="xmlInitParser"></a>Function: xmlInitParser</h3><pre class="programlisting">void	xmlInitParser	(void)<br />
-</pre><p>Initialization function for the XML parser. This is not reentrant. Call once before processing in case of use in multithreaded programs.</p>
-
-      Display and format an error messages, callback.
-      
-      
-      
-      
-    <h3><a name="xmlSAXParseMemory" id="xmlSAXParseMemory"></a>Function: xmlSAXParseMemory</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlSAXParseMemory	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 const char * buffer, <br />				 int size, <br />				 int recovery)<br />
-</pre><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>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>an pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>recovery</tt></i>:</span></td><td>work in recovery mode, i.e. tries to read not Well Formed documents</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlRecoverMemory" id="xmlRecoverMemory"></a>Function: xmlRecoverMemory</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlRecoverMemory	(const char * buffer, <br />				 int size)<br />
-</pre><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>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>an pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div>
-      External entity loaders types.
-      
-      
-      
-      
-    
-      Does this document has an internal subset.
-      
-      
-    <h3><a name="xmlReadDoc" id="xmlReadDoc"></a>Function: xmlReadDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlReadDoc	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an XML in-memory document and build a tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to a zero terminated string</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div>
-      Called when a pcdata block has been parsed.
-      
-      
-      
-      
-    <h3><a name="XML_COMPLETE_ATTRS" id="XML_COMPLETE_ATTRS"></a>Macro: XML_COMPLETE_ATTRS</h3><pre>#define XML_COMPLETE_ATTRS</pre><p>Bit in the loadsubset context field to tell to do complete the elements attributes lists with the ones defaulted from the DTDs. Use it to initialize xmlLoadExtDtdDefaultValue.</p>
-<h3><a name="xmlSAXParseFile" id="xmlSAXParseFile"></a>Function: xmlSAXParseFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlSAXParseFile	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 const char * filename, <br />				 int recovery)<br />
-</pre><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>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>recovery</tt></i>:</span></td><td>work in recovery mode, i.e. tries to read no Well Formed documents</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div>
-      Callback for freeing some parser input allocations.
-      
-      
-    <h3><a name="xmlCtxtReadIO" id="xmlCtxtReadIO"></a>Function: xmlCtxtReadIO</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlCtxtReadIO	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an XML document from I/O functions and source and build a tree. This reuses the existing @ctxt parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlSAXParseMemoryWithData" id="xmlSAXParseMemoryWithData"></a>Function: xmlSAXParseMemoryWithData</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlSAXParseMemoryWithData	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 const char * buffer, <br />				 int size, <br />				 int recovery, <br />				 void * data)<br />
-</pre><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. User data (void *) is stored within the parser context in the context's _private member, so it is available nearly everywhere in libxml</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>an pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>recovery</tt></i>:</span></td><td>work in recovery mode, i.e. tries to read no Well Formed documents</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlParserFindNodeInfo" id="xmlParserFindNodeInfo"></a>Function: xmlParserFindNodeInfo</h3><pre class="programlisting">const <a href="libxml-parser.html#xmlParserNodeInfo">xmlParserNodeInfo</a> *	xmlParserFindNodeInfo	(const <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctx, <br />				 const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><p>Find the parser node info struct for a given node</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>an XML node within the tree</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an <a href="libxml-parser.html#xmlParserNodeInfo">xmlParserNodeInfo</a> block pointer or NULL</td></tr></tbody></table></div><h3><a name="xmlGetFeature" id="xmlGetFeature"></a>Function: xmlGetFeature</h3><pre class="programlisting">int	xmlGetFeature	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * name, <br />				 void * result)<br />
-</pre><p>Read the current value of one feature of this parser instance</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML/HTML parser context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the feature name</td></tr><tr><td><span class="term"><i><tt>result</tt></i>:</span></td><td>location to store the result</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case or error, 0 otherwise</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-    <h3><a name="xmlStrchr" id="xmlStrchr"></a>Function: xmlStrchr</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrchr	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> val)<br />
-</pre><p>a strchr for xmlChar's</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> to search</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * for the first occurrence or NULL.</td></tr></tbody></table></div><h3><a name="xmlIOParseDTD" id="xmlIOParseDTD"></a>Function: xmlIOParseDTD</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	xmlIOParseDTD	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><p>Load and parse a DTD</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block or NULL</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an Input Buffer</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> or NULL in case of error. @input will be freed at parsing end.</td></tr></tbody></table></div><h3><a name="xmlFreeParserCtxt" id="xmlFreeParserCtxt"></a>Function: xmlFreeParserCtxt</h3><pre class="programlisting">void	xmlFreeParserCtxt	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>Free all the memory used by a parser context. However the parsed document in ctxt-&gt;myDoc is not freed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlParseDTD" id="xmlParseDTD"></a>Function: xmlParseDTD</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	xmlParseDTD	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
-</pre><p>Load and parse an external subset.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>a NAME* containing the External ID of the DTD</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>a NAME* containing the URL to the DTD</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> or NULL in case of error.</td></tr></tbody></table></div>
-      A comment has been parsed.
-      
-      
-      
-    <h3><a name="xmlInitParserCtxt" id="xmlInitParserCtxt"></a>Function: xmlInitParserCtxt</h3><pre class="programlisting">int	xmlInitParserCtxt	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>Initialize a parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div>
-      Handle an attribute that has been read by the parser. The default handling is to convert the attribute into an DOM subtree and past it in a new xmlAttr element added to the element.
-      
-      
-      
-      
-    <h3><a name="xmlStrQEqual" id="xmlStrQEqual"></a>Function: xmlStrQEqual</h3><pre class="programlisting">int	xmlStrQEqual	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pref, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
-</pre><p>Check if a QName is Equal to a given string</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>pref</tt></i>:</span></td><td>the prefix of the QName</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the localname of the QName</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the second <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if they are equal, 0 if they are different</td></tr></tbody></table></div><h3><a name="xmlParserInputGrow" id="xmlParserInputGrow"></a>Function: xmlParserInputGrow</h3><pre class="programlisting">int	xmlParserInputGrow	(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> in, <br />				 int len)<br />
-</pre><p>This function increase the input for the parser. It tries to preserve pointers to the input buffer, and keep already read data</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>an XML parser input</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>an indicative size for the lookahead</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of xmlChars read, or -1 in case of error, 0 indicate the end of this entity</td></tr></tbody></table></div><h3><a name="xmlCtxtReadMemory" id="xmlCtxtReadMemory"></a>Function: xmlCtxtReadMemory</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlCtxtReadMemory	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * buffer, <br />				 int size, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an XML in-memory document and build a tree. This reuses the existing @ctxt parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div>
-      Callback on external subset declaration.
-      
-      
-      
-      
-      
-    
-      Callback: The entity loader, to control the loading of external entities, the application can either: - override this resolveEntity() callback in the SAX block - or better use the xmlSetExternalEntityLoader() function to set up it's own entity resolution routine
-      
-      
-      
-      
-    <h3><a name="xmlPedanticParserDefault" id="xmlPedanticParserDefault"></a>Function: xmlPedanticParserDefault</h3><pre class="programlisting">int	xmlPedanticParserDefault	(int val)<br />
-</pre><p>Set and return the previous value for enabling pedantic warnings.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>int 0 or 1</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last value for 0 for no substitution, 1 for substitution.</td></tr></tbody></table></div><h3><a name="xmlSAXParseEntity" id="xmlSAXParseEntity"></a>Function: xmlSAXParseEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlSAXParseEntity	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 const char * filename)<br />
-</pre><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. [78] extParsedEnt ::= TextDecl? content This correspond to a &quot;Well Balanced&quot; chunk</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlParseDoc" id="xmlParseDoc"></a>Function: xmlParseDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlParseDoc	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)<br />
-</pre><p>parse an XML in-memory document and build a tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlParserAddNodeInfo" id="xmlParserAddNodeInfo"></a>Function: xmlParserAddNodeInfo</h3><pre class="programlisting">void	xmlParserAddNodeInfo	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-parser.html#xmlParserNodeInfoPtr">xmlParserNodeInfoPtr</a> info)<br />
-</pre><p>Insert node info record into the sorted sequence</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>info</tt></i>:</span></td><td>a node info sequence pointer</td></tr></tbody></table></div><h3><a name="XML_SAX2_MAGIC" id="XML_SAX2_MAGIC"></a>Macro: XML_SAX2_MAGIC</h3><pre>#define XML_SAX2_MAGIC</pre><p>Special constant found in SAX2 blocks initialized fields</p>
-<h3><a name="xmlSAXParseFileWithData" id="xmlSAXParseFileWithData"></a>Function: xmlSAXParseFileWithData</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlSAXParseFileWithData	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 const char * filename, <br />				 int recovery, <br />				 void * data)<br />
-</pre><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. User data (void *) is stored within the parser context in the context's _private member, so it is available nearly everywhere in libxml</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>recovery</tt></i>:</span></td><td>work in recovery mode, i.e. tries to read no Well Formed documents</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlLineNumbersDefault" id="xmlLineNumbersDefault"></a>Function: xmlLineNumbersDefault</h3><pre class="programlisting">int	xmlLineNumbersDefault	(int val)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the input <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the len of @cur</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-tree.html#xmlChar">xmlChar</a> * or NULL</td></tr></tbody></table></div><h3><a name="xmlCtxtReadFile" id="xmlCtxtReadFile"></a>Function: xmlCtxtReadFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlCtxtReadFile		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const char * filename, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an XML file from the filesystem or the network. This reuses the existing @ctxt parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file or URL</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlSetupParserForBuffer" id="xmlSetupParserForBuffer"></a>Function: xmlSetupParserForBuffer</h3><pre class="programlisting">void	xmlSetupParserForBuffer		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * buffer, <br />					 const char * filename)<br />
+</pre><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>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> * buffer</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file name</td></tr></tbody></table></div><h3><a name="xmlParseCtxtExternalEntity" id="xmlParseCtxtExternalEntity"></a>Function: xmlParseCtxtExternalEntity</h3><pre class="programlisting">int	xmlParseCtxtExternalEntity	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst)<br />
+</pre><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. [78] extParsedEnt ::= TextDecl? content</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the existing parsing context</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the URL for the entity to load</td></tr><tr><td><span class="term"><i><tt>ID</tt></i>:</span></td><td>the System ID for the entity to load</td></tr><tr><td><span class="term"><i><tt>lst</tt></i>:</span></td><td>the return value for the set of parsed nodes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the entity is well formed, -1 in case of args problem and the parser error code otherwise</td></tr></tbody></table></div><h3><a name="xmlRecoverFile" id="xmlRecoverFile"></a>Function: xmlRecoverFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlRecoverFile		(const char * filename)<br />
+</pre><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>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlStrcasestr" id="xmlStrcasestr"></a>Function: xmlStrcasestr</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrcasestr		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
+</pre><p>a case-ignoring strstr for xmlChar's</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * array (haystack)</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> to search (needle)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * for the first occurrence or NULL.</td></tr></tbody></table></div><h3><a name="xmlStrcat" id="xmlStrcat"></a>Function: xmlStrcat</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrcat		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * add)<br />
+</pre><p>a strcat for array of xmlChar's. Since they are supposed to be encoded in UTF-8 or an encoding with 8bit based chars, we assume a termination mark of '0'.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the original <a href="libxml-tree.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>add</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * array added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-tree.html#xmlChar">xmlChar</a> * containing the concatenated string.</td></tr></tbody></table></div><h3><a name="attributeDeclSAXFunc" id="attributeDeclSAXFunc"></a>Function type: attributeDeclSAXFunc</h3><pre class="programlisting">Function type: attributeDeclSAXFunc
+void	attributeDeclSAXFunc		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * fullname, <br />					 int type, <br />					 int def, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * defaultValue, <br />					 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)
+</pre><p>An <a href="libxml-SAX.html#attribute">attribute</a> definition has been parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the name of the element</td></tr><tr><td><span class="term"><i><tt>fullname</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> type</td></tr><tr><td><span class="term"><i><tt>def</tt></i>:</span></td><td>the type of default value</td></tr><tr><td><span class="term"><i><tt>defaultValue</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> default value</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>the tree of enumerated value set</td></tr></tbody></table></div><br />
+<h3><a name="getEntitySAXFunc" id="getEntitySAXFunc"></a>Function type: getEntitySAXFunc</h3><pre class="programlisting">Function type: getEntitySAXFunc
+<a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	getEntitySAXFunc	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
+</pre><p>Get an entity by name.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> if found.</td></tr></tbody></table></div><br />
+<h3><a name="xmlStrstr" id="xmlStrstr"></a>Function: xmlStrstr</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrstr		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
+</pre><p>a strstr for xmlChar's</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * array (haystack)</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> to search (needle)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * for the first occurrence or NULL.</td></tr></tbody></table></div><h3><a name="xmlLineNumbersDefault" id="xmlLineNumbersDefault"></a>Function: xmlLineNumbersDefault</h3><pre class="programlisting">int	xmlLineNumbersDefault		(int val)<br />
 </pre><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>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>int 0 or 1</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last value for 0 for no substitution, 1 for substitution.</td></tr></tbody></table></div><h3><a name="xmlGetExternalEntityLoader" id="xmlGetExternalEntityLoader"></a>Function: xmlGetExternalEntityLoader</h3><pre class="programlisting"><a href="libxml-parser.html#xmlExternalEntityLoader">xmlExternalEntityLoader</a>	xmlGetExternalEntityLoader	(void)<br />
 </pre><p>Get the default external entity resolver function for the application</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-parser.html#xmlExternalEntityLoader">xmlExternalEntityLoader</a> function pointer</td></tr></tbody></table></div>
-      An element definition has been parsed.
-      
-      
-      
-      
-      
-    <h3><a name="xmlCtxtUseOptions" id="xmlCtxtUseOptions"></a>Function: xmlCtxtUseOptions</h3><pre class="programlisting">int	xmlCtxtUseOptions	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 int options)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-parser.html#xmlExternalEntityLoader">xmlExternalEntityLoader</a> function pointer</td></tr></tbody></table></div><h3><a name="elementDeclSAXFunc" id="elementDeclSAXFunc"></a>Function type: elementDeclSAXFunc</h3><pre class="programlisting">Function type: elementDeclSAXFunc
+void	elementDeclSAXFunc		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)
+</pre><p>An element definition has been parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the element type</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the element value tree</td></tr></tbody></table></div><br />
+<h3><a name="startElementSAXFunc" id="startElementSAXFunc"></a>Function type: startElementSAXFunc</h3><pre class="programlisting">Function type: startElementSAXFunc
+void	startElementSAXFunc		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** atts)
+</pre><p>Called when an opening tag has been processed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The element name, including namespace prefix</td></tr><tr><td><span class="term"><i><tt>atts</tt></i>:</span></td><td>An array of name/value attributes pairs, NULL terminated</td></tr></tbody></table></div><br />
+<h3><a name="charactersSAXFunc" id="charactersSAXFunc"></a>Function type: charactersSAXFunc</h3><pre class="programlisting">Function type: charactersSAXFunc
+void	charactersSAXFunc		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />					 int len)
+</pre><p>Receiving some chars from the parser.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr></tbody></table></div><br />
+<h3><a name="xmlClearNodeInfoSeq" id="xmlClearNodeInfoSeq"></a>Function: xmlClearNodeInfoSeq</h3><pre class="programlisting">void	xmlClearNodeInfoSeq		(<a href="libxml-parser.html#xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a> seq)<br />
+</pre><p>-- Clear (release memory and reinitialize) node info sequence</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>seq</tt></i>:</span></td><td>a node info sequence pointer</td></tr></tbody></table></div><h3><a name="xmlParseChunk" id="xmlParseChunk"></a>Function: xmlParseChunk</h3><pre class="programlisting">int	xmlParseChunk			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const char * chunk, <br />					 int size, <br />					 int terminate)<br />
+</pre><p>Parse a Chunk of memory</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>an char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size in byte of the chunk</td></tr><tr><td><span class="term"><i><tt>terminate</tt></i>:</span></td><td>last chunk indicator</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>zero if no error, the <a href="libxml-xmlerror.html#xmlParserErrors">xmlParserErrors</a> otherwise.</td></tr></tbody></table></div><h3><a name="xmlStrQEqual" id="xmlStrQEqual"></a>Function: xmlStrQEqual</h3><pre class="programlisting">int	xmlStrQEqual			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pref, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
+</pre><p>Check if a QName is Equal to a given string</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>pref</tt></i>:</span></td><td>the prefix of the QName</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the localname of the QName</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the second <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if they are equal, 0 if they are different</td></tr></tbody></table></div><h3><a name="xmlCtxtUseOptions" id="xmlCtxtUseOptions"></a>Function: xmlCtxtUseOptions</h3><pre class="programlisting">int	xmlCtxtUseOptions		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 int options)<br />
 </pre><p>Applies the options to the parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, the set of unknown or unimplemented options in case of error.</td></tr></tbody></table></div><h3><a name="xmlCreatePushParserCtxt" id="xmlCreatePushParserCtxt"></a>Function: xmlCreatePushParserCtxt</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	xmlCreatePushParserCtxt	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 const char * chunk, <br />				 int size, <br />				 const char * filename)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, the set of unknown or unimplemented options in case of error.</td></tr></tbody></table></div><h3><a name="xmlParseEntity" id="xmlParseEntity"></a>Function: xmlParseEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlParseEntity		(const char * filename)<br />
+</pre><p>parse an XML external entity out of context and build a tree. [78] extParsedEnt ::= TextDecl? content This correspond to a &quot;Well Balanced&quot; chunk</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlCreatePushParserCtxt" id="xmlCreatePushParserCtxt"></a>Function: xmlCreatePushParserCtxt</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	xmlCreatePushParserCtxt	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />						 void * user_data, <br />						 const char * chunk, <br />						 int size, <br />						 const char * filename)<br />
 </pre><p>Create a parser context for using the XML parser in push mode. If @buffer and @size are non-NULL, the data is used to detect the encoding. The remaining <a href="libxml-SAX.html#characters">characters</a> will be parsed so they don't need to be fed in again through xmlParseChunk. To allow content encoding detection, @size should be &gt;= 4 The value of @filename is used for fetching external entities and error/warning reports.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>a SAX handler</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>a pointer to an array of chars</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>number of chars in the array</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>an optional file name or URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="xmlCharStrndup" id="xmlCharStrndup"></a>Function: xmlCharStrndup</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCharStrndup	(const char * cur, <br />				 int len)<br />
-</pre><p>a strndup for char's to xmlChar's</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the input char *</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the len of @cur</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-tree.html#xmlChar">xmlChar</a> * or NULL</td></tr></tbody></table></div><h3><a name="xmlCtxtReadFd" id="xmlCtxtReadFd"></a>Function: xmlCtxtReadFd</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlCtxtReadFd	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 int fd, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>a SAX handler</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>a pointer to an array of chars</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>number of chars in the array</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>an optional file name or URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="xmlParserAddNodeInfo" id="xmlParserAddNodeInfo"></a>Function: xmlParserAddNodeInfo</h3><pre class="programlisting">void	xmlParserAddNodeInfo		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-parser.html#xmlParserNodeInfoPtr">xmlParserNodeInfoPtr</a> info)<br />
+</pre><p>Insert node info record into the sorted sequence</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>info</tt></i>:</span></td><td>a node info sequence pointer</td></tr></tbody></table></div><h3><a name="xmlCtxtReadFd" id="xmlCtxtReadFd"></a>Function: xmlCtxtReadFd</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlCtxtReadFd		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 int fd, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
 </pre><p>parse an XML from a file descriptor and build a tree. This reuses the existing @ctxt parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>an open file descriptor</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div>
-      Callback on internal subset declaration.
-      
-      
-      
-      
-      
-    <h3><a name="xmlNewParserCtxt" id="xmlNewParserCtxt"></a>Function: xmlNewParserCtxt</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	xmlNewParserCtxt	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>an open file descriptor</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="internalSubsetSAXFunc" id="internalSubsetSAXFunc"></a>Function type: internalSubsetSAXFunc</h3><pre class="programlisting">Function type: internalSubsetSAXFunc
+void	internalSubsetSAXFunc		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)
+</pre><p>Callback on internal subset declaration.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the root element name</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the SYSTEM ID (e.g. filename or URL)</td></tr></tbody></table></div><br />
+<h3><a name="xmlStrdup" id="xmlStrdup"></a>Function: xmlStrdup</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrdup		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)<br />
+</pre><p>a strdup for array of xmlChar's. Since they are supposed to be encoded in UTF-8 or an encoding with 8bit based chars, we assume a termination mark of '0'.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the input <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-tree.html#xmlChar">xmlChar</a> * or NULL</td></tr></tbody></table></div><h3><a name="xmlNewParserCtxt" id="xmlNewParserCtxt"></a>Function: xmlNewParserCtxt</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	xmlNewParserCtxt	(void)<br />
 </pre><p>Allocate and initialize a new parser context.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> or NULL</td></tr></tbody></table></div>
-      Called when the document end has been detected.
-      
-      
-    <h3><a name="xmlParseFile" id="xmlParseFile"></a>Function: xmlParseFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlParseFile	(const char * filename)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> or NULL</td></tr></tbody></table></div><h3><a name="endDocumentSAXFunc" id="endDocumentSAXFunc"></a>Function type: endDocumentSAXFunc</h3><pre class="programlisting">Function type: endDocumentSAXFunc
+void	endDocumentSAXFunc		(void * ctx)
+</pre><p>Called when the document end has been detected.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr></tbody></table></div><br />
+<h3><a name="xmlParseFile" id="xmlParseFile"></a>Function: xmlParseFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlParseFile		(const char * filename)<br />
 </pre><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.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree if the file was wellformed, NULL otherwise.</td></tr></tbody></table></div><h3><a name="xmlParseDocument" id="xmlParseDocument"></a>Function: xmlParseDocument</h3><pre class="programlisting">int	xmlParseDocument	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree if the file was wellformed, NULL otherwise.</td></tr></tbody></table></div><h3><a name="unparsedEntityDeclSAXFunc" id="unparsedEntityDeclSAXFunc"></a>Function type: unparsedEntityDeclSAXFunc</h3><pre class="programlisting">Function type: unparsedEntityDeclSAXFunc
+void	unparsedEntityDeclSAXFunc	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * notationName)
+</pre><p>What to do when an unparsed entity declaration is parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The name of the entity</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>notationName</tt></i>:</span></td><td>the name of the notation</td></tr></tbody></table></div><br />
+<h3><a name="xmlParseDocument" id="xmlParseDocument"></a>Function: xmlParseDocument</h3><pre class="programlisting">int	xmlParseDocument		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse an XML document (and build a tree if using the standard SAX interface). [1] document ::= prolog element Misc* [22] prolog ::= XMLDecl? Misc* (doctypedecl Misc*)?</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0, -1 in case of error. the parser context is augmented as a result of the parsing.</td></tr></tbody></table></div><h3><a name="xmlStrncmp" id="xmlStrncmp"></a>Function: xmlStrncmp</h3><pre class="programlisting">int	xmlStrncmp	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0, -1 in case of error. the parser context is augmented as a result of the parsing.</td></tr></tbody></table></div><h3><a name="xmlStrncmp" id="xmlStrncmp"></a>Function: xmlStrncmp</h3><pre class="programlisting">int	xmlStrncmp			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2, <br />					 int len)<br />
 </pre><p>a strncmp for xmlChar's</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str1</tt></i>:</span></td><td>the first <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>str2</tt></i>:</span></td><td>the second <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the max comparison length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the integer result of the comparison</td></tr></tbody></table></div>
-      Receive the document locator at startup, actually xmlDefaultSAXLocator. Everything is available on the context, so this is useless in our case.
-      
-      
-      
-    
-      Called when the end of an element has been detected.
-      
-      
-      
-    <h3><a name="XML_DETECT_IDS" id="XML_DETECT_IDS"></a>Macro: XML_DETECT_IDS</h3><pre>#define XML_DETECT_IDS</pre><p>Bit in the loadsubset context field to tell to do ID/REFs lookups. Use it to initialize xmlLoadExtDtdDefaultValue.</p>
-
-      Get a parameter entity by name.
-      
-      
-      
-    
-      SAX2 callback when an element end has been detected by the parser. It provides the namespace informations for the element.
-      
-      
-      
-      
-      
-    
-      Receiving some ignorable whitespaces from the parser. UNUSED: by default the DOM building will use characters.
-      
-      
-      
-      
-    <h3><a name="xmlInitNodeInfoSeq" id="xmlInitNodeInfoSeq"></a>Function: xmlInitNodeInfoSeq</h3><pre class="programlisting">void	xmlInitNodeInfoSeq	(<a href="libxml-parser.html#xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a> seq)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str1</tt></i>:</span></td><td>the first <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>str2</tt></i>:</span></td><td>the second <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the max comparison length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the integer result of the comparison</td></tr></tbody></table></div><h3><a name="xmlCreateIOParserCtxt" id="xmlCreateIOParserCtxt"></a>Function: xmlCreateIOParserCtxt</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	xmlCreateIOParserCtxt	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />						 void * user_data, <br />						 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />						 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />						 void * ioctx, <br />						 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
+</pre><p>Create a parser context for using the XML parser with an existing I/O stream</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>a SAX handler</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks</td></tr><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="xmlStrncasecmp" id="xmlStrncasecmp"></a>Function: xmlStrncasecmp</h3><pre class="programlisting">int	xmlStrncasecmp			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2, <br />					 int len)<br />
+</pre><p>a strncasecmp for xmlChar's</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str1</tt></i>:</span></td><td>the first <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>str2</tt></i>:</span></td><td>the second <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the max comparison length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the integer result of the comparison</td></tr></tbody></table></div><h3><a name="referenceSAXFunc" id="referenceSAXFunc"></a>Function type: referenceSAXFunc</h3><pre class="programlisting">Function type: referenceSAXFunc
+void	referenceSAXFunc		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
+</pre><p>Called when an entity <a href="libxml-SAX.html#reference">reference</a> is detected.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr></tbody></table></div><br />
+<h3><a name="xmlStrncat" id="xmlStrncat"></a>Function: xmlStrncat</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrncat		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * add, <br />					 int len)<br />
+</pre><p>a strncat for array of xmlChar's, it will extend @cur with the len first bytes of @add.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the original <a href="libxml-tree.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>add</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * array added</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of @add</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-tree.html#xmlChar">xmlChar</a> *, the original @cur is reallocated if needed and should not be freed</td></tr></tbody></table></div><h3><a name="getParameterEntitySAXFunc" id="getParameterEntitySAXFunc"></a>Function type: getParameterEntitySAXFunc</h3><pre class="programlisting">Function type: getParameterEntitySAXFunc
+<a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	getParameterEntitySAXFunc	(void * ctx, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
+</pre><p>Get a parameter entity by name.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The entity name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> if found.</td></tr></tbody></table></div><br />
+<h3><a name="ignorableWhitespaceSAXFunc" id="ignorableWhitespaceSAXFunc"></a>Function type: ignorableWhitespaceSAXFunc</h3><pre class="programlisting">Function type: ignorableWhitespaceSAXFunc
+void	ignorableWhitespaceSAXFunc	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ch, <br />					 int len)
+</pre><p>Receiving some ignorable whitespaces from the parser. UNUSED: by default the DOM building will use characters.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>ch</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr></tbody></table></div><br />
+<h3><a name="xmlStrPrintf" id="xmlStrPrintf"></a>Function: xmlStrPrintf</h3><pre class="programlisting">int	xmlStrPrintf			(<a href="libxml-tree.html#xmlChar">xmlChar</a> * buf, <br />					 int len, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * msg, <br />					 ... ...)<br />
+</pre><p>Formats @msg and places result into @buf.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the result buffer.</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the result buffer length.</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message with printf formatting.</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of <a href="libxml-SAX.html#characters">characters</a> written to @buf or -1 if an error occurs.</td></tr></tbody></table></div><h3><a name="xmlSAXParseDoc" id="xmlSAXParseDoc"></a>Function: xmlSAXParseDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlSAXParseDoc		(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 int recovery)<br />
+</pre><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>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>recovery</tt></i>:</span></td><td>work in recovery mode, i.e. tries to read no Well Formed documents</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlReadMemory" id="xmlReadMemory"></a>Function: xmlReadMemory</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlReadMemory		(const char * buffer, <br />					 int size, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an XML in-memory document and build a tree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlInitNodeInfoSeq" id="xmlInitNodeInfoSeq"></a>Function: xmlInitNodeInfoSeq</h3><pre class="programlisting">void	xmlInitNodeInfoSeq		(<a href="libxml-parser.html#xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a> seq)<br />
 </pre><p>-- Initialize (set to initial state) node info sequence</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>seq</tt></i>:</span></td><td>a node info sequence pointer</td></tr></tbody></table></div><h3><a name="xmlStrlen" id="xmlStrlen"></a>Function: xmlStrlen</h3><pre class="programlisting">int	xmlStrlen	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>seq</tt></i>:</span></td><td>a node info sequence pointer</td></tr></tbody></table></div><h3><a name="xmlStrVPrintf" id="xmlStrVPrintf"></a>Function: xmlStrVPrintf</h3><pre class="programlisting">int	xmlStrVPrintf			(<a href="libxml-tree.html#xmlChar">xmlChar</a> * buf, <br />					 int len, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * msg, <br />					 va_list ap)<br />
+</pre><p>Formats @msg and places result into @buf.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the result buffer.</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the result buffer length.</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message with printf formatting.</td></tr><tr><td><span class="term"><i><tt>ap</tt></i>:</span></td><td>extra parameters for the message.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of <a href="libxml-SAX.html#characters">characters</a> written to @buf or -1 if an error occurs.</td></tr></tbody></table></div><h3><a name="xmlParseMemory" id="xmlParseMemory"></a>Function: xmlParseMemory</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlParseMemory		(const char * buffer, <br />					 int size)<br />
+</pre><p>parse an XML in-memory block and build a tree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>an pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlStrlen" id="xmlStrlen"></a>Function: xmlStrlen</h3><pre class="programlisting">int	xmlStrlen			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
 </pre><p>length of a xmlChar's string</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a> contained in the ARRAY.</td></tr></tbody></table></div><h3><a name="xmlSubstituteEntitiesDefault" id="xmlSubstituteEntitiesDefault"></a>Function: xmlSubstituteEntitiesDefault</h3><pre class="programlisting">int	xmlSubstituteEntitiesDefault	(int val)<br />
 </pre><p>Set and return the previous value for default entity support. Initially the parser always keep entity references instead of substituting entity values in the output. This function has to be used to change the default parser behavior SAX::substituteEntities() has to be used for changing that on a file by file basis.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>int 0 or 1</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last value for 0 for no substitution, 1 for substitution.</td></tr></tbody></table></div><h3><a name="xmlStrncasecmp" id="xmlStrncasecmp"></a>Function: xmlStrncasecmp</h3><pre class="programlisting">int	xmlStrncasecmp	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2, <br />				 int len)<br />
-</pre><p>a strncasecmp for xmlChar's</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str1</tt></i>:</span></td><td>the first <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>str2</tt></i>:</span></td><td>the second <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the max comparison length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the integer result of the comparison</td></tr></tbody></table></div><h3><a name="xmlParserFindNodeInfoIndex" id="xmlParserFindNodeInfoIndex"></a>Function: xmlParserFindNodeInfoIndex</h3><pre class="programlisting">unsigned long	xmlParserFindNodeInfoIndex	(const <a href="libxml-parser.html#xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a> seq, <br />				 const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><p><a href="libxml-parser.html#xmlParserFindNodeInfoIndex">xmlParserFindNodeInfoIndex</a> : Find the index that the info record for the given node is or should be at in a sorted sequence</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>seq</tt></i>:</span></td><td>a node info sequence pointer</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>an XML node pointer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a long indicating the position of the record</td></tr></tbody></table></div><h3><a name="xmlSAXUserParseMemory" id="xmlSAXUserParseMemory"></a>Function: xmlSAXUserParseMemory</h3><pre class="programlisting">int	xmlSAXUserParseMemory	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 const char * buffer, <br />				 int size)<br />
-</pre><p>A better SAX parsing routine. parse an XML in-memory buffer and call the given SAX handler routines.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>a SAX handler</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>an in-memory XML document input</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the length of the XML document in bytes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success or a error number otherwise</td></tr></tbody></table></div><h3><a name="xmlCtxtReset" id="xmlCtxtReset"></a>Function: xmlCtxtReset</h3><pre class="programlisting">void	xmlCtxtReset	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>Reset a parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlSetFeature" id="xmlSetFeature"></a>Function: xmlSetFeature</h3><pre class="programlisting">int	xmlSetFeature	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * name, <br />				 void * value)<br />
-</pre><p>Change the current value of one feature of this parser instance</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML/HTML parser context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the feature name</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>pointer to the location of the new value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case or error, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlStrEqual" id="xmlStrEqual"></a>Function: xmlStrEqual</h3><pre class="programlisting">int	xmlStrEqual	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2)<br />
-</pre><p>Check if both string are equal of have same content Should be a bit more readable and faster than xmlStrEqual()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str1</tt></i>:</span></td><td>the first <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>str2</tt></i>:</span></td><td>the second <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if they are equal, 0 if they are different</td></tr></tbody></table></div><h3><a name="xmlKeepBlanksDefault" id="xmlKeepBlanksDefault"></a>Function: xmlKeepBlanksDefault</h3><pre class="programlisting">int	xmlKeepBlanksDefault	(int val)<br />
-</pre><p>Set and return the previous value for default blanks text nodes support. The 1.x version of the parser used an heuristic to try to detect ignorable white spaces. As a result the SAX callback was generating xmlSAX2IgnorableWhitespace() callbacks instead of characters() one, and when using the DOM output text nodes containing those blanks were not generated. The 2.x and later version will switch to the XML standard way and ignorableWhitespace() are only generated when running the parser in validating mode and when the current element doesn't allow CDATA or mixed content. This function is provided as a way to force the standard behavior on 1.X libs and to switch back to the old mode for compatibility when running 1.X client code on 2.X . Upgrade of 1.X code should be done by using xmlIsBlankNode() commodity function to detect the &quot;empty&quot; nodes generated. This value also affect autogeneration of indentation when saving code if blanks sections are kept, indentation is not generated.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>int 0 or 1</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last value for 0 for no substitution, 1 for substitution.</td></tr></tbody></table></div><h3><a name="xmlParserInputRead" id="xmlParserInputRead"></a>Function: xmlParserInputRead</h3><pre class="programlisting">int	xmlParserInputRead	(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> in, <br />				 int len)<br />
-</pre><p>This function refresh the input for the parser. It doesn't try to preserve pointers to the input buffer, and discard already read data</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>an XML parser input</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>an indicative size for the lookahead</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of xmlChars read, or -1 in case of error, 0 indicate the end of this entity</td></tr></tbody></table></div><h3><a name="xmlReadFile" id="xmlReadFile"></a>Function: xmlReadFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlReadFile	(const char * filename, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an XML file from the filesystem or the network.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file or URL</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlGetFeaturesList" id="xmlGetFeaturesList"></a>Function: xmlGetFeaturesList</h3><pre class="programlisting">int	xmlGetFeaturesList	(int * len, <br />				 const char ** result)<br />
-</pre><p>Copy at most *@len feature names into the @result array</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the features name array (input/output)</td></tr><tr><td><span class="term"><i><tt>result</tt></i>:</span></td><td>an array of string to be filled with the features name.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-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></div><h3><a name="xmlCtxtReadDoc" id="xmlCtxtReadDoc"></a>Function: xmlCtxtReadDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlCtxtReadDoc	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>int 0 or 1</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last value for 0 for no substitution, 1 for substitution.</td></tr></tbody></table></div><h3><a name="endElementSAXFunc" id="endElementSAXFunc"></a>Function type: endElementSAXFunc</h3><pre class="programlisting">Function type: endElementSAXFunc
+void	endElementSAXFunc		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)
+</pre><p>Called when the end of an element has been detected.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The element name</td></tr></tbody></table></div><br />
+<h3><a name="xmlCtxtReadMemory" id="xmlCtxtReadMemory"></a>Function: xmlCtxtReadMemory</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlCtxtReadMemory	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const char * buffer, <br />					 int size, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
 </pre><p>parse an XML in-memory document and build a tree. This reuses the existing @ctxt parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to a zero terminated string</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlSAXUserParseFile" id="xmlSAXUserParseFile"></a>Function: xmlSAXUserParseFile</h3><pre class="programlisting">int	xmlSAXUserParseFile	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 const char * filename)<br />
-</pre><p>parse an XML file and call the given SAX handler routines. Automatic support for ZLIB/Compress compressed document is provided</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>a SAX handler</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success or a error number otherwise</td></tr></tbody></table></div>
-      Display and format fatal error messages, callback. Note: so far fatalError() SAX callbacks are not used, error() get all the callbacks for errors.
-      
-      
-      
-      
-    <h3><a name="xmlSAXParseDTD" id="xmlSAXParseDTD"></a>Function: xmlSAXParseDTD</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	xmlSAXParseDTD	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
-</pre><p>Load and parse an external subset.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>a NAME* containing the External ID of the DTD</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>a NAME* containing the URL to the DTD</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> or NULL in case of error.</td></tr></tbody></table></div>
-      An entity definition has been parsed.
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlLoadExternalEntity" id="xmlLoadExternalEntity"></a>Function: xmlLoadExternalEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlLoadExternalEntity	(const char * URL, <br />				 const char * ID, <br />				 <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><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>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the URL for the entity to load</td></tr><tr><td><span class="term"><i><tt>ID</tt></i>:</span></td><td>the Public ID for the entity to load</td></tr><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the context in which the entity is called or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> or NULL</td></tr></tbody></table></div><h3><a name="XML_DEFAULT_VERSION" id="XML_DEFAULT_VERSION"></a>Macro: XML_DEFAULT_VERSION</h3><pre>#define XML_DEFAULT_VERSION</pre><p>The default version of XML used: 1.0</p>
-<h3><a name="xmlStopParser" id="xmlStopParser"></a>Function: xmlStopParser</h3><pre class="programlisting">void	xmlStopParser	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>Blocks further parser processing</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlReadFd" id="xmlReadFd"></a>Function: xmlReadFd</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlReadFd	(int fd, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an XML from a file descriptor and build a tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>an open file descriptor</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlParseExtParsedEnt" id="xmlParseExtParsedEnt"></a>Function: xmlParseExtParsedEnt</h3><pre class="programlisting">int	xmlParseExtParsedEnt	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>parse a general parsed entity An external general parsed entity is well-formed if it matches the production labeled extParsedEnt. [78] extParsedEnt ::= TextDecl? content</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0, -1 in case of error. the parser context is augmented as a result of the parsing.</td></tr></tbody></table></div><h3><a name="xmlReadIO" id="xmlReadIO"></a>Function: xmlReadIO</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlReadIO	(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>parse an XML document from I/O functions and source and build a tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlStrVPrintf" id="xmlStrVPrintf"></a>Function: xmlStrVPrintf</h3><pre class="programlisting">int	xmlStrVPrintf	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * buf, <br />				 int len, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * msg, <br />				 va_list ap)<br />
-</pre><p>Formats @msg and places result into @buf.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the result buffer.</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the result buffer length.</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message with printf formatting.</td></tr><tr><td><span class="term"><i><tt>ap</tt></i>:</span></td><td>extra parameters for the message.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of <a href="libxml-SAX.html#characters">characters</a> written to @buf or -1 if an error occurs.</td></tr></tbody></table></div><h3><a name="xmlCreateDocParserCtxt" id="xmlCreateDocParserCtxt"></a>Function: xmlCreateDocParserCtxt</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	xmlCreateDocParserCtxt	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)<br />
-</pre><p>Creates a parser context for an XML in-memory document.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="xmlStrsub" id="xmlStrsub"></a>Function: xmlStrsub</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrsub	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 int start, <br />				 int len)<br />
-</pre><p>Extract a substring of a given string</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * array (haystack)</td></tr><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the index of the first char (zero based)</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the substring</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * for the first occurrence or NULL.</td></tr></tbody></table></div><h3><a name="xmlParseBalancedChunkMemory" id="xmlParseBalancedChunkMemory"></a>Function: xmlParseBalancedChunkMemory</h3><pre class="programlisting">int	xmlParseBalancedChunkMemory	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 int depth, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst)<br />
-</pre><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: [43] content ::= (element | CharData | Reference | CDSect | PI | Comment)*</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document the chunk pertains to</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler bloc (possibly NULL)</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks (possibly NULL)</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>Used for loop detection, use 0</td></tr><tr><td><span class="term"><i><tt>string</tt></i>:</span></td><td>the input string in UTF8 or ISO-Latin (zero terminated)</td></tr><tr><td><span class="term"><i><tt>lst</tt></i>:</span></td><td>the return value for the set of parsed nodes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the chunk is well balanced, -1 in case of args problem and the parser error code otherwise</td></tr></tbody></table></div><h3><a name="xmlRecoverDoc" id="xmlRecoverDoc"></a>Function: xmlRecoverDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlRecoverDoc	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlParserFindNodeInfoIndex" id="xmlParserFindNodeInfoIndex"></a>Function: xmlParserFindNodeInfoIndex</h3><pre class="programlisting">unsigned long	xmlParserFindNodeInfoIndex	(const <a href="libxml-parser.html#xmlParserNodeInfoSeqPtr">xmlParserNodeInfoSeqPtr</a> seq, <br />						 const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+</pre><p><a href="libxml-parser.html#xmlParserFindNodeInfoIndex">xmlParserFindNodeInfoIndex</a> : Find the index that the info record for the given node is or should be at in a sorted sequence</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>seq</tt></i>:</span></td><td>a node info sequence pointer</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>an XML node pointer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a long indicating the position of the record</td></tr></tbody></table></div><h3><a name="xmlSAXParseFileWithData" id="xmlSAXParseFileWithData"></a>Function: xmlSAXParseFileWithData</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlSAXParseFileWithData	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 const char * filename, <br />					 int recovery, <br />					 void * data)<br />
+</pre><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. User data (void *) is stored within the parser context in the context's _private member, so it is available nearly everywhere in libxml</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>recovery</tt></i>:</span></td><td>work in recovery mode, i.e. tries to read no Well Formed documents</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlCtxtReset" id="xmlCtxtReset"></a>Function: xmlCtxtReset</h3><pre class="programlisting">void	xmlCtxtReset			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>Reset a parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlRecoverDoc" id="xmlRecoverDoc"></a>Function: xmlRecoverDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlRecoverDoc		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)<br />
 </pre><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>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlCleanupParser" id="xmlCleanupParser"></a>Function: xmlCleanupParser</h3><pre class="programlisting">void	xmlCleanupParser	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlNewIOInputStream" id="xmlNewIOInputStream"></a>Function: xmlNewIOInputStream</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlNewIOInputStream	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />						 <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />						 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
+</pre><p>Create a new input stream structure encapsulating the @input into a stream suitable for the parser.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an I/O Input</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new input stream or NULL</td></tr></tbody></table></div><h3><a name="xmlStrEqual" id="xmlStrEqual"></a>Function: xmlStrEqual</h3><pre class="programlisting">int	xmlStrEqual			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2)<br />
+</pre><p>Check if both string are equal of have same content Should be a bit more readable and faster than xmlStrEqual()</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str1</tt></i>:</span></td><td>the first <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>str2</tt></i>:</span></td><td>the second <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if they are equal, 0 if they are different</td></tr></tbody></table></div><h3><a name="xmlKeepBlanksDefault" id="xmlKeepBlanksDefault"></a>Function: xmlKeepBlanksDefault</h3><pre class="programlisting">int	xmlKeepBlanksDefault		(int val)<br />
+</pre><p>Set and return the previous value for default blanks text nodes support. The 1.x version of the parser used an heuristic to try to detect ignorable white spaces. As a result the SAX callback was generating xmlSAX2IgnorableWhitespace() callbacks instead of characters() one, and when using the DOM output text nodes containing those blanks were not generated. The 2.x and later version will switch to the XML standard way and ignorableWhitespace() are only generated when running the parser in validating mode and when the current element doesn't allow CDATA or mixed content. This function is provided as a way to force the standard behavior on 1.X libs and to switch back to the old mode for compatibility when running 1.X client code on 2.X . Upgrade of 1.X code should be done by using xmlIsBlankNode() commodity function to detect the &quot;empty&quot; nodes generated. This value also affect autogeneration of indentation when saving code if blanks sections are kept, indentation is not generated.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>int 0 or 1</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last value for 0 for no substitution, 1 for substitution.</td></tr></tbody></table></div><h3><a name="xmlReadFile" id="xmlReadFile"></a>Function: xmlReadFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlReadFile		(const char * filename, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an XML file from the filesystem or the network.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file or URL</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlParserInputRead" id="xmlParserInputRead"></a>Function: xmlParserInputRead</h3><pre class="programlisting">int	xmlParserInputRead		(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> in, <br />					 int len)<br />
+</pre><p>This function refresh the input for the parser. It doesn't try to preserve pointers to the input buffer, and discard already read data</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>an XML parser input</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>an indicative size for the lookahead</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of xmlChars read, or -1 in case of error, 0 indicate the end of this entity</td></tr></tbody></table></div><h3><a name="xmlInitParser" id="xmlInitParser"></a>Function: xmlInitParser</h3><pre class="programlisting">void	xmlInitParser			(void)<br />
+</pre><p>Initialization function for the XML parser. This is not reentrant. Call once before processing in case of use in multithreaded programs.</p>
+<h3><a name="xmlStrcmp" id="xmlStrcmp"></a>Function: xmlStrcmp</h3><pre class="programlisting">int	xmlStrcmp			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2)<br />
+</pre><p>a strcmp for xmlChar's</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str1</tt></i>:</span></td><td>the first <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>str2</tt></i>:</span></td><td>the second <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the integer result of the comparison</td></tr></tbody></table></div><h3><a name="xmlGetFeaturesList" id="xmlGetFeaturesList"></a>Function: xmlGetFeaturesList</h3><pre class="programlisting">int	xmlGetFeaturesList		(int * len, <br />					 const char ** result)<br />
+</pre><p>Copy at most *@len feature names into the @result array</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the features name array (input/output)</td></tr><tr><td><span class="term"><i><tt>result</tt></i>:</span></td><td>an array of string to be filled with the features name.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-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></div><h3><a name="xmlCharStrndup" id="xmlCharStrndup"></a>Function: xmlCharStrndup</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCharStrndup		(const char * cur, <br />					 int len)<br />
+</pre><p>a strndup for char's to xmlChar's</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the input char *</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the len of @cur</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-tree.html#xmlChar">xmlChar</a> * or NULL</td></tr></tbody></table></div><h3><a name="xmlSetFeature" id="xmlSetFeature"></a>Function: xmlSetFeature</h3><pre class="programlisting">int	xmlSetFeature			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const char * name, <br />					 void * value)<br />
+</pre><p>Change the current value of one feature of this parser instance</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML/HTML parser context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the feature name</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>pointer to the location of the new value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case or error, 0 otherwise</td></tr></tbody></table></div><h3><a name="errorSAXFunc" id="errorSAXFunc"></a>Function type: errorSAXFunc</h3><pre class="programlisting">Function type: errorSAXFunc
+void	errorSAXFunc			(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre><p>Display and format an error messages, callback.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div><br />
+<h3><a name="xmlCtxtReadDoc" id="xmlCtxtReadDoc"></a>Function: xmlCtxtReadDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlCtxtReadDoc		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an XML in-memory document and build a tree. This reuses the existing @ctxt parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to a zero terminated string</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlSAXParseMemory" id="xmlSAXParseMemory"></a>Function: xmlSAXParseMemory</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlSAXParseMemory	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 const char * buffer, <br />					 int size, <br />					 int recovery)<br />
+</pre><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>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>an pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>recovery</tt></i>:</span></td><td>work in recovery mode, i.e. tries to read not Well Formed documents</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlRecoverMemory" id="xmlRecoverMemory"></a>Function: xmlRecoverMemory</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlRecoverMemory	(const char * buffer, <br />					 int size)<br />
+</pre><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>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>an pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlExternalEntityLoader" id="xmlExternalEntityLoader"></a>Function type: xmlExternalEntityLoader</h3><pre class="programlisting">Function type: xmlExternalEntityLoader
+<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlExternalEntityLoader	(const char * URL, <br />						 const char * ID, <br />						 <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> context)
+</pre><p>External entity loaders types.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>The System ID of the resource requested</td></tr><tr><td><span class="term"><i><tt>ID</tt></i>:</span></td><td>The Public ID of the resource requested</td></tr><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>the XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the entity input parser.</td></tr></tbody></table></div><br />
+<h3><a name="startElementNsSAX2Func" id="startElementNsSAX2Func"></a>Function type: startElementNsSAX2Func</h3><pre class="programlisting">Function type: startElementNsSAX2Func
+void	startElementNsSAX2Func		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />					 int nb_namespaces, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** namespaces, <br />					 int nb_attributes, <br />					 int nb_defaulted, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** attributes)
+</pre><p>SAX2 callback when an element start has been detected by the parser. It provides the namespace informations for the element, as well as the new namespace declarations on the element.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>localname</tt></i>:</span></td><td>the local name of the element</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the element namespace prefix if available</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the element namespace name if available</td></tr><tr><td><span class="term"><i><tt>nb_namespaces</tt></i>:</span></td><td>number of namespace definitions on that node</td></tr><tr><td><span class="term"><i><tt>namespaces</tt></i>:</span></td><td>pointer to the array of prefix/URI pairs namespace definitions</td></tr><tr><td><span class="term"><i><tt>nb_attributes</tt></i>:</span></td><td>the number of attributes on that node</td></tr><tr><td><span class="term"><i><tt>nb_defaulted</tt></i>:</span></td><td>the number of defaulted attributes. The defaulted ones are at the end of the array</td></tr><tr><td><span class="term"><i><tt>attributes</tt></i>:</span></td><td>pointer to the array of (localname/prefix/URI/value/end) <a href="libxml-SAX.html#attribute">attribute</a> values.</td></tr></tbody></table></div><br />
+<h3><a name="xmlSAXUserParseFile" id="xmlSAXUserParseFile"></a>Function: xmlSAXUserParseFile</h3><pre class="programlisting">int	xmlSAXUserParseFile		(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 void * user_data, <br />					 const char * filename)<br />
+</pre><p>parse an XML file and call the given SAX handler routines. Automatic support for ZLIB/Compress compressed document is provided</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>a SAX handler</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success or a error number otherwise</td></tr></tbody></table></div><h3><a name="hasInternalSubsetSAXFunc" id="hasInternalSubsetSAXFunc"></a>Function type: hasInternalSubsetSAXFunc</h3><pre class="programlisting">Function type: hasInternalSubsetSAXFunc
+int	hasInternalSubsetSAXFunc	(void * ctx)
+</pre><p>Does this document has an internal subset.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><br />
+<h3><a name="fatalErrorSAXFunc" id="fatalErrorSAXFunc"></a>Function type: fatalErrorSAXFunc</h3><pre class="programlisting">Function type: fatalErrorSAXFunc
+void	fatalErrorSAXFunc		(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre><p>Display and format fatal error messages, callback. Note: so far fatalError() SAX callbacks are not used, error() get all the callbacks for errors.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div><br />
+<h3><a name="xmlSAXParseDTD" id="xmlSAXParseDTD"></a>Function: xmlSAXParseDTD</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	xmlSAXParseDTD		(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
+</pre><p>Load and parse an external subset.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>a NAME* containing the External ID of the DTD</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>a NAME* containing the URL to the DTD</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="cdataBlockSAXFunc" id="cdataBlockSAXFunc"></a>Function type: cdataBlockSAXFunc</h3><pre class="programlisting">Function type: cdataBlockSAXFunc
+void	cdataBlockSAXFunc		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int len)
+</pre><p>Called when a pcdata block has been parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>The pcdata content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the block length</td></tr></tbody></table></div><br />
+<h3><a name="xmlParserFindNodeInfo" id="xmlParserFindNodeInfo"></a>Function: xmlParserFindNodeInfo</h3><pre class="programlisting">const <a href="libxml-parser.html#xmlParserNodeInfo">xmlParserNodeInfo</a> *	xmlParserFindNodeInfo	(const <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctx, <br />							 const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+</pre><p>Find the parser node info struct for a given node</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>an XML node within the tree</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an <a href="libxml-parser.html#xmlParserNodeInfo">xmlParserNodeInfo</a> block pointer or NULL</td></tr></tbody></table></div><h3><a name="xmlSAXParseFile" id="xmlSAXParseFile"></a>Function: xmlSAXParseFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlSAXParseFile		(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 const char * filename, <br />					 int recovery)<br />
+</pre><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>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>recovery</tt></i>:</span></td><td>work in recovery mode, i.e. tries to read no Well Formed documents</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="entityDeclSAXFunc" id="entityDeclSAXFunc"></a>Function type: entityDeclSAXFunc</h3><pre class="programlisting">Function type: entityDeclSAXFunc
+void	entityDeclSAXFunc		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)
+</pre><p>An entity definition has been parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the entity type</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the entity value (without processing).</td></tr></tbody></table></div><br />
+<h3><a name="xmlLoadExternalEntity" id="xmlLoadExternalEntity"></a>Function: xmlLoadExternalEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlLoadExternalEntity	(const char * URL, <br />						 const char * ID, <br />						 <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><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>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the URL for the entity to load</td></tr><tr><td><span class="term"><i><tt>ID</tt></i>:</span></td><td>the Public ID for the entity to load</td></tr><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the context in which the entity is called or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> or NULL</td></tr></tbody></table></div><h3><a name="xmlParserInputDeallocate" id="xmlParserInputDeallocate"></a>Function type: xmlParserInputDeallocate</h3><pre class="programlisting">Function type: xmlParserInputDeallocate
+void	xmlParserInputDeallocate	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * str)
+</pre><p>Callback for freeing some parser input allocations.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the string to deallocate</td></tr></tbody></table></div><br />
+<h3><a name="xmlCtxtReadIO" id="xmlCtxtReadIO"></a>Function: xmlCtxtReadIO</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlCtxtReadIO		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />					 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />					 void * ioctx, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an XML document from I/O functions and source and build a tree. This reuses the existing @ctxt parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlStopParser" id="xmlStopParser"></a>Function: xmlStopParser</h3><pre class="programlisting">void	xmlStopParser			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>Blocks further parser processing</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlReadFd" id="xmlReadFd"></a>Function: xmlReadFd</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlReadFd		(int fd, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an XML from a file descriptor and build a tree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>an open file descriptor</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlSAXParseMemoryWithData" id="xmlSAXParseMemoryWithData"></a>Function: xmlSAXParseMemoryWithData</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlSAXParseMemoryWithData	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />						 const char * buffer, <br />						 int size, <br />						 int recovery, <br />						 void * data)<br />
+</pre><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. User data (void *) is stored within the parser context in the context's _private member, so it is available nearly everywhere in libxml</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>an pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>recovery</tt></i>:</span></td><td>work in recovery mode, i.e. tries to read no Well Formed documents</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the userdata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="processingInstructionSAXFunc" id="processingInstructionSAXFunc"></a>Function type: processingInstructionSAXFunc</h3><pre class="programlisting">Function type: processingInstructionSAXFunc
+void	processingInstructionSAXFunc	(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data)
+</pre><p>A processing instruction has been parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>the target name</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the PI data's</td></tr></tbody></table></div><br />
+<h3><a name="xmlParseExtParsedEnt" id="xmlParseExtParsedEnt"></a>Function: xmlParseExtParsedEnt</h3><pre class="programlisting">int	xmlParseExtParsedEnt		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>parse a general parsed entity An external general parsed entity is well-formed if it matches the production labeled extParsedEnt. [78] extParsedEnt ::= TextDecl? content</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0, -1 in case of error. the parser context is augmented as a result of the parsing.</td></tr></tbody></table></div><h3><a name="xmlReadIO" id="xmlReadIO"></a>Function: xmlReadIO</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlReadIO		(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />					 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />					 void * ioctx, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an XML document from I/O functions and source and build a tree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlGetFeature" id="xmlGetFeature"></a>Function: xmlGetFeature</h3><pre class="programlisting">int	xmlGetFeature			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const char * name, <br />					 void * result)<br />
+</pre><p>Read the current value of one feature of this parser instance</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML/HTML parser context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the feature name</td></tr><tr><td><span class="term"><i><tt>result</tt></i>:</span></td><td>location to store the result</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case or error, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlParseBalancedChunkMemoryRecover" id="xmlParseBalancedChunkMemoryRecover"></a>Function: xmlParseBalancedChunkMemoryRecover</h3><pre class="programlisting">int	xmlParseBalancedChunkMemoryRecover	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />						 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />						 void * user_data, <br />						 int depth, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst, <br />						 int recover)<br />
+</pre><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: [43] content ::= (element | CharData | Reference | CDSect | PI | Comment)*</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document the chunk pertains to</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler bloc (possibly NULL)</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks (possibly NULL)</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>Used for loop detection, use 0</td></tr><tr><td><span class="term"><i><tt>string</tt></i>:</span></td><td>the input string in UTF8 or ISO-Latin (zero terminated)</td></tr><tr><td><span class="term"><i><tt>lst</tt></i>:</span></td><td>the return value for the set of parsed nodes</td></tr><tr><td><span class="term"><i><tt>recover</tt></i>:</span></td><td>return nodes even if the data is broken (use 0)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the chunk is well balanced, -1 in case of args problem and the parser error code otherwise In case recover is set to 1, the nodelist will not be empty even if the parsed chunk is not well balanced.</td></tr></tbody></table></div><h3><a name="xmlCharStrdup" id="xmlCharStrdup"></a>Function: xmlCharStrdup</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCharStrdup		(const char * cur)<br />
+</pre><p>a strdup for char's to xmlChar's</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the input char *</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new <a href="libxml-tree.html#xmlChar">xmlChar</a> * or NULL</td></tr></tbody></table></div><h3><a name="xmlStrchr" id="xmlStrchr"></a>Function: xmlStrchr</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrchr		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> val)<br />
+</pre><p>a strchr for xmlChar's</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * array</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> to search</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * for the first occurrence or NULL.</td></tr></tbody></table></div><h3><a name="xmlIOParseDTD" id="xmlIOParseDTD"></a>Function: xmlIOParseDTD</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	xmlIOParseDTD		(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />					 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
+</pre><p>Load and parse a DTD</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block or NULL</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an Input Buffer</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> or NULL in case of error. @input will be freed at parsing end.</td></tr></tbody></table></div><h3><a name="xmlFreeParserCtxt" id="xmlFreeParserCtxt"></a>Function: xmlFreeParserCtxt</h3><pre class="programlisting">void	xmlFreeParserCtxt		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>Free all the memory used by a parser context. However the parsed document in ctxt-&gt;myDoc is not freed.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlCreateDocParserCtxt" id="xmlCreateDocParserCtxt"></a>Function: xmlCreateDocParserCtxt</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	xmlCreateDocParserCtxt	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur)<br />
+</pre><p>Creates a parser context for an XML in-memory document.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="xmlStrsub" id="xmlStrsub"></a>Function: xmlStrsub</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStrsub		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 int start, <br />					 int len)<br />
+</pre><p>Extract a substring of a given string</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * array (haystack)</td></tr><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the index of the first char (zero based)</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the substring</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * for the first occurrence or NULL.</td></tr></tbody></table></div><h3><a name="xmlSAXUserParseMemory" id="xmlSAXUserParseMemory"></a>Function: xmlSAXUserParseMemory</h3><pre class="programlisting">int	xmlSAXUserParseMemory		(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 void * user_data, <br />					 const char * buffer, <br />					 int size)<br />
+</pre><p>A better SAX parsing routine. parse an XML in-memory buffer and call the given SAX handler routines.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>a SAX handler</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>an in-memory XML document input</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the length of the XML document in bytes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success or a error number otherwise</td></tr></tbody></table></div><h3><a name="xmlParseDTD" id="xmlParseDTD"></a>Function: xmlParseDTD</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	xmlParseDTD		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
+</pre><p>Load and parse an external subset.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>a NAME* containing the External ID of the DTD</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>a NAME* containing the URL to the DTD</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlParseBalancedChunkMemory" id="xmlParseBalancedChunkMemory"></a>Function: xmlParseBalancedChunkMemory</h3><pre class="programlisting">int	xmlParseBalancedChunkMemory	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 void * user_data, <br />					 int depth, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst)<br />
+</pre><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: [43] content ::= (element | CharData | Reference | CDSect | PI | Comment)*</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document the chunk pertains to</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler bloc (possibly NULL)</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks (possibly NULL)</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>Used for loop detection, use 0</td></tr><tr><td><span class="term"><i><tt>string</tt></i>:</span></td><td>the input string in UTF8 or ISO-Latin (zero terminated)</td></tr><tr><td><span class="term"><i><tt>lst</tt></i>:</span></td><td>the return value for the set of parsed nodes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the chunk is well balanced, -1 in case of args problem and the parser error code otherwise</td></tr></tbody></table></div><h3><a name="notationDeclSAXFunc" id="notationDeclSAXFunc"></a>Function type: notationDeclSAXFunc</h3><pre class="programlisting">Function type: notationDeclSAXFunc
+void	notationDeclSAXFunc		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)
+</pre><p>What to do when a notation declaration has been parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The name of the notation</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr></tbody></table></div><br />
+<h3><a name="endElementNsSAX2Func" id="endElementNsSAX2Func"></a>Function type: endElementNsSAX2Func</h3><pre class="programlisting">Function type: endElementNsSAX2Func
+void	endElementNsSAX2Func		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI)
+</pre><p>SAX2 callback when an element end has been detected by the parser. It provides the namespace informations for the element.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>localname</tt></i>:</span></td><td>the local name of the element</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the element namespace prefix if available</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the element namespace name if available</td></tr></tbody></table></div><br />
+<h3><a name="commentSAXFunc" id="commentSAXFunc"></a>Function type: commentSAXFunc</h3><pre class="programlisting">Function type: commentSAXFunc
+void	commentSAXFunc			(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)
+</pre><p>A <a href="libxml-SAX.html#comment">comment</a> has been parsed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#comment">comment</a> content</td></tr></tbody></table></div><br />
+<h3><a name="xmlCleanupParser" id="xmlCleanupParser"></a>Function: xmlCleanupParser</h3><pre class="programlisting">void	xmlCleanupParser		(void)<br />
 </pre><p>Cleanup function for the XML library. It tries to reclaim all parsing related global memory allocated for the library processing. It doesn't deallocate any document related memory. Calling this function should not prevent reusing the library but one should call xmlCleanupParser() only when the process has finished using the library or XML document built with it.</p>
-<h3><a name="xmlStrcasecmp" id="xmlStrcasecmp"></a>Function: xmlStrcasecmp</h3><pre class="programlisting">int	xmlStrcasecmp	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2)<br />
+<h3><a name="attributeSAXFunc" id="attributeSAXFunc"></a>Function type: attributeSAXFunc</h3><pre class="programlisting">Function type: attributeSAXFunc
+void	attributeSAXFunc		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)
+</pre><p>Handle an <a href="libxml-SAX.html#attribute">attribute</a> that has been read by the parser. The default handling is to convert the <a href="libxml-SAX.html#attribute">attribute</a> into an DOM subtree and past it in a new <a href="libxml-tree.html#xmlAttr">xmlAttr</a> element added to the element.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>The <a href="libxml-SAX.html#attribute">attribute</a> name, including namespace prefix</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>The <a href="libxml-SAX.html#attribute">attribute</a> value</td></tr></tbody></table></div><br />
+<h3><a name="xmlStrcasecmp" id="xmlStrcasecmp"></a>Function: xmlStrcasecmp</h3><pre class="programlisting">int	xmlStrcasecmp			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str1, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str2)<br />
 </pre><p>a strcasecmp for xmlChar's</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str1</tt></i>:</span></td><td>the first <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>str2</tt></i>:</span></td><td>the second <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the integer result of the comparison</td></tr></tbody></table></div><h3><a name="xmlCtxtResetPush" id="xmlCtxtResetPush"></a>Function: xmlCtxtResetPush</h3><pre class="programlisting">int	xmlCtxtResetPush	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * chunk, <br />				 int size, <br />				 const char * filename, <br />				 const char * encoding)<br />
-</pre><p>Reset a push parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>a pointer to an array of chars</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>number of chars in the array</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>an optional file name or URI</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and 1 in case of error</td></tr></tbody></table></div>
-      Is this document tagged standalone?
-      
-      
-    
-      Called when the document start being processed.
-      
-      
-    <h3><a name="XML_SKIP_IDS" id="XML_SKIP_IDS"></a>Macro: XML_SKIP_IDS</h3><pre>#define XML_SKIP_IDS</pre><p>Bit in the loadsubset context field to tell to not do ID/REFs registration. Used to initialize <a href="libxml-globals.html#xmlLoadExtDtdDefaultValue">xmlLoadExtDtdDefaultValue</a> in some special cases.</p>
-<h3><a name="xmlClearParserCtxt" id="xmlClearParserCtxt"></a>Function: xmlClearParserCtxt</h3><pre class="programlisting">void	xmlClearParserCtxt	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str1</tt></i>:</span></td><td>the first <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>str2</tt></i>:</span></td><td>the second <a href="libxml-tree.html#xmlChar">xmlChar</a> *</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the integer result of the comparison</td></tr></tbody></table></div><h3><a name="hasExternalSubsetSAXFunc" id="hasExternalSubsetSAXFunc"></a>Function type: hasExternalSubsetSAXFunc</h3><pre class="programlisting">Function type: hasExternalSubsetSAXFunc
+int	hasExternalSubsetSAXFunc	(void * ctx)
+</pre><p>Does this document has an external subset?</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><br />
+<h3><a name="isStandaloneSAXFunc" id="isStandaloneSAXFunc"></a>Function type: isStandaloneSAXFunc</h3><pre class="programlisting">Function type: isStandaloneSAXFunc
+int	isStandaloneSAXFunc		(void * ctx)
+</pre><p>Is this document tagged standalone?</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true</td></tr></tbody></table></div><br />
+<h3><a name="startDocumentSAXFunc" id="startDocumentSAXFunc"></a>Function type: startDocumentSAXFunc</h3><pre class="programlisting">Function type: startDocumentSAXFunc
+void	startDocumentSAXFunc		(void * ctx)
+</pre><p>Called when the document start being processed.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr></tbody></table></div><br />
+<h3><a name="xmlInitParserCtxt" id="xmlInitParserCtxt"></a>Function: xmlInitParserCtxt</h3><pre class="programlisting">int	xmlInitParserCtxt		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>Initialize a parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlClearParserCtxt" id="xmlClearParserCtxt"></a>Function: xmlClearParserCtxt</h3><pre class="programlisting">void	xmlClearParserCtxt		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>Clear (release owned resources) and reinitialize a parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlParseExternalEntity" id="xmlParseExternalEntity"></a>Function: xmlParseExternalEntity</h3><pre class="programlisting">int	xmlParseExternalEntity	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data, <br />				 int depth, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlParserInputGrow" id="xmlParserInputGrow"></a>Function: xmlParserInputGrow</h3><pre class="programlisting">int	xmlParserInputGrow		(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> in, <br />					 int len)<br />
+</pre><p>This function increase the input for the parser. It tries to preserve pointers to the input buffer, and keep already read data</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>an XML parser input</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>an indicative size for the lookahead</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of xmlChars read, or -1 in case of error, 0 indicate the end of this entity</td></tr></tbody></table></div><h3><a name="xmlParseExternalEntity" id="xmlParseExternalEntity"></a>Function: xmlParseExternalEntity</h3><pre class="programlisting">int	xmlParseExternalEntity		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 void * user_data, <br />					 int depth, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> * lst)<br />
 </pre><p>Parse an external general entity An external general parsed entity is well-formed if it matches the production labeled extParsedEnt. [78] extParsedEnt ::= TextDecl? content</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document the chunk pertains to</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler bloc (possibly NULL)</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks (possibly NULL)</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>Used for loop detection, use 0</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the URL for the entity to load</td></tr><tr><td><span class="term"><i><tt>ID</tt></i>:</span></td><td>the System ID for the entity to load</td></tr><tr><td><span class="term"><i><tt>lst</tt></i>:</span></td><td>the return value for the set of parsed nodes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the entity is well formed, -1 in case of args problem and the parser error code otherwise</td></tr></tbody></table></div>
-      What to do when a notation declaration has been parsed.
-      
-      
-      
-      
-      
-    
-      Display and format a warning messages, callback.
-      
-      
-      
-      
-    <h3><a name="xmlSetExternalEntityLoader" id="xmlSetExternalEntityLoader"></a>Function: xmlSetExternalEntityLoader</h3><pre class="programlisting">void	xmlSetExternalEntityLoader	(<a href="libxml-parser.html#xmlExternalEntityLoader">xmlExternalEntityLoader</a> f)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document the chunk pertains to</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler bloc (possibly NULL)</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>The user data returned on SAX callbacks (possibly NULL)</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>Used for loop detection, use 0</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the URL for the entity to load</td></tr><tr><td><span class="term"><i><tt>ID</tt></i>:</span></td><td>the System ID for the entity to load</td></tr><tr><td><span class="term"><i><tt>lst</tt></i>:</span></td><td>the return value for the set of parsed nodes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the entity is well formed, -1 in case of args problem and the parser error code otherwise</td></tr></tbody></table></div><h3><a name="xmlCtxtResetPush" id="xmlCtxtResetPush"></a>Function: xmlCtxtResetPush</h3><pre class="programlisting">int	xmlCtxtResetPush		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const char * chunk, <br />					 int size, <br />					 const char * filename, <br />					 const char * encoding)<br />
+</pre><p>Reset a push parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i>:</span></td><td>a pointer to an array of chars</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>number of chars in the array</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>an optional file name or URI</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and 1 in case of error</td></tr></tbody></table></div><h3><a name="externalSubsetSAXFunc" id="externalSubsetSAXFunc"></a>Function type: externalSubsetSAXFunc</h3><pre class="programlisting">Function type: externalSubsetSAXFunc
+void	externalSubsetSAXFunc		(void * ctx, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)
+</pre><p>Callback on external subset declaration.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the root element name</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the SYSTEM ID (e.g. filename or URL)</td></tr></tbody></table></div><br />
+<h3><a name="resolveEntitySAXFunc" id="resolveEntitySAXFunc"></a>Function type: resolveEntitySAXFunc</h3><pre class="programlisting">Function type: resolveEntitySAXFunc
+<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	resolveEntitySAXFunc	(void * ctx, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicId, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemId)
+</pre><p>Callback: The entity loader, to control the loading of external entities, the application can either: - override this resolveEntity() callback in the SAX block - or better use the xmlSetExternalEntityLoader() function to set up it's own entity resolution routine</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>publicId</tt></i>:</span></td><td>The public ID of the entity</td></tr><tr><td><span class="term"><i><tt>systemId</tt></i>:</span></td><td>The system ID of the entity</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> if inlined or NULL for DOM behaviour.</td></tr></tbody></table></div><br />
+<h3><a name="setDocumentLocatorSAXFunc" id="setDocumentLocatorSAXFunc"></a>Function type: setDocumentLocatorSAXFunc</h3><pre class="programlisting">Function type: setDocumentLocatorSAXFunc
+void	setDocumentLocatorSAXFunc	(void * ctx, <br />					 <a href="libxml-tree.html#xmlSAXLocatorPtr">xmlSAXLocatorPtr</a> loc)
+</pre><p>Receive the document locator at startup, actually xmlDefaultSAXLocator. Everything is available on the context, so this is useless in our case.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the user data (XML parser context)</td></tr><tr><td><span class="term"><i><tt>loc</tt></i>:</span></td><td>A SAX Locator</td></tr></tbody></table></div><br />
+<h3><a name="xmlSetExternalEntityLoader" id="xmlSetExternalEntityLoader"></a>Function: xmlSetExternalEntityLoader</h3><pre class="programlisting">void	xmlSetExternalEntityLoader	(<a href="libxml-parser.html#xmlExternalEntityLoader">xmlExternalEntityLoader</a> f)<br />
 </pre><p>Changes the defaultexternal entity resolver function for the application</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the new entity resolver function</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the new entity resolver function</td></tr></tbody></table></div><h3><a name="xmlPedanticParserDefault" id="xmlPedanticParserDefault"></a>Function: xmlPedanticParserDefault</h3><pre class="programlisting">int	xmlPedanticParserDefault	(int val)<br />
+</pre><p>Set and return the previous value for enabling pedantic warnings.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>int 0 or 1</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last value for 0 for no substitution, 1 for substitution.</td></tr></tbody></table></div><h3><a name="warningSAXFunc" id="warningSAXFunc"></a>Function type: warningSAXFunc</h3><pre class="programlisting">Function type: warningSAXFunc
+void	warningSAXFunc			(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre><p>Display and format a warning messages, callback.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div><br />
+<h3><a name="xmlSAXParseEntity" id="xmlSAXParseEntity"></a>Function: xmlSAXParseEntity</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlSAXParseEntity	(<a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 const char * filename)<br />
+</pre><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. [78] extParsedEnt ::= TextDecl? content This correspond to a &quot;Well Balanced&quot; chunk</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>the SAX handler block</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><h3><a name="xmlReadDoc" id="xmlReadDoc"></a>Function: xmlReadDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlReadDoc		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>parse an XML in-memory document and build a tree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to a zero terminated string</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the resulting document tree</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-parserInternals.html b/doc/html/libxml-parserInternals.html
index 5d57d76..88ef9ae 100644
--- a/doc/html/libxml-parserInternals.html
+++ b/doc/html/libxml-parserInternals.html
@@ -10,370 +10,307 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module parserInternals from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module parserInternals from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-parser.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-parser.html">parser</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-relaxng.html">relaxng</a></th><td><a accesskey="n" href="libxml-relaxng.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this module exports a number of internal parsing routines they are not really all intended for applications but can prove useful doing low level processing. </p><h2>Table of Contents</h2><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseAttValue">xmlParseAttValue</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlCreateMemoryParserCtxt">xmlCreateMemoryParserCtxt</a>	(const char * buffer, <br />				 int size)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParseAttributeListDecl">xmlParseAttributeListDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#nodePop">nodePop</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSkipBlankChars">xmlSkipBlankChars</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#IS_CHAR">IS_CHAR</a>
-
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseName">xmlParseName</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseEncName">xmlParseEncName</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">int	<a href="#nodePush">nodePush</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> value)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSwitchEncoding">xmlSwitchEncoding</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParseNotationDecl">xmlParseNotationDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParseExternalSubset">xmlParseExternalSubset</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
-</pre><pre class="programlisting">#define <a href="#IS_PUBIDCHAR">IS_PUBIDCHAR</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlSwitchToEncoding">xmlSwitchToEncoding</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParseMisc">xmlParseMisc</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSwitchInputEncoding">xmlSwitchInputEncoding</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input, <br />				 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler)<br />
-</pre><pre class="programlisting">#define <a href="#IS_COMBINING_CH">IS_COMBINING_CH</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlNewStringInputStream">xmlNewStringInputStream</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * buffer)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseExternalID">xmlParseExternalID</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** publicID, <br />				 int strict)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlParseEntityRef">xmlParseEntityRef</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlScanName">xmlScanName</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">int	<a href="#xmlParseElementDecl">xmlParseElementDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseAttribute">xmlParseAttribute</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** value)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParseEndTag">xmlParseEndTag</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseEncodingDecl">xmlParseEncodingDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#htmlInitAutoClose">htmlInitAutoClose</a>	(void)<br />
-</pre><pre class="programlisting">#define <a href="#IS_LETTER">IS_LETTER</a>
-
-</pre><pre class="programlisting">#define <a href="#IS_EXTENDER_CH">IS_EXTENDER_CH</a>
-
-</pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a>	<a href="#htmlCreateFileParserCtxt">htmlCreateFileParserCtxt</a>	(const char * filename, <br />				 const char * encoding)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlCreateEntityParserCtxt">xmlCreateEntityParserCtxt</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * base)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	<a href="#xmlParseNotationType">xmlParseNotationType</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">int	<a href="#inputPush">inputPush</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> value)<br />
-</pre><pre class="programlisting">int	<a href="#namePush">namePush</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStringLenDecodeEntities">xmlStringLenDecodeEntities</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 int len, <br />				 int what, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlNewEntityInputStream">xmlNewEntityInputStream</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> entity)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#namePop">namePop</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlSplitQName">xmlSplitQName</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** prefix)<br />
-</pre><pre class="programlisting">#define <a href="#MOVETO_ENDTAG">MOVETO_ENDTAG</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlParseContent">xmlParseContent</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">Variable const xmlCharxmlStringComment[] <a name="xmlStringComment" id="xmlStringComment"></a>xmlStringComment
-
-</pre><pre class="programlisting">#define <a href="#SKIP_EOL">SKIP_EOL</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlParseMarkupDecl">xmlParseMarkupDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlNewInputStream">xmlNewInputStream</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParserHandleReference">xmlParserHandleReference</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNamespaceParseQName">xmlNamespaceParseQName</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** prefix)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParsePITarget">xmlParsePITarget</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#IS_LETTER_CH">IS_LETTER_CH</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlParseElementContentDecl">xmlParseElementContentDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> * result)<br />
-</pre><pre class="programlisting">#define <a href="#XML_SUBSTITUTE_NONE">XML_SUBSTITUTE_NONE</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlNewInputFromFile">xmlNewInputFromFile</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * filename)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#inputPop">inputPop</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParserHandlePEReference">xmlParserHandlePEReference</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>	<a href="#xmlPopInput">xmlPopInput</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParsePEReference">xmlParsePEReference</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlPushInput">xmlPushInput</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)<br />
-</pre><pre class="programlisting">Variable const xmlCharxmlStringTextNoenc[] <a name="xmlStringTextNoenc" id="xmlStringTextNoenc"></a>xmlStringTextNoenc
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseEntityValue">xmlParseEntityValue</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** orig)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStringDecodeEntities">xmlStringDecodeEntities</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 int what, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlCreateFileParserCtxt">xmlCreateFileParserCtxt</a>	(const char * filename)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParseNamespace">xmlParseNamespace</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#XML_SUBSTITUTE_REF">XML_SUBSTITUTE_REF</a>
-
-</pre><pre class="programlisting">#define <a href="#IS_BLANK">IS_BLANK</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlParseCharRef">xmlParseCharRef</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseVersionNum">xmlParseVersionNum</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParseElement">xmlParseElement</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#IS_BYTE_CHAR">IS_BYTE_CHAR</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlParseTextDecl">xmlParseTextDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParseXMLDecl">xmlParseXMLDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a name="xmlEntityReferenceFunc" id="xmlEntityReferenceFunc"></a>Function type: xmlEntityReferenceFunc
-void	xmlEntityReferenceFunc	(<a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> ent, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> firstNode, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> lastNode)
-</pre><p>Callback function used when one needs to be able to track back the provenance of a chunk of nodes inherited from an entity replacement.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ent</tt></i>:</span></td><td>the entity</td></tr><tr><td><span class="term"><i><tt>firstNode</tt></i>:</span></td><td>the fist node in the chunk</td></tr><tr><td><span class="term"><i><tt>lastNode</tt></i>:</span></td><td>the last nod in the chunk</td></tr></tbody></table></div><br />
-<pre class="programlisting">Variable unsigned int <a name="xmlParserMaxDepth" id="xmlParserMaxDepth"></a>xmlParserMaxDepth
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>	<a href="#xmlParseElementMixedContentDecl">xmlParseElementMixedContentDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 int inputchk)<br />
-</pre><pre class="programlisting">int	<a href="#xmlCopyCharMultiByte">xmlCopyCharMultiByte</a>	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * out, <br />				 int val)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>	<a href="#xmlParseElementChildrenContentDecl">xmlParseElementChildrenContentDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 int inputchk)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseQuotedString">xmlParseQuotedString</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#IS_DIGIT_CH">IS_DIGIT_CH</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlParseCharData">xmlParseCharData</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 int cdata)<br />
-</pre><pre class="programlisting">#define <a href="#IS_EXTENDER">IS_EXTENDER</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNamespaceParseNSDef">xmlNamespaceParseNSDef</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParseCDSect">xmlParseCDSect</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseVersionInfo">xmlParseVersionInfo</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlDecodeEntities">xmlDecodeEntities</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 int len, <br />				 int what, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParseComment">xmlParseComment</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlErrMemory">xmlErrMemory</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * extra)<br />
-</pre><pre class="programlisting">void	<a href="#xmlHandleEntity">xmlHandleEntity</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> entity)<br />
-</pre><pre class="programlisting">int	<a href="#xmlCurrentChar">xmlCurrentChar</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 int * len)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNamespaceParseNCName">xmlNamespaceParseNCName</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParsePI">xmlParsePI</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseNmtoken">xmlParseNmtoken</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#IS_IDEOGRAPHIC">IS_IDEOGRAPHIC</a>
-
-</pre><pre class="programlisting">#define <a href="#MOVETO_STARTTAG">MOVETO_STARTTAG</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlParserInputShrink">xmlParserInputShrink</a>	(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> in)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParseReference">xmlParseReference</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlCreateURLParserCtxt">xmlCreateURLParserCtxt</a>	(const char * filename, <br />				 int options)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSetEntityReferenceFunc">xmlSetEntityReferenceFunc</a>	(<a href="libxml-parserInternals.html#xmlEntityReferenceFunc">xmlEntityReferenceFunc</a> func)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeInputStream">xmlFreeInputStream</a>	(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)<br />
-</pre><pre class="programlisting">#define <a href="#IS_DIGIT">IS_DIGIT</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParsePubidLiteral">xmlParsePubidLiteral</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">Variable const xmlCharxmlStringText[] <a name="xmlStringText" id="xmlStringText"></a>xmlStringText
-
-</pre><pre class="programlisting">int	<a href="#xmlStringCurrentChar">xmlStringCurrentChar</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 int * len)<br />
-</pre><pre class="programlisting">#define <a href="#XML_SUBSTITUTE_PEREF">XML_SUBSTITUTE_PEREF</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlParseDefaultDecl">xmlParseDefaultDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** value)<br />
-</pre><pre class="programlisting">#define <a href="#INPUT_CHUNK">INPUT_CHUNK</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlIsLetter">xmlIsLetter</a>	(int c)<br />
-</pre><pre class="programlisting">int	<a href="#xmlCheckLanguageID">xmlCheckLanguageID</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * lang)<br />
-</pre><pre class="programlisting">int	<a href="#xmlCopyChar">xmlCopyChar</a>	(int len, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * out, <br />				 int val)<br />
-</pre><pre class="programlisting">void	<a href="#xmlNextChar">xmlNextChar</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#IS_BLANK_CH">IS_BLANK_CH</a>
-
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseStartTag">xmlParseStartTag</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	<a href="#xmlParseEnumerationType">xmlParseEnumerationType</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">int	<a href="#xmlParseSDDecl">xmlParseSDDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">int	<a href="#xmlParseAttributeType">xmlParseAttributeType</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> * tree)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseSystemLiteral">xmlParseSystemLiteral</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">int	<a href="#xmlParseEnumeratedType">xmlParseEnumeratedType</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> * tree)<br />
-</pre><pre class="programlisting">#define <a href="#IS_COMBINING">IS_COMBINING</a>
-
-</pre><pre class="programlisting">#define <a href="#XML_MAX_NAMELEN">XML_MAX_NAMELEN</a>
-
-</pre><pre class="programlisting">#define <a href="#IS_BASECHAR">IS_BASECHAR</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlParseDocTypeDecl">xmlParseDocTypeDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#XML_SUBSTITUTE_BOTH">XML_SUBSTITUTE_BOTH</a>
-
-</pre><pre class="programlisting">#define <a href="#IS_PUBIDCHAR_CH">IS_PUBIDCHAR_CH</a>
-
-</pre><pre class="programlisting">#define <a href="#IS_CHAR_CH">IS_CHAR_CH</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlParseEntityDecl">xmlParseEntityDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><h2>Description</h2>
+    </style><title>Module parserInternals from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module parserInternals from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-parser.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-parser.html">parser</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-relaxng.html">relaxng</a></th><td><a accesskey="n" href="libxml-relaxng.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this module exports a number of internal parsing routines they are not really all intended for applications but can prove useful doing low level processing. </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#INPUT_CHUNK">INPUT_CHUNK</a></pre><pre class="programlisting">#define <a href="#IS_BASECHAR">IS_BASECHAR</a></pre><pre class="programlisting">#define <a href="#IS_BLANK">IS_BLANK</a></pre><pre class="programlisting">#define <a href="#IS_BLANK_CH">IS_BLANK_CH</a></pre><pre class="programlisting">#define <a href="#IS_BYTE_CHAR">IS_BYTE_CHAR</a></pre><pre class="programlisting">#define <a href="#IS_CHAR">IS_CHAR</a></pre><pre class="programlisting">#define <a href="#IS_CHAR_CH">IS_CHAR_CH</a></pre><pre class="programlisting">#define <a href="#IS_COMBINING">IS_COMBINING</a></pre><pre class="programlisting">#define <a href="#IS_COMBINING_CH">IS_COMBINING_CH</a></pre><pre class="programlisting">#define <a href="#IS_DIGIT">IS_DIGIT</a></pre><pre class="programlisting">#define <a href="#IS_DIGIT_CH">IS_DIGIT_CH</a></pre><pre class="programlisting">#define <a href="#IS_EXTENDER">IS_EXTENDER</a></pre><pre class="programlisting">#define <a href="#IS_EXTENDER_CH">IS_EXTENDER_CH</a></pre><pre class="programlisting">#define <a href="#IS_IDEOGRAPHIC">IS_IDEOGRAPHIC</a></pre><pre class="programlisting">#define <a href="#IS_LETTER">IS_LETTER</a></pre><pre class="programlisting">#define <a href="#IS_LETTER_CH">IS_LETTER_CH</a></pre><pre class="programlisting">#define <a href="#IS_PUBIDCHAR">IS_PUBIDCHAR</a></pre><pre class="programlisting">#define <a href="#IS_PUBIDCHAR_CH">IS_PUBIDCHAR_CH</a></pre><pre class="programlisting">#define <a href="#MOVETO_ENDTAG">MOVETO_ENDTAG</a></pre><pre class="programlisting">#define <a href="#MOVETO_STARTTAG">MOVETO_STARTTAG</a></pre><pre class="programlisting">#define <a href="#SKIP_EOL">SKIP_EOL</a></pre><pre class="programlisting">#define <a href="#XML_MAX_NAMELEN">XML_MAX_NAMELEN</a></pre><pre class="programlisting">#define <a href="#XML_SUBSTITUTE_BOTH">XML_SUBSTITUTE_BOTH</a></pre><pre class="programlisting">#define <a href="#XML_SUBSTITUTE_NONE">XML_SUBSTITUTE_NONE</a></pre><pre class="programlisting">#define <a href="#XML_SUBSTITUTE_PEREF">XML_SUBSTITUTE_PEREF</a></pre><pre class="programlisting">#define <a href="#XML_SUBSTITUTE_REF">XML_SUBSTITUTE_REF</a></pre><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a>	<a href="#htmlCreateFileParserCtxt">htmlCreateFileParserCtxt</a>	(const char * filename, <br />							 const char * encoding)</pre>
+<pre class="programlisting">void	<a href="#htmlInitAutoClose">htmlInitAutoClose</a>		(void)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#inputPop">inputPop</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#inputPush">inputPush</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> value)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#namePop">namePop</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#namePush">namePush</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#nodePop">nodePop</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#nodePush">nodePush</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> value)</pre>
+<pre class="programlisting">int	<a href="#xmlCheckLanguageID">xmlCheckLanguageID</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * lang)</pre>
+<pre class="programlisting">int	<a href="#xmlCopyChar">xmlCopyChar</a>			(int len, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * out, <br />					 int val)</pre>
+<pre class="programlisting">int	<a href="#xmlCopyCharMultiByte">xmlCopyCharMultiByte</a>		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * out, <br />					 int val)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlCreateEntityParserCtxt">xmlCreateEntityParserCtxt</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * base)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlCreateFileParserCtxt">xmlCreateFileParserCtxt</a>	(const char * filename)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlCreateMemoryParserCtxt">xmlCreateMemoryParserCtxt</a>	(const char * buffer, <br />							 int size)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	<a href="#xmlCreateURLParserCtxt">xmlCreateURLParserCtxt</a>	(const char * filename, <br />						 int options)</pre>
+<pre class="programlisting">int	<a href="#xmlCurrentChar">xmlCurrentChar</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 int * len)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlDecodeEntities">xmlDecodeEntities</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 int len, <br />					 int what, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> end, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3)</pre>
+<pre class="programlisting">Function type: <a href="#xmlEntityReferenceFunc">xmlEntityReferenceFunc</a>
+void	<a href="#xmlEntityReferenceFunc">xmlEntityReferenceFunc</a>		(<a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> ent, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> firstNode, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> lastNode)
+</pre>
+<pre class="programlisting">void	<a href="#xmlErrMemory">xmlErrMemory</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const char * extra)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeInputStream">xmlFreeInputStream</a>		(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)</pre>
+<pre class="programlisting">void	<a href="#xmlHandleEntity">xmlHandleEntity</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> entity)</pre>
+<pre class="programlisting">int	<a href="#xmlIsLetter">xmlIsLetter</a>			(int c)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNamespaceParseNCName">xmlNamespaceParseNCName</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNamespaceParseNSDef">xmlNamespaceParseNSDef</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNamespaceParseQName">xmlNamespaceParseQName</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** prefix)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlNewEntityInputStream">xmlNewEntityInputStream</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />						 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> entity)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlNewInputFromFile">xmlNewInputFromFile</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />						 const char * filename)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlNewInputStream">xmlNewInputStream</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlNewStringInputStream">xmlNewStringInputStream</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * buffer)</pre>
+<pre class="programlisting">void	<a href="#xmlNextChar">xmlNextChar</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseAttValue">xmlParseAttValue</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseAttribute">xmlParseAttribute</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** value)</pre>
+<pre class="programlisting">void	<a href="#xmlParseAttributeListDecl">xmlParseAttributeListDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#xmlParseAttributeType">xmlParseAttributeType</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> * tree)</pre>
+<pre class="programlisting">void	<a href="#xmlParseCDSect">xmlParseCDSect</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParseCharData">xmlParseCharData</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 int cdata)</pre>
+<pre class="programlisting">int	<a href="#xmlParseCharRef">xmlParseCharRef</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParseComment">xmlParseComment</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParseContent">xmlParseContent</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#xmlParseDefaultDecl">xmlParseDefaultDecl</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** value)</pre>
+<pre class="programlisting">void	<a href="#xmlParseDocTypeDecl">xmlParseDocTypeDecl</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParseElement">xmlParseElement</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>	<a href="#xmlParseElementChildrenContentDecl">xmlParseElementChildrenContentDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />							 int inputchk)</pre>
+<pre class="programlisting">int	<a href="#xmlParseElementContentDecl">xmlParseElementContentDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> * result)</pre>
+<pre class="programlisting">int	<a href="#xmlParseElementDecl">xmlParseElementDecl</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>	<a href="#xmlParseElementMixedContentDecl">xmlParseElementMixedContentDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />							 int inputchk)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseEncName">xmlParseEncName</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseEncodingDecl">xmlParseEncodingDecl</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParseEndTag">xmlParseEndTag</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParseEntityDecl">xmlParseEntityDecl</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	<a href="#xmlParseEntityRef">xmlParseEntityRef</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseEntityValue">xmlParseEntityValue</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** orig)</pre>
+<pre class="programlisting">int	<a href="#xmlParseEnumeratedType">xmlParseEnumeratedType</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> * tree)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	<a href="#xmlParseEnumerationType">xmlParseEnumerationType</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseExternalID">xmlParseExternalID</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** publicID, <br />					 int strict)</pre>
+<pre class="programlisting">void	<a href="#xmlParseExternalSubset">xmlParseExternalSubset</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)</pre>
+<pre class="programlisting">void	<a href="#xmlParseMarkupDecl">xmlParseMarkupDecl</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParseMisc">xmlParseMisc</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseName">xmlParseName</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParseNamespace">xmlParseNamespace</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseNmtoken">xmlParseNmtoken</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParseNotationDecl">xmlParseNotationDecl</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	<a href="#xmlParseNotationType">xmlParseNotationType</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParsePEReference">xmlParsePEReference</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParsePI">xmlParsePI</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParsePITarget">xmlParsePITarget</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParsePubidLiteral">xmlParsePubidLiteral</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseQuotedString">xmlParseQuotedString</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParseReference">xmlParseReference</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#xmlParseSDDecl">xmlParseSDDecl</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseStartTag">xmlParseStartTag</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseSystemLiteral">xmlParseSystemLiteral</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParseTextDecl">xmlParseTextDecl</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseVersionInfo">xmlParseVersionInfo</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlParseVersionNum">xmlParseVersionNum</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParseXMLDecl">xmlParseXMLDecl</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParserHandlePEReference">xmlParserHandlePEReference</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParserHandleReference">xmlParserHandleReference</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlParserInputShrink">xmlParserInputShrink</a>		(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> in)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>	<a href="#xmlPopInput">xmlPopInput</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlPushInput">xmlPushInput</a>			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlScanName">xmlScanName</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlSetEntityReferenceFunc">xmlSetEntityReferenceFunc</a>	(<a href="libxml-parserInternals.html#xmlEntityReferenceFunc">xmlEntityReferenceFunc</a> func)</pre>
+<pre class="programlisting">int	<a href="#xmlSkipBlankChars">xmlSkipBlankChars</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlSplitQName">xmlSplitQName</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** prefix)</pre>
+<pre class="programlisting">int	<a href="#xmlStringCurrentChar">xmlStringCurrentChar</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 int * len)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStringDecodeEntities">xmlStringDecodeEntities</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 int what, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> end, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlStringLenDecodeEntities">xmlStringLenDecodeEntities</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />						 int len, <br />						 int what, <br />						 <a href="libxml-tree.html#xmlChar">xmlChar</a> end, <br />						 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2, <br />						 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3)</pre>
+<pre class="programlisting">int	<a href="#xmlSwitchEncoding">xmlSwitchEncoding</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)</pre>
+<pre class="programlisting">int	<a href="#xmlSwitchInputEncoding">xmlSwitchInputEncoding</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input, <br />					 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler)</pre>
+<pre class="programlisting">int	<a href="#xmlSwitchToEncoding">xmlSwitchToEncoding</a>		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler)</pre>
+<h2>Description</h2>
+<h3><a name="XML_SUBSTITUTE_REF" id="XML_SUBSTITUTE_REF"></a>Macro: XML_SUBSTITUTE_REF</h3><pre>#define XML_SUBSTITUTE_REF</pre><p>Whether general entities need to be substituted.</p>
+<h3><a name="IS_BLANK" id="IS_BLANK"></a>Macro: IS_BLANK</h3><pre>#define IS_BLANK</pre><p>Macro to check the following production in the XML spec: [3] S ::= (#x20 | #x9 | #xD | #xA)+</p>
+<h3><a name="IS_EXTENDER_CH" id="IS_EXTENDER_CH"></a>Macro: IS_EXTENDER_CH</h3><pre>#define IS_EXTENDER_CH</pre><p>Behaves like <a href="libxml-parserInternals.html#IS_EXTENDER">IS_EXTENDER</a> but with a single-byte argument</p>
+<h3><a name="IS_BYTE_CHAR" id="IS_BYTE_CHAR"></a>Macro: IS_BYTE_CHAR</h3><pre>#define IS_BYTE_CHAR</pre><p>Macro to check the following production in the XML spec: [2] Char ::= #x9 | #xA | #xD | [#x20...] any byte character in the accepted range</p>
+<h3><a name="IS_DIGIT" id="IS_DIGIT"></a>Macro: IS_DIGIT</h3><pre>#define IS_DIGIT</pre><p>Macro to check the following production in the XML spec: [88] Digit ::= ... long list see REC ...</p>
+<h3><a name="IS_PUBIDCHAR" id="IS_PUBIDCHAR"></a>Macro: IS_PUBIDCHAR</h3><pre>#define IS_PUBIDCHAR</pre><p>Macro to check the following production in the XML spec: [13] PubidChar ::= #x20 | #xD | #xA | [a-zA-Z0-9] | [-'()+,./:=?;!*#@$_%]</p>
+<h3><a name="XML_SUBSTITUTE_PEREF" id="XML_SUBSTITUTE_PEREF"></a>Macro: XML_SUBSTITUTE_PEREF</h3><pre>#define XML_SUBSTITUTE_PEREF</pre><p>Whether parameter entities need to be substituted.</p>
+<h3><a name="MOVETO_ENDTAG" id="MOVETO_ENDTAG"></a>Macro: MOVETO_ENDTAG</h3><pre>#define MOVETO_ENDTAG</pre><p>Skips to the next '&gt;' char.</p>
+<h3><a name="IS_DIGIT_CH" id="IS_DIGIT_CH"></a>Macro: IS_DIGIT_CH</h3><pre>#define IS_DIGIT_CH</pre><p>Behaves like <a href="libxml-parserInternals.html#IS_DIGIT">IS_DIGIT</a> but with a single byte argument</p>
+<h3><a name="SKIP_EOL" id="SKIP_EOL"></a>Macro: SKIP_EOL</h3><pre>#define SKIP_EOL</pre><p>Skips the end of line chars.</p>
+<h3><a name="IS_EXTENDER" id="IS_EXTENDER"></a>Macro: IS_EXTENDER</h3><pre>#define IS_EXTENDER</pre><p>Macro to check the following production in the XML spec: [89] Extender ::= #x00B7 | #x02D0 | #x02D1 | #x0387 | #x0640 | #x0E46 | #x0EC6 | #x3005 | [#x3031-#x3035] | [#x309D-#x309E] | [#x30FC-#x30FE]</p>
+<h3><a name="IS_CHAR" id="IS_CHAR"></a>Macro: IS_CHAR</h3><pre>#define IS_CHAR</pre><p>Macro to check the following production in the XML spec: [2] Char ::= #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF] any Unicode character, excluding the surrogate blocks, FFFE, and FFFF.</p>
+<h3><a name="IS_COMBINING_CH" id="IS_COMBINING_CH"></a>Macro: IS_COMBINING_CH</h3><pre>#define IS_COMBINING_CH</pre><p>Always false (all combining chars &gt; 0xff)</p>
+<h3><a name="IS_PUBIDCHAR_CH" id="IS_PUBIDCHAR_CH"></a>Macro: IS_PUBIDCHAR_CH</h3><pre>#define IS_PUBIDCHAR_CH</pre><p>Same as <a href="libxml-parserInternals.html#IS_PUBIDCHAR">IS_PUBIDCHAR</a> but for single-byte value</p>
+<h3><a name="IS_LETTER_CH" id="IS_LETTER_CH"></a>Macro: IS_LETTER_CH</h3><pre>#define IS_LETTER_CH</pre><p>Macro behaves like IS_LETTER, but only check base chars</p>
+<h3><a name="XML_SUBSTITUTE_NONE" id="XML_SUBSTITUTE_NONE"></a>Macro: XML_SUBSTITUTE_NONE</h3><pre>#define XML_SUBSTITUTE_NONE</pre><p>If no entities need to be substituted.</p>
+<h3><a name="IS_BLANK_CH" id="IS_BLANK_CH"></a>Macro: IS_BLANK_CH</h3><pre>#define IS_BLANK_CH</pre><p>Behaviour same as <a href="libxml-parserInternals.html#IS_BLANK">IS_BLANK</a></p>
+<h3><a name="IS_COMBINING" id="IS_COMBINING"></a>Macro: IS_COMBINING</h3><pre>#define IS_COMBINING</pre><p>Macro to check the following production in the XML spec: [87] CombiningChar ::= ... long list see REC ...</p>
+<h3><a name="XML_MAX_NAMELEN" id="XML_MAX_NAMELEN"></a>Macro: XML_MAX_NAMELEN</h3><pre>#define XML_MAX_NAMELEN</pre><p>Identifiers can be longer, but this will be more costly at runtime.</p>
+<h3><a name="IS_LETTER" id="IS_LETTER"></a>Macro: IS_LETTER</h3><pre>#define IS_LETTER</pre><p>Macro to check the following production in the XML spec: [84] Letter ::= BaseChar | Ideographic</p>
+<h3><a name="IS_BASECHAR" id="IS_BASECHAR"></a>Macro: IS_BASECHAR</h3><pre>#define IS_BASECHAR</pre><p>Macro to check the following production in the XML spec: [85] BaseChar ::= ... long list see REC ...</p>
+<h3><a name="INPUT_CHUNK" id="INPUT_CHUNK"></a>Macro: INPUT_CHUNK</h3><pre>#define INPUT_CHUNK</pre><p>The parser tries to always have that amount of input ready. One of the point is providing context when reporting errors.</p>
+<h3><a name="IS_IDEOGRAPHIC" id="IS_IDEOGRAPHIC"></a>Macro: IS_IDEOGRAPHIC</h3><pre>#define IS_IDEOGRAPHIC</pre><p>Macro to check the following production in the XML spec: [86] Ideographic ::= [#x4E00-#x9FA5] | #x3007 | [#x3021-#x3029]</p>
+<h3><a name="MOVETO_STARTTAG" id="MOVETO_STARTTAG"></a>Macro: MOVETO_STARTTAG</h3><pre>#define MOVETO_STARTTAG</pre><p>Skips to the next '&lt;' char.</p>
+<h3><a name="IS_CHAR_CH" id="IS_CHAR_CH"></a>Macro: IS_CHAR_CH</h3><pre>#define IS_CHAR_CH</pre><p>Behaves like <a href="libxml-parserInternals.html#IS_CHAR">IS_CHAR</a> on single-byte value</p>
+<h3><a name="XML_SUBSTITUTE_BOTH" id="XML_SUBSTITUTE_BOTH"></a>Macro: XML_SUBSTITUTE_BOTH</h3><pre>#define XML_SUBSTITUTE_BOTH</pre><p>Both general and parameter entities need to be substituted.</p>
 <h3><a name="xmlParseAttValue" id="xmlParseAttValue"></a>Function: xmlParseAttValue</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseAttValue	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse a value for an <a href="libxml-SAX.html#attribute">attribute</a> Note: the parser won't do substitution of entities here, this will be handled later in <a href="libxml-tree.html#xmlStringGetNodeList">xmlStringGetNodeList</a> [10] AttValue ::= '&quot;' ([^&lt;&amp;&quot;] | Reference)* '&quot;' | &quot;'&quot; ([^&lt;&amp;'] | Reference)* &quot;'&quot; 3.3.3 Attribute-Value Normalization: Before the value of an <a href="libxml-SAX.html#attribute">attribute</a> is passed to the application or checked for validity, the XML processor must normalize it as follows: - a character <a href="libxml-SAX.html#reference">reference</a> is processed by appending the referenced character to the <a href="libxml-SAX.html#attribute">attribute</a> value - an entity <a href="libxml-SAX.html#reference">reference</a> is processed by recursively processing the replacement text of the entity - a whitespace character (#x20, #xD, #xA, #x9) is processed by appending #x20 to the normalized value, except that only a single #x20 is appended for a &quot;#xD#xA&quot; sequence that is part of an external parsed entity or the literal entity value of an internal parsed entity - other <a href="libxml-SAX.html#characters">characters</a> are processed by appending them to the normalized value If the declared value is not CDATA, then the XML processor must further process the normalized <a href="libxml-SAX.html#attribute">attribute</a> value by discarding any leading and trailing space (#x20) characters, and by replacing sequences of space (#x20) <a href="libxml-SAX.html#characters">characters</a> by a single space (#x20) character. All attributes for which no declaration has been read should be treated by a non-validating parser as if declared CDATA.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the AttValue parsed or NULL. The value has to be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlCreateMemoryParserCtxt" id="xmlCreateMemoryParserCtxt"></a>Function: xmlCreateMemoryParserCtxt</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	xmlCreateMemoryParserCtxt	(const char * buffer, <br />				 int size)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the AttValue parsed or NULL. The value has to be freed by the caller.</td></tr></tbody></table></div><h3><a name="xmlCreateMemoryParserCtxt" id="xmlCreateMemoryParserCtxt"></a>Function: xmlCreateMemoryParserCtxt</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	xmlCreateMemoryParserCtxt	(const char * buffer, <br />							 int size)<br />
 </pre><p>Create a parser context for an XML in-memory document.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="xmlParseAttributeListDecl" id="xmlParseAttributeListDecl"></a>Function: xmlParseAttributeListDecl</h3><pre class="programlisting">void	xmlParseAttributeListDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>: parse the Attribute list def for an element [52] AttlistDecl ::= '&lt;!ATTLIST' S Name AttDef* S? '&gt;' [53] AttDef ::= S Name S AttType S DefaultDecl</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="nodePop" id="nodePop"></a>Function: nodePop</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	nodePop	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="nodePop" id="nodePop"></a>Function: nodePop</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	nodePop			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>Pops the top element node from the node stack</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the node just removed</td></tr></tbody></table></div><h3><a name="xmlSkipBlankChars" id="xmlSkipBlankChars"></a>Function: xmlSkipBlankChars</h3><pre class="programlisting">int	xmlSkipBlankChars	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>skip all blanks character found at that point in the input streams. It pops up finished entities in the process if allowable at that point.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of space chars skipped</td></tr></tbody></table></div><h3><a name="IS_CHAR" id="IS_CHAR"></a>Macro: IS_CHAR</h3><pre>#define IS_CHAR</pre><p>Macro to check the following production in the XML spec: [2] Char ::= #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF] any Unicode character, excluding the surrogate blocks, FFFE, and FFFF.</p>
-<h3><a name="xmlParseName" id="xmlParseName"></a>Function: xmlParseName</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseName	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the node just removed</td></tr></tbody></table></div><h3><a name="xmlParseName" id="xmlParseName"></a>Function: xmlParseName</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseName		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse an XML name. [4] NameChar ::= Letter | Digit | '.' | '-' | '_' | ':' | CombiningChar | Extender [5] Name ::= (Letter | '_' | ':') (NameChar)* [6] Names ::= Name (S Name)*</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the Name parsed or NULL</td></tr></tbody></table></div><h3><a name="xmlParseEncName" id="xmlParseEncName"></a>Function: xmlParseEncName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseEncName	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the Name parsed or NULL</td></tr></tbody></table></div><h3><a name="xmlParseEncName" id="xmlParseEncName"></a>Function: xmlParseEncName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseEncName		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse the XML encoding name [81] EncName ::= [A-Za-z] ([A-Za-z0-9._] | '-')*</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the encoding name value or NULL</td></tr></tbody></table></div><h3><a name="nodePush" id="nodePush"></a>Function: nodePush</h3><pre class="programlisting">int	nodePush	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> value)<br />
-</pre><p>Pushes a new element node on top of the node stack</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the element node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of error, the index in the stack otherwise</td></tr></tbody></table></div><h3><a name="xmlSwitchEncoding" id="xmlSwitchEncoding"></a>Function: xmlSwitchEncoding</h3><pre class="programlisting">int	xmlSwitchEncoding	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><p>change the input functions when discovering the character encoding of a given entity.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the parser context</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the encoding value (number)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlParseNotationDecl" id="xmlParseNotationDecl"></a>Function: xmlParseNotationDecl</h3><pre class="programlisting">void	xmlParseNotationDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>parse a notation declaration [82] NotationDecl ::= '&lt;!NOTATION' S Name S (ExternalID | PublicID) S? '&gt;' Hence there is actually 3 choices: 'PUBLIC' S PubidLiteral 'PUBLIC' S PubidLiteral S SystemLiteral and 'SYSTEM' S SystemLiteral See the NOTE on xmlParseExternalID().</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlParseExternalSubset" id="xmlParseExternalSubset"></a>Function: xmlParseExternalSubset</h3><pre class="programlisting">void	xmlParseExternalSubset	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
-</pre><p>parse Markup declarations from an external subset [30] extSubset ::= textDecl? extSubsetDecl [31] extSubsetDecl ::= (markupdecl | conditionalSect | PEReference | S) *</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external identifier</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the system identifier (or URL)</td></tr></tbody></table></div><h3><a name="IS_PUBIDCHAR" id="IS_PUBIDCHAR"></a>Macro: IS_PUBIDCHAR</h3><pre>#define IS_PUBIDCHAR</pre><p>Macro to check the following production in the XML spec: [13] PubidChar ::= #x20 | #xD | #xA | [a-zA-Z0-9] | [-'()+,./:=?;!*#@$_%]</p>
-<h3><a name="xmlSwitchToEncoding" id="xmlSwitchToEncoding"></a>Function: xmlSwitchToEncoding</h3><pre class="programlisting">int	xmlSwitchToEncoding	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler)<br />
-</pre><p>change the input functions when discovering the character encoding of a given entity.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the parser context</td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the encoding handler</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlParseMisc" id="xmlParseMisc"></a>Function: xmlParseMisc</h3><pre class="programlisting">void	xmlParseMisc	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>parse an XML Misc* optional field. [27] Misc ::= Comment | PI | S</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlSwitchInputEncoding" id="xmlSwitchInputEncoding"></a>Function: xmlSwitchInputEncoding</h3><pre class="programlisting">int	xmlSwitchInputEncoding	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input, <br />				 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler)<br />
-</pre><p>change the input functions when discovering the character encoding of a given entity.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the parser context</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>the input stream</td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the encoding handler</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 otherwise</td></tr></tbody></table></div><h3><a name="IS_COMBINING_CH" id="IS_COMBINING_CH"></a>Macro: IS_COMBINING_CH</h3><pre>#define IS_COMBINING_CH</pre><p>Always false (all combining chars &gt; 0xff)</p>
-<h3><a name="xmlNewStringInputStream" id="xmlNewStringInputStream"></a>Function: xmlNewStringInputStream</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlNewStringInputStream	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * buffer)<br />
-</pre><p>Create a new input stream based on a memory buffer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>an memory buffer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new input stream</td></tr></tbody></table></div><h3><a name="xmlParseExternalID" id="xmlParseExternalID"></a>Function: xmlParseExternalID</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseExternalID	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** publicID, <br />				 int strict)<br />
-</pre><p>Parse an External ID or a Public ID NOTE: Productions [75] and [83] interact badly since [75] can generate 'PUBLIC' S PubidLiteral S SystemLiteral [75] ExternalID ::= 'SYSTEM' S SystemLiteral | 'PUBLIC' S PubidLiteral S SystemLiteral [83] PublicID ::= 'PUBLIC' S PubidLiteral</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>publicID</tt></i>:</span></td><td>a xmlChar** receiving PubidLiteral</td></tr><tr><td><span class="term"><i><tt>strict</tt></i>:</span></td><td>indicate whether we should restrict parsing to only production [75], see NOTE below</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the function returns SystemLiteral and in the second case publicID receives PubidLiteral, is strict is off it is possible to return NULL and have publicID set.</td></tr></tbody></table></div><h3><a name="xmlParseEntityRef" id="xmlParseEntityRef"></a>Function: xmlParseEntityRef</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlParseEntityRef	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the encoding name value or NULL</td></tr></tbody></table></div><h3><a name="xmlParseEntityRef" id="xmlParseEntityRef"></a>Function: xmlParseEntityRef</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>	xmlParseEntityRef	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse ENTITY references declarations [68] EntityRef ::= '&amp;' Name ';' [ WFC: Entity Declared ] In a document without any DTD, a document with only an internal DTD subset which contains no parameter entity references, or a document with &quot;standalone='yes'&quot;, the Name given in the entity <a href="libxml-SAX.html#reference">reference</a> must match that in an entity declaration, except that well-formed documents need not declare any of the following entities: amp, lt, gt, apos, quot. The declaration of a parameter entity must precede any <a href="libxml-SAX.html#reference">reference</a> to it. Similarly, the declaration of a general entity must precede any <a href="libxml-SAX.html#reference">reference</a> to it which appears in a default value in an attribute-list declaration. Note that if entities are declared in the external subset or in external parameter entities, a non-validating processor is not obligated to read and process their declarations; for such documents, the rule that an entity must be declared is a well-formedness constraint only if standalone='yes'. [ WFC: Parsed Entity ] An entity <a href="libxml-SAX.html#reference">reference</a> must not contain the name of an unparsed entity</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> if found, or NULL otherwise.</td></tr></tbody></table></div><h3><a name="xmlScanName" id="xmlScanName"></a>Function: xmlScanName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlScanName	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> if found, or NULL otherwise.</td></tr></tbody></table></div><h3><a name="nodePush" id="nodePush"></a>Function: nodePush</h3><pre class="programlisting">int	nodePush			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> value)<br />
+</pre><p>Pushes a new element node on top of the node stack</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the element node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of error, the index in the stack otherwise</td></tr></tbody></table></div><h3><a name="xmlSwitchEncoding" id="xmlSwitchEncoding"></a>Function: xmlSwitchEncoding</h3><pre class="programlisting">int	xmlSwitchEncoding		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
+</pre><p>change the input functions when discovering the character encoding of a given entity.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the parser context</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the encoding value (number)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlParseNotationDecl" id="xmlParseNotationDecl"></a>Function: xmlParseNotationDecl</h3><pre class="programlisting">void	xmlParseNotationDecl		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>parse a notation declaration [82] NotationDecl ::= '&lt;!NOTATION' S Name S (ExternalID | PublicID) S? '&gt;' Hence there is actually 3 choices: 'PUBLIC' S PubidLiteral 'PUBLIC' S PubidLiteral S SystemLiteral and 'SYSTEM' S SystemLiteral See the NOTE on xmlParseExternalID().</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlParseExternalSubset" id="xmlParseExternalSubset"></a>Function: xmlParseExternalSubset</h3><pre class="programlisting">void	xmlParseExternalSubset		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
+</pre><p>parse Markup declarations from an external subset [30] extSubset ::= textDecl? extSubsetDecl [31] extSubsetDecl ::= (markupdecl | conditionalSect | PEReference | S) *</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external identifier</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the system identifier (or URL)</td></tr></tbody></table></div><h3><a name="xmlSwitchToEncoding" id="xmlSwitchToEncoding"></a>Function: xmlSwitchToEncoding</h3><pre class="programlisting">int	xmlSwitchToEncoding		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler)<br />
+</pre><p>change the input functions when discovering the character encoding of a given entity.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the parser context</td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the encoding handler</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlParseMisc" id="xmlParseMisc"></a>Function: xmlParseMisc</h3><pre class="programlisting">void	xmlParseMisc			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>parse an XML Misc* optional field. [27] Misc ::= Comment | PI | S</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlSwitchInputEncoding" id="xmlSwitchInputEncoding"></a>Function: xmlSwitchInputEncoding</h3><pre class="programlisting">int	xmlSwitchInputEncoding		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input, <br />					 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler)<br />
+</pre><p>change the input functions when discovering the character encoding of a given entity.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the parser context</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>the input stream</td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the encoding handler</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlNewStringInputStream" id="xmlNewStringInputStream"></a>Function: xmlNewStringInputStream</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlNewStringInputStream	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * buffer)<br />
+</pre><p>Create a new input stream based on a memory buffer.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>an memory buffer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new input stream</td></tr></tbody></table></div><h3><a name="xmlParseExternalID" id="xmlParseExternalID"></a>Function: xmlParseExternalID</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseExternalID	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** publicID, <br />					 int strict)<br />
+</pre><p>Parse an External ID or a Public ID NOTE: Productions [75] and [83] interact badly since [75] can generate 'PUBLIC' S PubidLiteral S SystemLiteral [75] ExternalID ::= 'SYSTEM' S SystemLiteral | 'PUBLIC' S PubidLiteral S SystemLiteral [83] PublicID ::= 'PUBLIC' S PubidLiteral</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>publicID</tt></i>:</span></td><td>a xmlChar** receiving PubidLiteral</td></tr><tr><td><span class="term"><i><tt>strict</tt></i>:</span></td><td>indicate whether we should restrict parsing to only production [75], see NOTE below</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the function returns SystemLiteral and in the second case publicID receives PubidLiteral, is strict is off it is possible to return NULL and have publicID set.</td></tr></tbody></table></div><h3><a name="xmlSkipBlankChars" id="xmlSkipBlankChars"></a>Function: xmlSkipBlankChars</h3><pre class="programlisting">int	xmlSkipBlankChars		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>skip all blanks character found at that point in the input streams. It pops up finished entities in the process if allowable at that point.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of space chars skipped</td></tr></tbody></table></div><h3><a name="xmlScanName" id="xmlScanName"></a>Function: xmlScanName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlScanName		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>Trickery: parse an XML name but without consuming the input flow Needed for rollback cases. Used only when parsing entities references. TODO: seems deprecated now, only used in the default part of <a href="libxml-parserInternals.html#xmlParserHandleReference">xmlParserHandleReference</a> [4] NameChar ::= Letter | Digit | '.' | '-' | '_' | ':' | CombiningChar | Extender [5] Name ::= (Letter | '_' | ':') (NameChar)* [6] Names ::= Name (S Name)*</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the Name parsed or NULL</td></tr></tbody></table></div><h3><a name="xmlParseElementDecl" id="xmlParseElementDecl"></a>Function: xmlParseElementDecl</h3><pre class="programlisting">int	xmlParseElementDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the Name parsed or NULL</td></tr></tbody></table></div><h3><a name="xmlParseElementDecl" id="xmlParseElementDecl"></a>Function: xmlParseElementDecl</h3><pre class="programlisting">int	xmlParseElementDecl		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse an Element declaration. [45] elementdecl ::= '&lt;!ELEMENT' S Name S contentspec S? '&gt;' [ VC: Unique Element Type Declaration ] No element type may be declared more than once</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the type of the element, or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlParseAttribute" id="xmlParseAttribute"></a>Function: xmlParseAttribute</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseAttribute	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the type of the element, or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlParseAttribute" id="xmlParseAttribute"></a>Function: xmlParseAttribute</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseAttribute	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** value)<br />
 </pre><p>parse an <a href="libxml-SAX.html#attribute">attribute</a> [41] Attribute ::= Name Eq AttValue [ WFC: No External Entity References ] Attribute values cannot contain direct or indirect entity references to external entities. [ WFC: No &lt; in Attribute Values ] The replacement text of any entity referred to directly or indirectly in an <a href="libxml-SAX.html#attribute">attribute</a> value (other than &quot;&amp;lt;&quot;) must not contain a &lt;. [ VC: Attribute Value Type ] The <a href="libxml-SAX.html#attribute">attribute</a> must have been declared; the value must be of the type declared for it. [25] Eq ::= S? '=' S? With namespace: [NS 11] Attribute ::= QName Eq AttValue Also the case QName == xmlns:??? is handled independently as a namespace definition.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> ** used to store the value of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name, and the value in *value.</td></tr></tbody></table></div><h3><a name="xmlParseEndTag" id="xmlParseEndTag"></a>Function: xmlParseEndTag</h3><pre class="programlisting">void	xmlParseEndTag	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> ** used to store the value of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name, and the value in *value.</td></tr></tbody></table></div><h3><a name="xmlParseEndTag" id="xmlParseEndTag"></a>Function: xmlParseEndTag</h3><pre class="programlisting">void	xmlParseEndTag			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse an end of tag [42] ETag ::= '&lt;/' Name S? '&gt;' With namespace [NS 9] ETag ::= '&lt;/' QName S? '&gt;'</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlParseEncodingDecl" id="xmlParseEncodingDecl"></a>Function: xmlParseEncodingDecl</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseEncodingDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse the XML encoding declaration [80] EncodingDecl ::= S 'encoding' Eq ('&quot;' EncName '&quot;' | &quot;'&quot; EncName &quot;'&quot;) this setups the conversion filters.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the encoding value or NULL</td></tr></tbody></table></div><h3><a name="htmlInitAutoClose" id="htmlInitAutoClose"></a>Function: htmlInitAutoClose</h3><pre class="programlisting">void	htmlInitAutoClose	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the encoding value or NULL</td></tr></tbody></table></div><h3><a name="htmlInitAutoClose" id="htmlInitAutoClose"></a>Function: htmlInitAutoClose</h3><pre class="programlisting">void	htmlInitAutoClose		(void)<br />
 </pre><p>Initialize the htmlStartCloseIndex for fast lookup of closing tags names. This is not reentrant. Call xmlInitParser() once before processing in case of use in multithreaded programs.</p>
-<h3><a name="IS_LETTER" id="IS_LETTER"></a>Macro: IS_LETTER</h3><pre>#define IS_LETTER</pre><p>Macro to check the following production in the XML spec: [84] Letter ::= BaseChar | Ideographic</p>
-<h3><a name="IS_EXTENDER_CH" id="IS_EXTENDER_CH"></a>Macro: IS_EXTENDER_CH</h3><pre>#define IS_EXTENDER_CH</pre><p>Behaves like <a href="libxml-parserInternals.html#IS_EXTENDER">IS_EXTENDER</a> but with a single-byte argument</p>
-<h3><a name="htmlCreateFileParserCtxt" id="htmlCreateFileParserCtxt"></a>Function: htmlCreateFileParserCtxt</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a>	htmlCreateFileParserCtxt	(const char * filename, <br />				 const char * encoding)<br />
-</pre><p>Create a parser context for a file content. Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the HTML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="xmlCreateEntityParserCtxt" id="xmlCreateEntityParserCtxt"></a>Function: xmlCreateEntityParserCtxt</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	xmlCreateEntityParserCtxt	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * base)<br />
-</pre><p>Create a parser context for an external entity Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the entity URL</td></tr><tr><td><span class="term"><i><tt>ID</tt></i>:</span></td><td>the entity PUBLIC ID</td></tr><tr><td><span class="term"><i><tt>base</tt></i>:</span></td><td>a possible base for the target URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="xmlParseNotationType" id="xmlParseNotationType"></a>Function: xmlParseNotationType</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	xmlParseNotationType	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>parse an Notation <a href="libxml-SAX.html#attribute">attribute</a> type. Note: the leading 'NOTATION' S part has already being parsed... [58] NotationType ::= 'NOTATION' S '(' S? Name (S? '|' S? Name)* S? ')' [ VC: Notation Attributes ] Values of this type must match one of the notation names included in the declaration; all notation names in the declaration must be declared.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the notation <a href="libxml-SAX.html#attribute">attribute</a> tree built while parsing</td></tr></tbody></table></div><h3><a name="inputPush" id="inputPush"></a>Function: inputPush</h3><pre class="programlisting">int	inputPush	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> value)<br />
-</pre><p>Pushes a new parser input on top of the input stack</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the parser input</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of error, the index in the stack otherwise</td></tr></tbody></table></div><h3><a name="namePush" id="namePush"></a>Function: namePush</h3><pre class="programlisting">int	namePush	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><p>Pushes a new element name on top of the name stack</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of error, the index in the stack otherwise</td></tr></tbody></table></div><h3><a name="xmlStringLenDecodeEntities" id="xmlStringLenDecodeEntities"></a>Function: xmlStringLenDecodeEntities</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStringLenDecodeEntities	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 int len, <br />				 int what, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3)<br />
-</pre><p>Takes a entity string content and process to do the adequate substitutions. [67] Reference ::= EntityRef | CharRef [69] PEReference ::= '%' Name ';'</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the parser context</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the input string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the string length</td></tr><tr><td><span class="term"><i><tt>what</tt></i>:</span></td><td>combination of <a href="libxml-parserInternals.html#XML_SUBSTITUTE_REF">XML_SUBSTITUTE_REF</a> and <a href="libxml-parserInternals.html#XML_SUBSTITUTE_PEREF">XML_SUBSTITUTE_PEREF</a></td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>an end marker xmlChar, 0 if none</td></tr><tr><td><span class="term"><i><tt>end2</tt></i>:</span></td><td>an end marker xmlChar, 0 if none</td></tr><tr><td><span class="term"><i><tt>end3</tt></i>:</span></td><td>an end marker xmlChar, 0 if none</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>A newly allocated string with the substitution done. The caller must deallocate it !</td></tr></tbody></table></div><h3><a name="xmlNewEntityInputStream" id="xmlNewEntityInputStream"></a>Function: xmlNewEntityInputStream</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlNewEntityInputStream	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> entity)<br />
-</pre><p>Create a new input stream based on an <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>entity</tt></i>:</span></td><td>an Entity pointer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new input stream or NULL</td></tr></tbody></table></div><h3><a name="namePop" id="namePop"></a>Function: namePop</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	namePop	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>Pops the top element name from the name stack</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the name just removed</td></tr></tbody></table></div><h3><a name="xmlSplitQName" id="xmlSplitQName"></a>Function: xmlSplitQName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlSplitQName	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** prefix)<br />
-</pre><p>parse an UTF8 encoded XML qualified name string [NS 5] QName ::= (Prefix ':')? LocalPart [NS 6] Prefix ::= NCName [NS 7] LocalPart ::= NCName</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> **</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the local part, and prefix is updated to get the Prefix if any.</td></tr></tbody></table></div><h3><a name="MOVETO_ENDTAG" id="MOVETO_ENDTAG"></a>Macro: MOVETO_ENDTAG</h3><pre>#define MOVETO_ENDTAG</pre><p>Skips to the next '&gt;' char.</p>
-<h3><a name="xmlParseContent" id="xmlParseContent"></a>Function: xmlParseContent</h3><pre class="programlisting">void	xmlParseContent	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>Parse a content: [43] content ::= (element | CharData | Reference | CDSect | PI | Comment)*</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="SKIP_EOL" id="SKIP_EOL"></a>Macro: SKIP_EOL</h3><pre>#define SKIP_EOL</pre><p>Skips the end of line chars.</p>
-<h3><a name="xmlParseMarkupDecl" id="xmlParseMarkupDecl"></a>Function: xmlParseMarkupDecl</h3><pre class="programlisting">void	xmlParseMarkupDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<h3><a name="xmlParseMarkupDecl" id="xmlParseMarkupDecl"></a>Function: xmlParseMarkupDecl</h3><pre class="programlisting">void	xmlParseMarkupDecl		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse Markup declarations [29] markupdecl ::= elementdecl | AttlistDecl | EntityDecl | NotationDecl | PI | Comment [ VC: Proper Declaration/PE Nesting ] Parameter-entity replacement text must be properly nested with markup declarations. That is to say, if either the first character or the last character of a markup declaration (markupdecl above) is contained in the replacement text for a parameter-entity reference, both must be contained in the same replacement text. [ WFC: PEs in Internal Subset ] In the internal DTD subset, parameter-entity references can occur only where markup declarations can occur, not within markup declarations. (This does not apply to references that occur in external parameter entities or to the external subset.)</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="htmlCreateFileParserCtxt" id="htmlCreateFileParserCtxt"></a>Function: htmlCreateFileParserCtxt</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a>	htmlCreateFileParserCtxt	(const char * filename, <br />							 const char * encoding)<br />
+</pre><p>Create a parser context for a file content. Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>a free form C string describing the HTML document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="xmlCreateEntityParserCtxt" id="xmlCreateEntityParserCtxt"></a>Function: xmlCreateEntityParserCtxt</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	xmlCreateEntityParserCtxt	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URL, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * base)<br />
+</pre><p>Create a parser context for an external entity Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the entity URL</td></tr><tr><td><span class="term"><i><tt>ID</tt></i>:</span></td><td>the entity PUBLIC ID</td></tr><tr><td><span class="term"><i><tt>base</tt></i>:</span></td><td>a possible base for the target URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="inputPush" id="inputPush"></a>Function: inputPush</h3><pre class="programlisting">int	inputPush			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> value)<br />
+</pre><p>Pushes a new parser input on top of the input stack</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the parser input</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of error, the index in the stack otherwise</td></tr></tbody></table></div><h3><a name="namePush" id="namePush"></a>Function: namePush</h3><pre class="programlisting">int	namePush			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+</pre><p>Pushes a new element name on top of the name stack</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of error, the index in the stack otherwise</td></tr></tbody></table></div><h3><a name="xmlStringLenDecodeEntities" id="xmlStringLenDecodeEntities"></a>Function: xmlStringLenDecodeEntities</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStringLenDecodeEntities	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />						 int len, <br />						 int what, <br />						 <a href="libxml-tree.html#xmlChar">xmlChar</a> end, <br />						 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2, <br />						 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3)<br />
+</pre><p>Takes a entity string content and process to do the adequate substitutions. [67] Reference ::= EntityRef | CharRef [69] PEReference ::= '%' Name ';'</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the parser context</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the input string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the string length</td></tr><tr><td><span class="term"><i><tt>what</tt></i>:</span></td><td>combination of <a href="libxml-parserInternals.html#XML_SUBSTITUTE_REF">XML_SUBSTITUTE_REF</a> and <a href="libxml-parserInternals.html#XML_SUBSTITUTE_PEREF">XML_SUBSTITUTE_PEREF</a></td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>an end marker xmlChar, 0 if none</td></tr><tr><td><span class="term"><i><tt>end2</tt></i>:</span></td><td>an end marker xmlChar, 0 if none</td></tr><tr><td><span class="term"><i><tt>end3</tt></i>:</span></td><td>an end marker xmlChar, 0 if none</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>A newly allocated string with the substitution done. The caller must deallocate it !</td></tr></tbody></table></div><h3><a name="xmlNewEntityInputStream" id="xmlNewEntityInputStream"></a>Function: xmlNewEntityInputStream</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlNewEntityInputStream	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />						 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> entity)<br />
+</pre><p>Create a new input stream based on an <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>entity</tt></i>:</span></td><td>an Entity pointer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new input stream or NULL</td></tr></tbody></table></div><h3><a name="namePop" id="namePop"></a>Function: namePop</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	namePop			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>Pops the top element name from the name stack</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the name just removed</td></tr></tbody></table></div><h3><a name="xmlSplitQName" id="xmlSplitQName"></a>Function: xmlSplitQName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlSplitQName		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** prefix)<br />
+</pre><p>parse an UTF8 encoded XML qualified name string [NS 5] QName ::= (Prefix ':')? LocalPart [NS 6] Prefix ::= NCName [NS 7] LocalPart ::= NCName</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> **</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the local part, and prefix is updated to get the Prefix if any.</td></tr></tbody></table></div><h3><a name="xmlParseContent" id="xmlParseContent"></a>Function: xmlParseContent</h3><pre class="programlisting">void	xmlParseContent			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>Parse a content: [43] content ::= (element | CharData | Reference | CDSect | PI | Comment)*</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlParseNamespace" id="xmlParseNamespace"></a>Function: xmlParseNamespace</h3><pre class="programlisting">void	xmlParseNamespace		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>xmlParseNamespace: parse specific PI '&lt;?namespace ...' constructs. This is what the older xml-name Working Draft specified, a bunch of other stuff may still rely on it, so support is still here as if it was declared on the root of the Tree:-( TODO: remove from library To be removed at next drop of binary compatibility</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlNewInputStream" id="xmlNewInputStream"></a>Function: xmlNewInputStream</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlNewInputStream	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>Create a new input stream structure</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new input stream or NULL</td></tr></tbody></table></div><h3><a name="xmlParserHandleReference" id="xmlParserHandleReference"></a>Function: xmlParserHandleReference</h3><pre class="programlisting">void	xmlParserHandleReference	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>TODO: Remove, now deprecated ... the test is done directly in the content parsing routines. [67] Reference ::= EntityRef | CharRef [68] EntityRef ::= '&amp;' Name ';' [ WFC: Entity Declared ] the Name given in the entity <a href="libxml-SAX.html#reference">reference</a> must match that in an entity declaration, except that well-formed documents need not declare any of the following entities: amp, lt, gt, apos, quot. [ WFC: Parsed Entity ] An entity <a href="libxml-SAX.html#reference">reference</a> must not contain the name of an unparsed entity [66] CharRef ::= '&amp;#' [0-9]+ ';' | '&amp;#x' [0-9a-fA-F]+ ';' A PEReference may have been detected in the current input stream the handling is done accordingly to http://www.w3.org/TR/REC-xml#entproc</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the parser context</td></tr></tbody></table></div><h3><a name="xmlNamespaceParseQName" id="xmlNamespaceParseQName"></a>Function: xmlNamespaceParseQName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNamespaceParseQName	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** prefix)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the parser context</td></tr></tbody></table></div><h3><a name="xmlNamespaceParseQName" id="xmlNamespaceParseQName"></a>Function: xmlNamespaceParseQName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNamespaceParseQName	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** prefix)<br />
 </pre><p>TODO: this seems not in use anymore, the namespace handling is done on top of the SAX interfaces, i.e. not on raw input. parse an XML qualified name [NS 5] QName ::= (Prefix ':')? LocalPart [NS 6] Prefix ::= NCName [NS 7] LocalPart ::= NCName</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> **</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the local part, and prefix is updated to get the Prefix if any.</td></tr></tbody></table></div><h3><a name="xmlParsePITarget" id="xmlParsePITarget"></a>Function: xmlParsePITarget</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParsePITarget	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse the name of a PI [17] PITarget ::= Name - (('X' | 'x') ('M' | 'm') ('L' | 'l'))</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the PITarget name or NULL</td></tr></tbody></table></div><h3><a name="IS_LETTER_CH" id="IS_LETTER_CH"></a>Macro: IS_LETTER_CH</h3><pre>#define IS_LETTER_CH</pre><p>Macro behaves like IS_LETTER, but only check base chars</p>
-<h3><a name="xmlParseElementContentDecl" id="xmlParseElementContentDecl"></a>Function: xmlParseElementContentDecl</h3><pre class="programlisting">int	xmlParseElementContentDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> * result)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the PITarget name or NULL</td></tr></tbody></table></div><h3><a name="xmlParseElementContentDecl" id="xmlParseElementContentDecl"></a>Function: xmlParseElementContentDecl</h3><pre class="programlisting">int	xmlParseElementContentDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> * result)<br />
 </pre><p>parse the declaration for an Element content either Mixed or Children, the cases EMPTY and ANY are handled directly in <a href="libxml-parserInternals.html#xmlParseElementDecl">xmlParseElementDecl</a> [46] contentspec ::= 'EMPTY' | 'ANY' | Mixed | children</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the element being defined.</td></tr><tr><td><span class="term"><i><tt>result</tt></i>:</span></td><td>the Element Content pointer will be stored here if any</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the type of element content XML_ELEMENT_TYPE_xxx</td></tr></tbody></table></div><h3><a name="XML_SUBSTITUTE_NONE" id="XML_SUBSTITUTE_NONE"></a>Macro: XML_SUBSTITUTE_NONE</h3><pre>#define XML_SUBSTITUTE_NONE</pre><p>If no entities need to be substituted.</p>
-<h3><a name="xmlNewInputFromFile" id="xmlNewInputFromFile"></a>Function: xmlNewInputFromFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlNewInputFromFile	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * filename)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the element being defined.</td></tr><tr><td><span class="term"><i><tt>result</tt></i>:</span></td><td>the Element Content pointer will be stored here if any</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the type of element content XML_ELEMENT_TYPE_xxx</td></tr></tbody></table></div><h3><a name="xmlNewInputFromFile" id="xmlNewInputFromFile"></a>Function: xmlNewInputFromFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlNewInputFromFile	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />						 const char * filename)<br />
 </pre><p>Create a new input stream based on a file or an URL.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename to use as entity</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new input stream or NULL in case of error</td></tr></tbody></table></div><h3><a name="inputPop" id="inputPop"></a>Function: inputPop</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	inputPop	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>Pops the top parser input from the input stack</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the input just removed</td></tr></tbody></table></div><h3><a name="xmlParserHandlePEReference" id="xmlParserHandlePEReference"></a>Function: xmlParserHandlePEReference</h3><pre class="programlisting">void	xmlParserHandlePEReference	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename to use as entity</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new input stream or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlDecodeEntities" id="xmlDecodeEntities"></a>Function: xmlDecodeEntities</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlDecodeEntities	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 int len, <br />					 int what, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> end, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3)<br />
+</pre><p>This function is deprecated, we now always process entities content through <a href="libxml-parserInternals.html#xmlStringDecodeEntities">xmlStringDecodeEntities</a> TODO: remove it in next major release. [67] Reference ::= EntityRef | CharRef [69] PEReference ::= '%' Name ';'</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the parser context</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the len to decode (in bytes !), -1 for no size limit</td></tr><tr><td><span class="term"><i><tt>what</tt></i>:</span></td><td>combination of <a href="libxml-parserInternals.html#XML_SUBSTITUTE_REF">XML_SUBSTITUTE_REF</a> and <a href="libxml-parserInternals.html#XML_SUBSTITUTE_PEREF">XML_SUBSTITUTE_PEREF</a></td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>an end marker xmlChar, 0 if none</td></tr><tr><td><span class="term"><i><tt>end2</tt></i>:</span></td><td>an end marker xmlChar, 0 if none</td></tr><tr><td><span class="term"><i><tt>end3</tt></i>:</span></td><td>an end marker xmlChar, 0 if none</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>A newly allocated string with the substitution done. The caller must deallocate it !</td></tr></tbody></table></div><h3><a name="xmlParserHandlePEReference" id="xmlParserHandlePEReference"></a>Function: xmlParserHandlePEReference</h3><pre class="programlisting">void	xmlParserHandlePEReference	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>[69] PEReference ::= '%' Name ';' [ WFC: No Recursion ] A parsed entity must not contain a recursive <a href="libxml-SAX.html#reference">reference</a> to itself, either directly or indirectly. [ WFC: Entity Declared ] In a document without any DTD, a document with only an internal DTD subset which contains no parameter entity references, or a document with &quot;standalone='yes'&quot;, ... ... The declaration of a parameter entity must precede any <a href="libxml-SAX.html#reference">reference</a> to it... [ VC: Entity Declared ] In a document with an external subset or external parameter entities with &quot;standalone='no'&quot;, ... ... The declaration of a parameter entity must precede any <a href="libxml-SAX.html#reference">reference</a> to it... [ WFC: In DTD ] Parameter-entity references may only appear in the DTD. NOTE: misleading but this is handled. A PEReference may have been detected in the current input stream the handling is done accordingly to http://www.w3.org/TR/REC-xml#entproc i.e. - Included in literal in entity values - Included as Parameter Entity <a href="libxml-SAX.html#reference">reference</a> within DTDs</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the parser context</td></tr></tbody></table></div><h3><a name="xmlPopInput" id="xmlPopInput"></a>Function: xmlPopInput</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>	xmlPopInput	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the parser context</td></tr></tbody></table></div><h3><a name="xmlPopInput" id="xmlPopInput"></a>Function: xmlPopInput</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>	xmlPopInput			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>xmlPopInput: the current input pointed by ctxt-&gt;input came to an end pop it and return the next char.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current <a href="libxml-tree.html#xmlChar">xmlChar</a> in the parser context</td></tr></tbody></table></div><h3><a name="xmlParsePEReference" id="xmlParsePEReference"></a>Function: xmlParsePEReference</h3><pre class="programlisting">void	xmlParsePEReference	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>parse PEReference declarations The entity content is handled directly by pushing it's content as a new input stream. [69] PEReference ::= '%' Name ';' [ WFC: No Recursion ] A parsed entity must not contain a recursive <a href="libxml-SAX.html#reference">reference</a> to itself, either directly or indirectly. [ WFC: Entity Declared ] In a document without any DTD, a document with only an internal DTD subset which contains no parameter entity references, or a document with &quot;standalone='yes'&quot;, ... ... The declaration of a parameter entity must precede any <a href="libxml-SAX.html#reference">reference</a> to it... [ VC: Entity Declared ] In a document with an external subset or external parameter entities with &quot;standalone='no'&quot;, ... ... The declaration of a parameter entity must precede any <a href="libxml-SAX.html#reference">reference</a> to it... [ WFC: In DTD ] Parameter-entity references may only appear in the DTD. NOTE: misleading but this is handled.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlPushInput" id="xmlPushInput"></a>Function: xmlPushInput</h3><pre class="programlisting">void	xmlPushInput	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current <a href="libxml-tree.html#xmlChar">xmlChar</a> in the parser context</td></tr></tbody></table></div><h3><a name="xmlParsePubidLiteral" id="xmlParsePubidLiteral"></a>Function: xmlParsePubidLiteral</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParsePubidLiteral	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>parse an XML public literal [12] PubidLiteral ::= '&quot;' PubidChar* '&quot;' | &quot;'&quot; (PubidChar - &quot;'&quot;)* &quot;'&quot;</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the PubidLiteral parsed or NULL.</td></tr></tbody></table></div><h3><a name="xmlPushInput" id="xmlPushInput"></a>Function: xmlPushInput</h3><pre class="programlisting">void	xmlPushInput			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)<br />
 </pre><p>xmlPushInput: switch to a new input stream which is stacked on top of the previous one(s).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an XML parser input fragment (entity, XML fragment ...).</td></tr></tbody></table></div><h3><a name="xmlParseEntityValue" id="xmlParseEntityValue"></a>Function: xmlParseEntityValue</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseEntityValue	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** orig)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an XML parser input fragment (entity, XML fragment ...).</td></tr></tbody></table></div><h3><a name="xmlParseEntityValue" id="xmlParseEntityValue"></a>Function: xmlParseEntityValue</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseEntityValue	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** orig)<br />
 </pre><p>parse a value for ENTITY declarations [9] EntityValue ::= '&quot;' ([^%&amp;&quot;] | PEReference | Reference)* '&quot;' | &quot;'&quot; ([^%&amp;'] | PEReference | Reference)* &quot;'&quot;</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>orig</tt></i>:</span></td><td>if non-NULL store a copy of the original entity value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the EntityValue parsed with <a href="libxml-SAX.html#reference">reference</a> substituted or NULL</td></tr></tbody></table></div><h3><a name="xmlStringDecodeEntities" id="xmlStringDecodeEntities"></a>Function: xmlStringDecodeEntities</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStringDecodeEntities	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 int what, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>orig</tt></i>:</span></td><td>if non-NULL store a copy of the original entity value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the EntityValue parsed with <a href="libxml-SAX.html#reference">reference</a> substituted or NULL</td></tr></tbody></table></div><h3><a name="xmlStringDecodeEntities" id="xmlStringDecodeEntities"></a>Function: xmlStringDecodeEntities</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlStringDecodeEntities	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 int what, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> end, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3)<br />
 </pre><p>Takes a entity string content and process to do the adequate substitutions. [67] Reference ::= EntityRef | CharRef [69] PEReference ::= '%' Name ';'</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the parser context</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the input string</td></tr><tr><td><span class="term"><i><tt>what</tt></i>:</span></td><td>combination of <a href="libxml-parserInternals.html#XML_SUBSTITUTE_REF">XML_SUBSTITUTE_REF</a> and <a href="libxml-parserInternals.html#XML_SUBSTITUTE_PEREF">XML_SUBSTITUTE_PEREF</a></td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>an end marker xmlChar, 0 if none</td></tr><tr><td><span class="term"><i><tt>end2</tt></i>:</span></td><td>an end marker xmlChar, 0 if none</td></tr><tr><td><span class="term"><i><tt>end3</tt></i>:</span></td><td>an end marker xmlChar, 0 if none</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>A newly allocated string with the substitution done. The caller must deallocate it !</td></tr></tbody></table></div><h3><a name="xmlCreateFileParserCtxt" id="xmlCreateFileParserCtxt"></a>Function: xmlCreateFileParserCtxt</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	xmlCreateFileParserCtxt	(const char * filename)<br />
 </pre><p>Create a parser context for a file content. Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="xmlParseNamespace" id="xmlParseNamespace"></a>Function: xmlParseNamespace</h3><pre class="programlisting">void	xmlParseNamespace	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>xmlParseNamespace: parse specific PI '&lt;?namespace ...' constructs. This is what the older xml-name Working Draft specified, a bunch of other stuff may still rely on it, so support is still here as if it was declared on the root of the Tree:-( TODO: remove from library To be removed at next drop of binary compatibility</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="XML_SUBSTITUTE_REF" id="XML_SUBSTITUTE_REF"></a>Macro: XML_SUBSTITUTE_REF</h3><pre>#define XML_SUBSTITUTE_REF</pre><p>Whether general entities need to be substituted.</p>
-<h3><a name="IS_BLANK" id="IS_BLANK"></a>Macro: IS_BLANK</h3><pre>#define IS_BLANK</pre><p>Macro to check the following production in the XML spec: [3] S ::= (#x20 | #x9 | #xD | #xA)+</p>
-<h3><a name="xmlParseCharRef" id="xmlParseCharRef"></a>Function: xmlParseCharRef</h3><pre class="programlisting">int	xmlParseCharRef	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="xmlParseCharRef" id="xmlParseCharRef"></a>Function: xmlParseCharRef</h3><pre class="programlisting">int	xmlParseCharRef			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse Reference declarations [66] CharRef ::= '&amp;#' [0-9]+ ';' | '&amp;#x' [0-9a-fA-F]+ ';' [ WFC: Legal Character ] Characters referred to using character references must match the production for Char.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value parsed (as an int), 0 in case of error</td></tr></tbody></table></div><h3><a name="xmlParseVersionNum" id="xmlParseVersionNum"></a>Function: xmlParseVersionNum</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseVersionNum	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse the XML version value. [26] VersionNum ::= ([a-zA-Z0-9_.:] | '-')+</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the string giving the XML version number, or NULL</td></tr></tbody></table></div><h3><a name="xmlParseElement" id="xmlParseElement"></a>Function: xmlParseElement</h3><pre class="programlisting">void	xmlParseElement	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the string giving the XML version number, or NULL</td></tr></tbody></table></div><h3><a name="xmlParseElement" id="xmlParseElement"></a>Function: xmlParseElement</h3><pre class="programlisting">void	xmlParseElement			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse an XML element, this is highly recursive [39] element ::= EmptyElemTag | STag content ETag [ WFC: Element Type Match ] The Name in an element's end-tag must match the element type in the start-tag.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="IS_BYTE_CHAR" id="IS_BYTE_CHAR"></a>Macro: IS_BYTE_CHAR</h3><pre>#define IS_BYTE_CHAR</pre><p>Macro to check the following production in the XML spec: [2] Char ::= #x9 | #xA | #xD | [#x20...] any byte character in the accepted range</p>
-<h3><a name="xmlParseTextDecl" id="xmlParseTextDecl"></a>Function: xmlParseTextDecl</h3><pre class="programlisting">void	xmlParseTextDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlParseTextDecl" id="xmlParseTextDecl"></a>Function: xmlParseTextDecl</h3><pre class="programlisting">void	xmlParseTextDecl		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse an XML declaration header for external entities [77] TextDecl ::= '&lt;?xml' VersionInfo? EncodingDecl S? '?&gt;' Question: Seems that EncodingDecl is mandatory ? Is that a typo ?</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlParseXMLDecl" id="xmlParseXMLDecl"></a>Function: xmlParseXMLDecl</h3><pre class="programlisting">void	xmlParseXMLDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlParseXMLDecl" id="xmlParseXMLDecl"></a>Function: xmlParseXMLDecl</h3><pre class="programlisting">void	xmlParseXMLDecl			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse an XML declaration header [23] XMLDecl ::= '&lt;?xml' VersionInfo EncodingDecl? SDDecl? S? '?&gt;'</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div>
-      Callback function used when one needs to be able to track back the provenance of a chunk of nodes inherited from an entity replacement.
-      
-      
-      
-      
-    <h3><a name="xmlParseElementMixedContentDecl" id="xmlParseElementMixedContentDecl"></a>Function: xmlParseElementMixedContentDecl</h3><pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>	xmlParseElementMixedContentDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 int inputchk)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlEntityReferenceFunc" id="xmlEntityReferenceFunc"></a>Function type: xmlEntityReferenceFunc</h3><pre class="programlisting">Function type: xmlEntityReferenceFunc
+void	xmlEntityReferenceFunc		(<a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> ent, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> firstNode, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> lastNode)
+</pre><p>Callback function used when one needs to be able to track back the provenance of a chunk of nodes inherited from an entity replacement.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ent</tt></i>:</span></td><td>the entity</td></tr><tr><td><span class="term"><i><tt>firstNode</tt></i>:</span></td><td>the fist node in the chunk</td></tr><tr><td><span class="term"><i><tt>lastNode</tt></i>:</span></td><td>the last nod in the chunk</td></tr></tbody></table></div><br />
+<h3><a name="xmlParseElementMixedContentDecl" id="xmlParseElementMixedContentDecl"></a>Function: xmlParseElementMixedContentDecl</h3><pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>	xmlParseElementMixedContentDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />							 int inputchk)<br />
 </pre><p>parse the declaration for a Mixed Element content The leading '(' and spaces have been skipped in <a href="libxml-parserInternals.html#xmlParseElementContentDecl">xmlParseElementContentDecl</a> [51] Mixed ::= '(' S? '#PCDATA' (S? '|' S? Name)* S? ')*' | '(' S? '#PCDATA' S? ')' [ VC: Proper Group/PE Nesting ] applies to [51] too (see [49]) [ VC: No Duplicate Types ] The same name must not appear more than once in a single mixed-content declaration.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>inputchk</tt></i>:</span></td><td>the input used for the current entity, needed for boundary checks</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the list of the <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> describing the element choices</td></tr></tbody></table></div><h3><a name="xmlCopyCharMultiByte" id="xmlCopyCharMultiByte"></a>Function: xmlCopyCharMultiByte</h3><pre class="programlisting">int	xmlCopyCharMultiByte	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * out, <br />				 int val)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>inputchk</tt></i>:</span></td><td>the input used for the current entity, needed for boundary checks</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the list of the <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> describing the element choices</td></tr></tbody></table></div><h3><a name="xmlCopyCharMultiByte" id="xmlCopyCharMultiByte"></a>Function: xmlCopyCharMultiByte</h3><pre class="programlisting">int	xmlCopyCharMultiByte		(<a href="libxml-tree.html#xmlChar">xmlChar</a> * out, <br />					 int val)<br />
 </pre><p>append the char value in the array</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the char value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a> written</td></tr></tbody></table></div><h3><a name="xmlParseElementChildrenContentDecl" id="xmlParseElementChildrenContentDecl"></a>Function: xmlParseElementChildrenContentDecl</h3><pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>	xmlParseElementChildrenContentDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 int inputchk)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the char value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a> written</td></tr></tbody></table></div><h3><a name="xmlParseElementChildrenContentDecl" id="xmlParseElementChildrenContentDecl"></a>Function: xmlParseElementChildrenContentDecl</h3><pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>	xmlParseElementChildrenContentDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />							 int inputchk)<br />
 </pre><p>parse the declaration for a Mixed Element content The leading '(' and spaces have been skipped in <a href="libxml-parserInternals.html#xmlParseElementContentDecl">xmlParseElementContentDecl</a> [47] children ::= (choice | seq) ('?' | '*' | '+')? [48] cp ::= (Name | choice | seq) ('?' | '*' | '+')? [49] choice ::= '(' S? cp ( S? '|' S? cp )* S? ')' [50] seq ::= '(' S? cp ( S? ',' S? cp )* S? ')' [ VC: Proper Group/PE Nesting ] applies to [49] and [50] TODO Parameter-entity replacement text must be properly nested with parenthesized groups. That is to say, if either of the opening or closing parentheses in a choice, seq, or Mixed construct is contained in the replacement text for a parameter entity, both must be contained in the same replacement text. For interoperability, if a parameter-entity <a href="libxml-SAX.html#reference">reference</a> appears in a choice, seq, or Mixed construct, its replacement text should not be empty, and neither the first nor last non-blank character of the replacement text should be a connector (| or ,).</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>inputchk</tt></i>:</span></td><td>the input used for the current entity, needed for boundary checks</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the tree of <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> describing the element hierarchy.</td></tr></tbody></table></div><h3><a name="xmlParseQuotedString" id="xmlParseQuotedString"></a>Function: xmlParseQuotedString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseQuotedString	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>Parse and return a string between quotes or doublequotes TODO: Deprecated, to be removed at next drop of binary compatibility</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the string parser or NULL.</td></tr></tbody></table></div><h3><a name="IS_DIGIT_CH" id="IS_DIGIT_CH"></a>Macro: IS_DIGIT_CH</h3><pre>#define IS_DIGIT_CH</pre><p>Behaves like <a href="libxml-parserInternals.html#IS_DIGIT">IS_DIGIT</a> but with a single byte argument</p>
-<h3><a name="xmlParseCharData" id="xmlParseCharData"></a>Function: xmlParseCharData</h3><pre class="programlisting">void	xmlParseCharData	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 int cdata)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the string parser or NULL.</td></tr></tbody></table></div><h3><a name="xmlParseCharData" id="xmlParseCharData"></a>Function: xmlParseCharData</h3><pre class="programlisting">void	xmlParseCharData		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 int cdata)<br />
 </pre><p>parse a CharData section. if we are within a CDATA section ']]&gt;' marks an end of section. The right angle bracket (&gt;) may be represented using the string &quot;&amp;gt;&quot;, and must, for compatibility, be escaped using &quot;&amp;gt;&quot; or a character <a href="libxml-SAX.html#reference">reference</a> when it appears in the string &quot;]]&gt;&quot; in content, when that string is not marking the end of a CDATA section. [14] CharData ::= [^&lt;&amp;]* - ([^&lt;&amp;]* ']]&gt;' [^&lt;</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>cdata</tt></i>:</span></td><td>int indicating whether we are within a CDATA section</td></tr></tbody></table></div><h3><a name="IS_EXTENDER" id="IS_EXTENDER"></a>Macro: IS_EXTENDER</h3><pre>#define IS_EXTENDER</pre><p>Macro to check the following production in the XML spec: [89] Extender ::= #x00B7 | #x02D0 | #x02D1 | #x0387 | #x0640 | #x0E46 | #x0EC6 | #x3005 | [#x3031-#x3035] | [#x309D-#x309E] | [#x30FC-#x30FE]</p>
-<h3><a name="xmlNamespaceParseNSDef" id="xmlNamespaceParseNSDef"></a>Function: xmlNamespaceParseNSDef</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNamespaceParseNSDef	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>cdata</tt></i>:</span></td><td>int indicating whether we are within a CDATA section</td></tr></tbody></table></div><h3><a name="xmlNamespaceParseNSDef" id="xmlNamespaceParseNSDef"></a>Function: xmlNamespaceParseNSDef</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNamespaceParseNSDef	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse a namespace prefix declaration TODO: this seems not in use anymore, the namespace handling is done on top of the SAX interfaces, i.e. not on raw input. [NS 1] NSDef ::= PrefixDef Eq SystemLiteral [NS 2] PrefixDef ::= 'xmlns' (':' NCName)?</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace name</td></tr></tbody></table></div><h3><a name="xmlParseCDSect" id="xmlParseCDSect"></a>Function: xmlParseCDSect</h3><pre class="programlisting">void	xmlParseCDSect	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace name</td></tr></tbody></table></div><h3><a name="xmlParseCDSect" id="xmlParseCDSect"></a>Function: xmlParseCDSect</h3><pre class="programlisting">void	xmlParseCDSect			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>Parse escaped pure raw content. [18] CDSect ::= CDStart CData CDEnd [19] CDStart ::= '&lt;![CDATA[' [20] Data ::= (Char* - (Char* ']]&gt;' Char*)) [21] CDEnd ::= ']]&gt;'</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlParseVersionInfo" id="xmlParseVersionInfo"></a>Function: xmlParseVersionInfo</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseVersionInfo	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse the XML version. [24] VersionInfo ::= S 'version' Eq (' VersionNum ' | &quot; VersionNum &quot;) [25] Eq ::= S? '=' S?</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the version string, e.g. &quot;1.0&quot;</td></tr></tbody></table></div><h3><a name="xmlDecodeEntities" id="xmlDecodeEntities"></a>Function: xmlDecodeEntities</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlDecodeEntities	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 int len, <br />				 int what, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3)<br />
-</pre><p>This function is deprecated, we now always process entities content through <a href="libxml-parserInternals.html#xmlStringDecodeEntities">xmlStringDecodeEntities</a> TODO: remove it in next major release. [67] Reference ::= EntityRef | CharRef [69] PEReference ::= '%' Name ';'</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the parser context</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the len to decode (in bytes !), -1 for no size limit</td></tr><tr><td><span class="term"><i><tt>what</tt></i>:</span></td><td>combination of <a href="libxml-parserInternals.html#XML_SUBSTITUTE_REF">XML_SUBSTITUTE_REF</a> and <a href="libxml-parserInternals.html#XML_SUBSTITUTE_PEREF">XML_SUBSTITUTE_PEREF</a></td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>an end marker xmlChar, 0 if none</td></tr><tr><td><span class="term"><i><tt>end2</tt></i>:</span></td><td>an end marker xmlChar, 0 if none</td></tr><tr><td><span class="term"><i><tt>end3</tt></i>:</span></td><td>an end marker xmlChar, 0 if none</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>A newly allocated string with the substitution done. The caller must deallocate it !</td></tr></tbody></table></div><h3><a name="xmlParseComment" id="xmlParseComment"></a>Function: xmlParseComment</h3><pre class="programlisting">void	xmlParseComment	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>Skip an XML (SGML) <a href="libxml-SAX.html#comment">comment</a> &lt;!-- .... --&gt; The spec says that &quot;For compatibility, the string &quot;--&quot; (double-hyphen) must not occur within comments. &quot; [15] Comment ::= '&lt;!--' ((Char - '-') | ('-' (Char - '-')))* '--&gt;'</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlErrMemory" id="xmlErrMemory"></a>Function: xmlErrMemory</h3><pre class="programlisting">void	xmlErrMemory	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const char * extra)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the version string, e.g. &quot;1.0&quot;</td></tr></tbody></table></div><h3><a name="xmlStringCurrentChar" id="xmlStringCurrentChar"></a>Function: xmlStringCurrentChar</h3><pre class="programlisting">int	xmlStringCurrentChar		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 int * len)<br />
+</pre><p>The current char value, if using UTF-8 this may actually span multiple bytes in the input buffer.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XML parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>pointer to the beginning of the char</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>pointer to the length of the char read</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current char value and its length</td></tr></tbody></table></div><h3><a name="xmlParseEnumeratedType" id="xmlParseEnumeratedType"></a>Function: xmlParseEnumeratedType</h3><pre class="programlisting">int	xmlParseEnumeratedType		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> * tree)<br />
+</pre><p>parse an Enumerated <a href="libxml-SAX.html#attribute">attribute</a> type. [57] EnumeratedType ::= NotationType | Enumeration [58] NotationType ::= 'NOTATION' S '(' S? Name (S? '|' S? Name)* S? ')'</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>the enumeration tree built while parsing</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td><a href="libxml-tree.html#XML_ATTRIBUTE_ENUMERATION">XML_ATTRIBUTE_ENUMERATION</a> or <a href="libxml-tree.html#XML_ATTRIBUTE_NOTATION">XML_ATTRIBUTE_NOTATION</a></td></tr></tbody></table></div><h3><a name="xmlErrMemory" id="xmlErrMemory"></a>Function: xmlErrMemory</h3><pre class="programlisting">void	xmlErrMemory			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 const char * extra)<br />
 </pre><p>Handle a redefinition of <a href="libxml-SAX.html#attribute">attribute</a> error</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>extra</tt></i>:</span></td><td>extra informations</td></tr></tbody></table></div><h3><a name="xmlHandleEntity" id="xmlHandleEntity"></a>Function: xmlHandleEntity</h3><pre class="programlisting">void	xmlHandleEntity	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> entity)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>extra</tt></i>:</span></td><td>extra informations</td></tr></tbody></table></div><h3><a name="xmlHandleEntity" id="xmlHandleEntity"></a>Function: xmlHandleEntity</h3><pre class="programlisting">void	xmlHandleEntity			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> entity)<br />
 </pre><p>Default handling of defined entities, when should we define a new input stream ? When do we just handle that as a set of chars ? OBSOLETE: to be removed at some point.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>entity</tt></i>:</span></td><td>an XML entity pointer.</td></tr></tbody></table></div><h3><a name="xmlCurrentChar" id="xmlCurrentChar"></a>Function: xmlCurrentChar</h3><pre class="programlisting">int	xmlCurrentChar	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 int * len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>entity</tt></i>:</span></td><td>an XML entity pointer.</td></tr></tbody></table></div><h3><a name="xmlCurrentChar" id="xmlCurrentChar"></a>Function: xmlCurrentChar</h3><pre class="programlisting">int	xmlCurrentChar			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 int * len)<br />
 </pre><p>The current char value, if using UTF-8 this may actually span multiple bytes in the input buffer. Implement the end of line normalization: 2.11 End-of-Line Handling Wherever an external parsed entity or the literal entity value of an internal parsed entity contains either the literal two-character sequence &quot;#xD#xA&quot; or a standalone literal #xD, an XML processor must pass to the application the single character #xA. This behavior can conveniently be produced by normalizing all line breaks to #xA on input, before parsing.)</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XML parser context</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>pointer to the length of the char read</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current char value and its length</td></tr></tbody></table></div><h3><a name="xmlNamespaceParseNCName" id="xmlNamespaceParseNCName"></a>Function: xmlNamespaceParseNCName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNamespaceParseNCName	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse an XML namespace name. TODO: this seems not in use anymore, the namespace handling is done on top of the SAX interfaces, i.e. not on raw input. [NS 3] NCName ::= (Letter | '_') (NCNameChar)* [NS 4] NCNameChar ::= Letter | Digit | '.' | '-' | '_' | CombiningChar | Extender</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace name or NULL</td></tr></tbody></table></div><h3><a name="xmlParsePI" id="xmlParsePI"></a>Function: xmlParsePI</h3><pre class="programlisting">void	xmlParsePI	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>parse an XML Processing Instruction. [16] PI ::= '&lt;?' PITarget (S (Char* - (Char* '?&gt;' Char*)))? '?&gt;' The processing is transfered to SAX once parsed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlParseNmtoken" id="xmlParseNmtoken"></a>Function: xmlParseNmtoken</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseNmtoken	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace name or NULL</td></tr></tbody></table></div><h3><a name="xmlParseNmtoken" id="xmlParseNmtoken"></a>Function: xmlParseNmtoken</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseNmtoken		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse an XML Nmtoken. [7] Nmtoken ::= (NameChar)+ [8] Nmtokens ::= Nmtoken (S Nmtoken)*</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the Nmtoken parsed or NULL</td></tr></tbody></table></div><h3><a name="IS_IDEOGRAPHIC" id="IS_IDEOGRAPHIC"></a>Macro: IS_IDEOGRAPHIC</h3><pre>#define IS_IDEOGRAPHIC</pre><p>Macro to check the following production in the XML spec: [86] Ideographic ::= [#x4E00-#x9FA5] | #x3007 | [#x3021-#x3029]</p>
-<h3><a name="MOVETO_STARTTAG" id="MOVETO_STARTTAG"></a>Macro: MOVETO_STARTTAG</h3><pre>#define MOVETO_STARTTAG</pre><p>Skips to the next '&lt;' char.</p>
-<h3><a name="xmlParserInputShrink" id="xmlParserInputShrink"></a>Function: xmlParserInputShrink</h3><pre class="programlisting">void	xmlParserInputShrink	(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> in)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the Nmtoken parsed or NULL</td></tr></tbody></table></div><h3><a name="xmlParseNotationType" id="xmlParseNotationType"></a>Function: xmlParseNotationType</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	xmlParseNotationType	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>parse an Notation <a href="libxml-SAX.html#attribute">attribute</a> type. Note: the leading 'NOTATION' S part has already being parsed... [58] NotationType ::= 'NOTATION' S '(' S? Name (S? '|' S? Name)* S? ')' [ VC: Notation Attributes ] Values of this type must match one of the notation names included in the declaration; all notation names in the declaration must be declared.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the notation <a href="libxml-SAX.html#attribute">attribute</a> tree built while parsing</td></tr></tbody></table></div><h3><a name="xmlParserInputShrink" id="xmlParserInputShrink"></a>Function: xmlParserInputShrink</h3><pre class="programlisting">void	xmlParserInputShrink		(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> in)<br />
 </pre><p>This function removes used input for the parser.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>an XML parser input</td></tr></tbody></table></div><h3><a name="xmlParseReference" id="xmlParseReference"></a>Function: xmlParseReference</h3><pre class="programlisting">void	xmlParseReference	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>an XML parser input</td></tr></tbody></table></div><h3><a name="xmlParseReference" id="xmlParseReference"></a>Function: xmlParseReference</h3><pre class="programlisting">void	xmlParseReference		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse and handle entity references in content, depending on the SAX interface, this may end-up in a call to character() if this is a CharRef, a predefined entity, if there is no reference() callback. or if the parser was asked to switch to that mode. [67] Reference ::= EntityRef | CharRef</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlCreateURLParserCtxt" id="xmlCreateURLParserCtxt"></a>Function: xmlCreateURLParserCtxt</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	xmlCreateURLParserCtxt	(const char * filename, <br />				 int options)<br />
-</pre><p>Create a parser context for a file or URL content. Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time and for file accesses</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename or URL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="xmlSetEntityReferenceFunc" id="xmlSetEntityReferenceFunc"></a>Function: xmlSetEntityReferenceFunc</h3><pre class="programlisting">void	xmlSetEntityReferenceFunc	(<a href="libxml-parserInternals.html#xmlEntityReferenceFunc">xmlEntityReferenceFunc</a> func)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlSetEntityReferenceFunc" id="xmlSetEntityReferenceFunc"></a>Function: xmlSetEntityReferenceFunc</h3><pre class="programlisting">void	xmlSetEntityReferenceFunc	(<a href="libxml-parserInternals.html#xmlEntityReferenceFunc">xmlEntityReferenceFunc</a> func)<br />
 </pre><p>Set the function to call call back when a xml <a href="libxml-SAX.html#reference">reference</a> has been made</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>func</tt></i>:</span></td><td>A valid function</td></tr></tbody></table></div><h3><a name="xmlFreeInputStream" id="xmlFreeInputStream"></a>Function: xmlFreeInputStream</h3><pre class="programlisting">void	xmlFreeInputStream	(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>func</tt></i>:</span></td><td>A valid function</td></tr></tbody></table></div><h3><a name="xmlFreeInputStream" id="xmlFreeInputStream"></a>Function: xmlFreeInputStream</h3><pre class="programlisting">void	xmlFreeInputStream		(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)<br />
 </pre><p>Free up an input stream.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a></td></tr></tbody></table></div><h3><a name="IS_DIGIT" id="IS_DIGIT"></a>Macro: IS_DIGIT</h3><pre>#define IS_DIGIT</pre><p>Macro to check the following production in the XML spec: [88] Digit ::= ... long list see REC ...</p>
-<h3><a name="xmlParsePubidLiteral" id="xmlParsePubidLiteral"></a>Function: xmlParsePubidLiteral</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParsePubidLiteral	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>parse an XML public literal [12] PubidLiteral ::= '&quot;' PubidChar* '&quot;' | &quot;'&quot; (PubidChar - &quot;'&quot;)* &quot;'&quot;</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the PubidLiteral parsed or NULL.</td></tr></tbody></table></div><h3><a name="xmlStringCurrentChar" id="xmlStringCurrentChar"></a>Function: xmlStringCurrentChar</h3><pre class="programlisting">int	xmlStringCurrentChar	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 int * len)<br />
-</pre><p>The current char value, if using UTF-8 this may actually span multiple bytes in the input buffer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XML parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>pointer to the beginning of the char</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>pointer to the length of the char read</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current char value and its length</td></tr></tbody></table></div><h3><a name="XML_SUBSTITUTE_PEREF" id="XML_SUBSTITUTE_PEREF"></a>Macro: XML_SUBSTITUTE_PEREF</h3><pre>#define XML_SUBSTITUTE_PEREF</pre><p>Whether parameter entities need to be substituted.</p>
-<h3><a name="xmlParseDefaultDecl" id="xmlParseDefaultDecl"></a>Function: xmlParseDefaultDecl</h3><pre class="programlisting">int	xmlParseDefaultDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a></td></tr></tbody></table></div><h3><a name="xmlParsePEReference" id="xmlParsePEReference"></a>Function: xmlParsePEReference</h3><pre class="programlisting">void	xmlParsePEReference		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>parse PEReference declarations The entity content is handled directly by pushing it's content as a new input stream. [69] PEReference ::= '%' Name ';' [ WFC: No Recursion ] A parsed entity must not contain a recursive <a href="libxml-SAX.html#reference">reference</a> to itself, either directly or indirectly. [ WFC: Entity Declared ] In a document without any DTD, a document with only an internal DTD subset which contains no parameter entity references, or a document with &quot;standalone='yes'&quot;, ... ... The declaration of a parameter entity must precede any <a href="libxml-SAX.html#reference">reference</a> to it... [ VC: Entity Declared ] In a document with an external subset or external parameter entities with &quot;standalone='no'&quot;, ... ... The declaration of a parameter entity must precede any <a href="libxml-SAX.html#reference">reference</a> to it... [ WFC: In DTD ] Parameter-entity references may only appear in the DTD. NOTE: misleading but this is handled.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlParseDefaultDecl" id="xmlParseDefaultDecl"></a>Function: xmlParseDefaultDecl</h3><pre class="programlisting">int	xmlParseDefaultDecl		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** value)<br />
 </pre><p>Parse an <a href="libxml-SAX.html#attribute">attribute</a> default declaration [60] DefaultDecl ::= '#REQUIRED' | '#IMPLIED' | (('#FIXED' S)? AttValue) [ VC: Required Attribute ] if the default declaration is the keyword #REQUIRED, then the <a href="libxml-SAX.html#attribute">attribute</a> must be specified for all elements of the type in the attribute-list declaration. [ VC: Attribute Default Legal ] The declared default value must meet the lexical constraints of the declared <a href="libxml-SAX.html#attribute">attribute</a> type c.f. xmlValidateAttributeDecl() [ VC: Fixed Attribute Default ] if an <a href="libxml-SAX.html#attribute">attribute</a> has a default value declared with the #FIXED keyword, instances of that <a href="libxml-SAX.html#attribute">attribute</a> must match the default value. [ WFC: No &lt; in Attribute Values ] handled in xmlParseAttValue()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>Receive a possible fixed default value for the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>XML_ATTRIBUTE_NONE, XML_ATTRIBUTE_REQUIRED, <a href="libxml-tree.html#XML_ATTRIBUTE_IMPLIED">XML_ATTRIBUTE_IMPLIED</a> or XML_ATTRIBUTE_FIXED.</td></tr></tbody></table></div><h3><a name="INPUT_CHUNK" id="INPUT_CHUNK"></a>Macro: INPUT_CHUNK</h3><pre>#define INPUT_CHUNK</pre><p>The parser tries to always have that amount of input ready. One of the point is providing context when reporting errors.</p>
-<h3><a name="xmlIsLetter" id="xmlIsLetter"></a>Function: xmlIsLetter</h3><pre class="programlisting">int	xmlIsLetter	(int c)<br />
-</pre><p>Check whether the character is allowed by the production [84] Letter ::= BaseChar | Ideographic</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>c</tt></i>:</span></td><td>an unicode character (int)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if not, non-zero otherwise</td></tr></tbody></table></div><h3><a name="xmlCheckLanguageID" id="xmlCheckLanguageID"></a>Function: xmlCheckLanguageID</h3><pre class="programlisting">int	xmlCheckLanguageID	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * lang)<br />
-</pre><p>Checks that the value conforms to the LanguageID production: NOTE: this is somewhat deprecated, those productions were removed from the XML Second edition. [33] LanguageID ::= Langcode ('-' Subcode)* [34] Langcode ::= ISO639Code | IanaCode | UserCode [35] ISO639Code ::= ([a-z] | [A-Z]) ([a-z] | [A-Z]) [36] IanaCode ::= ('i' | 'I') '-' ([a-z] | [A-Z])+ [37] UserCode ::= ('x' | 'X') '-' ([a-z] | [A-Z])+ [38] Subcode ::= ([a-z] | [A-Z])+</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>lang</tt></i>:</span></td><td>pointer to the string value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if correct 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlCopyChar" id="xmlCopyChar"></a>Function: xmlCopyChar</h3><pre class="programlisting">int	xmlCopyChar	(int len, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * out, <br />				 int val)<br />
-</pre><p>append the char value in the array</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>Ignored, compatibility</td></tr><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the char value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a> written</td></tr></tbody></table></div><h3><a name="xmlNextChar" id="xmlNextChar"></a>Function: xmlNextChar</h3><pre class="programlisting">void	xmlNextChar	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>Skip to the next char input char.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XML parser context</td></tr></tbody></table></div><h3><a name="IS_BLANK_CH" id="IS_BLANK_CH"></a>Macro: IS_BLANK_CH</h3><pre>#define IS_BLANK_CH</pre><p>Behaviour same as <a href="libxml-parserInternals.html#IS_BLANK">IS_BLANK</a></p>
-<h3><a name="xmlParseStartTag" id="xmlParseStartTag"></a>Function: xmlParseStartTag</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseStartTag	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>parse a start of tag either for rule element or EmptyElement. In both case we don't parse the tag closing chars. [40] STag ::= '&lt;' Name (S Attribute)* S? '&gt;' [ WFC: Unique Att Spec ] No <a href="libxml-SAX.html#attribute">attribute</a> name may appear more than once in the same start-tag or empty-element tag. [44] EmptyElemTag ::= '&lt;' Name (S Attribute)* S? '/&gt;' [ WFC: Unique Att Spec ] No <a href="libxml-SAX.html#attribute">attribute</a> name may appear more than once in the same start-tag or empty-element tag. With namespace: [NS 8] STag ::= '&lt;' QName (S Attribute)* S? '&gt;' [NS 10] EmptyElement ::= '&lt;' QName (S Attribute)* S? '/&gt;'</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the element name parsed</td></tr></tbody></table></div><h3><a name="xmlParseEnumerationType" id="xmlParseEnumerationType"></a>Function: xmlParseEnumerationType</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	xmlParseEnumerationType	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>parse an Enumeration <a href="libxml-SAX.html#attribute">attribute</a> type. [59] Enumeration ::= '(' S? Nmtoken (S? '|' S? Nmtoken)* S? ')' [ VC: Enumeration ] Values of this type must match one of the Nmtoken tokens in the declaration</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the enumeration <a href="libxml-SAX.html#attribute">attribute</a> tree built while parsing</td></tr></tbody></table></div><h3><a name="xmlParseSDDecl" id="xmlParseSDDecl"></a>Function: xmlParseSDDecl</h3><pre class="programlisting">int	xmlParseSDDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>parse the XML standalone declaration [32] SDDecl ::= S 'standalone' Eq ((&quot;'&quot; ('yes' | 'no') &quot;'&quot;) | ('&quot;' ('yes' | 'no')'&quot;')) [ VC: Standalone Document Declaration ] TODO The standalone document declaration must have the value &quot;no&quot; if any external markup declarations contain declarations of: - attributes with default values, if elements to which these attributes apply appear in the document without specifications of values for these attributes, or - entities (other than amp, lt, gt, apos, quot), if references to those entities appear in the document, or - attributes with values subject to normalization, where the <a href="libxml-SAX.html#attribute">attribute</a> appears in the document with a value which will change as a result of normalization, or - element types with element content, if white space occurs directly within any instance of those types.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if standalone, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlParseAttributeType" id="xmlParseAttributeType"></a>Function: xmlParseAttributeType</h3><pre class="programlisting">int	xmlParseAttributeType	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> * tree)<br />
-</pre><p>parse the Attribute list def for an element [54] AttType ::= StringType | TokenizedType | EnumeratedType [55] StringType ::= 'CDATA' [56] TokenizedType ::= 'ID' | 'IDREF' | 'IDREFS' | 'ENTITY' | 'ENTITIES' | 'NMTOKEN' | 'NMTOKENS' Validity constraints for <a href="libxml-SAX.html#attribute">attribute</a> values syntax are checked in xmlValidateAttributeValue() [ VC: ID ] Values of type ID must match the Name production. A name must not appear more than once in an XML document as a value of this type; i.e., ID values must uniquely identify the elements which bear them. [ VC: One ID per Element Type ] No element type may have more than one ID <a href="libxml-SAX.html#attribute">attribute</a> specified. [ VC: ID Attribute Default ] An ID <a href="libxml-SAX.html#attribute">attribute</a> must have a declared default of #IMPLIED or #REQUIRED. [ VC: IDREF ] Values of type IDREF must match the Name production, and values of type IDREFS must match Names; each IDREF Name must match the value of an ID <a href="libxml-SAX.html#attribute">attribute</a> on some element in the XML document; i.e. IDREF values must match the value of some ID attribute. [ VC: Entity Name ] Values of type ENTITY must match the Name production, values of type ENTITIES must match Names; each Entity Name must match the name of an unparsed entity declared in the DTD. [ VC: Name Token ] Values of type NMTOKEN must match the Nmtoken production; values of type NMTOKENS must match Nmtokens.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>the enumeration tree built while parsing</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> type</td></tr></tbody></table></div><h3><a name="xmlParseSystemLiteral" id="xmlParseSystemLiteral"></a>Function: xmlParseSystemLiteral</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseSystemLiteral	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><p>parse an XML Literal [11] SystemLiteral ::= ('&quot;' [^&quot;]* '&quot;') | (&quot;'&quot; [^']* &quot;'&quot;)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the SystemLiteral parsed or NULL</td></tr></tbody></table></div><h3><a name="xmlParseEnumeratedType" id="xmlParseEnumeratedType"></a>Function: xmlParseEnumeratedType</h3><pre class="programlisting">int	xmlParseEnumeratedType	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> * tree)<br />
-</pre><p>parse an Enumerated <a href="libxml-SAX.html#attribute">attribute</a> type. [57] EnumeratedType ::= NotationType | Enumeration [58] NotationType ::= 'NOTATION' S '(' S? Name (S? '|' S? Name)* S? ')'</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>the enumeration tree built while parsing</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td><a href="libxml-tree.html#XML_ATTRIBUTE_ENUMERATION">XML_ATTRIBUTE_ENUMERATION</a> or <a href="libxml-tree.html#XML_ATTRIBUTE_NOTATION">XML_ATTRIBUTE_NOTATION</a></td></tr></tbody></table></div><h3><a name="IS_COMBINING" id="IS_COMBINING"></a>Macro: IS_COMBINING</h3><pre>#define IS_COMBINING</pre><p>Macro to check the following production in the XML spec: [87] CombiningChar ::= ... long list see REC ...</p>
-<h3><a name="XML_MAX_NAMELEN" id="XML_MAX_NAMELEN"></a>Macro: XML_MAX_NAMELEN</h3><pre>#define XML_MAX_NAMELEN</pre><p>Identifiers can be longer, but this will be more costly at runtime.</p>
-<h3><a name="IS_BASECHAR" id="IS_BASECHAR"></a>Macro: IS_BASECHAR</h3><pre>#define IS_BASECHAR</pre><p>Macro to check the following production in the XML spec: [85] BaseChar ::= ... long list see REC ...</p>
-<h3><a name="xmlParseDocTypeDecl" id="xmlParseDocTypeDecl"></a>Function: xmlParseDocTypeDecl</h3><pre class="programlisting">void	xmlParseDocTypeDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>Receive a possible fixed default value for the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>XML_ATTRIBUTE_NONE, XML_ATTRIBUTE_REQUIRED, <a href="libxml-tree.html#XML_ATTRIBUTE_IMPLIED">XML_ATTRIBUTE_IMPLIED</a> or XML_ATTRIBUTE_FIXED.</td></tr></tbody></table></div><h3><a name="xmlParseDocTypeDecl" id="xmlParseDocTypeDecl"></a>Function: xmlParseDocTypeDecl</h3><pre class="programlisting">void	xmlParseDocTypeDecl		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse a DOCTYPE declaration [28] doctypedecl ::= '&lt;!DOCTYPE' S Name (S ExternalID)? S? ('[' (markupdecl | PEReference | S)* ']' S?)? '&gt;' [ VC: Root Element Type ] The Name in the document type declaration must match the element type of the root element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="XML_SUBSTITUTE_BOTH" id="XML_SUBSTITUTE_BOTH"></a>Macro: XML_SUBSTITUTE_BOTH</h3><pre>#define XML_SUBSTITUTE_BOTH</pre><p>Both general and parameter entities need to be substituted.</p>
-<h3><a name="IS_PUBIDCHAR_CH" id="IS_PUBIDCHAR_CH"></a>Macro: IS_PUBIDCHAR_CH</h3><pre>#define IS_PUBIDCHAR_CH</pre><p>Same as <a href="libxml-parserInternals.html#IS_PUBIDCHAR">IS_PUBIDCHAR</a> but for single-byte value</p>
-<h3><a name="IS_CHAR_CH" id="IS_CHAR_CH"></a>Macro: IS_CHAR_CH</h3><pre>#define IS_CHAR_CH</pre><p>Behaves like <a href="libxml-parserInternals.html#IS_CHAR">IS_CHAR</a> on single-byte value</p>
-<h3><a name="xmlParseEntityDecl" id="xmlParseEntityDecl"></a>Function: xmlParseEntityDecl</h3><pre class="programlisting">void	xmlParseEntityDecl	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlIsLetter" id="xmlIsLetter"></a>Function: xmlIsLetter</h3><pre class="programlisting">int	xmlIsLetter			(int c)<br />
+</pre><p>Check whether the character is allowed by the production [84] Letter ::= BaseChar | Ideographic</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>c</tt></i>:</span></td><td>an unicode character (int)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if not, non-zero otherwise</td></tr></tbody></table></div><h3><a name="xmlCheckLanguageID" id="xmlCheckLanguageID"></a>Function: xmlCheckLanguageID</h3><pre class="programlisting">int	xmlCheckLanguageID		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * lang)<br />
+</pre><p>Checks that the value conforms to the LanguageID production: NOTE: this is somewhat deprecated, those productions were removed from the XML Second edition. [33] LanguageID ::= Langcode ('-' Subcode)* [34] Langcode ::= ISO639Code | IanaCode | UserCode [35] ISO639Code ::= ([a-z] | [A-Z]) ([a-z] | [A-Z]) [36] IanaCode ::= ('i' | 'I') '-' ([a-z] | [A-Z])+ [37] UserCode ::= ('x' | 'X') '-' ([a-z] | [A-Z])+ [38] Subcode ::= ([a-z] | [A-Z])+</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>lang</tt></i>:</span></td><td>pointer to the string value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if correct 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlCopyChar" id="xmlCopyChar"></a>Function: xmlCopyChar</h3><pre class="programlisting">int	xmlCopyChar			(int len, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * out, <br />					 int val)<br />
+</pre><p>append the char value in the array</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>Ignored, compatibility</td></tr><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>pointer to an array of <a href="libxml-tree.html#xmlChar">xmlChar</a></td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the char value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a> written</td></tr></tbody></table></div><h3><a name="inputPop" id="inputPop"></a>Function: inputPop</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	inputPop	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>Pops the top parser input from the input stack</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the input just removed</td></tr></tbody></table></div><h3><a name="xmlNextChar" id="xmlNextChar"></a>Function: xmlNextChar</h3><pre class="programlisting">void	xmlNextChar			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>Skip to the next char input char.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XML parser context</td></tr></tbody></table></div><h3><a name="xmlParseEnumerationType" id="xmlParseEnumerationType"></a>Function: xmlParseEnumerationType</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	xmlParseEnumerationType	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>parse an Enumeration <a href="libxml-SAX.html#attribute">attribute</a> type. [59] Enumeration ::= '(' S? Nmtoken (S? '|' S? Nmtoken)* S? ')' [ VC: Enumeration ] Values of this type must match one of the Nmtoken tokens in the declaration</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the enumeration <a href="libxml-SAX.html#attribute">attribute</a> tree built while parsing</td></tr></tbody></table></div><h3><a name="xmlParseSDDecl" id="xmlParseSDDecl"></a>Function: xmlParseSDDecl</h3><pre class="programlisting">int	xmlParseSDDecl			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>parse the XML standalone declaration [32] SDDecl ::= S 'standalone' Eq ((&quot;'&quot; ('yes' | 'no') &quot;'&quot;) | ('&quot;' ('yes' | 'no')'&quot;')) [ VC: Standalone Document Declaration ] TODO The standalone document declaration must have the value &quot;no&quot; if any external markup declarations contain declarations of: - attributes with default values, if elements to which these attributes apply appear in the document without specifications of values for these attributes, or - entities (other than amp, lt, gt, apos, quot), if references to those entities appear in the document, or - attributes with values subject to normalization, where the <a href="libxml-SAX.html#attribute">attribute</a> appears in the document with a value which will change as a result of normalization, or - element types with element content, if white space occurs directly within any instance of those types.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if standalone, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlParseAttributeType" id="xmlParseAttributeType"></a>Function: xmlParseAttributeType</h3><pre class="programlisting">int	xmlParseAttributeType		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> * tree)<br />
+</pre><p>parse the Attribute list def for an element [54] AttType ::= StringType | TokenizedType | EnumeratedType [55] StringType ::= 'CDATA' [56] TokenizedType ::= 'ID' | 'IDREF' | 'IDREFS' | 'ENTITY' | 'ENTITIES' | 'NMTOKEN' | 'NMTOKENS' Validity constraints for <a href="libxml-SAX.html#attribute">attribute</a> values syntax are checked in xmlValidateAttributeValue() [ VC: ID ] Values of type ID must match the Name production. A name must not appear more than once in an XML document as a value of this type; i.e., ID values must uniquely identify the elements which bear them. [ VC: One ID per Element Type ] No element type may have more than one ID <a href="libxml-SAX.html#attribute">attribute</a> specified. [ VC: ID Attribute Default ] An ID <a href="libxml-SAX.html#attribute">attribute</a> must have a declared default of #IMPLIED or #REQUIRED. [ VC: IDREF ] Values of type IDREF must match the Name production, and values of type IDREFS must match Names; each IDREF Name must match the value of an ID <a href="libxml-SAX.html#attribute">attribute</a> on some element in the XML document; i.e. IDREF values must match the value of some ID attribute. [ VC: Entity Name ] Values of type ENTITY must match the Name production, values of type ENTITIES must match Names; each Entity Name must match the name of an unparsed entity declared in the DTD. [ VC: Name Token ] Values of type NMTOKEN must match the Nmtoken production; values of type NMTOKENS must match Nmtokens.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>the enumeration tree built while parsing</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> type</td></tr></tbody></table></div><h3><a name="xmlParseComment" id="xmlParseComment"></a>Function: xmlParseComment</h3><pre class="programlisting">void	xmlParseComment			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>Skip an XML (SGML) <a href="libxml-SAX.html#comment">comment</a> &lt;!-- .... --&gt; The spec says that &quot;For compatibility, the string &quot;--&quot; (double-hyphen) must not occur within comments. &quot; [15] Comment ::= '&lt;!--' ((Char - '-') | ('-' (Char - '-')))* '--&gt;'</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlParsePI" id="xmlParsePI"></a>Function: xmlParsePI</h3><pre class="programlisting">void	xmlParsePI			(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>parse an XML Processing Instruction. [16] PI ::= '&lt;?' PITarget (S (Char* - (Char* '?&gt;' Char*)))? '?&gt;' The processing is transfered to SAX once parsed.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlCreateURLParserCtxt" id="xmlCreateURLParserCtxt"></a>Function: xmlCreateURLParserCtxt</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>	xmlCreateURLParserCtxt	(const char * filename, <br />						 int options)<br />
+</pre><p>Create a parser context for a file or URL content. Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time and for file accesses</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename or URL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser context or NULL</td></tr></tbody></table></div><h3><a name="xmlParseStartTag" id="xmlParseStartTag"></a>Function: xmlParseStartTag</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseStartTag	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>parse a start of tag either for rule element or EmptyElement. In both case we don't parse the tag closing chars. [40] STag ::= '&lt;' Name (S Attribute)* S? '&gt;' [ WFC: Unique Att Spec ] No <a href="libxml-SAX.html#attribute">attribute</a> name may appear more than once in the same start-tag or empty-element tag. [44] EmptyElemTag ::= '&lt;' Name (S Attribute)* S? '/&gt;' [ WFC: Unique Att Spec ] No <a href="libxml-SAX.html#attribute">attribute</a> name may appear more than once in the same start-tag or empty-element tag. With namespace: [NS 8] STag ::= '&lt;' QName (S Attribute)* S? '&gt;' [NS 10] EmptyElement ::= '&lt;' QName (S Attribute)* S? '/&gt;'</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the element name parsed</td></tr></tbody></table></div><h3><a name="xmlParseSystemLiteral" id="xmlParseSystemLiteral"></a>Function: xmlParseSystemLiteral</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlParseSystemLiteral	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+</pre><p>parse an XML Literal [11] SystemLiteral ::= ('&quot;' [^&quot;]* '&quot;') | (&quot;'&quot; [^']* &quot;'&quot;)</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the SystemLiteral parsed or NULL</td></tr></tbody></table></div><h3><a name="xmlParseEntityDecl" id="xmlParseEntityDecl"></a>Function: xmlParseEntityDecl</h3><pre class="programlisting">void	xmlParseEntityDecl		(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse &lt;!ENTITY declarations [70] EntityDecl ::= GEDecl | PEDecl [71] GEDecl ::= '&lt;!ENTITY' S Name S EntityDef S? '&gt;' [72] PEDecl ::= '&lt;!ENTITY' S '%' S Name S PEDef S? '&gt;' [73] EntityDef ::= EntityValue | (ExternalID NDataDecl?) [74] PEDef ::= EntityValue | ExternalID [76] NDataDecl ::= S 'NDATA' S Name [ VC: Notation Declared ] The Name must match the declared name of a notation.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-relaxng.html b/doc/html/libxml-relaxng.html
index 5373508..73b4894 100644
--- a/doc/html/libxml-relaxng.html
+++ b/doc/html/libxml-relaxng.html
@@ -10,39 +10,48 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module relaxng from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module relaxng from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-parserInternals.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-parserInternals.html">parserInternals</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-schemasInternals.html">schemasInternals</a></th><td><a accesskey="n" href="libxml-schemasInternals.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>implementation of the Relax-NG validation </p><h2>Table of Contents</h2><pre class="programlisting">void	<a href="#xmlRelaxNGFreeValidCtxt">xmlRelaxNGFreeValidCtxt</a>	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlRelaxNGSetValidErrors">xmlRelaxNGSetValidErrors</a>	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> err, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> warn, <br />				 void * ctx)<br />
-</pre><pre class="programlisting">void	<a href="#xmlRelaxNGSetParserErrors">xmlRelaxNGSetParserErrors</a>	(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> err, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> warn, <br />				 void * ctx)<br />
-</pre><pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a>	<a href="#xmlRelaxNGNewMemParserCtxt">xmlRelaxNGNewMemParserCtxt</a>	(const char * buffer, <br />				 int size)<br />
-</pre><pre class="programlisting">int	<a href="#xmlRelaxNGValidatePopElement">xmlRelaxNGValidatePopElement</a>	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
-</pre><pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a>	<a href="#xmlRelaxNGNewValidCtxt">xmlRelaxNGNewValidCtxt</a>	(<a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-relaxng.html#xmlRelaxNGValidCtxt">xmlRelaxNGValidCtxt</a> * <a name="xmlRelaxNGValidCtxtPtr" id="xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlRelaxNGDump">xmlRelaxNGDump</a>	(FILE * output, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
+    </style><title>Module relaxng from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module relaxng from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-parserInternals.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-parserInternals.html">parserInternals</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-schemasInternals.html">schemasInternals</a></th><td><a accesskey="n" href="libxml-schemasInternals.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>implementation of the Relax-NG validation </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xmlRelaxNG">xmlRelaxNG</a><br />struct _xmlRelaxNG
+The content of this structure is not made public by the API.
+</pre><pre class="programlisting">Structure <a href="#xmlRelaxNGParserCtxt">xmlRelaxNGParserCtxt</a><br />struct _xmlRelaxNGParserCtxt
+The content of this structure is not made public by the API.
 </pre><pre class="programlisting">Typedef <a href="libxml-relaxng.html#xmlRelaxNGParserCtxt">xmlRelaxNGParserCtxt</a> * <a name="xmlRelaxNGParserCtxtPtr" id="xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlRelaxNG" id="xmlRelaxNG">xmlRelaxNG</a><br />struct _xmlRelaxNG {
-The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">Structure <a name="xmlRelaxNGParserCtxt" id="xmlRelaxNGParserCtxt">xmlRelaxNGParserCtxt</a><br />struct _xmlRelaxNGParserCtxt {
-The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">int	<a href="#xmlRelaxNGValidateDoc">xmlRelaxNGValidateDoc</a>	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a>	<a href="#xmlRelaxNGParse">xmlRelaxNGParse</a>	(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">Structure <a name="xmlRelaxNGValidCtxt" id="xmlRelaxNGValidCtxt">xmlRelaxNGValidCtxt</a><br />struct _xmlRelaxNGValidCtxt {
-The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">int	<a href="#xmlRelaxNGValidatePushElement">xmlRelaxNGValidatePushElement</a>	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
-</pre><pre class="programlisting">int	<a href="#xmlRelaxNGValidateFullElement">xmlRelaxNGValidateFullElement</a>	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
-</pre><pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a>	<a href="#xmlRelaxNGNewParserCtxt">xmlRelaxNGNewParserCtxt</a>	(const char * URL)<br />
-</pre><pre class="programlisting"><a name="xmlRelaxNGValidityErrorFunc" id="xmlRelaxNGValidityErrorFunc"></a>Function type: xmlRelaxNGValidityErrorFunc
-void	xmlRelaxNGValidityErrorFunc	(void * ctx, <br />				 const char * msg, <br />				 ... ...)
-</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
-<pre class="programlisting">void	<a href="#xmlRelaxNGFree">xmlRelaxNGFree</a>	(<a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
-</pre><pre class="programlisting">void	<a href="#xmlRelaxNGFreeParserCtxt">xmlRelaxNGFreeParserCtxt</a>	(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a>	<a href="#xmlRelaxNGNewDocParserCtxt">xmlRelaxNGNewDocParserCtxt</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">int	<a href="#xmlRelaxNGGetValidErrors">xmlRelaxNGGetValidErrors</a>	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> * err, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> * warn, <br />				 void ** ctx)<br />
-</pre><pre class="programlisting">void	<a href="#xmlRelaxNGCleanupTypes">xmlRelaxNGCleanupTypes</a>	(void)<br />
 </pre><pre class="programlisting">Typedef <a href="libxml-relaxng.html#xmlRelaxNG">xmlRelaxNG</a> * <a name="xmlRelaxNGPtr" id="xmlRelaxNGPtr">xmlRelaxNGPtr</a>
-
-</pre><pre class="programlisting">Enum <a name="xmlRelaxNGValidErr" id="xmlRelaxNGValidErr">xmlRelaxNGValidErr</a> {
+</pre><pre class="programlisting">Structure <a href="#xmlRelaxNGValidCtxt">xmlRelaxNGValidCtxt</a><br />struct _xmlRelaxNGValidCtxt
+The content of this structure is not made public by the API.
+</pre><pre class="programlisting">Typedef <a href="libxml-relaxng.html#xmlRelaxNGValidCtxt">xmlRelaxNGValidCtxt</a> * <a name="xmlRelaxNGValidCtxtPtr" id="xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a>
+</pre><pre class="programlisting">Enum <a href="#xmlRelaxNGValidErr">xmlRelaxNGValidErr</a>
+</pre><pre class="programlisting">void	<a href="#xmlRelaxNGCleanupTypes">xmlRelaxNGCleanupTypes</a>		(void)</pre>
+<pre class="programlisting">void	<a href="#xmlRelaxNGDump">xmlRelaxNGDump</a>			(FILE * output, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)</pre>
+<pre class="programlisting">void	<a href="#xmlRelaxNGDumpTree">xmlRelaxNGDumpTree</a>		(FILE * output, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)</pre>
+<pre class="programlisting">void	<a href="#xmlRelaxNGFree">xmlRelaxNGFree</a>			(<a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)</pre>
+<pre class="programlisting">void	<a href="#xmlRelaxNGFreeParserCtxt">xmlRelaxNGFreeParserCtxt</a>	(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlRelaxNGFreeValidCtxt">xmlRelaxNGFreeValidCtxt</a>		(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#xmlRelaxNGGetParserErrors">xmlRelaxNGGetParserErrors</a>	(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> * err, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> * warn, <br />					 void ** ctx)</pre>
+<pre class="programlisting">int	<a href="#xmlRelaxNGGetValidErrors">xmlRelaxNGGetValidErrors</a>	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> * err, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> * warn, <br />					 void ** ctx)</pre>
+<pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a>	<a href="#xmlRelaxNGNewDocParserCtxt">xmlRelaxNGNewDocParserCtxt</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a>	<a href="#xmlRelaxNGNewMemParserCtxt">xmlRelaxNGNewMemParserCtxt</a>	(const char * buffer, <br />							 int size)</pre>
+<pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a>	<a href="#xmlRelaxNGNewParserCtxt">xmlRelaxNGNewParserCtxt</a>	(const char * URL)</pre>
+<pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a>	<a href="#xmlRelaxNGNewValidCtxt">xmlRelaxNGNewValidCtxt</a>	(<a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)</pre>
+<pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a>	<a href="#xmlRelaxNGParse">xmlRelaxNGParse</a>		(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlRelaxNGSetParserErrors">xmlRelaxNGSetParserErrors</a>	(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> err, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> warn, <br />					 void * ctx)</pre>
+<pre class="programlisting">void	<a href="#xmlRelaxNGSetValidErrors">xmlRelaxNGSetValidErrors</a>	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> err, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> warn, <br />					 void * ctx)</pre>
+<pre class="programlisting">int	<a href="#xmlRelaxNGValidateDoc">xmlRelaxNGValidateDoc</a>		(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting">int	<a href="#xmlRelaxNGValidateFullElement">xmlRelaxNGValidateFullElement</a>	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)</pre>
+<pre class="programlisting">int	<a href="#xmlRelaxNGValidatePopElement">xmlRelaxNGValidatePopElement</a>	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)</pre>
+<pre class="programlisting">int	<a href="#xmlRelaxNGValidatePushCData">xmlRelaxNGValidatePushCData</a>	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#xmlRelaxNGValidatePushElement">xmlRelaxNGValidatePushElement</a>	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)</pre>
+<pre class="programlisting">Function type: <a href="#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a>
+void	<a href="#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a>	(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre>
+<pre class="programlisting">Function type: <a href="#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a>
+void	<a href="#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a>	(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre>
+<h2>Description</h2>
+<h3><a name="xmlRelaxNG" id="xmlRelaxNG">Structure xmlRelaxNG</a></h3><pre class="programlisting">Structure xmlRelaxNG<br />struct _xmlRelaxNG {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlRelaxNGParserCtxt" id="xmlRelaxNGParserCtxt">Structure xmlRelaxNGParserCtxt</a></h3><pre class="programlisting">Structure xmlRelaxNGParserCtxt<br />struct _xmlRelaxNGParserCtxt {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlRelaxNGValidErr" id="xmlRelaxNGValidErr">xmlRelaxNGValidErr</a></h3><pre class="programlisting">Enum xmlRelaxNGValidErr {
     <a name="XML_RELAXNG_OK" id="XML_RELAXNG_OK">XML_RELAXNG_OK</a> = 0
     <a name="XML_RELAXNG_ERR_MEMORY" id="XML_RELAXNG_ERR_MEMORY">XML_RELAXNG_ERR_MEMORY</a> = 1
     <a name="XML_RELAXNG_ERR_TYPE" id="XML_RELAXNG_ERR_TYPE">XML_RELAXNG_ERR_TYPE</a> = 2
@@ -84,64 +93,52 @@
     <a name="XML_RELAXNG_ERR_ELEMWRONG" id="XML_RELAXNG_ERR_ELEMWRONG">XML_RELAXNG_ERR_ELEMWRONG</a> = 38
     <a name="XML_RELAXNG_ERR_TEXTWRONG" id="XML_RELAXNG_ERR_TEXTWRONG">XML_RELAXNG_ERR_TEXTWRONG</a> = 39
 }
-
-</pre><pre class="programlisting">int	<a href="#xmlRelaxNGGetParserErrors">xmlRelaxNGGetParserErrors</a>	(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> * err, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> * warn, <br />				 void ** ctx)<br />
-</pre><pre class="programlisting">void	<a href="#xmlRelaxNGDumpTree">xmlRelaxNGDumpTree</a>	(FILE * output, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
-</pre><pre class="programlisting">int	<a href="#xmlRelaxNGValidatePushCData">xmlRelaxNGValidatePushCData</a>	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data, <br />				 int len)<br />
-</pre><pre class="programlisting"><a name="xmlRelaxNGValidityWarningFunc" id="xmlRelaxNGValidityWarningFunc"></a>Function type: xmlRelaxNGValidityWarningFunc
-void	xmlRelaxNGValidityWarningFunc	(void * ctx, <br />				 const char * msg, <br />				 ... ...)
-</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
-<h2>Description</h2>
-<h3><a name="xmlRelaxNGFreeValidCtxt" id="xmlRelaxNGFreeValidCtxt"></a>Function: xmlRelaxNGFreeValidCtxt</h3><pre class="programlisting">void	xmlRelaxNGFreeValidCtxt	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt)<br />
+</pre><h3><a name="xmlRelaxNGValidCtxt" id="xmlRelaxNGValidCtxt">Structure xmlRelaxNGValidCtxt</a></h3><pre class="programlisting">Structure xmlRelaxNGValidCtxt<br />struct _xmlRelaxNGValidCtxt {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlRelaxNGFreeValidCtxt" id="xmlRelaxNGFreeValidCtxt"></a>Function: xmlRelaxNGFreeValidCtxt</h3><pre class="programlisting">void	xmlRelaxNGFreeValidCtxt		(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt)<br />
 </pre><p>Free the resources associated to the schema validation context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the schema validation context</td></tr></tbody></table></div><h3><a name="xmlRelaxNGSetValidErrors" id="xmlRelaxNGSetValidErrors"></a>Function: xmlRelaxNGSetValidErrors</h3><pre class="programlisting">void	xmlRelaxNGSetValidErrors	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> err, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> warn, <br />				 void * ctx)<br />
-</pre><p>Set the error and warning callback informations</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a Relax-NG validation context</td></tr><tr><td><span class="term"><i><tt>err</tt></i>:</span></td><td>the error function</td></tr><tr><td><span class="term"><i><tt>warn</tt></i>:</span></td><td>the warning function</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the functions context</td></tr></tbody></table></div><h3><a name="xmlRelaxNGSetParserErrors" id="xmlRelaxNGSetParserErrors"></a>Function: xmlRelaxNGSetParserErrors</h3><pre class="programlisting">void	xmlRelaxNGSetParserErrors	(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> err, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> warn, <br />				 void * ctx)<br />
-</pre><p>Set the callback functions used to handle errors for a validation context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a Relax-NG validation context</td></tr><tr><td><span class="term"><i><tt>err</tt></i>:</span></td><td>the error callback</td></tr><tr><td><span class="term"><i><tt>warn</tt></i>:</span></td><td>the warning callback</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>contextual data for the callbacks</td></tr></tbody></table></div><h3><a name="xmlRelaxNGNewMemParserCtxt" id="xmlRelaxNGNewMemParserCtxt"></a>Function: xmlRelaxNGNewMemParserCtxt</h3><pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a>	xmlRelaxNGNewMemParserCtxt	(const char * buffer, <br />				 int size)<br />
-</pre><p>Create an XML RelaxNGs parse context for that memory buffer expected to contain an XML RelaxNGs file.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array containing the schemas</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the parser context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlRelaxNGValidatePopElement" id="xmlRelaxNGValidatePopElement"></a>Function: xmlRelaxNGValidatePopElement</h3><pre class="programlisting">int	xmlRelaxNGValidatePopElement	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
-</pre><p>Pop the element end from the RelaxNG validation stack.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the RelaxNG validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if no validation problem was found or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlRelaxNGNewValidCtxt" id="xmlRelaxNGNewValidCtxt"></a>Function: xmlRelaxNGNewValidCtxt</h3><pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a>	xmlRelaxNGNewValidCtxt	(<a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
-</pre><p>Create an XML RelaxNGs validation context based on the given schema</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a precompiled XML RelaxNGs</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the validation context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlRelaxNGDump" id="xmlRelaxNGDump"></a>Function: xmlRelaxNGDump</h3><pre class="programlisting">void	xmlRelaxNGDump	(FILE * output, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
-</pre><p>Dump a RelaxNG structure back</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the file output</td></tr><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a schema structure</td></tr></tbody></table></div><h3><a name="xmlRelaxNGValidateDoc" id="xmlRelaxNGValidateDoc"></a>Function: xmlRelaxNGValidateDoc</h3><pre class="programlisting">int	xmlRelaxNGValidateDoc	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><p>Validate a document tree in memory.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a Relax-NG validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a parsed document tree</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the document is valid, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlRelaxNGParse" id="xmlRelaxNGParse"></a>Function: xmlRelaxNGParse</h3><pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a>	xmlRelaxNGParse	(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt)<br />
-</pre><p>parse a schema definition resource and build an internal XML Shema struture which can be used to validate instances. *WARNING* this interface is highly subject to change</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a Relax-NG parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the internal XML RelaxNG structure built from the resource or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlRelaxNGValidatePushElement" id="xmlRelaxNGValidatePushElement"></a>Function: xmlRelaxNGValidatePushElement</h3><pre class="programlisting">int	xmlRelaxNGValidatePushElement	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
-</pre><p>Push a new element start on the RelaxNG validation stack.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if no validation problem was found or 0 if validating the element requires a full node, and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlRelaxNGValidateFullElement" id="xmlRelaxNGValidateFullElement"></a>Function: xmlRelaxNGValidateFullElement</h3><pre class="programlisting">int	xmlRelaxNGValidateFullElement	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the schema validation context</td></tr></tbody></table></div><h3><a name="xmlRelaxNGValidateFullElement" id="xmlRelaxNGValidateFullElement"></a>Function: xmlRelaxNGValidateFullElement</h3><pre class="programlisting">int	xmlRelaxNGValidateFullElement	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
 </pre><p>Validate a full subtree when xmlRelaxNGValidatePushElement() returned 0 and the content of the node has been expanded.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if no validation problem was found or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlRelaxNGNewParserCtxt" id="xmlRelaxNGNewParserCtxt"></a>Function: xmlRelaxNGNewParserCtxt</h3><pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a>	xmlRelaxNGNewParserCtxt	(const char * URL)<br />
-</pre><p>Create an XML RelaxNGs parse context for that file/resource expected to contain an XML RelaxNGs file.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the location of the schema</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the parser context or NULL in case of error</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-    <h3><a name="xmlRelaxNGFree" id="xmlRelaxNGFree"></a>Function: xmlRelaxNGFree</h3><pre class="programlisting">void	xmlRelaxNGFree	(<a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
-</pre><p>Deallocate a RelaxNG structure.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a schema structure</td></tr></tbody></table></div><h3><a name="xmlRelaxNGFreeParserCtxt" id="xmlRelaxNGFreeParserCtxt"></a>Function: xmlRelaxNGFreeParserCtxt</h3><pre class="programlisting">void	xmlRelaxNGFreeParserCtxt	(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt)<br />
-</pre><p>Free the resources associated to the schema parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the schema parser context</td></tr></tbody></table></div><h3><a name="xmlRelaxNGNewDocParserCtxt" id="xmlRelaxNGNewDocParserCtxt"></a>Function: xmlRelaxNGNewDocParserCtxt</h3><pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a>	xmlRelaxNGNewDocParserCtxt	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if no validation problem was found or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlRelaxNGNewDocParserCtxt" id="xmlRelaxNGNewDocParserCtxt"></a>Function: xmlRelaxNGNewDocParserCtxt</h3><pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a>	xmlRelaxNGNewDocParserCtxt	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
 </pre><p>Create an XML RelaxNGs parser context for that document. Note: since the process of compiling a RelaxNG schemas modifies the document, the @doc parameter is duplicated internally.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a preparsed document tree</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the parser context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlRelaxNGGetValidErrors" id="xmlRelaxNGGetValidErrors"></a>Function: xmlRelaxNGGetValidErrors</h3><pre class="programlisting">int	xmlRelaxNGGetValidErrors	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> * err, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> * warn, <br />				 void ** ctx)<br />
-</pre><p>Get the error and warning callback informations</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a Relax-NG validation context</td></tr><tr><td><span class="term"><i><tt>err</tt></i>:</span></td><td>the error function result</td></tr><tr><td><span class="term"><i><tt>warn</tt></i>:</span></td><td>the warning function result</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the functions context result</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of error and 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlRelaxNGCleanupTypes" id="xmlRelaxNGCleanupTypes"></a>Function: xmlRelaxNGCleanupTypes</h3><pre class="programlisting">void	xmlRelaxNGCleanupTypes	(void)<br />
-</pre><p>Cleanup the default Schemas type library associated to RelaxNG</p>
-<h3><a name="xmlRelaxNGGetParserErrors" id="xmlRelaxNGGetParserErrors"></a>Function: xmlRelaxNGGetParserErrors</h3><pre class="programlisting">int	xmlRelaxNGGetParserErrors	(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> * err, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> * warn, <br />				 void ** ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a preparsed document tree</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the parser context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlRelaxNGSetValidErrors" id="xmlRelaxNGSetValidErrors"></a>Function: xmlRelaxNGSetValidErrors</h3><pre class="programlisting">void	xmlRelaxNGSetValidErrors	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> err, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> warn, <br />					 void * ctx)<br />
+</pre><p>Set the error and warning callback informations</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a Relax-NG validation context</td></tr><tr><td><span class="term"><i><tt>err</tt></i>:</span></td><td>the error function</td></tr><tr><td><span class="term"><i><tt>warn</tt></i>:</span></td><td>the warning function</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the functions context</td></tr></tbody></table></div><h3><a name="xmlRelaxNGValidatePopElement" id="xmlRelaxNGValidatePopElement"></a>Function: xmlRelaxNGValidatePopElement</h3><pre class="programlisting">int	xmlRelaxNGValidatePopElement	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
+</pre><p>Pop the element end from the RelaxNG validation stack.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the RelaxNG validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if no validation problem was found or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlRelaxNGFree" id="xmlRelaxNGFree"></a>Function: xmlRelaxNGFree</h3><pre class="programlisting">void	xmlRelaxNGFree			(<a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
+</pre><p>Deallocate a RelaxNG structure.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a schema structure</td></tr></tbody></table></div><h3><a name="xmlRelaxNGNewParserCtxt" id="xmlRelaxNGNewParserCtxt"></a>Function: xmlRelaxNGNewParserCtxt</h3><pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a>	xmlRelaxNGNewParserCtxt	(const char * URL)<br />
+</pre><p>Create an XML RelaxNGs parse context for that file/resource expected to contain an XML RelaxNGs file.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the location of the schema</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the parser context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlRelaxNGValidateDoc" id="xmlRelaxNGValidateDoc"></a>Function: xmlRelaxNGValidateDoc</h3><pre class="programlisting">int	xmlRelaxNGValidateDoc		(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+</pre><p>Validate a document tree in memory.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a Relax-NG validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a parsed document tree</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the document is valid, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlRelaxNGGetParserErrors" id="xmlRelaxNGGetParserErrors"></a>Function: xmlRelaxNGGetParserErrors</h3><pre class="programlisting">int	xmlRelaxNGGetParserErrors	(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> * err, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> * warn, <br />					 void ** ctx)<br />
 </pre><p>Get the callback information used to handle errors for a validation context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a Relax-NG validation context</td></tr><tr><td><span class="term"><i><tt>err</tt></i>:</span></td><td>the error callback result</td></tr><tr><td><span class="term"><i><tt>warn</tt></i>:</span></td><td>the warning callback result</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>contextual data for the callbacks result</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of failure, 0 otherwise.</td></tr></tbody></table></div><h3><a name="xmlRelaxNGDumpTree" id="xmlRelaxNGDumpTree"></a>Function: xmlRelaxNGDumpTree</h3><pre class="programlisting">void	xmlRelaxNGDumpTree	(FILE * output, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a Relax-NG validation context</td></tr><tr><td><span class="term"><i><tt>err</tt></i>:</span></td><td>the error callback result</td></tr><tr><td><span class="term"><i><tt>warn</tt></i>:</span></td><td>the warning callback result</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>contextual data for the callbacks result</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of failure, 0 otherwise.</td></tr></tbody></table></div><h3><a name="xmlRelaxNGFreeParserCtxt" id="xmlRelaxNGFreeParserCtxt"></a>Function: xmlRelaxNGFreeParserCtxt</h3><pre class="programlisting">void	xmlRelaxNGFreeParserCtxt	(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt)<br />
+</pre><p>Free the resources associated to the schema parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the schema parser context</td></tr></tbody></table></div><h3><a name="xmlRelaxNGSetParserErrors" id="xmlRelaxNGSetParserErrors"></a>Function: xmlRelaxNGSetParserErrors</h3><pre class="programlisting">void	xmlRelaxNGSetParserErrors	(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> err, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> warn, <br />					 void * ctx)<br />
+</pre><p>Set the callback functions used to handle errors for a validation context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a Relax-NG validation context</td></tr><tr><td><span class="term"><i><tt>err</tt></i>:</span></td><td>the error callback</td></tr><tr><td><span class="term"><i><tt>warn</tt></i>:</span></td><td>the warning callback</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>contextual data for the callbacks</td></tr></tbody></table></div><h3><a name="xmlRelaxNGNewValidCtxt" id="xmlRelaxNGNewValidCtxt"></a>Function: xmlRelaxNGNewValidCtxt</h3><pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a>	xmlRelaxNGNewValidCtxt	(<a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
+</pre><p>Create an XML RelaxNGs validation context based on the given schema</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a precompiled XML RelaxNGs</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the validation context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlRelaxNGGetValidErrors" id="xmlRelaxNGGetValidErrors"></a>Function: xmlRelaxNGGetValidErrors</h3><pre class="programlisting">int	xmlRelaxNGGetValidErrors	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityErrorFunc">xmlRelaxNGValidityErrorFunc</a> * err, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGValidityWarningFunc">xmlRelaxNGValidityWarningFunc</a> * warn, <br />					 void ** ctx)<br />
+</pre><p>Get the error and warning callback informations</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a Relax-NG validation context</td></tr><tr><td><span class="term"><i><tt>err</tt></i>:</span></td><td>the error function result</td></tr><tr><td><span class="term"><i><tt>warn</tt></i>:</span></td><td>the warning function result</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the functions context result</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of error and 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlRelaxNGNewMemParserCtxt" id="xmlRelaxNGNewMemParserCtxt"></a>Function: xmlRelaxNGNewMemParserCtxt</h3><pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a>	xmlRelaxNGNewMemParserCtxt	(const char * buffer, <br />							 int size)<br />
+</pre><p>Create an XML RelaxNGs parse context for that memory buffer expected to contain an XML RelaxNGs file.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array containing the schemas</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the parser context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlRelaxNGDump" id="xmlRelaxNGDump"></a>Function: xmlRelaxNGDump</h3><pre class="programlisting">void	xmlRelaxNGDump			(FILE * output, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
+</pre><p>Dump a RelaxNG structure back</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the file output</td></tr><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a schema structure</td></tr></tbody></table></div><h3><a name="xmlRelaxNGValidityErrorFunc" id="xmlRelaxNGValidityErrorFunc"></a>Function type: xmlRelaxNGValidityErrorFunc</h3><pre class="programlisting">Function type: xmlRelaxNGValidityErrorFunc
+void	xmlRelaxNGValidityErrorFunc	(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
+<h3><a name="xmlRelaxNGParse" id="xmlRelaxNGParse"></a>Function: xmlRelaxNGParse</h3><pre class="programlisting"><a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a>	xmlRelaxNGParse		(<a href="libxml-relaxng.html#xmlRelaxNGParserCtxtPtr">xmlRelaxNGParserCtxtPtr</a> ctxt)<br />
+</pre><p>parse a schema definition resource and build an internal XML Shema struture which can be used to validate instances. *WARNING* this interface is highly subject to change</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a Relax-NG parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the internal XML RelaxNG structure built from the resource or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlRelaxNGDumpTree" id="xmlRelaxNGDumpTree"></a>Function: xmlRelaxNGDumpTree</h3><pre class="programlisting">void	xmlRelaxNGDumpTree		(FILE * output, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
 </pre><p>Dump the transformed RelaxNG tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the file output</td></tr><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a schema structure</td></tr></tbody></table></div><h3><a name="xmlRelaxNGValidatePushCData" id="xmlRelaxNGValidatePushCData"></a>Function: xmlRelaxNGValidatePushCData</h3><pre class="programlisting">int	xmlRelaxNGValidatePushCData	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the file output</td></tr><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a schema structure</td></tr></tbody></table></div><h3><a name="xmlRelaxNGValidatePushElement" id="xmlRelaxNGValidatePushElement"></a>Function: xmlRelaxNGValidatePushElement</h3><pre class="programlisting">int	xmlRelaxNGValidatePushElement	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
+</pre><p>Push a new element start on the RelaxNG validation stack.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if no validation problem was found or 0 if validating the element requires a full node, and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlRelaxNGCleanupTypes" id="xmlRelaxNGCleanupTypes"></a>Function: xmlRelaxNGCleanupTypes</h3><pre class="programlisting">void	xmlRelaxNGCleanupTypes		(void)<br />
+</pre><p>Cleanup the default Schemas type library associated to RelaxNG</p>
+<h3><a name="xmlRelaxNGValidatePushCData" id="xmlRelaxNGValidatePushCData"></a>Function: xmlRelaxNGValidatePushCData</h3><pre class="programlisting">int	xmlRelaxNGValidatePushCData	(<a href="libxml-relaxng.html#xmlRelaxNGValidCtxtPtr">xmlRelaxNGValidCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data, <br />					 int len)<br />
 </pre><p>check the CData parsed for validation in the current stack</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the RelaxNG validation context</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>some character data read</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the lenght of the data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if no validation problem was found or -1 otherwise</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-    <p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the RelaxNG validation context</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>some character data read</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the lenght of the data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if no validation problem was found or -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlRelaxNGValidityWarningFunc" id="xmlRelaxNGValidityWarningFunc"></a>Function type: xmlRelaxNGValidityWarningFunc</h3><pre class="programlisting">Function type: xmlRelaxNGValidityWarningFunc
+void	xmlRelaxNGValidityWarningFunc	(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
+<p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-schemasInternals.html b/doc/html/libxml-schemasInternals.html
index cac4c05..340d9ea 100644
--- a/doc/html/libxml-schemasInternals.html
+++ b/doc/html/libxml-schemasInternals.html
@@ -10,18 +10,109 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module schemasInternals from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module schemasInternals from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-relaxng.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-relaxng.html">relaxng</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-threads.html">threads</a></th><td><a accesskey="n" href="libxml-threads.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>internal interfaces for the XML Schemas handling and schema validity checking </p><h2>Table of Contents</h2><pre class="programlisting">Typedef <a href="libxml-schemasInternals.html#xmlSchemaNotation">xmlSchemaNotation</a> * <a name="xmlSchemaNotationPtr" id="xmlSchemaNotationPtr">xmlSchemaNotationPtr</a>
-
+    </style><title>Module schemasInternals from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module schemasInternals from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-relaxng.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-relaxng.html">relaxng</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-threads.html">threads</a></th><td><a accesskey="n" href="libxml-threads.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>internal interfaces for the XML Schemas handling and schema validity checking </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANYATTR_LAX">XML_SCHEMAS_ANYATTR_LAX</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANYATTR_SKIP">XML_SCHEMAS_ANYATTR_SKIP</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANYATTR_STRICT">XML_SCHEMAS_ANYATTR_STRICT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_ABSTRACT">XML_SCHEMAS_ELEM_ABSTRACT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_DEFAULT">XML_SCHEMAS_ELEM_DEFAULT</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_FIXED">XML_SCHEMAS_ELEM_FIXED</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_GLOBAL">XML_SCHEMAS_ELEM_GLOBAL</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_NILLABLE">XML_SCHEMAS_ELEM_NILLABLE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_REF">XML_SCHEMAS_ELEM_REF</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_TOPLEVEL">XML_SCHEMAS_ELEM_TOPLEVEL</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_COLLAPSE">XML_SCHEMAS_FACET_COLLAPSE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_PRESERVE">XML_SCHEMAS_FACET_PRESERVE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_REPLACE">XML_SCHEMAS_FACET_REPLACE</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_UNKNOWN">XML_SCHEMAS_FACET_UNKNOWN</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_QUALIF_ATTR">XML_SCHEMAS_QUALIF_ATTR</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_QUALIF_ELEM">XML_SCHEMAS_QUALIF_ELEM</a></pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_MIXED">XML_SCHEMAS_TYPE_MIXED</a></pre><pre class="programlisting">Structure <a href="#xmlSchemaAnnot">xmlSchemaAnnot</a><br />struct _xmlSchemaAnnot
+</pre><pre class="programlisting">Typedef <a href="libxml-schemasInternals.html#xmlSchemaAnnot">xmlSchemaAnnot</a> * <a name="xmlSchemaAnnotPtr" id="xmlSchemaAnnotPtr">xmlSchemaAnnotPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlSchemaAttribute">xmlSchemaAttribute</a><br />struct _xmlSchemaAttribute
+</pre><pre class="programlisting">Structure <a href="#xmlSchemaAttributeGroup">xmlSchemaAttributeGroup</a><br />struct _xmlSchemaAttributeGroup
 </pre><pre class="programlisting">Typedef <a href="libxml-schemasInternals.html#xmlSchemaAttributeGroup">xmlSchemaAttributeGroup</a> * <a name="xmlSchemaAttributeGroupPtr" id="xmlSchemaAttributeGroupPtr">xmlSchemaAttributeGroupPtr</a>
-
-</pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_QUALIF_ATTR">XML_SCHEMAS_QUALIF_ATTR</a>
-
+</pre><pre class="programlisting">Typedef <a href="libxml-schemasInternals.html#xmlSchemaAttribute">xmlSchemaAttribute</a> * <a name="xmlSchemaAttributePtr" id="xmlSchemaAttributePtr">xmlSchemaAttributePtr</a>
+</pre><pre class="programlisting">Enum <a href="#xmlSchemaContentType">xmlSchemaContentType</a>
+</pre><pre class="programlisting">Structure <a href="#xmlSchemaElement">xmlSchemaElement</a><br />struct _xmlSchemaElement
 </pre><pre class="programlisting">Typedef <a href="libxml-schemasInternals.html#xmlSchemaElement">xmlSchemaElement</a> * <a name="xmlSchemaElementPtr" id="xmlSchemaElementPtr">xmlSchemaElementPtr</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlSchemaFreeType">xmlSchemaFreeType</a>	(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> type)<br />
-</pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_COLLAPSE">XML_SCHEMAS_FACET_COLLAPSE</a>
-
-</pre><pre class="programlisting">Enum <a name="xmlSchemaContentType" id="xmlSchemaContentType">xmlSchemaContentType</a> {
+</pre><pre class="programlisting">Structure <a href="#xmlSchemaFacet">xmlSchemaFacet</a><br />struct _xmlSchemaFacet
+</pre><pre class="programlisting">Typedef <a href="libxml-schemasInternals.html#xmlSchemaFacet">xmlSchemaFacet</a> * <a name="xmlSchemaFacetPtr" id="xmlSchemaFacetPtr">xmlSchemaFacetPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlSchemaNotation">xmlSchemaNotation</a><br />struct _xmlSchemaNotation
+</pre><pre class="programlisting">Typedef <a href="libxml-schemasInternals.html#xmlSchemaNotation">xmlSchemaNotation</a> * <a name="xmlSchemaNotationPtr" id="xmlSchemaNotationPtr">xmlSchemaNotationPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlSchemaType">xmlSchemaType</a><br />struct _xmlSchemaType
+</pre><pre class="programlisting">Typedef <a href="libxml-schemasInternals.html#xmlSchemaType">xmlSchemaType</a> * <a name="xmlSchemaTypePtr" id="xmlSchemaTypePtr">xmlSchemaTypePtr</a>
+</pre><pre class="programlisting">Enum <a href="#xmlSchemaTypeType">xmlSchemaTypeType</a>
+</pre><pre class="programlisting">Structure <a href="#xmlSchemaVal">xmlSchemaVal</a><br />struct _xmlSchemaVal
+The content of this structure is not made public by the API.
+</pre><pre class="programlisting">Typedef <a href="libxml-schemasInternals.html#xmlSchemaVal">xmlSchemaVal</a> * <a name="xmlSchemaValPtr" id="xmlSchemaValPtr">xmlSchemaValPtr</a>
+</pre><pre class="programlisting">void	<a href="#xmlSchemaFreeType">xmlSchemaFreeType</a>		(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> type)</pre>
+<h2>Description</h2>
+<h3><a name="XML_SCHEMAS_FACET_UNKNOWN" id="XML_SCHEMAS_FACET_UNKNOWN"></a>Macro: XML_SCHEMAS_FACET_UNKNOWN</h3><pre>#define XML_SCHEMAS_FACET_UNKNOWN</pre><p>unknown facet handling</p>
+<h3><a name="XML_SCHEMAS_ANYATTR_LAX" id="XML_SCHEMAS_ANYATTR_LAX"></a>Macro: XML_SCHEMAS_ANYATTR_LAX</h3><pre>#define XML_SCHEMAS_ANYATTR_LAX</pre><p></p>
+<h3><a name="XML_SCHEMAS_ELEM_TOPLEVEL" id="XML_SCHEMAS_ELEM_TOPLEVEL"></a>Macro: XML_SCHEMAS_ELEM_TOPLEVEL</h3><pre>#define XML_SCHEMAS_ELEM_TOPLEVEL</pre><p>the element is top level</p>
+<h3><a name="XML_SCHEMAS_ELEM_ABSTRACT" id="XML_SCHEMAS_ELEM_ABSTRACT"></a>Macro: XML_SCHEMAS_ELEM_ABSTRACT</h3><pre>#define XML_SCHEMAS_ELEM_ABSTRACT</pre><p>the element is abstract</p>
+<h3><a name="XML_SCHEMAS_ANYATTR_STRICT" id="XML_SCHEMAS_ANYATTR_STRICT"></a>Macro: XML_SCHEMAS_ANYATTR_STRICT</h3><pre>#define XML_SCHEMAS_ANYATTR_STRICT</pre><p></p>
+<h3><a name="XML_SCHEMAS_QUALIF_ATTR" id="XML_SCHEMAS_QUALIF_ATTR"></a>Macro: XML_SCHEMAS_QUALIF_ATTR</h3><pre>#define XML_SCHEMAS_QUALIF_ATTR</pre><p>the shemas requires qualified attributes</p>
+<h3><a name="XML_SCHEMAS_ELEM_FIXED" id="XML_SCHEMAS_ELEM_FIXED"></a>Macro: XML_SCHEMAS_ELEM_FIXED</h3><pre>#define XML_SCHEMAS_ELEM_FIXED</pre><p>the element has a fixed value</p>
+<h3><a name="XML_SCHEMAS_FACET_COLLAPSE" id="XML_SCHEMAS_FACET_COLLAPSE"></a>Macro: XML_SCHEMAS_FACET_COLLAPSE</h3><pre>#define XML_SCHEMAS_FACET_COLLAPSE</pre><p>collapse the types of the facet</p>
+<h3><a name="XML_SCHEMAS_QUALIF_ELEM" id="XML_SCHEMAS_QUALIF_ELEM"></a>Macro: XML_SCHEMAS_QUALIF_ELEM</h3><pre>#define XML_SCHEMAS_QUALIF_ELEM</pre><p>the shemas requires qualified elements</p>
+<h3><a name="XML_SCHEMAS_ELEM_GLOBAL" id="XML_SCHEMAS_ELEM_GLOBAL"></a>Macro: XML_SCHEMAS_ELEM_GLOBAL</h3><pre>#define XML_SCHEMAS_ELEM_GLOBAL</pre><p>the element is global</p>
+<h3><a name="XML_SCHEMAS_TYPE_MIXED" id="XML_SCHEMAS_TYPE_MIXED"></a>Macro: XML_SCHEMAS_TYPE_MIXED</h3><pre>#define XML_SCHEMAS_TYPE_MIXED</pre><p>the element content type is mixed</p>
+<h3><a name="XML_SCHEMAS_ANYATTR_SKIP" id="XML_SCHEMAS_ANYATTR_SKIP"></a>Macro: XML_SCHEMAS_ANYATTR_SKIP</h3><pre>#define XML_SCHEMAS_ANYATTR_SKIP</pre><p></p>
+<h3><a name="XML_SCHEMAS_ELEM_DEFAULT" id="XML_SCHEMAS_ELEM_DEFAULT"></a>Macro: XML_SCHEMAS_ELEM_DEFAULT</h3><pre>#define XML_SCHEMAS_ELEM_DEFAULT</pre><p>the element has a default value</p>
+<h3><a name="XML_SCHEMAS_FACET_REPLACE" id="XML_SCHEMAS_FACET_REPLACE"></a>Macro: XML_SCHEMAS_FACET_REPLACE</h3><pre>#define XML_SCHEMAS_FACET_REPLACE</pre><p>replace the type of the facet</p>
+<h3><a name="XML_SCHEMAS_FACET_PRESERVE" id="XML_SCHEMAS_FACET_PRESERVE"></a>Macro: XML_SCHEMAS_FACET_PRESERVE</h3><pre>#define XML_SCHEMAS_FACET_PRESERVE</pre><p>preserve the type of the facet</p>
+<h3><a name="XML_SCHEMAS_ELEM_REF" id="XML_SCHEMAS_ELEM_REF"></a>Macro: XML_SCHEMAS_ELEM_REF</h3><pre>#define XML_SCHEMAS_ELEM_REF</pre><p>the element is a <a href="libxml-SAX.html#reference">reference</a> to a type</p>
+<h3><a name="XML_SCHEMAS_ELEM_NILLABLE" id="XML_SCHEMAS_ELEM_NILLABLE"></a>Macro: XML_SCHEMAS_ELEM_NILLABLE</h3><pre>#define XML_SCHEMAS_ELEM_NILLABLE</pre><p>the element is nillable</p>
+<h3><a name="xmlSchemaAttributeGroup" id="xmlSchemaAttributeGroup">Structure xmlSchemaAttributeGroup</a></h3><pre class="programlisting">Structure xmlSchemaAttributeGroup<br />struct _xmlSchemaAttributeGroup {
+    <a href="libxml-schemasInternals.html#xmlSchemaTypeType">xmlSchemaTypeType</a>	type	: The kind of type
+    struct _xmlSchemaAttribute *	next	: the next <a href="libxml-SAX.html#attribute">attribute</a> if in a group ...
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	id
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	ref
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	refNs
+    <a href="libxml-schemasInternals.html#xmlSchemaAnnotPtr">xmlSchemaAnnotPtr</a>	annot
+    <a href="libxml-schemasInternals.html#xmlSchemaAttributePtr">xmlSchemaAttributePtr</a>	attributes
+    <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	node
+}</pre><h3><a name="xmlSchemaElement" id="xmlSchemaElement">Structure xmlSchemaElement</a></h3><pre class="programlisting">Structure xmlSchemaElement<br />struct _xmlSchemaElement {
+    <a href="libxml-schemasInternals.html#xmlSchemaTypeType">xmlSchemaTypeType</a>	type	: The kind of type
+    struct _xmlSchemaType *	next	: the next type if in a sequence ...
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	id
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	ref
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	refNs
+    <a href="libxml-schemasInternals.html#xmlSchemaAnnotPtr">xmlSchemaAnnotPtr</a>	annot
+    <a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a>	subtypes
+    <a href="libxml-schemasInternals.html#xmlSchemaAttributePtr">xmlSchemaAttributePtr</a>	attributes
+    <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	node
+    int	minOccurs
+    int	maxOccurs
+    int	flags
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	targetNamespace
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	namedType
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	namedTypeNs
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	substGroup
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	substGroupNs
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	scope
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	value
+    struct _xmlSchemaElement *	refDecl
+    <a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a>	contModel
+    <a href="libxml-schemasInternals.html#xmlSchemaContentType">xmlSchemaContentType</a>	contentType
+}</pre><h3><a name="xmlSchemaFacet" id="xmlSchemaFacet">Structure xmlSchemaFacet</a></h3><pre class="programlisting">Structure xmlSchemaFacet<br />struct _xmlSchemaFacet {
+    <a href="libxml-schemasInternals.html#xmlSchemaTypeType">xmlSchemaTypeType</a>	type	: The kind of type
+    struct _xmlSchemaFacet *	next	: the next type if in a sequence ...
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	value
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	id
+    <a href="libxml-schemasInternals.html#xmlSchemaAnnotPtr">xmlSchemaAnnotPtr</a>	annot
+    <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	node
+    int	fixed
+    int	whitespace
+    <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a>	val
+    <a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a>	regexp
+}</pre><h3><a name="xmlSchemaType" id="xmlSchemaType">Structure xmlSchemaType</a></h3><pre class="programlisting">Structure xmlSchemaType<br />struct _xmlSchemaType {
+    <a href="libxml-schemasInternals.html#xmlSchemaTypeType">xmlSchemaTypeType</a>	type	: The kind of type
+    struct _xmlSchemaType *	next	: the next type if in a sequence ...
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	id
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	ref
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	refNs
+    <a href="libxml-schemasInternals.html#xmlSchemaAnnotPtr">xmlSchemaAnnotPtr</a>	annot
+    <a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a>	subtypes
+    <a href="libxml-schemasInternals.html#xmlSchemaAttributePtr">xmlSchemaAttributePtr</a>	attributes
+    <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	node
+    int	minOccurs
+    int	maxOccurs
+    int	flags
+    <a href="libxml-schemasInternals.html#xmlSchemaContentType">xmlSchemaContentType</a>	contentType
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	base
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	baseNs
+    <a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a>	baseType
+    <a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a>	facets
+}</pre><h3><a name="xmlSchemaContentType" id="xmlSchemaContentType">xmlSchemaContentType</a></h3><pre class="programlisting">Enum xmlSchemaContentType {
     <a name="XML_SCHEMA_CONTENT_UNKNOWN" id="XML_SCHEMA_CONTENT_UNKNOWN">XML_SCHEMA_CONTENT_UNKNOWN</a> = 0
     <a name="XML_SCHEMA_CONTENT_EMPTY" id="XML_SCHEMA_CONTENT_EMPTY">XML_SCHEMA_CONTENT_EMPTY</a> = 1
     <a name="XML_SCHEMA_CONTENT_ELEMENTS" id="XML_SCHEMA_CONTENT_ELEMENTS">XML_SCHEMA_CONTENT_ELEMENTS</a> = 2
@@ -31,8 +122,7 @@
     <a name="XML_SCHEMA_CONTENT_BASIC" id="XML_SCHEMA_CONTENT_BASIC">XML_SCHEMA_CONTENT_BASIC</a> = 6
     <a name="XML_SCHEMA_CONTENT_ANY" id="XML_SCHEMA_CONTENT_ANY">XML_SCHEMA_CONTENT_ANY</a> = 7
 }
-
-</pre><pre class="programlisting">Enum <a name="xmlSchemaTypeType" id="xmlSchemaTypeType">xmlSchemaTypeType</a> {
+</pre><h3><a name="xmlSchemaTypeType" id="xmlSchemaTypeType">xmlSchemaTypeType</a></h3><pre class="programlisting">Enum xmlSchemaTypeType {
     <a name="XML_SCHEMA_TYPE_BASIC" id="XML_SCHEMA_TYPE_BASIC">XML_SCHEMA_TYPE_BASIC</a> = 1
     <a name="XML_SCHEMA_TYPE_ANY" id="XML_SCHEMA_TYPE_ANY">XML_SCHEMA_TYPE_ANY</a> = 2
     <a name="XML_SCHEMA_TYPE_FACET" id="XML_SCHEMA_TYPE_FACET">XML_SCHEMA_TYPE_FACET</a> = 3
@@ -66,13 +156,7 @@
     <a name="XML_SCHEMA_FACET_MAXLENGTH" id="XML_SCHEMA_FACET_MAXLENGTH">XML_SCHEMA_FACET_MAXLENGTH</a> = 1010
     <a name="XML_SCHEMA_FACET_MINLENGTH" id="XML_SCHEMA_FACET_MINLENGTH">XML_SCHEMA_FACET_MINLENGTH</a> = 1011
 }
-
-</pre><pre class="programlisting">Structure <a name="xmlSchemaAnnot" id="xmlSchemaAnnot">xmlSchemaAnnot</a><br />struct _xmlSchemaAnnot {
-    struct _xmlSchemaAnnot *	next
-    <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	content	: the annotation
-}</pre><br /><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_UNKNOWN">XML_SCHEMAS_FACET_UNKNOWN</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlSchemaAttribute" id="xmlSchemaAttribute">xmlSchemaAttribute</a><br />struct _xmlSchemaAttribute {
+</pre><h3><a name="xmlSchemaAttribute" id="xmlSchemaAttribute">Structure xmlSchemaAttribute</a></h3><pre class="programlisting">Structure xmlSchemaAttribute<br />struct _xmlSchemaAttribute {
     <a href="libxml-schemasInternals.html#xmlSchemaTypeType">xmlSchemaTypeType</a>	type	: The kind of type
     struct _xmlSchemaAttribute *	next	: the next <a href="libxml-SAX.html#attribute">attribute</a> if in a group ...
     <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name
@@ -87,220 +171,16 @@
     <a href="libxml-tree.html#xmlChar">xmlChar</a> *	defValue
     <a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a>	subtypes
     <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	node
-}</pre><br /><pre class="programlisting">Structure <a name="xmlSchemaElement" id="xmlSchemaElement">xmlSchemaElement</a><br />struct _xmlSchemaElement {
-    <a href="libxml-schemasInternals.html#xmlSchemaTypeType">xmlSchemaTypeType</a>	type	: The kind of type
-    struct _xmlSchemaType *	next	: the next type if in a sequence ...
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	id
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	ref
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	refNs
-    <a href="libxml-schemasInternals.html#xmlSchemaAnnotPtr">xmlSchemaAnnotPtr</a>	annot
-    <a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a>	subtypes
-    <a href="libxml-schemasInternals.html#xmlSchemaAttributePtr">xmlSchemaAttributePtr</a>	attributes
-    <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	node
-    int	minOccurs
-    int	maxOccurs
-    int	flags
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	targetNamespace
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	namedType
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	namedTypeNs
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	substGroup
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	substGroupNs
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	scope
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	value
-    struct _xmlSchemaElement *	refDecl
-    <a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a>	contModel
-    <a href="libxml-schemasInternals.html#xmlSchemaContentType">xmlSchemaContentType</a>	contentType
-}</pre><br /><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_FIXED">XML_SCHEMAS_ELEM_FIXED</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlSchemaNotation" id="xmlSchemaNotation">xmlSchemaNotation</a><br />struct _xmlSchemaNotation {
+}</pre><h3><a name="xmlSchemaNotation" id="xmlSchemaNotation">Structure xmlSchemaNotation</a></h3><pre class="programlisting">Structure xmlSchemaNotation<br />struct _xmlSchemaNotation {
     <a href="libxml-schemasInternals.html#xmlSchemaTypeType">xmlSchemaTypeType</a>	type	: The kind of type
     <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name
     <a href="libxml-schemasInternals.html#xmlSchemaAnnotPtr">xmlSchemaAnnotPtr</a>	annot
     <a href="libxml-tree.html#xmlChar">xmlChar</a> *	identifier
-}</pre><br /><pre class="programlisting">Typedef <a href="libxml-schemasInternals.html#xmlSchemaFacet">xmlSchemaFacet</a> * <a name="xmlSchemaFacetPtr" id="xmlSchemaFacetPtr">xmlSchemaFacetPtr</a>
-
-</pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANYATTR_STRICT">XML_SCHEMAS_ANYATTR_STRICT</a>
-
-</pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_PRESERVE">XML_SCHEMAS_FACET_PRESERVE</a>
-
-</pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANYATTR_SKIP">XML_SCHEMAS_ANYATTR_SKIP</a>
-
-</pre><pre class="programlisting">Typedef <a href="libxml-schemasInternals.html#xmlSchemaVal">xmlSchemaVal</a> * <a name="xmlSchemaValPtr" id="xmlSchemaValPtr">xmlSchemaValPtr</a>
-
-</pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ANYATTR_LAX">XML_SCHEMAS_ANYATTR_LAX</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlSchemaAttributeGroup" id="xmlSchemaAttributeGroup">xmlSchemaAttributeGroup</a><br />struct _xmlSchemaAttributeGroup {
-    <a href="libxml-schemasInternals.html#xmlSchemaTypeType">xmlSchemaTypeType</a>	type	: The kind of type
-    struct _xmlSchemaAttribute *	next	: the next <a href="libxml-SAX.html#attribute">attribute</a> if in a group ...
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	id
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	ref
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	refNs
-    <a href="libxml-schemasInternals.html#xmlSchemaAnnotPtr">xmlSchemaAnnotPtr</a>	annot
-    <a href="libxml-schemasInternals.html#xmlSchemaAttributePtr">xmlSchemaAttributePtr</a>	attributes
-    <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	node
-}</pre><br /><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_NILLABLE">XML_SCHEMAS_ELEM_NILLABLE</a>
-
-</pre><pre class="programlisting">Typedef <a href="libxml-schemasInternals.html#xmlSchemaType">xmlSchemaType</a> * <a name="xmlSchemaTypePtr" id="xmlSchemaTypePtr">xmlSchemaTypePtr</a>
-
-</pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_GLOBAL">XML_SCHEMAS_ELEM_GLOBAL</a>
-
-</pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_TOPLEVEL">XML_SCHEMAS_ELEM_TOPLEVEL</a>
-
-</pre><pre class="programlisting">Typedef <a href="libxml-schemasInternals.html#xmlSchemaAttribute">xmlSchemaAttribute</a> * <a name="xmlSchemaAttributePtr" id="xmlSchemaAttributePtr">xmlSchemaAttributePtr</a>
-
-</pre><pre class="programlisting">Typedef <a href="libxml-schemasInternals.html#xmlSchemaAnnot">xmlSchemaAnnot</a> * <a name="xmlSchemaAnnotPtr" id="xmlSchemaAnnotPtr">xmlSchemaAnnotPtr</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlSchemaVal" id="xmlSchemaVal">xmlSchemaVal</a><br />struct _xmlSchemaVal {
+}</pre><h3><a name="xmlSchemaAnnot" id="xmlSchemaAnnot">Structure xmlSchemaAnnot</a></h3><pre class="programlisting">Structure xmlSchemaAnnot<br />struct _xmlSchemaAnnot {
+    struct _xmlSchemaAnnot *	next
+    <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	content	: the annotation
+}</pre><h3><a name="xmlSchemaVal" id="xmlSchemaVal">Structure xmlSchemaVal</a></h3><pre class="programlisting">Structure xmlSchemaVal<br />struct _xmlSchemaVal {
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">#define <a href="#XML_SCHEMAS_TYPE_MIXED">XML_SCHEMAS_TYPE_MIXED</a>
-
-</pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_ABSTRACT">XML_SCHEMAS_ELEM_ABSTRACT</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlSchemaFacet" id="xmlSchemaFacet">xmlSchemaFacet</a><br />struct _xmlSchemaFacet {
-    <a href="libxml-schemasInternals.html#xmlSchemaTypeType">xmlSchemaTypeType</a>	type	: The kind of type
-    struct _xmlSchemaFacet *	next	: the next type if in a sequence ...
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	value
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	id
-    <a href="libxml-schemasInternals.html#xmlSchemaAnnotPtr">xmlSchemaAnnotPtr</a>	annot
-    <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	node
-    int	fixed
-    int	whitespace
-    <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a>	val
-    <a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a>	regexp
-}</pre><br /><pre class="programlisting">#define <a href="#XML_SCHEMAS_QUALIF_ELEM">XML_SCHEMAS_QUALIF_ELEM</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlSchemaType" id="xmlSchemaType">xmlSchemaType</a><br />struct _xmlSchemaType {
-    <a href="libxml-schemasInternals.html#xmlSchemaTypeType">xmlSchemaTypeType</a>	type	: The kind of type
-    struct _xmlSchemaType *	next	: the next type if in a sequence ...
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	id
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	ref
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	refNs
-    <a href="libxml-schemasInternals.html#xmlSchemaAnnotPtr">xmlSchemaAnnotPtr</a>	annot
-    <a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a>	subtypes
-    <a href="libxml-schemasInternals.html#xmlSchemaAttributePtr">xmlSchemaAttributePtr</a>	attributes
-    <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	node
-    int	minOccurs
-    int	maxOccurs
-    int	flags
-    <a href="libxml-schemasInternals.html#xmlSchemaContentType">xmlSchemaContentType</a>	contentType
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	base
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	baseNs
-    <a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a>	baseType
-    <a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a>	facets
-}</pre><br /><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_REF">XML_SCHEMAS_ELEM_REF</a>
-
-</pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_ELEM_DEFAULT">XML_SCHEMAS_ELEM_DEFAULT</a>
-
-</pre><pre class="programlisting">#define <a href="#XML_SCHEMAS_FACET_REPLACE">XML_SCHEMAS_FACET_REPLACE</a>
-
-</pre><h2>Description</h2>
-<h3><a name="XML_SCHEMAS_QUALIF_ATTR" id="XML_SCHEMAS_QUALIF_ATTR"></a>Macro: XML_SCHEMAS_QUALIF_ATTR</h3><pre>#define XML_SCHEMAS_QUALIF_ATTR</pre><p>the shemas requires qualified attributes</p>
-<h3><a name="xmlSchemaFreeType" id="xmlSchemaFreeType"></a>Function: xmlSchemaFreeType</h3><pre class="programlisting">void	xmlSchemaFreeType	(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> type)<br />
+}</pre><h3><a name="xmlSchemaFreeType" id="xmlSchemaFreeType"></a>Function: xmlSchemaFreeType</h3><pre class="programlisting">void	xmlSchemaFreeType		(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> type)<br />
 </pre><p>Deallocate a Schema Type structure.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>a schema type structure</td></tr></tbody></table></div><h3><a name="XML_SCHEMAS_FACET_COLLAPSE" id="XML_SCHEMAS_FACET_COLLAPSE"></a>Macro: XML_SCHEMAS_FACET_COLLAPSE</h3><pre>#define XML_SCHEMAS_FACET_COLLAPSE</pre><p>collapse the types of the facet</p>
-
-      
-      
-    <h3><a name="XML_SCHEMAS_FACET_UNKNOWN" id="XML_SCHEMAS_FACET_UNKNOWN"></a>Macro: XML_SCHEMAS_FACET_UNKNOWN</h3><pre>#define XML_SCHEMAS_FACET_UNKNOWN</pre><p>unknown facet handling</p>
-
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="XML_SCHEMAS_ELEM_FIXED" id="XML_SCHEMAS_ELEM_FIXED"></a>Macro: XML_SCHEMAS_ELEM_FIXED</h3><pre>#define XML_SCHEMAS_ELEM_FIXED</pre><p>the element has a fixed value</p>
-
-      
-      
-      
-      
-    <h3><a name="XML_SCHEMAS_ANYATTR_STRICT" id="XML_SCHEMAS_ANYATTR_STRICT"></a>Macro: XML_SCHEMAS_ANYATTR_STRICT</h3><pre>#define XML_SCHEMAS_ANYATTR_STRICT</pre><p></p>
-<h3><a name="XML_SCHEMAS_FACET_PRESERVE" id="XML_SCHEMAS_FACET_PRESERVE"></a>Macro: XML_SCHEMAS_FACET_PRESERVE</h3><pre>#define XML_SCHEMAS_FACET_PRESERVE</pre><p>preserve the type of the facet</p>
-<h3><a name="XML_SCHEMAS_ANYATTR_SKIP" id="XML_SCHEMAS_ANYATTR_SKIP"></a>Macro: XML_SCHEMAS_ANYATTR_SKIP</h3><pre>#define XML_SCHEMAS_ANYATTR_SKIP</pre><p></p>
-<h3><a name="XML_SCHEMAS_ANYATTR_LAX" id="XML_SCHEMAS_ANYATTR_LAX"></a>Macro: XML_SCHEMAS_ANYATTR_LAX</h3><pre>#define XML_SCHEMAS_ANYATTR_LAX</pre><p></p>
-
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="XML_SCHEMAS_ELEM_NILLABLE" id="XML_SCHEMAS_ELEM_NILLABLE"></a>Macro: XML_SCHEMAS_ELEM_NILLABLE</h3><pre>#define XML_SCHEMAS_ELEM_NILLABLE</pre><p>the element is nillable</p>
-<h3><a name="XML_SCHEMAS_ELEM_GLOBAL" id="XML_SCHEMAS_ELEM_GLOBAL"></a>Macro: XML_SCHEMAS_ELEM_GLOBAL</h3><pre>#define XML_SCHEMAS_ELEM_GLOBAL</pre><p>the element is global</p>
-<h3><a name="XML_SCHEMAS_ELEM_TOPLEVEL" id="XML_SCHEMAS_ELEM_TOPLEVEL"></a>Macro: XML_SCHEMAS_ELEM_TOPLEVEL</h3><pre>#define XML_SCHEMAS_ELEM_TOPLEVEL</pre><p>the element is top level</p>
-<h3><a name="XML_SCHEMAS_TYPE_MIXED" id="XML_SCHEMAS_TYPE_MIXED"></a>Macro: XML_SCHEMAS_TYPE_MIXED</h3><pre>#define XML_SCHEMAS_TYPE_MIXED</pre><p>the element content type is mixed</p>
-<h3><a name="XML_SCHEMAS_ELEM_ABSTRACT" id="XML_SCHEMAS_ELEM_ABSTRACT"></a>Macro: XML_SCHEMAS_ELEM_ABSTRACT</h3><pre>#define XML_SCHEMAS_ELEM_ABSTRACT</pre><p>the element is abstract</p>
-
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="XML_SCHEMAS_QUALIF_ELEM" id="XML_SCHEMAS_QUALIF_ELEM"></a>Macro: XML_SCHEMAS_QUALIF_ELEM</h3><pre>#define XML_SCHEMAS_QUALIF_ELEM</pre><p>the shemas requires qualified elements</p>
-
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="XML_SCHEMAS_ELEM_REF" id="XML_SCHEMAS_ELEM_REF"></a>Macro: XML_SCHEMAS_ELEM_REF</h3><pre>#define XML_SCHEMAS_ELEM_REF</pre><p>the element is a <a href="libxml-SAX.html#reference">reference</a> to a type</p>
-<h3><a name="XML_SCHEMAS_ELEM_DEFAULT" id="XML_SCHEMAS_ELEM_DEFAULT"></a>Macro: XML_SCHEMAS_ELEM_DEFAULT</h3><pre>#define XML_SCHEMAS_ELEM_DEFAULT</pre><p>the element has a default value</p>
-<h3><a name="XML_SCHEMAS_FACET_REPLACE" id="XML_SCHEMAS_FACET_REPLACE"></a>Macro: XML_SCHEMAS_FACET_REPLACE</h3><pre>#define XML_SCHEMAS_FACET_REPLACE</pre><p>replace the type of the facet</p>
-<p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>a schema type structure</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-threads.html b/doc/html/libxml-threads.html
index 701c82c..a0d8dad 100644
--- a/doc/html/libxml-threads.html
+++ b/doc/html/libxml-threads.html
@@ -10,58 +10,60 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module threads from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module threads from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-schemasInternals.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-schemasInternals.html">schemasInternals</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-tree.html">tree</a></th><td><a accesskey="n" href="libxml-tree.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>set of generic threading related routines should work with pthreads, Windows native or TLS threads </p><h2>Table of Contents</h2><pre class="programlisting">Typedef <a href="libxml-threads.html#xmlRMutex">xmlRMutex</a> * <a name="xmlRMutexPtr" id="xmlRMutexPtr">xmlRMutexPtr</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlFreeRMutex">xmlFreeRMutex</a>	(<a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a> tok)<br />
-</pre><pre class="programlisting">int	<a href="#xmlGetThreadId">xmlGetThreadId</a>	(void)<br />
+    </style><title>Module threads from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module threads from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-schemasInternals.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-schemasInternals.html">schemasInternals</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-tree.html">tree</a></th><td><a accesskey="n" href="libxml-tree.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>set of generic threading related routines should work with pthreads, Windows native or TLS threads </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xmlMutex">xmlMutex</a><br />struct _xmlMutex
+The content of this structure is not made public by the API.
 </pre><pre class="programlisting">Typedef <a href="libxml-threads.html#xmlMutex">xmlMutex</a> * <a name="xmlMutexPtr" id="xmlMutexPtr">xmlMutexPtr</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlRMutex" id="xmlRMutex">xmlRMutex</a><br />struct _xmlRMutex {
+</pre><pre class="programlisting">Structure <a href="#xmlRMutex">xmlRMutex</a><br />struct _xmlRMutex
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">void	<a href="#xmlFreeMutex">xmlFreeMutex</a>	(<a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a> tok)<br />
-</pre><pre class="programlisting">void	<a href="#xmlCleanupThreads">xmlCleanupThreads</a>	(void)<br />
-</pre><pre class="programlisting">void	<a href="#xmlMutexUnlock">xmlMutexUnlock</a>	(<a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a> tok)<br />
-</pre><pre class="programlisting"><a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a>	<a href="#xmlNewRMutex">xmlNewRMutex</a>	(void)<br />
-</pre><pre class="programlisting">void	<a href="#xmlMutexLock">xmlMutexLock</a>	(<a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a> tok)<br />
-</pre><pre class="programlisting">int	<a href="#xmlIsMainThread">xmlIsMainThread</a>	(void)<br />
-</pre><pre class="programlisting">void	<a href="#xmlRMutexUnlock">xmlRMutexUnlock</a>	(<a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a> tok)<br />
-</pre><pre class="programlisting"><a href="libxml-globals.html#xmlGlobalStatePtr">xmlGlobalStatePtr</a>	<a href="#xmlGetGlobalState">xmlGetGlobalState</a>	(void)<br />
-</pre><pre class="programlisting"><a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a>	<a href="#xmlNewMutex">xmlNewMutex</a>	(void)<br />
-</pre><pre class="programlisting">Structure <a name="xmlMutex" id="xmlMutex">xmlMutex</a><br />struct _xmlMutex {
+</pre><pre class="programlisting">Typedef <a href="libxml-threads.html#xmlRMutex">xmlRMutex</a> * <a name="xmlRMutexPtr" id="xmlRMutexPtr">xmlRMutexPtr</a>
+</pre><pre class="programlisting">void	<a href="#xmlCleanupThreads">xmlCleanupThreads</a>		(void)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeMutex">xmlFreeMutex</a>			(<a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a> tok)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeRMutex">xmlFreeRMutex</a>			(<a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a> tok)</pre>
+<pre class="programlisting"><a href="libxml-globals.html#xmlGlobalStatePtr">xmlGlobalStatePtr</a>	<a href="#xmlGetGlobalState">xmlGetGlobalState</a>	(void)</pre>
+<pre class="programlisting">int	<a href="#xmlGetThreadId">xmlGetThreadId</a>			(void)</pre>
+<pre class="programlisting">void	<a href="#xmlInitThreads">xmlInitThreads</a>			(void)</pre>
+<pre class="programlisting">int	<a href="#xmlIsMainThread">xmlIsMainThread</a>			(void)</pre>
+<pre class="programlisting">void	<a href="#xmlLockLibrary">xmlLockLibrary</a>			(void)</pre>
+<pre class="programlisting">void	<a href="#xmlMutexLock">xmlMutexLock</a>			(<a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a> tok)</pre>
+<pre class="programlisting">void	<a href="#xmlMutexUnlock">xmlMutexUnlock</a>			(<a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a> tok)</pre>
+<pre class="programlisting"><a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a>	<a href="#xmlNewMutex">xmlNewMutex</a>		(void)</pre>
+<pre class="programlisting"><a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a>	<a href="#xmlNewRMutex">xmlNewRMutex</a>		(void)</pre>
+<pre class="programlisting">void	<a href="#xmlRMutexLock">xmlRMutexLock</a>			(<a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a> tok)</pre>
+<pre class="programlisting">void	<a href="#xmlRMutexUnlock">xmlRMutexUnlock</a>			(<a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a> tok)</pre>
+<pre class="programlisting">void	<a href="#xmlUnlockLibrary">xmlUnlockLibrary</a>		(void)</pre>
+<h2>Description</h2>
+<h3><a name="xmlMutex" id="xmlMutex">Structure xmlMutex</a></h3><pre class="programlisting">Structure xmlMutex<br />struct _xmlMutex {
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">void	<a href="#xmlInitThreads">xmlInitThreads</a>	(void)<br />
-</pre><pre class="programlisting">void	<a href="#xmlUnlockLibrary">xmlUnlockLibrary</a>	(void)<br />
-</pre><pre class="programlisting">void	<a href="#xmlLockLibrary">xmlLockLibrary</a>	(void)<br />
-</pre><pre class="programlisting">void	<a href="#xmlRMutexLock">xmlRMutexLock</a>	(<a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a> tok)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlFreeRMutex" id="xmlFreeRMutex"></a>Function: xmlFreeRMutex</h3><pre class="programlisting">void	xmlFreeRMutex	(<a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a> tok)<br />
+}</pre><h3><a name="xmlRMutex" id="xmlRMutex">Structure xmlRMutex</a></h3><pre class="programlisting">Structure xmlRMutex<br />struct _xmlRMutex {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlFreeRMutex" id="xmlFreeRMutex"></a>Function: xmlFreeRMutex</h3><pre class="programlisting">void	xmlFreeRMutex			(<a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a> tok)<br />
 </pre><p>xmlRFreeMutex() is used to reclaim resources associated with a reentrant mutex.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tok</tt></i>:</span></td><td>the reentrant mutex</td></tr></tbody></table></div><h3><a name="xmlGetThreadId" id="xmlGetThreadId"></a>Function: xmlGetThreadId</h3><pre class="programlisting">int	xmlGetThreadId	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tok</tt></i>:</span></td><td>the reentrant mutex</td></tr></tbody></table></div><h3><a name="xmlGetThreadId" id="xmlGetThreadId"></a>Function: xmlGetThreadId</h3><pre class="programlisting">int	xmlGetThreadId			(void)<br />
 </pre><p>xmlGetThreadId() find the current thread ID number</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current thread ID number</td></tr></tbody></table></div><h3><a name="xmlFreeMutex" id="xmlFreeMutex"></a>Function: xmlFreeMutex</h3><pre class="programlisting">void	xmlFreeMutex	(<a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a> tok)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current thread ID number</td></tr></tbody></table></div><h3><a name="xmlFreeMutex" id="xmlFreeMutex"></a>Function: xmlFreeMutex</h3><pre class="programlisting">void	xmlFreeMutex			(<a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a> tok)<br />
 </pre><p>xmlFreeMutex() is used to reclaim resources associated with a libxml2 token struct.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tok</tt></i>:</span></td><td>the simple mutex</td></tr></tbody></table></div><h3><a name="xmlCleanupThreads" id="xmlCleanupThreads"></a>Function: xmlCleanupThreads</h3><pre class="programlisting">void	xmlCleanupThreads	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tok</tt></i>:</span></td><td>the simple mutex</td></tr></tbody></table></div><h3><a name="xmlCleanupThreads" id="xmlCleanupThreads"></a>Function: xmlCleanupThreads</h3><pre class="programlisting">void	xmlCleanupThreads		(void)<br />
 </pre><p>xmlCleanupThreads() is used to to cleanup all the thread related data of the libxml2 library once processing has ended.</p>
-<h3><a name="xmlMutexUnlock" id="xmlMutexUnlock"></a>Function: xmlMutexUnlock</h3><pre class="programlisting">void	xmlMutexUnlock	(<a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a> tok)<br />
+<h3><a name="xmlMutexUnlock" id="xmlMutexUnlock"></a>Function: xmlMutexUnlock</h3><pre class="programlisting">void	xmlMutexUnlock			(<a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a> tok)<br />
 </pre><p>xmlMutexUnlock() is used to unlock a libxml2 token.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tok</tt></i>:</span></td><td>the simple mutex</td></tr></tbody></table></div><h3><a name="xmlNewRMutex" id="xmlNewRMutex"></a>Function: xmlNewRMutex</h3><pre class="programlisting"><a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a>	xmlNewRMutex	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tok</tt></i>:</span></td><td>the simple mutex</td></tr></tbody></table></div><h3><a name="xmlNewRMutex" id="xmlNewRMutex"></a>Function: xmlNewRMutex</h3><pre class="programlisting"><a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a>	xmlNewRMutex		(void)<br />
 </pre><p>xmlRNewMutex() is used to allocate a reentrant mutex for use in synchronizing access to data. token_r is a re-entrant lock and thus useful for synchronizing access to data structures that may be manipulated in a recursive fashion.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new reentrant mutex pointer or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlMutexLock" id="xmlMutexLock"></a>Function: xmlMutexLock</h3><pre class="programlisting">void	xmlMutexLock	(<a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a> tok)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new reentrant mutex pointer or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlMutexLock" id="xmlMutexLock"></a>Function: xmlMutexLock</h3><pre class="programlisting">void	xmlMutexLock			(<a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a> tok)<br />
 </pre><p>xmlMutexLock() is used to lock a libxml2 token.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tok</tt></i>:</span></td><td>the simple mutex</td></tr></tbody></table></div><h3><a name="xmlIsMainThread" id="xmlIsMainThread"></a>Function: xmlIsMainThread</h3><pre class="programlisting">int	xmlIsMainThread	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tok</tt></i>:</span></td><td>the simple mutex</td></tr></tbody></table></div><h3><a name="xmlIsMainThread" id="xmlIsMainThread"></a>Function: xmlIsMainThread</h3><pre class="programlisting">int	xmlIsMainThread			(void)<br />
 </pre><p>xmlIsMainThread() check whether the current thread is the main thread.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the current thread is the main thread, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlRMutexUnlock" id="xmlRMutexUnlock"></a>Function: xmlRMutexUnlock</h3><pre class="programlisting">void	xmlRMutexUnlock	(<a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a> tok)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the current thread is the main thread, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlRMutexUnlock" id="xmlRMutexUnlock"></a>Function: xmlRMutexUnlock</h3><pre class="programlisting">void	xmlRMutexUnlock			(<a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a> tok)<br />
 </pre><p>xmlRMutexUnlock() is used to unlock a libxml2 token_r.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tok</tt></i>:</span></td><td>the reentrant mutex</td></tr></tbody></table></div><h3><a name="xmlGetGlobalState" id="xmlGetGlobalState"></a>Function: xmlGetGlobalState</h3><pre class="programlisting"><a href="libxml-globals.html#xmlGlobalStatePtr">xmlGlobalStatePtr</a>	xmlGetGlobalState	(void)<br />
 </pre><p>xmlGetGlobalState() is called to retrieve the global state for a thread.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the thread global state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlNewMutex" id="xmlNewMutex"></a>Function: xmlNewMutex</h3><pre class="programlisting"><a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a>	xmlNewMutex	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the thread global state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlNewMutex" id="xmlNewMutex"></a>Function: xmlNewMutex</h3><pre class="programlisting"><a href="libxml-threads.html#xmlMutexPtr">xmlMutexPtr</a>	xmlNewMutex		(void)<br />
 </pre><p>xmlNewMutex() is used to allocate a libxml2 token struct for use in synchronizing access to data.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new simple mutex pointer or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlInitThreads" id="xmlInitThreads"></a>Function: xmlInitThreads</h3><pre class="programlisting">void	xmlInitThreads	(void)<br />
-</pre><p>xmlInitThreads() is used to to initialize all the thread related data of the libxml2 library.</p>
-<h3><a name="xmlUnlockLibrary" id="xmlUnlockLibrary"></a>Function: xmlUnlockLibrary</h3><pre class="programlisting">void	xmlUnlockLibrary	(void)<br />
-</pre><p>xmlUnlockLibrary() is used to release a re-entrant lock on the libxml2 library.</p>
-<h3><a name="xmlLockLibrary" id="xmlLockLibrary"></a>Function: xmlLockLibrary</h3><pre class="programlisting">void	xmlLockLibrary	(void)<br />
-</pre><p>xmlLockLibrary() is used to take out a re-entrant lock on the libxml2 library.</p>
-<h3><a name="xmlRMutexLock" id="xmlRMutexLock"></a>Function: xmlRMutexLock</h3><pre class="programlisting">void	xmlRMutexLock	(<a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a> tok)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new simple mutex pointer or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlRMutexLock" id="xmlRMutexLock"></a>Function: xmlRMutexLock</h3><pre class="programlisting">void	xmlRMutexLock			(<a href="libxml-threads.html#xmlRMutexPtr">xmlRMutexPtr</a> tok)<br />
 </pre><p>xmlRMutexLock() is used to lock a libxml2 token_r.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tok</tt></i>:</span></td><td>the reentrant mutex</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tok</tt></i>:</span></td><td>the reentrant mutex</td></tr></tbody></table></div><h3><a name="xmlInitThreads" id="xmlInitThreads"></a>Function: xmlInitThreads</h3><pre class="programlisting">void	xmlInitThreads			(void)<br />
+</pre><p>xmlInitThreads() is used to to initialize all the thread related data of the libxml2 library.</p>
+<h3><a name="xmlUnlockLibrary" id="xmlUnlockLibrary"></a>Function: xmlUnlockLibrary</h3><pre class="programlisting">void	xmlUnlockLibrary		(void)<br />
+</pre><p>xmlUnlockLibrary() is used to release a re-entrant lock on the libxml2 library.</p>
+<h3><a name="xmlLockLibrary" id="xmlLockLibrary"></a>Function: xmlLockLibrary</h3><pre class="programlisting">void	xmlLockLibrary			(void)<br />
+</pre><p>xmlLockLibrary() is used to take out a re-entrant lock on the libxml2 library.</p>
+<p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-tree.html b/doc/html/libxml-tree.html
index 108e2c3..8d7df3b 100644
--- a/doc/html/libxml-tree.html
+++ b/doc/html/libxml-tree.html
@@ -10,25 +10,235 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module tree from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module tree from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-threads.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-threads.html">threads</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-uri.html">uri</a></th><td><a accesskey="n" href="libxml-uri.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this module describes the structures found in an tree resulting from an XML or HTML parsing, as well as the API provided for various processing on that tree </p><h2>Table of Contents</h2><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewDocRawNode">xmlNewDocRawNode</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">Structure <a name="xmlElementContent" id="xmlElementContent">xmlElementContent</a><br />struct _xmlElementContent {
-    <a href="libxml-tree.html#xmlElementContentType">xmlElementContentType</a>	type	: PCDATA, ELEMENT, SEQ or OR
-    <a href="libxml-tree.html#xmlElementContentOccur">xmlElementContentOccur</a>	ocur	: ONCE, OPT, MULT or PLUS
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: Element name
-    struct _xmlElementContent *	c1	: first child
-    struct _xmlElementContent *	c2	: second child
-    struct _xmlElementContent *	parent	: parent
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	prefix	: Namespace prefix
-}</pre><br /><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlGetProp">xmlGetProp</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlNewNsPropEatName">xmlNewNsPropEatName</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+    </style><title>Module tree from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module tree from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-threads.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-threads.html">threads</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-uri.html">uri</a></th><td><a accesskey="n" href="libxml-uri.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>this module describes the structures found in an tree resulting from an XML or HTML parsing, as well as the API provided for various processing on that tree </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#BAD_CAST">BAD_CAST</a></pre><pre class="programlisting">#define <a href="#BASE_BUFFER_SIZE">BASE_BUFFER_SIZE</a></pre><pre class="programlisting">#define <a href="#XML_GET_CONTENT">XML_GET_CONTENT</a></pre><pre class="programlisting">#define <a href="#XML_GET_LINE">XML_GET_LINE</a></pre><pre class="programlisting">#define <a href="#XML_LOCAL_NAMESPACE">XML_LOCAL_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#XML_XML_NAMESPACE">XML_XML_NAMESPACE</a></pre><pre class="programlisting">#define <a href="#xmlChildrenNode">xmlChildrenNode</a></pre><pre class="programlisting">#define <a href="#xmlRootNode">xmlRootNode</a></pre><pre class="programlisting">Structure <a href="#xmlAttr">xmlAttr</a><br />struct _xmlAttr
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlAttr">xmlAttr</a> * <a name="xmlAttrPtr" id="xmlAttrPtr">xmlAttrPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlAttribute">xmlAttribute</a><br />struct _xmlAttribute
+</pre><pre class="programlisting">Enum <a href="#xmlAttributeDefault">xmlAttributeDefault</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlAttribute">xmlAttribute</a> * <a name="xmlAttributePtr" id="xmlAttributePtr">xmlAttributePtr</a>
+</pre><pre class="programlisting">Enum <a href="#xmlAttributeType">xmlAttributeType</a>
+</pre><pre class="programlisting">Structure <a href="#xmlBuffer">xmlBuffer</a><br />struct _xmlBuffer
+</pre><pre class="programlisting">Enum <a href="#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a> * <a name="xmlBufferPtr" id="xmlBufferPtr">xmlBufferPtr</a>
+</pre><pre class="programlisting">Typedef unsigned char <a name="xmlChar" id="xmlChar">xmlChar</a>
+</pre><pre class="programlisting">Structure <a href="#xmlDoc">xmlDoc</a><br />struct _xmlDoc
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlDoc">xmlDoc</a> * <a name="xmlDocPtr" id="xmlDocPtr">xmlDocPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlDtd">xmlDtd</a><br />struct _xmlDtd
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlDtd">xmlDtd</a> * <a name="xmlDtdPtr" id="xmlDtdPtr">xmlDtdPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlElement">xmlElement</a><br />struct _xmlElement
+</pre><pre class="programlisting">Structure <a href="#xmlElementContent">xmlElementContent</a><br />struct _xmlElementContent
+</pre><pre class="programlisting">Enum <a href="#xmlElementContentOccur">xmlElementContentOccur</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlElementContent">xmlElementContent</a> * <a name="xmlElementContentPtr" id="xmlElementContentPtr">xmlElementContentPtr</a>
+</pre><pre class="programlisting">Enum <a href="#xmlElementContentType">xmlElementContentType</a>
 </pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlElement">xmlElement</a> * <a name="xmlElementPtr" id="xmlElementPtr">xmlElementPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlDocCopyNode">xmlDocCopyNode</a>	(const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 int recursive)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlStringGetNodeList">xmlStringGetNodeList</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">void	<a href="#xmlBufferWriteCHAR">xmlBufferWriteCHAR</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string)<br />
-</pre><pre class="programlisting">#define <a href="#BAD_CAST">BAD_CAST</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlElement" id="xmlElement">xmlElement</a><br />struct _xmlElement {
+</pre><pre class="programlisting">Enum <a href="#xmlElementType">xmlElementType</a>
+</pre><pre class="programlisting">Enum <a href="#xmlElementTypeVal">xmlElementTypeVal</a>
+</pre><pre class="programlisting">Structure <a href="#xmlEntity">xmlEntity</a><br />struct _xmlEntity
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlEntity">xmlEntity</a> * <a name="xmlEntityPtr" id="xmlEntityPtr">xmlEntityPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlEnumeration">xmlEnumeration</a><br />struct _xmlEnumeration
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlEnumeration">xmlEnumeration</a> * <a name="xmlEnumerationPtr" id="xmlEnumerationPtr">xmlEnumerationPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlID">xmlID</a><br />struct _xmlID
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlID">xmlID</a> * <a name="xmlIDPtr" id="xmlIDPtr">xmlIDPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlNode">xmlNode</a><br />struct _xmlNode
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlNode">xmlNode</a> * <a name="xmlNodePtr" id="xmlNodePtr">xmlNodePtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlNotation">xmlNotation</a><br />struct _xmlNotation
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlNotation">xmlNotation</a> * <a name="xmlNotationPtr" id="xmlNotationPtr">xmlNotationPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlNs">xmlNs</a><br />struct _xmlNs
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlNs">xmlNs</a> * <a name="xmlNsPtr" id="xmlNsPtr">xmlNsPtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlElementType">xmlElementType</a> <a name="xmlNsType" id="xmlNsType">xmlNsType</a>
+</pre><pre class="programlisting">Structure <a href="#xmlOutputBuffer">xmlOutputBuffer</a><br />struct _xmlOutputBuffer
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlOutputBuffer">xmlOutputBuffer</a> * <a name="xmlOutputBufferPtr" id="xmlOutputBufferPtr">xmlOutputBufferPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlParserCtxt">xmlParserCtxt</a><br />struct _xmlParserCtxt
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserCtxt">xmlParserCtxt</a> * <a name="xmlParserCtxtPtr" id="xmlParserCtxtPtr">xmlParserCtxtPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlParserInput">xmlParserInput</a><br />struct _xmlParserInput
+</pre><pre class="programlisting">Structure <a href="#xmlParserInputBuffer">xmlParserInputBuffer</a><br />struct _xmlParserInputBuffer
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserInputBuffer">xmlParserInputBuffer</a> * <a name="xmlParserInputBufferPtr" id="xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserInput">xmlParserInput</a> * <a name="xmlParserInputPtr" id="xmlParserInputPtr">xmlParserInputPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlRef">xmlRef</a><br />struct _xmlRef
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlRef">xmlRef</a> * <a name="xmlRefPtr" id="xmlRefPtr">xmlRefPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlSAXHandler">xmlSAXHandler</a><br />struct _xmlSAXHandler
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> * <a name="xmlSAXHandlerPtr" id="xmlSAXHandlerPtr">xmlSAXHandlerPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlSAXLocator">xmlSAXLocator</a><br />struct _xmlSAXLocator
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlSAXLocator">xmlSAXLocator</a> * <a name="xmlSAXLocatorPtr" id="xmlSAXLocatorPtr">xmlSAXLocatorPtr</a>
+</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlAddChild">xmlAddChild</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlAddChildList">xmlAddChildList</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlAddNextSibling">xmlAddNextSibling</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlAddPrevSibling">xmlAddPrevSibling</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlAddSibling">xmlAddSibling</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)</pre>
+<pre class="programlisting">void	<a href="#xmlBufferAdd">xmlBufferAdd</a>			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 int len)</pre>
+<pre class="programlisting">void	<a href="#xmlBufferAddHead">xmlBufferAddHead</a>		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 int len)</pre>
+<pre class="programlisting">void	<a href="#xmlBufferCCat">xmlBufferCCat</a>			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 const char * str)</pre>
+<pre class="programlisting">void	<a href="#xmlBufferCat">xmlBufferCat</a>			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlBufferContent">xmlBufferContent</a>	(const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	<a href="#xmlBufferCreate">xmlBufferCreate</a>		(void)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	<a href="#xmlBufferCreateSize">xmlBufferCreateSize</a>	(size_t size)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	<a href="#xmlBufferCreateStatic">xmlBufferCreateStatic</a>	(void * mem, <br />					 size_t size)</pre>
+<pre class="programlisting">int	<a href="#xmlBufferDump">xmlBufferDump</a>			(FILE * file, <br />					 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)</pre>
+<pre class="programlisting">void	<a href="#xmlBufferEmpty">xmlBufferEmpty</a>			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)</pre>
+<pre class="programlisting">void	<a href="#xmlBufferFree">xmlBufferFree</a>			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)</pre>
+<pre class="programlisting">int	<a href="#xmlBufferGrow">xmlBufferGrow</a>			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 unsigned int len)</pre>
+<pre class="programlisting">int	<a href="#xmlBufferLength">xmlBufferLength</a>			(const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)</pre>
+<pre class="programlisting">int	<a href="#xmlBufferResize">xmlBufferResize</a>			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 unsigned int size)</pre>
+<pre class="programlisting">void	<a href="#xmlBufferSetAllocationScheme">xmlBufferSetAllocationScheme</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme)</pre>
+<pre class="programlisting">int	<a href="#xmlBufferShrink">xmlBufferShrink</a>			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 unsigned int len)</pre>
+<pre class="programlisting">void	<a href="#xmlBufferWriteCHAR">xmlBufferWriteCHAR</a>		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string)</pre>
+<pre class="programlisting">void	<a href="#xmlBufferWriteChar">xmlBufferWriteChar</a>		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 const char * string)</pre>
+<pre class="programlisting">void	<a href="#xmlBufferWriteQuotedString">xmlBufferWriteQuotedString</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlBuildQName">xmlBuildQName</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ncname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * memory, <br />					 int len)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlCopyDoc">xmlCopyDoc</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 int recursive)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	<a href="#xmlCopyDtd">xmlCopyDtd</a>		(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#xmlCopyNamespace">xmlCopyNamespace</a>	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#xmlCopyNamespaceList">xmlCopyNamespaceList</a>	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlCopyNode">xmlCopyNode</a>		(const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 int recursive)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlCopyNodeList">xmlCopyNodeList</a>		(const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlCopyProp">xmlCopyProp</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlCopyPropList">xmlCopyPropList</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	<a href="#xmlCreateIntSubset">xmlCreateIntSubset</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlDocCopyNode">xmlDocCopyNode</a>		(const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 int recursive)</pre>
+<pre class="programlisting">int	<a href="#xmlDocDump">xmlDocDump</a>			(FILE * f, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)</pre>
+<pre class="programlisting">void	<a href="#xmlDocDumpFormatMemory">xmlDocDumpFormatMemory</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** mem, <br />					 int * size, <br />					 int format)</pre>
+<pre class="programlisting">void	<a href="#xmlDocDumpFormatMemoryEnc">xmlDocDumpFormatMemoryEnc</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** doc_txt_ptr, <br />					 int * doc_txt_len, <br />					 const char * txt_encoding, <br />					 int format)</pre>
+<pre class="programlisting">void	<a href="#xmlDocDumpMemory">xmlDocDumpMemory</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** mem, <br />					 int * size)</pre>
+<pre class="programlisting">void	<a href="#xmlDocDumpMemoryEnc">xmlDocDumpMemoryEnc</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** doc_txt_ptr, <br />					 int * doc_txt_len, <br />					 const char * txt_encoding)</pre>
+<pre class="programlisting">int	<a href="#xmlDocFormatDump">xmlDocFormatDump</a>		(FILE * f, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 int format)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlDocGetRootElement">xmlDocGetRootElement</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlDocSetRootElement">xmlDocSetRootElement</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> root)</pre>
+<pre class="programlisting">void	<a href="#xmlElemDump">xmlElemDump</a>			(FILE * f, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeDoc">xmlFreeDoc</a>			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeDtd">xmlFreeDtd</a>			(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> cur)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeNode">xmlFreeNode</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeNodeList">xmlFreeNodeList</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeNs">xmlFreeNs</a>			(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeNsList">xmlFreeNsList</a>			(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeProp">xmlFreeProp</a>			(<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)</pre>
+<pre class="programlisting">void	<a href="#xmlFreePropList">xmlFreePropList</a>			(<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a>	<a href="#xmlGetBufferAllocationScheme">xmlGetBufferAllocationScheme</a>	(void)</pre>
+<pre class="programlisting">int	<a href="#xmlGetCompressMode">xmlGetCompressMode</a>		(void)</pre>
+<pre class="programlisting">int	<a href="#xmlGetDocCompressMode">xmlGetDocCompressMode</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	<a href="#xmlGetIntSubset">xmlGetIntSubset</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlGetLastChild">xmlGetLastChild</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent)</pre>
+<pre class="programlisting">long	<a href="#xmlGetLineNo">xmlGetLineNo</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlGetNoNsProp">xmlGetNoNsProp</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlGetNodePath">xmlGetNodePath</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> *	<a href="#xmlGetNsList">xmlGetNsList</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlGetNsProp">xmlGetNsProp</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlGetProp">xmlGetProp</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlHasNsProp">xmlHasNsProp</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlHasProp">xmlHasProp</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">int	<a href="#xmlIsBlankNode">xmlIsBlankNode</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting">int	<a href="#xmlIsXHTML">xmlIsXHTML</a>			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicID)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewCDataBlock">xmlNewCDataBlock</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />					 int len)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewCharRef">xmlNewCharRef</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewChild">xmlNewChild</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewComment">xmlNewComment</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlNewDoc">xmlNewDoc</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * version)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewDocComment">xmlNewDocComment</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewDocFragment">xmlNewDocFragment</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewDocNode">xmlNewDocNode</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewDocNodeEatName">xmlNewDocNodeEatName</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlNewDocProp">xmlNewDocProp</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewDocRawNode">xmlNewDocRawNode</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewDocText">xmlNewDocText</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewDocTextLen">xmlNewDocTextLen</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />					 int len)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	<a href="#xmlNewDtd">xmlNewDtd</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#xmlNewGlobalNs">xmlNewGlobalNs</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewNode">xmlNewNode</a>		(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewNodeEatName">xmlNewNodeEatName</a>	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#xmlNewNs">xmlNewNs</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlNewNsProp">xmlNewNsProp</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlNewNsPropEatName">xmlNewNsPropEatName</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewPI">xmlNewPI</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlNewProp">xmlNewProp</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewReference">xmlNewReference</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewText">xmlNewText</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewTextChild">xmlNewTextChild</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewTextLen">xmlNewTextLen</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />					 int len)</pre>
+<pre class="programlisting">void	<a href="#xmlNodeAddContent">xmlNodeAddContent</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">void	<a href="#xmlNodeAddContentLen">xmlNodeAddContentLen</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#xmlNodeBufGetContent">xmlNodeBufGetContent</a>		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buffer, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting">int	<a href="#xmlNodeDump">xmlNodeDump</a>			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 int level, <br />					 int format)</pre>
+<pre class="programlisting">void	<a href="#xmlNodeDumpOutput">xmlNodeDumpOutput</a>		(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 int level, <br />					 int format, <br />					 const char * encoding)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNodeGetBase">xmlNodeGetBase</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNodeGetContent">xmlNodeGetContent</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNodeGetLang">xmlNodeGetLang</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting">int	<a href="#xmlNodeGetSpacePreserve">xmlNodeGetSpacePreserve</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting">int	<a href="#xmlNodeIsText">xmlNodeIsText</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNodeListGetRawString">xmlNodeListGetRawString</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list, <br />					 int inLine)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNodeListGetString">xmlNodeListGetString</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list, <br />					 int inLine)</pre>
+<pre class="programlisting">void	<a href="#xmlNodeSetBase">xmlNodeSetBase</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * uri)</pre>
+<pre class="programlisting">void	<a href="#xmlNodeSetContent">xmlNodeSetContent</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">void	<a href="#xmlNodeSetContentLen">xmlNodeSetContentLen</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />					 int len)</pre>
+<pre class="programlisting">void	<a href="#xmlNodeSetLang">xmlNodeSetLang</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * lang)</pre>
+<pre class="programlisting">void	<a href="#xmlNodeSetName">xmlNodeSetName</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">void	<a href="#xmlNodeSetSpacePreserve">xmlNodeSetSpacePreserve</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 int val)</pre>
+<pre class="programlisting">int	<a href="#xmlReconciliateNs">xmlReconciliateNs</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree)</pre>
+<pre class="programlisting">int	<a href="#xmlRemoveProp">xmlRemoveProp</a>			(<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlReplaceNode">xmlReplaceNode</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> old, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting">int	<a href="#xmlSaveFile">xmlSaveFile</a>			(const char * filename, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)</pre>
+<pre class="programlisting">int	<a href="#xmlSaveFileEnc">xmlSaveFileEnc</a>			(const char * filename, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding)</pre>
+<pre class="programlisting">int	<a href="#xmlSaveFileTo">xmlSaveFileTo</a>			(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding)</pre>
+<pre class="programlisting">int	<a href="#xmlSaveFormatFile">xmlSaveFormatFile</a>		(const char * filename, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 int format)</pre>
+<pre class="programlisting">int	<a href="#xmlSaveFormatFileEnc">xmlSaveFormatFileEnc</a>		(const char * filename, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding, <br />					 int format)</pre>
+<pre class="programlisting">int	<a href="#xmlSaveFormatFileTo">xmlSaveFormatFileTo</a>		(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding, <br />					 int format)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#xmlSearchNs">xmlSearchNs</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#xmlSearchNsByHref">xmlSearchNsByHref</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href)</pre>
+<pre class="programlisting">void	<a href="#xmlSetBufferAllocationScheme">xmlSetBufferAllocationScheme</a>	(<a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme)</pre>
+<pre class="programlisting">void	<a href="#xmlSetCompressMode">xmlSetCompressMode</a>		(int mode)</pre>
+<pre class="programlisting">void	<a href="#xmlSetDocCompressMode">xmlSetDocCompressMode</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 int mode)</pre>
+<pre class="programlisting">void	<a href="#xmlSetListDoc">xmlSetListDoc</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting">void	<a href="#xmlSetNs">xmlSetNs</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlSetNsProp">xmlSetNsProp</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlSetProp">xmlSetProp</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting">void	<a href="#xmlSetTreeDoc">xmlSetTreeDoc</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlSplitQName2">xmlSplitQName2</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** prefix)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlSplitQName3">xmlSplitQName3</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int * len)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlStringGetNodeList">xmlStringGetNodeList</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlStringLenGetNodeList">xmlStringLenGetNodeList</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#xmlTextConcat">xmlTextConcat</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />					 int len)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlTextMerge">xmlTextMerge</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> first, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> second)</pre>
+<pre class="programlisting">void	<a href="#xmlUnlinkNode">xmlUnlinkNode</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting">int	<a href="#xmlUnsetNsProp">xmlUnsetNsProp</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">int	<a href="#xmlUnsetProp">xmlUnsetProp</a>			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateNCName">xmlValidateNCName</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int space)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateNMToken">xmlValidateNMToken</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int space)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateName">xmlValidateName</a>			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int space)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateQName">xmlValidateQName</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int space)</pre>
+<h2>Description</h2>
+<h3><a name="XML_LOCAL_NAMESPACE" id="XML_LOCAL_NAMESPACE"></a>Macro: XML_LOCAL_NAMESPACE</h3><pre>#define XML_LOCAL_NAMESPACE</pre><p>A namespace declaration node.</p>
+<h3><a name="BAD_CAST" id="BAD_CAST"></a>Macro: BAD_CAST</h3><pre>#define BAD_CAST</pre><p>Macro to cast a string to an <a href="libxml-tree.html#xmlChar">xmlChar</a> * when one know its safe.</p>
+<h3><a name="XML_GET_CONTENT" id="XML_GET_CONTENT"></a>Macro: XML_GET_CONTENT</h3><pre>#define XML_GET_CONTENT</pre><p>Macro to extract the content pointer of a node.</p>
+<h3><a name="BASE_BUFFER_SIZE" id="BASE_BUFFER_SIZE"></a>Macro: BASE_BUFFER_SIZE</h3><pre>#define BASE_BUFFER_SIZE</pre><p>default buffer size 4000.</p>
+<h3><a name="xmlChildrenNode" id="xmlChildrenNode"></a>Macro: xmlChildrenNode</h3><pre>#define xmlChildrenNode</pre><p>Macro for compatibility naming layer with libxml1.</p>
+<h3><a name="xmlRootNode" id="xmlRootNode"></a>Macro: xmlRootNode</h3><pre>#define xmlRootNode</pre><p>Macro for compatibility naming layer with libxml1.</p>
+<h3><a name="XML_XML_NAMESPACE" id="XML_XML_NAMESPACE"></a>Macro: XML_XML_NAMESPACE</h3><pre>#define XML_XML_NAMESPACE</pre><p>This is the namespace for the special xml: prefix predefined in the XML Namespace specification.</p>
+<h3><a name="XML_GET_LINE" id="XML_GET_LINE"></a>Macro: XML_GET_LINE</h3><pre>#define XML_GET_LINE</pre><p>Macro to extract the line number of an element node. This will work only if line numbering is activated by calling xmlLineNumbersDefault(1) before parsing.</p>
+<h3><a name="xmlNs" id="xmlNs">Structure xmlNs</a></h3><pre class="programlisting">Structure xmlNs<br />struct _xmlNs {
+    struct _xmlNs *	next	: next Ns link for this node
+    <a href="libxml-tree.html#xmlNsType">xmlNsType</a>	type	: global or local
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	href	: URL for the namespace
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	prefix	: prefix for the namespace
+    void *	_private	: application data
+}</pre><h3><a name="xmlBuffer" id="xmlBuffer">Structure xmlBuffer</a></h3><pre class="programlisting">Structure xmlBuffer<br />struct _xmlBuffer {
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	content	: The buffer content UTF8
+    unsigned int	use	: The buffer size used
+    unsigned int	size	: The buffer size
+    <a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a>	alloc	: The realloc method
+}</pre><h3><a name="xmlParserInput" id="xmlParserInput">Structure xmlParserInput</a></h3><pre class="programlisting">Structure xmlParserInput<br />struct _xmlParserInput {
+    <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	buf	: UTF-8 encoded buffer
+    const char *	filename	: The file analyzed, if any
+    const char *	directory	: the directory/base of the file
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	base	: Base of the array to parse
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	cur	: Current char being parsed
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	end	: end of the array to parse
+    int	length	: length if known
+    int	line	: Current line
+    int	col	: * NOTE: consumed is only tested for equa
+    unsigned long	consumed	: How many xmlChars already consumed
+    <a href="libxml-parser.html#xmlParserInputDeallocate">xmlParserInputDeallocate</a>	free	: function to deallocate the base
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	encoding	: the encoding string for entity
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	version	: the version string for entity
+    int	standalone	: Was that entity marked standalone
+    int	id	: an unique identifier for the entity
+}</pre><h3><a name="xmlElement" id="xmlElement">Structure xmlElement</a></h3><pre class="programlisting">Structure xmlElement<br />struct _xmlElement {
     void *	_private	: application data
     <a href="libxml-tree.html#xmlElementType">xmlElementType</a>	type	: XML_ELEMENT_DECL, must be second !
     const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: Element name
@@ -44,21 +254,7 @@
     const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	prefix	: the namespace prefix if any
     <a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a>	contModel	: the validating regexp
     void *	contModel
-}</pre><br /><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNodeGetBase">xmlNodeGetBase</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlAttribute">xmlAttribute</a> * <a name="xmlAttributePtr" id="xmlAttributePtr">xmlAttributePtr</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlBufferEmpty">xmlBufferEmpty</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSaveFormatFile">xmlSaveFormatFile</a>	(const char * filename, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 int format)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewDocNodeEatName">xmlNewDocNodeEatName</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlAddSibling">xmlAddSibling</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewDocFragment">xmlNewDocFragment</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlDocGetRootElement">xmlDocGetRootElement</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">void	<a href="#xmlNodeAddContentLen">xmlNodeAddContentLen</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />				 int len)<br />
-</pre><pre class="programlisting">Structure <a name="xmlNotation" id="xmlNotation">xmlNotation</a><br />struct _xmlNotation {
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: Notation name
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	PublicID	: Public identifier, if any
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	SystemID	: System identifier, if any
-}</pre><br /><pre class="programlisting">Enum <a name="xmlElementType" id="xmlElementType">xmlElementType</a> {
+}</pre><h3><a name="xmlElementType" id="xmlElementType">xmlElementType</a></h3><pre class="programlisting">Enum xmlElementType {
     <a name="XML_ELEMENT_NODE" id="XML_ELEMENT_NODE">XML_ELEMENT_NODE</a> = 1
     <a name="XML_ATTRIBUTE_NODE" id="XML_ATTRIBUTE_NODE">XML_ATTRIBUTE_NODE</a> = 2
     <a name="XML_TEXT_NODE" id="XML_TEXT_NODE">XML_TEXT_NODE</a> = 3
@@ -81,245 +277,26 @@
     <a name="XML_XINCLUDE_END" id="XML_XINCLUDE_END">XML_XINCLUDE_END</a> = 20
     <a name="XML_DOCB_DOCUMENT_NODE" id="XML_DOCB_DOCUMENT_NODE">XML_DOCB_DOCUMENT_NODE</a> = 21
 }
-
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlNs">xmlNs</a> * <a name="xmlNsPtr" id="xmlNsPtr">xmlNsPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlValidateQName">xmlValidateQName</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 int space)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlHasNsProp">xmlHasNsProp</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlAddPrevSibling">xmlAddPrevSibling</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
-</pre><pre class="programlisting">void	<a href="#xmlBufferAddHead">xmlBufferAddHead</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 int len)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSetListDoc">xmlSetListDoc</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewPI">xmlNewPI</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">Enum <a name="xmlElementContentOccur" id="xmlElementContentOccur">xmlElementContentOccur</a> {
-    <a name="XML_ELEMENT_CONTENT_ONCE" id="XML_ELEMENT_CONTENT_ONCE">XML_ELEMENT_CONTENT_ONCE</a> = 1
-    <a name="XML_ELEMENT_CONTENT_OPT" id="XML_ELEMENT_CONTENT_OPT">XML_ELEMENT_CONTENT_OPT</a> = 2
-    <a name="XML_ELEMENT_CONTENT_MULT" id="XML_ELEMENT_CONTENT_MULT">XML_ELEMENT_CONTENT_MULT</a> = 3
-    <a name="XML_ELEMENT_CONTENT_PLUS" id="XML_ELEMENT_CONTENT_PLUS">XML_ELEMENT_CONTENT_PLUS</a> = 4
+</pre><h3><a name="xmlBufferAllocationScheme" id="xmlBufferAllocationScheme">xmlBufferAllocationScheme</a></h3><pre class="programlisting">Enum xmlBufferAllocationScheme {
+    <a name="XML_BUFFER_ALLOC_DOUBLEIT" id="XML_BUFFER_ALLOC_DOUBLEIT">XML_BUFFER_ALLOC_DOUBLEIT</a> = 1
+    <a name="XML_BUFFER_ALLOC_EXACT" id="XML_BUFFER_ALLOC_EXACT">XML_BUFFER_ALLOC_EXACT</a> = 2
+    <a name="XML_BUFFER_ALLOC_IMMUTABLE" id="XML_BUFFER_ALLOC_IMMUTABLE">XML_BUFFER_ALLOC_IMMUTABLE</a> = 3
 }
-
-</pre><pre class="programlisting">int	<a href="#xmlDocFormatDump">xmlDocFormatDump</a>	(FILE * f, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 int format)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlSetProp">xmlSetProp</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserInput">xmlParserInput</a> * <a name="xmlParserInputPtr" id="xmlParserInputPtr">xmlParserInputPtr</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlElemDump">xmlElemDump</a>	(FILE * f, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">Structure <a name="xmlID" id="xmlID">xmlID</a><br />struct _xmlID {
-    struct _xmlID *	next	: next ID
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	value	: The ID name
-    <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	attr	: The <a href="libxml-SAX.html#attribute">attribute</a> holding it
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: The <a href="libxml-SAX.html#attribute">attribute</a> if attr is not available
-    int	lineno	: The line number if attr is not availabl
-    struct _xmlDoc *	doc	: The document holding the ID
-}</pre><br /><pre class="programlisting">int	<a href="#xmlSaveFormatFileTo">xmlSaveFormatFileTo</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding, <br />				 int format)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	<a href="#xmlGetIntSubset">xmlGetIntSubset</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNodeBufGetContent">xmlNodeBufGetContent</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buffer, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">void	<a href="#xmlBufferFree">xmlBufferFree</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlReplaceNode">xmlReplaceNode</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> old, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewNode">xmlNewNode</a>	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSaveFileTo">xmlSaveFileTo</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlID">xmlID</a> * <a name="xmlIDPtr" id="xmlIDPtr">xmlIDPtr</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlAttribute" id="xmlAttribute">xmlAttribute</a><br />struct _xmlAttribute {
-    void *	_private	: application data
-    <a href="libxml-tree.html#xmlElementType">xmlElementType</a>	type	: XML_ATTRIBUTE_DECL, must be second !
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: Attribute name
-    struct _xmlNode *	children	: NULL
-    struct _xmlNode *	last	: NULL
-    struct _xmlDtd *	parent	: -&gt; DTD
-    struct _xmlNode *	next	: next sibling link
-    struct _xmlNode *	prev	: previous sibling link
-    struct _xmlDoc *	doc	: the containing document
-    struct _xmlAttribute *	nexth	: next in hash table
-    <a href="libxml-tree.html#xmlAttributeType">xmlAttributeType</a>	atype	: The <a href="libxml-SAX.html#attribute">attribute</a> type
-    <a href="libxml-tree.html#xmlAttributeDefault">xmlAttributeDefault</a>	def	: the default
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	defaultValue	: or the default value
-    <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	tree	: or the enumeration tree if any
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	prefix	: the namespace prefix if any
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	elem	: Element holding the <a href="libxml-SAX.html#attribute">attribute</a>
-}</pre><br /><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlSAXHandler">xmlSAXHandler</a> * <a name="xmlSAXHandlerPtr" id="xmlSAXHandlerPtr">xmlSAXHandlerPtr</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlNodeSetContent">xmlNodeSetContent</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">void	<a href="#xmlBufferAdd">xmlBufferAdd</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 int len)<br />
-</pre><pre class="programlisting">void	<a href="#xmlNodeDumpOutput">xmlNodeDumpOutput</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 int level, <br />				 int format, <br />				 const char * encoding)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#xmlCopyNamespace">xmlCopyNamespace</a>	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#xmlSearchNsByHref">xmlSearchNsByHref</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlAddChild">xmlAddChild</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">int	<a href="#xmlReconciliateNs">xmlReconciliateNs</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlSAXLocator">xmlSAXLocator</a> * <a name="xmlSAXLocatorPtr" id="xmlSAXLocatorPtr">xmlSAXLocatorPtr</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlParserInput" id="xmlParserInput">xmlParserInput</a><br />struct _xmlParserInput {
-    <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	buf	: UTF-8 encoded buffer
-    const char *	filename	: The file analyzed, if any
-    const char *	directory	: the directory/base of the file
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	base	: Base of the array to parse
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	cur	: Current char being parsed
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	end	: end of the array to parse
-    int	length	: length if known
-    int	line	: Current line
-    int	col	: * NOTE: consumed is only tested for equa
-    unsigned long	consumed	: How many xmlChars already consumed
-    <a href="libxml-parser.html#xmlParserInputDeallocate">xmlParserInputDeallocate</a>	free	: function to deallocate the base
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	encoding	: the encoding string for entity
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	version	: the version string for entity
-    int	standalone	: Was that entity marked standalone
-    int	id	: an unique identifier for the entity
-}</pre><br /><pre class="programlisting">#define <a href="#XML_GET_CONTENT">XML_GET_CONTENT</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlNodeSetName">xmlNodeSetName</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidateNCName">xmlValidateNCName</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 int space)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewDocComment">xmlNewDocComment</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">Structure <a name="xmlRef" id="xmlRef">xmlRef</a><br />struct _xmlRef {
+</pre><h3><a name="xmlElementContent" id="xmlElementContent">Structure xmlElementContent</a></h3><pre class="programlisting">Structure xmlElementContent<br />struct _xmlElementContent {
+    <a href="libxml-tree.html#xmlElementContentType">xmlElementContentType</a>	type	: PCDATA, ELEMENT, SEQ or OR
+    <a href="libxml-tree.html#xmlElementContentOccur">xmlElementContentOccur</a>	ocur	: ONCE, OPT, MULT or PLUS
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: Element name
+    struct _xmlElementContent *	c1	: first child
+    struct _xmlElementContent *	c2	: second child
+    struct _xmlElementContent *	parent	: parent
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	prefix	: Namespace prefix
+}</pre><h3><a name="xmlRef" id="xmlRef">Structure xmlRef</a></h3><pre class="programlisting">Structure xmlRef<br />struct _xmlRef {
     struct _xmlRef *	next	: next Ref
     const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	value	: The Ref name
     <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	attr	: The <a href="libxml-SAX.html#attribute">attribute</a> holding it
     const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: The <a href="libxml-SAX.html#attribute">attribute</a> if attr is not available
     int	lineno	: The line number if attr is not availabl
-}</pre><br /><pre class="programlisting">int	<a href="#xmlGetCompressMode">xmlGetCompressMode</a>	(void)<br />
-</pre><pre class="programlisting">#define <a href="#xmlRootNode">xmlRootNode</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	<a href="#xmlBufferCreateSize">xmlBufferCreateSize</a>	(size_t size)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNodeListGetString">xmlNodeListGetString</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list, <br />				 int inLine)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSetCompressMode">xmlSetCompressMode</a>	(int mode)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSetTreeDoc">xmlSetTreeDoc</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	<a href="#xmlBufferCreate">xmlBufferCreate</a>	(void)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlCopyNodeList">xmlCopyNodeList</a>	(const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlDoc">xmlDoc</a> * <a name="xmlDocPtr" id="xmlDocPtr">xmlDocPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlBufferGrow">xmlBufferGrow</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 unsigned int len)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlAddChildList">xmlAddChildList</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlGetNodePath">xmlGetNodePath</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserCtxt">xmlParserCtxt</a> * <a name="xmlParserCtxtPtr" id="xmlParserCtxtPtr">xmlParserCtxtPtr</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlFreePropList">xmlFreePropList</a>	(<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
-</pre><pre class="programlisting">void	<a href="#xmlNodeAddContent">xmlNodeAddContent</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUnsetNsProp">xmlUnsetNsProp</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNodeIsText">xmlNodeIsText</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">Structure <a name="xmlAttr" id="xmlAttr">xmlAttr</a><br />struct _xmlAttr {
-    void *	_private	: application data
-    <a href="libxml-tree.html#xmlElementType">xmlElementType</a>	type	: XML_ATTRIBUTE_NODE, must be second !
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: the name of the property
-    struct _xmlNode *	children	: the value of the property
-    struct _xmlNode *	last	: NULL
-    struct _xmlNode *	parent	: child-&gt;parent link
-    struct _xmlAttr *	next	: next sibling link
-    struct _xmlAttr *	prev	: previous sibling link
-    struct _xmlDoc *	doc	: the containing document
-    <a href="libxml-tree.html#xmlNs">xmlNs</a> *	ns	: pointer to the associated namespace
-    <a href="libxml-tree.html#xmlAttributeType">xmlAttributeType</a>	atype	: the <a href="libxml-SAX.html#attribute">attribute</a> type if validating
-    void *	psvi	: for type/PSVI informations
-}</pre><br /><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlAddNextSibling">xmlAddNextSibling</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
-</pre><pre class="programlisting">int	<a href="#xmlIsBlankNode">xmlIsBlankNode</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">Structure <a name="xmlEntity" id="xmlEntity">xmlEntity</a><br />struct _xmlEntity {
-    void *	_private	: application data
-    <a href="libxml-tree.html#xmlElementType">xmlElementType</a>	type	: XML_ENTITY_DECL, must be second !
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: Entity name
-    struct _xmlNode *	children	: First child link
-    struct _xmlNode *	last	: Last child link
-    struct _xmlDtd *	parent	: -&gt; DTD
-    struct _xmlNode *	next	: next sibling link
-    struct _xmlNode *	prev	: previous sibling link
-    struct _xmlDoc *	doc	: the containing document
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	orig	: content without ref substitution
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	content	: content or ndata if unparsed
-    int	length	: the content length
-    <a href="libxml-entities.html#xmlEntityType">xmlEntityType</a>	etype	: The entity type
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	ExternalID	: External identifier for PUBLIC
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	SystemID	: URI for a SYSTEM or PUBLIC Entity
-    struct _xmlEntity *	nexte	: unused
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	URI	: the full URI as computed
-    int	owner	: does the entity own the childrens
-}</pre><br /><pre class="programlisting">int	<a href="#xmlValidateName">xmlValidateName</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 int space)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#xmlNewGlobalNs">xmlNewGlobalNs</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
-</pre><pre class="programlisting">int	<a href="#xmlBufferDump">xmlBufferDump</a>	(FILE * file, <br />				 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#xmlNewNs">xmlNewNs</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlCopyDoc">xmlCopyDoc</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 int recursive)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDocDumpMemoryEnc">xmlDocDumpMemoryEnc</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** doc_txt_ptr, <br />				 int * doc_txt_len, <br />				 const char * txt_encoding)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlTextMerge">xmlTextMerge</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> first, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> second)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDocDumpMemory">xmlDocDumpMemory</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** mem, <br />				 int * size)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewTextLen">xmlNewTextLen</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />				 int len)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeNs">xmlFreeNs</a>	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)<br />
-</pre><pre class="programlisting">int	<a href="#xmlDocDump">xmlDocDump</a>	(FILE * f, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
-</pre><pre class="programlisting">#define <a href="#BASE_BUFFER_SIZE">BASE_BUFFER_SIZE</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlFreeProp">xmlFreeProp</a>	(<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
-</pre><pre class="programlisting">Structure <a name="xmlEnumeration" id="xmlEnumeration">xmlEnumeration</a><br />struct _xmlEnumeration {
-    struct _xmlEnumeration *	next	: next one
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: Enumeration name
-}</pre><br /><pre class="programlisting">void	<a href="#xmlBufferWriteChar">xmlBufferWriteChar</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 const char * string)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlGetNoNsProp">xmlGetNoNsProp</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlSplitQName2">xmlSplitQName2</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** prefix)<br />
-</pre><pre class="programlisting">Structure <a name="xmlSAXHandler" id="xmlSAXHandler">xmlSAXHandler</a><br />struct _xmlSAXHandler {
-    <a href="libxml-parser.html#internalSubsetSAXFunc">internalSubsetSAXFunc</a>	internalSubset
-    <a href="libxml-parser.html#isStandaloneSAXFunc">isStandaloneSAXFunc</a>	isStandalone
-    <a href="libxml-parser.html#hasInternalSubsetSAXFunc">hasInternalSubsetSAXFunc</a>	hasInternalSubset
-    <a href="libxml-parser.html#hasExternalSubsetSAXFunc">hasExternalSubsetSAXFunc</a>	hasExternalSubset
-    <a href="libxml-parser.html#resolveEntitySAXFunc">resolveEntitySAXFunc</a>	resolveEntity
-    <a href="libxml-parser.html#getEntitySAXFunc">getEntitySAXFunc</a>	getEntity
-    <a href="libxml-parser.html#entityDeclSAXFunc">entityDeclSAXFunc</a>	entityDecl
-    <a href="libxml-parser.html#notationDeclSAXFunc">notationDeclSAXFunc</a>	notationDecl
-    <a href="libxml-parser.html#attributeDeclSAXFunc">attributeDeclSAXFunc</a>	attributeDecl
-    <a href="libxml-parser.html#elementDeclSAXFunc">elementDeclSAXFunc</a>	elementDecl
-    <a href="libxml-parser.html#unparsedEntityDeclSAXFunc">unparsedEntityDeclSAXFunc</a>	unparsedEntityDecl
-    <a href="libxml-parser.html#setDocumentLocatorSAXFunc">setDocumentLocatorSAXFunc</a>	setDocumentLocator
-    <a href="libxml-parser.html#startDocumentSAXFunc">startDocumentSAXFunc</a>	startDocument
-    <a href="libxml-parser.html#endDocumentSAXFunc">endDocumentSAXFunc</a>	endDocument
-    <a href="libxml-parser.html#startElementSAXFunc">startElementSAXFunc</a>	startElement
-    <a href="libxml-parser.html#endElementSAXFunc">endElementSAXFunc</a>	endElement
-    <a href="libxml-parser.html#referenceSAXFunc">referenceSAXFunc</a>	reference
-    <a href="libxml-parser.html#charactersSAXFunc">charactersSAXFunc</a>	characters
-    <a href="libxml-parser.html#ignorableWhitespaceSAXFunc">ignorableWhitespaceSAXFunc</a>	ignorableWhitespace
-    <a href="libxml-parser.html#processingInstructionSAXFunc">processingInstructionSAXFunc</a>	processingInstruction
-    <a href="libxml-parser.html#commentSAXFunc">commentSAXFunc</a>	comment
-    <a href="libxml-parser.html#warningSAXFunc">warningSAXFunc</a>	warning
-    <a href="libxml-parser.html#errorSAXFunc">errorSAXFunc</a>	error
-    <a href="libxml-parser.html#fatalErrorSAXFunc">fatalErrorSAXFunc</a>	fatalError	: unused error() get all the errors
-    <a href="libxml-parser.html#getParameterEntitySAXFunc">getParameterEntitySAXFunc</a>	getParameterEntity
-    <a href="libxml-parser.html#cdataBlockSAXFunc">cdataBlockSAXFunc</a>	cdataBlock
-    <a href="libxml-parser.html#externalSubsetSAXFunc">externalSubsetSAXFunc</a>	externalSubset
-    unsigned int	initialized	: The following fields are extensions ava
-    void *	_private
-    <a href="libxml-parser.html#startElementNsSAX2Func">startElementNsSAX2Func</a>	startElementNs
-    <a href="libxml-parser.html#endElementNsSAX2Func">endElementNsSAX2Func</a>	endElementNs
-    <a href="libxml-xmlerror.html#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a>	serror
-}</pre><br /><pre class="programlisting">#define <a href="#XML_GET_LINE">XML_GET_LINE</a>
-
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlRef">xmlRef</a> * <a name="xmlRefPtr" id="xmlRefPtr">xmlRefPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlNewProp">xmlNewProp</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextConcat">xmlTextConcat</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />				 int len)<br />
-</pre><pre class="programlisting">Structure <a name="xmlSAXLocator" id="xmlSAXLocator">xmlSAXLocator</a><br />struct _xmlSAXLocator {
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *(*getPublicId)	getPublicId
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *(*getSystemId)	getSystemId
-    int(*getLineNumber)	getLineNumber
-    int(*getColumnNumber)	getColumnNumber
-}</pre><br /><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlOutputBuffer">xmlOutputBuffer</a> * <a name="xmlOutputBufferPtr" id="xmlOutputBufferPtr">xmlOutputBufferPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlNodeGetSpacePreserve">xmlNodeGetSpacePreserve</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlNotation">xmlNotation</a> * <a name="xmlNotationPtr" id="xmlNotationPtr">xmlNotationPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlBufferShrink">xmlBufferShrink</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 unsigned int len)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNodeGetContent">xmlNodeGetContent</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">#define <a href="#XML_LOCAL_NAMESPACE">XML_LOCAL_NAMESPACE</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlStringLenGetNodeList">xmlStringLenGetNodeList</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 int len)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlBuildQName">xmlBuildQName</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ncname, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * memory, <br />				 int len)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a> * <a name="xmlBufferPtr" id="xmlBufferPtr">xmlBufferPtr</a>
-
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlEnumeration">xmlEnumeration</a> * <a name="xmlEnumerationPtr" id="xmlEnumerationPtr">xmlEnumerationPtr</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlBuffer" id="xmlBuffer">xmlBuffer</a><br />struct _xmlBuffer {
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	content	: The buffer content UTF8
-    unsigned int	use	: The buffer size used
-    unsigned int	size	: The buffer size
-    <a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a>	alloc	: The realloc method
-}</pre><br /><pre class="programlisting">void	<a href="#xmlBufferWriteQuotedString">xmlBufferWriteQuotedString</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlCopyProp">xmlCopyProp</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
-</pre><pre class="programlisting">Structure <a name="xmlNs" id="xmlNs">xmlNs</a><br />struct _xmlNs {
-    struct _xmlNs *	next	: next Ns link for this node
-    <a href="libxml-tree.html#xmlNsType">xmlNsType</a>	type	: global or local
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	href	: URL for the namespace
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	prefix	: prefix for the namespace
-    void *	_private	: application data
-}</pre><br /><pre class="programlisting">Enum <a name="xmlAttributeType" id="xmlAttributeType">xmlAttributeType</a> {
+}</pre><h3><a name="xmlAttributeType" id="xmlAttributeType">xmlAttributeType</a></h3><pre class="programlisting">Enum xmlAttributeType {
     <a name="XML_ATTRIBUTE_CDATA" id="XML_ATTRIBUTE_CDATA">XML_ATTRIBUTE_CDATA</a> = 1
     <a name="XML_ATTRIBUTE_ID" id="XML_ATTRIBUTE_ID">XML_ATTRIBUTE_ID</a> = 2
     <a name="XML_ATTRIBUTE_IDREF" id="XML_ATTRIBUTE_IDREF">XML_ATTRIBUTE_IDREF</a> = 3
@@ -331,12 +308,7 @@
     <a name="XML_ATTRIBUTE_ENUMERATION" id="XML_ATTRIBUTE_ENUMERATION">XML_ATTRIBUTE_ENUMERATION</a> = 9
     <a name="XML_ATTRIBUTE_NOTATION" id="XML_ATTRIBUTE_NOTATION">XML_ATTRIBUTE_NOTATION</a> = 10
 }
-
-</pre><pre class="programlisting">void	<a href="#xmlSetDocCompressMode">xmlSetDocCompressMode</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 int mode)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlCopyNode">xmlCopyNode</a>	(const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 int recursive)<br />
-</pre><pre class="programlisting">void	<a href="#xmlUnlinkNode">xmlUnlinkNode</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlSplitQName3">xmlSplitQName3</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int * len)<br />
-</pre><pre class="programlisting">Structure <a name="xmlParserInputBuffer" id="xmlParserInputBuffer">xmlParserInputBuffer</a><br />struct _xmlParserInputBuffer {
+</pre><h3><a name="xmlParserInputBuffer" id="xmlParserInputBuffer">Structure xmlParserInputBuffer</a></h3><pre class="programlisting">Structure xmlParserInputBuffer<br />struct _xmlParserInputBuffer {
     void *	context
     <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a>	readcallback
     <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a>	closecallback
@@ -345,13 +317,47 @@
     <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	raw	: if encoder != NULL buffer for raw input
     int	compressed	: -1=unknown, 0=not compressed, 1=compres
     int	error
-}</pre><br /><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlDocSetRootElement">xmlDocSetRootElement</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> root)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#xmlSearchNs">xmlSearchNs</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)<br />
-</pre><pre class="programlisting">long	<a href="#xmlGetLineNo">xmlGetLineNo</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlNode">xmlNode</a> * <a name="xmlNodePtr" id="xmlNodePtr">xmlNodePtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlRemoveProp">xmlRemoveProp</a>	(<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
-</pre><pre class="programlisting">Structure <a name="xmlParserCtxt" id="xmlParserCtxt">xmlParserCtxt</a><br />struct _xmlParserCtxt {
+}</pre><h3><a name="xmlNode" id="xmlNode">Structure xmlNode</a></h3><pre class="programlisting">Structure xmlNode<br />struct _xmlNode {
+    void *	_private	: application data
+    <a href="libxml-tree.html#xmlElementType">xmlElementType</a>	type	: type number, must be second !
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: the name of the node, or the entity
+    struct _xmlNode *	children	: parent-&gt;childs link
+    struct _xmlNode *	last	: last child link
+    struct _xmlNode *	parent	: child-&gt;parent link
+    struct _xmlNode *	next	: next sibling link
+    struct _xmlNode *	prev	: previous sibling link
+    struct _xmlDoc *	doc	: the containing document End of common p
+    <a href="libxml-tree.html#xmlNs">xmlNs</a> *	ns	: pointer to the associated namespace
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	content	: the content
+    struct _xmlAttr *	properties	: properties list
+    <a href="libxml-tree.html#xmlNs">xmlNs</a> *	nsDef	: namespace definitions on this node
+    void *	psvi	: for type/PSVI informations
+    unsigned short	line	: line number
+    unsigned short	extra	: extra data for XPath/XSLT
+}</pre><h3><a name="xmlDoc" id="xmlDoc">Structure xmlDoc</a></h3><pre class="programlisting">Structure xmlDoc<br />struct _xmlDoc {
+    void *	_private	: application data
+    <a href="libxml-tree.html#xmlElementType">xmlElementType</a>	type	: XML_DOCUMENT_NODE, must be second !
+    char *	name	: name/filename/URI of the document
+    struct _xmlNode *	children	: the document tree
+    struct _xmlNode *	last	: last child link
+    struct _xmlNode *	parent	: child-&gt;parent link
+    struct _xmlNode *	next	: next sibling link
+    struct _xmlNode *	prev	: previous sibling link
+    struct _xmlDoc *	doc	: autoreference to itself End of common p
+    int	compression	: level of zlib compression
+    int	standalone	: standalone document (no external refs)
+    struct _xmlDtd *	intSubset	: the document internal subset
+    struct _xmlDtd *	extSubset	: the document external subset
+    struct _xmlNs *	oldNs	: Global namespace, the old way
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	version	: the XML version string
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	encoding	: external initial encoding, if any
+    void *	ids	: Hash table for ID attributes if any
+    void *	refs	: Hash table for IDREFs attributes if any
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	URL	: The URI for that document
+    int	charset	: encoding of the in-memory content actua
+    struct _xmlDict *	dict	: dict used to allocate names or NULL
+    void *	psvi	: for type/PSVI informations
+}</pre><h3><a name="xmlParserCtxt" id="xmlParserCtxt">Structure xmlParserCtxt</a></h3><pre class="programlisting">Structure xmlParserCtxt<br />struct _xmlParserCtxt {
     struct _xmlSAXHandler *	sax	: The SAX handler
     void *	userData	: For SAX interface only, used by DOM bui
     <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	myDoc	: the document being built
@@ -432,131 +438,125 @@
     int	freeAttrsNr	: number of freed attributes nodes
     <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	freeAttrs	: * the complete error informations for th
     <a href="libxml-xmlerror.html#xmlError">xmlError</a>	lastError
-}</pre><br /><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewTextChild">xmlNewTextChild</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDocDumpFormatMemoryEnc">xmlDocDumpFormatMemoryEnc</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** doc_txt_ptr, <br />				 int * doc_txt_len, <br />				 const char * txt_encoding, <br />				 int format)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlNewDocProp">xmlNewDocProp</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeNode">xmlFreeNode</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewDocTextLen">xmlNewDocTextLen</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />				 int len)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlBufferContent">xmlBufferContent</a>	(const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNodeGetLang">xmlNodeGetLang</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidateNMToken">xmlValidateNMToken</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 int space)<br />
-</pre><pre class="programlisting">void	<a href="#xmlBufferSetAllocationScheme">xmlBufferSetAllocationScheme</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewChild">xmlNewChild</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlGetDocCompressMode">xmlGetDocCompressMode</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSaveFileEnc">xmlSaveFileEnc</a>	(const char * filename, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlAttr">xmlAttr</a> * <a name="xmlAttrPtr" id="xmlAttrPtr">xmlAttrPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlCopyPropList">xmlCopyPropList</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
-</pre><pre class="programlisting">#define <a href="#XML_XML_NAMESPACE">XML_XML_NAMESPACE</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlNodeSetContentLen">xmlNodeSetContentLen</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />				 int len)<br />
-</pre><pre class="programlisting">Enum <a name="xmlElementContentType" id="xmlElementContentType">xmlElementContentType</a> {
-    <a name="XML_ELEMENT_CONTENT_PCDATA" id="XML_ELEMENT_CONTENT_PCDATA">XML_ELEMENT_CONTENT_PCDATA</a> = 1
-    <a name="XML_ELEMENT_CONTENT_ELEMENT" id="XML_ELEMENT_CONTENT_ELEMENT">XML_ELEMENT_CONTENT_ELEMENT</a> = 2
-    <a name="XML_ELEMENT_CONTENT_SEQ" id="XML_ELEMENT_CONTENT_SEQ">XML_ELEMENT_CONTENT_SEQ</a> = 3
-    <a name="XML_ELEMENT_CONTENT_OR" id="XML_ELEMENT_CONTENT_OR">XML_ELEMENT_CONTENT_OR</a> = 4
-}
-
-</pre><pre class="programlisting">void	<a href="#xmlNodeSetSpacePreserve">xmlNodeSetSpacePreserve</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 int val)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlSetNsProp">xmlSetNsProp</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlHasProp">xmlHasProp</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">void	<a href="#xmlBufferCat">xmlBufferCat</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	<a href="#xmlCreateIntSubset">xmlCreateIntSubset</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlNewDoc">xmlNewDoc</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * version)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewCharRef">xmlNewCharRef</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	<a href="#xmlCopyNamespaceList">xmlCopyNamespaceList</a>	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewNodeEatName">xmlNewNodeEatName</a>	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">int	<a href="#xmlBufferResize">xmlBufferResize</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 unsigned int size)<br />
-</pre><pre class="programlisting">void	<a href="#xmlNodeSetBase">xmlNodeSetBase</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * uri)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlElementType">xmlElementType</a> <a name="xmlNsType" id="xmlNsType">xmlNsType</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewComment">xmlNewComment</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">#define <a href="#xmlChildrenNode">xmlChildrenNode</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlBufferLength">xmlBufferLength</a>	(const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)<br />
-</pre><pre class="programlisting">Enum <a name="xmlBufferAllocationScheme" id="xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> {
-    <a name="XML_BUFFER_ALLOC_DOUBLEIT" id="XML_BUFFER_ALLOC_DOUBLEIT">XML_BUFFER_ALLOC_DOUBLEIT</a> = 1
-    <a name="XML_BUFFER_ALLOC_EXACT" id="XML_BUFFER_ALLOC_EXACT">XML_BUFFER_ALLOC_EXACT</a> = 2
-    <a name="XML_BUFFER_ALLOC_IMMUTABLE" id="XML_BUFFER_ALLOC_IMMUTABLE">XML_BUFFER_ALLOC_IMMUTABLE</a> = 3
-}
-
-</pre><pre class="programlisting">Typedef unsigned char <a name="xmlChar" id="xmlChar">xmlChar</a>
-
-</pre><pre class="programlisting">Enum <a name="xmlAttributeDefault" id="xmlAttributeDefault">xmlAttributeDefault</a> {
+}</pre><h3><a name="xmlAttributeDefault" id="xmlAttributeDefault">xmlAttributeDefault</a></h3><pre class="programlisting">Enum xmlAttributeDefault {
     <a name="XML_ATTRIBUTE_NONE" id="XML_ATTRIBUTE_NONE">XML_ATTRIBUTE_NONE</a> = 1
     <a name="XML_ATTRIBUTE_REQUIRED" id="XML_ATTRIBUTE_REQUIRED">XML_ATTRIBUTE_REQUIRED</a> = 2
     <a name="XML_ATTRIBUTE_IMPLIED" id="XML_ATTRIBUTE_IMPLIED">XML_ATTRIBUTE_IMPLIED</a> = 3
     <a name="XML_ATTRIBUTE_FIXED" id="XML_ATTRIBUTE_FIXED">XML_ATTRIBUTE_FIXED</a> = 4
 }
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewText">xmlNewText</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUnsetProp">xmlUnsetProp</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a>	<a href="#xmlGetBufferAllocationScheme">xmlGetBufferAllocationScheme</a>	(void)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSaveFile">xmlSaveFile</a>	(const char * filename, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSetNs">xmlSetNs</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns)<br />
-</pre><pre class="programlisting">Structure <a name="xmlNode" id="xmlNode">xmlNode</a><br />struct _xmlNode {
+</pre><h3><a name="xmlNotation" id="xmlNotation">Structure xmlNotation</a></h3><pre class="programlisting">Structure xmlNotation<br />struct _xmlNotation {
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: Notation name
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	PublicID	: Public identifier, if any
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	SystemID	: System identifier, if any
+}</pre><h3><a name="xmlEntity" id="xmlEntity">Structure xmlEntity</a></h3><pre class="programlisting">Structure xmlEntity<br />struct _xmlEntity {
     void *	_private	: application data
-    <a href="libxml-tree.html#xmlElementType">xmlElementType</a>	type	: type number, must be second !
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: the name of the node, or the entity
-    struct _xmlNode *	children	: parent-&gt;childs link
-    struct _xmlNode *	last	: last child link
-    struct _xmlNode *	parent	: child-&gt;parent link
+    <a href="libxml-tree.html#xmlElementType">xmlElementType</a>	type	: XML_ENTITY_DECL, must be second !
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: Entity name
+    struct _xmlNode *	children	: First child link
+    struct _xmlNode *	last	: Last child link
+    struct _xmlDtd *	parent	: -&gt; DTD
     struct _xmlNode *	next	: next sibling link
     struct _xmlNode *	prev	: previous sibling link
-    struct _xmlDoc *	doc	: the containing document End of common p
+    struct _xmlDoc *	doc	: the containing document
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	orig	: content without ref substitution
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	content	: content or ndata if unparsed
+    int	length	: the content length
+    <a href="libxml-entities.html#xmlEntityType">xmlEntityType</a>	etype	: The entity type
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	ExternalID	: External identifier for PUBLIC
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	SystemID	: URI for a SYSTEM or PUBLIC Entity
+    struct _xmlEntity *	nexte	: unused
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	URI	: the full URI as computed
+    int	owner	: does the entity own the childrens
+}</pre><h3><a name="xmlAttr" id="xmlAttr">Structure xmlAttr</a></h3><pre class="programlisting">Structure xmlAttr<br />struct _xmlAttr {
+    void *	_private	: application data
+    <a href="libxml-tree.html#xmlElementType">xmlElementType</a>	type	: XML_ATTRIBUTE_NODE, must be second !
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: the name of the property
+    struct _xmlNode *	children	: the value of the property
+    struct _xmlNode *	last	: NULL
+    struct _xmlNode *	parent	: child-&gt;parent link
+    struct _xmlAttr *	next	: next sibling link
+    struct _xmlAttr *	prev	: previous sibling link
+    struct _xmlDoc *	doc	: the containing document
     <a href="libxml-tree.html#xmlNs">xmlNs</a> *	ns	: pointer to the associated namespace
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	content	: the content
-    struct _xmlAttr *	properties	: properties list
-    <a href="libxml-tree.html#xmlNs">xmlNs</a> *	nsDef	: namespace definitions on this node
+    <a href="libxml-tree.html#xmlAttributeType">xmlAttributeType</a>	atype	: the <a href="libxml-SAX.html#attribute">attribute</a> type if validating
     void *	psvi	: for type/PSVI informations
-    unsigned short	line	: line number
-    unsigned short	extra	: extra data for XPath/XSLT
-}</pre><br /><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlGetNsProp">xmlGetNsProp</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewCDataBlock">xmlNewCDataBlock</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />				 int len)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSaveFormatFileEnc">xmlSaveFormatFileEnc</a>	(const char * filename, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding, <br />				 int format)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	<a href="#xmlCopyDtd">xmlCopyDtd</a>	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewDocText">xmlNewDocText</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlDtd">xmlDtd</a> * <a name="xmlDtdPtr" id="xmlDtdPtr">xmlDtdPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNodeListGetRawString">xmlNodeListGetRawString</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list, <br />				 int inLine)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	<a href="#xmlBufferCreateStatic">xmlBufferCreateStatic</a>	(void * mem, <br />				 size_t size)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewReference">xmlNewReference</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">void	<a href="#xmlBufferCCat">xmlBufferCCat</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 const char * str)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> *	<a href="#xmlGetNsList">xmlGetNsList</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlEntity">xmlEntity</a> * <a name="xmlEntityPtr" id="xmlEntityPtr">xmlEntityPtr</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlSetBufferAllocationScheme">xmlSetBufferAllocationScheme</a>	(<a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme)<br />
-</pre><pre class="programlisting">int	<a href="#xmlNodeDump">xmlNodeDump</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 int level, <br />				 int format)<br />
-</pre><pre class="programlisting">int	<a href="#xmlIsXHTML">xmlIsXHTML</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicID)<br />
-</pre><pre class="programlisting">void	<a href="#xmlNodeSetLang">xmlNodeSetLang</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * lang)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeDtd">xmlFreeDtd</a>	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> cur)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeNodeList">xmlFreeNodeList</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeDoc">xmlFreeDoc</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
-</pre><pre class="programlisting">Structure <a name="xmlDoc" id="xmlDoc">xmlDoc</a><br />struct _xmlDoc {
-    void *	_private	: application data
-    <a href="libxml-tree.html#xmlElementType">xmlElementType</a>	type	: XML_DOCUMENT_NODE, must be second !
-    char *	name	: name/filename/URI of the document
-    struct _xmlNode *	children	: the document tree
-    struct _xmlNode *	last	: last child link
-    struct _xmlNode *	parent	: child-&gt;parent link
-    struct _xmlNode *	next	: next sibling link
-    struct _xmlNode *	prev	: previous sibling link
-    struct _xmlDoc *	doc	: autoreference to itself End of common p
-    int	compression	: level of zlib compression
-    int	standalone	: standalone document (no external refs)
-    struct _xmlDtd *	intSubset	: the document internal subset
-    struct _xmlDtd *	extSubset	: the document external subset
-    struct _xmlNs *	oldNs	: Global namespace, the old way
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	version	: the XML version string
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	encoding	: external initial encoding, if any
-    void *	ids	: Hash table for ID attributes if any
-    void *	refs	: Hash table for IDREFs attributes if any
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	URL	: The URI for that document
-    int	charset	: encoding of the in-memory content actua
-    struct _xmlDict *	dict	: dict used to allocate names or NULL
-    void *	psvi	: for type/PSVI informations
-}</pre><br /><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlNewDocNode">xmlNewDocNode</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">Structure <a name="xmlDtd" id="xmlDtd">xmlDtd</a><br />struct _xmlDtd {
+}</pre><h3><a name="xmlElementTypeVal" id="xmlElementTypeVal">xmlElementTypeVal</a></h3><pre class="programlisting">Enum xmlElementTypeVal {
+    <a name="XML_ELEMENT_TYPE_UNDEFINED" id="XML_ELEMENT_TYPE_UNDEFINED">XML_ELEMENT_TYPE_UNDEFINED</a> = 0
+    <a name="XML_ELEMENT_TYPE_EMPTY" id="XML_ELEMENT_TYPE_EMPTY">XML_ELEMENT_TYPE_EMPTY</a> = 1
+    <a name="XML_ELEMENT_TYPE_ANY" id="XML_ELEMENT_TYPE_ANY">XML_ELEMENT_TYPE_ANY</a> = 2
+    <a name="XML_ELEMENT_TYPE_MIXED" id="XML_ELEMENT_TYPE_MIXED">XML_ELEMENT_TYPE_MIXED</a> = 3
+    <a name="XML_ELEMENT_TYPE_ELEMENT" id="XML_ELEMENT_TYPE_ELEMENT">XML_ELEMENT_TYPE_ELEMENT</a> = 4
+}
+</pre><h3><a name="xmlElementContentOccur" id="xmlElementContentOccur">xmlElementContentOccur</a></h3><pre class="programlisting">Enum xmlElementContentOccur {
+    <a name="XML_ELEMENT_CONTENT_ONCE" id="XML_ELEMENT_CONTENT_ONCE">XML_ELEMENT_CONTENT_ONCE</a> = 1
+    <a name="XML_ELEMENT_CONTENT_OPT" id="XML_ELEMENT_CONTENT_OPT">XML_ELEMENT_CONTENT_OPT</a> = 2
+    <a name="XML_ELEMENT_CONTENT_MULT" id="XML_ELEMENT_CONTENT_MULT">XML_ELEMENT_CONTENT_MULT</a> = 3
+    <a name="XML_ELEMENT_CONTENT_PLUS" id="XML_ELEMENT_CONTENT_PLUS">XML_ELEMENT_CONTENT_PLUS</a> = 4
+}
+</pre><h3><a name="xmlID" id="xmlID">Structure xmlID</a></h3><pre class="programlisting">Structure xmlID<br />struct _xmlID {
+    struct _xmlID *	next	: next ID
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	value	: The ID name
+    <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	attr	: The <a href="libxml-SAX.html#attribute">attribute</a> holding it
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: The <a href="libxml-SAX.html#attribute">attribute</a> if attr is not available
+    int	lineno	: The line number if attr is not availabl
+    struct _xmlDoc *	doc	: The document holding the ID
+}</pre><h3><a name="xmlEnumeration" id="xmlEnumeration">Structure xmlEnumeration</a></h3><pre class="programlisting">Structure xmlEnumeration<br />struct _xmlEnumeration {
+    struct _xmlEnumeration *	next	: next one
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: Enumeration name
+}</pre><h3><a name="xmlElementContentType" id="xmlElementContentType">xmlElementContentType</a></h3><pre class="programlisting">Enum xmlElementContentType {
+    <a name="XML_ELEMENT_CONTENT_PCDATA" id="XML_ELEMENT_CONTENT_PCDATA">XML_ELEMENT_CONTENT_PCDATA</a> = 1
+    <a name="XML_ELEMENT_CONTENT_ELEMENT" id="XML_ELEMENT_CONTENT_ELEMENT">XML_ELEMENT_CONTENT_ELEMENT</a> = 2
+    <a name="XML_ELEMENT_CONTENT_SEQ" id="XML_ELEMENT_CONTENT_SEQ">XML_ELEMENT_CONTENT_SEQ</a> = 3
+    <a name="XML_ELEMENT_CONTENT_OR" id="XML_ELEMENT_CONTENT_OR">XML_ELEMENT_CONTENT_OR</a> = 4
+}
+</pre><h3><a name="xmlSAXHandler" id="xmlSAXHandler">Structure xmlSAXHandler</a></h3><pre class="programlisting">Structure xmlSAXHandler<br />struct _xmlSAXHandler {
+    <a href="libxml-parser.html#internalSubsetSAXFunc">internalSubsetSAXFunc</a>	internalSubset
+    <a href="libxml-parser.html#isStandaloneSAXFunc">isStandaloneSAXFunc</a>	isStandalone
+    <a href="libxml-parser.html#hasInternalSubsetSAXFunc">hasInternalSubsetSAXFunc</a>	hasInternalSubset
+    <a href="libxml-parser.html#hasExternalSubsetSAXFunc">hasExternalSubsetSAXFunc</a>	hasExternalSubset
+    <a href="libxml-parser.html#resolveEntitySAXFunc">resolveEntitySAXFunc</a>	resolveEntity
+    <a href="libxml-parser.html#getEntitySAXFunc">getEntitySAXFunc</a>	getEntity
+    <a href="libxml-parser.html#entityDeclSAXFunc">entityDeclSAXFunc</a>	entityDecl
+    <a href="libxml-parser.html#notationDeclSAXFunc">notationDeclSAXFunc</a>	notationDecl
+    <a href="libxml-parser.html#attributeDeclSAXFunc">attributeDeclSAXFunc</a>	attributeDecl
+    <a href="libxml-parser.html#elementDeclSAXFunc">elementDeclSAXFunc</a>	elementDecl
+    <a href="libxml-parser.html#unparsedEntityDeclSAXFunc">unparsedEntityDeclSAXFunc</a>	unparsedEntityDecl
+    <a href="libxml-parser.html#setDocumentLocatorSAXFunc">setDocumentLocatorSAXFunc</a>	setDocumentLocator
+    <a href="libxml-parser.html#startDocumentSAXFunc">startDocumentSAXFunc</a>	startDocument
+    <a href="libxml-parser.html#endDocumentSAXFunc">endDocumentSAXFunc</a>	endDocument
+    <a href="libxml-parser.html#startElementSAXFunc">startElementSAXFunc</a>	startElement
+    <a href="libxml-parser.html#endElementSAXFunc">endElementSAXFunc</a>	endElement
+    <a href="libxml-parser.html#referenceSAXFunc">referenceSAXFunc</a>	reference
+    <a href="libxml-parser.html#charactersSAXFunc">charactersSAXFunc</a>	characters
+    <a href="libxml-parser.html#ignorableWhitespaceSAXFunc">ignorableWhitespaceSAXFunc</a>	ignorableWhitespace
+    <a href="libxml-parser.html#processingInstructionSAXFunc">processingInstructionSAXFunc</a>	processingInstruction
+    <a href="libxml-parser.html#commentSAXFunc">commentSAXFunc</a>	comment
+    <a href="libxml-parser.html#warningSAXFunc">warningSAXFunc</a>	warning
+    <a href="libxml-parser.html#errorSAXFunc">errorSAXFunc</a>	error
+    <a href="libxml-parser.html#fatalErrorSAXFunc">fatalErrorSAXFunc</a>	fatalError	: unused error() get all the errors
+    <a href="libxml-parser.html#getParameterEntitySAXFunc">getParameterEntitySAXFunc</a>	getParameterEntity
+    <a href="libxml-parser.html#cdataBlockSAXFunc">cdataBlockSAXFunc</a>	cdataBlock
+    <a href="libxml-parser.html#externalSubsetSAXFunc">externalSubsetSAXFunc</a>	externalSubset
+    unsigned int	initialized	: The following fields are extensions ava
+    void *	_private
+    <a href="libxml-parser.html#startElementNsSAX2Func">startElementNsSAX2Func</a>	startElementNs
+    <a href="libxml-parser.html#endElementNsSAX2Func">endElementNsSAX2Func</a>	endElementNs
+    <a href="libxml-xmlerror.html#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a>	serror
+}</pre><h3><a name="xmlOutputBuffer" id="xmlOutputBuffer">Structure xmlOutputBuffer</a></h3><pre class="programlisting">Structure xmlOutputBuffer<br />struct _xmlOutputBuffer {
+    void *	context
+    <a href="libxml-xmlIO.html#xmlOutputWriteCallback">xmlOutputWriteCallback</a>	writecallback
+    <a href="libxml-xmlIO.html#xmlOutputCloseCallback">xmlOutputCloseCallback</a>	closecallback
+    <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>	encoder	: I18N conversions to UTF-8
+    <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	buffer	: Local buffer encoded in UTF-8 or ISOLat
+    <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	conv	: if encoder != NULL buffer for output
+    int	written	: total number of byte written
+    int	error
+}</pre><h3><a name="xmlSAXLocator" id="xmlSAXLocator">Structure xmlSAXLocator</a></h3><pre class="programlisting">Structure xmlSAXLocator<br />struct _xmlSAXLocator {
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *(*getPublicId)	getPublicId
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *(*getSystemId)	getSystemId
+    int(*getLineNumber)	getLineNumber
+    int(*getColumnNumber)	getColumnNumber
+}</pre><h3><a name="xmlDtd" id="xmlDtd">Structure xmlDtd</a></h3><pre class="programlisting">Structure xmlDtd<br />struct _xmlDtd {
     void *	_private	: application data
     <a href="libxml-tree.html#xmlElementType">xmlElementType</a>	type	: XML_DTD_NODE, must be second !
     const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: Name of the DTD
@@ -573,639 +573,307 @@
     const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	ExternalID	: External identifier for PUBLIC DTD
     const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	SystemID	: URI for a SYSTEM or PUBLIC DTD
     void *	pentities	: Hash table for param entities if any
-}</pre><br /><pre class="programlisting">void	<a href="#xmlDocDumpFormatMemory">xmlDocDumpFormatMemory</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** mem, <br />				 int * size, <br />				 int format)<br />
-</pre><pre class="programlisting">Structure <a name="xmlOutputBuffer" id="xmlOutputBuffer">xmlOutputBuffer</a><br />struct _xmlOutputBuffer {
-    void *	context
-    <a href="libxml-xmlIO.html#xmlOutputWriteCallback">xmlOutputWriteCallback</a>	writecallback
-    <a href="libxml-xmlIO.html#xmlOutputCloseCallback">xmlOutputCloseCallback</a>	closecallback
-    <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a>	encoder	: I18N conversions to UTF-8
-    <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	buffer	: Local buffer encoded in UTF-8 or ISOLat
-    <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	conv	: if encoder != NULL buffer for output
-    int	written	: total number of byte written
-    int	error
-}</pre><br /><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlElementContent">xmlElementContent</a> * <a name="xmlElementContentPtr" id="xmlElementContentPtr">xmlElementContentPtr</a>
-
-</pre><pre class="programlisting">Enum <a name="xmlElementTypeVal" id="xmlElementTypeVal">xmlElementTypeVal</a> {
-    <a name="XML_ELEMENT_TYPE_UNDEFINED" id="XML_ELEMENT_TYPE_UNDEFINED">XML_ELEMENT_TYPE_UNDEFINED</a> = 0
-    <a name="XML_ELEMENT_TYPE_EMPTY" id="XML_ELEMENT_TYPE_EMPTY">XML_ELEMENT_TYPE_EMPTY</a> = 1
-    <a name="XML_ELEMENT_TYPE_ANY" id="XML_ELEMENT_TYPE_ANY">XML_ELEMENT_TYPE_ANY</a> = 2
-    <a name="XML_ELEMENT_TYPE_MIXED" id="XML_ELEMENT_TYPE_MIXED">XML_ELEMENT_TYPE_MIXED</a> = 3
-    <a name="XML_ELEMENT_TYPE_ELEMENT" id="XML_ELEMENT_TYPE_ELEMENT">XML_ELEMENT_TYPE_ELEMENT</a> = 4
-}
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	<a href="#xmlNewDtd">xmlNewDtd</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlParserInputBuffer">xmlParserInputBuffer</a> * <a name="xmlParserInputBufferPtr" id="xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlNewNsProp">xmlNewNsProp</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeNsList">xmlFreeNsList</a>	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlGetLastChild">xmlGetLastChild</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlNewDocRawNode" id="xmlNewDocRawNode"></a>Function: xmlNewDocRawNode</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewDocRawNode	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><p>Creation of a new node element within a document. @ns and @content are optional (NULL).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>namespace if any</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the node name</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content if any</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlGetProp" id="xmlGetProp"></a>Function: xmlGetProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlGetProp	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Search and get the value of an <a href="libxml-SAX.html#attribute">attribute</a> associated to a node This does the entity substitution. This function looks in DTD <a href="libxml-SAX.html#attribute">attribute</a> declaration for #FIXED or default declaration values unless DTD use has been turned off. NOTE: this function acts independently of namespaces associated to the attribute. Use xmlGetNsProp() or xmlGetNoNsProp() for namespace aware processing.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value or NULL if not found. It's up to the caller to free the memory with xmlFree().</td></tr></tbody></table></div><h3><a name="xmlNewNsPropEatName" id="xmlNewNsPropEatName"></a>Function: xmlNewNsPropEatName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlNewNsPropEatName	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><p>Create a new property tagged with a namespace and carried by a node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the holding node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the namespace</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the <a href="libxml-SAX.html#attribute">attribute</a></td></tr></tbody></table></div><h3><a name="xmlDocCopyNode" id="xmlDocCopyNode"></a>Function: xmlDocCopyNode</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlDocCopyNode	(const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 int recursive)<br />
+}</pre><h3><a name="xmlAttribute" id="xmlAttribute">Structure xmlAttribute</a></h3><pre class="programlisting">Structure xmlAttribute<br />struct _xmlAttribute {
+    void *	_private	: application data
+    <a href="libxml-tree.html#xmlElementType">xmlElementType</a>	type	: XML_ATTRIBUTE_DECL, must be second !
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: Attribute name
+    struct _xmlNode *	children	: NULL
+    struct _xmlNode *	last	: NULL
+    struct _xmlDtd *	parent	: -&gt; DTD
+    struct _xmlNode *	next	: next sibling link
+    struct _xmlNode *	prev	: previous sibling link
+    struct _xmlDoc *	doc	: the containing document
+    struct _xmlAttribute *	nexth	: next in hash table
+    <a href="libxml-tree.html#xmlAttributeType">xmlAttributeType</a>	atype	: The <a href="libxml-SAX.html#attribute">attribute</a> type
+    <a href="libxml-tree.html#xmlAttributeDefault">xmlAttributeDefault</a>	def	: the default
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	defaultValue	: or the default value
+    <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	tree	: or the enumeration tree if any
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	prefix	: the namespace prefix if any
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	elem	: Element holding the <a href="libxml-SAX.html#attribute">attribute</a>
+}</pre><h3><a name="xmlNodeSetContentLen" id="xmlNodeSetContentLen"></a>Function: xmlNodeSetContentLen</h3><pre class="programlisting">void	xmlNodeSetContentLen		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />					 int len)<br />
+</pre><p>Replace the content of a node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being modified</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the new value of the content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the size of @content</td></tr></tbody></table></div><h3><a name="xmlDocCopyNode" id="xmlDocCopyNode"></a>Function: xmlDocCopyNode</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlDocCopyNode		(const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 int recursive)<br />
 </pre><p>Do a copy of the node to a given document.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>recursive</tt></i>:</span></td><td>if 1 do a recursive copy.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlNodePtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlStringGetNodeList" id="xmlStringGetNodeList"></a>Function: xmlStringGetNodeList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlStringGetNodeList	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>recursive</tt></i>:</span></td><td>if 1 do a recursive copy.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlNodePtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlDocSetRootElement" id="xmlDocSetRootElement"></a>Function: xmlDocSetRootElement</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlDocSetRootElement	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> root)<br />
+</pre><p>Set the root element of the document (doc-&gt;children is a list containing possibly comments, PIs, etc ...).</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>root</tt></i>:</span></td><td>the new document root element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the old root element if any was found</td></tr></tbody></table></div><h3><a name="xmlGetProp" id="xmlGetProp"></a>Function: xmlGetProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlGetProp		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Search and get the value of an <a href="libxml-SAX.html#attribute">attribute</a> associated to a node This does the entity substitution. This function looks in DTD <a href="libxml-SAX.html#attribute">attribute</a> declaration for #FIXED or default declaration values unless DTD use has been turned off. NOTE: this function acts independently of namespaces associated to the attribute. Use xmlGetNsProp() or xmlGetNoNsProp() for namespace aware processing.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value or NULL if not found. It's up to the caller to free the memory with xmlFree().</td></tr></tbody></table></div><h3><a name="xmlNewNsPropEatName" id="xmlNewNsPropEatName"></a>Function: xmlNewNsPropEatName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlNewNsPropEatName	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+</pre><p>Create a new property tagged with a namespace and carried by a node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the holding node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the namespace</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the <a href="libxml-SAX.html#attribute">attribute</a></td></tr></tbody></table></div><h3><a name="xmlSearchNs" id="xmlSearchNs"></a>Function: xmlSearchNs</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	xmlSearchNs		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)<br />
+</pre><p>Search a Ns registered under a given name space for a document. recurse on the parents until it finds the defined namespace or return NULL otherwise. @nameSpace can be NULL, this is a search for the default namespace. We don't allow to cross entities boundaries. If you don't declare the namespace within those you will be in troubles !!! A warning is generated to cover this case.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i>:</span></td><td>the namespace prefix</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace pointer or NULL.</td></tr></tbody></table></div><h3><a name="xmlStringGetNodeList" id="xmlStringGetNodeList"></a>Function: xmlStringGetNodeList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlStringGetNodeList	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
 </pre><p>Parse the value string and build the node list associated. Should produce a flat tree with only TEXTs and ENTITY_REFs.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the first child</td></tr></tbody></table></div><h3><a name="xmlBufferWriteCHAR" id="xmlBufferWriteCHAR"></a>Function: xmlBufferWriteCHAR</h3><pre class="programlisting">void	xmlBufferWriteCHAR	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string)<br />
-</pre><p>routine which manages and grows an output buffer. This one adds xmlChars at the end of the buffer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer</td></tr><tr><td><span class="term"><i><tt>string</tt></i>:</span></td><td>the string to add</td></tr></tbody></table></div><h3><a name="BAD_CAST" id="BAD_CAST"></a>Macro: BAD_CAST</h3><pre>#define BAD_CAST</pre><p>Macro to cast a string to an <a href="libxml-tree.html#xmlChar">xmlChar</a> * when one know its safe.</p>
-
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlNodeGetBase" id="xmlNodeGetBase"></a>Function: xmlNodeGetBase</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNodeGetBase	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the first child</td></tr></tbody></table></div><h3><a name="xmlBufferWriteQuotedString" id="xmlBufferWriteQuotedString"></a>Function: xmlBufferWriteQuotedString</h3><pre class="programlisting">void	xmlBufferWriteQuotedString	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string)<br />
+</pre><p>routine which manage and grows an output buffer. This one writes a quoted or double quoted #xmlChar string, checking first if it holds quote or double-quotes internally</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>string</tt></i>:</span></td><td>the string to add</td></tr></tbody></table></div><h3><a name="xmlCopyProp" id="xmlCopyProp"></a>Function: xmlCopyProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlCopyProp		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
+</pre><p>Do a copy of the attribute.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>the element where the <a href="libxml-SAX.html#attribute">attribute</a> will be grafted</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlAttrPtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlNodeListGetString" id="xmlNodeListGetString"></a>Function: xmlNodeListGetString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNodeListGetString	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list, <br />					 int inLine)<br />
+</pre><p>Build the string equivalent to the text contained in the Node list made of TEXTs and ENTITY_REFs</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>a Node list</td></tr><tr><td><span class="term"><i><tt>inLine</tt></i>:</span></td><td>should we replace entity contents or show their external form</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the string copy, the caller must free it with xmlFree().</td></tr></tbody></table></div><h3><a name="xmlNewDocRawNode" id="xmlNewDocRawNode"></a>Function: xmlNewDocRawNode</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewDocRawNode	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+</pre><p>Creation of a new node element within a document. @ns and @content are optional (NULL).</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>namespace if any</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the node name</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content if any</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlNodeGetBase" id="xmlNodeGetBase"></a>Function: xmlNodeGetBase</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNodeGetBase		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
 </pre><p>Searches for the BASE URL. The code should work on both XML and HTML document even if base mechanisms are completely different. It returns the base as defined in RFC 2396 sections 5.1.1. Base URI within Document Content and 5.1.2. Base URI from the Encapsulating Entity However it does not return the document base (5.1.3), use xmlDocumentGetBase() for this</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document the node pertains to</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being checked</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the base URL, or NULL if not found It's up to the caller to free the memory with xmlFree().</td></tr></tbody></table></div><h3><a name="xmlBufferEmpty" id="xmlBufferEmpty"></a>Function: xmlBufferEmpty</h3><pre class="programlisting">void	xmlBufferEmpty	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document the node pertains to</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being checked</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the base URL, or NULL if not found It's up to the caller to free the memory with xmlFree().</td></tr></tbody></table></div><h3><a name="xmlGetLineNo" id="xmlGetLineNo"></a>Function: xmlGetLineNo</h3><pre class="programlisting">long	xmlGetLineNo			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+</pre><p>Get line number of @node. This requires activation of this option before invoking the parser by calling xmlLineNumbersDefault(1)</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>valid node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the line number if successful, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlBufferEmpty" id="xmlBufferEmpty"></a>Function: xmlBufferEmpty</h3><pre class="programlisting">void	xmlBufferEmpty			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)<br />
 </pre><p>empty a buffer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer</td></tr></tbody></table></div><h3><a name="xmlSaveFormatFile" id="xmlSaveFormatFile"></a>Function: xmlSaveFormatFile</h3><pre class="programlisting">int	xmlSaveFormatFile	(const char * filename, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 int format)<br />
-</pre><p>Dump an XML document to a file. Will use compression if compiled in and enabled. If @filename is &quot;-&quot; the stdout file is used. If @format is set then the document will be indented on output. Note that @format = 1 provide node indenting only if <a href="libxml-globals.html#xmlIndentTreeOutput">xmlIndentTreeOutput</a> = 1 or xmlKeepBlanksDefault(0) was called</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename (or URL)</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="xmlNewDocNodeEatName" id="xmlNewDocNodeEatName"></a>Function: xmlNewDocNodeEatName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewDocNodeEatName	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><p>Creation of a new node element within a document. @ns and @content are optional (NULL). NOTE: @content is supposed to be a piece of XML CDATA, so it allow entities references, but XML special chars need to be escaped first by using xmlEncodeEntitiesReentrant(). Use xmlNewDocRawNode() if you don't need entities support.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>namespace if any</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the node name</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the XML text content if any</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlAddSibling" id="xmlAddSibling"></a>Function: xmlAddSibling</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlAddSibling	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer</td></tr></tbody></table></div><h3><a name="xmlSetDocCompressMode" id="xmlSetDocCompressMode"></a>Function: xmlSetDocCompressMode</h3><pre class="programlisting">void	xmlSetDocCompressMode		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 int mode)<br />
+</pre><p>set the compression ratio for a document, ZLIB based Correct values: 0 (uncompressed) to 9 (max compression)</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>mode</tt></i>:</span></td><td>the compression ratio</td></tr></tbody></table></div><h3><a name="xmlBuildQName" id="xmlBuildQName"></a>Function: xmlBuildQName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlBuildQName		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ncname, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * memory, <br />					 int len)<br />
+</pre><p>Builds the QName @prefix:@ncname in @memory if there is enough space and prefix is not NULL nor empty, otherwise allocate a new string. If prefix is NULL or empty it returns ncname.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ncname</tt></i>:</span></td><td>the Name</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix</td></tr><tr><td><span class="term"><i><tt>memory</tt></i>:</span></td><td>preallocated memory</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>preallocated memory length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new string which must be freed by the caller if different from @memory and @ncname or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlCopyNode" id="xmlCopyNode"></a>Function: xmlCopyNode</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlCopyNode		(const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 int recursive)<br />
+</pre><p>Do a copy of the node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>recursive</tt></i>:</span></td><td>if 1 do a recursive copy.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlNodePtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlUnlinkNode" id="xmlUnlinkNode"></a>Function: xmlUnlinkNode</h3><pre class="programlisting">void	xmlUnlinkNode			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+</pre><p>Unlink a node from it's current context, the node is not freed</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node</td></tr></tbody></table></div><h3><a name="xmlSplitQName3" id="xmlSplitQName3"></a>Function: xmlSplitQName3</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlSplitQName3		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 int * len)<br />
+</pre><p>parse an XML qualified name string,i</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the full QName</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>an int *</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if it is not a Qualified Name, otherwise, update len with the lenght in byte of the prefix and return a pointer</td></tr></tbody></table></div><h3><a name="xmlRemoveProp" id="xmlRemoveProp"></a>Function: xmlRemoveProp</h3><pre class="programlisting">int	xmlRemoveProp			(<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
+</pre><p>Unlink and free one attribute, all the content is freed too Note this doesn't work for namespace definition attributes</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>an <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if success and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlAddSibling" id="xmlAddSibling"></a>Function: xmlAddSibling</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlAddSibling		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
 </pre><p>Add a new element @elem to the list of siblings of @cur merging adjacent TEXT nodes (@elem may be freed) If the new element was already inserted in a document it is first unlinked from its existing context.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the child node</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the new node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new element or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlNewDocFragment" id="xmlNewDocFragment"></a>Function: xmlNewDocFragment</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewDocFragment	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the child node</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the new node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new element or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlNodeSetName" id="xmlNodeSetName"></a>Function: xmlNodeSetName</h3><pre class="programlisting">void	xmlNodeSetName			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Set (or reset) the name of a node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being changed</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the new tag name</td></tr></tbody></table></div><h3><a name="xmlNewDocFragment" id="xmlNewDocFragment"></a>Function: xmlNewDocFragment</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewDocFragment	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
 </pre><p>Creation of a new Fragment node.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document owning the fragment</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlDocGetRootElement" id="xmlDocGetRootElement"></a>Function: xmlDocGetRootElement</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlDocGetRootElement	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
 </pre><p>Get the root element of the document (doc-&gt;children is a list containing possibly comments, PIs, etc ...).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the #xmlNodePtr for the root or NULL</td></tr></tbody></table></div><h3><a name="xmlNodeAddContentLen" id="xmlNodeAddContentLen"></a>Function: xmlNodeAddContentLen</h3><pre class="programlisting">void	xmlNodeAddContentLen	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the #xmlNodePtr for the root or NULL</td></tr></tbody></table></div><h3><a name="xmlNodeAddContentLen" id="xmlNodeAddContentLen"></a>Function: xmlNodeAddContentLen</h3><pre class="programlisting">void	xmlNodeAddContentLen		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />					 int len)<br />
 </pre><p>Append the extra substring to the node content.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being modified</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>extra content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the size of @content</td></tr></tbody></table></div>
-      
-      
-      
-    <h3><a name="xmlValidateQName" id="xmlValidateQName"></a>Function: xmlValidateQName</h3><pre class="programlisting">int	xmlValidateQName	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 int space)<br />
-</pre><p>Check that a value conforms to the lexical space of QName</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to check</td></tr><tr><td><span class="term"><i><tt>space</tt></i>:</span></td><td>allow spaces in front and end of the string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlHasNsProp" id="xmlHasNsProp"></a>Function: xmlHasNsProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlHasNsProp	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)<br />
-</pre><p>Search for an <a href="libxml-SAX.html#attribute">attribute</a> associated to a node This <a href="libxml-SAX.html#attribute">attribute</a> has to be anchored in the namespace specified. This does the entity substitution. This function looks in DTD <a href="libxml-SAX.html#attribute">attribute</a> declaration for #FIXED or default declaration values unless DTD use has been turned off.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i>:</span></td><td>the URI of the namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> or the <a href="libxml-SAX.html#attribute">attribute</a> declaration or NULL if neither was found.</td></tr></tbody></table></div><h3><a name="xmlAddPrevSibling" id="xmlAddPrevSibling"></a>Function: xmlAddPrevSibling</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlAddPrevSibling	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being modified</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>extra content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the size of @content</td></tr></tbody></table></div><h3><a name="xmlValidateName" id="xmlValidateName"></a>Function: xmlValidateName</h3><pre class="programlisting">int	xmlValidateName			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int space)<br />
+</pre><p>Check that a value conforms to the lexical space of Name</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to check</td></tr><tr><td><span class="term"><i><tt>space</tt></i>:</span></td><td>allow spaces in front and end of the string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlAddChild" id="xmlAddChild"></a>Function: xmlAddChild</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlAddChild		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+</pre><p>Add a new node to @parent, at the end of the child (or property) list merging adjacent TEXT nodes (in which case @cur is freed) If the new node is ATTRIBUTE, it is added into properties instead of children. If there is an <a href="libxml-SAX.html#attribute">attribute</a> with equal name, it is first destroyed.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the child node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the child or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlGetDocCompressMode" id="xmlGetDocCompressMode"></a>Function: xmlGetDocCompressMode</h3><pre class="programlisting">int	xmlGetDocCompressMode		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+</pre><p>get the compression ratio for a document, ZLIB based</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 (uncompressed) to 9 (max compression)</td></tr></tbody></table></div><h3><a name="xmlSetBufferAllocationScheme" id="xmlSetBufferAllocationScheme"></a>Function: xmlSetBufferAllocationScheme</h3><pre class="programlisting">void	xmlSetBufferAllocationScheme	(<a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme)<br />
+</pre><p>Set the buffer allocation method. Types are <a href="libxml-tree.html#XML_BUFFER_ALLOC_EXACT">XML_BUFFER_ALLOC_EXACT</a> - use exact sizes, keeps memory usage down <a href="libxml-tree.html#XML_BUFFER_ALLOC_DOUBLEIT">XML_BUFFER_ALLOC_DOUBLEIT</a> - double buffer when extra needed, improves performance</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>scheme</tt></i>:</span></td><td>allocation method to use</td></tr></tbody></table></div><h3><a name="xmlGetNsProp" id="xmlGetNsProp"></a>Function: xmlGetNsProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlGetNsProp		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)<br />
+</pre><p>Search and get the value of an <a href="libxml-SAX.html#attribute">attribute</a> associated to a node This <a href="libxml-SAX.html#attribute">attribute</a> has to be anchored in the namespace specified. This does the entity substitution. This function looks in DTD <a href="libxml-SAX.html#attribute">attribute</a> declaration for #FIXED or default declaration values unless DTD use has been turned off.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i>:</span></td><td>the URI of the namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value or NULL if not found. It's up to the caller to free the memory with xmlFree().</td></tr></tbody></table></div><h3><a name="xmlNewDocProp" id="xmlNewDocProp"></a>Function: xmlNewDocProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlNewDocProp		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+</pre><p>Create a new property carried by a document.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the <a href="libxml-SAX.html#attribute">attribute</a></td></tr></tbody></table></div><h3><a name="xmlFreeNode" id="xmlFreeNode"></a>Function: xmlFreeNode</h3><pre class="programlisting">void	xmlFreeNode			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+</pre><p>Free a node, this is a recursive behaviour, all the children are freed too. This doesn't unlink the child from the list, use xmlUnlinkNode() first.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node</td></tr></tbody></table></div><h3><a name="xmlFreeNs" id="xmlFreeNs"></a>Function: xmlFreeNs</h3><pre class="programlisting">void	xmlFreeNs			(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)<br />
+</pre><p>Free up the structures associated to a namespace</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the namespace pointer</td></tr></tbody></table></div><h3><a name="xmlBufferContent" id="xmlBufferContent"></a>Function: xmlBufferContent</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlBufferContent	(const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)<br />
+</pre><p>Function to extract the content of a buffer</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the internal content</td></tr></tbody></table></div><h3><a name="xmlAddPrevSibling" id="xmlAddPrevSibling"></a>Function: xmlAddPrevSibling</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlAddPrevSibling	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
 </pre><p>Add a new node @elem as the previous sibling of @cur merging adjacent TEXT nodes (@elem may be freed) If the new node was already inserted in a document it is first unlinked from its existing context. If the new node is ATTRIBUTE, it is added into properties instead of children. If there is an <a href="libxml-SAX.html#attribute">attribute</a> with equal name, it is first destroyed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the child node</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the new node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new node or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlBufferAddHead" id="xmlBufferAddHead"></a>Function: xmlBufferAddHead</h3><pre class="programlisting">void	xmlBufferAddHead	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the child node</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the new node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new node or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlNodeGetLang" id="xmlNodeGetLang"></a>Function: xmlNodeGetLang</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNodeGetLang		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+</pre><p>Searches the language of a node, i.e. the values of the xml:lang <a href="libxml-SAX.html#attribute">attribute</a> or the one carried by the nearest ancestor.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being checked</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the lang value, or NULL if not found It's up to the caller to free the memory with xmlFree().</td></tr></tbody></table></div><h3><a name="xmlBufferAddHead" id="xmlBufferAddHead"></a>Function: xmlBufferAddHead</h3><pre class="programlisting">void	xmlBufferAddHead		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 int len)<br />
 </pre><p>Add a string range to the beginning of an XML buffer. if len == -1, the length of @str is recomputed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the #xmlChar string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of #xmlChar to add</td></tr></tbody></table></div><h3><a name="xmlSetListDoc" id="xmlSetListDoc"></a>Function: xmlSetListDoc</h3><pre class="programlisting">void	xmlSetListDoc	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the #xmlChar string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of #xmlChar to add</td></tr></tbody></table></div><h3><a name="xmlSetListDoc" id="xmlSetListDoc"></a>Function: xmlSetListDoc</h3><pre class="programlisting">void	xmlSetListDoc			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
 </pre><p>update all nodes in the list to point to the right document</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>the first element</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr></tbody></table></div><h3><a name="xmlNewPI" id="xmlNewPI"></a>Function: xmlNewPI</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewPI	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>the first element</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr></tbody></table></div><h3><a name="xmlNewPI" id="xmlNewPI"></a>Function: xmlNewPI</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewPI		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p>Creation of a processing instruction element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the processing instruction name</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the PI content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlDocFormatDump" id="xmlDocFormatDump"></a>Function: xmlDocFormatDump</h3><pre class="programlisting">int	xmlDocFormatDump	(FILE * f, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 int format)<br />
-</pre><p>Dump an XML document to an open FILE.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the FILE*</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure. Note that @format = 1 provide node indenting only if <a href="libxml-globals.html#xmlIndentTreeOutput">xmlIndentTreeOutput</a> = 1 or xmlKeepBlanksDefault(0) was called</td></tr></tbody></table></div><h3><a name="xmlSetProp" id="xmlSetProp"></a>Function: xmlSetProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlSetProp	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><p>Set (or reset) an <a href="libxml-SAX.html#attribute">attribute</a> carried by a node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> pointer.</td></tr></tbody></table></div><h3><a name="xmlElemDump" id="xmlElemDump"></a>Function: xmlElemDump</h3><pre class="programlisting">void	xmlElemDump	(FILE * f, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the processing instruction name</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the PI content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlValidateNMToken" id="xmlValidateNMToken"></a>Function: xmlValidateNMToken</h3><pre class="programlisting">int	xmlValidateNMToken		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int space)<br />
+</pre><p>Check that a value conforms to the lexical space of NMToken</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to check</td></tr><tr><td><span class="term"><i><tt>space</tt></i>:</span></td><td>allow spaces in front and end of the string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlBufferSetAllocationScheme" id="xmlBufferSetAllocationScheme"></a>Function: xmlBufferSetAllocationScheme</h3><pre class="programlisting">void	xmlBufferSetAllocationScheme	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme)<br />
+</pre><p>Sets the allocation scheme for this buffer</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to tune</td></tr><tr><td><span class="term"><i><tt>scheme</tt></i>:</span></td><td>allocation scheme to use</td></tr></tbody></table></div><h3><a name="xmlGetCompressMode" id="xmlGetCompressMode"></a>Function: xmlGetCompressMode</h3><pre class="programlisting">int	xmlGetCompressMode		(void)<br />
+</pre><p>get the default compression mode used, ZLIB based.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 (uncompressed) to 9 (max compression)</td></tr></tbody></table></div><h3><a name="xmlNewChild" id="xmlNewChild"></a>Function: xmlNewChild</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewChild		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+</pre><p>Creation of a new child element, added at the end of @parent children list. @ns and @content parameters are optional (NULL). If @content is non NULL, a child list containing the TEXTs and ENTITY_REFs node will be created. NOTE: @content is supposed to be a piece of XML CDATA, so it allow entities references, but XML special chars need to be escaped first by using xmlEncodeEntitiesReentrant(). Use xmlNewTextChild() if entities support is not needed.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>a namespace if any</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the child</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the XML content of the child if any.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlNodeListGetRawString" id="xmlNodeListGetRawString"></a>Function: xmlNodeListGetRawString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNodeListGetRawString	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list, <br />					 int inLine)<br />
+</pre><p>Builds the string equivalent to the text contained in the Node list made of TEXTs and ENTITY_REFs, contrary to xmlNodeListGetString() this function doesn't do any character encoding handling.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>a Node list</td></tr><tr><td><span class="term"><i><tt>inLine</tt></i>:</span></td><td>should we replace entity contents or show their external form</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the string copy, the caller must free it with xmlFree().</td></tr></tbody></table></div><h3><a name="xmlStringLenGetNodeList" id="xmlStringLenGetNodeList"></a>Function: xmlStringLenGetNodeList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlStringLenGetNodeList	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int len)<br />
+</pre><p>Parse the value string and build the node list associated. Should produce a flat tree with only TEXTs and ENTITY_REFs.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value of the text</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the string value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the first child</td></tr></tbody></table></div><h3><a name="xmlSaveFormatFile" id="xmlSaveFormatFile"></a>Function: xmlSaveFormatFile</h3><pre class="programlisting">int	xmlSaveFormatFile		(const char * filename, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 int format)<br />
+</pre><p>Dump an XML document to a file. Will use compression if compiled in and enabled. If @filename is &quot;-&quot; the stdout file is used. If @format is set then the document will be indented on output. Note that @format = 1 provide node indenting only if <a href="libxml-globals.html#xmlIndentTreeOutput">xmlIndentTreeOutput</a> = 1 or xmlKeepBlanksDefault(0) was called</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename (or URL)</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="xmlGetNodePath" id="xmlGetNodePath"></a>Function: xmlGetNodePath</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlGetNodePath		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+</pre><p>Build a structure based Path for the given node</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new path or NULL in case of error. The caller must free the returned string</td></tr></tbody></table></div><h3><a name="xmlElemDump" id="xmlElemDump"></a>Function: xmlElemDump</h3><pre class="programlisting">void	xmlElemDump			(FILE * f, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
 </pre><p>Dump an XML/HTML node, recursive behaviour, children are printed too.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlSaveFormatFileTo" id="xmlSaveFormatFileTo"></a>Function: xmlSaveFormatFileTo</h3><pre class="programlisting">int	xmlSaveFormatFileTo	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding, <br />				 int format)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr></tbody></table></div><h3><a name="xmlCopyPropList" id="xmlCopyPropList"></a>Function: xmlCopyPropList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlCopyPropList		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
+</pre><p>Do a copy of an <a href="libxml-SAX.html#attribute">attribute</a> list.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>the element where the attributes will be grafted</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the first <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlAttrPtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlBufferWriteCHAR" id="xmlBufferWriteCHAR"></a>Function: xmlBufferWriteCHAR</h3><pre class="programlisting">void	xmlBufferWriteCHAR		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string)<br />
+</pre><p>routine which manages and grows an output buffer. This one adds xmlChars at the end of the buffer.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer</td></tr><tr><td><span class="term"><i><tt>string</tt></i>:</span></td><td>the string to add</td></tr></tbody></table></div><h3><a name="xmlSaveFormatFileTo" id="xmlSaveFormatFileTo"></a>Function: xmlSaveFormatFileTo</h3><pre class="programlisting">int	xmlSaveFormatFileTo		(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding, <br />					 int format)<br />
 </pre><p>Dump an XML document to an I/O buffer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>an output I/O buffer</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding if any assuming the I/O layer handles the trancoding</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure. Note that @format = 1 provide node indenting only if <a href="libxml-globals.html#xmlIndentTreeOutput">xmlIndentTreeOutput</a> = 1 or xmlKeepBlanksDefault(0) was called</td></tr></tbody></table></div><h3><a name="xmlGetIntSubset" id="xmlGetIntSubset"></a>Function: xmlGetIntSubset</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	xmlGetIntSubset	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>an output I/O buffer</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding if any assuming the I/O layer handles the trancoding</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure. Note that @format = 1 provide node indenting only if <a href="libxml-globals.html#xmlIndentTreeOutput">xmlIndentTreeOutput</a> = 1 or xmlKeepBlanksDefault(0) was called</td></tr></tbody></table></div><h3><a name="xmlDocFormatDump" id="xmlDocFormatDump"></a>Function: xmlDocFormatDump</h3><pre class="programlisting">int	xmlDocFormatDump		(FILE * f, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 int format)<br />
+</pre><p>Dump an XML document to an open FILE.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the FILE*</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure. Note that @format = 1 provide node indenting only if <a href="libxml-globals.html#xmlIndentTreeOutput">xmlIndentTreeOutput</a> = 1 or xmlKeepBlanksDefault(0) was called</td></tr></tbody></table></div><h3><a name="xmlGetIntSubset" id="xmlGetIntSubset"></a>Function: xmlGetIntSubset</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	xmlGetIntSubset		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
 </pre><p>Get the internal subset of a document</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document pointer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the DTD structure or NULL if not found</td></tr></tbody></table></div><h3><a name="xmlNodeBufGetContent" id="xmlNodeBufGetContent"></a>Function: xmlNodeBufGetContent</h3><pre class="programlisting">int	xmlNodeBufGetContent	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buffer, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document pointer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the DTD structure or NULL if not found</td></tr></tbody></table></div><h3><a name="xmlNodeSetSpacePreserve" id="xmlNodeSetSpacePreserve"></a>Function: xmlNodeSetSpacePreserve</h3><pre class="programlisting">void	xmlNodeSetSpacePreserve		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 int val)<br />
+</pre><p>Set (or reset) the space preserving behaviour of a node, i.e. the value of the xml:space attribute.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being changed</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the xml:space value (&quot;0&quot;: default, 1: &quot;preserve&quot;)</td></tr></tbody></table></div><h3><a name="xmlHasProp" id="xmlHasProp"></a>Function: xmlHasProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlHasProp		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Search an <a href="libxml-SAX.html#attribute">attribute</a> associated to a node This function also looks in DTD <a href="libxml-SAX.html#attribute">attribute</a> declaration for #FIXED or default declaration values unless DTD use has been turned off.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> or the <a href="libxml-SAX.html#attribute">attribute</a> declaration or NULL if neither was found.</td></tr></tbody></table></div><h3><a name="xmlNodeBufGetContent" id="xmlNodeBufGetContent"></a>Function: xmlNodeBufGetContent</h3><pre class="programlisting">int	xmlNodeBufGetContent		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buffer, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
 </pre><p>Read the value of a node @cur, this can be either the text carried directly by this node if it's a TEXT node or the aggregate string of the values carried by this node child's (TEXT and ENTITY_REF). Entity references are substituted. Fills up the buffer @buffer with this value</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a buffer</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being read</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlBufferFree" id="xmlBufferFree"></a>Function: xmlBufferFree</h3><pre class="programlisting">void	xmlBufferFree	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a buffer</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being read</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlBufferWriteChar" id="xmlBufferWriteChar"></a>Function: xmlBufferWriteChar</h3><pre class="programlisting">void	xmlBufferWriteChar		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 const char * string)<br />
+</pre><p>routine which manage and grows an output buffer. This one add C chars at the end of the array.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>string</tt></i>:</span></td><td>the string to add</td></tr></tbody></table></div><h3><a name="xmlBufferFree" id="xmlBufferFree"></a>Function: xmlBufferFree</h3><pre class="programlisting">void	xmlBufferFree			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)<br />
 </pre><p>Frees an XML buffer. It frees both the content and the structure which encapsulate it.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to free</td></tr></tbody></table></div><h3><a name="xmlReplaceNode" id="xmlReplaceNode"></a>Function: xmlReplaceNode</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlReplaceNode	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> old, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to free</td></tr></tbody></table></div><h3><a name="xmlReplaceNode" id="xmlReplaceNode"></a>Function: xmlReplaceNode</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlReplaceNode		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> old, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
 </pre><p>Unlink the old node from its current context, prune the new one at the same place. If @cur was already inserted in a document it is first unlinked from its existing context.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>old</tt></i>:</span></td><td>the old node</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the @old node</td></tr></tbody></table></div><h3><a name="xmlNewNode" id="xmlNewNode"></a>Function: xmlNewNode</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewNode	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>old</tt></i>:</span></td><td>the old node</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the @old node</td></tr></tbody></table></div><h3><a name="xmlNewNode" id="xmlNewNode"></a>Function: xmlNewNode</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewNode		(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Creation of a new node element. @ns is optional (NULL).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>namespace if any</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the node name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object. Uses xmlStrdup() to make copy of @name.</td></tr></tbody></table></div><h3><a name="xmlSaveFileTo" id="xmlSaveFileTo"></a>Function: xmlSaveFileTo</h3><pre class="programlisting">int	xmlSaveFileTo	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>namespace if any</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the node name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object. Uses xmlStrdup() to make copy of @name.</td></tr></tbody></table></div><h3><a name="xmlBufferCat" id="xmlBufferCat"></a>Function: xmlBufferCat</h3><pre class="programlisting">void	xmlBufferCat			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
+</pre><p>Append a zero terminated string to an XML buffer.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to dump</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the #xmlChar string</td></tr></tbody></table></div><h3><a name="xmlSaveFileTo" id="xmlSaveFileTo"></a>Function: xmlSaveFileTo</h3><pre class="programlisting">int	xmlSaveFileTo			(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding)<br />
 </pre><p>Dump an XML document to an I/O buffer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>an output I/O buffer</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding if any assuming the I/O layer handles the trancoding</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure.</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlNodeSetContent" id="xmlNodeSetContent"></a>Function: xmlNodeSetContent</h3><pre class="programlisting">void	xmlNodeSetContent	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>an output I/O buffer</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding if any assuming the I/O layer handles the trancoding</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="xmlCreateIntSubset" id="xmlCreateIntSubset"></a>Function: xmlCreateIntSubset</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	xmlCreateIntSubset	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
+</pre><p>Create the internal subset of a document</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document pointer</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the DTD name</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external (PUBLIC) ID</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the system ID</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new DTD structure</td></tr></tbody></table></div><h3><a name="xmlNewTextChild" id="xmlNewTextChild"></a>Function: xmlNewTextChild</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewTextChild		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+</pre><p>Creation of a new child element, added at the end of @parent children list. @ns and @content parameters are optional (NULL). If @content is non NULL, a child TEXT node will be created containing the string @content. NOTE: Use xmlNewChild() if entity support for @content is needed.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>a namespace if any</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the child</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content of the child if any.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlNewDoc" id="xmlNewDoc"></a>Function: xmlNewDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlNewDoc		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * version)<br />
+</pre><p>Creates a new XML document</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>version</tt></i>:</span></td><td><a href="libxml-tree.html#xmlChar">xmlChar</a> string giving the version of XML &quot;1.0&quot;</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new document</td></tr></tbody></table></div><h3><a name="xmlNodeSetContent" id="xmlNodeSetContent"></a>Function: xmlNodeSetContent</h3><pre class="programlisting">void	xmlNodeSetContent		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p>Replace the content of a node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being modified</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the new value of the content</td></tr></tbody></table></div><h3><a name="xmlBufferAdd" id="xmlBufferAdd"></a>Function: xmlBufferAdd</h3><pre class="programlisting">void	xmlBufferAdd	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being modified</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the new value of the content</td></tr></tbody></table></div><h3><a name="xmlBufferAdd" id="xmlBufferAdd"></a>Function: xmlBufferAdd</h3><pre class="programlisting">void	xmlBufferAdd			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 int len)<br />
 </pre><p>Add a string range to an XML buffer. if len == -1, the length of str is recomputed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to dump</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the #xmlChar string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of #xmlChar to add</td></tr></tbody></table></div><h3><a name="xmlNodeDumpOutput" id="xmlNodeDumpOutput"></a>Function: xmlNodeDumpOutput</h3><pre class="programlisting">void	xmlNodeDumpOutput	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 int level, <br />				 int format, <br />				 const char * encoding)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to dump</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the #xmlChar string</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of #xmlChar to add</td></tr></tbody></table></div><h3><a name="xmlNewCharRef" id="xmlNewCharRef"></a>Function: xmlNewCharRef</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewCharRef		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Creation of a new character <a href="libxml-SAX.html#reference">reference</a> node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the char ref string, starting with # or &quot;&amp;# ... ;&quot;</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlNodeDumpOutput" id="xmlNodeDumpOutput"></a>Function: xmlNodeDumpOutput</h3><pre class="programlisting">void	xmlNodeDumpOutput		(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 int level, <br />					 int format, <br />					 const char * encoding)<br />
 </pre><p>Dump an XML node, recursive behaviour, children are printed too. Note that @format = 1 provide node indenting only if <a href="libxml-globals.html#xmlIndentTreeOutput">xmlIndentTreeOutput</a> = 1 or xmlKeepBlanksDefault(0) was called</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>level</tt></i>:</span></td><td>the imbrication level for indenting</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>is formatting allowed</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>an optional encoding string</td></tr></tbody></table></div><h3><a name="xmlCopyNamespace" id="xmlCopyNamespace"></a>Function: xmlCopyNamespace</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	xmlCopyNamespace	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)<br />
 </pre><p>Do a copy of the namespace.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlNsPtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlSearchNsByHref" id="xmlSearchNsByHref"></a>Function: xmlSearchNsByHref</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	xmlSearchNsByHref	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlNsPtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlSearchNsByHref" id="xmlSearchNsByHref"></a>Function: xmlSearchNsByHref</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	xmlSearchNsByHref	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href)<br />
 </pre><p>Search a Ns aliasing a given URI. Recurse on the parents until it finds the defined namespace or return NULL otherwise.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td>the namespace value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace pointer or NULL.</td></tr></tbody></table></div><h3><a name="xmlAddChild" id="xmlAddChild"></a>Function: xmlAddChild</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlAddChild	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><p>Add a new node to @parent, at the end of the child (or property) list merging adjacent TEXT nodes (in which case @cur is freed) If the new node is ATTRIBUTE, it is added into properties instead of children. If there is an <a href="libxml-SAX.html#attribute">attribute</a> with equal name, it is first destroyed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the child node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the child or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlReconciliateNs" id="xmlReconciliateNs"></a>Function: xmlReconciliateNs</h3><pre class="programlisting">int	xmlReconciliateNs	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree)<br />
-</pre><p>This function checks that all the namespaces declared within the given tree are properly declared. This is needed for example after Copy or Cut and then paste operations. The subtree may still hold pointers to namespace declarations outside the subtree or invalid/masked. As much as possible the function try to reuse the existing namespaces found in the new environment. If not possible the new namespaces are redeclared on @tree at the top of the given subtree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>a node defining the subtree to reconciliate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of namespace declarations created or -1 in case of error.</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="XML_GET_CONTENT" id="XML_GET_CONTENT"></a>Macro: XML_GET_CONTENT</h3><pre>#define XML_GET_CONTENT</pre><p>Macro to extract the content pointer of a node.</p>
-<h3><a name="xmlNodeSetName" id="xmlNodeSetName"></a>Function: xmlNodeSetName</h3><pre class="programlisting">void	xmlNodeSetName	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Set (or reset) the name of a node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being changed</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the new tag name</td></tr></tbody></table></div><h3><a name="xmlValidateNCName" id="xmlValidateNCName"></a>Function: xmlValidateNCName</h3><pre class="programlisting">int	xmlValidateNCName	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 int space)<br />
-</pre><p>Check that a value conforms to the lexical space of NCName</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to check</td></tr><tr><td><span class="term"><i><tt>space</tt></i>:</span></td><td>allow spaces in front and end of the string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlNewDocComment" id="xmlNewDocComment"></a>Function: xmlNewDocComment</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewDocComment	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><p>Creation of a new node containing a <a href="libxml-SAX.html#comment">comment</a> within a document.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the <a href="libxml-SAX.html#comment">comment</a> content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-    <h3><a name="xmlGetCompressMode" id="xmlGetCompressMode"></a>Function: xmlGetCompressMode</h3><pre class="programlisting">int	xmlGetCompressMode	(void)<br />
-</pre><p>get the default compression mode used, ZLIB based.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 (uncompressed) to 9 (max compression)</td></tr></tbody></table></div><h3><a name="xmlRootNode" id="xmlRootNode"></a>Macro: xmlRootNode</h3><pre>#define xmlRootNode</pre><p>Macro for compatibility naming layer with libxml1.</p>
-<h3><a name="xmlBufferCreateSize" id="xmlBufferCreateSize"></a>Function: xmlBufferCreateSize</h3><pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	xmlBufferCreateSize	(size_t size)<br />
-</pre><p>routine to create an XML buffer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>initial size of buffer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new structure.</td></tr></tbody></table></div><h3><a name="xmlNodeListGetString" id="xmlNodeListGetString"></a>Function: xmlNodeListGetString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNodeListGetString	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list, <br />				 int inLine)<br />
-</pre><p>Build the string equivalent to the text contained in the Node list made of TEXTs and ENTITY_REFs</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>a Node list</td></tr><tr><td><span class="term"><i><tt>inLine</tt></i>:</span></td><td>should we replace entity contents or show their external form</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the string copy, the caller must free it with xmlFree().</td></tr></tbody></table></div><h3><a name="xmlSetCompressMode" id="xmlSetCompressMode"></a>Function: xmlSetCompressMode</h3><pre class="programlisting">void	xmlSetCompressMode	(int mode)<br />
-</pre><p>set the default compression mode used, ZLIB based Correct values: 0 (uncompressed) to 9 (max compression)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>mode</tt></i>:</span></td><td>the compression ratio</td></tr></tbody></table></div><h3><a name="xmlSetTreeDoc" id="xmlSetTreeDoc"></a>Function: xmlSetTreeDoc</h3><pre class="programlisting">void	xmlSetTreeDoc	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><p>update all nodes under the tree to point to the right document</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>the top element</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr></tbody></table></div><h3><a name="xmlBufferCreate" id="xmlBufferCreate"></a>Function: xmlBufferCreate</h3><pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	xmlBufferCreate	(void)<br />
-</pre><p>routine to create an XML buffer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new structure.</td></tr></tbody></table></div><h3><a name="xmlCopyNodeList" id="xmlCopyNodeList"></a>Function: xmlCopyNodeList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlCopyNodeList	(const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><p>Do a recursive copy of the node list.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the first node in the list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlNodePtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlBufferGrow" id="xmlBufferGrow"></a>Function: xmlBufferGrow</h3><pre class="programlisting">int	xmlBufferGrow	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 unsigned int len)<br />
-</pre><p>Grow the available space of an XML buffer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the minimum free size to allocate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new available space or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlAddChildList" id="xmlAddChildList"></a>Function: xmlAddChildList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlAddChildList	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><p>Add a list of node at the end of the child list of the parent merging adjacent TEXT nodes (@cur may be freed)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the first node in the list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last child or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlGetNodePath" id="xmlGetNodePath"></a>Function: xmlGetNodePath</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlGetNodePath	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><p>Build a structure based Path for the given node</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new path or NULL in case of error. The caller must free the returned string</td></tr></tbody></table></div><h3><a name="xmlFreePropList" id="xmlFreePropList"></a>Function: xmlFreePropList</h3><pre class="programlisting">void	xmlFreePropList	(<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
-</pre><p>Free a property and all its siblings, all the children are freed too.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the first property in the list</td></tr></tbody></table></div><h3><a name="xmlNodeAddContent" id="xmlNodeAddContent"></a>Function: xmlNodeAddContent</h3><pre class="programlisting">void	xmlNodeAddContent	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><p>Append the extra substring to the node content.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being modified</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>extra content</td></tr></tbody></table></div><h3><a name="xmlUnsetNsProp" id="xmlUnsetNsProp"></a>Function: xmlUnsetNsProp</h3><pre class="programlisting">int	xmlUnsetNsProp	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Remove an <a href="libxml-SAX.html#attribute">attribute</a> carried by a node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the namespace definition</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if successful, -1 if not found</td></tr></tbody></table></div><h3><a name="xmlNodeIsText" id="xmlNodeIsText"></a>Function: xmlNodeIsText</h3><pre class="programlisting">int	xmlNodeIsText	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><p>Is this node a Text node ?</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 yes, 0 no</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlAddNextSibling" id="xmlAddNextSibling"></a>Function: xmlAddNextSibling</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlAddNextSibling	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
-</pre><p>Add a new node @elem as the next sibling of @cur If the new node was already inserted in a document it is first unlinked from its existing context. As a result of text merging @elem may be freed. If the new node is ATTRIBUTE, it is added into properties instead of children. If there is an <a href="libxml-SAX.html#attribute">attribute</a> with equal name, it is first destroyed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the child node</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the new node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new node or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlIsBlankNode" id="xmlIsBlankNode"></a>Function: xmlIsBlankNode</h3><pre class="programlisting">int	xmlIsBlankNode	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><p>Checks whether this node is an empty or whitespace only (and possibly ignorable) text-node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 yes, 0 no</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlValidateName" id="xmlValidateName"></a>Function: xmlValidateName</h3><pre class="programlisting">int	xmlValidateName	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 int space)<br />
-</pre><p>Check that a value conforms to the lexical space of Name</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to check</td></tr><tr><td><span class="term"><i><tt>space</tt></i>:</span></td><td>allow spaces in front and end of the string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlNewGlobalNs" id="xmlNewGlobalNs"></a>Function: xmlNewGlobalNs</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	xmlNewGlobalNs	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
-</pre><p>Creation of a Namespace, the old way using PI and without scoping DEPRECATED !!! It now create a namespace on the root element of the document if found.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document carrying the namespace</td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td>the URI associated</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix for the namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL this functionality had been removed</td></tr></tbody></table></div><h3><a name="xmlBufferDump" id="xmlBufferDump"></a>Function: xmlBufferDump</h3><pre class="programlisting">int	xmlBufferDump	(FILE * file, <br />				 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)<br />
-</pre><p>Dumps an XML buffer to a FILE *.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>the file output</td></tr><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to dump</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of #xmlChar written</td></tr></tbody></table></div><h3><a name="xmlNewNs" id="xmlNewNs"></a>Function: xmlNewNs</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	xmlNewNs	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
-</pre><p>Creation of a new Namespace. This function will refuse to create a namespace with a similar prefix than an existing one present on this node. We use href==NULL in the case of an element creation where the namespace was not defined.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the element carrying the namespace</td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td>the URI associated</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix for the namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new namespace pointer or NULL</td></tr></tbody></table></div><h3><a name="xmlCopyDoc" id="xmlCopyDoc"></a>Function: xmlCopyDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlCopyDoc	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 int recursive)<br />
-</pre><p>Do a copy of the document info. If recursive, the content tree will be copied too as well as DTD, namespaces and entities.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>recursive</tt></i>:</span></td><td>if 1 do a recursive copy.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlDocPtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlDocDumpMemoryEnc" id="xmlDocDumpMemoryEnc"></a>Function: xmlDocDumpMemoryEnc</h3><pre class="programlisting">void	xmlDocDumpMemoryEnc	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** doc_txt_ptr, <br />				 int * doc_txt_len, <br />				 const char * txt_encoding)<br />
-</pre><p>Dump the current DOM tree into memory using the character encoding specified by the caller. Note it is up to the caller of this function to free the allocated memory with xmlFree().</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out_doc</tt></i>:</span></td><td>Document to generate XML text from</td></tr><tr><td><span class="term"><i><tt>doc_txt_ptr</tt></i>:</span></td><td>Memory pointer for allocated XML text</td></tr><tr><td><span class="term"><i><tt>doc_txt_len</tt></i>:</span></td><td>Length of the generated XML text</td></tr><tr><td><span class="term"><i><tt>txt_encoding</tt></i>:</span></td><td>Character encoding to use when generating XML text</td></tr></tbody></table></div><h3><a name="xmlTextMerge" id="xmlTextMerge"></a>Function: xmlTextMerge</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlTextMerge	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> first, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> second)<br />
-</pre><p>Merge two text nodes into one</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>first</tt></i>:</span></td><td>the first text node</td></tr><tr><td><span class="term"><i><tt>second</tt></i>:</span></td><td>the second text node being merged</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the first text node augmented</td></tr></tbody></table></div><h3><a name="xmlDocDumpMemory" id="xmlDocDumpMemory"></a>Function: xmlDocDumpMemory</h3><pre class="programlisting">void	xmlDocDumpMemory	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** mem, <br />				 int * size)<br />
-</pre><p>Dump an XML document in memory and return the #xmlChar * and it's size. It's up to the caller to free the memory with xmlFree().</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>OUT: the memory pointer</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>OUT: the memory length</td></tr></tbody></table></div><h3><a name="xmlNewTextLen" id="xmlNewTextLen"></a>Function: xmlNewTextLen</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewTextLen	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />				 int len)<br />
-</pre><p>Creation of a new text node with an extra parameter for the content's length</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the text len.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlFreeNs" id="xmlFreeNs"></a>Function: xmlFreeNs</h3><pre class="programlisting">void	xmlFreeNs	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)<br />
-</pre><p>Free up the structures associated to a namespace</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the namespace pointer</td></tr></tbody></table></div><h3><a name="xmlDocDump" id="xmlDocDump"></a>Function: xmlDocDump</h3><pre class="programlisting">int	xmlDocDump	(FILE * f, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
-</pre><p>Dump an XML document to an open FILE.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the FILE*</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="BASE_BUFFER_SIZE" id="BASE_BUFFER_SIZE"></a>Macro: BASE_BUFFER_SIZE</h3><pre>#define BASE_BUFFER_SIZE</pre><p>default buffer size 4000.</p>
-<h3><a name="xmlFreeProp" id="xmlFreeProp"></a>Function: xmlFreeProp</h3><pre class="programlisting">void	xmlFreeProp	(<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
-</pre><p>Free one attribute, all the content is freed too</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>an <a href="libxml-SAX.html#attribute">attribute</a></td></tr></tbody></table></div>
-      
-      
-    <h3><a name="xmlBufferWriteChar" id="xmlBufferWriteChar"></a>Function: xmlBufferWriteChar</h3><pre class="programlisting">void	xmlBufferWriteChar	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 const char * string)<br />
-</pre><p>routine which manage and grows an output buffer. This one add C chars at the end of the array.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>string</tt></i>:</span></td><td>the string to add</td></tr></tbody></table></div><h3><a name="xmlGetNoNsProp" id="xmlGetNoNsProp"></a>Function: xmlGetNoNsProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlGetNoNsProp	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Search and get the value of an <a href="libxml-SAX.html#attribute">attribute</a> associated to a node This does the entity substitution. This function looks in DTD <a href="libxml-SAX.html#attribute">attribute</a> declaration for #FIXED or default declaration values unless DTD use has been turned off. This function is similar to <a href="libxml-tree.html#xmlGetProp">xmlGetProp</a> except it will accept only an <a href="libxml-SAX.html#attribute">attribute</a> in no namespace.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value or NULL if not found. It's up to the caller to free the memory with xmlFree().</td></tr></tbody></table></div><h3><a name="xmlSplitQName2" id="xmlSplitQName2"></a>Function: xmlSplitQName2</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlSplitQName2	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** prefix)<br />
-</pre><p>parse an XML qualified name string [NS 5] QName ::= (Prefix ':')? LocalPart [NS 6] Prefix ::= NCName [NS 7] LocalPart ::= NCName</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the full QName</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> **</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not a QName, otherwise the local part, and prefix is updated to get the Prefix if any.</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="XML_GET_LINE" id="XML_GET_LINE"></a>Macro: XML_GET_LINE</h3><pre>#define XML_GET_LINE</pre><p>Macro to extract the line number of an element node. This will work only if line numbering is activated by calling xmlLineNumbersDefault(1) before parsing.</p>
-<h3><a name="xmlNewProp" id="xmlNewProp"></a>Function: xmlNewProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlNewProp	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><p>Create a new property carried by a node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the holding node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the <a href="libxml-SAX.html#attribute">attribute</a></td></tr></tbody></table></div><h3><a name="xmlTextConcat" id="xmlTextConcat"></a>Function: xmlTextConcat</h3><pre class="programlisting">int	xmlTextConcat	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />				 int len)<br />
-</pre><p>Concat the given string at the end of the existing node content</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>@content length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of error, 0 otherwise</td></tr></tbody></table></div>
-      
-      
-      
-      
-    <h3><a name="xmlNodeGetSpacePreserve" id="xmlNodeGetSpacePreserve"></a>Function: xmlNodeGetSpacePreserve</h3><pre class="programlisting">int	xmlNodeGetSpacePreserve	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><p>Searches the space preserving behaviour of a node, i.e. the values of the xml:space <a href="libxml-SAX.html#attribute">attribute</a> or the one carried by the nearest ancestor.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being checked</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 if xml:space is not inherited, 0 if &quot;default&quot;, 1 if &quot;preserve&quot;</td></tr></tbody></table></div><h3><a name="xmlBufferShrink" id="xmlBufferShrink"></a>Function: xmlBufferShrink</h3><pre class="programlisting">int	xmlBufferShrink	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 unsigned int len)<br />
-</pre><p>Remove the beginning of an XML buffer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to dump</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a> to remove</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of #xmlChar removed, or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="xmlNodeGetContent" id="xmlNodeGetContent"></a>Function: xmlNodeGetContent</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNodeGetContent	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><p>Read the value of a node, this can be either the text carried directly by this node if it's a TEXT node or the aggregate string of the values carried by this node child's (TEXT and ENTITY_REF). Entity references are substituted.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being read</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlChar * or NULL if no content is available. It's up to the caller to free the memory with xmlFree().</td></tr></tbody></table></div><h3><a name="XML_LOCAL_NAMESPACE" id="XML_LOCAL_NAMESPACE"></a>Macro: XML_LOCAL_NAMESPACE</h3><pre>#define XML_LOCAL_NAMESPACE</pre><p>A namespace declaration node.</p>
-<h3><a name="xmlStringLenGetNodeList" id="xmlStringLenGetNodeList"></a>Function: xmlStringLenGetNodeList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlStringLenGetNodeList	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 int len)<br />
-</pre><p>Parse the value string and build the node list associated. Should produce a flat tree with only TEXTs and ENTITY_REFs.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value of the text</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the string value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the first child</td></tr></tbody></table></div><h3><a name="xmlBuildQName" id="xmlBuildQName"></a>Function: xmlBuildQName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlBuildQName	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ncname, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * memory, <br />				 int len)<br />
-</pre><p>Builds the QName @prefix:@ncname in @memory if there is enough space and prefix is not NULL nor empty, otherwise allocate a new string. If prefix is NULL or empty it returns ncname.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ncname</tt></i>:</span></td><td>the Name</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix</td></tr><tr><td><span class="term"><i><tt>memory</tt></i>:</span></td><td>preallocated memory</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>preallocated memory length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new string which must be freed by the caller if different from @memory and @ncname or NULL in case of error</td></tr></tbody></table></div>
-      
-      
-      
-      
-    <h3><a name="xmlBufferWriteQuotedString" id="xmlBufferWriteQuotedString"></a>Function: xmlBufferWriteQuotedString</h3><pre class="programlisting">void	xmlBufferWriteQuotedString	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * string)<br />
-</pre><p>routine which manage and grows an output buffer. This one writes a quoted or double quoted #xmlChar string, checking first if it holds quote or double-quotes internally</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>string</tt></i>:</span></td><td>the string to add</td></tr></tbody></table></div><h3><a name="xmlCopyProp" id="xmlCopyProp"></a>Function: xmlCopyProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlCopyProp	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
-</pre><p>Do a copy of the attribute.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>the element where the <a href="libxml-SAX.html#attribute">attribute</a> will be grafted</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlAttrPtr, or NULL in case of error.</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-    <h3><a name="xmlSetDocCompressMode" id="xmlSetDocCompressMode"></a>Function: xmlSetDocCompressMode</h3><pre class="programlisting">void	xmlSetDocCompressMode	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 int mode)<br />
-</pre><p>set the compression ratio for a document, ZLIB based Correct values: 0 (uncompressed) to 9 (max compression)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>mode</tt></i>:</span></td><td>the compression ratio</td></tr></tbody></table></div><h3><a name="xmlCopyNode" id="xmlCopyNode"></a>Function: xmlCopyNode</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlCopyNode	(const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 int recursive)<br />
-</pre><p>Do a copy of the node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>recursive</tt></i>:</span></td><td>if 1 do a recursive copy.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlNodePtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlUnlinkNode" id="xmlUnlinkNode"></a>Function: xmlUnlinkNode</h3><pre class="programlisting">void	xmlUnlinkNode	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><p>Unlink a node from it's current context, the node is not freed</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node</td></tr></tbody></table></div><h3><a name="xmlSplitQName3" id="xmlSplitQName3"></a>Function: xmlSplitQName3</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlSplitQName3	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 int * len)<br />
-</pre><p>parse an XML qualified name string,i</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the full QName</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>an int *</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if it is not a Qualified Name, otherwise, update len with the lenght in byte of the prefix and return a pointer</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlDocSetRootElement" id="xmlDocSetRootElement"></a>Function: xmlDocSetRootElement</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlDocSetRootElement	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> root)<br />
-</pre><p>Set the root element of the document (doc-&gt;children is a list containing possibly comments, PIs, etc ...).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>root</tt></i>:</span></td><td>the new document root element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the old root element if any was found</td></tr></tbody></table></div><h3><a name="xmlSearchNs" id="xmlSearchNs"></a>Function: xmlSearchNs</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	xmlSearchNs	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)<br />
-</pre><p>Search a Ns registered under a given name space for a document. recurse on the parents until it finds the defined namespace or return NULL otherwise. @nameSpace can be NULL, this is a search for the default namespace. We don't allow to cross entities boundaries. If you don't declare the namespace within those you will be in troubles !!! A warning is generated to cover this case.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i>:</span></td><td>the namespace prefix</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace pointer or NULL.</td></tr></tbody></table></div><h3><a name="xmlGetLineNo" id="xmlGetLineNo"></a>Function: xmlGetLineNo</h3><pre class="programlisting">long	xmlGetLineNo	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><p>Get line number of @node. This requires activation of this option before invoking the parser by calling xmlLineNumbersDefault(1)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>valid node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the line number if successful, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlRemoveProp" id="xmlRemoveProp"></a>Function: xmlRemoveProp</h3><pre class="programlisting">int	xmlRemoveProp	(<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
-</pre><p>Unlink and free one attribute, all the content is freed too Note this doesn't work for namespace definition attributes</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>an <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if success and -1 in case of error.</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlNewTextChild" id="xmlNewTextChild"></a>Function: xmlNewTextChild</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewTextChild	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><p>Creation of a new child element, added at the end of @parent children list. @ns and @content parameters are optional (NULL). If @content is non NULL, a child TEXT node will be created containing the string @content. NOTE: Use xmlNewChild() if entity support for @content is needed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>a namespace if any</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the child</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content of the child if any.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlDocDumpFormatMemoryEnc" id="xmlDocDumpFormatMemoryEnc"></a>Function: xmlDocDumpFormatMemoryEnc</h3><pre class="programlisting">void	xmlDocDumpFormatMemoryEnc	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** doc_txt_ptr, <br />				 int * doc_txt_len, <br />				 const char * txt_encoding, <br />				 int format)<br />
-</pre><p>Dump the current DOM tree into memory using the character encoding specified by the caller. Note it is up to the caller of this function to free the allocated memory with xmlFree(). Note that @format = 1 provide node indenting only if <a href="libxml-globals.html#xmlIndentTreeOutput">xmlIndentTreeOutput</a> = 1 or xmlKeepBlanksDefault(0) was called</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out_doc</tt></i>:</span></td><td>Document to generate XML text from</td></tr><tr><td><span class="term"><i><tt>doc_txt_ptr</tt></i>:</span></td><td>Memory pointer for allocated XML text</td></tr><tr><td><span class="term"><i><tt>doc_txt_len</tt></i>:</span></td><td>Length of the generated XML text</td></tr><tr><td><span class="term"><i><tt>txt_encoding</tt></i>:</span></td><td>Character encoding to use when generating XML text</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr></tbody></table></div><h3><a name="xmlNewDocProp" id="xmlNewDocProp"></a>Function: xmlNewDocProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlNewDocProp	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><p>Create a new property carried by a document.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the <a href="libxml-SAX.html#attribute">attribute</a></td></tr></tbody></table></div><h3><a name="xmlFreeNode" id="xmlFreeNode"></a>Function: xmlFreeNode</h3><pre class="programlisting">void	xmlFreeNode	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><p>Free a node, this is a recursive behaviour, all the children are freed too. This doesn't unlink the child from the list, use xmlUnlinkNode() first.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node</td></tr></tbody></table></div><h3><a name="xmlNewDocTextLen" id="xmlNewDocTextLen"></a>Function: xmlNewDocTextLen</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewDocTextLen	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />				 int len)<br />
-</pre><p>Creation of a new text node with an extra content length parameter. The text node pertain to a given document.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the text len.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlBufferContent" id="xmlBufferContent"></a>Function: xmlBufferContent</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlBufferContent	(const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)<br />
-</pre><p>Function to extract the content of a buffer</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the internal content</td></tr></tbody></table></div><h3><a name="xmlNodeGetLang" id="xmlNodeGetLang"></a>Function: xmlNodeGetLang</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNodeGetLang	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><p>Searches the language of a node, i.e. the values of the xml:lang <a href="libxml-SAX.html#attribute">attribute</a> or the one carried by the nearest ancestor.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being checked</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the lang value, or NULL if not found It's up to the caller to free the memory with xmlFree().</td></tr></tbody></table></div><h3><a name="xmlValidateNMToken" id="xmlValidateNMToken"></a>Function: xmlValidateNMToken</h3><pre class="programlisting">int	xmlValidateNMToken	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 int space)<br />
-</pre><p>Check that a value conforms to the lexical space of NMToken</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to check</td></tr><tr><td><span class="term"><i><tt>space</tt></i>:</span></td><td>allow spaces in front and end of the string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlBufferSetAllocationScheme" id="xmlBufferSetAllocationScheme"></a>Function: xmlBufferSetAllocationScheme</h3><pre class="programlisting">void	xmlBufferSetAllocationScheme	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme)<br />
-</pre><p>Sets the allocation scheme for this buffer</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to tune</td></tr><tr><td><span class="term"><i><tt>scheme</tt></i>:</span></td><td>allocation scheme to use</td></tr></tbody></table></div><h3><a name="xmlNewChild" id="xmlNewChild"></a>Function: xmlNewChild</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewChild	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><p>Creation of a new child element, added at the end of @parent children list. @ns and @content parameters are optional (NULL). If @content is non NULL, a child list containing the TEXTs and ENTITY_REFs node will be created. NOTE: @content is supposed to be a piece of XML CDATA, so it allow entities references, but XML special chars need to be escaped first by using xmlEncodeEntitiesReentrant(). Use xmlNewTextChild() if entities support is not needed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>a namespace if any</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the child</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the XML content of the child if any.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlGetDocCompressMode" id="xmlGetDocCompressMode"></a>Function: xmlGetDocCompressMode</h3><pre class="programlisting">int	xmlGetDocCompressMode	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><p>get the compression ratio for a document, ZLIB based</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 (uncompressed) to 9 (max compression)</td></tr></tbody></table></div><h3><a name="xmlSaveFileEnc" id="xmlSaveFileEnc"></a>Function: xmlSaveFileEnc</h3><pre class="programlisting">int	xmlSaveFileEnc	(const char * filename, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding)<br />
-</pre><p>Dump an XML document, converting it to the given encoding</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename (or URL)</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the name of an encoding (or NULL)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="xmlCopyPropList" id="xmlCopyPropList"></a>Function: xmlCopyPropList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlCopyPropList	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
-</pre><p>Do a copy of an <a href="libxml-SAX.html#attribute">attribute</a> list.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>the element where the attributes will be grafted</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the first <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlAttrPtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="XML_XML_NAMESPACE" id="XML_XML_NAMESPACE"></a>Macro: XML_XML_NAMESPACE</h3><pre>#define XML_XML_NAMESPACE</pre><p>This is the namespace for the special xml: prefix predefined in the XML Namespace specification.</p>
-<h3><a name="xmlNodeSetContentLen" id="xmlNodeSetContentLen"></a>Function: xmlNodeSetContentLen</h3><pre class="programlisting">void	xmlNodeSetContentLen	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />				 int len)<br />
-</pre><p>Replace the content of a node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being modified</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the new value of the content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the size of @content</td></tr></tbody></table></div><h3><a name="xmlNodeSetSpacePreserve" id="xmlNodeSetSpacePreserve"></a>Function: xmlNodeSetSpacePreserve</h3><pre class="programlisting">void	xmlNodeSetSpacePreserve	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 int val)<br />
-</pre><p>Set (or reset) the space preserving behaviour of a node, i.e. the value of the xml:space attribute.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being changed</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the xml:space value (&quot;0&quot;: default, 1: &quot;preserve&quot;)</td></tr></tbody></table></div><h3><a name="xmlSetNsProp" id="xmlSetNsProp"></a>Function: xmlSetNsProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlSetNsProp	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><p>Set (or reset) an <a href="libxml-SAX.html#attribute">attribute</a> carried by a node. The ns structure must be in scope, this is not checked.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the namespace definition</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> pointer.</td></tr></tbody></table></div><h3><a name="xmlHasProp" id="xmlHasProp"></a>Function: xmlHasProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlHasProp	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Search an <a href="libxml-SAX.html#attribute">attribute</a> associated to a node This function also looks in DTD <a href="libxml-SAX.html#attribute">attribute</a> declaration for #FIXED or default declaration values unless DTD use has been turned off.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> or the <a href="libxml-SAX.html#attribute">attribute</a> declaration or NULL if neither was found.</td></tr></tbody></table></div><h3><a name="xmlBufferCat" id="xmlBufferCat"></a>Function: xmlBufferCat</h3><pre class="programlisting">void	xmlBufferCat	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
-</pre><p>Append a zero terminated string to an XML buffer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to dump</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the #xmlChar string</td></tr></tbody></table></div><h3><a name="xmlCreateIntSubset" id="xmlCreateIntSubset"></a>Function: xmlCreateIntSubset</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	xmlCreateIntSubset	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
-</pre><p>Create the internal subset of a document</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document pointer</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the DTD name</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external (PUBLIC) ID</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the system ID</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new DTD structure</td></tr></tbody></table></div><h3><a name="xmlNewDoc" id="xmlNewDoc"></a>Function: xmlNewDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlNewDoc	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * version)<br />
-</pre><p>Creates a new XML document</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>version</tt></i>:</span></td><td><a href="libxml-tree.html#xmlChar">xmlChar</a> string giving the version of XML &quot;1.0&quot;</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new document</td></tr></tbody></table></div><h3><a name="xmlNewCharRef" id="xmlNewCharRef"></a>Function: xmlNewCharRef</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewCharRef	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Creation of a new character <a href="libxml-SAX.html#reference">reference</a> node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the char ref string, starting with # or &quot;&amp;# ... ;&quot;</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlCopyNamespaceList" id="xmlCopyNamespaceList"></a>Function: xmlCopyNamespaceList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	xmlCopyNamespaceList	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td>the namespace value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace pointer or NULL.</td></tr></tbody></table></div><h3><a name="xmlCopyNamespaceList" id="xmlCopyNamespaceList"></a>Function: xmlCopyNamespaceList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	xmlCopyNamespaceList	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)<br />
 </pre><p>Do a copy of an namespace list.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the first namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlNsPtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlNewNodeEatName" id="xmlNewNodeEatName"></a>Function: xmlNewNodeEatName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewNodeEatName	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the first namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlNsPtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlNewNodeEatName" id="xmlNewNodeEatName"></a>Function: xmlNewNodeEatName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewNodeEatName	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Creation of a new node element. @ns is optional (NULL).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>namespace if any</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the node name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object, with pointer @name as new node's name. Use xmlNewNode() if a copy of @name string is is needed as new node's name.</td></tr></tbody></table></div><h3><a name="xmlBufferResize" id="xmlBufferResize"></a>Function: xmlBufferResize</h3><pre class="programlisting">int	xmlBufferResize	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 unsigned int size)<br />
-</pre><p>Resize a buffer to accommodate minimum size of @size.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to resize</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the desired size</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of problems, 1 otherwise</td></tr></tbody></table></div><h3><a name="xmlNodeSetBase" id="xmlNodeSetBase"></a>Function: xmlNodeSetBase</h3><pre class="programlisting">void	xmlNodeSetBase	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * uri)<br />
-</pre><p>Set (or reset) the base URI of a node, i.e. the value of the xml:base attribute.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being changed</td></tr><tr><td><span class="term"><i><tt>uri</tt></i>:</span></td><td>the new base URI</td></tr></tbody></table></div><h3><a name="xmlNewComment" id="xmlNewComment"></a>Function: xmlNewComment</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewComment	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><p>Creation of a new node containing a comment.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the <a href="libxml-SAX.html#comment">comment</a> content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlChildrenNode" id="xmlChildrenNode"></a>Macro: xmlChildrenNode</h3><pre>#define xmlChildrenNode</pre><p>Macro for compatibility naming layer with libxml1.</p>
-<h3><a name="xmlBufferLength" id="xmlBufferLength"></a>Function: xmlBufferLength</h3><pre class="programlisting">int	xmlBufferLength	(const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)<br />
-</pre><p>Function to get the length of a buffer</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the length of data in the internal content</td></tr></tbody></table></div><h3><a name="xmlNewText" id="xmlNewText"></a>Function: xmlNewText</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewText	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><p>Creation of a new text node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlUnsetProp" id="xmlUnsetProp"></a>Function: xmlUnsetProp</h3><pre class="programlisting">int	xmlUnsetProp	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>namespace if any</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the node name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object, with pointer @name as new node's name. Use xmlNewNode() if a copy of @name string is is needed as new node's name.</td></tr></tbody></table></div><h3><a name="xmlTextMerge" id="xmlTextMerge"></a>Function: xmlTextMerge</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlTextMerge		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> first, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> second)<br />
+</pre><p>Merge two text nodes into one</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>first</tt></i>:</span></td><td>the first text node</td></tr><tr><td><span class="term"><i><tt>second</tt></i>:</span></td><td>the second text node being merged</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the first text node augmented</td></tr></tbody></table></div><h3><a name="xmlSplitQName2" id="xmlSplitQName2"></a>Function: xmlSplitQName2</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlSplitQName2		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** prefix)<br />
+</pre><p>parse an XML qualified name string [NS 5] QName ::= (Prefix ':')? LocalPart [NS 6] Prefix ::= NCName [NS 7] LocalPart ::= NCName</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the full QName</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>a <a href="libxml-tree.html#xmlChar">xmlChar</a> **</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not a QName, otherwise the local part, and prefix is updated to get the Prefix if any.</td></tr></tbody></table></div><h3><a name="xmlUnsetProp" id="xmlUnsetProp"></a>Function: xmlUnsetProp</h3><pre class="programlisting">int	xmlUnsetProp			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Remove an <a href="libxml-SAX.html#attribute">attribute</a> carried by a node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if successful, -1 if not found</td></tr></tbody></table></div><h3><a name="xmlGetBufferAllocationScheme" id="xmlGetBufferAllocationScheme"></a>Function: xmlGetBufferAllocationScheme</h3><pre class="programlisting"><a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a>	xmlGetBufferAllocationScheme	(void)<br />
-</pre><p>Types are <a href="libxml-tree.html#XML_BUFFER_ALLOC_EXACT">XML_BUFFER_ALLOC_EXACT</a> - use exact sizes, keeps memory usage down <a href="libxml-tree.html#XML_BUFFER_ALLOC_DOUBLEIT">XML_BUFFER_ALLOC_DOUBLEIT</a> - double buffer when extra needed, improves performance</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current allocation scheme</td></tr></tbody></table></div><h3><a name="xmlSaveFile" id="xmlSaveFile"></a>Function: xmlSaveFile</h3><pre class="programlisting">int	xmlSaveFile	(const char * filename, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
-</pre><p>Dump an XML document to a file. Will use compression if compiled in and enabled. If @filename is &quot;-&quot; the stdout file is used.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename (or URL)</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="xmlSetNs" id="xmlSetNs"></a>Function: xmlSetNs</h3><pre class="programlisting">void	xmlSetNs	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns)<br />
-</pre><p>Associate a namespace to a node, a posteriori.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node in the document</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>a namespace pointer</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlGetNsProp" id="xmlGetNsProp"></a>Function: xmlGetNsProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlGetNsProp	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)<br />
-</pre><p>Search and get the value of an <a href="libxml-SAX.html#attribute">attribute</a> associated to a node This <a href="libxml-SAX.html#attribute">attribute</a> has to be anchored in the namespace specified. This does the entity substitution. This function looks in DTD <a href="libxml-SAX.html#attribute">attribute</a> declaration for #FIXED or default declaration values unless DTD use has been turned off.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i>:</span></td><td>the URI of the namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value or NULL if not found. It's up to the caller to free the memory with xmlFree().</td></tr></tbody></table></div><h3><a name="xmlNewCDataBlock" id="xmlNewCDataBlock"></a>Function: xmlNewCDataBlock</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewCDataBlock	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />				 int len)<br />
-</pre><p>Creation of a new node containing a CDATA block.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the CDATA block content content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the block</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlSaveFormatFileEnc" id="xmlSaveFormatFileEnc"></a>Function: xmlSaveFormatFileEnc</h3><pre class="programlisting">int	xmlSaveFormatFileEnc	(const char * filename, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 const char * encoding, <br />				 int format)<br />
-</pre><p>Dump an XML document to a file or an URL.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename or URL to output</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document being saved</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the name of the encoding to use or NULL.</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces be added.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of error. Note that @format = 1 provide node indenting only if <a href="libxml-globals.html#xmlIndentTreeOutput">xmlIndentTreeOutput</a> = 1 or xmlKeepBlanksDefault(0) was called</td></tr></tbody></table></div><h3><a name="xmlCopyDtd" id="xmlCopyDtd"></a>Function: xmlCopyDtd</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	xmlCopyDtd	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd)<br />
-</pre><p>Do a copy of the dtd.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>the dtd</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlDtdPtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlNewDocText" id="xmlNewDocText"></a>Function: xmlNewDocText</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewDocText	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><p>Creation of a new text node within a document.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlNodeListGetRawString" id="xmlNodeListGetRawString"></a>Function: xmlNodeListGetRawString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNodeListGetRawString	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list, <br />				 int inLine)<br />
-</pre><p>Builds the string equivalent to the text contained in the Node list made of TEXTs and ENTITY_REFs, contrary to xmlNodeListGetString() this function doesn't do any character encoding handling.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>a Node list</td></tr><tr><td><span class="term"><i><tt>inLine</tt></i>:</span></td><td>should we replace entity contents or show their external form</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the string copy, the caller must free it with xmlFree().</td></tr></tbody></table></div><h3><a name="xmlBufferCreateStatic" id="xmlBufferCreateStatic"></a>Function: xmlBufferCreateStatic</h3><pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	xmlBufferCreateStatic	(void * mem, <br />				 size_t size)<br />
-</pre><p>routine to create an XML buffer from an immutable memory area, The are won't be modified nor copied, and is expected to be present until the end of the buffer lifetime.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>the memory area</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size in byte</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new structure.</td></tr></tbody></table></div><h3><a name="xmlNewReference" id="xmlNewReference"></a>Function: xmlNewReference</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewReference	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Creation of a new <a href="libxml-SAX.html#reference">reference</a> node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#reference">reference</a> name, or the <a href="libxml-SAX.html#reference">reference</a> string with &amp; and ;</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlBufferCCat" id="xmlBufferCCat"></a>Function: xmlBufferCCat</h3><pre class="programlisting">void	xmlBufferCCat	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 const char * str)<br />
-</pre><p>Append a zero terminated C string to an XML buffer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to dump</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the C char string</td></tr></tbody></table></div><h3><a name="xmlGetNsList" id="xmlGetNsList"></a>Function: xmlGetNsList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> *	xmlGetNsList	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><p>Search all the namespace applying to a given element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an NULL terminated array of all the #xmlNsPtr found that need to be freed by the caller or NULL if no namespace if defined</td></tr></tbody></table></div><h3><a name="xmlSetBufferAllocationScheme" id="xmlSetBufferAllocationScheme"></a>Function: xmlSetBufferAllocationScheme</h3><pre class="programlisting">void	xmlSetBufferAllocationScheme	(<a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme)<br />
-</pre><p>Set the buffer allocation method. Types are <a href="libxml-tree.html#XML_BUFFER_ALLOC_EXACT">XML_BUFFER_ALLOC_EXACT</a> - use exact sizes, keeps memory usage down <a href="libxml-tree.html#XML_BUFFER_ALLOC_DOUBLEIT">XML_BUFFER_ALLOC_DOUBLEIT</a> - double buffer when extra needed, improves performance</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>scheme</tt></i>:</span></td><td>allocation method to use</td></tr></tbody></table></div><h3><a name="xmlNodeDump" id="xmlNodeDump"></a>Function: xmlNodeDump</h3><pre class="programlisting">int	xmlNodeDump	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 int level, <br />				 int format)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if successful, -1 if not found</td></tr></tbody></table></div><h3><a name="xmlBufferResize" id="xmlBufferResize"></a>Function: xmlBufferResize</h3><pre class="programlisting">int	xmlBufferResize			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 unsigned int size)<br />
+</pre><p>Resize a buffer to accommodate minimum size of @size.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to resize</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the desired size</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of problems, 1 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidateQName" id="xmlValidateQName"></a>Function: xmlValidateQName</h3><pre class="programlisting">int	xmlValidateQName		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int space)<br />
+</pre><p>Check that a value conforms to the lexical space of QName</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to check</td></tr><tr><td><span class="term"><i><tt>space</tt></i>:</span></td><td>allow spaces in front and end of the string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlNodeSetBase" id="xmlNodeSetBase"></a>Function: xmlNodeSetBase</h3><pre class="programlisting">void	xmlNodeSetBase			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * uri)<br />
+</pre><p>Set (or reset) the base URI of a node, i.e. the value of the xml:base attribute.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being changed</td></tr><tr><td><span class="term"><i><tt>uri</tt></i>:</span></td><td>the new base URI</td></tr></tbody></table></div><h3><a name="xmlNewComment" id="xmlNewComment"></a>Function: xmlNewComment</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewComment		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+</pre><p>Creation of a new node containing a comment.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the <a href="libxml-SAX.html#comment">comment</a> content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlValidateNCName" id="xmlValidateNCName"></a>Function: xmlValidateNCName</h3><pre class="programlisting">int	xmlValidateNCName		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 int space)<br />
+</pre><p>Check that a value conforms to the lexical space of NCName</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to check</td></tr><tr><td><span class="term"><i><tt>space</tt></i>:</span></td><td>allow spaces in front and end of the string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlBufferLength" id="xmlBufferLength"></a>Function: xmlBufferLength</h3><pre class="programlisting">int	xmlBufferLength			(const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)<br />
+</pre><p>Function to get the length of a buffer</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the length of data in the internal content</td></tr></tbody></table></div><h3><a name="xmlNewDocComment" id="xmlNewDocComment"></a>Function: xmlNewDocComment</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewDocComment	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+</pre><p>Creation of a new node containing a <a href="libxml-SAX.html#comment">comment</a> within a document.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the <a href="libxml-SAX.html#comment">comment</a> content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlNewText" id="xmlNewText"></a>Function: xmlNewText</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewText		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+</pre><p>Creation of a new text node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlNodeDump" id="xmlNodeDump"></a>Function: xmlNodeDump</h3><pre class="programlisting">int	xmlNodeDump			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 int level, <br />					 int format)<br />
 </pre><p>Dump an XML node, recursive behaviour,children are printed too. Note that @format = 1 provide node indenting only if <a href="libxml-globals.html#xmlIndentTreeOutput">xmlIndentTreeOutput</a> = 1 or xmlKeepBlanksDefault(0) was called</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>level</tt></i>:</span></td><td>the imbrication level for indenting</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>is formatting allowed</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written to the buffer or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlIsXHTML" id="xmlIsXHTML"></a>Function: xmlIsXHTML</h3><pre class="programlisting">int	xmlIsXHTML	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicID)<br />
-</pre><p>Try to find if the document correspond to an XHTML DTD</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>systemID</tt></i>:</span></td><td>the system identifier</td></tr><tr><td><span class="term"><i><tt>publicID</tt></i>:</span></td><td>the public identifier</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true, 0 if not and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlNodeSetLang" id="xmlNodeSetLang"></a>Function: xmlNodeSetLang</h3><pre class="programlisting">void	xmlNodeSetLang	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * lang)<br />
-</pre><p>Set the language of a node, i.e. the values of the xml:lang attribute.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being changed</td></tr><tr><td><span class="term"><i><tt>lang</tt></i>:</span></td><td>the language description</td></tr></tbody></table></div><h3><a name="xmlFreeDtd" id="xmlFreeDtd"></a>Function: xmlFreeDtd</h3><pre class="programlisting">void	xmlFreeDtd	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> cur)<br />
-</pre><p>Free a DTD structure.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the DTD structure to free up</td></tr></tbody></table></div><h3><a name="xmlFreeNodeList" id="xmlFreeNodeList"></a>Function: xmlFreeNodeList</h3><pre class="programlisting">void	xmlFreeNodeList	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><p>Free a node and all its siblings, this is a recursive behaviour, all the children are freed too.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the first node in the list</td></tr></tbody></table></div><h3><a name="xmlFreeDoc" id="xmlFreeDoc"></a>Function: xmlFreeDoc</h3><pre class="programlisting">void	xmlFreeDoc	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
-</pre><p>Free up all the structures used by a document, tree included.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>pointer to the document</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlNewDocNode" id="xmlNewDocNode"></a>Function: xmlNewDocNode</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewDocNode	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>level</tt></i>:</span></td><td>the imbrication level for indenting</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>is formatting allowed</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written to the buffer or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlGetBufferAllocationScheme" id="xmlGetBufferAllocationScheme"></a>Function: xmlGetBufferAllocationScheme</h3><pre class="programlisting"><a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a>	xmlGetBufferAllocationScheme	(void)<br />
+</pre><p>Types are <a href="libxml-tree.html#XML_BUFFER_ALLOC_EXACT">XML_BUFFER_ALLOC_EXACT</a> - use exact sizes, keeps memory usage down <a href="libxml-tree.html#XML_BUFFER_ALLOC_DOUBLEIT">XML_BUFFER_ALLOC_DOUBLEIT</a> - double buffer when extra needed, improves performance</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current allocation scheme</td></tr></tbody></table></div><h3><a name="xmlSaveFile" id="xmlSaveFile"></a>Function: xmlSaveFile</h3><pre class="programlisting">int	xmlSaveFile			(const char * filename, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
+</pre><p>Dump an XML document to a file. Will use compression if compiled in and enabled. If @filename is &quot;-&quot; the stdout file is used.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename (or URL)</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="xmlSetNs" id="xmlSetNs"></a>Function: xmlSetNs</h3><pre class="programlisting">void	xmlSetNs			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns)<br />
+</pre><p>Associate a namespace to a node, a posteriori.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node in the document</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>a namespace pointer</td></tr></tbody></table></div><h3><a name="xmlBufferCreateSize" id="xmlBufferCreateSize"></a>Function: xmlBufferCreateSize</h3><pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	xmlBufferCreateSize	(size_t size)<br />
+</pre><p>routine to create an XML buffer.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>initial size of buffer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new structure.</td></tr></tbody></table></div><h3><a name="xmlNewNs" id="xmlNewNs"></a>Function: xmlNewNs</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	xmlNewNs		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
+</pre><p>Creation of a new Namespace. This function will refuse to create a namespace with a similar prefix than an existing one present on this node. We use href==NULL in the case of an element creation where the namespace was not defined.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the element carrying the namespace</td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td>the URI associated</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix for the namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new namespace pointer or NULL</td></tr></tbody></table></div><h3><a name="xmlHasNsProp" id="xmlHasNsProp"></a>Function: xmlHasNsProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlHasNsProp		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * nameSpace)<br />
+</pre><p>Search for an <a href="libxml-SAX.html#attribute">attribute</a> associated to a node This <a href="libxml-SAX.html#attribute">attribute</a> has to be anchored in the namespace specified. This does the entity substitution. This function looks in DTD <a href="libxml-SAX.html#attribute">attribute</a> declaration for #FIXED or default declaration values unless DTD use has been turned off.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i>:</span></td><td>the URI of the namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> or the <a href="libxml-SAX.html#attribute">attribute</a> declaration or NULL if neither was found.</td></tr></tbody></table></div><h3><a name="xmlNewCDataBlock" id="xmlNewCDataBlock"></a>Function: xmlNewCDataBlock</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewCDataBlock	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />					 int len)<br />
+</pre><p>Creation of a new node containing a CDATA block.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the CDATA block content content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the block</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlSetCompressMode" id="xmlSetCompressMode"></a>Function: xmlSetCompressMode</h3><pre class="programlisting">void	xmlSetCompressMode		(int mode)<br />
+</pre><p>set the default compression mode used, ZLIB based Correct values: 0 (uncompressed) to 9 (max compression)</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>mode</tt></i>:</span></td><td>the compression ratio</td></tr></tbody></table></div><h3><a name="xmlSetTreeDoc" id="xmlSetTreeDoc"></a>Function: xmlSetTreeDoc</h3><pre class="programlisting">void	xmlSetTreeDoc			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+</pre><p>update all nodes under the tree to point to the right document</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>the top element</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr></tbody></table></div><h3><a name="xmlSaveFormatFileEnc" id="xmlSaveFormatFileEnc"></a>Function: xmlSaveFormatFileEnc</h3><pre class="programlisting">int	xmlSaveFormatFileEnc		(const char * filename, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding, <br />					 int format)<br />
+</pre><p>Dump an XML document to a file or an URL.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename or URL to output</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document being saved</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the name of the encoding to use or NULL.</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces be added.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of error. Note that @format = 1 provide node indenting only if <a href="libxml-globals.html#xmlIndentTreeOutput">xmlIndentTreeOutput</a> = 1 or xmlKeepBlanksDefault(0) was called</td></tr></tbody></table></div><h3><a name="xmlBufferCreate" id="xmlBufferCreate"></a>Function: xmlBufferCreate</h3><pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	xmlBufferCreate		(void)<br />
+</pre><p>routine to create an XML buffer.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new structure.</td></tr></tbody></table></div><h3><a name="xmlCopyNodeList" id="xmlCopyNodeList"></a>Function: xmlCopyNodeList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlCopyNodeList		(const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+</pre><p>Do a recursive copy of the node list.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the first node in the list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlNodePtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlNewDocNodeEatName" id="xmlNewDocNodeEatName"></a>Function: xmlNewDocNodeEatName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewDocNodeEatName	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p>Creation of a new node element within a document. @ns and @content are optional (NULL). NOTE: @content is supposed to be a piece of XML CDATA, so it allow entities references, but XML special chars need to be escaped first by using xmlEncodeEntitiesReentrant(). Use xmlNewDocRawNode() if you don't need entities support.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>namespace if any</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the node name</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the XML text content if any</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlDocDumpFormatMemory" id="xmlDocDumpFormatMemory"></a>Function: xmlDocDumpFormatMemory</h3><pre class="programlisting">void	xmlDocDumpFormatMemory	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** mem, <br />				 int * size, <br />				 int format)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>namespace if any</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the node name</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the XML text content if any</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlCopyDtd" id="xmlCopyDtd"></a>Function: xmlCopyDtd</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	xmlCopyDtd		(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd)<br />
+</pre><p>Do a copy of the dtd.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>the dtd</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlDtdPtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlNewDocText" id="xmlNewDocText"></a>Function: xmlNewDocText</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewDocText		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+</pre><p>Creation of a new text node within a document.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlAddChildList" id="xmlAddChildList"></a>Function: xmlAddChildList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlAddChildList		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+</pre><p>Add a list of node at the end of the child list of the parent merging adjacent TEXT nodes (@cur may be freed)</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the first node in the list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last child or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlBufferCreateStatic" id="xmlBufferCreateStatic"></a>Function: xmlBufferCreateStatic</h3><pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>	xmlBufferCreateStatic	(void * mem, <br />					 size_t size)<br />
+</pre><p>routine to create an XML buffer from an immutable memory area, The are won't be modified nor copied, and is expected to be present until the end of the buffer lifetime.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>the memory area</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size in byte</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new structure.</td></tr></tbody></table></div><h3><a name="xmlFreePropList" id="xmlFreePropList"></a>Function: xmlFreePropList</h3><pre class="programlisting">void	xmlFreePropList			(<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
+</pre><p>Free a property and all its siblings, all the children are freed too.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the first property in the list</td></tr></tbody></table></div><h3><a name="xmlNodeAddContent" id="xmlNodeAddContent"></a>Function: xmlNodeAddContent</h3><pre class="programlisting">void	xmlNodeAddContent		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+</pre><p>Append the extra substring to the node content.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being modified</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>extra content</td></tr></tbody></table></div><h3><a name="xmlUnsetNsProp" id="xmlUnsetNsProp"></a>Function: xmlUnsetNsProp</h3><pre class="programlisting">int	xmlUnsetNsProp			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Remove an <a href="libxml-SAX.html#attribute">attribute</a> carried by a node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the namespace definition</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if successful, -1 if not found</td></tr></tbody></table></div><h3><a name="xmlNewReference" id="xmlNewReference"></a>Function: xmlNewReference</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewReference		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Creation of a new <a href="libxml-SAX.html#reference">reference</a> node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#reference">reference</a> name, or the <a href="libxml-SAX.html#reference">reference</a> string with &amp; and ;</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlReconciliateNs" id="xmlReconciliateNs"></a>Function: xmlReconciliateNs</h3><pre class="programlisting">int	xmlReconciliateNs		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree)<br />
+</pre><p>This function checks that all the namespaces declared within the given tree are properly declared. This is needed for example after Copy or Cut and then paste operations. The subtree may still hold pointers to namespace declarations outside the subtree or invalid/masked. As much as possible the function try to reuse the existing namespaces found in the new environment. If not possible the new namespaces are redeclared on @tree at the top of the given subtree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>a node defining the subtree to reconciliate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of namespace declarations created or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlBufferCCat" id="xmlBufferCCat"></a>Function: xmlBufferCCat</h3><pre class="programlisting">void	xmlBufferCCat			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 const char * str)<br />
+</pre><p>Append a zero terminated C string to an XML buffer.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to dump</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the C char string</td></tr></tbody></table></div><h3><a name="xmlAddNextSibling" id="xmlAddNextSibling"></a>Function: xmlAddNextSibling</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlAddNextSibling	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
+</pre><p>Add a new node @elem as the next sibling of @cur If the new node was already inserted in a document it is first unlinked from its existing context. As a result of text merging @elem may be freed. If the new node is ATTRIBUTE, it is added into properties instead of children. If there is an <a href="libxml-SAX.html#attribute">attribute</a> with equal name, it is first destroyed.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the child node</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the new node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new node or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlGetNsList" id="xmlGetNsList"></a>Function: xmlGetNsList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> *	xmlGetNsList		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+</pre><p>Search all the namespace applying to a given element.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an NULL terminated array of all the #xmlNsPtr found that need to be freed by the caller or NULL if no namespace if defined</td></tr></tbody></table></div><h3><a name="xmlBufferGrow" id="xmlBufferGrow"></a>Function: xmlBufferGrow</h3><pre class="programlisting">int	xmlBufferGrow			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 unsigned int len)<br />
+</pre><p>Grow the available space of an XML buffer.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the minimum free size to allocate</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new available space or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlNodeIsText" id="xmlNodeIsText"></a>Function: xmlNodeIsText</h3><pre class="programlisting">int	xmlNodeIsText			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+</pre><p>Is this node a Text node ?</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 yes, 0 no</td></tr></tbody></table></div><h3><a name="xmlSetProp" id="xmlSetProp"></a>Function: xmlSetProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlSetProp		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+</pre><p>Set (or reset) an <a href="libxml-SAX.html#attribute">attribute</a> carried by a node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> pointer.</td></tr></tbody></table></div><h3><a name="xmlNewGlobalNs" id="xmlNewGlobalNs"></a>Function: xmlNewGlobalNs</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>	xmlNewGlobalNs		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * href, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
+</pre><p>Creation of a Namespace, the old way using PI and without scoping DEPRECATED !!! It now create a namespace on the root element of the document if found.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document carrying the namespace</td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td>the URI associated</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix for the namespace</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL this functionality had been removed</td></tr></tbody></table></div><h3><a name="xmlBufferDump" id="xmlBufferDump"></a>Function: xmlBufferDump</h3><pre class="programlisting">int	xmlBufferDump			(FILE * file, <br />					 <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf)<br />
+</pre><p>Dumps an XML buffer to a FILE *.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>the file output</td></tr><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to dump</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of #xmlChar written</td></tr></tbody></table></div><h3><a name="xmlNodeGetContent" id="xmlNodeGetContent"></a>Function: xmlNodeGetContent</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNodeGetContent	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+</pre><p>Read the value of a node, this can be either the text carried directly by this node if it's a TEXT node or the aggregate string of the values carried by this node child's (TEXT and ENTITY_REF). Entity references are substituted.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being read</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlChar * or NULL if no content is available. It's up to the caller to free the memory with xmlFree().</td></tr></tbody></table></div><h3><a name="xmlIsXHTML" id="xmlIsXHTML"></a>Function: xmlIsXHTML</h3><pre class="programlisting">int	xmlIsXHTML			(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * systemID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * publicID)<br />
+</pre><p>Try to find if the document correspond to an XHTML DTD</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>systemID</tt></i>:</span></td><td>the system identifier</td></tr><tr><td><span class="term"><i><tt>publicID</tt></i>:</span></td><td>the public identifier</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true, 0 if not and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlNodeSetLang" id="xmlNodeSetLang"></a>Function: xmlNodeSetLang</h3><pre class="programlisting">void	xmlNodeSetLang			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * lang)<br />
+</pre><p>Set the language of a node, i.e. the values of the xml:lang attribute.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being changed</td></tr><tr><td><span class="term"><i><tt>lang</tt></i>:</span></td><td>the language description</td></tr></tbody></table></div><h3><a name="xmlDocDumpMemoryEnc" id="xmlDocDumpMemoryEnc"></a>Function: xmlDocDumpMemoryEnc</h3><pre class="programlisting">void	xmlDocDumpMemoryEnc		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** doc_txt_ptr, <br />					 int * doc_txt_len, <br />					 const char * txt_encoding)<br />
+</pre><p>Dump the current DOM tree into memory using the character encoding specified by the caller. Note it is up to the caller of this function to free the allocated memory with xmlFree().</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out_doc</tt></i>:</span></td><td>Document to generate XML text from</td></tr><tr><td><span class="term"><i><tt>doc_txt_ptr</tt></i>:</span></td><td>Memory pointer for allocated XML text</td></tr><tr><td><span class="term"><i><tt>doc_txt_len</tt></i>:</span></td><td>Length of the generated XML text</td></tr><tr><td><span class="term"><i><tt>txt_encoding</tt></i>:</span></td><td>Character encoding to use when generating XML text</td></tr></tbody></table></div><h3><a name="xmlFreeDtd" id="xmlFreeDtd"></a>Function: xmlFreeDtd</h3><pre class="programlisting">void	xmlFreeDtd			(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> cur)<br />
+</pre><p>Free a DTD structure.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the DTD structure to free up</td></tr></tbody></table></div><h3><a name="xmlFreeNodeList" id="xmlFreeNodeList"></a>Function: xmlFreeNodeList</h3><pre class="programlisting">void	xmlFreeNodeList			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+</pre><p>Free a node and all its siblings, this is a recursive behaviour, all the children are freed too.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the first node in the list</td></tr></tbody></table></div><h3><a name="xmlFreeDoc" id="xmlFreeDoc"></a>Function: xmlFreeDoc</h3><pre class="programlisting">void	xmlFreeDoc			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
+</pre><p>Free up all the structures used by a document, tree included.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>pointer to the document</td></tr></tbody></table></div><h3><a name="xmlDocDumpMemory" id="xmlDocDumpMemory"></a>Function: xmlDocDumpMemory</h3><pre class="programlisting">void	xmlDocDumpMemory		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** mem, <br />					 int * size)<br />
+</pre><p>Dump an XML document in memory and return the #xmlChar * and it's size. It's up to the caller to free the memory with xmlFree().</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>OUT: the memory pointer</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>OUT: the memory length</td></tr></tbody></table></div><h3><a name="xmlNewTextLen" id="xmlNewTextLen"></a>Function: xmlNewTextLen</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewTextLen		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />					 int len)<br />
+</pre><p>Creation of a new text node with an extra parameter for the content's length</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the text len.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlCopyDoc" id="xmlCopyDoc"></a>Function: xmlCopyDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlCopyDoc		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 int recursive)<br />
+</pre><p>Do a copy of the document info. If recursive, the content tree will be copied too as well as DTD, namespaces and entities.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>recursive</tt></i>:</span></td><td>if 1 do a recursive copy.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new #xmlDocPtr, or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlNewDocNode" id="xmlNewDocNode"></a>Function: xmlNewDocNode</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewDocNode		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+</pre><p>Creation of a new node element within a document. @ns and @content are optional (NULL). NOTE: @content is supposed to be a piece of XML CDATA, so it allow entities references, but XML special chars need to be escaped first by using xmlEncodeEntitiesReentrant(). Use xmlNewDocRawNode() if you don't need entities support.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>namespace if any</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the node name</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the XML text content if any</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlDocDump" id="xmlDocDump"></a>Function: xmlDocDump</h3><pre class="programlisting">int	xmlDocDump			(FILE * f, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br />
+</pre><p>Dump an XML document to an open FILE.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the FILE*</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="xmlSaveFileEnc" id="xmlSaveFileEnc"></a>Function: xmlSaveFileEnc</h3><pre class="programlisting">int	xmlSaveFileEnc			(const char * filename, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 const char * encoding)<br />
+</pre><p>Dump an XML document, converting it to the given encoding</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename (or URL)</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the name of an encoding (or NULL)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="xmlFreeProp" id="xmlFreeProp"></a>Function: xmlFreeProp</h3><pre class="programlisting">void	xmlFreeProp			(<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur)<br />
+</pre><p>Free one attribute, all the content is freed too</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>an <a href="libxml-SAX.html#attribute">attribute</a></td></tr></tbody></table></div><h3><a name="xmlSetNsProp" id="xmlSetNsProp"></a>Function: xmlSetNsProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlSetNsProp		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+</pre><p>Set (or reset) an <a href="libxml-SAX.html#attribute">attribute</a> carried by a node. The ns structure must be in scope, this is not checked.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the namespace definition</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> pointer.</td></tr></tbody></table></div><h3><a name="xmlIsBlankNode" id="xmlIsBlankNode"></a>Function: xmlIsBlankNode</h3><pre class="programlisting">int	xmlIsBlankNode			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+</pre><p>Checks whether this node is an empty or whitespace only (and possibly ignorable) text-node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 yes, 0 no</td></tr></tbody></table></div><h3><a name="xmlDocDumpFormatMemory" id="xmlDocDumpFormatMemory"></a>Function: xmlDocDumpFormatMemory</h3><pre class="programlisting">void	xmlDocDumpFormatMemory		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** mem, <br />					 int * size, <br />					 int format)<br />
 </pre><p>Dump an XML document in memory and return the #xmlChar * and it's size. It's up to the caller to free the memory with xmlFree(). Note that @format = 1 provide node indenting only if <a href="libxml-globals.html#xmlIndentTreeOutput">xmlIndentTreeOutput</a> = 1 or xmlKeepBlanksDefault(0) was called</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>OUT: the memory pointer</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>OUT: the memory length</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlNewDtd" id="xmlNewDtd"></a>Function: xmlNewDtd</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	xmlNewDtd	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>OUT: the memory pointer</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>OUT: the memory length</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr></tbody></table></div><h3><a name="xmlGetNoNsProp" id="xmlGetNoNsProp"></a>Function: xmlGetNoNsProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlGetNoNsProp		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Search and get the value of an <a href="libxml-SAX.html#attribute">attribute</a> associated to a node This does the entity substitution. This function looks in DTD <a href="libxml-SAX.html#attribute">attribute</a> declaration for #FIXED or default declaration values unless DTD use has been turned off. This function is similar to <a href="libxml-tree.html#xmlGetProp">xmlGetProp</a> except it will accept only an <a href="libxml-SAX.html#attribute">attribute</a> in no namespace.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value or NULL if not found. It's up to the caller to free the memory with xmlFree().</td></tr></tbody></table></div><h3><a name="xmlDocDumpFormatMemoryEnc" id="xmlDocDumpFormatMemoryEnc"></a>Function: xmlDocDumpFormatMemoryEnc</h3><pre class="programlisting">void	xmlDocDumpFormatMemoryEnc	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc, <br />					 <a href="libxml-tree.html#xmlChar">xmlChar</a> ** doc_txt_ptr, <br />					 int * doc_txt_len, <br />					 const char * txt_encoding, <br />					 int format)<br />
+</pre><p>Dump the current DOM tree into memory using the character encoding specified by the caller. Note it is up to the caller of this function to free the allocated memory with xmlFree(). Note that @format = 1 provide node indenting only if <a href="libxml-globals.html#xmlIndentTreeOutput">xmlIndentTreeOutput</a> = 1 or xmlKeepBlanksDefault(0) was called</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out_doc</tt></i>:</span></td><td>Document to generate XML text from</td></tr><tr><td><span class="term"><i><tt>doc_txt_ptr</tt></i>:</span></td><td>Memory pointer for allocated XML text</td></tr><tr><td><span class="term"><i><tt>doc_txt_len</tt></i>:</span></td><td>Length of the generated XML text</td></tr><tr><td><span class="term"><i><tt>txt_encoding</tt></i>:</span></td><td>Character encoding to use when generating XML text</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr></tbody></table></div><h3><a name="xmlNewProp" id="xmlNewProp"></a>Function: xmlNewProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlNewProp		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+</pre><p>Create a new property carried by a node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the holding node</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the <a href="libxml-SAX.html#attribute">attribute</a></td></tr></tbody></table></div><h3><a name="xmlTextConcat" id="xmlTextConcat"></a>Function: xmlTextConcat</h3><pre class="programlisting">int	xmlTextConcat			(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />					 int len)<br />
+</pre><p>Concat the given string at the end of the existing node content</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>@content length</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of error, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlNodeGetSpacePreserve" id="xmlNodeGetSpacePreserve"></a>Function: xmlNodeGetSpacePreserve</h3><pre class="programlisting">int	xmlNodeGetSpacePreserve		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+</pre><p>Searches the space preserving behaviour of a node, i.e. the values of the xml:space <a href="libxml-SAX.html#attribute">attribute</a> or the one carried by the nearest ancestor.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node being checked</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 if xml:space is not inherited, 0 if &quot;default&quot;, 1 if &quot;preserve&quot;</td></tr></tbody></table></div><h3><a name="xmlNewDocTextLen" id="xmlNewDocTextLen"></a>Function: xmlNewDocTextLen</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlNewDocTextLen	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />					 int len)<br />
+</pre><p>Creation of a new text node with an extra content length parameter. The text node pertain to a given document.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the text content</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the text len.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new node object.</td></tr></tbody></table></div><h3><a name="xmlNewDtd" id="xmlNewDtd"></a>Function: xmlNewDtd</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>	xmlNewDtd		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ExternalID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
 </pre><p>Creation of a new DTD for the external subset. To create an internal subset, use xmlCreateIntSubset().</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document pointer</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the DTD name</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the system ID</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new DTD structure</td></tr></tbody></table></div><h3><a name="xmlNewNsProp" id="xmlNewNsProp"></a>Function: xmlNewNsProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlNewNsProp	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document pointer</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the DTD name</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the system ID</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new DTD structure</td></tr></tbody></table></div><h3><a name="xmlBufferShrink" id="xmlBufferShrink"></a>Function: xmlBufferShrink</h3><pre class="programlisting">int	xmlBufferShrink			(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 unsigned int len)<br />
+</pre><p>Remove the beginning of an XML buffer.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the buffer to dump</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a> to remove</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of #xmlChar removed, or -1 in case of failure.</td></tr></tbody></table></div><h3><a name="xmlNewNsProp" id="xmlNewNsProp"></a>Function: xmlNewNsProp</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlNewNsProp		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
 </pre><p>Create a new property tagged with a namespace and carried by a node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the holding node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the namespace</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the <a href="libxml-SAX.html#attribute">attribute</a></td></tr></tbody></table></div><h3><a name="xmlFreeNsList" id="xmlFreeNsList"></a>Function: xmlFreeNsList</h3><pre class="programlisting">void	xmlFreeNsList	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the holding node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the namespace</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value of the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the <a href="libxml-SAX.html#attribute">attribute</a></td></tr></tbody></table></div><h3><a name="xmlFreeNsList" id="xmlFreeNsList"></a>Function: xmlFreeNsList</h3><pre class="programlisting">void	xmlFreeNsList			(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur)<br />
 </pre><p>Free up all the structures associated to the chained namespaces.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the first namespace pointer</td></tr></tbody></table></div><h3><a name="xmlGetLastChild" id="xmlGetLastChild"></a>Function: xmlGetLastChild</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlGetLastChild	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the first namespace pointer</td></tr></tbody></table></div><h3><a name="xmlGetLastChild" id="xmlGetLastChild"></a>Function: xmlGetLastChild</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlGetLastChild		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent)<br />
 </pre><p>Search the last child of a node.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>parent</tt></i>:</span></td><td>the parent node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the last child or NULL if none.</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-uri.html b/doc/html/libxml-uri.html
index 51bb59c..3de5066 100644
--- a/doc/html/libxml-uri.html
+++ b/doc/html/libxml-uri.html
@@ -10,20 +10,22 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module uri from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module uri from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-tree.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-tree.html">tree</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-valid.html">valid</a></th><td><a accesskey="n" href="libxml-valid.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>library of generic URI related routines Implements RFC 2396 </p><h2>Table of Contents</h2><pre class="programlisting">int	<a href="#xmlNormalizeURIPath">xmlNormalizeURIPath</a>	(char * path)<br />
-</pre><pre class="programlisting">void	<a href="#xmlPrintURI">xmlPrintURI</a>	(FILE * stream, <br />				 <a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri)<br />
-</pre><pre class="programlisting">char *	<a href="#xmlURIUnescapeString">xmlURIUnescapeString</a>	(const char * str, <br />				 int len, <br />				 char * target)<br />
-</pre><pre class="programlisting"><a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a>	<a href="#xmlParseURI">xmlParseURI</a>	(const char * str)<br />
-</pre><pre class="programlisting"><a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a>	<a href="#xmlCreateURI">xmlCreateURI</a>	(void)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlURIEscapeStr">xmlURIEscapeStr</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * list)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCanonicPath">xmlCanonicPath</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * path)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeURI">xmlFreeURI</a>	(<a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri)<br />
-</pre><pre class="programlisting">int	<a href="#xmlParseURIReference">xmlParseURIReference</a>	(<a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri, <br />				 const char * str)<br />
+    </style><title>Module uri from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module uri from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-tree.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-tree.html">tree</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-valid.html">valid</a></th><td><a accesskey="n" href="libxml-valid.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>library of generic URI related routines Implements RFC 2396 </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xmlURI">xmlURI</a><br />struct _xmlURI
 </pre><pre class="programlisting">Typedef <a href="libxml-uri.html#xmlURI">xmlURI</a> * <a name="xmlURIPtr" id="xmlURIPtr">xmlURIPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlSaveUri">xmlSaveUri</a>	(<a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlURIEscape">xmlURIEscape</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
-</pre><pre class="programlisting">Structure <a name="xmlURI" id="xmlURI">xmlURI</a><br />struct _xmlURI {
+</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlBuildURI">xmlBuildURI</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * base)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlCanonicPath">xmlCanonicPath</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * path)</pre>
+<pre class="programlisting"><a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a>	<a href="#xmlCreateURI">xmlCreateURI</a>		(void)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeURI">xmlFreeURI</a>			(<a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri)</pre>
+<pre class="programlisting">int	<a href="#xmlNormalizeURIPath">xmlNormalizeURIPath</a>		(char * path)</pre>
+<pre class="programlisting"><a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a>	<a href="#xmlParseURI">xmlParseURI</a>		(const char * str)</pre>
+<pre class="programlisting">int	<a href="#xmlParseURIReference">xmlParseURIReference</a>		(<a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri, <br />					 const char * str)</pre>
+<pre class="programlisting">void	<a href="#xmlPrintURI">xmlPrintURI</a>			(FILE * stream, <br />					 <a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlSaveUri">xmlSaveUri</a>		(<a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlURIEscape">xmlURIEscape</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlURIEscapeStr">xmlURIEscapeStr</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * list)</pre>
+<pre class="programlisting">char *	<a href="#xmlURIUnescapeString">xmlURIUnescapeString</a>		(const char * str, <br />					 int len, <br />					 char * target)</pre>
+<h2>Description</h2>
+<h3><a name="xmlURI" id="xmlURI">Structure xmlURI</a></h3><pre class="programlisting">Structure xmlURI<br />struct _xmlURI {
     char *	scheme	: the URI scheme
     char *	opaque	: opaque part
     char *	authority	: the authority part
@@ -34,41 +36,28 @@
     char *	query	: the query string
     char *	fragment	: the fragment identifier
     int	cleanup	: parsing potentially unclean URI
-}</pre><br /><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlBuildURI">xmlBuildURI</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * base)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlNormalizeURIPath" id="xmlNormalizeURIPath"></a>Function: xmlNormalizeURIPath</h3><pre class="programlisting">int	xmlNormalizeURIPath	(char * path)<br />
+}</pre><h3><a name="xmlNormalizeURIPath" id="xmlNormalizeURIPath"></a>Function: xmlNormalizeURIPath</h3><pre class="programlisting">int	xmlNormalizeURIPath		(char * path)<br />
 </pre><p>Applies the 5 normalization steps to a path string--that is, RFC 2396 Section 5.2, steps 6.c through 6.g. Normalization occurs directly on the string, no new allocation is done</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>path</tt></i>:</span></td><td>pointer to the path string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or an error code</td></tr></tbody></table></div><h3><a name="xmlPrintURI" id="xmlPrintURI"></a>Function: xmlPrintURI</h3><pre class="programlisting">void	xmlPrintURI	(FILE * stream, <br />				 <a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>path</tt></i>:</span></td><td>pointer to the path string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or an error code</td></tr></tbody></table></div><h3><a name="xmlPrintURI" id="xmlPrintURI"></a>Function: xmlPrintURI</h3><pre class="programlisting">void	xmlPrintURI			(FILE * stream, <br />					 <a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri)<br />
 </pre><p>Prints the URI in the stream @steam.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>stream</tt></i>:</span></td><td>a FILE* for the output</td></tr><tr><td><span class="term"><i><tt>uri</tt></i>:</span></td><td>pointer to an <a href="libxml-uri.html#xmlURI">xmlURI</a></td></tr></tbody></table></div><h3><a name="xmlURIUnescapeString" id="xmlURIUnescapeString"></a>Function: xmlURIUnescapeString</h3><pre class="programlisting">char *	xmlURIUnescapeString	(const char * str, <br />				 int len, <br />				 char * target)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>stream</tt></i>:</span></td><td>a FILE* for the output</td></tr><tr><td><span class="term"><i><tt>uri</tt></i>:</span></td><td>pointer to an <a href="libxml-uri.html#xmlURI">xmlURI</a></td></tr></tbody></table></div><h3><a name="xmlURIUnescapeString" id="xmlURIUnescapeString"></a>Function: xmlURIUnescapeString</h3><pre class="programlisting">char *	xmlURIUnescapeString		(const char * str, <br />					 int len, <br />					 char * target)<br />
 </pre><p>Unescaping routine, does not do validity checks ! Output is direct unsigned char translation of %XX values (no encoding)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the string to unescape</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length in bytes to unescape (or &lt;= 0 to indicate full string)</td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>optional destination buffer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an copy of the string, but unescaped</td></tr></tbody></table></div><h3><a name="xmlParseURI" id="xmlParseURI"></a>Function: xmlParseURI</h3><pre class="programlisting"><a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a>	xmlParseURI	(const char * str)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the string to unescape</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length in bytes to unescape (or &lt;= 0 to indicate full string)</td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>optional destination buffer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an copy of the string, but unescaped</td></tr></tbody></table></div><h3><a name="xmlParseURI" id="xmlParseURI"></a>Function: xmlParseURI</h3><pre class="programlisting"><a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a>	xmlParseURI		(const char * str)<br />
 </pre><p>Parse an URI URI-reference = [ absoluteURI | relativeURI ] [ &quot;#&quot; fragment ]</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the URI string to analyze</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a newly build <a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlCreateURI" id="xmlCreateURI"></a>Function: xmlCreateURI</h3><pre class="programlisting"><a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a>	xmlCreateURI	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the URI string to analyze</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a newly build <a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlCreateURI" id="xmlCreateURI"></a>Function: xmlCreateURI</h3><pre class="programlisting"><a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a>	xmlCreateURI		(void)<br />
 </pre><p>Simply creates an empty <a href="libxml-uri.html#xmlURI">xmlURI</a></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new structure or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlURIEscapeStr" id="xmlURIEscapeStr"></a>Function: xmlURIEscapeStr</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlURIEscapeStr	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * list)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new structure or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlURIEscapeStr" id="xmlURIEscapeStr"></a>Function: xmlURIEscapeStr</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlURIEscapeStr		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * list)<br />
 </pre><p>This routine escapes a string to hex, ignoring reserved <a href="libxml-SAX.html#characters">characters</a> (a-z) and the <a href="libxml-SAX.html#characters">characters</a> in the exception list.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>string to escape</td></tr><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>exception list string of chars not to escape</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new escaped string or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlCanonicPath" id="xmlCanonicPath"></a>Function: xmlCanonicPath</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCanonicPath	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * path)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>string to escape</td></tr><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>exception list string of chars not to escape</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new escaped string or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlCanonicPath" id="xmlCanonicPath"></a>Function: xmlCanonicPath</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlCanonicPath		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * path)<br />
 </pre><p>Constructs a canonic path from the specified path.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>path</tt></i>:</span></td><td>the resource locator in a filesystem notation</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new canonic path, or a duplicate of the path parameter if the construction fails. The caller is responsible for freeing the memory occupied by the returned string. If there is insufficient memory available, or the argument is NULL, the function returns NULL.</td></tr></tbody></table></div><h3><a name="xmlFreeURI" id="xmlFreeURI"></a>Function: xmlFreeURI</h3><pre class="programlisting">void	xmlFreeURI	(<a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>path</tt></i>:</span></td><td>the resource locator in a filesystem notation</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new canonic path, or a duplicate of the path parameter if the construction fails. The caller is responsible for freeing the memory occupied by the returned string. If there is insufficient memory available, or the argument is NULL, the function returns NULL.</td></tr></tbody></table></div><h3><a name="xmlFreeURI" id="xmlFreeURI"></a>Function: xmlFreeURI</h3><pre class="programlisting">void	xmlFreeURI			(<a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri)<br />
 </pre><p>Free up the <a href="libxml-uri.html#xmlURI">xmlURI</a> struct</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>uri</tt></i>:</span></td><td>pointer to an <a href="libxml-uri.html#xmlURI">xmlURI</a></td></tr></tbody></table></div><h3><a name="xmlParseURIReference" id="xmlParseURIReference"></a>Function: xmlParseURIReference</h3><pre class="programlisting">int	xmlParseURIReference	(<a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri, <br />				 const char * str)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>uri</tt></i>:</span></td><td>pointer to an <a href="libxml-uri.html#xmlURI">xmlURI</a></td></tr></tbody></table></div><h3><a name="xmlParseURIReference" id="xmlParseURIReference"></a>Function: xmlParseURIReference</h3><pre class="programlisting">int	xmlParseURIReference		(<a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri, <br />					 const char * str)<br />
 </pre><p>Parse an URI <a href="libxml-SAX.html#reference">reference</a> string and fills in the appropriate fields of the @uri structure URI-reference = [ absoluteURI | relativeURI ] [ &quot;#&quot; fragment ]</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>uri</tt></i>:</span></td><td>pointer to an URI structure</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the string to analyze</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or the error code</td></tr></tbody></table></div><h3><a name="xmlSaveUri" id="xmlSaveUri"></a>Function: xmlSaveUri</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlSaveUri	(<a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>uri</tt></i>:</span></td><td>pointer to an URI structure</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the string to analyze</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or the error code</td></tr></tbody></table></div><h3><a name="xmlSaveUri" id="xmlSaveUri"></a>Function: xmlSaveUri</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlSaveUri		(<a href="libxml-uri.html#xmlURIPtr">xmlURIPtr</a> uri)<br />
 </pre><p>Save the URI as an escaped string</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>uri</tt></i>:</span></td><td>pointer to an <a href="libxml-uri.html#xmlURI">xmlURI</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new string (to be deallocated by caller)</td></tr></tbody></table></div><h3><a name="xmlURIEscape" id="xmlURIEscape"></a>Function: xmlURIEscape</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlURIEscape	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>uri</tt></i>:</span></td><td>pointer to an <a href="libxml-uri.html#xmlURI">xmlURI</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new string (to be deallocated by caller)</td></tr></tbody></table></div><h3><a name="xmlURIEscape" id="xmlURIEscape"></a>Function: xmlURIEscape</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlURIEscape		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
 </pre><p>Escaping routine, does not do validity checks ! It will try to escape the chars needing this, but this is heuristic based it's impossible to be sure.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the string of the URI to escape</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an copy of the string, but escaped 25 May 2001 Uses <a href="libxml-uri.html#xmlParseURI">xmlParseURI</a> and <a href="libxml-uri.html#xmlURIEscapeStr">xmlURIEscapeStr</a> to try to escape correctly according to RFC2396. - Carl Douglas</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlBuildURI" id="xmlBuildURI"></a>Function: xmlBuildURI</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlBuildURI	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * base)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the string of the URI to escape</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an copy of the string, but escaped 25 May 2001 Uses <a href="libxml-uri.html#xmlParseURI">xmlParseURI</a> and <a href="libxml-uri.html#xmlURIEscapeStr">xmlURIEscapeStr</a> to try to escape correctly according to RFC2396. - Carl Douglas</td></tr></tbody></table></div><h3><a name="xmlBuildURI" id="xmlBuildURI"></a>Function: xmlBuildURI</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlBuildURI		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * URI, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * base)<br />
 </pre><p>Computes he final URI of the <a href="libxml-SAX.html#reference">reference</a> done by checking that the given URI is valid, and building the final URI using the base URI. This is processed according to section 5.2 of the RFC 2396 5.2. Resolving Relative References to Absolute Form</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI instance found in the document</td></tr><tr><td><span class="term"><i><tt>base</tt></i>:</span></td><td>the base value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new URI string (to be freed by the caller) or NULL in case of error.</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-valid.html b/doc/html/libxml-valid.html
index 1ae64c9..c56636f 100644
--- a/doc/html/libxml-valid.html
+++ b/doc/html/libxml-valid.html
@@ -10,75 +10,111 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module valid from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module valid from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-uri.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-uri.html">uri</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xinclude.html">xinclude</a></th><td><a accesskey="n" href="libxml-xinclude.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>API for the DTD handling and the validity checking </p><h2>Table of Contents</h2><pre class="programlisting">int	<a href="#xmlValidateDocument">xmlValidateDocument</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeNotationTable">xmlFreeNotationTable</a>	(<a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table)<br />
-</pre><pre class="programlisting">Structure <a name="xmlNotationTable" id="xmlNotationTable">xmlNotationTable</a><br />struct _xmlHashTable {
+    </style><title>Module valid from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module valid from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-uri.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-uri.html">uri</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xinclude.html">xinclude</a></th><td><a accesskey="n" href="libxml-xinclude.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>API for the DTD handling and the validity checking </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xmlAttributeTable">xmlAttributeTable</a><br />struct _xmlHashTable
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">int	<a href="#xmlValidateNameValue">xmlValidateNameValue</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSnprintfElementContent">xmlSnprintfElementContent</a>	(char * buf, <br />				 int size, <br />				 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content, <br />				 int glob)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlRefPtr">xmlRefPtr</a>	<a href="#xmlAddRef">xmlAddRef</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDumpAttributeDecl">xmlDumpAttributeDecl</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a> attr)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidateDocumentFinal">xmlValidateDocumentFinal</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-valid.html#xmlElementTable">xmlElementTable</a> * <a name="xmlElementTablePtr" id="xmlElementTablePtr">xmlElementTablePtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlValidateDtdFinal">xmlValidateDtdFinal</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDumpAttributeTable">xmlDumpAttributeTable</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	<a href="#xmlCreateEnumeration">xmlCreateEnumeration</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidateOneAttribute">xmlValidateOneAttribute</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidGetValidElements">xmlValidGetValidElements</a>	(<a href="libxml-tree.html#xmlNode">xmlNode</a> * prev, <br />				 <a href="libxml-tree.html#xmlNode">xmlNode</a> * next, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** list, <br />				 int max)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDumpNotationTable">xmlDumpNotationTable</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDumpNotationDecl">xmlDumpNotationDecl</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a> nota)<br />
-</pre><pre class="programlisting">int	<a href="#xmlIsID">xmlIsID</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a>	<a href="#xmlGetDtdQAttrDesc">xmlGetDtdQAttrDesc</a>	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeAttributeTable">xmlFreeAttributeTable</a>	(<a href="libxml-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table)<br />
-</pre><pre class="programlisting"><a name="xmlValidityErrorFunc" id="xmlValidityErrorFunc"></a>Function type: xmlValidityErrorFunc
-void	xmlValidityErrorFunc	(void * ctx, <br />				 const char * msg, <br />				 ... ...)
-</pre><p>Callback called when a validity error is found. This is a message oriented function similar to an *printf function.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an <a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> validity error context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the string to format *printf like vararg</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>remaining arguments to the format</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlValidateAttributeDecl">xmlValidateAttributeDecl</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a> attr)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a>	<a href="#xmlGetDtdQElementDesc">xmlGetDtdQElementDesc</a>	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
-</pre><pre class="programlisting"><a href="libxml-list.html#xmlListPtr">xmlListPtr</a>	<a href="#xmlGetRefs">xmlGetRefs</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID)<br />
-</pre><pre class="programlisting"><a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a>	<a href="#xmlCopyNotationTable">xmlCopyNotationTable</a>	(<a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-valid.html#xmlNotationTable">xmlNotationTable</a> * <a name="xmlNotationTablePtr" id="xmlNotationTablePtr">xmlNotationTablePtr</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlElementTable" id="xmlElementTable">xmlElementTable</a><br />struct _xmlHashTable {
-The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">int	<a href="#xmlValidGetPotentialChildren">xmlValidGetPotentialChildren</a>	(<a href="libxml-tree.html#xmlElementContent">xmlElementContent</a> * ctree, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** list, <br />				 int * len, <br />				 int max)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a>	<a href="#xmlAddNotationDecl">xmlAddNotationDecl</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * PublicID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidateElementDecl">xmlValidateElementDecl</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> elem)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a>	<a href="#xmlAddAttributeDecl">xmlAddAttributeDecl</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns, <br />				 <a href="libxml-tree.html#xmlAttributeType">xmlAttributeType</a> type, <br />				 <a href="libxml-tree.html#xmlAttributeDefault">xmlAttributeDefault</a> def, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * defaultValue, <br />				 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlGetID">xmlGetID</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlIDPtr">xmlIDPtr</a>	<a href="#xmlAddID">xmlAddID</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
-</pre><pre class="programlisting">Structure <a name="xmlValidState" id="xmlValidState">xmlValidState</a><br />struct _xmlValidState {
-The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">void	<a href="#xmlSprintfElementContent">xmlSprintfElementContent</a>	(char * buf, <br />				 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content, <br />				 int glob)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidateOneElement">xmlValidateOneElement</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidateNmtokenValue">xmlValidateNmtokenValue</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDumpElementTable">xmlDumpElementTable</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table)<br />
 </pre><pre class="programlisting">Typedef <a href="libxml-valid.html#xmlAttributeTable">xmlAttributeTable</a> * <a name="xmlAttributeTablePtr" id="xmlAttributeTablePtr">xmlAttributeTablePtr</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlIDTable" id="xmlIDTable">xmlIDTable</a><br />struct _xmlHashTable {
+</pre><pre class="programlisting">Structure <a href="#xmlElementTable">xmlElementTable</a><br />struct _xmlHashTable
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting"><a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a>	<a href="#xmlAddElementDecl">xmlAddElementDecl</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-tree.html#xmlElementTypeVal">xmlElementTypeVal</a> type, <br />				 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a>	<a href="#xmlGetDtdNotationDesc">xmlGetDtdNotationDesc</a>	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidateOneNamespace">xmlValidateOneNamespace</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidatePushElement">xmlValidatePushElement</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * qname)<br />
-</pre><pre class="programlisting">int	<a href="#xmlIsRef">xmlIsRef</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
-</pre><pre class="programlisting">int	<a href="#xmlRemoveRef">xmlRemoveRef</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
-</pre><pre class="programlisting"><a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a>	<a href="#xmlCopyElementTable">xmlCopyElementTable</a>	(<a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidateNmtokensValue">xmlValidateNmtokensValue</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeRefTable">xmlFreeRefTable</a>	(<a href="libxml-valid.html#xmlRefTablePtr">xmlRefTablePtr</a> table)<br />
+</pre><pre class="programlisting">Typedef <a href="libxml-valid.html#xmlElementTable">xmlElementTable</a> * <a name="xmlElementTablePtr" id="xmlElementTablePtr">xmlElementTablePtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlIDTable">xmlIDTable</a><br />struct _xmlHashTable
+The content of this structure is not made public by the API.
+</pre><pre class="programlisting">Typedef <a href="libxml-valid.html#xmlIDTable">xmlIDTable</a> * <a name="xmlIDTablePtr" id="xmlIDTablePtr">xmlIDTablePtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlNotationTable">xmlNotationTable</a><br />struct _xmlHashTable
+The content of this structure is not made public by the API.
+</pre><pre class="programlisting">Typedef <a href="libxml-valid.html#xmlNotationTable">xmlNotationTable</a> * <a name="xmlNotationTablePtr" id="xmlNotationTablePtr">xmlNotationTablePtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlRefTable">xmlRefTable</a><br />struct _xmlHashTable
+The content of this structure is not made public by the API.
+</pre><pre class="programlisting">Typedef <a href="libxml-valid.html#xmlRefTable">xmlRefTable</a> * <a name="xmlRefTablePtr" id="xmlRefTablePtr">xmlRefTablePtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlValidCtxt">xmlValidCtxt</a><br />struct _xmlValidCtxt
 </pre><pre class="programlisting">Typedef <a href="libxml-valid.html#xmlValidCtxt">xmlValidCtxt</a> * <a name="xmlValidCtxtPtr" id="xmlValidCtxtPtr">xmlValidCtxtPtr</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlRefTable" id="xmlRefTable">xmlRefTable</a><br />struct _xmlHashTable {
+</pre><pre class="programlisting">Structure <a href="#xmlValidState">xmlValidState</a><br />struct _xmlValidState
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting"><a name="xmlValidityWarningFunc" id="xmlValidityWarningFunc"></a>Function type: xmlValidityWarningFunc
-void	xmlValidityWarningFunc	(void * ctx, <br />				 const char * msg, <br />				 ... ...)
-</pre><p>Callback called when a validity warning is found. This is a message oriented function similar to an *printf function.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an <a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> validity error context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the string to format *printf like vararg</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>remaining arguments to the format</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlRemoveID">xmlRemoveID</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeElementTable">xmlFreeElementTable</a>	(<a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidatePopElement">xmlValidatePopElement</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * qname)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeIDTable">xmlFreeIDTable</a>	(<a href="libxml-valid.html#xmlIDTablePtr">xmlIDTablePtr</a> table)<br />
-</pre><pre class="programlisting">Structure <a name="xmlValidCtxt" id="xmlValidCtxt">xmlValidCtxt</a><br />struct _xmlValidCtxt {
+</pre><pre class="programlisting">Typedef <a href="libxml-valid.html#xmlValidState">xmlValidState</a> * <a name="xmlValidStatePtr" id="xmlValidStatePtr">xmlValidStatePtr</a>
+</pre><pre class="programlisting"><a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a>	<a href="#xmlAddAttributeDecl">xmlAddAttributeDecl</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns, <br />					 <a href="libxml-tree.html#xmlAttributeType">xmlAttributeType</a> type, <br />					 <a href="libxml-tree.html#xmlAttributeDefault">xmlAttributeDefault</a> def, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * defaultValue, <br />					 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a>	<a href="#xmlAddElementDecl">xmlAddElementDecl</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-tree.html#xmlElementTypeVal">xmlElementTypeVal</a> type, <br />					 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlIDPtr">xmlIDPtr</a>	<a href="#xmlAddID">xmlAddID</a>		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a>	<a href="#xmlAddNotationDecl">xmlAddNotationDecl</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * PublicID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlRefPtr">xmlRefPtr</a>	<a href="#xmlAddRef">xmlAddRef</a>		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)</pre>
+<pre class="programlisting"><a href="libxml-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a>	<a href="#xmlCopyAttributeTable">xmlCopyAttributeTable</a>	(<a href="libxml-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>	<a href="#xmlCopyElementContent">xmlCopyElementContent</a>	(<a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a>	<a href="#xmlCopyElementTable">xmlCopyElementTable</a>	(<a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	<a href="#xmlCopyEnumeration">xmlCopyEnumeration</a>	(<a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a>	<a href="#xmlCopyNotationTable">xmlCopyNotationTable</a>	(<a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	<a href="#xmlCreateEnumeration">xmlCreateEnumeration</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">void	<a href="#xmlDumpAttributeDecl">xmlDumpAttributeDecl</a>		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a> attr)</pre>
+<pre class="programlisting">void	<a href="#xmlDumpAttributeTable">xmlDumpAttributeTable</a>		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table)</pre>
+<pre class="programlisting">void	<a href="#xmlDumpElementDecl">xmlDumpElementDecl</a>		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> elem)</pre>
+<pre class="programlisting">void	<a href="#xmlDumpElementTable">xmlDumpElementTable</a>		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table)</pre>
+<pre class="programlisting">void	<a href="#xmlDumpNotationDecl">xmlDumpNotationDecl</a>		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a> nota)</pre>
+<pre class="programlisting">void	<a href="#xmlDumpNotationTable">xmlDumpNotationTable</a>		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeAttributeTable">xmlFreeAttributeTable</a>		(<a href="libxml-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeElementContent">xmlFreeElementContent</a>		(<a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> cur)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeElementTable">xmlFreeElementTable</a>		(<a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeEnumeration">xmlFreeEnumeration</a>		(<a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> cur)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeIDTable">xmlFreeIDTable</a>			(<a href="libxml-valid.html#xmlIDTablePtr">xmlIDTablePtr</a> table)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeNotationTable">xmlFreeNotationTable</a>		(<a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeRefTable">xmlFreeRefTable</a>			(<a href="libxml-valid.html#xmlRefTablePtr">xmlRefTablePtr</a> table)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeValidCtxt">xmlFreeValidCtxt</a>		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a>	<a href="#xmlGetDtdAttrDesc">xmlGetDtdAttrDesc</a>	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a>	<a href="#xmlGetDtdElementDesc">xmlGetDtdElementDesc</a>	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a>	<a href="#xmlGetDtdNotationDesc">xmlGetDtdNotationDesc</a>	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a>	<a href="#xmlGetDtdQAttrDesc">xmlGetDtdQAttrDesc</a>	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a>	<a href="#xmlGetDtdQElementDesc">xmlGetDtdQElementDesc</a>	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	<a href="#xmlGetID">xmlGetID</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID)</pre>
+<pre class="programlisting"><a href="libxml-list.html#xmlListPtr">xmlListPtr</a>	<a href="#xmlGetRefs">xmlGetRefs</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID)</pre>
+<pre class="programlisting">int	<a href="#xmlIsID">xmlIsID</a>			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)</pre>
+<pre class="programlisting">int	<a href="#xmlIsMixedElement">xmlIsMixedElement</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">int	<a href="#xmlIsRef">xmlIsRef</a>			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>	<a href="#xmlNewElementContent">xmlNewElementContent</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 <a href="libxml-tree.html#xmlElementContentType">xmlElementContentType</a> type)</pre>
+<pre class="programlisting"><a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a>	<a href="#xmlNewValidCtxt">xmlNewValidCtxt</a>		(void)</pre>
+<pre class="programlisting">int	<a href="#xmlRemoveID">xmlRemoveID</a>			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)</pre>
+<pre class="programlisting">int	<a href="#xmlRemoveRef">xmlRemoveRef</a>			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)</pre>
+<pre class="programlisting">void	<a href="#xmlSnprintfElementContent">xmlSnprintfElementContent</a>	(char * buf, <br />					 int size, <br />					 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content, <br />					 int glob)</pre>
+<pre class="programlisting">void	<a href="#xmlSprintfElementContent">xmlSprintfElementContent</a>	(char * buf, <br />					 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content, <br />					 int glob)</pre>
+<pre class="programlisting">int	<a href="#xmlValidBuildContentModel">xmlValidBuildContentModel</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> elem)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlValidCtxtNormalizeAttributeValue">xmlValidCtxtNormalizeAttributeValue</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />							 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />							 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting">int	<a href="#xmlValidGetPotentialChildren">xmlValidGetPotentialChildren</a>	(<a href="libxml-tree.html#xmlElementContent">xmlElementContent</a> * ctree, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** list, <br />					 int * len, <br />					 int max)</pre>
+<pre class="programlisting">int	<a href="#xmlValidGetValidElements">xmlValidGetValidElements</a>	(<a href="libxml-tree.html#xmlNode">xmlNode</a> * prev, <br />					 <a href="libxml-tree.html#xmlNode">xmlNode</a> * next, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** list, <br />					 int max)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlValidNormalizeAttributeValue">xmlValidNormalizeAttributeValue</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateAttributeDecl">xmlValidateAttributeDecl</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a> attr)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateAttributeValue">xmlValidateAttributeValue</a>	(<a href="libxml-tree.html#xmlAttributeType">xmlAttributeType</a> type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateDocument">xmlValidateDocument</a>		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateDocumentFinal">xmlValidateDocumentFinal</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateDtd">xmlValidateDtd</a>			(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateDtdFinal">xmlValidateDtdFinal</a>		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateElement">xmlValidateElement</a>		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateElementDecl">xmlValidateElementDecl</a>		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> elem)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateNameValue">xmlValidateNameValue</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateNamesValue">xmlValidateNamesValue</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateNmtokenValue">xmlValidateNmtokenValue</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateNmtokensValue">xmlValidateNmtokensValue</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateNotationDecl">xmlValidateNotationDecl</a>		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a> nota)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateNotationUse">xmlValidateNotationUse</a>		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * notationName)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateOneAttribute">xmlValidateOneAttribute</a>		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateOneElement">xmlValidateOneElement</a>		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateOneNamespace">xmlValidateOneNamespace</a>		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)</pre>
+<pre class="programlisting">int	<a href="#xmlValidatePopElement">xmlValidatePopElement</a>		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * qname)</pre>
+<pre class="programlisting">int	<a href="#xmlValidatePushCData">xmlValidatePushCData</a>		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#xmlValidatePushElement">xmlValidatePushElement</a>		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * qname)</pre>
+<pre class="programlisting">int	<a href="#xmlValidateRoot">xmlValidateRoot</a>			(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting">Function type: <a href="#xmlValidityErrorFunc">xmlValidityErrorFunc</a>
+void	<a href="#xmlValidityErrorFunc">xmlValidityErrorFunc</a>		(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre>
+<pre class="programlisting">Function type: <a href="#xmlValidityWarningFunc">xmlValidityWarningFunc</a>
+void	<a href="#xmlValidityWarningFunc">xmlValidityWarningFunc</a>		(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre>
+<h2>Description</h2>
+<h3><a name="xmlElementTable" id="xmlElementTable">Structure xmlElementTable</a></h3><pre class="programlisting">Structure xmlElementTable<br />struct _xmlHashTable {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlAttributeTable" id="xmlAttributeTable">Structure xmlAttributeTable</a></h3><pre class="programlisting">Structure xmlAttributeTable<br />struct _xmlHashTable {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlNotationTable" id="xmlNotationTable">Structure xmlNotationTable</a></h3><pre class="programlisting">Structure xmlNotationTable<br />struct _xmlHashTable {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlRefTable" id="xmlRefTable">Structure xmlRefTable</a></h3><pre class="programlisting">Structure xmlRefTable<br />struct _xmlHashTable {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlValidState" id="xmlValidState">Structure xmlValidState</a></h3><pre class="programlisting">Structure xmlValidState<br />struct _xmlValidState {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlValidCtxt" id="xmlValidCtxt">Structure xmlValidCtxt</a></h3><pre class="programlisting">Structure xmlValidCtxt<br />struct _xmlValidCtxt {
     void *	userData	: user specific data block
     <a href="libxml-valid.html#xmlValidityErrorFunc">xmlValidityErrorFunc</a>	error	: the callback in case of errors
     <a href="libxml-valid.html#xmlValidityWarningFunc">xmlValidityWarningFunc</a>	warning	: the callback in case of warning Node an
@@ -97,201 +133,146 @@
     <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	state	: used to build the automata
     void *	am
     void *	state
-}</pre><br /><pre class="programlisting">void	<a href="#xmlFreeValidCtxt">xmlFreeValidCtxt</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> cur)<br />
-</pre><pre class="programlisting"><a href="libxml-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a>	<a href="#xmlCopyAttributeTable">xmlCopyAttributeTable</a>	(<a href="libxml-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>	<a href="#xmlCopyElementContent">xmlCopyElementContent</a>	(<a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> cur)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidateAttributeValue">xmlValidateAttributeValue</a>	(<a href="libxml-tree.html#xmlAttributeType">xmlAttributeType</a> type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidateRoot">xmlValidateRoot</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlValidCtxtNormalizeAttributeValue">xmlValidCtxtNormalizeAttributeValue</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-valid.html#xmlValidState">xmlValidState</a> * <a name="xmlValidStatePtr" id="xmlValidStatePtr">xmlValidStatePtr</a>
-
-</pre><pre class="programlisting">Typedef <a href="libxml-valid.html#xmlIDTable">xmlIDTable</a> * <a name="xmlIDTablePtr" id="xmlIDTablePtr">xmlIDTablePtr</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlFreeEnumeration">xmlFreeEnumeration</a>	(<a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> cur)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidateNamesValue">xmlValidateNamesValue</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	<a href="#xmlCopyEnumeration">xmlCopyEnumeration</a>	(<a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> cur)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a>	<a href="#xmlGetDtdAttrDesc">xmlGetDtdAttrDesc</a>	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidateDtd">xmlValidateDtd</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd)<br />
-</pre><pre class="programlisting"><a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a>	<a href="#xmlNewValidCtxt">xmlNewValidCtxt</a>	(void)<br />
-</pre><pre class="programlisting">int	<a href="#xmlIsMixedElement">xmlIsMixedElement</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">void	<a href="#xmlDumpElementDecl">xmlDumpElementDecl</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> elem)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlValidNormalizeAttributeValue">xmlValidNormalizeAttributeValue</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidBuildContentModel">xmlValidBuildContentModel</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> elem)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidateElement">xmlValidateElement</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidateNotationUse">xmlValidateNotationUse</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * notationName)<br />
-</pre><pre class="programlisting">Structure <a name="xmlAttributeTable" id="xmlAttributeTable">xmlAttributeTable</a><br />struct _xmlHashTable {
+}</pre><h3><a name="xmlIDTable" id="xmlIDTable">Structure xmlIDTable</a></h3><pre class="programlisting">Structure xmlIDTable<br />struct _xmlHashTable {
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">int	<a href="#xmlValidateNotationDecl">xmlValidateNotationDecl</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a> nota)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>	<a href="#xmlNewElementContent">xmlNewElementContent</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-tree.html#xmlElementContentType">xmlElementContentType</a> type)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a>	<a href="#xmlGetDtdElementDesc">xmlGetDtdElementDesc</a>	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeElementContent">xmlFreeElementContent</a>	(<a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> cur)<br />
-</pre><pre class="programlisting">int	<a href="#xmlValidatePushCData">xmlValidatePushCData</a>	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data, <br />				 int len)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-valid.html#xmlRefTable">xmlRefTable</a> * <a name="xmlRefTablePtr" id="xmlRefTablePtr">xmlRefTablePtr</a>
-
-</pre><h2>Description</h2>
-<h3><a name="xmlValidateDocument" id="xmlValidateDocument"></a>Function: xmlValidateDocument</h3><pre class="programlisting">int	xmlValidateDocument	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><p>Try to validate the document instance basically it does the all the checks described by the XML Rec i.e. validates the internal and external subset (if present) and validate the document tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlFreeNotationTable" id="xmlFreeNotationTable"></a>Function: xmlFreeNotationTable</h3><pre class="programlisting">void	xmlFreeNotationTable	(<a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table)<br />
+}</pre><h3><a name="xmlFreeNotationTable" id="xmlFreeNotationTable"></a>Function: xmlFreeNotationTable</h3><pre class="programlisting">void	xmlFreeNotationTable		(<a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table)<br />
 </pre><p>Deallocate the memory used by an entities hash table.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An notation table</td></tr></tbody></table></div><h3><a name="xmlValidateNameValue" id="xmlValidateNameValue"></a>Function: xmlValidateNameValue</h3><pre class="programlisting">int	xmlValidateNameValue	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An notation table</td></tr></tbody></table></div><h3><a name="xmlValidateNameValue" id="xmlValidateNameValue"></a>Function: xmlValidateNameValue</h3><pre class="programlisting">int	xmlValidateNameValue		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
 </pre><p>Validate that the given value match Name production</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>an Name value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlSnprintfElementContent" id="xmlSnprintfElementContent"></a>Function: xmlSnprintfElementContent</h3><pre class="programlisting">void	xmlSnprintfElementContent	(char * buf, <br />				 int size, <br />				 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content, <br />				 int glob)<br />
-</pre><p>This will dump the content of the element content definition Intended just for the debug routine</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>an output buffer</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the buffer size</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>An element table</td></tr><tr><td><span class="term"><i><tt>glob</tt></i>:</span></td><td>1 if one must print the englobing parenthesis, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlAddRef" id="xmlAddRef"></a>Function: xmlAddRef</h3><pre class="programlisting"><a href="libxml-tree.html#xmlRefPtr">xmlRefPtr</a>	xmlAddRef	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>an Name value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidateElement" id="xmlValidateElement"></a>Function: xmlValidateElement</h3><pre class="programlisting">int	xmlValidateElement		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
+</pre><p>Try to validate the subtree under an element</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlAddRef" id="xmlAddRef"></a>Function: xmlAddRef</h3><pre class="programlisting"><a href="libxml-tree.html#xmlRefPtr">xmlRefPtr</a>	xmlAddRef		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
 </pre><p>Register a new ref declaration</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>pointer to the document</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value name</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> holding the Ref</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the new <a href="libxml-tree.html#xmlRefPtr">xmlRefPtr</a></td></tr></tbody></table></div><h3><a name="xmlDumpAttributeDecl" id="xmlDumpAttributeDecl"></a>Function: xmlDumpAttributeDecl</h3><pre class="programlisting">void	xmlDumpAttributeDecl	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a> attr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>pointer to the document</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value name</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> holding the Ref</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the new <a href="libxml-tree.html#xmlRefPtr">xmlRefPtr</a></td></tr></tbody></table></div><h3><a name="xmlDumpAttributeDecl" id="xmlDumpAttributeDecl"></a>Function: xmlDumpAttributeDecl</h3><pre class="programlisting">void	xmlDumpAttributeDecl		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a> attr)<br />
 </pre><p>This will dump the content of the <a href="libxml-SAX.html#attribute">attribute</a> declaration as an XML DTD definition</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>An <a href="libxml-SAX.html#attribute">attribute</a> declaration</td></tr></tbody></table></div><h3><a name="xmlValidateDocumentFinal" id="xmlValidateDocumentFinal"></a>Function: xmlValidateDocumentFinal</h3><pre class="programlisting">int	xmlValidateDocumentFinal	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>An <a href="libxml-SAX.html#attribute">attribute</a> declaration</td></tr></tbody></table></div><h3><a name="xmlValidateDocumentFinal" id="xmlValidateDocumentFinal"></a>Function: xmlValidateDocumentFinal</h3><pre class="programlisting">int	xmlValidateDocumentFinal	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
 </pre><p>Does the final step for the document validation once all the incremental validation steps have been completed basically it does the following checks described by the XML Rec Check all the IDREF/IDREFS attributes definition for validity</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidateDtdFinal" id="xmlValidateDtdFinal"></a>Function: xmlValidateDtdFinal</h3><pre class="programlisting">int	xmlValidateDtdFinal	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidateDtdFinal" id="xmlValidateDtdFinal"></a>Function: xmlValidateDtdFinal</h3><pre class="programlisting">int	xmlValidateDtdFinal		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
 </pre><p>Does the final step for the dtds validation once all the subsets have been parsed basically it does the following checks described by the XML Rec - check that ENTITY and ENTITIES type attributes default or possible values matches one of the defined entities. - check that NOTATION type attributes default or possible values matches one of the defined notations.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 if invalid and -1 if not well-formed</td></tr></tbody></table></div><h3><a name="xmlDumpAttributeTable" id="xmlDumpAttributeTable"></a>Function: xmlDumpAttributeTable</h3><pre class="programlisting">void	xmlDumpAttributeTable	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 if invalid and -1 if not well-formed</td></tr></tbody></table></div><h3><a name="xmlDumpAttributeTable" id="xmlDumpAttributeTable"></a>Function: xmlDumpAttributeTable</h3><pre class="programlisting">void	xmlDumpAttributeTable		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table)<br />
 </pre><p>This will dump the content of the <a href="libxml-SAX.html#attribute">attribute</a> table as an XML DTD definition</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An <a href="libxml-SAX.html#attribute">attribute</a> table</td></tr></tbody></table></div><h3><a name="xmlCreateEnumeration" id="xmlCreateEnumeration"></a>Function: xmlCreateEnumeration</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	xmlCreateEnumeration	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>create and initialize an enumeration <a href="libxml-SAX.html#attribute">attribute</a> node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the enumeration name or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> just created or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlValidateOneAttribute" id="xmlValidateOneAttribute"></a>Function: xmlValidateOneAttribute</h3><pre class="programlisting">int	xmlValidateOneAttribute	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the enumeration name or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> just created or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlValidateOneAttribute" id="xmlValidateOneAttribute"></a>Function: xmlValidateOneAttribute</h3><pre class="programlisting">int	xmlValidateOneAttribute		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
 </pre><p>Try to validate a single <a href="libxml-SAX.html#attribute">attribute</a> for an element basically it does the following checks as described by the XML-1.0 recommendation: - [ VC: Attribute Value Type ] - [ VC: Fixed Attribute Default ] - [ VC: Entity Name ] - [ VC: Name Token ] - [ VC: ID ] - [ VC: IDREF ] - [ VC: Entity Name ] - [ VC: Notation Attributes ] The ID/IDREF uniqueness and matching are done separately</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>an <a href="libxml-SAX.html#attribute">attribute</a> instance</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value (without entities processing)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidGetValidElements" id="xmlValidGetValidElements"></a>Function: xmlValidGetValidElements</h3><pre class="programlisting">int	xmlValidGetValidElements	(<a href="libxml-tree.html#xmlNode">xmlNode</a> * prev, <br />				 <a href="libxml-tree.html#xmlNode">xmlNode</a> * next, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** list, <br />				 int max)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>an <a href="libxml-SAX.html#attribute">attribute</a> instance</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value (without entities processing)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidGetValidElements" id="xmlValidGetValidElements"></a>Function: xmlValidGetValidElements</h3><pre class="programlisting">int	xmlValidGetValidElements	(<a href="libxml-tree.html#xmlNode">xmlNode</a> * prev, <br />					 <a href="libxml-tree.html#xmlNode">xmlNode</a> * next, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** list, <br />					 int max)<br />
 </pre><p>This function returns the list of authorized children to insert within an existing tree while respecting the validity constraints forced by the Dtd. The insertion point is defined using @prev and @next in the following ways: to insert before 'node': xmlValidGetValidElements(node-&gt;prev, node, ... to insert next 'node': xmlValidGetValidElements(node, node-&gt;next, ... to replace 'node': xmlValidGetValidElements(node-&gt;prev, node-&gt;next, ... to prepend a child to 'node': xmlValidGetValidElements(NULL, node-&gt;childs, to append a child to 'node': xmlValidGetValidElements(node-&gt;last, NULL, ... pointers to the element names are inserted at the beginning of the array and do not need to be freed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>prev</tt></i>:</span></td><td>an element to insert after</td></tr><tr><td><span class="term"><i><tt>next</tt></i>:</span></td><td>an element to insert next</td></tr><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>an array to store the list of child names</td></tr><tr><td><span class="term"><i><tt>max</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of element in the list, or -1 in case of error. If the function returns the value @max the caller is invited to grow the receiving array and retry.</td></tr></tbody></table></div><h3><a name="xmlDumpNotationTable" id="xmlDumpNotationTable"></a>Function: xmlDumpNotationTable</h3><pre class="programlisting">void	xmlDumpNotationTable	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>prev</tt></i>:</span></td><td>an element to insert after</td></tr><tr><td><span class="term"><i><tt>next</tt></i>:</span></td><td>an element to insert next</td></tr><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>an array to store the list of child names</td></tr><tr><td><span class="term"><i><tt>max</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of element in the list, or -1 in case of error. If the function returns the value @max the caller is invited to grow the receiving array and retry.</td></tr></tbody></table></div><h3><a name="xmlDumpNotationTable" id="xmlDumpNotationTable"></a>Function: xmlDumpNotationTable</h3><pre class="programlisting">void	xmlDumpNotationTable		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table)<br />
 </pre><p>This will dump the content of the notation table as an XML DTD definition</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>A notation table</td></tr></tbody></table></div><h3><a name="xmlDumpNotationDecl" id="xmlDumpNotationDecl"></a>Function: xmlDumpNotationDecl</h3><pre class="programlisting">void	xmlDumpNotationDecl	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a> nota)<br />
-</pre><p>This will dump the content the notation declaration as an XML DTD definition</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>nota</tt></i>:</span></td><td>A notation declaration</td></tr></tbody></table></div><h3><a name="xmlIsID" id="xmlIsID"></a>Function: xmlIsID</h3><pre class="programlisting">int	xmlIsID	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
-</pre><p>Determine whether an <a href="libxml-SAX.html#attribute">attribute</a> is of type ID. In case we have DTD(s) then this is done if DTD loading has been requested. In the case of HTML documents parsed with the HTML parser, then ID detection is done systematically.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the element carrying the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or 1 depending on the lookup result</td></tr></tbody></table></div><h3><a name="xmlGetDtdQAttrDesc" id="xmlGetDtdQAttrDesc"></a>Function: xmlGetDtdQAttrDesc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a>	xmlGetDtdQAttrDesc	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
-</pre><p>Search the DTD for the description of this qualified <a href="libxml-SAX.html#attribute">attribute</a> on this element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>a pointer to the DtD to search</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> namespace prefix</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a> if found or NULL</td></tr></tbody></table></div><h3><a name="xmlFreeAttributeTable" id="xmlFreeAttributeTable"></a>Function: xmlFreeAttributeTable</h3><pre class="programlisting">void	xmlFreeAttributeTable	(<a href="libxml-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>A notation table</td></tr></tbody></table></div><h3><a name="xmlFreeAttributeTable" id="xmlFreeAttributeTable"></a>Function: xmlFreeAttributeTable</h3><pre class="programlisting">void	xmlFreeAttributeTable		(<a href="libxml-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table)<br />
 </pre><p>Deallocate the memory used by an entities hash table.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An <a href="libxml-SAX.html#attribute">attribute</a> table</td></tr></tbody></table></div>
-      Callback called when a validity error is found. This is a message oriented function similar to an *printf function.
-      
-      
-      
-      
-    <h3><a name="xmlValidateAttributeDecl" id="xmlValidateAttributeDecl"></a>Function: xmlValidateAttributeDecl</h3><pre class="programlisting">int	xmlValidateAttributeDecl	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a> attr)<br />
-</pre><p>Try to validate a single <a href="libxml-SAX.html#attribute">attribute</a> definition basically it does the following checks as described by the XML-1.0 recommendation: - [ VC: Attribute Default Legal ] - [ VC: Enumeration ] - [ VC: ID Attribute Default ] The ID/IDREF uniqueness and matching are done separately</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>an <a href="libxml-SAX.html#attribute">attribute</a> definition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlGetDtdQElementDesc" id="xmlGetDtdQElementDesc"></a>Function: xmlGetDtdQElementDesc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a>	xmlGetDtdQElementDesc	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An <a href="libxml-SAX.html#attribute">attribute</a> table</td></tr></tbody></table></div><h3><a name="xmlIsID" id="xmlIsID"></a>Function: xmlIsID</h3><pre class="programlisting">int	xmlIsID			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
+</pre><p>Determine whether an <a href="libxml-SAX.html#attribute">attribute</a> is of type ID. In case we have DTD(s) then this is done if DTD loading has been requested. In the case of HTML documents parsed with the HTML parser, then ID detection is done systematically.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the element carrying the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or 1 depending on the lookup result</td></tr></tbody></table></div><h3><a name="xmlGetDtdQAttrDesc" id="xmlGetDtdQAttrDesc"></a>Function: xmlGetDtdQAttrDesc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a>	xmlGetDtdQAttrDesc	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
+</pre><p>Search the DTD for the description of this qualified <a href="libxml-SAX.html#attribute">attribute</a> on this element.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>a pointer to the DtD to search</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> namespace prefix</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a> if found or NULL</td></tr></tbody></table></div><h3><a name="xmlDumpNotationDecl" id="xmlDumpNotationDecl"></a>Function: xmlDumpNotationDecl</h3><pre class="programlisting">void	xmlDumpNotationDecl		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a> nota)<br />
+</pre><p>This will dump the content the notation declaration as an XML DTD definition</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>nota</tt></i>:</span></td><td>A notation declaration</td></tr></tbody></table></div><h3><a name="xmlValidityErrorFunc" id="xmlValidityErrorFunc"></a>Function type: xmlValidityErrorFunc</h3><pre class="programlisting">Function type: xmlValidityErrorFunc
+void	xmlValidityErrorFunc		(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre><p>Callback called when a validity error is found. This is a message oriented function similar to an *printf function.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an <a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> validity error context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the string to format *printf like vararg</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>remaining arguments to the format</td></tr></tbody></table></div><br />
+<h3><a name="xmlGetDtdQElementDesc" id="xmlGetDtdQElementDesc"></a>Function: xmlGetDtdQElementDesc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a>	xmlGetDtdQElementDesc	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
 </pre><p>Search the DTD for the description of this element</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>a pointer to the DtD to search</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the element namespace prefix</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> if found or NULL</td></tr></tbody></table></div><h3><a name="xmlGetRefs" id="xmlGetRefs"></a>Function: xmlGetRefs</h3><pre class="programlisting"><a href="libxml-list.html#xmlListPtr">xmlListPtr</a>	xmlGetRefs	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>a pointer to the DtD to search</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the element namespace prefix</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> if found or NULL</td></tr></tbody></table></div><h3><a name="xmlGetRefs" id="xmlGetRefs"></a>Function: xmlGetRefs</h3><pre class="programlisting"><a href="libxml-list.html#xmlListPtr">xmlListPtr</a>	xmlGetRefs		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID)<br />
 </pre><p>Find the set of references for the supplied ID.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>pointer to the document</td></tr><tr><td><span class="term"><i><tt>ID</tt></i>:</span></td><td>the ID value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not found, otherwise node set for the ID.</td></tr></tbody></table></div><h3><a name="xmlCopyNotationTable" id="xmlCopyNotationTable"></a>Function: xmlCopyNotationTable</h3><pre class="programlisting"><a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a>	xmlCopyNotationTable	(<a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table)<br />
 </pre><p>Build a copy of a notation table.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>A notation table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlValidGetPotentialChildren" id="xmlValidGetPotentialChildren"></a>Function: xmlValidGetPotentialChildren</h3><pre class="programlisting">int	xmlValidGetPotentialChildren	(<a href="libxml-tree.html#xmlElementContent">xmlElementContent</a> * ctree, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** list, <br />				 int * len, <br />				 int max)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>A notation table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlValidateDocument" id="xmlValidateDocument"></a>Function: xmlValidateDocument</h3><pre class="programlisting">int	xmlValidateDocument		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+</pre><p>Try to validate the document instance basically it does the all the checks described by the XML Rec i.e. validates the internal and external subset (if present) and validate the document tree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidGetPotentialChildren" id="xmlValidGetPotentialChildren"></a>Function: xmlValidGetPotentialChildren</h3><pre class="programlisting">int	xmlValidGetPotentialChildren	(<a href="libxml-tree.html#xmlElementContent">xmlElementContent</a> * ctree, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** list, <br />					 int * len, <br />					 int max)<br />
 </pre><p>Build/extend a list of potential children allowed by the content tree</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctree</tt></i>:</span></td><td>an element content tree</td></tr><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>an array to store the list of child names</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>a pointer to the number of element in the list</td></tr><tr><td><span class="term"><i><tt>max</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of element in the list, or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlAddNotationDecl" id="xmlAddNotationDecl"></a>Function: xmlAddNotationDecl</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a>	xmlAddNotationDecl	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * PublicID, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctree</tt></i>:</span></td><td>an element content tree</td></tr><tr><td><span class="term"><i><tt>list</tt></i>:</span></td><td>an array to store the list of child names</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>a pointer to the number of element in the list</td></tr><tr><td><span class="term"><i><tt>max</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of element in the list, or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlAddNotationDecl" id="xmlAddNotationDecl"></a>Function: xmlAddNotationDecl</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a>	xmlAddNotationDecl	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * PublicID, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * SystemID)<br />
 </pre><p>Register a new notation declaration</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>pointer to the DTD</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>PublicID</tt></i>:</span></td><td>the public identifier or NULL</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the system identifier or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the entity</td></tr></tbody></table></div><h3><a name="xmlValidateElementDecl" id="xmlValidateElementDecl"></a>Function: xmlValidateElementDecl</h3><pre class="programlisting">int	xmlValidateElementDecl	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> elem)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>pointer to the DTD</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>PublicID</tt></i>:</span></td><td>the public identifier or NULL</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the system identifier or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the entity</td></tr></tbody></table></div><h3><a name="xmlValidateElementDecl" id="xmlValidateElementDecl"></a>Function: xmlValidateElementDecl</h3><pre class="programlisting">int	xmlValidateElementDecl		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> elem)<br />
 </pre><p>Try to validate a single element definition basically it does the following checks as described by the XML-1.0 recommendation: - [ VC: One ID per Element Type ] - [ VC: No Duplicate Types ] - [ VC: Unique Element Type Declaration ]</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element definition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlAddAttributeDecl" id="xmlAddAttributeDecl"></a>Function: xmlAddAttributeDecl</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a>	xmlAddAttributeDecl	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns, <br />				 <a href="libxml-tree.html#xmlAttributeType">xmlAttributeType</a> type, <br />				 <a href="libxml-tree.html#xmlAttributeDefault">xmlAttributeDefault</a> def, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * defaultValue, <br />				 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element definition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlAddAttributeDecl" id="xmlAddAttributeDecl"></a>Function: xmlAddAttributeDecl</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a>	xmlAddAttributeDecl	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns, <br />					 <a href="libxml-tree.html#xmlAttributeType">xmlAttributeType</a> type, <br />					 <a href="libxml-tree.html#xmlAttributeDefault">xmlAttributeDefault</a> def, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * defaultValue, <br />					 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)<br />
 </pre><p>Register a new <a href="libxml-SAX.html#attribute">attribute</a> declaration Note that @tree becomes the ownership of the DTD</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>pointer to the DTD</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> namespace prefix</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> type</td></tr><tr><td><span class="term"><i><tt>def</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> default type</td></tr><tr><td><span class="term"><i><tt>defaultValue</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> default value</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>if it's an enumeration, the associated list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not new, otherwise the <a href="libxml-SAX.html#attribute">attribute</a> decl</td></tr></tbody></table></div><h3><a name="xmlGetID" id="xmlGetID"></a>Function: xmlGetID</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlGetID	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>pointer to the DTD</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> namespace prefix</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> type</td></tr><tr><td><span class="term"><i><tt>def</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> default type</td></tr><tr><td><span class="term"><i><tt>defaultValue</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> default value</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>if it's an enumeration, the associated list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not new, otherwise the <a href="libxml-SAX.html#attribute">attribute</a> decl</td></tr></tbody></table></div><h3><a name="xmlGetID" id="xmlGetID"></a>Function: xmlGetID</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>	xmlGetID		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ID)<br />
 </pre><p>Search the <a href="libxml-SAX.html#attribute">attribute</a> declaring the given ID</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>pointer to the document</td></tr><tr><td><span class="term"><i><tt>ID</tt></i>:</span></td><td>the ID value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not found, otherwise the <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> defining the ID</td></tr></tbody></table></div><h3><a name="xmlAddID" id="xmlAddID"></a>Function: xmlAddID</h3><pre class="programlisting"><a href="libxml-tree.html#xmlIDPtr">xmlIDPtr</a>	xmlAddID	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>pointer to the document</td></tr><tr><td><span class="term"><i><tt>ID</tt></i>:</span></td><td>the ID value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not found, otherwise the <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> defining the ID</td></tr></tbody></table></div><h3><a name="xmlAddID" id="xmlAddID"></a>Function: xmlAddID</h3><pre class="programlisting"><a href="libxml-tree.html#xmlIDPtr">xmlIDPtr</a>	xmlAddID		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
 </pre><p>Register a new id declaration</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>pointer to the document</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value name</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> holding the ID</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the new <a href="libxml-tree.html#xmlIDPtr">xmlIDPtr</a></td></tr></tbody></table></div><h3><a name="xmlSprintfElementContent" id="xmlSprintfElementContent"></a>Function: xmlSprintfElementContent</h3><pre class="programlisting">void	xmlSprintfElementContent	(char * buf, <br />				 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content, <br />				 int glob)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>pointer to the document</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value name</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> holding the ID</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the new <a href="libxml-tree.html#xmlIDPtr">xmlIDPtr</a></td></tr></tbody></table></div><h3><a name="xmlValidateAttributeDecl" id="xmlValidateAttributeDecl"></a>Function: xmlValidateAttributeDecl</h3><pre class="programlisting">int	xmlValidateAttributeDecl	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a> attr)<br />
+</pre><p>Try to validate a single <a href="libxml-SAX.html#attribute">attribute</a> definition basically it does the following checks as described by the XML-1.0 recommendation: - [ VC: Attribute Default Legal ] - [ VC: Enumeration ] - [ VC: ID Attribute Default ] The ID/IDREF uniqueness and matching are done separately</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>an <a href="libxml-SAX.html#attribute">attribute</a> definition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlSprintfElementContent" id="xmlSprintfElementContent"></a>Function: xmlSprintfElementContent</h3><pre class="programlisting">void	xmlSprintfElementContent	(char * buf, <br />					 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content, <br />					 int glob)<br />
 </pre><p>Deprecated, unsafe, use <a href="libxml-valid.html#xmlSnprintfElementContent">xmlSnprintfElementContent</a></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>an output buffer</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>An element table</td></tr><tr><td><span class="term"><i><tt>glob</tt></i>:</span></td><td>1 if one must print the englobing parenthesis, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidateOneElement" id="xmlValidateOneElement"></a>Function: xmlValidateOneElement</h3><pre class="programlisting">int	xmlValidateOneElement	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>an output buffer</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>An element table</td></tr><tr><td><span class="term"><i><tt>glob</tt></i>:</span></td><td>1 if one must print the englobing parenthesis, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidateOneElement" id="xmlValidateOneElement"></a>Function: xmlValidateOneElement</h3><pre class="programlisting">int	xmlValidateOneElement		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
 </pre><p>Try to validate a single element and it's attributes, basically it does the following checks as described by the XML-1.0 recommendation: - [ VC: Element Valid ] - [ VC: Required Attribute ] Then call xmlValidateOneAttribute() for each <a href="libxml-SAX.html#attribute">attribute</a> present. The ID/IDREF checkings are done separately</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidateNmtokenValue" id="xmlValidateNmtokenValue"></a>Function: xmlValidateNmtokenValue</h3><pre class="programlisting">int	xmlValidateNmtokenValue	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidateNmtokenValue" id="xmlValidateNmtokenValue"></a>Function: xmlValidateNmtokenValue</h3><pre class="programlisting">int	xmlValidateNmtokenValue		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
 </pre><p>Validate that the given value match Nmtoken production [ VC: Name Token ]</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>an Nmtoken value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlDumpElementTable" id="xmlDumpElementTable"></a>Function: xmlDumpElementTable</h3><pre class="programlisting">void	xmlDumpElementTable	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table)<br />
-</pre><p>This will dump the content of the element table as an XML DTD definition</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An element table</td></tr></tbody></table></div><h3><a name="xmlAddElementDecl" id="xmlAddElementDecl"></a>Function: xmlAddElementDecl</h3><pre class="programlisting"><a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a>	xmlAddElementDecl	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-tree.html#xmlElementTypeVal">xmlElementTypeVal</a> type, <br />				 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)<br />
-</pre><p>Register a new element declaration</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>pointer to the DTD</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the element type</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the element content tree or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the entity</td></tr></tbody></table></div><h3><a name="xmlGetDtdNotationDesc" id="xmlGetDtdNotationDesc"></a>Function: xmlGetDtdNotationDesc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a>	xmlGetDtdNotationDesc	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Search the DTD for the description of this notation</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>a pointer to the DtD to search</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the notation name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a> if found or NULL</td></tr></tbody></table></div><h3><a name="xmlValidateOneNamespace" id="xmlValidateOneNamespace"></a>Function: xmlValidateOneNamespace</h3><pre class="programlisting">int	xmlValidateOneNamespace	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
-</pre><p>Try to validate a single namespace declaration for an element basically it does the following checks as described by the XML-1.0 recommendation: - [ VC: Attribute Value Type ] - [ VC: Fixed Attribute Default ] - [ VC: Entity Name ] - [ VC: Name Token ] - [ VC: ID ] - [ VC: IDREF ] - [ VC: Entity Name ] - [ VC: Notation Attributes ] The ID/IDREF uniqueness and matching are done separately</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the namespace prefix</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>an namespace declaration instance</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value (without entities processing)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidatePushElement" id="xmlValidatePushElement"></a>Function: xmlValidatePushElement</h3><pre class="programlisting">int	xmlValidatePushElement	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * qname)<br />
-</pre><p>Push a new element start on the validation stack.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>qname</tt></i>:</span></td><td>the qualified name as appearing in the serialization</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if no validation problem was found or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlIsRef" id="xmlIsRef"></a>Function: xmlIsRef</h3><pre class="programlisting">int	xmlIsRef	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
-</pre><p>Determine whether an <a href="libxml-SAX.html#attribute">attribute</a> is of type Ref. In case we have DTD(s) then this is simple, otherwise we use an heuristic: name Ref (upper or lowercase).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the element carrying the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or 1 depending on the lookup result</td></tr></tbody></table></div><h3><a name="xmlRemoveRef" id="xmlRemoveRef"></a>Function: xmlRemoveRef</h3><pre class="programlisting">int	xmlRemoveRef	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>an Nmtoken value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlRemoveRef" id="xmlRemoveRef"></a>Function: xmlRemoveRef</h3><pre class="programlisting">int	xmlRemoveRef			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
 </pre><p>Remove the given <a href="libxml-SAX.html#attribute">attribute</a> from the Ref table maintained internally.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 if the lookup failed and 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlCopyElementTable" id="xmlCopyElementTable"></a>Function: xmlCopyElementTable</h3><pre class="programlisting"><a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a>	xmlCopyElementTable	(<a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table)<br />
-</pre><p>Build a copy of an element table.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An element table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlValidateNmtokensValue" id="xmlValidateNmtokensValue"></a>Function: xmlValidateNmtokensValue</h3><pre class="programlisting">int	xmlValidateNmtokensValue	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 if the lookup failed and 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidateNmtokensValue" id="xmlValidateNmtokensValue"></a>Function: xmlValidateNmtokensValue</h3><pre class="programlisting">int	xmlValidateNmtokensValue	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
 </pre><p>Validate that the given value match Nmtokens production [ VC: Name Token ]</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>an Nmtokens value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlFreeRefTable" id="xmlFreeRefTable"></a>Function: xmlFreeRefTable</h3><pre class="programlisting">void	xmlFreeRefTable	(<a href="libxml-valid.html#xmlRefTablePtr">xmlRefTablePtr</a> table)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>an Nmtokens value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlAddElementDecl" id="xmlAddElementDecl"></a>Function: xmlAddElementDecl</h3><pre class="programlisting"><a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a>	xmlAddElementDecl	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-tree.html#xmlElementTypeVal">xmlElementTypeVal</a> type, <br />					 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)<br />
+</pre><p>Register a new element declaration</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>pointer to the DTD</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the element type</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the element content tree or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the entity</td></tr></tbody></table></div><h3><a name="xmlSnprintfElementContent" id="xmlSnprintfElementContent"></a>Function: xmlSnprintfElementContent</h3><pre class="programlisting">void	xmlSnprintfElementContent	(char * buf, <br />					 int size, <br />					 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content, <br />					 int glob)<br />
+</pre><p>This will dump the content of the element content definition Intended just for the debug routine</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>an output buffer</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the buffer size</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>An element table</td></tr><tr><td><span class="term"><i><tt>glob</tt></i>:</span></td><td>1 if one must print the englobing parenthesis, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidateOneNamespace" id="xmlValidateOneNamespace"></a>Function: xmlValidateOneNamespace</h3><pre class="programlisting">int	xmlValidateOneNamespace		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+</pre><p>Try to validate a single namespace declaration for an element basically it does the following checks as described by the XML-1.0 recommendation: - [ VC: Attribute Value Type ] - [ VC: Fixed Attribute Default ] - [ VC: Entity Name ] - [ VC: Name Token ] - [ VC: ID ] - [ VC: IDREF ] - [ VC: Entity Name ] - [ VC: Notation Attributes ] The ID/IDREF uniqueness and matching are done separately</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the namespace prefix</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>an namespace declaration instance</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value (without entities processing)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidatePushElement" id="xmlValidatePushElement"></a>Function: xmlValidatePushElement</h3><pre class="programlisting">int	xmlValidatePushElement		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * qname)<br />
+</pre><p>Push a new element start on the validation stack.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>qname</tt></i>:</span></td><td>the qualified name as appearing in the serialization</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if no validation problem was found or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlIsRef" id="xmlIsRef"></a>Function: xmlIsRef</h3><pre class="programlisting">int	xmlIsRef			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
+</pre><p>Determine whether an <a href="libxml-SAX.html#attribute">attribute</a> is of type Ref. In case we have DTD(s) then this is simple, otherwise we use an heuristic: name Ref (upper or lowercase).</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the element carrying the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or 1 depending on the lookup result</td></tr></tbody></table></div><h3><a name="xmlDumpElementTable" id="xmlDumpElementTable"></a>Function: xmlDumpElementTable</h3><pre class="programlisting">void	xmlDumpElementTable		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table)<br />
+</pre><p>This will dump the content of the element table as an XML DTD definition</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An element table</td></tr></tbody></table></div><h3><a name="xmlCopyElementTable" id="xmlCopyElementTable"></a>Function: xmlCopyElementTable</h3><pre class="programlisting"><a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a>	xmlCopyElementTable	(<a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table)<br />
+</pre><p>Build a copy of an element table.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An element table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlFreeRefTable" id="xmlFreeRefTable"></a>Function: xmlFreeRefTable</h3><pre class="programlisting">void	xmlFreeRefTable			(<a href="libxml-valid.html#xmlRefTablePtr">xmlRefTablePtr</a> table)<br />
 </pre><p>Deallocate the memory used by an Ref hash table.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An ref table</td></tr></tbody></table></div>
-      Callback called when a validity warning is found. This is a message oriented function similar to an *printf function.
-      
-      
-      
-      
-    <h3><a name="xmlRemoveID" id="xmlRemoveID"></a>Function: xmlRemoveID</h3><pre class="programlisting">int	xmlRemoveID	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An ref table</td></tr></tbody></table></div><h3><a name="xmlFreeElementContent" id="xmlFreeElementContent"></a>Function: xmlFreeElementContent</h3><pre class="programlisting">void	xmlFreeElementContent		(<a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> cur)<br />
+</pre><p>Free an element content structure. This is a recursive call !</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the element content tree to free</td></tr></tbody></table></div><h3><a name="xmlRemoveID" id="xmlRemoveID"></a>Function: xmlRemoveID</h3><pre class="programlisting">int	xmlRemoveID			(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br />
 </pre><p>Remove the given <a href="libxml-SAX.html#attribute">attribute</a> from the ID table maintained internally.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 if the lookup failed and 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlFreeElementTable" id="xmlFreeElementTable"></a>Function: xmlFreeElementTable</h3><pre class="programlisting">void	xmlFreeElementTable	(<a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 if the lookup failed and 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlFreeElementTable" id="xmlFreeElementTable"></a>Function: xmlFreeElementTable</h3><pre class="programlisting">void	xmlFreeElementTable		(<a href="libxml-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table)<br />
 </pre><p>Deallocate the memory used by an element hash table.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An element table</td></tr></tbody></table></div><h3><a name="xmlValidatePopElement" id="xmlValidatePopElement"></a>Function: xmlValidatePopElement</h3><pre class="programlisting">int	xmlValidatePopElement	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * qname)<br />
-</pre><p>Pop the element end from the validation stack.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>qname</tt></i>:</span></td><td>the qualified name as appearing in the serialization</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if no validation problem was found or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlFreeIDTable" id="xmlFreeIDTable"></a>Function: xmlFreeIDTable</h3><pre class="programlisting">void	xmlFreeIDTable	(<a href="libxml-valid.html#xmlIDTablePtr">xmlIDTablePtr</a> table)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An element table</td></tr></tbody></table></div><h3><a name="xmlFreeIDTable" id="xmlFreeIDTable"></a>Function: xmlFreeIDTable</h3><pre class="programlisting">void	xmlFreeIDTable			(<a href="libxml-valid.html#xmlIDTablePtr">xmlIDTablePtr</a> table)<br />
 </pre><p>Deallocate the memory used by an ID hash table.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An id table</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlFreeValidCtxt" id="xmlFreeValidCtxt"></a>Function: xmlFreeValidCtxt</h3><pre class="programlisting">void	xmlFreeValidCtxt	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An id table</td></tr></tbody></table></div><h3><a name="xmlFreeValidCtxt" id="xmlFreeValidCtxt"></a>Function: xmlFreeValidCtxt</h3><pre class="programlisting">void	xmlFreeValidCtxt		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> cur)<br />
 </pre><p>Free a validation context structure.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the validation context to free</td></tr></tbody></table></div><h3><a name="xmlCopyAttributeTable" id="xmlCopyAttributeTable"></a>Function: xmlCopyAttributeTable</h3><pre class="programlisting"><a href="libxml-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a>	xmlCopyAttributeTable	(<a href="libxml-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table)<br />
 </pre><p>Build a copy of an <a href="libxml-SAX.html#attribute">attribute</a> table.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An <a href="libxml-SAX.html#attribute">attribute</a> table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlCopyElementContent" id="xmlCopyElementContent"></a>Function: xmlCopyElementContent</h3><pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>	xmlCopyElementContent	(<a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> cur)<br />
 </pre><p>Build a copy of an element content description.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>An element content pointer.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlValidateAttributeValue" id="xmlValidateAttributeValue"></a>Function: xmlValidateAttributeValue</h3><pre class="programlisting">int	xmlValidateAttributeValue	(<a href="libxml-tree.html#xmlAttributeType">xmlAttributeType</a> type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>An element content pointer.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlValidateAttributeValue" id="xmlValidateAttributeValue"></a>Function: xmlValidateAttributeValue</h3><pre class="programlisting">int	xmlValidateAttributeValue	(<a href="libxml-tree.html#xmlAttributeType">xmlAttributeType</a> type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
 </pre><p>Validate that the given <a href="libxml-SAX.html#attribute">attribute</a> value match the proper production [ VC: ID ] Values of type ID must match the Name production.... [ VC: IDREF ] Values of type IDREF must match the Name production, and values of type IDREFS must match Names ... [ VC: Entity Name ] Values of type ENTITY must match the Name production, values of type ENTITIES must match Names ... [ VC: Name Token ] Values of type NMTOKEN must match the Nmtoken production; values of type NMTOKENS must match Nmtokens.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>an <a href="libxml-SAX.html#attribute">attribute</a> type</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>an <a href="libxml-SAX.html#attribute">attribute</a> value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidateRoot" id="xmlValidateRoot"></a>Function: xmlValidateRoot</h3><pre class="programlisting">int	xmlValidateRoot	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><p>Try to validate a the root element basically it does the following check as described by the XML-1.0 recommendation: - [ VC: Root Element Type ] it doesn't try to recurse or apply other check to the element</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidCtxtNormalizeAttributeValue" id="xmlValidCtxtNormalizeAttributeValue"></a>Function: xmlValidCtxtNormalizeAttributeValue</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlValidCtxtNormalizeAttributeValue	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>an <a href="libxml-SAX.html#attribute">attribute</a> type</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>an <a href="libxml-SAX.html#attribute">attribute</a> value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidCtxtNormalizeAttributeValue" id="xmlValidCtxtNormalizeAttributeValue"></a>Function: xmlValidCtxtNormalizeAttributeValue</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlValidCtxtNormalizeAttributeValue	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />							 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />							 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
 </pre><p>Does the validation related extra step of the normalization of <a href="libxml-SAX.html#attribute">attribute</a> values: If the declared value is not CDATA, then the XML processor must further process the normalized <a href="libxml-SAX.html#attribute">attribute</a> value by discarding any leading and trailing space (#x20) characters, and by replacing sequences of space (#x20) <a href="libxml-SAX.html#characters">characters</a> by single space (#x20) character. Also check VC: Standalone Document Declaration in P32, and update ctxt-&gt;valid accordingly</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context or NULL</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the parent</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new normalized string if normalization is needed, NULL otherwise the caller must free the returned value.</td></tr></tbody></table></div><h3><a name="xmlFreeEnumeration" id="xmlFreeEnumeration"></a>Function: xmlFreeEnumeration</h3><pre class="programlisting">void	xmlFreeEnumeration	(<a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context or NULL</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the parent</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new normalized string if normalization is needed, NULL otherwise the caller must free the returned value.</td></tr></tbody></table></div><h3><a name="xmlValidityWarningFunc" id="xmlValidityWarningFunc"></a>Function type: xmlValidityWarningFunc</h3><pre class="programlisting">Function type: xmlValidityWarningFunc
+void	xmlValidityWarningFunc		(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre><p>Callback called when a validity warning is found. This is a message oriented function similar to an *printf function.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an <a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> validity error context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the string to format *printf like vararg</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>remaining arguments to the format</td></tr></tbody></table></div><br />
+<h3><a name="xmlValidatePopElement" id="xmlValidatePopElement"></a>Function: xmlValidatePopElement</h3><pre class="programlisting">int	xmlValidatePopElement		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * qname)<br />
+</pre><p>Pop the element end from the validation stack.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>qname</tt></i>:</span></td><td>the qualified name as appearing in the serialization</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if no validation problem was found or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlFreeEnumeration" id="xmlFreeEnumeration"></a>Function: xmlFreeEnumeration</h3><pre class="programlisting">void	xmlFreeEnumeration		(<a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> cur)<br />
 </pre><p>free an enumeration <a href="libxml-SAX.html#attribute">attribute</a> node (recursive).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the tree to free.</td></tr></tbody></table></div><h3><a name="xmlValidateNamesValue" id="xmlValidateNamesValue"></a>Function: xmlValidateNamesValue</h3><pre class="programlisting">int	xmlValidateNamesValue	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the tree to free.</td></tr></tbody></table></div><h3><a name="xmlValidateNamesValue" id="xmlValidateNamesValue"></a>Function: xmlValidateNamesValue</h3><pre class="programlisting">int	xmlValidateNamesValue		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
 </pre><p>Validate that the given value match Names production</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>an Names value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlCopyEnumeration" id="xmlCopyEnumeration"></a>Function: xmlCopyEnumeration</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>	xmlCopyEnumeration	(<a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> cur)<br />
 </pre><p>Copy an enumeration <a href="libxml-SAX.html#attribute">attribute</a> node (recursive).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the tree to copy.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> just created or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlGetDtdAttrDesc" id="xmlGetDtdAttrDesc"></a>Function: xmlGetDtdAttrDesc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a>	xmlGetDtdAttrDesc	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the tree to copy.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> just created or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlGetDtdAttrDesc" id="xmlGetDtdAttrDesc"></a>Function: xmlGetDtdAttrDesc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a>	xmlGetDtdAttrDesc	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * elem, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Search the DTD for the description of this <a href="libxml-SAX.html#attribute">attribute</a> on this element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>a pointer to the DtD to search</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a> if found or NULL</td></tr></tbody></table></div><h3><a name="xmlValidateDtd" id="xmlValidateDtd"></a>Function: xmlValidateDtd</h3><pre class="programlisting">int	xmlValidateDtd	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>a pointer to the DtD to search</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a> if found or NULL</td></tr></tbody></table></div><h3><a name="xmlValidateDtd" id="xmlValidateDtd"></a>Function: xmlValidateDtd</h3><pre class="programlisting">int	xmlValidateDtd			(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd)<br />
 </pre><p>Try to validate the document against the dtd instance basically it does check all the definitions in the DtD.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>a dtd instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlNewValidCtxt" id="xmlNewValidCtxt"></a>Function: xmlNewValidCtxt</h3><pre class="programlisting"><a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a>	xmlNewValidCtxt	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>a dtd instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlNewValidCtxt" id="xmlNewValidCtxt"></a>Function: xmlNewValidCtxt</h3><pre class="programlisting"><a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a>	xmlNewValidCtxt		(void)<br />
 </pre><p>Allocate a validation context structure.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the new validation context structure</td></tr></tbody></table></div><h3><a name="xmlIsMixedElement" id="xmlIsMixedElement"></a>Function: xmlIsMixedElement</h3><pre class="programlisting">int	xmlIsMixedElement	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the new validation context structure</td></tr></tbody></table></div><h3><a name="xmlIsMixedElement" id="xmlIsMixedElement"></a>Function: xmlIsMixedElement</h3><pre class="programlisting">int	xmlIsMixedElement		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Search in the DtDs whether an element accept Mixed content (or ANY) basically if it is supposed to accept text childs</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if no, 1 if yes, and -1 if no element description is available</td></tr></tbody></table></div><h3><a name="xmlDumpElementDecl" id="xmlDumpElementDecl"></a>Function: xmlDumpElementDecl</h3><pre class="programlisting">void	xmlDumpElementDecl	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> elem)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if no, 1 if yes, and -1 if no element description is available</td></tr></tbody></table></div><h3><a name="xmlDumpElementDecl" id="xmlDumpElementDecl"></a>Function: xmlDumpElementDecl</h3><pre class="programlisting">void	xmlDumpElementDecl		(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />					 <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> elem)<br />
 </pre><p>This will dump the content of the element declaration as an XML DTD definition</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>An element table</td></tr></tbody></table></div><h3><a name="xmlValidNormalizeAttributeValue" id="xmlValidNormalizeAttributeValue"></a>Function: xmlValidNormalizeAttributeValue</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlValidNormalizeAttributeValue	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>An element table</td></tr></tbody></table></div><h3><a name="xmlValidNormalizeAttributeValue" id="xmlValidNormalizeAttributeValue"></a>Function: xmlValidNormalizeAttributeValue</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlValidNormalizeAttributeValue	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value)<br />
 </pre><p>Does the validation related extra step of the normalization of <a href="libxml-SAX.html#attribute">attribute</a> values: If the declared value is not CDATA, then the XML processor must further process the normalized <a href="libxml-SAX.html#attribute">attribute</a> value by discarding any leading and trailing space (#x20) characters, and by replacing sequences of space (#x20) <a href="libxml-SAX.html#characters">characters</a> by single space (#x20) character.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the parent</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new normalized string if normalization is needed, NULL otherwise the caller must free the returned value.</td></tr></tbody></table></div><h3><a name="xmlValidBuildContentModel" id="xmlValidBuildContentModel"></a>Function: xmlValidBuildContentModel</h3><pre class="programlisting">int	xmlValidBuildContentModel	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> elem)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the parent</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the <a href="libxml-SAX.html#attribute">attribute</a> value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new normalized string if normalization is needed, NULL otherwise the caller must free the returned value.</td></tr></tbody></table></div><h3><a name="xmlValidBuildContentModel" id="xmlValidBuildContentModel"></a>Function: xmlValidBuildContentModel</h3><pre class="programlisting">int	xmlValidBuildContentModel	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> elem)<br />
 </pre><p>(Re)Build the automata associated to the content model of this element</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a validation context</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element declaration node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, 0 in case of error</td></tr></tbody></table></div><h3><a name="xmlValidateElement" id="xmlValidateElement"></a>Function: xmlValidateElement</h3><pre class="programlisting">int	xmlValidateElement	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem)<br />
-</pre><p>Try to validate the subtree under an element</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidateNotationUse" id="xmlValidateNotationUse"></a>Function: xmlValidateNotationUse</h3><pre class="programlisting">int	xmlValidateNotationUse	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * notationName)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a validation context</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>an element declaration node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, 0 in case of error</td></tr></tbody></table></div><h3><a name="xmlValidateNotationUse" id="xmlValidateNotationUse"></a>Function: xmlValidateNotationUse</h3><pre class="programlisting">int	xmlValidateNotationUse		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * notationName)<br />
 </pre><p>Validate that the given name match a notation declaration. - [ VC: Notation Declared ]</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>notationName</tt></i>:</span></td><td>the notation name to check</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidateNotationDecl" id="xmlValidateNotationDecl"></a>Function: xmlValidateNotationDecl</h3><pre class="programlisting">int	xmlValidateNotationDecl	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a> nota)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>notationName</tt></i>:</span></td><td>the notation name to check</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidateRoot" id="xmlValidateRoot"></a>Function: xmlValidateRoot</h3><pre class="programlisting">int	xmlValidateRoot			(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+</pre><p>Try to validate a the root element basically it does the following check as described by the XML-1.0 recommendation: - [ VC: Root Element Type ] it doesn't try to recurse or apply other check to the element</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlValidateNotationDecl" id="xmlValidateNotationDecl"></a>Function: xmlValidateNotationDecl</h3><pre class="programlisting">int	xmlValidateNotationDecl		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a> nota)<br />
 </pre><p>Try to validate a single notation definition basically it does the following checks as described by the XML-1.0 recommendation: - it seems that no validity constraint exists on notation declarations But this function get called anyway ...</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>nota</tt></i>:</span></td><td>a notation definition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlNewElementContent" id="xmlNewElementContent"></a>Function: xmlNewElementContent</h3><pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>	xmlNewElementContent	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-tree.html#xmlElementContentType">xmlElementContentType</a> type)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a document instance</td></tr><tr><td><span class="term"><i><tt>nota</tt></i>:</span></td><td>a notation definition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if valid or 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlNewElementContent" id="xmlNewElementContent"></a>Function: xmlNewElementContent</h3><pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>	xmlNewElementContent	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 <a href="libxml-tree.html#xmlElementContentType">xmlElementContentType</a> type)<br />
 </pre><p>Allocate an element content structure.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the subelement name or NULL</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the type of element content decl</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the new element content structure</td></tr></tbody></table></div><h3><a name="xmlGetDtdElementDesc" id="xmlGetDtdElementDesc"></a>Function: xmlGetDtdElementDesc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a>	xmlGetDtdElementDesc	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the subelement name or NULL</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the type of element content decl</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the new element content structure</td></tr></tbody></table></div><h3><a name="xmlGetDtdElementDesc" id="xmlGetDtdElementDesc"></a>Function: xmlGetDtdElementDesc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a>	xmlGetDtdElementDesc	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Search the DTD for the description of this element</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>a pointer to the DtD to search</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> if found or NULL</td></tr></tbody></table></div><h3><a name="xmlFreeElementContent" id="xmlFreeElementContent"></a>Function: xmlFreeElementContent</h3><pre class="programlisting">void	xmlFreeElementContent	(<a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> cur)<br />
-</pre><p>Free an element content structure. This is a recursive call !</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the element content tree to free</td></tr></tbody></table></div><h3><a name="xmlValidatePushCData" id="xmlValidatePushCData"></a>Function: xmlValidatePushCData</h3><pre class="programlisting">int	xmlValidatePushCData	(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>a pointer to the DtD to search</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a> if found or NULL</td></tr></tbody></table></div><h3><a name="xmlGetDtdNotationDesc" id="xmlGetDtdNotationDesc"></a>Function: xmlGetDtdNotationDesc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a>	xmlGetDtdNotationDesc	(<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Search the DTD for the description of this notation</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>a pointer to the DtD to search</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the notation name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a> if found or NULL</td></tr></tbody></table></div><h3><a name="xmlValidatePushCData" id="xmlValidatePushCData"></a>Function: xmlValidatePushCData</h3><pre class="programlisting">int	xmlValidatePushCData		(<a href="libxml-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * data, <br />					 int len)<br />
 </pre><p>check the CData parsed for validation in the current stack</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>some character data read</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the lenght of the data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if no validation problem was found or 0 otherwise</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-xinclude.html b/doc/html/libxml-xinclude.html
index dd7f3a2..94d7a08 100644
--- a/doc/html/libxml-xinclude.html
+++ b/doc/html/libxml-xinclude.html
@@ -10,48 +10,33 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xinclude from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xinclude from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-valid.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-valid.html">valid</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xlink.html">xlink</a></th><td><a accesskey="n" href="libxml-xlink.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>API to handle XInclude processing, implements the World Wide Web Consortium Working Draft 26 October 2000</p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#XINCLUDE_PARSE_TEXT">XINCLUDE_PARSE_TEXT</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlXIncludeCtxt" id="xmlXIncludeCtxt">xmlXIncludeCtxt</a><br />struct _xmlXIncludeCtxt {
+    </style><title>Module xinclude from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xinclude from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-valid.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-valid.html">valid</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xlink.html">xlink</a></th><td><a accesskey="n" href="libxml-xlink.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>API to handle XInclude processing, implements the World Wide Web Consortium Working Draft 26 October 2000</p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#XINCLUDE_FALLBACK">XINCLUDE_FALLBACK</a></pre><pre class="programlisting">#define <a href="#XINCLUDE_HREF">XINCLUDE_HREF</a></pre><pre class="programlisting">#define <a href="#XINCLUDE_NODE">XINCLUDE_NODE</a></pre><pre class="programlisting">#define <a href="#XINCLUDE_NS">XINCLUDE_NS</a></pre><pre class="programlisting">#define <a href="#XINCLUDE_PARSE">XINCLUDE_PARSE</a></pre><pre class="programlisting">#define <a href="#XINCLUDE_PARSE_ENCODING">XINCLUDE_PARSE_ENCODING</a></pre><pre class="programlisting">#define <a href="#XINCLUDE_PARSE_TEXT">XINCLUDE_PARSE_TEXT</a></pre><pre class="programlisting">#define <a href="#XINCLUDE_PARSE_XML">XINCLUDE_PARSE_XML</a></pre><pre class="programlisting">Structure <a href="#xmlXIncludeCtxt">xmlXIncludeCtxt</a><br />struct _xmlXIncludeCtxt
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">#define <a href="#XINCLUDE_HREF">XINCLUDE_HREF</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlXIncludeProcessNode">xmlXIncludeProcessNode</a>	(<a href="libxml-xinclude.html#xmlXIncludeCtxtPtr">xmlXIncludeCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">#define <a href="#XINCLUDE_FALLBACK">XINCLUDE_FALLBACK</a>
-
-</pre><pre class="programlisting">#define <a href="#XINCLUDE_NS">XINCLUDE_NS</a>
-
 </pre><pre class="programlisting">Typedef <a href="libxml-xinclude.html#xmlXIncludeCtxt">xmlXIncludeCtxt</a> * <a name="xmlXIncludeCtxtPtr" id="xmlXIncludeCtxtPtr">xmlXIncludeCtxtPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlXIncludeProcessTree">xmlXIncludeProcessTree</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree)<br />
-</pre><pre class="programlisting">int	<a href="#xmlXIncludeProcess">xmlXIncludeProcess</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXIncludeFreeContext">xmlXIncludeFreeContext</a>	(<a href="libxml-xinclude.html#xmlXIncludeCtxtPtr">xmlXIncludeCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#XINCLUDE_PARSE">XINCLUDE_PARSE</a>
-
-</pre><pre class="programlisting">#define <a href="#XINCLUDE_NODE">XINCLUDE_NODE</a>
-
-</pre><pre class="programlisting">#define <a href="#XINCLUDE_PARSE_XML">XINCLUDE_PARSE_XML</a>
-
-</pre><pre class="programlisting"><a href="libxml-xinclude.html#xmlXIncludeCtxtPtr">xmlXIncludeCtxtPtr</a>	<a href="#xmlXIncludeNewContext">xmlXIncludeNewContext</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">#define <a href="#XINCLUDE_PARSE_ENCODING">XINCLUDE_PARSE_ENCODING</a>
-
-</pre><h2>Description</h2>
+</pre><pre class="programlisting">void	<a href="#xmlXIncludeFreeContext">xmlXIncludeFreeContext</a>		(<a href="libxml-xinclude.html#xmlXIncludeCtxtPtr">xmlXIncludeCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-xinclude.html#xmlXIncludeCtxtPtr">xmlXIncludeCtxtPtr</a>	<a href="#xmlXIncludeNewContext">xmlXIncludeNewContext</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting">int	<a href="#xmlXIncludeProcess">xmlXIncludeProcess</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting">int	<a href="#xmlXIncludeProcessNode">xmlXIncludeProcessNode</a>		(<a href="libxml-xinclude.html#xmlXIncludeCtxtPtr">xmlXIncludeCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting">int	<a href="#xmlXIncludeProcessTree">xmlXIncludeProcessTree</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree)</pre>
+<h2>Description</h2>
 <h3><a name="XINCLUDE_PARSE_TEXT" id="XINCLUDE_PARSE_TEXT"></a>Macro: XINCLUDE_PARSE_TEXT</h3><pre>#define XINCLUDE_PARSE_TEXT</pre><p></p>
-<h3><a name="XINCLUDE_HREF" id="XINCLUDE_HREF"></a>Macro: XINCLUDE_HREF</h3><pre>#define XINCLUDE_HREF</pre><p></p>
-<h3><a name="xmlXIncludeProcessNode" id="xmlXIncludeProcessNode"></a>Function: xmlXIncludeProcessNode</h3><pre class="programlisting">int	xmlXIncludeProcessNode	(<a href="libxml-xinclude.html#xmlXIncludeCtxtPtr">xmlXIncludeCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><p>Implement the XInclude substitution for the given subtree reusing the informations and data coming from the given context.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an existing XInclude context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node in an XML document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if no substitution were done, -1 if some processing failed or the number of substitutions done.</td></tr></tbody></table></div><h3><a name="XINCLUDE_FALLBACK" id="XINCLUDE_FALLBACK"></a>Macro: XINCLUDE_FALLBACK</h3><pre>#define XINCLUDE_FALLBACK</pre><p></p>
-<h3><a name="XINCLUDE_NS" id="XINCLUDE_NS"></a>Macro: XINCLUDE_NS</h3><pre>#define XINCLUDE_NS</pre><p></p>
-<h3><a name="xmlXIncludeProcessTree" id="xmlXIncludeProcessTree"></a>Function: xmlXIncludeProcessTree</h3><pre class="programlisting">int	xmlXIncludeProcessTree	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree)<br />
-</pre><p>Implement the XInclude substitution for the given subtree</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>a node in an XML document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if no substitution were done, -1 if some processing failed or the number of substitutions done.</td></tr></tbody></table></div><h3><a name="xmlXIncludeProcess" id="xmlXIncludeProcess"></a>Function: xmlXIncludeProcess</h3><pre class="programlisting">int	xmlXIncludeProcess	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><p>Implement the XInclude substitution on the XML document @doc</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>an XML document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if no substitution were done, -1 if some processing failed or the number of substitutions done.</td></tr></tbody></table></div><h3><a name="xmlXIncludeFreeContext" id="xmlXIncludeFreeContext"></a>Function: xmlXIncludeFreeContext</h3><pre class="programlisting">void	xmlXIncludeFreeContext	(<a href="libxml-xinclude.html#xmlXIncludeCtxtPtr">xmlXIncludeCtxtPtr</a> ctxt)<br />
-</pre><p>Free an XInclude context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XInclude context</td></tr></tbody></table></div><h3><a name="XINCLUDE_PARSE" id="XINCLUDE_PARSE"></a>Macro: XINCLUDE_PARSE</h3><pre>#define XINCLUDE_PARSE</pre><p></p>
 <h3><a name="XINCLUDE_NODE" id="XINCLUDE_NODE"></a>Macro: XINCLUDE_NODE</h3><pre>#define XINCLUDE_NODE</pre><p></p>
 <h3><a name="XINCLUDE_PARSE_XML" id="XINCLUDE_PARSE_XML"></a>Macro: XINCLUDE_PARSE_XML</h3><pre>#define XINCLUDE_PARSE_XML</pre><p></p>
-<h3><a name="xmlXIncludeNewContext" id="xmlXIncludeNewContext"></a>Function: xmlXIncludeNewContext</h3><pre class="programlisting"><a href="libxml-xinclude.html#xmlXIncludeCtxtPtr">xmlXIncludeCtxtPtr</a>	xmlXIncludeNewContext	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+<h3><a name="XINCLUDE_HREF" id="XINCLUDE_HREF"></a>Macro: XINCLUDE_HREF</h3><pre>#define XINCLUDE_HREF</pre><p></p>
+<h3><a name="XINCLUDE_FALLBACK" id="XINCLUDE_FALLBACK"></a>Macro: XINCLUDE_FALLBACK</h3><pre>#define XINCLUDE_FALLBACK</pre><p></p>
+<h3><a name="XINCLUDE_NS" id="XINCLUDE_NS"></a>Macro: XINCLUDE_NS</h3><pre>#define XINCLUDE_NS</pre><p></p>
+<h3><a name="XINCLUDE_PARSE" id="XINCLUDE_PARSE"></a>Macro: XINCLUDE_PARSE</h3><pre>#define XINCLUDE_PARSE</pre><p></p>
+<h3><a name="XINCLUDE_PARSE_ENCODING" id="XINCLUDE_PARSE_ENCODING"></a>Macro: XINCLUDE_PARSE_ENCODING</h3><pre>#define XINCLUDE_PARSE_ENCODING</pre><p></p>
+<h3><a name="xmlXIncludeCtxt" id="xmlXIncludeCtxt">Structure xmlXIncludeCtxt</a></h3><pre class="programlisting">Structure xmlXIncludeCtxt<br />struct _xmlXIncludeCtxt {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlXIncludeProcess" id="xmlXIncludeProcess"></a>Function: xmlXIncludeProcess</h3><pre class="programlisting">int	xmlXIncludeProcess		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+</pre><p>Implement the XInclude substitution on the XML document @doc</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>an XML document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if no substitution were done, -1 if some processing failed or the number of substitutions done.</td></tr></tbody></table></div><h3><a name="xmlXIncludeNewContext" id="xmlXIncludeNewContext"></a>Function: xmlXIncludeNewContext</h3><pre class="programlisting"><a href="libxml-xinclude.html#xmlXIncludeCtxtPtr">xmlXIncludeCtxtPtr</a>	xmlXIncludeNewContext	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
 </pre><p>Creates a new XInclude context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>an XML Document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new set</td></tr></tbody></table></div><h3><a name="XINCLUDE_PARSE_ENCODING" id="XINCLUDE_PARSE_ENCODING"></a>Macro: XINCLUDE_PARSE_ENCODING</h3><pre>#define XINCLUDE_PARSE_ENCODING</pre><p></p>
-<p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>an XML Document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new set</td></tr></tbody></table></div><h3><a name="xmlXIncludeProcessNode" id="xmlXIncludeProcessNode"></a>Function: xmlXIncludeProcessNode</h3><pre class="programlisting">int	xmlXIncludeProcessNode		(<a href="libxml-xinclude.html#xmlXIncludeCtxtPtr">xmlXIncludeCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+</pre><p>Implement the XInclude substitution for the given subtree reusing the informations and data coming from the given context.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an existing XInclude context</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node in an XML document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if no substitution were done, -1 if some processing failed or the number of substitutions done.</td></tr></tbody></table></div><h3><a name="xmlXIncludeProcessTree" id="xmlXIncludeProcessTree"></a>Function: xmlXIncludeProcessTree</h3><pre class="programlisting">int	xmlXIncludeProcessTree		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree)<br />
+</pre><p>Implement the XInclude substitution for the given subtree</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>a node in an XML document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if no substitution were done, -1 if some processing failed or the number of substitutions done.</td></tr></tbody></table></div><h3><a name="xmlXIncludeFreeContext" id="xmlXIncludeFreeContext"></a>Function: xmlXIncludeFreeContext</h3><pre class="programlisting">void	xmlXIncludeFreeContext		(<a href="libxml-xinclude.html#xmlXIncludeCtxtPtr">xmlXIncludeCtxtPtr</a> ctxt)<br />
+</pre><p>Free an XInclude context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XInclude context</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-xlink.html b/doc/html/libxml-xlink.html
index f2b32c2..43cc77d 100644
--- a/doc/html/libxml-xlink.html
+++ b/doc/html/libxml-xlink.html
@@ -10,108 +10,73 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xlink from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xlink from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xinclude.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xinclude.html">xinclude</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlIO.html">xmlIO</a></th><td><a accesskey="n" href="libxml-xmlIO.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>unfinished XLink detection module </p><h2>Table of Contents</h2><pre class="programlisting">Enum <a name="xlinkShow" id="xlinkShow">xlinkShow</a> {
+    </style><title>Module xlink from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xlink from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xinclude.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xinclude.html">xinclude</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlIO.html">xmlIO</a></th><td><a accesskey="n" href="libxml-xmlIO.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>unfinished XLink detection module </p><h2>Table of Contents</h2><pre class="programlisting">Enum <a href="#xlinkActuate">xlinkActuate</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlChar">xmlChar</a> * <a name="xlinkHRef" id="xlinkHRef">xlinkHRef</a>
+</pre><pre class="programlisting">Structure <a href="#xlinkHandler">xlinkHandler</a><br />struct _xlinkHandler
+</pre><pre class="programlisting">Typedef <a href="libxml-xlink.html#xlinkHandler">xlinkHandler</a> * <a name="xlinkHandlerPtr" id="xlinkHandlerPtr">xlinkHandlerPtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlChar">xmlChar</a> * <a name="xlinkRole" id="xlinkRole">xlinkRole</a>
+</pre><pre class="programlisting">Enum <a href="#xlinkShow">xlinkShow</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlChar">xmlChar</a> * <a name="xlinkTitle" id="xlinkTitle">xlinkTitle</a>
+</pre><pre class="programlisting">Enum <a href="#xlinkType">xlinkType</a>
+</pre><pre class="programlisting">Function type: <a href="#xlinkExtendedLinkFunk">xlinkExtendedLinkFunk</a>
+void	<a href="#xlinkExtendedLinkFunk">xlinkExtendedLinkFunk</a>		(void * ctx, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 int nbLocators, <br />					 const <a href="libxml-xlink.html#xlinkHRef">xlinkHRef</a> * hrefs, <br />					 const <a href="libxml-xlink.html#xlinkRole">xlinkRole</a> * roles, <br />					 int nbArcs, <br />					 const <a href="libxml-xlink.html#xlinkRole">xlinkRole</a> * from, <br />					 const <a href="libxml-xlink.html#xlinkRole">xlinkRole</a> * to, <br />					 <a href="libxml-xlink.html#xlinkShow">xlinkShow</a> * show, <br />					 <a href="libxml-xlink.html#xlinkActuate">xlinkActuate</a> * actuate, <br />					 int nbTitles, <br />					 const <a href="libxml-xlink.html#xlinkTitle">xlinkTitle</a> * titles, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** langs)
+</pre>
+<pre class="programlisting">Function type: <a href="#xlinkExtendedLinkSetFunk">xlinkExtendedLinkSetFunk</a>
+void	<a href="#xlinkExtendedLinkSetFunk">xlinkExtendedLinkSetFunk</a>	(void * ctx, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 int nbLocators, <br />					 const <a href="libxml-xlink.html#xlinkHRef">xlinkHRef</a> * hrefs, <br />					 const <a href="libxml-xlink.html#xlinkRole">xlinkRole</a> * roles, <br />					 int nbTitles, <br />					 const <a href="libxml-xlink.html#xlinkTitle">xlinkTitle</a> * titles, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** langs)
+</pre>
+<pre class="programlisting"><a href="libxml-xlink.html#xlinkNodeDetectFunc">xlinkNodeDetectFunc</a>	<a href="#xlinkGetDefaultDetect">xlinkGetDefaultDetect</a>	(void)</pre>
+<pre class="programlisting"><a href="libxml-xlink.html#xlinkHandlerPtr">xlinkHandlerPtr</a>	<a href="#xlinkGetDefaultHandler">xlinkGetDefaultHandler</a>	(void)</pre>
+<pre class="programlisting"><a href="libxml-xlink.html#xlinkType">xlinkType</a>	<a href="#xlinkIsLink">xlinkIsLink</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting">Function type: <a href="#xlinkNodeDetectFunc">xlinkNodeDetectFunc</a>
+void	<a href="#xlinkNodeDetectFunc">xlinkNodeDetectFunc</a>		(void * ctx, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)
+</pre>
+<pre class="programlisting">void	<a href="#xlinkSetDefaultDetect">xlinkSetDefaultDetect</a>		(<a href="libxml-xlink.html#xlinkNodeDetectFunc">xlinkNodeDetectFunc</a> func)</pre>
+<pre class="programlisting">void	<a href="#xlinkSetDefaultHandler">xlinkSetDefaultHandler</a>		(<a href="libxml-xlink.html#xlinkHandlerPtr">xlinkHandlerPtr</a> handler)</pre>
+<pre class="programlisting">Function type: <a href="#xlinkSimpleLinkFunk">xlinkSimpleLinkFunk</a>
+void	<a href="#xlinkSimpleLinkFunk">xlinkSimpleLinkFunk</a>		(void * ctx, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-xlink.html#xlinkHRef">xlinkHRef</a> href, <br />					 const <a href="libxml-xlink.html#xlinkRole">xlinkRole</a> role, <br />					 const <a href="libxml-xlink.html#xlinkTitle">xlinkTitle</a> title)
+</pre>
+<h2>Description</h2>
+<h3><a name="xlinkHandler" id="xlinkHandler">Structure xlinkHandler</a></h3><pre class="programlisting">Structure xlinkHandler<br />struct _xlinkHandler {
+    <a href="libxml-xlink.html#xlinkSimpleLinkFunk">xlinkSimpleLinkFunk</a>	simple
+    <a href="libxml-xlink.html#xlinkExtendedLinkFunk">xlinkExtendedLinkFunk</a>	extended
+    <a href="libxml-xlink.html#xlinkExtendedLinkSetFunk">xlinkExtendedLinkSetFunk</a>	set
+}</pre><h3><a name="xlinkShow" id="xlinkShow">xlinkShow</a></h3><pre class="programlisting">Enum xlinkShow {
     <a name="XLINK_SHOW_NONE" id="XLINK_SHOW_NONE">XLINK_SHOW_NONE</a> = 0
     <a name="XLINK_SHOW_NEW" id="XLINK_SHOW_NEW">XLINK_SHOW_NEW</a> = 1
     <a name="XLINK_SHOW_EMBED" id="XLINK_SHOW_EMBED">XLINK_SHOW_EMBED</a> = 2
     <a name="XLINK_SHOW_REPLACE" id="XLINK_SHOW_REPLACE">XLINK_SHOW_REPLACE</a> = 3
 }
-
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlChar">xmlChar</a> * <a name="xlinkHRef" id="xlinkHRef">xlinkHRef</a>
-
-</pre><pre class="programlisting">void	<a href="#xlinkSetDefaultHandler">xlinkSetDefaultHandler</a>	(<a href="libxml-xlink.html#xlinkHandlerPtr">xlinkHandlerPtr</a> handler)<br />
-</pre><pre class="programlisting"><a name="xlinkExtendedLinkSetFunk" id="xlinkExtendedLinkSetFunk"></a>Function type: xlinkExtendedLinkSetFunk
-void	xlinkExtendedLinkSetFunk	(void * ctx, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 int nbLocators, <br />				 const <a href="libxml-xlink.html#xlinkHRef">xlinkHRef</a> * hrefs, <br />				 const <a href="libxml-xlink.html#xlinkRole">xlinkRole</a> * roles, <br />				 int nbTitles, <br />				 const <a href="libxml-xlink.html#xlinkTitle">xlinkTitle</a> * titles, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** langs)
-</pre><p>This is the prototype for a extended link set detection callback.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>user data pointer</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node carrying the link</td></tr><tr><td><span class="term"><i><tt>nbLocators</tt></i>:</span></td><td>the number of locators detected on the link</td></tr><tr><td><span class="term"><i><tt>hrefs</tt></i>:</span></td><td>pointer to the array of locator hrefs</td></tr><tr><td><span class="term"><i><tt>roles</tt></i>:</span></td><td>pointer to the array of locator roles</td></tr><tr><td><span class="term"><i><tt>nbTitles</tt></i>:</span></td><td>the number of titles detected on the link</td></tr><tr><td><span class="term"><i><tt>titles</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>langs</tt></i>:</span></td><td>array of xml:lang values for the titles</td></tr></tbody></table></div><br />
-<pre class="programlisting">Enum <a name="xlinkActuate" id="xlinkActuate">xlinkActuate</a> {
-    <a name="XLINK_ACTUATE_NONE" id="XLINK_ACTUATE_NONE">XLINK_ACTUATE_NONE</a> = 0
-    <a name="XLINK_ACTUATE_AUTO" id="XLINK_ACTUATE_AUTO">XLINK_ACTUATE_AUTO</a> = 1
-    <a name="XLINK_ACTUATE_ONREQUEST" id="XLINK_ACTUATE_ONREQUEST">XLINK_ACTUATE_ONREQUEST</a> = 2
-}
-
-</pre><pre class="programlisting">void	<a href="#xlinkSetDefaultDetect">xlinkSetDefaultDetect</a>	(<a href="libxml-xlink.html#xlinkNodeDetectFunc">xlinkNodeDetectFunc</a> func)<br />
-</pre><pre class="programlisting"><a href="libxml-xlink.html#xlinkType">xlinkType</a>	<a href="#xlinkIsLink">xlinkIsLink</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting"><a href="libxml-xlink.html#xlinkNodeDetectFunc">xlinkNodeDetectFunc</a>	<a href="#xlinkGetDefaultDetect">xlinkGetDefaultDetect</a>	(void)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlChar">xmlChar</a> * <a name="xlinkTitle" id="xlinkTitle">xlinkTitle</a>
-
-</pre><pre class="programlisting">Typedef <a href="libxml-tree.html#xmlChar">xmlChar</a> * <a name="xlinkRole" id="xlinkRole">xlinkRole</a>
-
-</pre><pre class="programlisting"><a name="xlinkExtendedLinkFunk" id="xlinkExtendedLinkFunk"></a>Function type: xlinkExtendedLinkFunk
-void	xlinkExtendedLinkFunk	(void * ctx, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 int nbLocators, <br />				 const <a href="libxml-xlink.html#xlinkHRef">xlinkHRef</a> * hrefs, <br />				 const <a href="libxml-xlink.html#xlinkRole">xlinkRole</a> * roles, <br />				 int nbArcs, <br />				 const <a href="libxml-xlink.html#xlinkRole">xlinkRole</a> * from, <br />				 const <a href="libxml-xlink.html#xlinkRole">xlinkRole</a> * to, <br />				 <a href="libxml-xlink.html#xlinkShow">xlinkShow</a> * show, <br />				 <a href="libxml-xlink.html#xlinkActuate">xlinkActuate</a> * actuate, <br />				 int nbTitles, <br />				 const <a href="libxml-xlink.html#xlinkTitle">xlinkTitle</a> * titles, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** langs)
-</pre><p>This is the prototype for a extended link detection callback.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>user data pointer</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node carrying the link</td></tr><tr><td><span class="term"><i><tt>nbLocators</tt></i>:</span></td><td>the number of locators detected on the link</td></tr><tr><td><span class="term"><i><tt>hrefs</tt></i>:</span></td><td>pointer to the array of locator hrefs</td></tr><tr><td><span class="term"><i><tt>roles</tt></i>:</span></td><td>pointer to the array of locator roles</td></tr><tr><td><span class="term"><i><tt>nbArcs</tt></i>:</span></td><td>the number of arcs detected on the link</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>pointer to the array of source roles found on the arcs</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>pointer to the array of target roles found on the arcs</td></tr><tr><td><span class="term"><i><tt>show</tt></i>:</span></td><td>array of values for the show attributes found on the arcs</td></tr><tr><td><span class="term"><i><tt>actuate</tt></i>:</span></td><td>array of values for the actuate attributes found on the arcs</td></tr><tr><td><span class="term"><i><tt>nbTitles</tt></i>:</span></td><td>the number of titles detected on the link</td></tr><tr><td><span class="term"><i><tt>titles</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>langs</tt></i>:</span></td><td>array of xml:lang values for the titles</td></tr></tbody></table></div><br />
-<pre class="programlisting">Structure <a name="xlinkHandler" id="xlinkHandler">xlinkHandler</a><br />struct _xlinkHandler {
-    <a href="libxml-xlink.html#xlinkSimpleLinkFunk">xlinkSimpleLinkFunk</a>	simple
-    <a href="libxml-xlink.html#xlinkExtendedLinkFunk">xlinkExtendedLinkFunk</a>	extended
-    <a href="libxml-xlink.html#xlinkExtendedLinkSetFunk">xlinkExtendedLinkSetFunk</a>	set
-}</pre><br /><pre class="programlisting"><a name="xlinkNodeDetectFunc" id="xlinkNodeDetectFunc"></a>Function type: xlinkNodeDetectFunc
-void	xlinkNodeDetectFunc	(void * ctx, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)
-</pre><p>This is the prototype for the link detection routine. It calls the default link detection callbacks upon link detection.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>user data pointer</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node to check</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a href="libxml-xlink.html#xlinkHandlerPtr">xlinkHandlerPtr</a>	<a href="#xlinkGetDefaultHandler">xlinkGetDefaultHandler</a>	(void)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-xlink.html#xlinkHandler">xlinkHandler</a> * <a name="xlinkHandlerPtr" id="xlinkHandlerPtr">xlinkHandlerPtr</a>
-
-</pre><pre class="programlisting">Enum <a name="xlinkType" id="xlinkType">xlinkType</a> {
+</pre><h3><a name="xlinkType" id="xlinkType">xlinkType</a></h3><pre class="programlisting">Enum xlinkType {
     <a name="XLINK_TYPE_NONE" id="XLINK_TYPE_NONE">XLINK_TYPE_NONE</a> = 0
     <a name="XLINK_TYPE_SIMPLE" id="XLINK_TYPE_SIMPLE">XLINK_TYPE_SIMPLE</a> = 1
     <a name="XLINK_TYPE_EXTENDED" id="XLINK_TYPE_EXTENDED">XLINK_TYPE_EXTENDED</a> = 2
     <a name="XLINK_TYPE_EXTENDED_SET" id="XLINK_TYPE_EXTENDED_SET">XLINK_TYPE_EXTENDED_SET</a> = 3
 }
-
-</pre><pre class="programlisting"><a name="xlinkSimpleLinkFunk" id="xlinkSimpleLinkFunk"></a>Function type: xlinkSimpleLinkFunk
-void	xlinkSimpleLinkFunk	(void * ctx, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 const <a href="libxml-xlink.html#xlinkHRef">xlinkHRef</a> href, <br />				 const <a href="libxml-xlink.html#xlinkRole">xlinkRole</a> role, <br />				 const <a href="libxml-xlink.html#xlinkTitle">xlinkTitle</a> title)
-</pre><p>This is the prototype for a simple link detection callback.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>user data pointer</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node carrying the link</td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td>the target of the link</td></tr><tr><td><span class="term"><i><tt>role</tt></i>:</span></td><td>the role string</td></tr><tr><td><span class="term"><i><tt>title</tt></i>:</span></td><td>the link title</td></tr></tbody></table></div><br />
-<h2>Description</h2>
-<h3><a name="xlinkSetDefaultHandler" id="xlinkSetDefaultHandler"></a>Function: xlinkSetDefaultHandler</h3><pre class="programlisting">void	xlinkSetDefaultHandler	(<a href="libxml-xlink.html#xlinkHandlerPtr">xlinkHandlerPtr</a> handler)<br />
-</pre><p>Set the default xlink handlers</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the new value for the xlink handler block</td></tr></tbody></table></div>
-      This is the prototype for a extended link set detection callback.
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xlinkSetDefaultDetect" id="xlinkSetDefaultDetect"></a>Function: xlinkSetDefaultDetect</h3><pre class="programlisting">void	xlinkSetDefaultDetect	(<a href="libxml-xlink.html#xlinkNodeDetectFunc">xlinkNodeDetectFunc</a> func)<br />
-</pre><p>Set the default xlink detection routine</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>func</tt></i>:</span></td><td>pointer to the new detection routine.</td></tr></tbody></table></div><h3><a name="xlinkIsLink" id="xlinkIsLink"></a>Function: xlinkIsLink</h3><pre class="programlisting"><a href="libxml-xlink.html#xlinkType">xlinkType</a>	xlinkIsLink	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><p>Check whether the given node carries the attributes needed to be a link element (or is one of the linking elements issued from the (X)HTML DtDs). This routine don't try to do full checking of the link validity but tries to detect and return the appropriate link type.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document containing the node</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node pointer itself</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xlink.html#xlinkType">xlinkType</a> of the node (XLINK_TYPE_NONE if there is no link detected.</td></tr></tbody></table></div><h3><a name="xlinkGetDefaultDetect" id="xlinkGetDefaultDetect"></a>Function: xlinkGetDefaultDetect</h3><pre class="programlisting"><a href="libxml-xlink.html#xlinkNodeDetectFunc">xlinkNodeDetectFunc</a>	xlinkGetDefaultDetect	(void)<br />
-</pre><p>Get the default xlink detection routine</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current function or NULL;</td></tr></tbody></table></div>
-      This is the prototype for a extended link detection callback.
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    
-      
-      
-      
-    
-      This is the prototype for the link detection routine. It calls the default link detection callbacks upon link detection.
-      
-      
-      
-    <h3><a name="xlinkGetDefaultHandler" id="xlinkGetDefaultHandler"></a>Function: xlinkGetDefaultHandler</h3><pre class="programlisting"><a href="libxml-xlink.html#xlinkHandlerPtr">xlinkHandlerPtr</a>	xlinkGetDefaultHandler	(void)<br />
+</pre><h3><a name="xlinkActuate" id="xlinkActuate">xlinkActuate</a></h3><pre class="programlisting">Enum xlinkActuate {
+    <a name="XLINK_ACTUATE_NONE" id="XLINK_ACTUATE_NONE">XLINK_ACTUATE_NONE</a> = 0
+    <a name="XLINK_ACTUATE_AUTO" id="XLINK_ACTUATE_AUTO">XLINK_ACTUATE_AUTO</a> = 1
+    <a name="XLINK_ACTUATE_ONREQUEST" id="XLINK_ACTUATE_ONREQUEST">XLINK_ACTUATE_ONREQUEST</a> = 2
+}
+</pre><h3><a name="xlinkNodeDetectFunc" id="xlinkNodeDetectFunc"></a>Function type: xlinkNodeDetectFunc</h3><pre class="programlisting">Function type: xlinkNodeDetectFunc
+void	xlinkNodeDetectFunc		(void * ctx, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)
+</pre><p>This is the prototype for the link detection routine. It calls the default link detection callbacks upon link detection.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>user data pointer</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node to check</td></tr></tbody></table></div><br />
+<h3><a name="xlinkGetDefaultHandler" id="xlinkGetDefaultHandler"></a>Function: xlinkGetDefaultHandler</h3><pre class="programlisting"><a href="libxml-xlink.html#xlinkHandlerPtr">xlinkHandlerPtr</a>	xlinkGetDefaultHandler	(void)<br />
 </pre><p>Get the default xlink handler.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current <a href="libxml-xlink.html#xlinkHandlerPtr">xlinkHandlerPtr</a> value.</td></tr></tbody></table></div>
-      This is the prototype for a simple link detection callback.
-      
-      
-      
-      
-      
-      
-    <p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current <a href="libxml-xlink.html#xlinkHandlerPtr">xlinkHandlerPtr</a> value.</td></tr></tbody></table></div><h3><a name="xlinkIsLink" id="xlinkIsLink"></a>Function: xlinkIsLink</h3><pre class="programlisting"><a href="libxml-xlink.html#xlinkType">xlinkType</a>	xlinkIsLink		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+</pre><p>Check whether the given node carries the attributes needed to be a link element (or is one of the linking elements issued from the (X)HTML DtDs). This routine don't try to do full checking of the link validity but tries to detect and return the appropriate link type.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document containing the node</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node pointer itself</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xlink.html#xlinkType">xlinkType</a> of the node (XLINK_TYPE_NONE if there is no link detected.</td></tr></tbody></table></div><h3><a name="xlinkSimpleLinkFunk" id="xlinkSimpleLinkFunk"></a>Function type: xlinkSimpleLinkFunk</h3><pre class="programlisting">Function type: xlinkSimpleLinkFunk
+void	xlinkSimpleLinkFunk		(void * ctx, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 const <a href="libxml-xlink.html#xlinkHRef">xlinkHRef</a> href, <br />					 const <a href="libxml-xlink.html#xlinkRole">xlinkRole</a> role, <br />					 const <a href="libxml-xlink.html#xlinkTitle">xlinkTitle</a> title)
+</pre><p>This is the prototype for a simple link detection callback.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>user data pointer</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node carrying the link</td></tr><tr><td><span class="term"><i><tt>href</tt></i>:</span></td><td>the target of the link</td></tr><tr><td><span class="term"><i><tt>role</tt></i>:</span></td><td>the role string</td></tr><tr><td><span class="term"><i><tt>title</tt></i>:</span></td><td>the link title</td></tr></tbody></table></div><br />
+<h3><a name="xlinkSetDefaultHandler" id="xlinkSetDefaultHandler"></a>Function: xlinkSetDefaultHandler</h3><pre class="programlisting">void	xlinkSetDefaultHandler		(<a href="libxml-xlink.html#xlinkHandlerPtr">xlinkHandlerPtr</a> handler)<br />
+</pre><p>Set the default xlink handlers</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the new value for the xlink handler block</td></tr></tbody></table></div><h3><a name="xlinkSetDefaultDetect" id="xlinkSetDefaultDetect"></a>Function: xlinkSetDefaultDetect</h3><pre class="programlisting">void	xlinkSetDefaultDetect		(<a href="libxml-xlink.html#xlinkNodeDetectFunc">xlinkNodeDetectFunc</a> func)<br />
+</pre><p>Set the default xlink detection routine</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>func</tt></i>:</span></td><td>pointer to the new detection routine.</td></tr></tbody></table></div><h3><a name="xlinkExtendedLinkFunk" id="xlinkExtendedLinkFunk"></a>Function type: xlinkExtendedLinkFunk</h3><pre class="programlisting">Function type: xlinkExtendedLinkFunk
+void	xlinkExtendedLinkFunk		(void * ctx, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 int nbLocators, <br />					 const <a href="libxml-xlink.html#xlinkHRef">xlinkHRef</a> * hrefs, <br />					 const <a href="libxml-xlink.html#xlinkRole">xlinkRole</a> * roles, <br />					 int nbArcs, <br />					 const <a href="libxml-xlink.html#xlinkRole">xlinkRole</a> * from, <br />					 const <a href="libxml-xlink.html#xlinkRole">xlinkRole</a> * to, <br />					 <a href="libxml-xlink.html#xlinkShow">xlinkShow</a> * show, <br />					 <a href="libxml-xlink.html#xlinkActuate">xlinkActuate</a> * actuate, <br />					 int nbTitles, <br />					 const <a href="libxml-xlink.html#xlinkTitle">xlinkTitle</a> * titles, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** langs)
+</pre><p>This is the prototype for a extended link detection callback.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>user data pointer</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node carrying the link</td></tr><tr><td><span class="term"><i><tt>nbLocators</tt></i>:</span></td><td>the number of locators detected on the link</td></tr><tr><td><span class="term"><i><tt>hrefs</tt></i>:</span></td><td>pointer to the array of locator hrefs</td></tr><tr><td><span class="term"><i><tt>roles</tt></i>:</span></td><td>pointer to the array of locator roles</td></tr><tr><td><span class="term"><i><tt>nbArcs</tt></i>:</span></td><td>the number of arcs detected on the link</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>pointer to the array of source roles found on the arcs</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>pointer to the array of target roles found on the arcs</td></tr><tr><td><span class="term"><i><tt>show</tt></i>:</span></td><td>array of values for the show attributes found on the arcs</td></tr><tr><td><span class="term"><i><tt>actuate</tt></i>:</span></td><td>array of values for the actuate attributes found on the arcs</td></tr><tr><td><span class="term"><i><tt>nbTitles</tt></i>:</span></td><td>the number of titles detected on the link</td></tr><tr><td><span class="term"><i><tt>titles</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>langs</tt></i>:</span></td><td>array of xml:lang values for the titles</td></tr></tbody></table></div><br />
+<h3><a name="xlinkExtendedLinkSetFunk" id="xlinkExtendedLinkSetFunk"></a>Function type: xlinkExtendedLinkSetFunk</h3><pre class="programlisting">Function type: xlinkExtendedLinkSetFunk
+void	xlinkExtendedLinkSetFunk	(void * ctx, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 int nbLocators, <br />					 const <a href="libxml-xlink.html#xlinkHRef">xlinkHRef</a> * hrefs, <br />					 const <a href="libxml-xlink.html#xlinkRole">xlinkRole</a> * roles, <br />					 int nbTitles, <br />					 const <a href="libxml-xlink.html#xlinkTitle">xlinkTitle</a> * titles, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> ** langs)
+</pre><p>This is the prototype for a extended link set detection callback.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>user data pointer</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node carrying the link</td></tr><tr><td><span class="term"><i><tt>nbLocators</tt></i>:</span></td><td>the number of locators detected on the link</td></tr><tr><td><span class="term"><i><tt>hrefs</tt></i>:</span></td><td>pointer to the array of locator hrefs</td></tr><tr><td><span class="term"><i><tt>roles</tt></i>:</span></td><td>pointer to the array of locator roles</td></tr><tr><td><span class="term"><i><tt>nbTitles</tt></i>:</span></td><td>the number of titles detected on the link</td></tr><tr><td><span class="term"><i><tt>titles</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>langs</tt></i>:</span></td><td>array of xml:lang values for the titles</td></tr></tbody></table></div><br />
+<h3><a name="xlinkGetDefaultDetect" id="xlinkGetDefaultDetect"></a>Function: xlinkGetDefaultDetect</h3><pre class="programlisting"><a href="libxml-xlink.html#xlinkNodeDetectFunc">xlinkNodeDetectFunc</a>	xlinkGetDefaultDetect	(void)<br />
+</pre><p>Get the default xlink detection routine</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current function or NULL;</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-xmlIO.html b/doc/html/libxml-xmlIO.html
index e6e95bd..5590a86 100644
--- a/doc/html/libxml-xmlIO.html
+++ b/doc/html/libxml-xmlIO.html
@@ -10,199 +10,187 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xmlIO from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlIO from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xlink.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xlink.html">xlink</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlautomata.html">xmlautomata</a></th><td><a accesskey="n" href="libxml-xmlautomata.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>interface for the I/O interfaces used by the parser </p><h2>Table of Contents</h2><pre class="programlisting">int	<a href="#xmlIOHTTPRead">xmlIOHTTPRead</a>	(void * context, <br />				 char * buffer, <br />				 int len)<br />
-</pre><pre class="programlisting"><a name="xmlInputMatchCallback" id="xmlInputMatchCallback"></a>Function type: xmlInputMatchCallback
-int	xmlInputMatchCallback	(char const * filename)
-</pre><p>Callback used in the I/O Input API to detect if the current handler can provide input fonctionnalities for this resource.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename or URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if yes and 0 if another Input module should be used</td></tr></tbody></table></div><br />
-<pre class="programlisting">void	<a href="#xmlRegisterDefaultOutputCallbacks">xmlRegisterDefaultOutputCallbacks</a>	(void)<br />
-</pre><pre class="programlisting">int	<a href="#xmlFileClose">xmlFileClose</a>	(void * context)<br />
-</pre><pre class="programlisting"><a name="xmlOutputMatchCallback" id="xmlOutputMatchCallback"></a>Function type: xmlOutputMatchCallback
-int	xmlOutputMatchCallback	(char const * filename)
-</pre><p>Callback used in the I/O Output API to detect if the current handler can provide output fonctionnalities for this resource.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename or URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if yes and 0 if another Output module should be used</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlIOFTPRead">xmlIOFTPRead</a>	(void * context, <br />				 char * buffer, <br />				 int len)<br />
-</pre><pre class="programlisting">void	<a href="#xmlRegisterHTTPPostCallbacks">xmlRegisterHTTPPostCallbacks</a>	(void)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlIOFTPOpen">xmlIOFTPOpen</a>	(const char * filename)<br />
-</pre><pre class="programlisting">int	<a href="#xmlIOFTPClose">xmlIOFTPClose</a>	(void * context)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlFileOpen">xmlFileOpen</a>	(const char * filename)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	<a href="#xmlOutputBufferCreateFile">xmlOutputBufferCreateFile</a>	(FILE * file, <br />				 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)<br />
-</pre><pre class="programlisting">int	<a href="#xmlCheckFilename">xmlCheckFilename</a>	(const char * path)<br />
-</pre><pre class="programlisting"><a name="xmlOutputOpenCallback" id="xmlOutputOpenCallback"></a>Function type: xmlOutputOpenCallback
-void *	xmlOutputOpenCallback	(char const * filename)
-</pre><p>Callback used in the I/O Output API to open the resource</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename or URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an Output context or NULL in case or error</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlParserInputBufferCreateFilename">xmlParserInputBufferCreateFilename</a>	(const char * URI, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><pre class="programlisting">int	<a href="#xmlOutputBufferClose">xmlOutputBufferClose</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlParserInputBufferCreateFd">xmlParserInputBufferCreateFd</a>	(int fd, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	<a href="#xmlOutputBufferCreateIO">xmlOutputBufferCreateIO</a>	(<a href="libxml-xmlIO.html#xmlOutputWriteCallback">xmlOutputWriteCallback</a> iowrite, <br />				 <a href="libxml-xmlIO.html#xmlOutputCloseCallback">xmlOutputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)<br />
-</pre><pre class="programlisting"><a name="xmlOutputWriteCallback" id="xmlOutputWriteCallback"></a>Function type: xmlOutputWriteCallback
-int	xmlOutputWriteCallback	(void * context, <br />				 const char * buffer, <br />				 int len)
-</pre><p>Callback used in the I/O Output API to write to the resource</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>an Output context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>the buffer of data to write</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the buffer in bytes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of error</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlOutputBufferFlush">xmlOutputBufferFlush</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlCheckHTTPInput">xmlCheckHTTPInput</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> ret)<br />
-</pre><pre class="programlisting">int	<a href="#xmlRegisterOutputCallbacks">xmlRegisterOutputCallbacks</a>	(<a href="libxml-xmlIO.html#xmlOutputMatchCallback">xmlOutputMatchCallback</a> matchFunc, <br />				 <a href="libxml-xmlIO.html#xmlOutputOpenCallback">xmlOutputOpenCallback</a> openFunc, <br />				 <a href="libxml-xmlIO.html#xmlOutputWriteCallback">xmlOutputWriteCallback</a> writeFunc, <br />				 <a href="libxml-xmlIO.html#xmlOutputCloseCallback">xmlOutputCloseCallback</a> closeFunc)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlParserInputBufferCreateMem">xmlParserInputBufferCreateMem</a>	(const char * mem, <br />				 int size, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><pre class="programlisting">int	<a href="#xmlIOFTPMatch">xmlIOFTPMatch</a>	(const char * filename)<br />
-</pre><pre class="programlisting">int	<a href="#xmlRegisterInputCallbacks">xmlRegisterInputCallbacks</a>	(<a href="libxml-xmlIO.html#xmlInputMatchCallback">xmlInputMatchCallback</a> matchFunc, <br />				 <a href="libxml-xmlIO.html#xmlInputOpenCallback">xmlInputOpenCallback</a> openFunc, <br />				 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> readFunc, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> closeFunc)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeParserInputBuffer">xmlFreeParserInputBuffer</a>	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> in)<br />
-</pre><pre class="programlisting">void	<a href="#xmlRegisterDefaultInputCallbacks">xmlRegisterDefaultInputCallbacks</a>	(void)<br />
-</pre><pre class="programlisting">int	<a href="#xmlParserInputBufferGrow">xmlParserInputBufferGrow</a>	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> in, <br />				 int len)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	<a href="#xmlAllocOutputBuffer">xmlAllocOutputBuffer</a>	(<a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlNoNetExternalEntityLoader">xmlNoNetExternalEntityLoader</a>	(const char * URL, <br />				 const char * ID, <br />				 <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a name="xmlOutputCloseCallback" id="xmlOutputCloseCallback"></a>Function type: xmlOutputCloseCallback
-int	xmlOutputCloseCallback	(void * context)
-</pre><p>Callback used in the I/O Output API to close the resource</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>an Output context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlIOHTTPMatch">xmlIOHTTPMatch</a>	(const char * filename)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlIOHTTPOpen">xmlIOHTTPOpen</a>	(const char * filename)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlParserInputBufferCreateIO">xmlParserInputBufferCreateIO</a>	(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	<a href="#xmlOutputBufferCreateFd">xmlOutputBufferCreateFd</a>	(int fd, <br />				 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNormalizeWindowsPath">xmlNormalizeWindowsPath</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * path)<br />
-</pre><pre class="programlisting"><a name="xmlInputReadCallback" id="xmlInputReadCallback"></a>Function type: xmlInputReadCallback
-int	xmlInputReadCallback	(void * context, <br />				 char * buffer, <br />				 int len)
-</pre><p>Callback used in the I/O Input API to read the resource</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>an Input context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>the buffer to store data read</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the buffer in bytes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes read or -1 in case of error</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlIOHTTPClose">xmlIOHTTPClose</a>	(void * context)<br />
-</pre><pre class="programlisting">int	<a href="#xmlParserInputBufferPush">xmlParserInputBufferPush</a>	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> in, <br />				 int len, <br />				 const char * buf)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	<a href="#xmlOutputBufferCreateFilename">xmlOutputBufferCreateFilename</a>	(const char * URI, <br />				 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder, <br />				 int compression)<br />
-</pre><pre class="programlisting">void	<a href="#xmlCleanupOutputCallbacks">xmlCleanupOutputCallbacks</a>	(void)<br />
-</pre><pre class="programlisting"><a name="xmlInputOpenCallback" id="xmlInputOpenCallback"></a>Function type: xmlInputOpenCallback
-void *	xmlInputOpenCallback	(char const * filename)
-</pre><p>Callback used in the I/O Input API to open the resource</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename or URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an Input context or NULL in case or error</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlParserInputBufferRead">xmlParserInputBufferRead</a>	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> in, <br />				 int len)<br />
-</pre><pre class="programlisting">int	<a href="#xmlOutputBufferWriteString">xmlOutputBufferWriteString</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out, <br />				 const char * str)<br />
-</pre><pre class="programlisting">int	<a href="#xmlFileMatch">xmlFileMatch</a>	(const char * filename)<br />
-</pre><pre class="programlisting">int	<a href="#xmlFileRead">xmlFileRead</a>	(void * context, <br />				 char * buffer, <br />				 int len)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlParserInputBufferCreateFile">xmlParserInputBufferCreateFile</a>	(FILE * file, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlParserInputBufferCreateStatic">xmlParserInputBufferCreateStatic</a>	(const char * mem, <br />				 int size, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><pre class="programlisting">char *	<a href="#xmlParserGetDirectory">xmlParserGetDirectory</a>	(const char * filename)<br />
-</pre><pre class="programlisting">int	<a href="#xmlOutputBufferWrite">xmlOutputBufferWrite</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out, <br />				 int len, <br />				 const char * buf)<br />
-</pre><pre class="programlisting">void	<a href="#xmlCleanupInputCallbacks">xmlCleanupInputCallbacks</a>	(void)<br />
-</pre><pre class="programlisting"><a name="xmlInputCloseCallback" id="xmlInputCloseCallback"></a>Function type: xmlInputCloseCallback
-int	xmlInputCloseCallback	(void * context)
-</pre><p>Callback used in the I/O Input API to close the resource</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>an Input context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><br />
-<pre class="programlisting">void *	<a href="#xmlIOHTTPOpenW">xmlIOHTTPOpenW</a>	(const char * post_uri, <br />				 int compression)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlAllocParserInputBuffer">xmlAllocParserInputBuffer</a>	(<a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlIOHTTPRead" id="xmlIOHTTPRead"></a>Function: xmlIOHTTPRead</h3><pre class="programlisting">int	xmlIOHTTPRead	(void * context, <br />				 char * buffer, <br />				 int len)<br />
+    </style><title>Module xmlIO from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlIO from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xlink.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xlink.html">xlink</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlautomata.html">xmlautomata</a></th><td><a accesskey="n" href="libxml-xmlautomata.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>interface for the I/O interfaces used by the parser </p><h2>Table of Contents</h2><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	<a href="#xmlAllocOutputBuffer">xmlAllocOutputBuffer</a>	(<a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlAllocParserInputBuffer">xmlAllocParserInputBuffer</a>	(<a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)</pre>
+<pre class="programlisting">int	<a href="#xmlCheckFilename">xmlCheckFilename</a>		(const char * path)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlCheckHTTPInput">xmlCheckHTTPInput</a>	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />						 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> ret)</pre>
+<pre class="programlisting">void	<a href="#xmlCleanupInputCallbacks">xmlCleanupInputCallbacks</a>	(void)</pre>
+<pre class="programlisting">void	<a href="#xmlCleanupOutputCallbacks">xmlCleanupOutputCallbacks</a>	(void)</pre>
+<pre class="programlisting">int	<a href="#xmlFileClose">xmlFileClose</a>			(void * context)</pre>
+<pre class="programlisting">int	<a href="#xmlFileMatch">xmlFileMatch</a>			(const char * filename)</pre>
+<pre class="programlisting">void *	<a href="#xmlFileOpen">xmlFileOpen</a>			(const char * filename)</pre>
+<pre class="programlisting">int	<a href="#xmlFileRead">xmlFileRead</a>			(void * context, <br />					 char * buffer, <br />					 int len)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeParserInputBuffer">xmlFreeParserInputBuffer</a>	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> in)</pre>
+<pre class="programlisting">int	<a href="#xmlIOFTPClose">xmlIOFTPClose</a>			(void * context)</pre>
+<pre class="programlisting">int	<a href="#xmlIOFTPMatch">xmlIOFTPMatch</a>			(const char * filename)</pre>
+<pre class="programlisting">void *	<a href="#xmlIOFTPOpen">xmlIOFTPOpen</a>			(const char * filename)</pre>
+<pre class="programlisting">int	<a href="#xmlIOFTPRead">xmlIOFTPRead</a>			(void * context, <br />					 char * buffer, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#xmlIOHTTPClose">xmlIOHTTPClose</a>			(void * context)</pre>
+<pre class="programlisting">int	<a href="#xmlIOHTTPMatch">xmlIOHTTPMatch</a>			(const char * filename)</pre>
+<pre class="programlisting">void *	<a href="#xmlIOHTTPOpen">xmlIOHTTPOpen</a>			(const char * filename)</pre>
+<pre class="programlisting">void *	<a href="#xmlIOHTTPOpenW">xmlIOHTTPOpenW</a>			(const char * post_uri, <br />					 int compression)</pre>
+<pre class="programlisting">int	<a href="#xmlIOHTTPRead">xmlIOHTTPRead</a>			(void * context, <br />					 char * buffer, <br />					 int len)</pre>
+<pre class="programlisting">Function type: <a href="#xmlInputCloseCallback">xmlInputCloseCallback</a>
+int	<a href="#xmlInputCloseCallback">xmlInputCloseCallback</a>		(void * context)
+</pre>
+<pre class="programlisting">Function type: <a href="#xmlInputMatchCallback">xmlInputMatchCallback</a>
+int	<a href="#xmlInputMatchCallback">xmlInputMatchCallback</a>		(char const * filename)
+</pre>
+<pre class="programlisting">Function type: <a href="#xmlInputOpenCallback">xmlInputOpenCallback</a>
+void *	<a href="#xmlInputOpenCallback">xmlInputOpenCallback</a>		(char const * filename)
+</pre>
+<pre class="programlisting">Function type: <a href="#xmlInputReadCallback">xmlInputReadCallback</a>
+int	<a href="#xmlInputReadCallback">xmlInputReadCallback</a>		(void * context, <br />					 char * buffer, <br />					 int len)
+</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	<a href="#xmlNoNetExternalEntityLoader">xmlNoNetExternalEntityLoader</a>	(const char * URL, <br />							 const char * ID, <br />							 <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlNormalizeWindowsPath">xmlNormalizeWindowsPath</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * path)</pre>
+<pre class="programlisting">int	<a href="#xmlOutputBufferClose">xmlOutputBufferClose</a>		(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	<a href="#xmlOutputBufferCreateFd">xmlOutputBufferCreateFd</a>	(int fd, <br />						 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	<a href="#xmlOutputBufferCreateFile">xmlOutputBufferCreateFile</a>	(FILE * file, <br />							 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	<a href="#xmlOutputBufferCreateFilename">xmlOutputBufferCreateFilename</a>	(const char * URI, <br />							 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder, <br />							 int compression)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	<a href="#xmlOutputBufferCreateIO">xmlOutputBufferCreateIO</a>	(<a href="libxml-xmlIO.html#xmlOutputWriteCallback">xmlOutputWriteCallback</a> iowrite, <br />						 <a href="libxml-xmlIO.html#xmlOutputCloseCallback">xmlOutputCloseCallback</a> ioclose, <br />						 void * ioctx, <br />						 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)</pre>
+<pre class="programlisting">int	<a href="#xmlOutputBufferFlush">xmlOutputBufferFlush</a>		(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out)</pre>
+<pre class="programlisting">int	<a href="#xmlOutputBufferWrite">xmlOutputBufferWrite</a>		(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out, <br />					 int len, <br />					 const char * buf)</pre>
+<pre class="programlisting">int	<a href="#xmlOutputBufferWriteString">xmlOutputBufferWriteString</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out, <br />					 const char * str)</pre>
+<pre class="programlisting">Function type: <a href="#xmlOutputCloseCallback">xmlOutputCloseCallback</a>
+int	<a href="#xmlOutputCloseCallback">xmlOutputCloseCallback</a>		(void * context)
+</pre>
+<pre class="programlisting">Function type: <a href="#xmlOutputMatchCallback">xmlOutputMatchCallback</a>
+int	<a href="#xmlOutputMatchCallback">xmlOutputMatchCallback</a>		(char const * filename)
+</pre>
+<pre class="programlisting">Function type: <a href="#xmlOutputOpenCallback">xmlOutputOpenCallback</a>
+void *	<a href="#xmlOutputOpenCallback">xmlOutputOpenCallback</a>		(char const * filename)
+</pre>
+<pre class="programlisting">Function type: <a href="#xmlOutputWriteCallback">xmlOutputWriteCallback</a>
+int	<a href="#xmlOutputWriteCallback">xmlOutputWriteCallback</a>		(void * context, <br />					 const char * buffer, <br />					 int len)
+</pre>
+<pre class="programlisting">char *	<a href="#xmlParserGetDirectory">xmlParserGetDirectory</a>		(const char * filename)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlParserInputBufferCreateFd">xmlParserInputBufferCreateFd</a>	(int fd, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlParserInputBufferCreateFile">xmlParserInputBufferCreateFile</a>	(FILE * file, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlParserInputBufferCreateFilename">xmlParserInputBufferCreateFilename</a>	(const char * URI, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlParserInputBufferCreateIO">xmlParserInputBufferCreateIO</a>	(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />							 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />							 void * ioctx, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlParserInputBufferCreateMem">xmlParserInputBufferCreateMem</a>	(const char * mem, <br />							 int size, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlParserInputBufferCreateStatic">xmlParserInputBufferCreateStatic</a>	(const char * mem, <br />							 int size, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)</pre>
+<pre class="programlisting">int	<a href="#xmlParserInputBufferGrow">xmlParserInputBufferGrow</a>	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> in, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#xmlParserInputBufferPush">xmlParserInputBufferPush</a>	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> in, <br />					 int len, <br />					 const char * buf)</pre>
+<pre class="programlisting">int	<a href="#xmlParserInputBufferRead">xmlParserInputBufferRead</a>	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> in, <br />					 int len)</pre>
+<pre class="programlisting">void	<a href="#xmlRegisterDefaultInputCallbacks">xmlRegisterDefaultInputCallbacks</a>	(void)</pre>
+<pre class="programlisting">void	<a href="#xmlRegisterDefaultOutputCallbacks">xmlRegisterDefaultOutputCallbacks</a>	(void)</pre>
+<pre class="programlisting">void	<a href="#xmlRegisterHTTPPostCallbacks">xmlRegisterHTTPPostCallbacks</a>	(void)</pre>
+<pre class="programlisting">int	<a href="#xmlRegisterInputCallbacks">xmlRegisterInputCallbacks</a>	(<a href="libxml-xmlIO.html#xmlInputMatchCallback">xmlInputMatchCallback</a> matchFunc, <br />					 <a href="libxml-xmlIO.html#xmlInputOpenCallback">xmlInputOpenCallback</a> openFunc, <br />					 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> readFunc, <br />					 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> closeFunc)</pre>
+<pre class="programlisting">int	<a href="#xmlRegisterOutputCallbacks">xmlRegisterOutputCallbacks</a>	(<a href="libxml-xmlIO.html#xmlOutputMatchCallback">xmlOutputMatchCallback</a> matchFunc, <br />					 <a href="libxml-xmlIO.html#xmlOutputOpenCallback">xmlOutputOpenCallback</a> openFunc, <br />					 <a href="libxml-xmlIO.html#xmlOutputWriteCallback">xmlOutputWriteCallback</a> writeFunc, <br />					 <a href="libxml-xmlIO.html#xmlOutputCloseCallback">xmlOutputCloseCallback</a> closeFunc)</pre>
+<h2>Description</h2>
+<h3><a name="xmlIOHTTPRead" id="xmlIOHTTPRead"></a>Function: xmlIOHTTPRead</h3><pre class="programlisting">int	xmlIOHTTPRead			(void * context, <br />					 char * buffer, <br />					 int len)<br />
 </pre><p>Read @len bytes to @buffer from the I/O channel.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>the I/O context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>where to drop data</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>number of bytes to write</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written</td></tr></tbody></table></div>
-      Callback used in the I/O Input API to detect if the current handler can provide input fonctionnalities for this resource.
-      
-      
-    <h3><a name="xmlRegisterDefaultOutputCallbacks" id="xmlRegisterDefaultOutputCallbacks"></a>Function: xmlRegisterDefaultOutputCallbacks</h3><pre class="programlisting">void	xmlRegisterDefaultOutputCallbacks	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>the I/O context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>where to drop data</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>number of bytes to write</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written</td></tr></tbody></table></div><h3><a name="xmlInputMatchCallback" id="xmlInputMatchCallback"></a>Function type: xmlInputMatchCallback</h3><pre class="programlisting">Function type: xmlInputMatchCallback
+int	xmlInputMatchCallback		(char const * filename)
+</pre><p>Callback used in the I/O Input API to detect if the current handler can provide input fonctionnalities for this resource.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename or URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if yes and 0 if another Input module should be used</td></tr></tbody></table></div><br />
+<h3><a name="xmlRegisterDefaultOutputCallbacks" id="xmlRegisterDefaultOutputCallbacks"></a>Function: xmlRegisterDefaultOutputCallbacks</h3><pre class="programlisting">void	xmlRegisterDefaultOutputCallbacks	(void)<br />
 </pre><p>Registers the default compiled-in I/O handlers.</p>
-<h3><a name="xmlFileClose" id="xmlFileClose"></a>Function: xmlFileClose</h3><pre class="programlisting">int	xmlFileClose	(void * context)<br />
+<h3><a name="xmlFileClose" id="xmlFileClose"></a>Function: xmlFileClose</h3><pre class="programlisting">int	xmlFileClose			(void * context)<br />
 </pre><p>Close an I/O channel</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>the I/O context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div>
-      Callback used in the I/O Output API to detect if the current handler can provide output fonctionnalities for this resource.
-      
-      
-    <h3><a name="xmlIOFTPRead" id="xmlIOFTPRead"></a>Function: xmlIOFTPRead</h3><pre class="programlisting">int	xmlIOFTPRead	(void * context, <br />				 char * buffer, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>the I/O context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlOutputMatchCallback" id="xmlOutputMatchCallback"></a>Function type: xmlOutputMatchCallback</h3><pre class="programlisting">Function type: xmlOutputMatchCallback
+int	xmlOutputMatchCallback		(char const * filename)
+</pre><p>Callback used in the I/O Output API to detect if the current handler can provide output fonctionnalities for this resource.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename or URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if yes and 0 if another Output module should be used</td></tr></tbody></table></div><br />
+<h3><a name="xmlIOFTPRead" id="xmlIOFTPRead"></a>Function: xmlIOFTPRead</h3><pre class="programlisting">int	xmlIOFTPRead			(void * context, <br />					 char * buffer, <br />					 int len)<br />
 </pre><p>Read @len bytes to @buffer from the I/O channel.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>the I/O context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>where to drop data</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>number of bytes to write</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written</td></tr></tbody></table></div><h3><a name="xmlRegisterHTTPPostCallbacks" id="xmlRegisterHTTPPostCallbacks"></a>Function: xmlRegisterHTTPPostCallbacks</h3><pre class="programlisting">void	xmlRegisterHTTPPostCallbacks	(void)<br />
 </pre><p>By default, libxml submits HTTP output requests using the &quot;PUT&quot; method. Calling this method changes the HTTP output method to use the &quot;POST&quot; method instead.</p>
-<h3><a name="xmlIOFTPOpen" id="xmlIOFTPOpen"></a>Function: xmlIOFTPOpen</h3><pre class="programlisting">void *	xmlIOFTPOpen	(const char * filename)<br />
+<h3><a name="xmlIOFTPOpen" id="xmlIOFTPOpen"></a>Function: xmlIOFTPOpen</h3><pre class="programlisting">void *	xmlIOFTPOpen			(const char * filename)<br />
 </pre><p>open an FTP I/O channel</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the URI for matching</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an I/O context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlIOFTPClose" id="xmlIOFTPClose"></a>Function: xmlIOFTPClose</h3><pre class="programlisting">int	xmlIOFTPClose	(void * context)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the URI for matching</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an I/O context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlIOFTPClose" id="xmlIOFTPClose"></a>Function: xmlIOFTPClose</h3><pre class="programlisting">int	xmlIOFTPClose			(void * context)<br />
 </pre><p>Close an FTP I/O channel</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>the I/O context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0</td></tr></tbody></table></div><h3><a name="xmlFileOpen" id="xmlFileOpen"></a>Function: xmlFileOpen</h3><pre class="programlisting">void *	xmlFileOpen	(const char * filename)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>the I/O context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0</td></tr></tbody></table></div><h3><a name="xmlFileOpen" id="xmlFileOpen"></a>Function: xmlFileOpen</h3><pre class="programlisting">void *	xmlFileOpen			(const char * filename)<br />
 </pre><p>Wrapper around xmlFileOpen_real that try it with an unescaped version of @filename, if this fails fallback to @filename</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the URI for matching</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a handler or NULL in case or failure</td></tr></tbody></table></div><h3><a name="xmlOutputBufferCreateFile" id="xmlOutputBufferCreateFile"></a>Function: xmlOutputBufferCreateFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	xmlOutputBufferCreateFile	(FILE * file, <br />				 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the URI for matching</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a handler or NULL in case or failure</td></tr></tbody></table></div><h3><a name="xmlOutputBufferCreateFile" id="xmlOutputBufferCreateFile"></a>Function: xmlOutputBufferCreateFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	xmlOutputBufferCreateFile	(FILE * file, <br />							 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)<br />
 </pre><p>Create a buffered output for the progressive saving to a FILE * buffered C I/O</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>a FILE*</td></tr><tr><td><span class="term"><i><tt>encoder</tt></i>:</span></td><td>the encoding converter or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser output or NULL</td></tr></tbody></table></div><h3><a name="xmlCheckFilename" id="xmlCheckFilename"></a>Function: xmlCheckFilename</h3><pre class="programlisting">int	xmlCheckFilename	(const char * path)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>a FILE*</td></tr><tr><td><span class="term"><i><tt>encoder</tt></i>:</span></td><td>the encoding converter or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser output or NULL</td></tr></tbody></table></div><h3><a name="xmlCheckFilename" id="xmlCheckFilename"></a>Function: xmlCheckFilename</h3><pre class="programlisting">int	xmlCheckFilename		(const char * path)<br />
 </pre><p>function checks to see if @path is a valid source (file, socket...) for XML. if stat is not available on the target machine,</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>path</tt></i>:</span></td><td>the path to check</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1. if stat fails, returns 0 (if calling stat on the filename fails, it can't be right). if stat succeeds and the file is a directory, returns 2. otherwise returns 1.</td></tr></tbody></table></div>
-      Callback used in the I/O Output API to open the resource
-      
-      
-    <h3><a name="xmlParserInputBufferCreateFilename" id="xmlParserInputBufferCreateFilename"></a>Function: xmlParserInputBufferCreateFilename</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	xmlParserInputBufferCreateFilename	(const char * URI, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>path</tt></i>:</span></td><td>the path to check</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1. if stat fails, returns 0 (if calling stat on the filename fails, it can't be right). if stat succeeds and the file is a directory, returns 2. otherwise returns 1.</td></tr></tbody></table></div><h3><a name="xmlOutputOpenCallback" id="xmlOutputOpenCallback"></a>Function type: xmlOutputOpenCallback</h3><pre class="programlisting">Function type: xmlOutputOpenCallback
+void *	xmlOutputOpenCallback		(char const * filename)
+</pre><p>Callback used in the I/O Output API to open the resource</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename or URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an Output context or NULL in case or error</td></tr></tbody></table></div><br />
+<h3><a name="xmlParserInputBufferCreateFilename" id="xmlParserInputBufferCreateFilename"></a>Function: xmlParserInputBufferCreateFilename</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	xmlParserInputBufferCreateFilename	(const char * URI, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
 </pre><p>Create a buffered parser input for the progressive parsing of a file If filename is &quot;-' then we use stdin as the input. Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time. Do an encoding check if enc == <a href="libxml-encoding.html#XML_CHAR_ENCODING_NONE">XML_CHAR_ENCODING_NONE</a></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>a C string containing the URI or filename</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser input or NULL</td></tr></tbody></table></div><h3><a name="xmlOutputBufferClose" id="xmlOutputBufferClose"></a>Function: xmlOutputBufferClose</h3><pre class="programlisting">int	xmlOutputBufferClose	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>a C string containing the URI or filename</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser input or NULL</td></tr></tbody></table></div><h3><a name="xmlOutputBufferClose" id="xmlOutputBufferClose"></a>Function: xmlOutputBufferClose</h3><pre class="programlisting">int	xmlOutputBufferClose		(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out)<br />
 </pre><p>flushes and close the output I/O channel and free up all the associated resources</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a buffered output</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlParserInputBufferCreateFd" id="xmlParserInputBufferCreateFd"></a>Function: xmlParserInputBufferCreateFd</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	xmlParserInputBufferCreateFd	(int fd, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a buffered output</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlParserInputBufferCreateFd" id="xmlParserInputBufferCreateFd"></a>Function: xmlParserInputBufferCreateFd</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	xmlParserInputBufferCreateFd	(int fd, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
 </pre><p>Create a buffered parser input for the progressive parsing for the input from a file descriptor</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>a file descriptor number</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser input or NULL</td></tr></tbody></table></div><h3><a name="xmlOutputBufferCreateIO" id="xmlOutputBufferCreateIO"></a>Function: xmlOutputBufferCreateIO</h3><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	xmlOutputBufferCreateIO	(<a href="libxml-xmlIO.html#xmlOutputWriteCallback">xmlOutputWriteCallback</a> iowrite, <br />				 <a href="libxml-xmlIO.html#xmlOutputCloseCallback">xmlOutputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>a file descriptor number</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser input or NULL</td></tr></tbody></table></div><h3><a name="xmlOutputBufferCreateIO" id="xmlOutputBufferCreateIO"></a>Function: xmlOutputBufferCreateIO</h3><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	xmlOutputBufferCreateIO	(<a href="libxml-xmlIO.html#xmlOutputWriteCallback">xmlOutputWriteCallback</a> iowrite, <br />						 <a href="libxml-xmlIO.html#xmlOutputCloseCallback">xmlOutputCloseCallback</a> ioclose, <br />						 void * ioctx, <br />						 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)<br />
 </pre><p>Create a buffered output for the progressive saving to an I/O handler</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>iowrite</tt></i>:</span></td><td>an I/O write function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>encoder</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser output or NULL</td></tr></tbody></table></div>
-      Callback used in the I/O Output API to write to the resource
-      
-      
-      
-      
-    <h3><a name="xmlOutputBufferFlush" id="xmlOutputBufferFlush"></a>Function: xmlOutputBufferFlush</h3><pre class="programlisting">int	xmlOutputBufferFlush	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>iowrite</tt></i>:</span></td><td>an I/O write function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>encoder</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser output or NULL</td></tr></tbody></table></div><h3><a name="xmlOutputWriteCallback" id="xmlOutputWriteCallback"></a>Function type: xmlOutputWriteCallback</h3><pre class="programlisting">Function type: xmlOutputWriteCallback
+int	xmlOutputWriteCallback		(void * context, <br />					 const char * buffer, <br />					 int len)
+</pre><p>Callback used in the I/O Output API to write to the resource</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>an Output context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>the buffer of data to write</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the buffer in bytes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written or -1 in case of error</td></tr></tbody></table></div><br />
+<h3><a name="xmlOutputBufferFlush" id="xmlOutputBufferFlush"></a>Function: xmlOutputBufferFlush</h3><pre class="programlisting">int	xmlOutputBufferFlush		(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out)<br />
 </pre><p>flushes the output I/O channel</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a buffered output</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlCheckHTTPInput" id="xmlCheckHTTPInput"></a>Function: xmlCheckHTTPInput</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlCheckHTTPInput	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> ret)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a buffered output</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlCheckHTTPInput" id="xmlCheckHTTPInput"></a>Function: xmlCheckHTTPInput</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlCheckHTTPInput	(<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt, <br />						 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> ret)<br />
 </pre><p>Check an input in case it was created from an HTTP stream, in that case it will handle encoding and update of the base URL in case of redirection. It also checks for HTTP errors in which case the input is cleanly freed up and an appropriate error is raised in context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>ret</tt></i>:</span></td><td>an XML parser input</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the input or NULL in case of HTTP error.</td></tr></tbody></table></div><h3><a name="xmlRegisterOutputCallbacks" id="xmlRegisterOutputCallbacks"></a>Function: xmlRegisterOutputCallbacks</h3><pre class="programlisting">int	xmlRegisterOutputCallbacks	(<a href="libxml-xmlIO.html#xmlOutputMatchCallback">xmlOutputMatchCallback</a> matchFunc, <br />				 <a href="libxml-xmlIO.html#xmlOutputOpenCallback">xmlOutputOpenCallback</a> openFunc, <br />				 <a href="libxml-xmlIO.html#xmlOutputWriteCallback">xmlOutputWriteCallback</a> writeFunc, <br />				 <a href="libxml-xmlIO.html#xmlOutputCloseCallback">xmlOutputCloseCallback</a> closeFunc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>ret</tt></i>:</span></td><td>an XML parser input</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the input or NULL in case of HTTP error.</td></tr></tbody></table></div><h3><a name="xmlRegisterOutputCallbacks" id="xmlRegisterOutputCallbacks"></a>Function: xmlRegisterOutputCallbacks</h3><pre class="programlisting">int	xmlRegisterOutputCallbacks	(<a href="libxml-xmlIO.html#xmlOutputMatchCallback">xmlOutputMatchCallback</a> matchFunc, <br />					 <a href="libxml-xmlIO.html#xmlOutputOpenCallback">xmlOutputOpenCallback</a> openFunc, <br />					 <a href="libxml-xmlIO.html#xmlOutputWriteCallback">xmlOutputWriteCallback</a> writeFunc, <br />					 <a href="libxml-xmlIO.html#xmlOutputCloseCallback">xmlOutputCloseCallback</a> closeFunc)<br />
 </pre><p>Register a new set of I/O callback for handling output.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>matchFunc</tt></i>:</span></td><td>the <a href="libxml-xmlIO.html#xmlOutputMatchCallback">xmlOutputMatchCallback</a></td></tr><tr><td><span class="term"><i><tt>openFunc</tt></i>:</span></td><td>the <a href="libxml-xmlIO.html#xmlOutputOpenCallback">xmlOutputOpenCallback</a></td></tr><tr><td><span class="term"><i><tt>writeFunc</tt></i>:</span></td><td>the <a href="libxml-xmlIO.html#xmlOutputWriteCallback">xmlOutputWriteCallback</a></td></tr><tr><td><span class="term"><i><tt>closeFunc</tt></i>:</span></td><td>the <a href="libxml-xmlIO.html#xmlOutputCloseCallback">xmlOutputCloseCallback</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the registered handler number or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlParserInputBufferCreateMem" id="xmlParserInputBufferCreateMem"></a>Function: xmlParserInputBufferCreateMem</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	xmlParserInputBufferCreateMem	(const char * mem, <br />				 int size, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>matchFunc</tt></i>:</span></td><td>the <a href="libxml-xmlIO.html#xmlOutputMatchCallback">xmlOutputMatchCallback</a></td></tr><tr><td><span class="term"><i><tt>openFunc</tt></i>:</span></td><td>the <a href="libxml-xmlIO.html#xmlOutputOpenCallback">xmlOutputOpenCallback</a></td></tr><tr><td><span class="term"><i><tt>writeFunc</tt></i>:</span></td><td>the <a href="libxml-xmlIO.html#xmlOutputWriteCallback">xmlOutputWriteCallback</a></td></tr><tr><td><span class="term"><i><tt>closeFunc</tt></i>:</span></td><td>the <a href="libxml-xmlIO.html#xmlOutputCloseCallback">xmlOutputCloseCallback</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the registered handler number or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlParserInputBufferCreateMem" id="xmlParserInputBufferCreateMem"></a>Function: xmlParserInputBufferCreateMem</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	xmlParserInputBufferCreateMem	(const char * mem, <br />							 int size, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
 </pre><p>Create a buffered parser input for the progressive parsing for the input from a memory area.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>the memory input</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the length of the memory block</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser input or NULL</td></tr></tbody></table></div><h3><a name="xmlIOFTPMatch" id="xmlIOFTPMatch"></a>Function: xmlIOFTPMatch</h3><pre class="programlisting">int	xmlIOFTPMatch	(const char * filename)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>the memory input</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the length of the memory block</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser input or NULL</td></tr></tbody></table></div><h3><a name="xmlIOFTPMatch" id="xmlIOFTPMatch"></a>Function: xmlIOFTPMatch</h3><pre class="programlisting">int	xmlIOFTPMatch			(const char * filename)<br />
 </pre><p>check if the URI matches an FTP one</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the URI for matching</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if matches, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlRegisterInputCallbacks" id="xmlRegisterInputCallbacks"></a>Function: xmlRegisterInputCallbacks</h3><pre class="programlisting">int	xmlRegisterInputCallbacks	(<a href="libxml-xmlIO.html#xmlInputMatchCallback">xmlInputMatchCallback</a> matchFunc, <br />				 <a href="libxml-xmlIO.html#xmlInputOpenCallback">xmlInputOpenCallback</a> openFunc, <br />				 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> readFunc, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> closeFunc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the URI for matching</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if matches, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlRegisterInputCallbacks" id="xmlRegisterInputCallbacks"></a>Function: xmlRegisterInputCallbacks</h3><pre class="programlisting">int	xmlRegisterInputCallbacks	(<a href="libxml-xmlIO.html#xmlInputMatchCallback">xmlInputMatchCallback</a> matchFunc, <br />					 <a href="libxml-xmlIO.html#xmlInputOpenCallback">xmlInputOpenCallback</a> openFunc, <br />					 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> readFunc, <br />					 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> closeFunc)<br />
 </pre><p>Register a new set of I/O callback for handling parser input.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>matchFunc</tt></i>:</span></td><td>the <a href="libxml-xmlIO.html#xmlInputMatchCallback">xmlInputMatchCallback</a></td></tr><tr><td><span class="term"><i><tt>openFunc</tt></i>:</span></td><td>the <a href="libxml-xmlIO.html#xmlInputOpenCallback">xmlInputOpenCallback</a></td></tr><tr><td><span class="term"><i><tt>readFunc</tt></i>:</span></td><td>the <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a></td></tr><tr><td><span class="term"><i><tt>closeFunc</tt></i>:</span></td><td>the <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the registered handler number or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlFreeParserInputBuffer" id="xmlFreeParserInputBuffer"></a>Function: xmlFreeParserInputBuffer</h3><pre class="programlisting">void	xmlFreeParserInputBuffer	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> in)<br />
 </pre><p>Free up the memory used by a buffered parser input</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a buffered parser input</td></tr></tbody></table></div><h3><a name="xmlRegisterDefaultInputCallbacks" id="xmlRegisterDefaultInputCallbacks"></a>Function: xmlRegisterDefaultInputCallbacks</h3><pre class="programlisting">void	xmlRegisterDefaultInputCallbacks	(void)<br />
 </pre><p>Registers the default compiled-in I/O handlers.</p>
-<h3><a name="xmlParserInputBufferGrow" id="xmlParserInputBufferGrow"></a>Function: xmlParserInputBufferGrow</h3><pre class="programlisting">int	xmlParserInputBufferGrow	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> in, <br />				 int len)<br />
+<h3><a name="xmlParserInputBufferGrow" id="xmlParserInputBufferGrow"></a>Function: xmlParserInputBufferGrow</h3><pre class="programlisting">int	xmlParserInputBufferGrow	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> in, <br />					 int len)<br />
 </pre><p>Grow up the content of the input buffer, the old data are preserved This routine handle the I18N transcoding to internal UTF-8 This routine is used when operating the parser in normal (pull) mode TODO: one should be able to remove one extra copy by copying directly onto in-&gt;buffer or in-&gt;raw</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a buffered parser input</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>indicative value of the amount of chars to read</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of chars read and stored in the buffer, or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlAllocOutputBuffer" id="xmlAllocOutputBuffer"></a>Function: xmlAllocOutputBuffer</h3><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	xmlAllocOutputBuffer	(<a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)<br />
 </pre><p>Create a buffered parser output</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>encoder</tt></i>:</span></td><td>the encoding converter or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser output or NULL</td></tr></tbody></table></div><h3><a name="xmlNoNetExternalEntityLoader" id="xmlNoNetExternalEntityLoader"></a>Function: xmlNoNetExternalEntityLoader</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlNoNetExternalEntityLoader	(const char * URL, <br />				 const char * ID, <br />				 <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>encoder</tt></i>:</span></td><td>the encoding converter or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser output or NULL</td></tr></tbody></table></div><h3><a name="xmlNoNetExternalEntityLoader" id="xmlNoNetExternalEntityLoader"></a>Function: xmlNoNetExternalEntityLoader</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>	xmlNoNetExternalEntityLoader	(const char * URL, <br />							 const char * ID, <br />							 <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt)<br />
 </pre><p>A specific entity loader disabling network accesses, though still allowing local catalog accesses for resolution.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the URL for the entity to load</td></tr><tr><td><span class="term"><i><tt>ID</tt></i>:</span></td><td>the System ID for the entity to load</td></tr><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the context in which the entity is called or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new allocated xmlParserInputPtr, or NULL.</td></tr></tbody></table></div>
-      Callback used in the I/O Output API to close the resource
-      
-      
-    <h3><a name="xmlIOHTTPMatch" id="xmlIOHTTPMatch"></a>Function: xmlIOHTTPMatch</h3><pre class="programlisting">int	xmlIOHTTPMatch	(const char * filename)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the URL for the entity to load</td></tr><tr><td><span class="term"><i><tt>ID</tt></i>:</span></td><td>the System ID for the entity to load</td></tr><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the context in which the entity is called or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new allocated xmlParserInputPtr, or NULL.</td></tr></tbody></table></div><h3><a name="xmlOutputCloseCallback" id="xmlOutputCloseCallback"></a>Function type: xmlOutputCloseCallback</h3><pre class="programlisting">Function type: xmlOutputCloseCallback
+int	xmlOutputCloseCallback		(void * context)
+</pre><p>Callback used in the I/O Output API to close the resource</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>an Output context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><br />
+<h3><a name="xmlIOHTTPMatch" id="xmlIOHTTPMatch"></a>Function: xmlIOHTTPMatch</h3><pre class="programlisting">int	xmlIOHTTPMatch			(const char * filename)<br />
 </pre><p>check if the URI matches an HTTP one</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the URI for matching</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if matches, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlIOHTTPOpen" id="xmlIOHTTPOpen"></a>Function: xmlIOHTTPOpen</h3><pre class="programlisting">void *	xmlIOHTTPOpen	(const char * filename)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the URI for matching</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if matches, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlIOHTTPOpen" id="xmlIOHTTPOpen"></a>Function: xmlIOHTTPOpen</h3><pre class="programlisting">void *	xmlIOHTTPOpen			(const char * filename)<br />
 </pre><p>open an HTTP I/O channel</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the URI for matching</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an I/O context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlParserInputBufferCreateIO" id="xmlParserInputBufferCreateIO"></a>Function: xmlParserInputBufferCreateIO</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	xmlParserInputBufferCreateIO	(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the URI for matching</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an I/O context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlParserInputBufferCreateIO" id="xmlParserInputBufferCreateIO"></a>Function: xmlParserInputBufferCreateIO</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	xmlParserInputBufferCreateIO	(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />							 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />							 void * ioctx, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
 </pre><p>Create a buffered parser input for the progressive parsing for the input from an I/O handler</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser input or NULL</td></tr></tbody></table></div><h3><a name="xmlOutputBufferCreateFd" id="xmlOutputBufferCreateFd"></a>Function: xmlOutputBufferCreateFd</h3><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	xmlOutputBufferCreateFd	(int fd, <br />				 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser input or NULL</td></tr></tbody></table></div><h3><a name="xmlOutputBufferCreateFd" id="xmlOutputBufferCreateFd"></a>Function: xmlOutputBufferCreateFd</h3><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	xmlOutputBufferCreateFd	(int fd, <br />						 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder)<br />
 </pre><p>Create a buffered output for the progressive saving to a file descriptor</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>a file descriptor number</td></tr><tr><td><span class="term"><i><tt>encoder</tt></i>:</span></td><td>the encoding converter or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser output or NULL</td></tr></tbody></table></div><h3><a name="xmlNormalizeWindowsPath" id="xmlNormalizeWindowsPath"></a>Function: xmlNormalizeWindowsPath</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlNormalizeWindowsPath	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * path)<br />
 </pre><p>This function is obsolete. Please see xmlURIFromPath in uri.c for a better solution.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>path</tt></i>:</span></td><td>the input file path</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a canonicalized version of the path</td></tr></tbody></table></div>
-      Callback used in the I/O Input API to read the resource
-      
-      
-      
-      
-    <h3><a name="xmlIOHTTPClose" id="xmlIOHTTPClose"></a>Function: xmlIOHTTPClose</h3><pre class="programlisting">int	xmlIOHTTPClose	(void * context)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>path</tt></i>:</span></td><td>the input file path</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a canonicalized version of the path</td></tr></tbody></table></div><h3><a name="xmlInputReadCallback" id="xmlInputReadCallback"></a>Function type: xmlInputReadCallback</h3><pre class="programlisting">Function type: xmlInputReadCallback
+int	xmlInputReadCallback		(void * context, <br />					 char * buffer, <br />					 int len)
+</pre><p>Callback used in the I/O Input API to read the resource</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>an Input context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>the buffer to store data read</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the length of the buffer in bytes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes read or -1 in case of error</td></tr></tbody></table></div><br />
+<h3><a name="xmlParserInputBufferCreateStatic" id="xmlParserInputBufferCreateStatic"></a>Function: xmlParserInputBufferCreateStatic</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	xmlParserInputBufferCreateStatic	(const char * mem, <br />							 int size, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
+</pre><p>Create a buffered parser input for the progressive parsing for the input from an immutable memory area. This will not copy the memory area to the buffer, but the memory is expected to be available until the end of the parsing, this is useful for example when using mmap'ed file.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>the memory input</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the length of the memory block</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser input or NULL</td></tr></tbody></table></div><h3><a name="xmlIOHTTPClose" id="xmlIOHTTPClose"></a>Function: xmlIOHTTPClose</h3><pre class="programlisting">int	xmlIOHTTPClose			(void * context)<br />
 </pre><p>Close an HTTP I/O channel</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>the I/O context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0</td></tr></tbody></table></div><h3><a name="xmlParserInputBufferPush" id="xmlParserInputBufferPush"></a>Function: xmlParserInputBufferPush</h3><pre class="programlisting">int	xmlParserInputBufferPush	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> in, <br />				 int len, <br />				 const char * buf)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>the I/O context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0</td></tr></tbody></table></div><h3><a name="xmlParserInputBufferPush" id="xmlParserInputBufferPush"></a>Function: xmlParserInputBufferPush</h3><pre class="programlisting">int	xmlParserInputBufferPush	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> in, <br />					 int len, <br />					 const char * buf)<br />
 </pre><p>Push the content of the arry in the input buffer This routine handle the I18N transcoding to internal UTF-8 This is used when operating the parser in progressive (push) mode.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a buffered parser input</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the size in bytes of the array.</td></tr><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>an char array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of chars read and stored in the buffer, or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlOutputBufferCreateFilename" id="xmlOutputBufferCreateFilename"></a>Function: xmlOutputBufferCreateFilename</h3><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	xmlOutputBufferCreateFilename	(const char * URI, <br />				 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder, <br />				 int compression)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a buffered parser input</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the size in bytes of the array.</td></tr><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>an char array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of chars read and stored in the buffer, or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlOutputBufferCreateFilename" id="xmlOutputBufferCreateFilename"></a>Function: xmlOutputBufferCreateFilename</h3><pre class="programlisting"><a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>	xmlOutputBufferCreateFilename	(const char * URI, <br />							 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> encoder, <br />							 int compression)<br />
 </pre><p>Create a buffered output for the progressive saving of a file If filename is &quot;-' then we use stdout as the output. Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time. TODO: currently if compression is set, the library only support writing to a local file.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>a C string containing the URI or filename</td></tr><tr><td><span class="term"><i><tt>encoder</tt></i>:</span></td><td>the encoding converter or NULL</td></tr><tr><td><span class="term"><i><tt>compression</tt></i>:</span></td><td>the compression ration (0 none, 9 max).</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new output or NULL</td></tr></tbody></table></div><h3><a name="xmlCleanupOutputCallbacks" id="xmlCleanupOutputCallbacks"></a>Function: xmlCleanupOutputCallbacks</h3><pre class="programlisting">void	xmlCleanupOutputCallbacks	(void)<br />
 </pre><p>clears the entire output callback table. this includes the compiled-in I/O callbacks.</p>
-
-      Callback used in the I/O Input API to open the resource
-      
-      
-    <h3><a name="xmlParserInputBufferRead" id="xmlParserInputBufferRead"></a>Function: xmlParserInputBufferRead</h3><pre class="programlisting">int	xmlParserInputBufferRead	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> in, <br />				 int len)<br />
+<h3><a name="xmlInputOpenCallback" id="xmlInputOpenCallback"></a>Function type: xmlInputOpenCallback</h3><pre class="programlisting">Function type: xmlInputOpenCallback
+void *	xmlInputOpenCallback		(char const * filename)
+</pre><p>Callback used in the I/O Input API to open the resource</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename or URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an Input context or NULL in case or error</td></tr></tbody></table></div><br />
+<h3><a name="xmlParserInputBufferRead" id="xmlParserInputBufferRead"></a>Function: xmlParserInputBufferRead</h3><pre class="programlisting">int	xmlParserInputBufferRead	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> in, <br />					 int len)<br />
 </pre><p>Refresh the content of the input buffer, the old data are considered consumed This routine handle the I18N transcoding to internal UTF-8</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a buffered parser input</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>indicative value of the amount of chars to read</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of chars read and stored in the buffer, or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlOutputBufferWriteString" id="xmlOutputBufferWriteString"></a>Function: xmlOutputBufferWriteString</h3><pre class="programlisting">int	xmlOutputBufferWriteString	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out, <br />				 const char * str)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>in</tt></i>:</span></td><td>a buffered parser input</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>indicative value of the amount of chars to read</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of chars read and stored in the buffer, or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlOutputBufferWriteString" id="xmlOutputBufferWriteString"></a>Function: xmlOutputBufferWriteString</h3><pre class="programlisting">int	xmlOutputBufferWriteString	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out, <br />					 const char * str)<br />
 </pre><p>Write the content of the string in the output I/O buffer This routine handle the I18N transcoding from internal UTF-8 The buffer is lossless, i.e. will store in case of partial or delayed writes.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a buffered parser output</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>a zero terminated C string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of chars immediately written, or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlFileMatch" id="xmlFileMatch"></a>Function: xmlFileMatch</h3><pre class="programlisting">int	xmlFileMatch	(const char * filename)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a buffered parser output</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>a zero terminated C string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of chars immediately written, or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlFileMatch" id="xmlFileMatch"></a>Function: xmlFileMatch</h3><pre class="programlisting">int	xmlFileMatch			(const char * filename)<br />
 </pre><p>input from FILE *</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the URI for matching</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if matches, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlFileRead" id="xmlFileRead"></a>Function: xmlFileRead</h3><pre class="programlisting">int	xmlFileRead	(void * context, <br />				 char * buffer, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the URI for matching</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if matches, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlFileRead" id="xmlFileRead"></a>Function: xmlFileRead</h3><pre class="programlisting">int	xmlFileRead			(void * context, <br />					 char * buffer, <br />					 int len)<br />
 </pre><p>Read @len bytes to @buffer from the I/O channel.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>the I/O context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>where to drop data</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>number of bytes to write</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written</td></tr></tbody></table></div><h3><a name="xmlParserInputBufferCreateFile" id="xmlParserInputBufferCreateFile"></a>Function: xmlParserInputBufferCreateFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	xmlParserInputBufferCreateFile	(FILE * file, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>the I/O context</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>where to drop data</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>number of bytes to write</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of bytes written</td></tr></tbody></table></div><h3><a name="xmlParserInputBufferCreateFile" id="xmlParserInputBufferCreateFile"></a>Function: xmlParserInputBufferCreateFile</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	xmlParserInputBufferCreateFile	(FILE * file, <br />							 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
 </pre><p>Create a buffered parser input for the progressive parsing of a FILE * buffered C I/O</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>a FILE*</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser input or NULL</td></tr></tbody></table></div><h3><a name="xmlParserInputBufferCreateStatic" id="xmlParserInputBufferCreateStatic"></a>Function: xmlParserInputBufferCreateStatic</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	xmlParserInputBufferCreateStatic	(const char * mem, <br />				 int size, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
-</pre><p>Create a buffered parser input for the progressive parsing for the input from an immutable memory area. This will not copy the memory area to the buffer, but the memory is expected to be available until the end of the parsing, this is useful for example when using mmap'ed file.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>the memory input</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the length of the memory block</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser input or NULL</td></tr></tbody></table></div><h3><a name="xmlParserGetDirectory" id="xmlParserGetDirectory"></a>Function: xmlParserGetDirectory</h3><pre class="programlisting">char *	xmlParserGetDirectory	(const char * filename)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>a FILE*</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>the charset encoding if known</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new parser input or NULL</td></tr></tbody></table></div><h3><a name="xmlParserGetDirectory" id="xmlParserGetDirectory"></a>Function: xmlParserGetDirectory</h3><pre class="programlisting">char *	xmlParserGetDirectory		(const char * filename)<br />
 </pre><p>lookup the directory for that file</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the path to a file</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new allocated string containing the directory, or NULL.</td></tr></tbody></table></div><h3><a name="xmlOutputBufferWrite" id="xmlOutputBufferWrite"></a>Function: xmlOutputBufferWrite</h3><pre class="programlisting">int	xmlOutputBufferWrite	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out, <br />				 int len, <br />				 const char * buf)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the path to a file</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new allocated string containing the directory, or NULL.</td></tr></tbody></table></div><h3><a name="xmlOutputBufferWrite" id="xmlOutputBufferWrite"></a>Function: xmlOutputBufferWrite</h3><pre class="programlisting">int	xmlOutputBufferWrite		(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out, <br />					 int len, <br />					 const char * buf)<br />
 </pre><p>Write the content of the array in the output I/O buffer This routine handle the I18N transcoding from internal UTF-8 The buffer is lossless, i.e. will store in case of partial or delayed writes.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>a buffered parser output</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the size in bytes of the array.</td></tr><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>an char array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of chars immediately written, or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlCleanupInputCallbacks" id="xmlCleanupInputCallbacks"></a>Function: xmlCleanupInputCallbacks</h3><pre class="programlisting">void	xmlCleanupInputCallbacks	(void)<br />
 </pre><p>clears the entire input callback table. this includes the compiled-in I/O.</p>
-
-      Callback used in the I/O Input API to close the resource
-      
-      
-    <h3><a name="xmlIOHTTPOpenW" id="xmlIOHTTPOpenW"></a>Function: xmlIOHTTPOpenW</h3><pre class="programlisting">void *	xmlIOHTTPOpenW	(const char * post_uri, <br />				 int compression)<br />
+<h3><a name="xmlInputCloseCallback" id="xmlInputCloseCallback"></a>Function type: xmlInputCloseCallback</h3><pre class="programlisting">Function type: xmlInputCloseCallback
+int	xmlInputCloseCallback		(void * context)
+</pre><p>Callback used in the I/O Input API to close the resource</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>context</tt></i>:</span></td><td>an Input context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><br />
+<h3><a name="xmlIOHTTPOpenW" id="xmlIOHTTPOpenW"></a>Function: xmlIOHTTPOpenW</h3><pre class="programlisting">void *	xmlIOHTTPOpenW			(const char * post_uri, <br />					 int compression)<br />
 </pre><p>Open a temporary buffer to collect the document for a subsequent HTTP POST request. Non-static as is called from the output buffer creation routine.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>post_uri</tt></i>:</span></td><td>The destination URI for the document</td></tr><tr><td><span class="term"><i><tt>compression</tt></i>:</span></td><td>The compression desired for the document.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an I/O context or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlAllocParserInputBuffer" id="xmlAllocParserInputBuffer"></a>Function: xmlAllocParserInputBuffer</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	xmlAllocParserInputBuffer	(<a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc)<br />
 </pre><p>Create a buffered parser input for progressive parsing</p>
diff --git a/doc/html/libxml-xmlautomata.html b/doc/html/libxml-xmlautomata.html
index 9340e8b..e9012bd 100644
--- a/doc/html/libxml-xmlautomata.html
+++ b/doc/html/libxml-xmlautomata.html
@@ -10,60 +10,62 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xmlautomata from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlautomata from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlIO.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlIO.html">xmlIO</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlerror.html">xmlerror</a></th><td><a accesskey="n" href="libxml-xmlerror.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>the API to build regexp automata </p><h2>Table of Contents</h2><pre class="programlisting">void	<a href="#xmlFreeAutomata">xmlFreeAutomata</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br />
-</pre><pre class="programlisting">int	<a href="#xmlAutomataNewCounter">xmlAutomataNewCounter</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 int min, <br />				 int max)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataGetInitState">xmlAutomataGetInitState</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewTransition2">xmlAutomataNewTransition2</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token2, <br />				 void * data)<br />
-</pre><pre class="programlisting">Structure <a name="xmlAutomataState" id="xmlAutomataState">xmlAutomataState</a><br />struct _xmlAutomataState {
+    </style><title>Module xmlautomata from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlautomata from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlIO.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlIO.html">xmlIO</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlerror.html">xmlerror</a></th><td><a accesskey="n" href="libxml-xmlerror.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>the API to build regexp automata </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xmlAutomata">xmlAutomata</a><br />struct _xmlAutomata
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewState">xmlAutomataNewState</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br />
 </pre><pre class="programlisting">Typedef <a href="libxml-xmlautomata.html#xmlAutomata">xmlAutomata</a> * <a name="xmlAutomataPtr" id="xmlAutomataPtr">xmlAutomataPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewCountTrans">xmlAutomataNewCountTrans</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />				 int min, <br />				 int max, <br />				 void * data)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewAllTrans">xmlAutomataNewAllTrans</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />				 int lax)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewOnceTrans">xmlAutomataNewOnceTrans</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />				 int min, <br />				 int max, <br />				 void * data)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewCounterTrans">xmlAutomataNewCounterTrans</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />				 int counter)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a>	<a href="#xmlAutomataCompile">xmlAutomataCompile</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a>	<a href="#xmlNewAutomata">xmlNewAutomata</a>	(void)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewEpsilon">xmlAutomataNewEpsilon</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-xmlautomata.html#xmlAutomataState">xmlAutomataState</a> * <a name="xmlAutomataStatePtr" id="xmlAutomataStatePtr">xmlAutomataStatePtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlAutomataSetFinalState">xmlAutomataSetFinalState</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> state)<br />
-</pre><pre class="programlisting">Structure <a name="xmlAutomata" id="xmlAutomata">xmlAutomata</a><br />struct _xmlAutomata {
+</pre><pre class="programlisting">Structure <a href="#xmlAutomataState">xmlAutomataState</a><br />struct _xmlAutomataState
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewCountedTrans">xmlAutomataNewCountedTrans</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />				 int counter)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewTransition">xmlAutomataNewTransition</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />				 void * data)<br />
-</pre><pre class="programlisting">int	<a href="#xmlAutomataIsDeterminist">xmlAutomataIsDeterminist</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlFreeAutomata" id="xmlFreeAutomata"></a>Function: xmlFreeAutomata</h3><pre class="programlisting">void	xmlFreeAutomata	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br />
+</pre><pre class="programlisting">Typedef <a href="libxml-xmlautomata.html#xmlAutomataState">xmlAutomataState</a> * <a name="xmlAutomataStatePtr" id="xmlAutomataStatePtr">xmlAutomataStatePtr</a>
+</pre><pre class="programlisting"><a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a>	<a href="#xmlAutomataCompile">xmlAutomataCompile</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)</pre>
+<pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataGetInitState">xmlAutomataGetInitState</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)</pre>
+<pre class="programlisting">int	<a href="#xmlAutomataIsDeterminist">xmlAutomataIsDeterminist</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)</pre>
+<pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewAllTrans">xmlAutomataNewAllTrans</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />						 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />						 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />						 int lax)</pre>
+<pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewCountTrans">xmlAutomataNewCountTrans</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />							 int min, <br />							 int max, <br />							 void * data)</pre>
+<pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewCountedTrans">xmlAutomataNewCountedTrans</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />							 int counter)</pre>
+<pre class="programlisting">int	<a href="#xmlAutomataNewCounter">xmlAutomataNewCounter</a>		(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />					 int min, <br />					 int max)</pre>
+<pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewCounterTrans">xmlAutomataNewCounterTrans</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />							 int counter)</pre>
+<pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewEpsilon">xmlAutomataNewEpsilon</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />						 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />						 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to)</pre>
+<pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewOnceTrans">xmlAutomataNewOnceTrans</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />						 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />						 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />						 int min, <br />						 int max, <br />						 void * data)</pre>
+<pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewState">xmlAutomataNewState</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)</pre>
+<pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewTransition">xmlAutomataNewTransition</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />							 void * data)</pre>
+<pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	<a href="#xmlAutomataNewTransition2">xmlAutomataNewTransition2</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token2, <br />							 void * data)</pre>
+<pre class="programlisting">int	<a href="#xmlAutomataSetFinalState">xmlAutomataSetFinalState</a>	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />					 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> state)</pre>
+<pre class="programlisting">void	<a href="#xmlFreeAutomata">xmlFreeAutomata</a>			(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)</pre>
+<pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a>	<a href="#xmlNewAutomata">xmlNewAutomata</a>		(void)</pre>
+<h2>Description</h2>
+<h3><a name="xmlAutomata" id="xmlAutomata">Structure xmlAutomata</a></h3><pre class="programlisting">Structure xmlAutomata<br />struct _xmlAutomata {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlAutomataState" id="xmlAutomataState">Structure xmlAutomataState</a></h3><pre class="programlisting">Structure xmlAutomataState<br />struct _xmlAutomataState {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlFreeAutomata" id="xmlFreeAutomata"></a>Function: xmlFreeAutomata</h3><pre class="programlisting">void	xmlFreeAutomata			(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br />
 </pre><p>Free an automata</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr></tbody></table></div><h3><a name="xmlAutomataNewCounter" id="xmlAutomataNewCounter"></a>Function: xmlAutomataNewCounter</h3><pre class="programlisting">int	xmlAutomataNewCounter	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 int min, <br />				 int max)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr></tbody></table></div><h3><a name="xmlAutomataNewCounter" id="xmlAutomataNewCounter"></a>Function: xmlAutomataNewCounter</h3><pre class="programlisting">int	xmlAutomataNewCounter		(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />					 int min, <br />					 int max)<br />
 </pre><p>Create a new counter</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>min</tt></i>:</span></td><td>the minimal value on the counter</td></tr><tr><td><span class="term"><i><tt>max</tt></i>:</span></td><td>the maximal value on the counter</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the counter number or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataGetInitState" id="xmlAutomataGetInitState"></a>Function: xmlAutomataGetInitState</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataGetInitState	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br />
 </pre><p>Initial state lookup</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the initial state of the automata</td></tr></tbody></table></div><h3><a name="xmlAutomataNewTransition2" id="xmlAutomataNewTransition2"></a>Function: xmlAutomataNewTransition2</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewTransition2	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token2, <br />				 void * data)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the initial state of the automata</td></tr></tbody></table></div><h3><a name="xmlAutomataNewTransition2" id="xmlAutomataNewTransition2"></a>Function: xmlAutomataNewTransition2</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewTransition2	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token2, <br />							 void * data)<br />
 </pre><p>If @to is NULL, this create first a new target state in the automata and then adds a transition from the @from state to the target state activated by the value of @token</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td>the first input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>token2</tt></i>:</span></td><td>the second input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data passed to the callback function if the transition is activated</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataNewState" id="xmlAutomataNewState"></a>Function: xmlAutomataNewState</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewState	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br />
-</pre><p>Create a new disconnected state in the automata</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataNewCountTrans" id="xmlAutomataNewCountTrans"></a>Function: xmlAutomataNewCountTrans</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewCountTrans	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />				 int min, <br />				 int max, <br />				 void * data)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td>the first input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>token2</tt></i>:</span></td><td>the second input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data passed to the callback function if the transition is activated</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataNewCountTrans" id="xmlAutomataNewCountTrans"></a>Function: xmlAutomataNewCountTrans</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewCountTrans	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />							 int min, <br />							 int max, <br />							 void * data)<br />
 </pre><p>If @to is NULL, this create first a new target state in the automata and then adds a transition from the @from state to the target state activated by a succession of input of value @token and whose number is between @min and @max</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td>the input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>min</tt></i>:</span></td><td>the minimum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>max</tt></i>:</span></td><td>the maximum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data associated to the transition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataNewAllTrans" id="xmlAutomataNewAllTrans"></a>Function: xmlAutomataNewAllTrans</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewAllTrans	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />				 int lax)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td>the input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>min</tt></i>:</span></td><td>the minimum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>max</tt></i>:</span></td><td>the maximum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data associated to the transition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataNewAllTrans" id="xmlAutomataNewAllTrans"></a>Function: xmlAutomataNewAllTrans</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewAllTrans	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />						 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />						 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />						 int lax)<br />
 </pre><p>If @to is NULL, this create first a new target state in the automata and then adds a an ALL transition from the @from state to the target state. That transition is an epsilon transition allowed only when all transitions from the @from node have been activated.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>lax</tt></i>:</span></td><td>allow to transition if not all all transitions have been activated</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataNewOnceTrans" id="xmlAutomataNewOnceTrans"></a>Function: xmlAutomataNewOnceTrans</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewOnceTrans	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />				 int min, <br />				 int max, <br />				 void * data)<br />
-</pre><p>If @to is NULL, this create first a new target state in the automata and then adds a transition from the @from state to the target state activated by a succession of input of value @token and whose number is between @min and @max, moreover that transistion can only be crossed once.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td>the input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>min</tt></i>:</span></td><td>the minimum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>max</tt></i>:</span></td><td>the maximum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data associated to the transition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataNewCounterTrans" id="xmlAutomataNewCounterTrans"></a>Function: xmlAutomataNewCounterTrans</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewCounterTrans	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />				 int counter)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>lax</tt></i>:</span></td><td>allow to transition if not all all transitions have been activated</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataNewState" id="xmlAutomataNewState"></a>Function: xmlAutomataNewState</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewState	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br />
+</pre><p>Create a new disconnected state in the automata</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataNewCounterTrans" id="xmlAutomataNewCounterTrans"></a>Function: xmlAutomataNewCounterTrans</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewCounterTrans	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />							 int counter)<br />
 </pre><p>If @to is NULL, this create first a new target state in the automata and then adds an epsilon transition from the @from state to the target state which will be allowed only if the counter is within the right range.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>counter</tt></i>:</span></td><td>the counter associated to that transition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataCompile" id="xmlAutomataCompile"></a>Function: xmlAutomataCompile</h3><pre class="programlisting"><a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a>	xmlAutomataCompile	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br />
 </pre><p>Compile the automata into a Reg Exp ready for being executed. The automata should be free after this point.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the compiled regexp or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlNewAutomata" id="xmlNewAutomata"></a>Function: xmlNewAutomata</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a>	xmlNewAutomata	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the compiled regexp or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlNewAutomata" id="xmlNewAutomata"></a>Function: xmlNewAutomata</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a>	xmlNewAutomata		(void)<br />
 </pre><p>Create a new automata</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new object or NULL in case of failure</td></tr></tbody></table></div><h3><a name="xmlAutomataNewEpsilon" id="xmlAutomataNewEpsilon"></a>Function: xmlAutomataNewEpsilon</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewEpsilon	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new object or NULL in case of failure</td></tr></tbody></table></div><h3><a name="xmlAutomataNewEpsilon" id="xmlAutomataNewEpsilon"></a>Function: xmlAutomataNewEpsilon</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewEpsilon	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />						 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />						 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to)<br />
 </pre><p>If @to is NULL, this create first a new target state in the automata and then adds a an epsilon transition from the @from state to the target state</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataSetFinalState" id="xmlAutomataSetFinalState"></a>Function: xmlAutomataSetFinalState</h3><pre class="programlisting">int	xmlAutomataSetFinalState	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> state)<br />
-</pre><p>Makes that state a final state</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>state</tt></i>:</span></td><td>a state in this automata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataNewCountedTrans" id="xmlAutomataNewCountedTrans"></a>Function: xmlAutomataNewCountedTrans</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewCountedTrans	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />				 int counter)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataNewCountedTrans" id="xmlAutomataNewCountedTrans"></a>Function: xmlAutomataNewCountedTrans</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewCountedTrans	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />							 int counter)<br />
 </pre><p>If @to is NULL, this create first a new target state in the automata and then adds an epsilon transition from the @from state to the target state which will increment the counter provided</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>counter</tt></i>:</span></td><td>the counter associated to that transition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataNewTransition" id="xmlAutomataNewTransition"></a>Function: xmlAutomataNewTransition</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewTransition	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />				 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />				 void * data)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>counter</tt></i>:</span></td><td>the counter associated to that transition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataSetFinalState" id="xmlAutomataSetFinalState"></a>Function: xmlAutomataSetFinalState</h3><pre class="programlisting">int	xmlAutomataSetFinalState	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />					 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> state)<br />
+</pre><p>Makes that state a final state</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>state</tt></i>:</span></td><td>a state in this automata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataNewOnceTrans" id="xmlAutomataNewOnceTrans"></a>Function: xmlAutomataNewOnceTrans</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewOnceTrans	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />						 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />						 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />						 int min, <br />						 int max, <br />						 void * data)<br />
+</pre><p>If @to is NULL, this create first a new target state in the automata and then adds a transition from the @from state to the target state activated by a succession of input of value @token and whose number is between @min and @max, moreover that transistion can only be crossed once.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td>the input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>min</tt></i>:</span></td><td>the minimum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>max</tt></i>:</span></td><td>the maximum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data associated to the transition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataNewTransition" id="xmlAutomataNewTransition"></a>Function: xmlAutomataNewTransition</h3><pre class="programlisting"><a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a>	xmlAutomataNewTransition	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br />							 <a href="libxml-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />							 void * data)<br />
 </pre><p>If @to is NULL, this create first a new target state in the automata and then adds a transition from the @from state to the target state activated by the value of @token</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td>the input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data passed to the callback function if the transition is activated</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlAutomataIsDeterminist" id="xmlAutomataIsDeterminist"></a>Function: xmlAutomataIsDeterminist</h3><pre class="programlisting">int	xmlAutomataIsDeterminist	(<a href="libxml-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br />
 </pre><p>Checks if an automata is determinist.</p>
diff --git a/doc/html/libxml-xmlerror.html b/doc/html/libxml-xmlerror.html
index d8e2714..d3a69e9 100644
--- a/doc/html/libxml-xmlerror.html
+++ b/doc/html/libxml-xmlerror.html
@@ -10,65 +10,40 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xmlerror from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlerror from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlautomata.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlautomata.html">xmlautomata</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlexports.html">xmlexports</a></th><td><a accesskey="n" href="libxml-xmlexports.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>the API used to report errors </p><h2>Table of Contents</h2><pre class="programlisting">void	<a href="#xmlParserWarning">xmlParserWarning</a>	(void * ctx, <br />				 const char * msg, <br />				 ... ...)<br />
-</pre><pre class="programlisting">Enum <a name="xmlErrorDomain" id="xmlErrorDomain">xmlErrorDomain</a> {
-    <a name="XML_FROM_NONE" id="XML_FROM_NONE">XML_FROM_NONE</a> = 0
-    <a name="XML_FROM_PARSER" id="XML_FROM_PARSER">XML_FROM_PARSER</a> = 1 : The XML parser
-    <a name="XML_FROM_TREE" id="XML_FROM_TREE">XML_FROM_TREE</a> = 2 : The tree module
-    <a name="XML_FROM_NAMESPACE" id="XML_FROM_NAMESPACE">XML_FROM_NAMESPACE</a> = 3 : The XML Namespace module
-    <a name="XML_FROM_DTD" id="XML_FROM_DTD">XML_FROM_DTD</a> = 4 : The XML DTD validation with parser contex
-    <a name="XML_FROM_HTML" id="XML_FROM_HTML">XML_FROM_HTML</a> = 5 : The HTML parser
-    <a name="XML_FROM_MEMORY" id="XML_FROM_MEMORY">XML_FROM_MEMORY</a> = 6 : The memory allocator
-    <a name="XML_FROM_OUTPUT" id="XML_FROM_OUTPUT">XML_FROM_OUTPUT</a> = 7 : The serialization code
-    <a name="XML_FROM_IO" id="XML_FROM_IO">XML_FROM_IO</a> = 8 : The Input/Output stack
-    <a name="XML_FROM_FTP" id="XML_FROM_FTP">XML_FROM_FTP</a> = 9 : The FTP module
-    <a name="XML_FROM_HTTP" id="XML_FROM_HTTP">XML_FROM_HTTP</a> = 10 : The FTP module
-    <a name="XML_FROM_XINCLUDE" id="XML_FROM_XINCLUDE">XML_FROM_XINCLUDE</a> = 11 : The XInclude processing
-    <a name="XML_FROM_XPATH" id="XML_FROM_XPATH">XML_FROM_XPATH</a> = 12 : The XPath module
-    <a name="XML_FROM_XPOINTER" id="XML_FROM_XPOINTER">XML_FROM_XPOINTER</a> = 13 : The XPointer module
-    <a name="XML_FROM_REGEXP" id="XML_FROM_REGEXP">XML_FROM_REGEXP</a> = 14 : The regular expressions module
-    <a name="XML_FROM_DATATYPE" id="XML_FROM_DATATYPE">XML_FROM_DATATYPE</a> = 15 : The W3C XML Schemas Datatype module
-    <a name="XML_FROM_SCHEMASP" id="XML_FROM_SCHEMASP">XML_FROM_SCHEMASP</a> = 16 : The W3C XML Schemas parser module
-    <a name="XML_FROM_SCHEMASV" id="XML_FROM_SCHEMASV">XML_FROM_SCHEMASV</a> = 17 : The W3C XML Schemas validation module
-    <a name="XML_FROM_RELAXNGP" id="XML_FROM_RELAXNGP">XML_FROM_RELAXNGP</a> = 18 : The Relax-NG parser module
-    <a name="XML_FROM_RELAXNGV" id="XML_FROM_RELAXNGV">XML_FROM_RELAXNGV</a> = 19 : The Relax-NG validator module
-    <a name="XML_FROM_CATALOG" id="XML_FROM_CATALOG">XML_FROM_CATALOG</a> = 20 : The Catalog module
-    <a name="XML_FROM_C14N" id="XML_FROM_C14N">XML_FROM_C14N</a> = 21 : The Canonicalization module
-    <a name="XML_FROM_XSLT" id="XML_FROM_XSLT">XML_FROM_XSLT</a> = 22 : The XSLT engine from libxslt
-    <a name="XML_FROM_VALID" id="XML_FROM_VALID">XML_FROM_VALID</a> = 23 : The XML DTD validation with valid context
-}
-
-</pre><pre class="programlisting"><a name="xmlStructuredErrorFunc" id="xmlStructuredErrorFunc"></a>Function type: xmlStructuredErrorFunc
-void	xmlStructuredErrorFunc	(void * userData, <br />				 <a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> error)
-</pre><p>Signature of the function to use when there is an error and the module handles the new error reporting mechanism.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>user provided data for the error callback</td></tr><tr><td><span class="term"><i><tt>error</tt></i>:</span></td><td>the error being raised.</td></tr></tbody></table></div><br />
-<pre class="programlisting">void	<a href="#xmlParserValidityError">xmlParserValidityError</a>	(void * ctx, <br />				 const char * msg, <br />				 ... ...)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParserValidityWarning">xmlParserValidityWarning</a>	(void * ctx, <br />				 const char * msg, <br />				 ... ...)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSetGenericErrorFunc">xmlSetGenericErrorFunc</a>	(void * ctx, <br />				 <a href="libxml-xmlerror.html#xmlGenericErrorFunc">xmlGenericErrorFunc</a> handler)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParserPrintFileContext">xmlParserPrintFileContext</a>	(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)<br />
-</pre><pre class="programlisting">Structure <a name="xmlError" id="xmlError">xmlError</a><br />struct _xmlError {
-    int	domain	: What part of the library raised this er
-    int	code	: The error code, e.g. an <a href="libxml-xmlerror.html#xmlParserError">xmlParserError</a>
-    char *	message	: human-readable informative error messag
-    <a href="libxml-xmlerror.html#xmlErrorLevel">xmlErrorLevel</a>	level	: how consequent is the error
-    char *	file	: the filename
-    int	line	: the line number if available
-    char *	str1	: extra string information
-    char *	str2	: extra string information
-    char *	str3	: extra string information
-    int	int1	: extra number information
-    int	int2	: extra number information
-    void *	ctxt	: the parser context if available
-    void *	node	: the node in the tree
-}</pre><br /><pre class="programlisting">void	<a href="#initGenericErrorDefaultFunc">initGenericErrorDefaultFunc</a>	(<a href="libxml-xmlerror.html#xmlGenericErrorFunc">xmlGenericErrorFunc</a> * handler)<br />
-</pre><pre class="programlisting">Enum <a name="xmlErrorLevel" id="xmlErrorLevel">xmlErrorLevel</a> {
+    </style><title>Module xmlerror from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlerror from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlautomata.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlautomata.html">xmlautomata</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlexports.html">xmlexports</a></th><td><a accesskey="n" href="libxml-xmlexports.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>the API used to report errors </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xmlError">xmlError</a><br />struct _xmlError
+</pre><pre class="programlisting">Enum <a href="#xmlErrorDomain">xmlErrorDomain</a>
+</pre><pre class="programlisting">Enum <a href="#xmlErrorLevel">xmlErrorLevel</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-xmlerror.html#xmlError">xmlError</a> * <a name="xmlErrorPtr" id="xmlErrorPtr">xmlErrorPtr</a>
+</pre><pre class="programlisting">Enum <a href="#xmlParserErrors">xmlParserErrors</a>
+</pre><pre class="programlisting">void	<a href="#initGenericErrorDefaultFunc">initGenericErrorDefaultFunc</a>	(<a href="libxml-xmlerror.html#xmlGenericErrorFunc">xmlGenericErrorFunc</a> * handler)</pre>
+<pre class="programlisting">int	<a href="#xmlCopyError">xmlCopyError</a>			(<a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> from, <br />					 <a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> to)</pre>
+<pre class="programlisting"><a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a>	<a href="#xmlCtxtGetLastError">xmlCtxtGetLastError</a>	(void * ctx)</pre>
+<pre class="programlisting">void	<a href="#xmlCtxtResetLastError">xmlCtxtResetLastError</a>		(void * ctx)</pre>
+<pre class="programlisting">Function type: <a href="#xmlGenericErrorFunc">xmlGenericErrorFunc</a>
+void	<a href="#xmlGenericErrorFunc">xmlGenericErrorFunc</a>		(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre>
+<pre class="programlisting"><a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a>	<a href="#xmlGetLastError">xmlGetLastError</a>		(void)</pre>
+<pre class="programlisting">void	<a href="#xmlParserError">xmlParserError</a>			(void * ctx, <br />					 const char * msg, <br />					 ... ...)</pre>
+<pre class="programlisting">void	<a href="#xmlParserPrintFileContext">xmlParserPrintFileContext</a>	(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)</pre>
+<pre class="programlisting">void	<a href="#xmlParserPrintFileInfo">xmlParserPrintFileInfo</a>		(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)</pre>
+<pre class="programlisting">void	<a href="#xmlParserValidityError">xmlParserValidityError</a>		(void * ctx, <br />					 const char * msg, <br />					 ... ...)</pre>
+<pre class="programlisting">void	<a href="#xmlParserValidityWarning">xmlParserValidityWarning</a>	(void * ctx, <br />					 const char * msg, <br />					 ... ...)</pre>
+<pre class="programlisting">void	<a href="#xmlParserWarning">xmlParserWarning</a>		(void * ctx, <br />					 const char * msg, <br />					 ... ...)</pre>
+<pre class="programlisting">void	<a href="#xmlResetError">xmlResetError</a>			(<a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> err)</pre>
+<pre class="programlisting">void	<a href="#xmlResetLastError">xmlResetLastError</a>		(void)</pre>
+<pre class="programlisting">void	<a href="#xmlSetGenericErrorFunc">xmlSetGenericErrorFunc</a>		(void * ctx, <br />					 <a href="libxml-xmlerror.html#xmlGenericErrorFunc">xmlGenericErrorFunc</a> handler)</pre>
+<pre class="programlisting">void	<a href="#xmlSetStructuredErrorFunc">xmlSetStructuredErrorFunc</a>	(void * ctx, <br />					 <a href="libxml-xmlerror.html#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a> handler)</pre>
+<pre class="programlisting">Function type: <a href="#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a>
+void	<a href="#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a>		(void * userData, <br />					 <a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> error)
+</pre>
+<h2>Description</h2>
+<h3><a name="xmlErrorLevel" id="xmlErrorLevel">xmlErrorLevel</a></h3><pre class="programlisting">Enum xmlErrorLevel {
     <a name="XML_ERR_NONE" id="XML_ERR_NONE">XML_ERR_NONE</a> = 0
     <a name="XML_ERR_WARNING" id="XML_ERR_WARNING">XML_ERR_WARNING</a> = 1 : A simple warning
     <a name="XML_ERR_ERROR" id="XML_ERR_ERROR">XML_ERR_ERROR</a> = 2 : A recoverable error
     <a name="XML_ERR_FATAL" id="XML_ERR_FATAL">XML_ERR_FATAL</a> = 3 : A fatal error
 }
-
-</pre><pre class="programlisting">void	<a href="#xmlParserPrintFileInfo">xmlParserPrintFileInfo</a>	(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)<br />
-</pre><pre class="programlisting">Enum <a name="xmlParserErrors" id="xmlParserErrors">xmlParserErrors</a> {
+</pre><h3><a name="xmlParserErrors" id="xmlParserErrors">xmlParserErrors</a></h3><pre class="programlisting">Enum xmlParserErrors {
     <a name="XML_ERR_OK" id="XML_ERR_OK">XML_ERR_OK</a> = 0
     <a name="XML_ERR_INTERNAL_ERROR" id="XML_ERR_INTERNAL_ERROR">XML_ERR_INTERNAL_ERROR</a> = 1 : 1
     <a name="XML_ERR_NO_MEMORY" id="XML_ERR_NO_MEMORY">XML_ERR_NO_MEMORY</a> = 2 : 2
@@ -552,74 +527,80 @@
     <a name="XML_HTTP_USE_IP" id="XML_HTTP_USE_IP">XML_HTTP_USE_IP</a> = 2021 : 2021
     <a name="XML_HTTP_UNKNOWN_HOST" id="XML_HTTP_UNKNOWN_HOST">XML_HTTP_UNKNOWN_HOST</a> = 2022 : 2022
 }
-
-</pre><pre class="programlisting"><a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a>	<a href="#xmlGetLastError">xmlGetLastError</a>	(void)<br />
-</pre><pre class="programlisting">void	<a href="#xmlParserError">xmlParserError</a>	(void * ctx, <br />				 const char * msg, <br />				 ... ...)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSetStructuredErrorFunc">xmlSetStructuredErrorFunc</a>	(void * ctx, <br />				 <a href="libxml-xmlerror.html#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a> handler)<br />
-</pre><pre class="programlisting">void	<a href="#xmlResetError">xmlResetError</a>	(<a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> err)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-xmlerror.html#xmlError">xmlError</a> * <a name="xmlErrorPtr" id="xmlErrorPtr">xmlErrorPtr</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlResetLastError">xmlResetLastError</a>	(void)<br />
-</pre><pre class="programlisting">void	<a href="#xmlCtxtResetLastError">xmlCtxtResetLastError</a>	(void * ctx)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a>	<a href="#xmlCtxtGetLastError">xmlCtxtGetLastError</a>	(void * ctx)<br />
-</pre><pre class="programlisting">int	<a href="#xmlCopyError">xmlCopyError</a>	(<a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> from, <br />				 <a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> to)<br />
-</pre><pre class="programlisting"><a name="xmlGenericErrorFunc" id="xmlGenericErrorFunc"></a>Function type: xmlGenericErrorFunc
-void	xmlGenericErrorFunc	(void * ctx, <br />				 const char * msg, <br />				 ... ...)
-</pre><p>Signature of the function to use when there is an error and no parsing or validity context available .</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>a parsing context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>the extra arguments of the varags to format the message</td></tr></tbody></table></div><br />
-<h2>Description</h2>
-<h3><a name="xmlParserWarning" id="xmlParserWarning"></a>Function: xmlParserWarning</h3><pre class="programlisting">void	xmlParserWarning	(void * ctx, <br />				 const char * msg, <br />				 ... ...)<br />
-</pre><p>Display and format a warning messages, gives file, line, position and extra parameters.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div>
-      Signature of the function to use when there is an error and the module handles the new error reporting mechanism.
-      
-      
-      
-    <h3><a name="xmlParserValidityError" id="xmlParserValidityError"></a>Function: xmlParserValidityError</h3><pre class="programlisting">void	xmlParserValidityError	(void * ctx, <br />				 const char * msg, <br />				 ... ...)<br />
+</pre><h3><a name="xmlErrorDomain" id="xmlErrorDomain">xmlErrorDomain</a></h3><pre class="programlisting">Enum xmlErrorDomain {
+    <a name="XML_FROM_NONE" id="XML_FROM_NONE">XML_FROM_NONE</a> = 0
+    <a name="XML_FROM_PARSER" id="XML_FROM_PARSER">XML_FROM_PARSER</a> = 1 : The XML parser
+    <a name="XML_FROM_TREE" id="XML_FROM_TREE">XML_FROM_TREE</a> = 2 : The tree module
+    <a name="XML_FROM_NAMESPACE" id="XML_FROM_NAMESPACE">XML_FROM_NAMESPACE</a> = 3 : The XML Namespace module
+    <a name="XML_FROM_DTD" id="XML_FROM_DTD">XML_FROM_DTD</a> = 4 : The XML DTD validation with parser contex
+    <a name="XML_FROM_HTML" id="XML_FROM_HTML">XML_FROM_HTML</a> = 5 : The HTML parser
+    <a name="XML_FROM_MEMORY" id="XML_FROM_MEMORY">XML_FROM_MEMORY</a> = 6 : The memory allocator
+    <a name="XML_FROM_OUTPUT" id="XML_FROM_OUTPUT">XML_FROM_OUTPUT</a> = 7 : The serialization code
+    <a name="XML_FROM_IO" id="XML_FROM_IO">XML_FROM_IO</a> = 8 : The Input/Output stack
+    <a name="XML_FROM_FTP" id="XML_FROM_FTP">XML_FROM_FTP</a> = 9 : The FTP module
+    <a name="XML_FROM_HTTP" id="XML_FROM_HTTP">XML_FROM_HTTP</a> = 10 : The FTP module
+    <a name="XML_FROM_XINCLUDE" id="XML_FROM_XINCLUDE">XML_FROM_XINCLUDE</a> = 11 : The XInclude processing
+    <a name="XML_FROM_XPATH" id="XML_FROM_XPATH">XML_FROM_XPATH</a> = 12 : The XPath module
+    <a name="XML_FROM_XPOINTER" id="XML_FROM_XPOINTER">XML_FROM_XPOINTER</a> = 13 : The XPointer module
+    <a name="XML_FROM_REGEXP" id="XML_FROM_REGEXP">XML_FROM_REGEXP</a> = 14 : The regular expressions module
+    <a name="XML_FROM_DATATYPE" id="XML_FROM_DATATYPE">XML_FROM_DATATYPE</a> = 15 : The W3C XML Schemas Datatype module
+    <a name="XML_FROM_SCHEMASP" id="XML_FROM_SCHEMASP">XML_FROM_SCHEMASP</a> = 16 : The W3C XML Schemas parser module
+    <a name="XML_FROM_SCHEMASV" id="XML_FROM_SCHEMASV">XML_FROM_SCHEMASV</a> = 17 : The W3C XML Schemas validation module
+    <a name="XML_FROM_RELAXNGP" id="XML_FROM_RELAXNGP">XML_FROM_RELAXNGP</a> = 18 : The Relax-NG parser module
+    <a name="XML_FROM_RELAXNGV" id="XML_FROM_RELAXNGV">XML_FROM_RELAXNGV</a> = 19 : The Relax-NG validator module
+    <a name="XML_FROM_CATALOG" id="XML_FROM_CATALOG">XML_FROM_CATALOG</a> = 20 : The Catalog module
+    <a name="XML_FROM_C14N" id="XML_FROM_C14N">XML_FROM_C14N</a> = 21 : The Canonicalization module
+    <a name="XML_FROM_XSLT" id="XML_FROM_XSLT">XML_FROM_XSLT</a> = 22 : The XSLT engine from libxslt
+    <a name="XML_FROM_VALID" id="XML_FROM_VALID">XML_FROM_VALID</a> = 23 : The XML DTD validation with valid context
+}
+</pre><h3><a name="xmlError" id="xmlError">Structure xmlError</a></h3><pre class="programlisting">Structure xmlError<br />struct _xmlError {
+    int	domain	: What part of the library raised this er
+    int	code	: The error code, e.g. an <a href="libxml-xmlerror.html#xmlParserError">xmlParserError</a>
+    char *	message	: human-readable informative error messag
+    <a href="libxml-xmlerror.html#xmlErrorLevel">xmlErrorLevel</a>	level	: how consequent is the error
+    char *	file	: the filename
+    int	line	: the line number if available
+    char *	str1	: extra string information
+    char *	str2	: extra string information
+    char *	str3	: extra string information
+    int	int1	: extra number information
+    int	int2	: extra number information
+    void *	ctxt	: the parser context if available
+    void *	node	: the node in the tree
+}</pre><h3><a name="xmlParserValidityError" id="xmlParserValidityError"></a>Function: xmlParserValidityError</h3><pre class="programlisting">void	xmlParserValidityError		(void * ctx, <br />					 const char * msg, <br />					 ... ...)<br />
 </pre><p>Display and format an validity error messages, gives file, line, position and extra parameters.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div><h3><a name="xmlParserValidityWarning" id="xmlParserValidityWarning"></a>Function: xmlParserValidityWarning</h3><pre class="programlisting">void	xmlParserValidityWarning	(void * ctx, <br />				 const char * msg, <br />				 ... ...)<br />
-</pre><p>Display and format a validity warning messages, gives file, line, position and extra parameters.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div><h3><a name="xmlSetGenericErrorFunc" id="xmlSetGenericErrorFunc"></a>Function: xmlSetGenericErrorFunc</h3><pre class="programlisting">void	xmlSetGenericErrorFunc	(void * ctx, <br />				 <a href="libxml-xmlerror.html#xmlGenericErrorFunc">xmlGenericErrorFunc</a> handler)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div><h3><a name="xmlGenericErrorFunc" id="xmlGenericErrorFunc"></a>Function type: xmlGenericErrorFunc</h3><pre class="programlisting">Function type: xmlGenericErrorFunc
+void	xmlGenericErrorFunc		(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre><p>Signature of the function to use when there is an error and no parsing or validity context available .</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>a parsing context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>the extra arguments of the varags to format the message</td></tr></tbody></table></div><br />
+<h3><a name="xmlSetGenericErrorFunc" id="xmlSetGenericErrorFunc"></a>Function: xmlSetGenericErrorFunc</h3><pre class="programlisting">void	xmlSetGenericErrorFunc		(void * ctx, <br />					 <a href="libxml-xmlerror.html#xmlGenericErrorFunc">xmlGenericErrorFunc</a> handler)<br />
 </pre><p>Function to reset the handler and the error context for out of context error messages. This simply means that @handler will be called for subsequent error messages while not parsing nor validating. And @ctx will be passed as first argument to @handler One can simply force messages to be emitted to another FILE * than stderr by setting @ctx to this file handle and @handler to NULL.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the new error handling context</td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the new handler function</td></tr></tbody></table></div><h3><a name="xmlParserPrintFileContext" id="xmlParserPrintFileContext"></a>Function: xmlParserPrintFileContext</h3><pre class="programlisting">void	xmlParserPrintFileContext	(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)<br />
-</pre><p>Displays current context within the input content for error tracking</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="initGenericErrorDefaultFunc" id="initGenericErrorDefaultFunc"></a>Function: initGenericErrorDefaultFunc</h3><pre class="programlisting">void	initGenericErrorDefaultFunc	(<a href="libxml-xmlerror.html#xmlGenericErrorFunc">xmlGenericErrorFunc</a> * handler)<br />
-</pre><p>Set or reset (if NULL) the default handler for generic errors to the builtin error function.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the handler</td></tr></tbody></table></div><h3><a name="xmlParserPrintFileInfo" id="xmlParserPrintFileInfo"></a>Function: xmlParserPrintFileInfo</h3><pre class="programlisting">void	xmlParserPrintFileInfo	(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the new error handling context</td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the new handler function</td></tr></tbody></table></div><h3><a name="xmlParserPrintFileInfo" id="xmlParserPrintFileInfo"></a>Function: xmlParserPrintFileInfo</h3><pre class="programlisting">void	xmlParserPrintFileInfo		(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)<br />
 </pre><p>Displays the associated file and line informations for the current input</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input</td></tr></tbody></table></div><h3><a name="xmlGetLastError" id="xmlGetLastError"></a>Function: xmlGetLastError</h3><pre class="programlisting"><a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a>	xmlGetLastError	(void)<br />
-</pre><p>Get the last global error registered. This is per thread if compiled with thread support.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if no error occured or a pointer to the error</td></tr></tbody></table></div><h3><a name="xmlParserError" id="xmlParserError"></a>Function: xmlParserError</h3><pre class="programlisting">void	xmlParserError	(void * ctx, <br />				 const char * msg, <br />				 ... ...)<br />
-</pre><p>Display and format an error messages, gives file, line, position and extra parameters.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div><h3><a name="xmlSetStructuredErrorFunc" id="xmlSetStructuredErrorFunc"></a>Function: xmlSetStructuredErrorFunc</h3><pre class="programlisting">void	xmlSetStructuredErrorFunc	(void * ctx, <br />				 <a href="libxml-xmlerror.html#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a> handler)<br />
-</pre><p>Function to reset the handler and the error context for out of context structured error messages. This simply means that @handler will be called for subsequent error messages while not parsing nor validating. And @ctx will be passed as first argument to @handler</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the new error handling context</td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the new handler function</td></tr></tbody></table></div><h3><a name="xmlResetError" id="xmlResetError"></a>Function: xmlResetError</h3><pre class="programlisting">void	xmlResetError	(<a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> err)<br />
-</pre><p>Cleanup the error.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>err</tt></i>:</span></td><td>pointer to the error.</td></tr></tbody></table></div><h3><a name="xmlResetLastError" id="xmlResetLastError"></a>Function: xmlResetLastError</h3><pre class="programlisting">void	xmlResetLastError	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input</td></tr></tbody></table></div><h3><a name="xmlCtxtResetLastError" id="xmlCtxtResetLastError"></a>Function: xmlCtxtResetLastError</h3><pre class="programlisting">void	xmlCtxtResetLastError		(void * ctx)<br />
 </pre><p>Cleanup the last global error registered. For parsing error this does not change the well-formedness result.</p>
-<h3><a name="xmlCtxtResetLastError" id="xmlCtxtResetLastError"></a>Function: xmlCtxtResetLastError</h3><pre class="programlisting">void	xmlCtxtResetLastError	(void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlResetLastError" id="xmlResetLastError"></a>Function: xmlResetLastError</h3><pre class="programlisting">void	xmlResetLastError		(void)<br />
 </pre><p>Cleanup the last global error registered. For parsing error this does not change the well-formedness result.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr></tbody></table></div><h3><a name="xmlCtxtGetLastError" id="xmlCtxtGetLastError"></a>Function: xmlCtxtGetLastError</h3><pre class="programlisting"><a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a>	xmlCtxtGetLastError	(void * ctx)<br />
-</pre><p>Get the last parsing error registered.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if no error occured or a pointer to the error</td></tr></tbody></table></div><h3><a name="xmlCopyError" id="xmlCopyError"></a>Function: xmlCopyError</h3><pre class="programlisting">int	xmlCopyError	(<a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> from, <br />				 <a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> to)<br />
+<h3><a name="initGenericErrorDefaultFunc" id="initGenericErrorDefaultFunc"></a>Function: initGenericErrorDefaultFunc</h3><pre class="programlisting">void	initGenericErrorDefaultFunc	(<a href="libxml-xmlerror.html#xmlGenericErrorFunc">xmlGenericErrorFunc</a> * handler)<br />
+</pre><p>Set or reset (if NULL) the default handler for generic errors to the builtin error function.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the handler</td></tr></tbody></table></div><h3><a name="xmlCopyError" id="xmlCopyError"></a>Function: xmlCopyError</h3><pre class="programlisting">int	xmlCopyError			(<a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> from, <br />					 <a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> to)<br />
 </pre><p>Save the original error to the new place.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>a source error</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>a target error</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error.</td></tr></tbody></table></div>
-      Signature of the function to use when there is an error and no parsing or validity context available .
-      
-      
-      
-      
-    <p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>a source error</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>a target error</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlParserValidityWarning" id="xmlParserValidityWarning"></a>Function: xmlParserValidityWarning</h3><pre class="programlisting">void	xmlParserValidityWarning	(void * ctx, <br />					 const char * msg, <br />					 ... ...)<br />
+</pre><p>Display and format a validity warning messages, gives file, line, position and extra parameters.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div><h3><a name="xmlParserPrintFileContext" id="xmlParserPrintFileContext"></a>Function: xmlParserPrintFileContext</h3><pre class="programlisting">void	xmlParserPrintFileContext	(<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input)<br />
+</pre><p>Displays current context within the input content for error tracking</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input</td></tr></tbody></table></div><h3><a name="xmlGetLastError" id="xmlGetLastError"></a>Function: xmlGetLastError</h3><pre class="programlisting"><a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a>	xmlGetLastError		(void)<br />
+</pre><p>Get the last global error registered. This is per thread if compiled with thread support.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if no error occured or a pointer to the error</td></tr></tbody></table></div><h3><a name="xmlParserWarning" id="xmlParserWarning"></a>Function: xmlParserWarning</h3><pre class="programlisting">void	xmlParserWarning		(void * ctx, <br />					 const char * msg, <br />					 ... ...)<br />
+</pre><p>Display and format a warning messages, gives file, line, position and extra parameters.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div><h3><a name="xmlStructuredErrorFunc" id="xmlStructuredErrorFunc"></a>Function type: xmlStructuredErrorFunc</h3><pre class="programlisting">Function type: xmlStructuredErrorFunc
+void	xmlStructuredErrorFunc		(void * userData, <br />					 <a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> error)
+</pre><p>Signature of the function to use when there is an error and the module handles the new error reporting mechanism.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>userData</tt></i>:</span></td><td>user provided data for the error callback</td></tr><tr><td><span class="term"><i><tt>error</tt></i>:</span></td><td>the error being raised.</td></tr></tbody></table></div><br />
+<h3><a name="xmlSetStructuredErrorFunc" id="xmlSetStructuredErrorFunc"></a>Function: xmlSetStructuredErrorFunc</h3><pre class="programlisting">void	xmlSetStructuredErrorFunc	(void * ctx, <br />					 <a href="libxml-xmlerror.html#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a> handler)<br />
+</pre><p>Function to reset the handler and the error context for out of context structured error messages. This simply means that @handler will be called for subsequent error messages while not parsing nor validating. And @ctx will be passed as first argument to @handler</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the new error handling context</td></tr><tr><td><span class="term"><i><tt>handler</tt></i>:</span></td><td>the new handler function</td></tr></tbody></table></div><h3><a name="xmlResetError" id="xmlResetError"></a>Function: xmlResetError</h3><pre class="programlisting">void	xmlResetError			(<a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a> err)<br />
+</pre><p>Cleanup the error.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>err</tt></i>:</span></td><td>pointer to the error.</td></tr></tbody></table></div><h3><a name="xmlParserError" id="xmlParserError"></a>Function: xmlParserError</h3><pre class="programlisting">void	xmlParserError			(void * ctx, <br />					 const char * msg, <br />					 ... ...)<br />
+</pre><p>Display and format an error messages, gives file, line, position and extra parameters.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the message to display/transmit</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>extra parameters for the message display</td></tr></tbody></table></div><h3><a name="xmlCtxtGetLastError" id="xmlCtxtGetLastError"></a>Function: xmlCtxtGetLastError</h3><pre class="programlisting"><a href="libxml-xmlerror.html#xmlErrorPtr">xmlErrorPtr</a>	xmlCtxtGetLastError	(void * ctx)<br />
+</pre><p>Get the last parsing error registered.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>an XML parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if no error occured or a pointer to the error</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-xmlexports.html b/doc/html/libxml-xmlexports.html
index f957659..6d5616e 100644
--- a/doc/html/libxml-xmlexports.html
+++ b/doc/html/libxml-xmlexports.html
@@ -10,17 +10,7 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xmlexports from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlexports from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlerror.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlerror.html">xmlerror</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlmemory.html">xmlmemory</a></th><td><a accesskey="n" href="libxml-xmlmemory.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>macros for marking symbols as exportable/importable. </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#XMLCALL">XMLCALL</a>
-
-</pre><pre class="programlisting">#define <a href="#_REENTRANT">_REENTRANT</a>
-
-</pre><pre class="programlisting">#define <a href="#XMLPUBFUN">XMLPUBFUN</a>
-
-</pre><pre class="programlisting">#define <a href="#XMLPUBVAR">XMLPUBVAR</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_DLL_IMPORT">LIBXML_DLL_IMPORT</a>
-
-</pre><h2>Description</h2>
+    </style><title>Module xmlexports from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlexports from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlerror.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlerror.html">xmlerror</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlmemory.html">xmlmemory</a></th><td><a accesskey="n" href="libxml-xmlmemory.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>macros for marking symbols as exportable/importable. </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#LIBXML_DLL_IMPORT">LIBXML_DLL_IMPORT</a></pre><pre class="programlisting">#define <a href="#XMLCALL">XMLCALL</a></pre><pre class="programlisting">#define <a href="#XMLPUBFUN">XMLPUBFUN</a></pre><pre class="programlisting">#define <a href="#XMLPUBVAR">XMLPUBVAR</a></pre><pre class="programlisting">#define <a href="#_REENTRANT">_REENTRANT</a></pre><h2>Description</h2>
 <h3><a name="XMLCALL" id="XMLCALL"></a>Macro: XMLCALL</h3><pre>#define XMLCALL</pre><p>Macros which declare the called convention for exported functions Windows platform with MS compiler Windows platform with Borland compiler Windows platform with GNU compiler (Mingw) Cygwin platform, GNU compiler</p>
 <h3><a name="_REENTRANT" id="_REENTRANT"></a>Macro: _REENTRANT</h3><pre>#define _REENTRANT</pre><p></p>
 <h3><a name="XMLPUBFUN" id="XMLPUBFUN"></a>Macro: XMLPUBFUN</h3><pre>#define XMLPUBFUN</pre><p></p>
diff --git a/doc/html/libxml-xmlmemory.html b/doc/html/libxml-xmlmemory.html
index 5370ac5..e9a73e5 100644
--- a/doc/html/libxml-xmlmemory.html
+++ b/doc/html/libxml-xmlmemory.html
@@ -10,96 +10,89 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xmlmemory from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlmemory from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlexports.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlexports.html">xmlexports</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlreader.html">xmlreader</a></th><td><a accesskey="n" href="libxml-xmlreader.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>provides interfaces for the memory allocator, including debugging capabilities. </p><h2>Table of Contents</h2><pre class="programlisting">void *	<a href="#xmlMemRealloc">xmlMemRealloc</a>	(void * ptr, <br />				 size_t size)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlReallocLoc">xmlReallocLoc</a>	(void * ptr, <br />				 size_t size, <br />				 const char * file, <br />				 int line)<br />
-</pre><pre class="programlisting">int	<a href="#xmlGcMemGet">xmlGcMemGet</a>	(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> * freeFunc, <br />				 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> * mallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> * mallocAtomicFunc, <br />				 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> * reallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> * strdupFunc)<br />
-</pre><pre class="programlisting"><a name="xmlStrdupFunc" id="xmlStrdupFunc"></a>Function type: xmlStrdupFunc
-char *	xmlStrdupFunc	(const char * str)
-</pre><p>Signature for an strdup() implementation.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>a zero terminated string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the copy of the string or NULL in case of error.</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a name="xmlFreeFunc" id="xmlFreeFunc"></a>Function type: xmlFreeFunc
-void	xmlFreeFunc	(void * mem)
-</pre><p>Signature for a free() implementation.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>an already allocated block of memory</td></tr></tbody></table></div><br />
-<pre class="programlisting">int	<a href="#xmlInitMemory">xmlInitMemory</a>	(void)<br />
+    </style><title>Module xmlmemory from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlmemory from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlexports.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlexports.html">xmlexports</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlreader.html">xmlreader</a></th><td><a accesskey="n" href="libxml-xmlreader.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>provides interfaces for the memory allocator, including debugging capabilities. </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#DEBUG_MEMORY">DEBUG_MEMORY</a></pre><pre class="programlisting">Variable <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> <a name="xmlMalloc" id="xmlMalloc"></a>xmlMalloc
+
+</pre><pre class="programlisting">Variable <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> <a name="xmlMallocAtomic" id="xmlMallocAtomic"></a>xmlMallocAtomic
+
 </pre><pre class="programlisting">Variable <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> <a name="xmlMemStrdup" id="xmlMemStrdup"></a>xmlMemStrdup
 
 </pre><pre class="programlisting">Variable <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> <a name="xmlRealloc" id="xmlRealloc"></a>xmlRealloc
 
-</pre><pre class="programlisting">void	<a href="#xmlMemFree">xmlMemFree</a>	(void * ptr)<br />
-</pre><pre class="programlisting">int	<a href="#xmlMemGet">xmlMemGet</a>	(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> * freeFunc, <br />				 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> * mallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> * reallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> * strdupFunc)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlMallocAtomicLoc">xmlMallocAtomicLoc</a>	(size_t size, <br />				 const char * file, <br />				 int line)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlMemMalloc">xmlMemMalloc</a>	(size_t size)<br />
-</pre><pre class="programlisting">void	<a href="#xmlMemDisplay">xmlMemDisplay</a>	(FILE * fp)<br />
-</pre><pre class="programlisting">int	<a href="#xmlMemUsed">xmlMemUsed</a>	(void)<br />
-</pre><pre class="programlisting">int	<a href="#xmlMemSetup">xmlMemSetup</a>	(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> freeFunc, <br />				 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> mallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> reallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> strdupFunc)<br />
-</pre><pre class="programlisting">Variable <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> <a name="xmlMallocAtomic" id="xmlMallocAtomic"></a>xmlMallocAtomic
-
-</pre><pre class="programlisting">void	<a href="#xmlMemoryDump">xmlMemoryDump</a>	(void)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlMallocLoc">xmlMallocLoc</a>	(size_t size, <br />				 const char * file, <br />				 int line)<br />
-</pre><pre class="programlisting">void	<a href="#xmlMemShow">xmlMemShow</a>	(FILE * fp, <br />				 int nr)<br />
-</pre><pre class="programlisting"><a name="xmlReallocFunc" id="xmlReallocFunc"></a>Function type: xmlReallocFunc
-void *	xmlReallocFunc	(void * mem, <br />				 size_t size)
-</pre><p>Signature for a realloc() implementation.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>an already allocated block of memory</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the new size requested in bytes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the newly reallocated block or NULL in case of error.</td></tr></tbody></table></div><br />
-<pre class="programlisting">Variable <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> <a name="xmlMalloc" id="xmlMalloc"></a>xmlMalloc
-
-</pre><pre class="programlisting"><a name="xmlMallocFunc" id="xmlMallocFunc"></a>Function type: xmlMallocFunc
-void *	xmlMallocFunc	(size_t size)
-</pre><p>Signature for a malloc() implementation.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size requested in bytes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the newly allocated block or NULL in case of error.</td></tr></tbody></table></div><br />
-<pre class="programlisting">#define <a href="#DEBUG_MEMORY">DEBUG_MEMORY</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlGcMemSetup">xmlGcMemSetup</a>	(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> freeFunc, <br />				 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> mallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> mallocAtomicFunc, <br />				 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> reallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> strdupFunc)<br />
-</pre><pre class="programlisting">char *	<a href="#xmlMemoryStrdup">xmlMemoryStrdup</a>	(const char * str)<br />
-</pre><pre class="programlisting">char *	<a href="#xmlMemStrdupLoc">xmlMemStrdupLoc</a>	(const char * str, <br />				 const char * file, <br />				 int line)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlMemRealloc" id="xmlMemRealloc"></a>Function: xmlMemRealloc</h3><pre class="programlisting">void *	xmlMemRealloc	(void * ptr, <br />				 size_t size)<br />
+</pre><pre class="programlisting">Function type: <a href="#xmlFreeFunc">xmlFreeFunc</a>
+void	<a href="#xmlFreeFunc">xmlFreeFunc</a>			(void * mem)
+</pre>
+<pre class="programlisting">int	<a href="#xmlGcMemGet">xmlGcMemGet</a>			(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> * freeFunc, <br />					 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> * mallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> * mallocAtomicFunc, <br />					 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> * reallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> * strdupFunc)</pre>
+<pre class="programlisting">int	<a href="#xmlGcMemSetup">xmlGcMemSetup</a>			(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> freeFunc, <br />					 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> mallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> mallocAtomicFunc, <br />					 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> reallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> strdupFunc)</pre>
+<pre class="programlisting">int	<a href="#xmlInitMemory">xmlInitMemory</a>			(void)</pre>
+<pre class="programlisting">void *	<a href="#xmlMallocAtomicLoc">xmlMallocAtomicLoc</a>		(size_t size, <br />					 const char * file, <br />					 int line)</pre>
+<pre class="programlisting">Function type: <a href="#xmlMallocFunc">xmlMallocFunc</a>
+void *	<a href="#xmlMallocFunc">xmlMallocFunc</a>			(size_t size)
+</pre>
+<pre class="programlisting">void *	<a href="#xmlMallocLoc">xmlMallocLoc</a>			(size_t size, <br />					 const char * file, <br />					 int line)</pre>
+<pre class="programlisting">void	<a href="#xmlMemDisplay">xmlMemDisplay</a>			(FILE * fp)</pre>
+<pre class="programlisting">void	<a href="#xmlMemFree">xmlMemFree</a>			(void * ptr)</pre>
+<pre class="programlisting">int	<a href="#xmlMemGet">xmlMemGet</a>			(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> * freeFunc, <br />					 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> * mallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> * reallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> * strdupFunc)</pre>
+<pre class="programlisting">void *	<a href="#xmlMemMalloc">xmlMemMalloc</a>			(size_t size)</pre>
+<pre class="programlisting">void *	<a href="#xmlMemRealloc">xmlMemRealloc</a>			(void * ptr, <br />					 size_t size)</pre>
+<pre class="programlisting">int	<a href="#xmlMemSetup">xmlMemSetup</a>			(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> freeFunc, <br />					 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> mallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> reallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> strdupFunc)</pre>
+<pre class="programlisting">void	<a href="#xmlMemShow">xmlMemShow</a>			(FILE * fp, <br />					 int nr)</pre>
+<pre class="programlisting">char *	<a href="#xmlMemStrdupLoc">xmlMemStrdupLoc</a>			(const char * str, <br />					 const char * file, <br />					 int line)</pre>
+<pre class="programlisting">int	<a href="#xmlMemUsed">xmlMemUsed</a>			(void)</pre>
+<pre class="programlisting">void	<a href="#xmlMemoryDump">xmlMemoryDump</a>			(void)</pre>
+<pre class="programlisting">char *	<a href="#xmlMemoryStrdup">xmlMemoryStrdup</a>			(const char * str)</pre>
+<pre class="programlisting">Function type: <a href="#xmlReallocFunc">xmlReallocFunc</a>
+void *	<a href="#xmlReallocFunc">xmlReallocFunc</a>			(void * mem, <br />					 size_t size)
+</pre>
+<pre class="programlisting">void *	<a href="#xmlReallocLoc">xmlReallocLoc</a>			(void * ptr, <br />					 size_t size, <br />					 const char * file, <br />					 int line)</pre>
+<pre class="programlisting">Function type: <a href="#xmlStrdupFunc">xmlStrdupFunc</a>
+char *	<a href="#xmlStrdupFunc">xmlStrdupFunc</a>			(const char * str)
+</pre>
+<h2>Description</h2>
+<h3><a name="DEBUG_MEMORY" id="DEBUG_MEMORY"></a>Macro: DEBUG_MEMORY</h3><pre>#define DEBUG_MEMORY</pre><p><a href="libxml-xmlmemory.html#DEBUG_MEMORY">DEBUG_MEMORY</a> replaces the allocator with a collect and debug shell to the libc allocator. <a href="libxml-xmlmemory.html#DEBUG_MEMORY">DEBUG_MEMORY</a> should only be activated when debugging libxml i.e. if libxml has been configured with --with-debug-mem too. #define DEBUG_MEMORY_FREED #define <a href="libxml-xmlversion.html#DEBUG_MEMORY_LOCATION">DEBUG_MEMORY_LOCATION</a></p>
+<h3><a name="xmlReallocLoc" id="xmlReallocLoc"></a>Function: xmlReallocLoc</h3><pre class="programlisting">void *	xmlReallocLoc			(void * ptr, <br />					 size_t size, <br />					 const char * file, <br />					 int line)<br />
 </pre><p>a realloc() equivalent, with logging of the allocation info.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ptr</tt></i>:</span></td><td>the initial memory block pointer</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>an int specifying the size in byte to allocate.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the allocated area or NULL in case of lack of memory.</td></tr></tbody></table></div><h3><a name="xmlReallocLoc" id="xmlReallocLoc"></a>Function: xmlReallocLoc</h3><pre class="programlisting">void *	xmlReallocLoc	(void * ptr, <br />				 size_t size, <br />				 const char * file, <br />				 int line)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ptr</tt></i>:</span></td><td>the initial memory block pointer</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>an int specifying the size in byte to allocate.</td></tr><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>the file name or NULL</td></tr><tr><td><span class="term"><i><tt>line</tt></i>:</span></td><td>the line number</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the allocated area or NULL in case of lack of memory.</td></tr></tbody></table></div><h3><a name="xmlMemRealloc" id="xmlMemRealloc"></a>Function: xmlMemRealloc</h3><pre class="programlisting">void *	xmlMemRealloc			(void * ptr, <br />					 size_t size)<br />
 </pre><p>a realloc() equivalent, with logging of the allocation info.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ptr</tt></i>:</span></td><td>the initial memory block pointer</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>an int specifying the size in byte to allocate.</td></tr><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>the file name or NULL</td></tr><tr><td><span class="term"><i><tt>line</tt></i>:</span></td><td>the line number</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the allocated area or NULL in case of lack of memory.</td></tr></tbody></table></div><h3><a name="xmlGcMemGet" id="xmlGcMemGet"></a>Function: xmlGcMemGet</h3><pre class="programlisting">int	xmlGcMemGet	(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> * freeFunc, <br />				 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> * mallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> * mallocAtomicFunc, <br />				 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> * reallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> * strdupFunc)<br />
-</pre><p>Provides the memory access functions set currently in use The mallocAtomicFunc is specialized for atomic block allocations (i.e. of areas useful for garbage collected memory allocators</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>freeFunc</tt></i>:</span></td><td>place to save the free() function in use</td></tr><tr><td><span class="term"><i><tt>mallocFunc</tt></i>:</span></td><td>place to save the malloc() function in use</td></tr><tr><td><span class="term"><i><tt>mallocAtomicFunc</tt></i>:</span></td><td>place to save the atomic malloc() function in use</td></tr><tr><td><span class="term"><i><tt>reallocFunc</tt></i>:</span></td><td>place to save the realloc() function in use</td></tr><tr><td><span class="term"><i><tt>strdupFunc</tt></i>:</span></td><td>place to save the strdup() function in use</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 on success</td></tr></tbody></table></div>
-      Signature for an strdup() implementation.
-      
-      
-    
-      Signature for a free() implementation.
-      
-      
-    <h3><a name="xmlInitMemory" id="xmlInitMemory"></a>Function: xmlInitMemory</h3><pre class="programlisting">int	xmlInitMemory	(void)<br />
-</pre><p>Initialize the memory layer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 on success</td></tr></tbody></table></div><h3><a name="xmlMemFree" id="xmlMemFree"></a>Function: xmlMemFree</h3><pre class="programlisting">void	xmlMemFree	(void * ptr)<br />
-</pre><p>a free() equivalent, with error checking.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ptr</tt></i>:</span></td><td>the memory block pointer</td></tr></tbody></table></div><h3><a name="xmlMemGet" id="xmlMemGet"></a>Function: xmlMemGet</h3><pre class="programlisting">int	xmlMemGet	(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> * freeFunc, <br />				 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> * mallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> * reallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> * strdupFunc)<br />
-</pre><p>Provides the memory access functions set currently in use</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>freeFunc</tt></i>:</span></td><td>place to save the free() function in use</td></tr><tr><td><span class="term"><i><tt>mallocFunc</tt></i>:</span></td><td>place to save the malloc() function in use</td></tr><tr><td><span class="term"><i><tt>reallocFunc</tt></i>:</span></td><td>place to save the realloc() function in use</td></tr><tr><td><span class="term"><i><tt>strdupFunc</tt></i>:</span></td><td>place to save the strdup() function in use</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 on success</td></tr></tbody></table></div><h3><a name="xmlMallocAtomicLoc" id="xmlMallocAtomicLoc"></a>Function: xmlMallocAtomicLoc</h3><pre class="programlisting">void *	xmlMallocAtomicLoc	(size_t size, <br />				 const char * file, <br />				 int line)<br />
-</pre><p>a malloc() equivalent, with logging of the allocation info.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>an int specifying the size in byte to allocate.</td></tr><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>the file name or NULL</td></tr><tr><td><span class="term"><i><tt>line</tt></i>:</span></td><td>the line number</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the allocated area or NULL in case of lack of memory.</td></tr></tbody></table></div><h3><a name="xmlMemMalloc" id="xmlMemMalloc"></a>Function: xmlMemMalloc</h3><pre class="programlisting">void *	xmlMemMalloc	(size_t size)<br />
-</pre><p>a malloc() equivalent, with logging of the allocation info.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>an int specifying the size in byte to allocate.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the allocated area or NULL in case of lack of memory.</td></tr></tbody></table></div><h3><a name="xmlMemDisplay" id="xmlMemDisplay"></a>Function: xmlMemDisplay</h3><pre class="programlisting">void	xmlMemDisplay	(FILE * fp)<br />
-</pre><p>show in-extenso the memory blocks allocated</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>fp</tt></i>:</span></td><td>a FILE descriptor used as the output file, if NULL, the result is written to the file .memorylist</td></tr></tbody></table></div><h3><a name="xmlMemUsed" id="xmlMemUsed"></a>Function: xmlMemUsed</h3><pre class="programlisting">int	xmlMemUsed	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ptr</tt></i>:</span></td><td>the initial memory block pointer</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>an int specifying the size in byte to allocate.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the allocated area or NULL in case of lack of memory.</td></tr></tbody></table></div><h3><a name="xmlMemUsed" id="xmlMemUsed"></a>Function: xmlMemUsed</h3><pre class="programlisting">int	xmlMemUsed			(void)<br />
 </pre><p>Provides the amount of memory currently allocated</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an int representing the amount of memory allocated.</td></tr></tbody></table></div><h3><a name="xmlMemSetup" id="xmlMemSetup"></a>Function: xmlMemSetup</h3><pre class="programlisting">int	xmlMemSetup	(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> freeFunc, <br />				 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> mallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> reallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> strdupFunc)<br />
-</pre><p>Override the default memory access functions with a new set This has to be called before any other libxml routines ! Should this be blocked if there was already some allocations done ?</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>freeFunc</tt></i>:</span></td><td>the free() function to use</td></tr><tr><td><span class="term"><i><tt>mallocFunc</tt></i>:</span></td><td>the malloc() function to use</td></tr><tr><td><span class="term"><i><tt>reallocFunc</tt></i>:</span></td><td>the realloc() function to use</td></tr><tr><td><span class="term"><i><tt>strdupFunc</tt></i>:</span></td><td>the strdup() function to use</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 on success</td></tr></tbody></table></div><h3><a name="xmlMemoryDump" id="xmlMemoryDump"></a>Function: xmlMemoryDump</h3><pre class="programlisting">void	xmlMemoryDump	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an int representing the amount of memory allocated.</td></tr></tbody></table></div><h3><a name="xmlMemGet" id="xmlMemGet"></a>Function: xmlMemGet</h3><pre class="programlisting">int	xmlMemGet			(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> * freeFunc, <br />					 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> * mallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> * reallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> * strdupFunc)<br />
+</pre><p>Provides the memory access functions set currently in use</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>freeFunc</tt></i>:</span></td><td>place to save the free() function in use</td></tr><tr><td><span class="term"><i><tt>mallocFunc</tt></i>:</span></td><td>place to save the malloc() function in use</td></tr><tr><td><span class="term"><i><tt>reallocFunc</tt></i>:</span></td><td>place to save the realloc() function in use</td></tr><tr><td><span class="term"><i><tt>strdupFunc</tt></i>:</span></td><td>place to save the strdup() function in use</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 on success</td></tr></tbody></table></div><h3><a name="xmlMemoryDump" id="xmlMemoryDump"></a>Function: xmlMemoryDump</h3><pre class="programlisting">void	xmlMemoryDump			(void)<br />
 </pre><p>Dump in-extenso the memory blocks allocated to the file .memorylist</p>
-<h3><a name="xmlMallocLoc" id="xmlMallocLoc"></a>Function: xmlMallocLoc</h3><pre class="programlisting">void *	xmlMallocLoc	(size_t size, <br />				 const char * file, <br />				 int line)<br />
+<h3><a name="xmlGcMemGet" id="xmlGcMemGet"></a>Function: xmlGcMemGet</h3><pre class="programlisting">int	xmlGcMemGet			(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> * freeFunc, <br />					 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> * mallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> * mallocAtomicFunc, <br />					 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> * reallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> * strdupFunc)<br />
+</pre><p>Provides the memory access functions set currently in use The mallocAtomicFunc is specialized for atomic block allocations (i.e. of areas useful for garbage collected memory allocators</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>freeFunc</tt></i>:</span></td><td>place to save the free() function in use</td></tr><tr><td><span class="term"><i><tt>mallocFunc</tt></i>:</span></td><td>place to save the malloc() function in use</td></tr><tr><td><span class="term"><i><tt>mallocAtomicFunc</tt></i>:</span></td><td>place to save the atomic malloc() function in use</td></tr><tr><td><span class="term"><i><tt>reallocFunc</tt></i>:</span></td><td>place to save the realloc() function in use</td></tr><tr><td><span class="term"><i><tt>strdupFunc</tt></i>:</span></td><td>place to save the strdup() function in use</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 on success</td></tr></tbody></table></div><h3><a name="xmlStrdupFunc" id="xmlStrdupFunc"></a>Function type: xmlStrdupFunc</h3><pre class="programlisting">Function type: xmlStrdupFunc
+char *	xmlStrdupFunc			(const char * str)
+</pre><p>Signature for an strdup() implementation.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>a zero terminated string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the copy of the string or NULL in case of error.</td></tr></tbody></table></div><br />
+<h3><a name="xmlMallocLoc" id="xmlMallocLoc"></a>Function: xmlMallocLoc</h3><pre class="programlisting">void *	xmlMallocLoc			(size_t size, <br />					 const char * file, <br />					 int line)<br />
 </pre><p>a malloc() equivalent, with logging of the allocation info.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>an int specifying the size in byte to allocate.</td></tr><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>the file name or NULL</td></tr><tr><td><span class="term"><i><tt>line</tt></i>:</span></td><td>the line number</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the allocated area or NULL in case of lack of memory.</td></tr></tbody></table></div><h3><a name="xmlMemShow" id="xmlMemShow"></a>Function: xmlMemShow</h3><pre class="programlisting">void	xmlMemShow	(FILE * fp, <br />				 int nr)<br />
-</pre><p>show a show display of the memory allocated, and dump the @nr last allocated areas which were not freed</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>fp</tt></i>:</span></td><td>a FILE descriptor used as the output file</td></tr><tr><td><span class="term"><i><tt>nr</tt></i>:</span></td><td>number of entries to dump</td></tr></tbody></table></div>
-      Signature for a realloc() implementation.
-      
-      
-      
-    
-      Signature for a malloc() implementation.
-      
-      
-    <h3><a name="DEBUG_MEMORY" id="DEBUG_MEMORY"></a>Macro: DEBUG_MEMORY</h3><pre>#define DEBUG_MEMORY</pre><p><a href="libxml-xmlmemory.html#DEBUG_MEMORY">DEBUG_MEMORY</a> replaces the allocator with a collect and debug shell to the libc allocator. <a href="libxml-xmlmemory.html#DEBUG_MEMORY">DEBUG_MEMORY</a> should only be activated when debugging libxml i.e. if libxml has been configured with --with-debug-mem too. #define DEBUG_MEMORY_FREED #define <a href="libxml-xmlversion.html#DEBUG_MEMORY_LOCATION">DEBUG_MEMORY_LOCATION</a></p>
-<h3><a name="xmlGcMemSetup" id="xmlGcMemSetup"></a>Function: xmlGcMemSetup</h3><pre class="programlisting">int	xmlGcMemSetup	(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> freeFunc, <br />				 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> mallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> mallocAtomicFunc, <br />				 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> reallocFunc, <br />				 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> strdupFunc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>an int specifying the size in byte to allocate.</td></tr><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>the file name or NULL</td></tr><tr><td><span class="term"><i><tt>line</tt></i>:</span></td><td>the line number</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the allocated area or NULL in case of lack of memory.</td></tr></tbody></table></div><h3><a name="xmlFreeFunc" id="xmlFreeFunc"></a>Function type: xmlFreeFunc</h3><pre class="programlisting">Function type: xmlFreeFunc
+void	xmlFreeFunc			(void * mem)
+</pre><p>Signature for a free() implementation.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>an already allocated block of memory</td></tr></tbody></table></div><br />
+<h3><a name="xmlInitMemory" id="xmlInitMemory"></a>Function: xmlInitMemory</h3><pre class="programlisting">int	xmlInitMemory			(void)<br />
+</pre><p>Initialize the memory layer.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 on success</td></tr></tbody></table></div><h3><a name="xmlReallocFunc" id="xmlReallocFunc"></a>Function type: xmlReallocFunc</h3><pre class="programlisting">Function type: xmlReallocFunc
+void *	xmlReallocFunc			(void * mem, <br />					 size_t size)
+</pre><p>Signature for a realloc() implementation.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>an already allocated block of memory</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the new size requested in bytes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the newly reallocated block or NULL in case of error.</td></tr></tbody></table></div><br />
+<h3><a name="xmlMemFree" id="xmlMemFree"></a>Function: xmlMemFree</h3><pre class="programlisting">void	xmlMemFree			(void * ptr)<br />
+</pre><p>a free() equivalent, with error checking.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ptr</tt></i>:</span></td><td>the memory block pointer</td></tr></tbody></table></div><h3><a name="xmlMallocFunc" id="xmlMallocFunc"></a>Function type: xmlMallocFunc</h3><pre class="programlisting">Function type: xmlMallocFunc
+void *	xmlMallocFunc			(size_t size)
+</pre><p>Signature for a malloc() implementation.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size requested in bytes</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the newly allocated block or NULL in case of error.</td></tr></tbody></table></div><br />
+<h3><a name="xmlMemDisplay" id="xmlMemDisplay"></a>Function: xmlMemDisplay</h3><pre class="programlisting">void	xmlMemDisplay			(FILE * fp)<br />
+</pre><p>show in-extenso the memory blocks allocated</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>fp</tt></i>:</span></td><td>a FILE descriptor used as the output file, if NULL, the result is written to the file .memorylist</td></tr></tbody></table></div><h3><a name="xmlMemMalloc" id="xmlMemMalloc"></a>Function: xmlMemMalloc</h3><pre class="programlisting">void *	xmlMemMalloc			(size_t size)<br />
+</pre><p>a malloc() equivalent, with logging of the allocation info.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>an int specifying the size in byte to allocate.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the allocated area or NULL in case of lack of memory.</td></tr></tbody></table></div><h3><a name="xmlMallocAtomicLoc" id="xmlMallocAtomicLoc"></a>Function: xmlMallocAtomicLoc</h3><pre class="programlisting">void *	xmlMallocAtomicLoc		(size_t size, <br />					 const char * file, <br />					 int line)<br />
+</pre><p>a malloc() equivalent, with logging of the allocation info.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>an int specifying the size in byte to allocate.</td></tr><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>the file name or NULL</td></tr><tr><td><span class="term"><i><tt>line</tt></i>:</span></td><td>the line number</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the allocated area or NULL in case of lack of memory.</td></tr></tbody></table></div><h3><a name="xmlGcMemSetup" id="xmlGcMemSetup"></a>Function: xmlGcMemSetup</h3><pre class="programlisting">int	xmlGcMemSetup			(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> freeFunc, <br />					 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> mallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> mallocAtomicFunc, <br />					 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> reallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> strdupFunc)<br />
 </pre><p>Override the default memory access functions with a new set This has to be called before any other libxml routines ! The mallocAtomicFunc is specialized for atomic block allocations (i.e. of areas useful for garbage collected memory allocators Should this be blocked if there was already some allocations done ?</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>freeFunc</tt></i>:</span></td><td>the free() function to use</td></tr><tr><td><span class="term"><i><tt>mallocFunc</tt></i>:</span></td><td>the malloc() function to use</td></tr><tr><td><span class="term"><i><tt>mallocAtomicFunc</tt></i>:</span></td><td>the malloc() function to use for atomic allocations</td></tr><tr><td><span class="term"><i><tt>reallocFunc</tt></i>:</span></td><td>the realloc() function to use</td></tr><tr><td><span class="term"><i><tt>strdupFunc</tt></i>:</span></td><td>the strdup() function to use</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 on success</td></tr></tbody></table></div><h3><a name="xmlMemoryStrdup" id="xmlMemoryStrdup"></a>Function: xmlMemoryStrdup</h3><pre class="programlisting">char *	xmlMemoryStrdup	(const char * str)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>freeFunc</tt></i>:</span></td><td>the free() function to use</td></tr><tr><td><span class="term"><i><tt>mallocFunc</tt></i>:</span></td><td>the malloc() function to use</td></tr><tr><td><span class="term"><i><tt>mallocAtomicFunc</tt></i>:</span></td><td>the malloc() function to use for atomic allocations</td></tr><tr><td><span class="term"><i><tt>reallocFunc</tt></i>:</span></td><td>the realloc() function to use</td></tr><tr><td><span class="term"><i><tt>strdupFunc</tt></i>:</span></td><td>the strdup() function to use</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 on success</td></tr></tbody></table></div><h3><a name="xmlMemShow" id="xmlMemShow"></a>Function: xmlMemShow</h3><pre class="programlisting">void	xmlMemShow			(FILE * fp, <br />					 int nr)<br />
+</pre><p>show a show display of the memory allocated, and dump the @nr last allocated areas which were not freed</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>fp</tt></i>:</span></td><td>a FILE descriptor used as the output file</td></tr><tr><td><span class="term"><i><tt>nr</tt></i>:</span></td><td>number of entries to dump</td></tr></tbody></table></div><h3><a name="xmlMemoryStrdup" id="xmlMemoryStrdup"></a>Function: xmlMemoryStrdup</h3><pre class="programlisting">char *	xmlMemoryStrdup			(const char * str)<br />
 </pre><p>a strdup() equivalent, with logging of the allocation info.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the initial string pointer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new string or NULL if allocation error occurred.</td></tr></tbody></table></div><h3><a name="xmlMemStrdupLoc" id="xmlMemStrdupLoc"></a>Function: xmlMemStrdupLoc</h3><pre class="programlisting">char *	xmlMemStrdupLoc	(const char * str, <br />				 const char * file, <br />				 int line)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the initial string pointer</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new string or NULL if allocation error occurred.</td></tr></tbody></table></div><h3><a name="xmlMemSetup" id="xmlMemSetup"></a>Function: xmlMemSetup</h3><pre class="programlisting">int	xmlMemSetup			(<a href="libxml-xmlmemory.html#xmlFreeFunc">xmlFreeFunc</a> freeFunc, <br />					 <a href="libxml-xmlmemory.html#xmlMallocFunc">xmlMallocFunc</a> mallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlReallocFunc">xmlReallocFunc</a> reallocFunc, <br />					 <a href="libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a> strdupFunc)<br />
+</pre><p>Override the default memory access functions with a new set This has to be called before any other libxml routines ! Should this be blocked if there was already some allocations done ?</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>freeFunc</tt></i>:</span></td><td>the free() function to use</td></tr><tr><td><span class="term"><i><tt>mallocFunc</tt></i>:</span></td><td>the malloc() function to use</td></tr><tr><td><span class="term"><i><tt>reallocFunc</tt></i>:</span></td><td>the realloc() function to use</td></tr><tr><td><span class="term"><i><tt>strdupFunc</tt></i>:</span></td><td>the strdup() function to use</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 on success</td></tr></tbody></table></div><h3><a name="xmlMemStrdupLoc" id="xmlMemStrdupLoc"></a>Function: xmlMemStrdupLoc</h3><pre class="programlisting">char *	xmlMemStrdupLoc			(const char * str, <br />					 const char * file, <br />					 int line)<br />
 </pre><p>a strdup() equivalent, with logging of the allocation info.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the initial string pointer</td></tr><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>the file name or NULL</td></tr><tr><td><span class="term"><i><tt>line</tt></i>:</span></td><td>the line number</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a pointer to the new string or NULL if allocation error occurred.</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-xmlreader.html b/doc/html/libxml-xmlreader.html
index 8b3f82a..bcab508 100644
--- a/doc/html/libxml-xmlreader.html
+++ b/doc/html/libxml-xmlreader.html
@@ -10,85 +10,104 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xmlreader from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlreader from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlmemory.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlmemory.html">xmlmemory</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlregexp.html">xmlregexp</a></th><td><a accesskey="n" href="libxml-xmlregexp.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>API of the XML streaming API based on C# interfaces. </p><h2>Table of Contents</h2><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderBaseUri">xmlTextReaderBaseUri</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlNewTextReaderFilename">xmlNewTextReaderFilename</a>	(const char * URI)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderMoveToAttributeNo">xmlTextReaderMoveToAttributeNo</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 int no)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderHasAttributes">xmlTextReaderHasAttributes</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderLocatorLineNumber">xmlTextReaderLocatorLineNumber</a>	(<a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator)<br />
-</pre><pre class="programlisting">int	<a href="#xmlReaderNewIO">xmlReaderNewIO</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderMoveToAttributeNs">xmlTextReaderMoveToAttributeNs</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localName, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderNext">xmlTextReaderNext</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlTextReaderCurrentDoc">xmlTextReaderCurrentDoc</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlReaderForFile">xmlReaderForFile</a>	(const char * filename, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstNamespaceUri">xmlTextReaderConstNamespaceUri</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderValue">xmlTextReaderValue</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlTextReaderExpand">xmlTextReaderExpand</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderAttributeCount">xmlTextReaderAttributeCount</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderXmlLang">xmlTextReaderXmlLang</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlReaderForDoc">xmlReaderForDoc</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">Enum <a name="xmlParserProperties" id="xmlParserProperties">xmlParserProperties</a> {
+    </style><title>Module xmlreader from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlreader from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlmemory.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlmemory.html">xmlmemory</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlregexp.html">xmlregexp</a></th><td><a accesskey="n" href="libxml-xmlregexp.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>API of the XML streaming API based on C# interfaces. </p><h2>Table of Contents</h2><pre class="programlisting">Enum <a href="#xmlParserProperties">xmlParserProperties</a>
+</pre><pre class="programlisting">Enum <a href="#xmlParserSeverities">xmlParserSeverities</a>
+</pre><pre class="programlisting">Enum <a href="#xmlReaderTypes">xmlReaderTypes</a>
+</pre><pre class="programlisting">Structure <a href="#xmlTextReader">xmlTextReader</a><br />struct _xmlTextReader
+The content of this structure is not made public by the API.
+</pre><pre class="programlisting">Typedef void * <a name="xmlTextReaderLocatorPtr" id="xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-xmlreader.html#xmlTextReader">xmlTextReader</a> * <a name="xmlTextReaderPtr" id="xmlTextReaderPtr">xmlTextReaderPtr</a>
+</pre><pre class="programlisting">void	<a href="#xmlFreeTextReader">xmlFreeTextReader</a>		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlNewTextReader">xmlNewTextReader</a>	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />						 const char * URI)</pre>
+<pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlNewTextReaderFilename">xmlNewTextReaderFilename</a>	(const char * URI)</pre>
+<pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlReaderForDoc">xmlReaderForDoc</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlReaderForFd">xmlReaderForFd</a>	(int fd, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlReaderForFile">xmlReaderForFile</a>	(const char * filename, <br />						 const char * encoding, <br />						 int options)</pre>
+<pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlReaderForIO">xmlReaderForIO</a>	(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />					 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />					 void * ioctx, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlReaderForMemory">xmlReaderForMemory</a>	(const char * buffer, <br />						 int size, <br />						 const char * URL, <br />						 const char * encoding, <br />						 int options)</pre>
+<pre class="programlisting">int	<a href="#xmlReaderNewDoc">xmlReaderNewDoc</a>			(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting">int	<a href="#xmlReaderNewFd">xmlReaderNewFd</a>			(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 int fd, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting">int	<a href="#xmlReaderNewFile">xmlReaderNewFile</a>		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 const char * filename, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting">int	<a href="#xmlReaderNewIO">xmlReaderNewIO</a>			(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />					 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />					 void * ioctx, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting">int	<a href="#xmlReaderNewMemory">xmlReaderNewMemory</a>		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 const char * buffer, <br />					 int size, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)</pre>
+<pre class="programlisting">int	<a href="#xmlReaderNewWalker">xmlReaderNewWalker</a>		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlReaderWalker">xmlReaderWalker</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderAttributeCount">xmlTextReaderAttributeCount</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderBaseUri">xmlTextReaderBaseUri</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderClose">xmlTextReaderClose</a>		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstBaseUri">xmlTextReaderConstBaseUri</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstLocalName">xmlTextReaderConstLocalName</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstName">xmlTextReaderConstName</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstNamespaceUri">xmlTextReaderConstNamespaceUri</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstPrefix">xmlTextReaderConstPrefix</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstString">xmlTextReaderConstString</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstValue">xmlTextReaderConstValue</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstXmlLang">xmlTextReaderConstXmlLang</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	<a href="#xmlTextReaderCurrentDoc">xmlTextReaderCurrentDoc</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlTextReaderCurrentNode">xmlTextReaderCurrentNode</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderDepth">xmlTextReaderDepth</a>		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">Function type: <a href="#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a>
+void	<a href="#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a>		(void * arg, <br />					 const char * msg, <br />					 <a href="libxml-xmlreader.html#xmlParserSeverities">xmlParserSeverities</a> severity, <br />					 <a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator)
+</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlTextReaderExpand">xmlTextReaderExpand</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderGetAttribute">xmlTextReaderGetAttribute</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderGetAttributeNo">xmlTextReaderGetAttributeNo</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />						 int no)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderGetAttributeNs">xmlTextReaderGetAttributeNs</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localName, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)</pre>
+<pre class="programlisting">void	<a href="#xmlTextReaderGetErrorHandler">xmlTextReaderGetErrorHandler</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 <a href="libxml-xmlreader.html#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a> * f, <br />					 void ** arg)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderGetParserProp">xmlTextReaderGetParserProp</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 int prop)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlTextReaderGetRemainder">xmlTextReaderGetRemainder</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderHasAttributes">xmlTextReaderHasAttributes</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderHasValue">xmlTextReaderHasValue</a>		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderIsDefault">xmlTextReaderIsDefault</a>		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderIsEmptyElement">xmlTextReaderIsEmptyElement</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderIsValid">xmlTextReaderIsValid</a>		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderLocalName">xmlTextReaderLocalName</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderLocatorBaseURI">xmlTextReaderLocatorBaseURI</a>	(<a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderLocatorLineNumber">xmlTextReaderLocatorLineNumber</a>	(<a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderLookupNamespace">xmlTextReaderLookupNamespace</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderMoveToAttribute">xmlTextReaderMoveToAttribute</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderMoveToAttributeNo">xmlTextReaderMoveToAttributeNo</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 int no)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderMoveToAttributeNs">xmlTextReaderMoveToAttributeNs</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localName, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderMoveToElement">xmlTextReaderMoveToElement</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderMoveToFirstAttribute">xmlTextReaderMoveToFirstAttribute</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderMoveToNextAttribute">xmlTextReaderMoveToNextAttribute</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderName">xmlTextReaderName</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderNamespaceUri">xmlTextReaderNamespaceUri</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderNext">xmlTextReaderNext</a>		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderNextSibling">xmlTextReaderNextSibling</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderNodeType">xmlTextReaderNodeType</a>		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderNormalization">xmlTextReaderNormalization</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderPrefix">xmlTextReaderPrefix</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlTextReaderPreserve">xmlTextReaderPreserve</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderQuoteChar">xmlTextReaderQuoteChar</a>		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderRead">xmlTextReaderRead</a>		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderReadAttributeValue">xmlTextReaderReadAttributeValue</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderReadInnerXml">xmlTextReaderReadInnerXml</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderReadOuterXml">xmlTextReaderReadOuterXml</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderReadState">xmlTextReaderReadState</a>		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderReadString">xmlTextReaderReadString</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderRelaxNGSetSchema">xmlTextReaderRelaxNGSetSchema</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderRelaxNGValidate">xmlTextReaderRelaxNGValidate</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 const char * rng)</pre>
+<pre class="programlisting">void	<a href="#xmlTextReaderSetErrorHandler">xmlTextReaderSetErrorHandler</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 <a href="libxml-xmlreader.html#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a> f, <br />					 void * arg)</pre>
+<pre class="programlisting">int	<a href="#xmlTextReaderSetParserProp">xmlTextReaderSetParserProp</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 int prop, <br />					 int value)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderValue">xmlTextReaderValue</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderXmlLang">xmlTextReaderXmlLang</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)</pre>
+<h2>Description</h2>
+<h3><a name="xmlParserProperties" id="xmlParserProperties">xmlParserProperties</a></h3><pre class="programlisting">Enum xmlParserProperties {
     <a name="XML_PARSER_LOADDTD" id="XML_PARSER_LOADDTD">XML_PARSER_LOADDTD</a> = 1
     <a name="XML_PARSER_DEFAULTATTRS" id="XML_PARSER_DEFAULTATTRS">XML_PARSER_DEFAULTATTRS</a> = 2
     <a name="XML_PARSER_VALIDATE" id="XML_PARSER_VALIDATE">XML_PARSER_VALIDATE</a> = 3
     <a name="XML_PARSER_SUBST_ENTITIES" id="XML_PARSER_SUBST_ENTITIES">XML_PARSER_SUBST_ENTITIES</a> = 4
 }
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderLookupNamespace">xmlTextReaderLookupNamespace</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderMoveToElement">xmlTextReaderMoveToElement</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderClose">xmlTextReaderClose</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderReadInnerXml">xmlTextReaderReadInnerXml</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlReaderForIO">xmlReaderForIO</a>	(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlReaderForFd">xmlReaderForFd</a>	(int fd, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderReadOuterXml">xmlTextReaderReadOuterXml</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderNormalization">xmlTextReaderNormalization</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderGetParserProp">xmlTextReaderGetParserProp</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 int prop)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderPrefix">xmlTextReaderPrefix</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderMoveToAttribute">xmlTextReaderMoveToAttribute</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderQuoteChar">xmlTextReaderQuoteChar</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderNextSibling">xmlTextReaderNextSibling</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	<a href="#xmlTextReaderGetRemainder">xmlTextReaderGetRemainder</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderReadString">xmlTextReaderReadString</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderIsValid">xmlTextReaderIsValid</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderMoveToFirstAttribute">xmlTextReaderMoveToFirstAttribute</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-xmlreader.html#xmlTextReader">xmlTextReader</a> * <a name="xmlTextReaderPtr" id="xmlTextReaderPtr">xmlTextReaderPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderGetAttribute">xmlTextReaderGetAttribute</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstValue">xmlTextReaderConstValue</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">Typedef void * <a name="xmlTextReaderLocatorPtr" id="xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlReaderNewMemory">xmlReaderNewMemory</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const char * buffer, <br />				 int size, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderGetAttributeNo">xmlTextReaderGetAttributeNo</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 int no)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderLocalName">xmlTextReaderLocalName</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderGetAttributeNs">xmlTextReaderGetAttributeNs</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localName, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstName">xmlTextReaderConstName</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlTextReaderPreserve">xmlTextReaderPreserve</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderReadState">xmlTextReaderReadState</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlTextReaderCurrentNode">xmlTextReaderCurrentNode</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstString">xmlTextReaderConstString</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderSetParserProp">xmlTextReaderSetParserProp</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 int prop, <br />				 int value)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlNewTextReader">xmlNewTextReader</a>	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />				 const char * URI)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderDepth">xmlTextReaderDepth</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a name="xmlTextReaderErrorFunc" id="xmlTextReaderErrorFunc"></a>Function type: xmlTextReaderErrorFunc
-void	xmlTextReaderErrorFunc	(void * arg, <br />				 const char * msg, <br />				 <a href="libxml-xmlreader.html#xmlParserSeverities">xmlParserSeverities</a> severity, <br />				 <a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator)
-</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>severity</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>locator</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
-<pre class="programlisting">void	<a href="#xmlTextReaderSetErrorHandler">xmlTextReaderSetErrorHandler</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 <a href="libxml-xmlreader.html#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a> f, <br />				 void * arg)<br />
-</pre><pre class="programlisting">Enum <a name="xmlParserSeverities" id="xmlParserSeverities">xmlParserSeverities</a> {
+</pre><h3><a name="xmlParserSeverities" id="xmlParserSeverities">xmlParserSeverities</a></h3><pre class="programlisting">Enum xmlParserSeverities {
     <a name="XML_PARSER_SEVERITY_VALIDITY_WARNING" id="XML_PARSER_SEVERITY_VALIDITY_WARNING">XML_PARSER_SEVERITY_VALIDITY_WARNING</a> = 1
     <a name="XML_PARSER_SEVERITY_VALIDITY_ERROR" id="XML_PARSER_SEVERITY_VALIDITY_ERROR">XML_PARSER_SEVERITY_VALIDITY_ERROR</a> = 2
     <a name="XML_PARSER_SEVERITY_WARNING" id="XML_PARSER_SEVERITY_WARNING">XML_PARSER_SEVERITY_WARNING</a> = 3
     <a name="XML_PARSER_SEVERITY_ERROR" id="XML_PARSER_SEVERITY_ERROR">XML_PARSER_SEVERITY_ERROR</a> = 4
 }
-
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderMoveToNextAttribute">xmlTextReaderMoveToNextAttribute</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlReaderNewWalker">xmlReaderNewWalker</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">int	<a href="#xmlReaderNewDoc">xmlReaderNewDoc</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstPrefix">xmlTextReaderConstPrefix</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlReaderWalker">xmlReaderWalker</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstXmlLang">xmlTextReaderConstXmlLang</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstLocalName">xmlTextReaderConstLocalName</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderNodeType">xmlTextReaderNodeType</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">void	<a href="#xmlTextReaderGetErrorHandler">xmlTextReaderGetErrorHandler</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 <a href="libxml-xmlreader.html#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a> * f, <br />				 void ** arg)<br />
-</pre><pre class="programlisting">Enum <a name="xmlReaderTypes" id="xmlReaderTypes">xmlReaderTypes</a> {
+</pre><h3><a name="xmlTextReader" id="xmlTextReader">Structure xmlTextReader</a></h3><pre class="programlisting">Structure xmlTextReader<br />struct _xmlTextReader {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlReaderTypes" id="xmlReaderTypes">xmlReaderTypes</a></h3><pre class="programlisting">Enum xmlReaderTypes {
     <a name="XML_READER_TYPE_NONE" id="XML_READER_TYPE_NONE">XML_READER_TYPE_NONE</a> = 0
     <a name="XML_READER_TYPE_ELEMENT" id="XML_READER_TYPE_ELEMENT">XML_READER_TYPE_ELEMENT</a> = 1
     <a name="XML_READER_TYPE_ATTRIBUTE" id="XML_READER_TYPE_ATTRIBUTE">XML_READER_TYPE_ATTRIBUTE</a> = 2
@@ -108,174 +127,151 @@
     <a name="XML_READER_TYPE_END_ENTITY" id="XML_READER_TYPE_END_ENTITY">XML_READER_TYPE_END_ENTITY</a> = 16
     <a name="XML_READER_TYPE_XML_DECLARATION" id="XML_READER_TYPE_XML_DECLARATION">XML_READER_TYPE_XML_DECLARATION</a> = 17
 }
-
-</pre><pre class="programlisting">int	<a href="#xmlReaderNewFile">xmlReaderNewFile</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const char * filename, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeTextReader">xmlFreeTextReader</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderIsDefault">xmlTextReaderIsDefault</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderName">xmlTextReaderName</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlReaderNewFd">xmlReaderNewFd</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 int fd, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderRead">xmlTextReaderRead</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderRelaxNGValidate">xmlTextReaderRelaxNGValidate</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const char * rng)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderIsEmptyElement">xmlTextReaderIsEmptyElement</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	<a href="#xmlReaderForMemory">xmlReaderForMemory</a>	(const char * buffer, <br />				 int size, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><pre class="programlisting">Structure <a name="xmlTextReader" id="xmlTextReader">xmlTextReader</a><br />struct _xmlTextReader {
-The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderLocatorBaseURI">xmlTextReaderLocatorBaseURI</a>	(<a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderNamespaceUri">xmlTextReaderNamespaceUri</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderRelaxNGSetSchema">xmlTextReaderRelaxNGSetSchema</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderReadAttributeValue">xmlTextReaderReadAttributeValue</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextReaderHasValue">xmlTextReaderHasValue</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlTextReaderConstBaseUri">xmlTextReaderConstBaseUri</a>	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlTextReaderBaseUri" id="xmlTextReaderBaseUri"></a>Function: xmlTextReaderBaseUri</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderBaseUri	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><h3><a name="xmlTextReaderBaseUri" id="xmlTextReaderBaseUri"></a>Function: xmlTextReaderBaseUri</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderBaseUri	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
 </pre><p>The base URI of the node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the base URI or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlNewTextReaderFilename" id="xmlNewTextReaderFilename"></a>Function: xmlNewTextReaderFilename</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlNewTextReaderFilename	(const char * URI)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the base URI or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlTextReaderValue" id="xmlTextReaderValue"></a>Function: xmlTextReaderValue</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderValue	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Provides the text value of the node if present</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the string or NULL if not available. The result must be deallocated with xmlFree()</td></tr></tbody></table></div><h3><a name="xmlNewTextReaderFilename" id="xmlNewTextReaderFilename"></a>Function: xmlNewTextReaderFilename</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlNewTextReaderFilename	(const char * URI)<br />
 </pre><p>Create an <a href="libxml-xmlreader.html#xmlTextReader">xmlTextReader</a> structure fed with the resource at @URI</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI of the resource to process</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderMoveToAttributeNo" id="xmlTextReaderMoveToAttributeNo"></a>Function: xmlTextReaderMoveToAttributeNo</h3><pre class="programlisting">int	xmlTextReaderMoveToAttributeNo	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 int no)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI of the resource to process</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderRead" id="xmlTextReaderRead"></a>Function: xmlTextReaderRead</h3><pre class="programlisting">int	xmlTextReaderRead		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Moves the position of the current instance to the next node in the stream, exposing its properties.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the node was read successfully, 0 if there is no more nodes to read, or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderReadString" id="xmlTextReaderReadString"></a>Function: xmlTextReaderReadString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderReadString	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Reads the contents of an element or a text node as a string.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string containing the contents of the Element or Text node, or NULL if the reader is positioned on any other type of node. The string must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xmlTextReaderMoveToAttributeNo" id="xmlTextReaderMoveToAttributeNo"></a>Function: xmlTextReaderMoveToAttributeNo</h3><pre class="programlisting">int	xmlTextReaderMoveToAttributeNo	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 int no)<br />
 </pre><p>Moves the position of the current instance to the <a href="libxml-SAX.html#attribute">attribute</a> with the specified index relative to the containing element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>no</tt></i>:</span></td><td>the zero-based index of the <a href="libxml-SAX.html#attribute">attribute</a> relative to the containing element.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, -1 in case of error, 0 if not found</td></tr></tbody></table></div><h3><a name="xmlTextReaderHasAttributes" id="xmlTextReaderHasAttributes"></a>Function: xmlTextReaderHasAttributes</h3><pre class="programlisting">int	xmlTextReaderHasAttributes	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>no</tt></i>:</span></td><td>the zero-based index of the <a href="libxml-SAX.html#attribute">attribute</a> relative to the containing element.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, -1 in case of error, 0 if not found</td></tr></tbody></table></div><h3><a name="xmlTextReaderDepth" id="xmlTextReaderDepth"></a>Function: xmlTextReaderDepth</h3><pre class="programlisting">int	xmlTextReaderDepth		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>The depth of the node in the tree.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the depth or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderErrorFunc" id="xmlTextReaderErrorFunc"></a>Function type: xmlTextReaderErrorFunc</h3><pre class="programlisting">Function type: xmlTextReaderErrorFunc
+void	xmlTextReaderErrorFunc		(void * arg, <br />					 const char * msg, <br />					 <a href="libxml-xmlreader.html#xmlParserSeverities">xmlParserSeverities</a> severity, <br />					 <a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator)
+</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>severity</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>locator</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
+<h3><a name="xmlTextReaderHasAttributes" id="xmlTextReaderHasAttributes"></a>Function: xmlTextReaderHasAttributes</h3><pre class="programlisting">int	xmlTextReaderHasAttributes	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
 </pre><p>Whether the node has attributes.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true, 0 if false, and -1 in case or error</td></tr></tbody></table></div><h3><a name="xmlTextReaderLocatorLineNumber" id="xmlTextReaderLocatorLineNumber"></a>Function: xmlTextReaderLocatorLineNumber</h3><pre class="programlisting">int	xmlTextReaderLocatorLineNumber	(<a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true, 0 if false, and -1 in case or error</td></tr></tbody></table></div><h3><a name="xmlReaderNewWalker" id="xmlReaderNewWalker"></a>Function: xmlReaderNewWalker</h3><pre class="programlisting">int	xmlReaderNewWalker		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+</pre><p>Setup an xmltextReader to parse a preparsed XML document. This reuses the existing @reader xmlTextReader.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>an XML reader</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a preparsed document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderSetErrorHandler" id="xmlTextReaderSetErrorHandler"></a>Function: xmlTextReaderSetErrorHandler</h3><pre class="programlisting">void	xmlTextReaderSetErrorHandler	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 <a href="libxml-xmlreader.html#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a> f, <br />					 void * arg)<br />
+</pre><p>Register a callback function that will be called on error and warnings. If @f is NULL, the default error and warning handlers are restored.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the callback function to call on error and warnings</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>a user argument to pass to the callback function</td></tr></tbody></table></div><h3><a name="xmlTextReaderLocatorLineNumber" id="xmlTextReaderLocatorLineNumber"></a>Function: xmlTextReaderLocatorLineNumber</h3><pre class="programlisting">int	xmlTextReaderLocatorLineNumber	(<a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator)<br />
 </pre><p>Obtain the line number for the given locator.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>locator</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the line number or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlReaderNewIO" id="xmlReaderNewIO"></a>Function: xmlReaderNewIO</h3><pre class="programlisting">int	xmlReaderNewIO	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>Setup an xmltextReader to parse an XML document from I/O functions and source. The parsing flags @options are a combination of xmlParserOption(s). This reuses the existing @reader xmlTextReader.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>an XML reader</td></tr><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderMoveToAttributeNs" id="xmlTextReaderMoveToAttributeNs"></a>Function: xmlTextReaderMoveToAttributeNs</h3><pre class="programlisting">int	xmlTextReaderMoveToAttributeNs	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localName, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>locator</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the line number or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderLookupNamespace" id="xmlTextReaderLookupNamespace"></a>Function: xmlTextReaderLookupNamespace</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderLookupNamespace	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
+</pre><p>Resolves a namespace prefix in the scope of the current element.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix whose namespace URI is to be resolved. To return the default namespace, specify NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string containing the namespace URI to which the prefix maps or NULL in case of error. The string must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xmlTextReaderMoveToAttributeNs" id="xmlTextReaderMoveToAttributeNs"></a>Function: xmlTextReaderMoveToAttributeNs</h3><pre class="programlisting">int	xmlTextReaderMoveToAttributeNs	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localName, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)<br />
 </pre><p>Moves the position of the current instance to the <a href="libxml-SAX.html#attribute">attribute</a> with the specified local name and namespace URI.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>localName</tt></i>:</span></td><td>the local name of the attribute.</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>the namespace URI of the attribute.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, -1 in case of error, 0 if not found</td></tr></tbody></table></div><h3><a name="xmlTextReaderNext" id="xmlTextReaderNext"></a>Function: xmlTextReaderNext</h3><pre class="programlisting">int	xmlTextReaderNext	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>localName</tt></i>:</span></td><td>the local name of the attribute.</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>the namespace URI of the attribute.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, -1 in case of error, 0 if not found</td></tr></tbody></table></div><h3><a name="xmlTextReaderNext" id="xmlTextReaderNext"></a>Function: xmlTextReaderNext</h3><pre class="programlisting">int	xmlTextReaderNext		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
 </pre><p>Skip to the node following the current one in document order while avoiding the subtree if any.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the node was read successfully, 0 if there is no more nodes to read, or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderCurrentDoc" id="xmlTextReaderCurrentDoc"></a>Function: xmlTextReaderCurrentDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlTextReaderCurrentDoc	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Hacking interface allowing to get the <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> correponding to the current document being accessed by the xmlTextReader. NOTE: as a result of this call, the reader will not destroy the associated XML document and calling xmlFreeDoc() on the result is needed once the reader parsing has finished.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlReaderForFile" id="xmlReaderForFile"></a>Function: xmlReaderForFile</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlReaderForFile	(const char * filename, <br />				 const char * encoding, <br />				 int options)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the node was read successfully, 0 if there is no more nodes to read, or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderReadAttributeValue" id="xmlTextReaderReadAttributeValue"></a>Function: xmlTextReaderReadAttributeValue</h3><pre class="programlisting">int	xmlTextReaderReadAttributeValue	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Parses an <a href="libxml-SAX.html#attribute">attribute</a> value into one or more Text and EntityReference nodes.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, 0 if the reader was not positionned on an ttribute node or all the <a href="libxml-SAX.html#attribute">attribute</a> values have been read, or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderIsDefault" id="xmlTextReaderIsDefault"></a>Function: xmlTextReaderIsDefault</h3><pre class="programlisting">int	xmlTextReaderIsDefault		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Whether an Attribute node was generated from the default value defined in the DTD or schema.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if not defaulted, 1 if defaulted, and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlReaderForFile" id="xmlReaderForFile"></a>Function: xmlReaderForFile</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlReaderForFile	(const char * filename, <br />						 const char * encoding, <br />						 int options)<br />
 </pre><p>parse an XML file from the filesystem or the network. The parsing flags @options are a combination of xmlParserOption(s).</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file or URL</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new reader or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderConstNamespaceUri" id="xmlTextReaderConstNamespaceUri"></a>Function: xmlTextReaderConstNamespaceUri</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderConstNamespaceUri	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
 </pre><p>The URI defining the namespace associated with the node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace URI or NULL if not available, the string will be deallocated with the reader</td></tr></tbody></table></div><h3><a name="xmlTextReaderValue" id="xmlTextReaderValue"></a>Function: xmlTextReaderValue</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderValue	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Provides the text value of the node if present</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the string or NULL if not available. The result must be deallocated with xmlFree()</td></tr></tbody></table></div><h3><a name="xmlTextReaderExpand" id="xmlTextReaderExpand"></a>Function: xmlTextReaderExpand</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlTextReaderExpand	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace URI or NULL if not available, the string will be deallocated with the reader</td></tr></tbody></table></div><h3><a name="xmlTextReaderMoveToNextAttribute" id="xmlTextReaderMoveToNextAttribute"></a>Function: xmlTextReaderMoveToNextAttribute</h3><pre class="programlisting">int	xmlTextReaderMoveToNextAttribute	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Moves the position of the current instance to the next <a href="libxml-SAX.html#attribute">attribute</a> associated with the current node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, -1 in case of error, 0 if not found</td></tr></tbody></table></div><h3><a name="xmlTextReaderQuoteChar" id="xmlTextReaderQuoteChar"></a>Function: xmlTextReaderQuoteChar</h3><pre class="programlisting">int	xmlTextReaderQuoteChar		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>The quotation mark character used to enclose the value of an attribute.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>&quot; or ' and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderReadOuterXml" id="xmlTextReaderReadOuterXml"></a>Function: xmlTextReaderReadOuterXml</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderReadOuterXml	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Reads the contents of the current node, including child nodes and markup.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string containing the XML content, or NULL if the current node is neither an element nor attribute, or has no child nodes. The string must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xmlTextReaderNamespaceUri" id="xmlTextReaderNamespaceUri"></a>Function: xmlTextReaderNamespaceUri</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderNamespaceUri	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>The URI defining the namespace associated with the node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace URI or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlTextReaderExpand" id="xmlTextReaderExpand"></a>Function: xmlTextReaderExpand</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlTextReaderExpand	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
 </pre><p>Reads the contents of the current node and the full subtree. It then makes the subtree available until the next xmlTextReaderRead() call</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a node pointer valid until the next xmlTextReaderRead() call or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderAttributeCount" id="xmlTextReaderAttributeCount"></a>Function: xmlTextReaderAttributeCount</h3><pre class="programlisting">int	xmlTextReaderAttributeCount	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Provides the number of attributes of the current node</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 i no attributes, -1 in case of error or the <a href="libxml-SAX.html#attribute">attribute</a> count</td></tr></tbody></table></div><h3><a name="xmlTextReaderXmlLang" id="xmlTextReaderXmlLang"></a>Function: xmlTextReaderXmlLang</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderXmlLang	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a node pointer valid until the next xmlTextReaderRead() call or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlReaderNewDoc" id="xmlReaderNewDoc"></a>Function: xmlReaderNewDoc</h3><pre class="programlisting">int	xmlReaderNewDoc			(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>Setup an xmltextReader to parse an XML in-memory document. The parsing flags @options are a combination of xmlParserOption(s). This reuses the existing @reader xmlTextReader.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>an XML reader</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to a zero terminated string</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderXmlLang" id="xmlTextReaderXmlLang"></a>Function: xmlTextReaderXmlLang</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderXmlLang	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
 </pre><p>The xml:lang scope within which the node resides.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the xml:lang value or NULL if none exists.</td></tr></tbody></table></div><h3><a name="xmlReaderForDoc" id="xmlReaderForDoc"></a>Function: xmlReaderForDoc</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlReaderForDoc	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the xml:lang value or NULL if none exists.</td></tr></tbody></table></div><h3><a name="xmlReaderForDoc" id="xmlReaderForDoc"></a>Function: xmlReaderForDoc</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlReaderForDoc	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
 </pre><p>Create an xmltextReader for an XML in-memory document. The parsing flags @options are a combination of xmlParserOption(s).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to a zero terminated string</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new reader or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderLookupNamespace" id="xmlTextReaderLookupNamespace"></a>Function: xmlTextReaderLookupNamespace</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderLookupNamespace	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
-</pre><p>Resolves a namespace prefix in the scope of the current element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the prefix whose namespace URI is to be resolved. To return the default namespace, specify NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string containing the namespace URI to which the prefix maps or NULL in case of error. The string must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xmlTextReaderMoveToElement" id="xmlTextReaderMoveToElement"></a>Function: xmlTextReaderMoveToElement</h3><pre class="programlisting">int	xmlTextReaderMoveToElement	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to a zero terminated string</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new reader or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlReaderNewIO" id="xmlReaderNewIO"></a>Function: xmlReaderNewIO</h3><pre class="programlisting">int	xmlReaderNewIO			(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />					 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />					 void * ioctx, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>Setup an xmltextReader to parse an XML document from I/O functions and source. The parsing flags @options are a combination of xmlParserOption(s). This reuses the existing @reader xmlTextReader.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>an XML reader</td></tr><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderMoveToElement" id="xmlTextReaderMoveToElement"></a>Function: xmlTextReaderMoveToElement</h3><pre class="programlisting">int	xmlTextReaderMoveToElement	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
 </pre><p>Moves the position of the current instance to the node that contains the current Attribute node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, -1 in case of error, 0 if not moved</td></tr></tbody></table></div><h3><a name="xmlTextReaderClose" id="xmlTextReaderClose"></a>Function: xmlTextReaderClose</h3><pre class="programlisting">int	xmlTextReaderClose	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, -1 in case of error, 0 if not moved</td></tr></tbody></table></div><h3><a name="xmlTextReaderClose" id="xmlTextReaderClose"></a>Function: xmlTextReaderClose</h3><pre class="programlisting">int	xmlTextReaderClose		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
 </pre><p>This method releases any resources allocated by the current instance changes the state to Closed and close any underlying input.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderReadInnerXml" id="xmlTextReaderReadInnerXml"></a>Function: xmlTextReaderReadInnerXml</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderReadInnerXml	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
 </pre><p>Reads the contents of the current node, including child nodes and markup.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string containing the XML content, or NULL if the current node is neither an element nor attribute, or has no child nodes. The string must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xmlReaderForIO" id="xmlReaderForIO"></a>Function: xmlReaderForIO</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlReaderForIO	(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />				 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />				 void * ioctx, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>Create an xmltextReader for an XML document from I/O functions and source. The parsing flags @options are a combination of xmlParserOption(s).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new reader or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlReaderForFd" id="xmlReaderForFd"></a>Function: xmlReaderForFd</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlReaderForFd	(int fd, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>Create an xmltextReader for an XML from a file descriptor. The parsing flags @options are a combination of xmlParserOption(s).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>an open file descriptor</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new reader or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderReadOuterXml" id="xmlTextReaderReadOuterXml"></a>Function: xmlTextReaderReadOuterXml</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderReadOuterXml	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Reads the contents of the current node, including child nodes and markup.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string containing the XML content, or NULL if the current node is neither an element nor attribute, or has no child nodes. The string must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xmlTextReaderNormalization" id="xmlTextReaderNormalization"></a>Function: xmlTextReaderNormalization</h3><pre class="programlisting">int	xmlTextReaderNormalization	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>The value indicating whether to normalize white space and <a href="libxml-SAX.html#attribute">attribute</a> values. Since <a href="libxml-SAX.html#attribute">attribute</a> value and end of line normalizations are a MUST in the XML specification only the value true is accepted. The broken bahaviour of accepting out of range character entities like &amp;#0; is of course not supported either.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderGetParserProp" id="xmlTextReaderGetParserProp"></a>Function: xmlTextReaderGetParserProp</h3><pre class="programlisting">int	xmlTextReaderGetParserProp	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 int prop)<br />
-</pre><p>Read the parser internal property.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>prop</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlParserProperties">xmlParserProperties</a> to get</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value, usually 0 or 1, or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderPrefix" id="xmlTextReaderPrefix"></a>Function: xmlTextReaderPrefix</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderPrefix	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>A shorthand <a href="libxml-SAX.html#reference">reference</a> to the namespace associated with the node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the prefix or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlTextReaderMoveToAttribute" id="xmlTextReaderMoveToAttribute"></a>Function: xmlTextReaderMoveToAttribute</h3><pre class="programlisting">int	xmlTextReaderMoveToAttribute	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Moves the position of the current instance to the <a href="libxml-SAX.html#attribute">attribute</a> with the specified qualified name.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the qualified name of the attribute.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, -1 in case of error, 0 if not found</td></tr></tbody></table></div><h3><a name="xmlTextReaderQuoteChar" id="xmlTextReaderQuoteChar"></a>Function: xmlTextReaderQuoteChar</h3><pre class="programlisting">int	xmlTextReaderQuoteChar	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>The quotation mark character used to enclose the value of an attribute.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>&quot; or ' and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderNextSibling" id="xmlTextReaderNextSibling"></a>Function: xmlTextReaderNextSibling</h3><pre class="programlisting">int	xmlTextReaderNextSibling	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Skip to the node following the current one in document order while avoiding the subtree if any. Currently implemented only for Readers built on a document</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the node was read successfully, 0 if there is no more nodes to read, or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderGetRemainder" id="xmlTextReaderGetRemainder"></a>Function: xmlTextReaderGetRemainder</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	xmlTextReaderGetRemainder	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Method to get the remainder of the buffered XML. this method stops the parser, set its state to End Of File and return the input stream with what is left that the parser did not use.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> attached to the XML or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderReadString" id="xmlTextReaderReadString"></a>Function: xmlTextReaderReadString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderReadString	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Reads the contents of an element or a text node as a string.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string containing the contents of the Element or Text node, or NULL if the reader is positioned on any other type of node. The string must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xmlTextReaderIsValid" id="xmlTextReaderIsValid"></a>Function: xmlTextReaderIsValid</h3><pre class="programlisting">int	xmlTextReaderIsValid	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Retrieve the validity status from the parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the flag value 1 if valid, 0 if no, and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderMoveToFirstAttribute" id="xmlTextReaderMoveToFirstAttribute"></a>Function: xmlTextReaderMoveToFirstAttribute</h3><pre class="programlisting">int	xmlTextReaderMoveToFirstAttribute	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Moves the position of the current instance to the first <a href="libxml-SAX.html#attribute">attribute</a> associated with the current node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, -1 in case of error, 0 if not found</td></tr></tbody></table></div><h3><a name="xmlTextReaderGetAttribute" id="xmlTextReaderGetAttribute"></a>Function: xmlTextReaderGetAttribute</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderGetAttribute	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Provides the value of the <a href="libxml-SAX.html#attribute">attribute</a> with the specified qualified name.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the qualified name of the attribute.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string containing the value of the specified attribute, or NULL in case of error. The string must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xmlTextReaderConstValue" id="xmlTextReaderConstValue"></a>Function: xmlTextReaderConstValue</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderConstValue	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Provides the text value of the node if present</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the string or NULL if not available. The result will be deallocated on the next Read() operation.</td></tr></tbody></table></div><h3><a name="xmlReaderNewMemory" id="xmlReaderNewMemory"></a>Function: xmlReaderNewMemory</h3><pre class="programlisting">int	xmlReaderNewMemory	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const char * buffer, <br />				 int size, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>Setup an xmltextReader to parse an XML in-memory document. The parsing flags @options are a combination of xmlParserOption(s). This reuses the existing @reader xmlTextReader.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>an XML reader</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderGetAttributeNo" id="xmlTextReaderGetAttributeNo"></a>Function: xmlTextReaderGetAttributeNo</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderGetAttributeNo	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 int no)<br />
-</pre><p>Provides the value of the <a href="libxml-SAX.html#attribute">attribute</a> with the specified index relative to the containing element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>no</tt></i>:</span></td><td>the zero-based index of the <a href="libxml-SAX.html#attribute">attribute</a> relative to the containing element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string containing the value of the specified attribute, or NULL in case of error. The string must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xmlTextReaderLocalName" id="xmlTextReaderLocalName"></a>Function: xmlTextReaderLocalName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderLocalName	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>The local name of the node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the local name or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlTextReaderGetAttributeNs" id="xmlTextReaderGetAttributeNs"></a>Function: xmlTextReaderGetAttributeNs</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderGetAttributeNs	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localName, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)<br />
-</pre><p>Provides the value of the specified <a href="libxml-SAX.html#attribute">attribute</a></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>localName</tt></i>:</span></td><td>the local name of the attribute.</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>the namespace URI of the attribute.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string containing the value of the specified attribute, or NULL in case of error. The string must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xmlTextReaderConstName" id="xmlTextReaderConstName"></a>Function: xmlTextReaderConstName</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderConstName	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>The qualified name of the node, equal to Prefix :LocalName.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the local name or NULL if not available, the string is deallocated with the reader.</td></tr></tbody></table></div><h3><a name="xmlTextReaderPreserve" id="xmlTextReaderPreserve"></a>Function: xmlTextReaderPreserve</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlTextReaderPreserve	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>current node being accessed by the xmlTextReader. This is dangerous because the underlying node may be destroyed on the next Reads.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderReadState" id="xmlTextReaderReadState"></a>Function: xmlTextReaderReadState</h3><pre class="programlisting">int	xmlTextReaderReadState	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Gets the read state of the reader.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the state value, or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderCurrentNode" id="xmlTextReaderCurrentNode"></a>Function: xmlTextReaderCurrentNode</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlTextReaderCurrentNode	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Hacking interface allowing to get the <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> correponding to the current node being accessed by the xmlTextReader. This is dangerous because the underlying node may be destroyed on the next Reads.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderConstString" id="xmlTextReaderConstString"></a>Function: xmlTextReaderConstString</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderConstString	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
-</pre><p>Get an interned string from the reader, allows for example to speedup string name comparisons</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the string to intern.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an interned copy of the string or NULL in case of error. The string will be deallocated with the reader.</td></tr></tbody></table></div><h3><a name="xmlTextReaderSetParserProp" id="xmlTextReaderSetParserProp"></a>Function: xmlTextReaderSetParserProp</h3><pre class="programlisting">int	xmlTextReaderSetParserProp	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 int prop, <br />				 int value)<br />
-</pre><p>Change the parser processing behaviour by changing some of its internal properties. Note that some properties can only be changed before any read has been done.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>prop</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlParserProperties">xmlParserProperties</a> to set</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>usually 0 or 1 to (de)activate it</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the call was successful, or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlNewTextReader" id="xmlNewTextReader"></a>Function: xmlNewTextReader</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlNewTextReader	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />				 const char * URI)<br />
-</pre><p>Create an <a href="libxml-xmlreader.html#xmlTextReader">xmlTextReader</a> structure fed with @input</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> used to read data</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI information for the source if available</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderDepth" id="xmlTextReaderDepth"></a>Function: xmlTextReaderDepth</h3><pre class="programlisting">int	xmlTextReaderDepth	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>The depth of the node in the tree.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the depth or -1 in case of error</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlTextReaderSetErrorHandler" id="xmlTextReaderSetErrorHandler"></a>Function: xmlTextReaderSetErrorHandler</h3><pre class="programlisting">void	xmlTextReaderSetErrorHandler	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 <a href="libxml-xmlreader.html#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a> f, <br />				 void * arg)<br />
-</pre><p>Register a callback function that will be called on error and warnings. If @f is NULL, the default error and warning handlers are restored.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the callback function to call on error and warnings</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>a user argument to pass to the callback function</td></tr></tbody></table></div><h3><a name="xmlTextReaderMoveToNextAttribute" id="xmlTextReaderMoveToNextAttribute"></a>Function: xmlTextReaderMoveToNextAttribute</h3><pre class="programlisting">int	xmlTextReaderMoveToNextAttribute	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Moves the position of the current instance to the next <a href="libxml-SAX.html#attribute">attribute</a> associated with the current node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, -1 in case of error, 0 if not found</td></tr></tbody></table></div><h3><a name="xmlReaderNewWalker" id="xmlReaderNewWalker"></a>Function: xmlReaderNewWalker</h3><pre class="programlisting">int	xmlReaderNewWalker	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><p>Setup an xmltextReader to parse a preparsed XML document. This reuses the existing @reader xmlTextReader.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>an XML reader</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a preparsed document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlReaderNewDoc" id="xmlReaderNewDoc"></a>Function: xmlReaderNewDoc</h3><pre class="programlisting">int	xmlReaderNewDoc	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * cur, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
-</pre><p>Setup an xmltextReader to parse an XML in-memory document. The parsing flags @options are a combination of xmlParserOption(s). This reuses the existing @reader xmlTextReader.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>an XML reader</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>a pointer to a zero terminated string</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderConstPrefix" id="xmlTextReaderConstPrefix"></a>Function: xmlTextReaderConstPrefix</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderConstPrefix	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>A shorthand <a href="libxml-SAX.html#reference">reference</a> to the namespace associated with the node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the prefix or NULL if not available, the string is deallocated with the reader.</td></tr></tbody></table></div><h3><a name="xmlReaderWalker" id="xmlReaderWalker"></a>Function: xmlReaderWalker</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlReaderWalker	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string containing the XML content, or NULL if the current node is neither an element nor attribute, or has no child nodes. The string must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xmlReaderWalker" id="xmlReaderWalker"></a>Function: xmlReaderWalker</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlReaderWalker	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
 </pre><p>Create an xmltextReader for a preparsed document.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a preparsed document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new reader or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderConstXmlLang" id="xmlTextReaderConstXmlLang"></a>Function: xmlTextReaderConstXmlLang</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderConstXmlLang	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a preparsed document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new reader or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlReaderForIO" id="xmlReaderForIO"></a>Function: xmlReaderForIO</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlReaderForIO	(<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread, <br />					 <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose, <br />					 void * ioctx, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>Create an xmltextReader for an XML document from I/O functions and source. The parsing flags @options are a combination of xmlParserOption(s).</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ioread</tt></i>:</span></td><td>an I/O read function</td></tr><tr><td><span class="term"><i><tt>ioclose</tt></i>:</span></td><td>an I/O close function</td></tr><tr><td><span class="term"><i><tt>ioctx</tt></i>:</span></td><td>an I/O handler</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new reader or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderIsValid" id="xmlTextReaderIsValid"></a>Function: xmlTextReaderIsValid</h3><pre class="programlisting">int	xmlTextReaderIsValid		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Retrieve the validity status from the parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the flag value 1 if valid, 0 if no, and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderConstXmlLang" id="xmlTextReaderConstXmlLang"></a>Function: xmlTextReaderConstXmlLang</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderConstXmlLang	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
 </pre><p>The xml:lang scope within which the node resides.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the xml:lang value or NULL if none exists.</td></tr></tbody></table></div><h3><a name="xmlTextReaderConstLocalName" id="xmlTextReaderConstLocalName"></a>Function: xmlTextReaderConstLocalName</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderConstLocalName	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>The local name of the node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the local name or NULL if not available, the string will be deallocated with the reader.</td></tr></tbody></table></div><h3><a name="xmlTextReaderNodeType" id="xmlTextReaderNodeType"></a>Function: xmlTextReaderNodeType</h3><pre class="programlisting">int	xmlTextReaderNodeType	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the xml:lang value or NULL if none exists.</td></tr></tbody></table></div><h3><a name="xmlTextReaderConstString" id="xmlTextReaderConstString"></a>Function: xmlTextReaderConstString</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderConstString	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
+</pre><p>Get an interned string from the reader, allows for example to speedup string name comparisons</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the string to intern.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an interned copy of the string or NULL in case of error. The string will be deallocated with the reader.</td></tr></tbody></table></div><h3><a name="xmlTextReaderNodeType" id="xmlTextReaderNodeType"></a>Function: xmlTextReaderNodeType</h3><pre class="programlisting">int	xmlTextReaderNodeType		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
 </pre><p>Get the node type of the current node Reference: http://dotgnu.org/pnetlib-doc/System/Xml/XmlNodeType.html</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the xmlNodeType of the current node or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderGetErrorHandler" id="xmlTextReaderGetErrorHandler"></a>Function: xmlTextReaderGetErrorHandler</h3><pre class="programlisting">void	xmlTextReaderGetErrorHandler	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 <a href="libxml-xmlreader.html#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a> * f, <br />				 void ** arg)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the xmlNodeType of the current node or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderNormalization" id="xmlTextReaderNormalization"></a>Function: xmlTextReaderNormalization</h3><pre class="programlisting">int	xmlTextReaderNormalization	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>The value indicating whether to normalize white space and <a href="libxml-SAX.html#attribute">attribute</a> values. Since <a href="libxml-SAX.html#attribute">attribute</a> value and end of line normalizations are a MUST in the XML specification only the value true is accepted. The broken bahaviour of accepting out of range character entities like &amp;#0; is of course not supported either.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderGetErrorHandler" id="xmlTextReaderGetErrorHandler"></a>Function: xmlTextReaderGetErrorHandler</h3><pre class="programlisting">void	xmlTextReaderGetErrorHandler	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 <a href="libxml-xmlreader.html#xmlTextReaderErrorFunc">xmlTextReaderErrorFunc</a> * f, <br />					 void ** arg)<br />
 </pre><p>Retrieve the error callback function and user argument.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the callback function or NULL is no callback has been registered</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>a user argument</td></tr></tbody></table></div><h3><a name="xmlReaderNewFile" id="xmlReaderNewFile"></a>Function: xmlReaderNewFile</h3><pre class="programlisting">int	xmlReaderNewFile	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const char * filename, <br />				 const char * encoding, <br />				 int options)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the callback function or NULL is no callback has been registered</td></tr><tr><td><span class="term"><i><tt>arg</tt></i>:</span></td><td>a user argument</td></tr></tbody></table></div><h3><a name="xmlTextReaderConstPrefix" id="xmlTextReaderConstPrefix"></a>Function: xmlTextReaderConstPrefix</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderConstPrefix	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>A shorthand <a href="libxml-SAX.html#reference">reference</a> to the namespace associated with the node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the prefix or NULL if not available, the string is deallocated with the reader.</td></tr></tbody></table></div><h3><a name="xmlTextReaderGetParserProp" id="xmlTextReaderGetParserProp"></a>Function: xmlTextReaderGetParserProp</h3><pre class="programlisting">int	xmlTextReaderGetParserProp	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 int prop)<br />
+</pre><p>Read the parser internal property.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>prop</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlParserProperties">xmlParserProperties</a> to get</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value, usually 0 or 1, or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderGetRemainder" id="xmlTextReaderGetRemainder"></a>Function: xmlTextReaderGetRemainder</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>	xmlTextReaderGetRemainder	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Method to get the remainder of the buffered XML. this method stops the parser, set its state to End Of File and return the input stream with what is left that the parser did not use.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> attached to the XML or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlReaderNewFile" id="xmlReaderNewFile"></a>Function: xmlReaderNewFile</h3><pre class="programlisting">int	xmlReaderNewFile		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 const char * filename, <br />					 const char * encoding, <br />					 int options)<br />
 </pre><p>parse an XML file from the filesystem or the network. The parsing flags @options are a combination of xmlParserOption(s). This reuses the existing @reader xmlTextReader.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>an XML reader</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file or URL</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlFreeTextReader" id="xmlFreeTextReader"></a>Function: xmlFreeTextReader</h3><pre class="programlisting">void	xmlFreeTextReader	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>an XML reader</td></tr><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>a file or URL</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlFreeTextReader" id="xmlFreeTextReader"></a>Function: xmlFreeTextReader</h3><pre class="programlisting">void	xmlFreeTextReader		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
 </pre><p>Deallocate all the resources associated to the reader</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a></td></tr></tbody></table></div><h3><a name="xmlTextReaderIsDefault" id="xmlTextReaderIsDefault"></a>Function: xmlTextReaderIsDefault</h3><pre class="programlisting">int	xmlTextReaderIsDefault	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Whether an Attribute node was generated from the default value defined in the DTD or schema.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if not defaulted, 1 if defaulted, and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderName" id="xmlTextReaderName"></a>Function: xmlTextReaderName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderName	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a></td></tr></tbody></table></div><h3><a name="xmlTextReaderMoveToAttribute" id="xmlTextReaderMoveToAttribute"></a>Function: xmlTextReaderMoveToAttribute</h3><pre class="programlisting">int	xmlTextReaderMoveToAttribute	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Moves the position of the current instance to the <a href="libxml-SAX.html#attribute">attribute</a> with the specified qualified name.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the qualified name of the attribute.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, -1 in case of error, 0 if not found</td></tr></tbody></table></div><h3><a name="xmlTextReaderRelaxNGSetSchema" id="xmlTextReaderRelaxNGSetSchema"></a>Function: xmlTextReaderRelaxNGSetSchema</h3><pre class="programlisting">int	xmlTextReaderRelaxNGSetSchema	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 <a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
+</pre><p>Use RelaxNG to validate the document as it is processed. Activation is only possible before the first Read(). if @schema is NULL, then RelaxNG validation is desactivated. @ The @schema should not be freed until the reader is deallocated or its use has been deactivated.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a precompiled RelaxNG schema</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case the RelaxNG validation could be (des)activated and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderName" id="xmlTextReaderName"></a>Function: xmlTextReaderName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderName	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
 </pre><p>The qualified name of the node, equal to Prefix :LocalName.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the local name or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlReaderNewFd" id="xmlReaderNewFd"></a>Function: xmlReaderNewFd</h3><pre class="programlisting">int	xmlReaderNewFd	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 int fd, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the local name or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlReaderNewFd" id="xmlReaderNewFd"></a>Function: xmlReaderNewFd</h3><pre class="programlisting">int	xmlReaderNewFd			(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 int fd, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
 </pre><p>Setup an xmltextReader to parse an XML from a file descriptor. The parsing flags @options are a combination of xmlParserOption(s). This reuses the existing @reader xmlTextReader.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>an XML reader</td></tr><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>an open file descriptor</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderRead" id="xmlTextReaderRead"></a>Function: xmlTextReaderRead</h3><pre class="programlisting">int	xmlTextReaderRead	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Moves the position of the current instance to the next node in the stream, exposing its properties.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the node was read successfully, 0 if there is no more nodes to read, or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderRelaxNGValidate" id="xmlTextReaderRelaxNGValidate"></a>Function: xmlTextReaderRelaxNGValidate</h3><pre class="programlisting">int	xmlTextReaderRelaxNGValidate	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 const char * rng)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>an XML reader</td></tr><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>an open file descriptor</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderNextSibling" id="xmlTextReaderNextSibling"></a>Function: xmlTextReaderNextSibling</h3><pre class="programlisting">int	xmlTextReaderNextSibling	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Skip to the node following the current one in document order while avoiding the subtree if any. Currently implemented only for Readers built on a document</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the node was read successfully, 0 if there is no more nodes to read, or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderRelaxNGValidate" id="xmlTextReaderRelaxNGValidate"></a>Function: xmlTextReaderRelaxNGValidate</h3><pre class="programlisting">int	xmlTextReaderRelaxNGValidate	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 const char * rng)<br />
 </pre><p>Use RelaxNG to validate the document as it is processed. Activation is only possible before the first Read(). if @rng is NULL, then RelaxNG validation is desactivated.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>rng</tt></i>:</span></td><td>the path to a RelaxNG schema or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case the RelaxNG validation could be (des)activated and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderIsEmptyElement" id="xmlTextReaderIsEmptyElement"></a>Function: xmlTextReaderIsEmptyElement</h3><pre class="programlisting">int	xmlTextReaderIsEmptyElement	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
 </pre><p>Check if the current node is empty</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if empty, 0 if not and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlReaderForMemory" id="xmlReaderForMemory"></a>Function: xmlReaderForMemory</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlReaderForMemory	(const char * buffer, <br />				 int size, <br />				 const char * URL, <br />				 const char * encoding, <br />				 int options)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if empty, 0 if not and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderCurrentDoc" id="xmlTextReaderCurrentDoc"></a>Function: xmlTextReaderCurrentDoc</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	xmlTextReaderCurrentDoc	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Hacking interface allowing to get the <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> correponding to the current document being accessed by the xmlTextReader. NOTE: as a result of this call, the reader will not destroy the associated XML document and calling xmlFreeDoc() on the result is needed once the reader parsing has finished.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlReaderForMemory" id="xmlReaderForMemory"></a>Function: xmlReaderForMemory</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlReaderForMemory	(const char * buffer, <br />						 int size, <br />						 const char * URL, <br />						 const char * encoding, <br />						 int options)<br />
 </pre><p>Create an xmltextReader for an XML in-memory document. The parsing flags @options are a combination of xmlParserOption(s).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new reader or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderLocatorBaseURI" id="xmlTextReaderLocatorBaseURI"></a>Function: xmlTextReaderLocatorBaseURI</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderLocatorBaseURI	(<a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator)<br />
-</pre><p>Obtain the base URI for the given locator.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>locator</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the base URI or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderNamespaceUri" id="xmlTextReaderNamespaceUri"></a>Function: xmlTextReaderNamespaceUri</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderNamespaceUri	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>The URI defining the namespace associated with the node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace URI or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlTextReaderRelaxNGSetSchema" id="xmlTextReaderRelaxNGSetSchema"></a>Function: xmlTextReaderRelaxNGSetSchema</h3><pre class="programlisting">int	xmlTextReaderRelaxNGSetSchema	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />				 <a href="libxml-relaxng.html#xmlRelaxNGPtr">xmlRelaxNGPtr</a> schema)<br />
-</pre><p>Use RelaxNG to validate the document as it is processed. Activation is only possible before the first Read(). if @schema is NULL, then RelaxNG validation is desactivated. @ The @schema should not be freed until the reader is deallocated or its use has been deactivated.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a precompiled RelaxNG schema</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case the RelaxNG validation could be (des)activated and -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderReadAttributeValue" id="xmlTextReaderReadAttributeValue"></a>Function: xmlTextReaderReadAttributeValue</h3><pre class="programlisting">int	xmlTextReaderReadAttributeValue	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Parses an <a href="libxml-SAX.html#attribute">attribute</a> value into one or more Text and EntityReference nodes.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, 0 if the reader was not positionned on an ttribute node or all the <a href="libxml-SAX.html#attribute">attribute</a> values have been read, or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderHasValue" id="xmlTextReaderHasValue"></a>Function: xmlTextReaderHasValue</h3><pre class="programlisting">int	xmlTextReaderHasValue	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
-</pre><p>Whether the node can have a text value.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true, 0 if false, and -1 in case or error</td></tr></tbody></table></div><h3><a name="xmlTextReaderConstBaseUri" id="xmlTextReaderConstBaseUri"></a>Function: xmlTextReaderConstBaseUri</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderConstBaseUri	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new reader or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderConstBaseUri" id="xmlTextReaderConstBaseUri"></a>Function: xmlTextReaderConstBaseUri</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderConstBaseUri	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
 </pre><p>The base URI of the node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the base URI or NULL if not available, the string will be deallocated with the reader</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the base URI or NULL if not available, the string will be deallocated with the reader</td></tr></tbody></table></div><h3><a name="xmlReaderForFd" id="xmlReaderForFd"></a>Function: xmlReaderForFd</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlReaderForFd	(int fd, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>Create an xmltextReader for an XML from a file descriptor. The parsing flags @options are a combination of xmlParserOption(s).</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>fd</tt></i>:</span></td><td>an open file descriptor</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new reader or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderMoveToFirstAttribute" id="xmlTextReaderMoveToFirstAttribute"></a>Function: xmlTextReaderMoveToFirstAttribute</h3><pre class="programlisting">int	xmlTextReaderMoveToFirstAttribute	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Moves the position of the current instance to the first <a href="libxml-SAX.html#attribute">attribute</a> associated with the current node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 in case of success, -1 in case of error, 0 if not found</td></tr></tbody></table></div><h3><a name="xmlTextReaderPrefix" id="xmlTextReaderPrefix"></a>Function: xmlTextReaderPrefix</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderPrefix	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>A shorthand <a href="libxml-SAX.html#reference">reference</a> to the namespace associated with the node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the prefix or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlTextReaderLocatorBaseURI" id="xmlTextReaderLocatorBaseURI"></a>Function: xmlTextReaderLocatorBaseURI</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderLocatorBaseURI	(<a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> locator)<br />
+</pre><p>Obtain the base URI for the given locator.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>locator</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderLocatorPtr">xmlTextReaderLocatorPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the base URI or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderGetAttribute" id="xmlTextReaderGetAttribute"></a>Function: xmlTextReaderGetAttribute</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderGetAttribute	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Provides the value of the <a href="libxml-SAX.html#attribute">attribute</a> with the specified qualified name.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the qualified name of the attribute.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string containing the value of the specified attribute, or NULL in case of error. The string must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xmlReaderNewMemory" id="xmlReaderNewMemory"></a>Function: xmlReaderNewMemory</h3><pre class="programlisting">int	xmlReaderNewMemory		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 const char * buffer, <br />					 int size, <br />					 const char * URL, <br />					 const char * encoding, <br />					 int options)<br />
+</pre><p>Setup an xmltextReader to parse an XML in-memory document. The parsing flags @options are a combination of xmlParserOption(s). This reuses the existing @reader xmlTextReader.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>an XML reader</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the base URL to use for the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding, or NULL</td></tr><tr><td><span class="term"><i><tt>options</tt></i>:</span></td><td>a combination of xmlParserOption(s)</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderConstValue" id="xmlTextReaderConstValue"></a>Function: xmlTextReaderConstValue</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderConstValue	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Provides the text value of the node if present</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the string or NULL if not available. The result will be deallocated on the next Read() operation.</td></tr></tbody></table></div><h3><a name="xmlNewTextReader" id="xmlNewTextReader"></a>Function: xmlNewTextReader</h3><pre class="programlisting"><a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a>	xmlNewTextReader	(<a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />						 const char * URI)<br />
+</pre><p>Create an <a href="libxml-xmlreader.html#xmlTextReader">xmlTextReader</a> structure fed with @input</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> used to read data</td></tr><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>the URI information for the source if available</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderGetAttributeNo" id="xmlTextReaderGetAttributeNo"></a>Function: xmlTextReaderGetAttributeNo</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderGetAttributeNo	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />						 int no)<br />
+</pre><p>Provides the value of the <a href="libxml-SAX.html#attribute">attribute</a> with the specified index relative to the containing element.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>no</tt></i>:</span></td><td>the zero-based index of the <a href="libxml-SAX.html#attribute">attribute</a> relative to the containing element</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string containing the value of the specified attribute, or NULL in case of error. The string must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xmlTextReaderLocalName" id="xmlTextReaderLocalName"></a>Function: xmlTextReaderLocalName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderLocalName	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>The local name of the node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the local name or NULL if not available</td></tr></tbody></table></div><h3><a name="xmlTextReaderGetAttributeNs" id="xmlTextReaderGetAttributeNs"></a>Function: xmlTextReaderGetAttributeNs</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderGetAttributeNs	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * localName, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)<br />
+</pre><p>Provides the value of the specified <a href="libxml-SAX.html#attribute">attribute</a></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>localName</tt></i>:</span></td><td>the local name of the attribute.</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>the namespace URI of the attribute.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a string containing the value of the specified attribute, or NULL in case of error. The string must be deallocated by the caller.</td></tr></tbody></table></div><h3><a name="xmlTextReaderConstName" id="xmlTextReaderConstName"></a>Function: xmlTextReaderConstName</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderConstName	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>The qualified name of the node, equal to Prefix :LocalName.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the local name or NULL if not available, the string is deallocated with the reader.</td></tr></tbody></table></div><h3><a name="xmlTextReaderHasValue" id="xmlTextReaderHasValue"></a>Function: xmlTextReaderHasValue</h3><pre class="programlisting">int	xmlTextReaderHasValue		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Whether the node can have a text value.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true, 0 if false, and -1 in case or error</td></tr></tbody></table></div><h3><a name="xmlTextReaderPreserve" id="xmlTextReaderPreserve"></a>Function: xmlTextReaderPreserve</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlTextReaderPreserve	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>current node being accessed by the xmlTextReader. This is dangerous because the underlying node may be destroyed on the next Reads.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderAttributeCount" id="xmlTextReaderAttributeCount"></a>Function: xmlTextReaderAttributeCount</h3><pre class="programlisting">int	xmlTextReaderAttributeCount	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Provides the number of attributes of the current node</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 i no attributes, -1 in case of error or the <a href="libxml-SAX.html#attribute">attribute</a> count</td></tr></tbody></table></div><h3><a name="xmlTextReaderReadState" id="xmlTextReaderReadState"></a>Function: xmlTextReaderReadState</h3><pre class="programlisting">int	xmlTextReaderReadState		(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Gets the read state of the reader.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the state value, or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextReaderCurrentNode" id="xmlTextReaderCurrentNode"></a>Function: xmlTextReaderCurrentNode</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlTextReaderCurrentNode	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>Hacking interface allowing to get the <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> correponding to the current node being accessed by the xmlTextReader. This is dangerous because the underlying node may be destroyed on the next Reads.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlTextReaderConstLocalName" id="xmlTextReaderConstLocalName"></a>Function: xmlTextReaderConstLocalName</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlTextReaderConstLocalName	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader)<br />
+</pre><p>The local name of the node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the local name or NULL if not available, the string will be deallocated with the reader.</td></tr></tbody></table></div><h3><a name="xmlTextReaderSetParserProp" id="xmlTextReaderSetParserProp"></a>Function: xmlTextReaderSetParserProp</h3><pre class="programlisting">int	xmlTextReaderSetParserProp	(<a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> reader, <br />					 int prop, <br />					 int value)<br />
+</pre><p>Change the parser processing behaviour by changing some of its internal properties. Note that some properties can only be changed before any read has been done.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>reader</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlTextReaderPtr">xmlTextReaderPtr</a> used</td></tr><tr><td><span class="term"><i><tt>prop</tt></i>:</span></td><td>the <a href="libxml-xmlreader.html#xmlParserProperties">xmlParserProperties</a> to set</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>usually 0 or 1 to (de)activate it</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the call was successful, or -1 in case of error</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-xmlregexp.html b/doc/html/libxml-xmlregexp.html
index ce5c477..1a50a12 100644
--- a/doc/html/libxml-xmlregexp.html
+++ b/doc/html/libxml-xmlregexp.html
@@ -10,50 +10,48 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xmlregexp from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlregexp from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlreader.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlreader.html">xmlreader</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlschemas.html">xmlschemas</a></th><td><a accesskey="n" href="libxml-xmlschemas.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>basic API for libxml regular expressions handling used for XML Schemas and validation. </p><h2>Table of Contents</h2><pre class="programlisting">void	<a href="#xmlRegFreeExecCtxt">xmlRegFreeExecCtxt</a>	(<a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a> exec)<br />
-</pre><pre class="programlisting">int	<a href="#xmlRegexpExec">xmlRegexpExec</a>	(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> comp, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting"><a name="xmlRegExecCallbacks" id="xmlRegExecCallbacks"></a>Function type: xmlRegExecCallbacks
-void	xmlRegExecCallbacks	(<a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a> exec, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />				 void * transdata, <br />				 void * inputdata)
-</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>exec</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>transdata</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>inputdata</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
-<pre class="programlisting">Typedef <a href="libxml-xmlregexp.html#xmlRegExecCtxt">xmlRegExecCtxt</a> * <a name="xmlRegExecCtxtPtr" id="xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlRegExecPushString2">xmlRegExecPushString2</a>	(<a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a> exec, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value2, <br />				 void * data)<br />
-</pre><pre class="programlisting">void	<a href="#xmlRegFreeRegexp">xmlRegFreeRegexp</a>	(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> regexp)<br />
-</pre><pre class="programlisting">Structure <a name="xmlRegExecCtxt" id="xmlRegExecCtxt">xmlRegExecCtxt</a><br />struct _xmlRegExecCtxt {
+    </style><title>Module xmlregexp from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlregexp from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlreader.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlreader.html">xmlreader</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlschemas.html">xmlschemas</a></th><td><a accesskey="n" href="libxml-xmlschemas.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>basic API for libxml regular expressions handling used for XML Schemas and validation. </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xmlRegExecCtxt">xmlRegExecCtxt</a><br />struct _xmlRegExecCtxt
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">Structure <a name="xmlRegexp" id="xmlRegexp">xmlRegexp</a><br />struct _xmlRegexp {
+</pre><pre class="programlisting">Typedef <a href="libxml-xmlregexp.html#xmlRegExecCtxt">xmlRegExecCtxt</a> * <a name="xmlRegExecCtxtPtr" id="xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlRegexp">xmlRegexp</a><br />struct _xmlRegexp
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">Typedef <a href="libxml-xmlregexp.html#xmlRegexp">xmlRegexp</a> * <a name="xmlRegexpPtr" id="xmlRegexpPtr">xmlRegexpPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlRegExecPushString">xmlRegExecPushString</a>	(<a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a> exec, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 void * data)<br />
-</pre><pre class="programlisting">int	<a href="#xmlRegexpIsDeterminist">xmlRegexpIsDeterminist</a>	(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> comp)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a>	<a href="#xmlRegNewExecCtxt">xmlRegNewExecCtxt</a>	(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> comp, <br />				 <a href="libxml-xmlregexp.html#xmlRegExecCallbacks">xmlRegExecCallbacks</a> callback, <br />				 void * data)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a>	<a href="#xmlRegexpCompile">xmlRegexpCompile</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * regexp)<br />
-</pre><pre class="programlisting">void	<a href="#xmlRegexpPrint">xmlRegexpPrint</a>	(FILE * output, <br />				 <a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> regexp)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlRegFreeExecCtxt" id="xmlRegFreeExecCtxt"></a>Function: xmlRegFreeExecCtxt</h3><pre class="programlisting">void	xmlRegFreeExecCtxt	(<a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a> exec)<br />
+</pre><pre class="programlisting">Typedef <a href="libxml-xmlregexp.html#xmlRegexp">xmlRegexp</a> * <a name="xmlRegexpPtr" id="xmlRegexpPtr">xmlRegexpPtr</a>
+</pre><pre class="programlisting">Function type: <a href="#xmlRegExecCallbacks">xmlRegExecCallbacks</a>
+void	<a href="#xmlRegExecCallbacks">xmlRegExecCallbacks</a>		(<a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a> exec, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />					 void * transdata, <br />					 void * inputdata)
+</pre>
+<pre class="programlisting">int	<a href="#xmlRegExecPushString">xmlRegExecPushString</a>		(<a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a> exec, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 void * data)</pre>
+<pre class="programlisting">int	<a href="#xmlRegExecPushString2">xmlRegExecPushString2</a>		(<a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a> exec, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value2, <br />					 void * data)</pre>
+<pre class="programlisting">void	<a href="#xmlRegFreeExecCtxt">xmlRegFreeExecCtxt</a>		(<a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a> exec)</pre>
+<pre class="programlisting">void	<a href="#xmlRegFreeRegexp">xmlRegFreeRegexp</a>		(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> regexp)</pre>
+<pre class="programlisting"><a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a>	<a href="#xmlRegNewExecCtxt">xmlRegNewExecCtxt</a>	(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> comp, <br />						 <a href="libxml-xmlregexp.html#xmlRegExecCallbacks">xmlRegExecCallbacks</a> callback, <br />						 void * data)</pre>
+<pre class="programlisting"><a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a>	<a href="#xmlRegexpCompile">xmlRegexpCompile</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * regexp)</pre>
+<pre class="programlisting">int	<a href="#xmlRegexpExec">xmlRegexpExec</a>			(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> comp, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">int	<a href="#xmlRegexpIsDeterminist">xmlRegexpIsDeterminist</a>		(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> comp)</pre>
+<pre class="programlisting">void	<a href="#xmlRegexpPrint">xmlRegexpPrint</a>			(FILE * output, <br />					 <a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> regexp)</pre>
+<h2>Description</h2>
+<h3><a name="xmlRegexp" id="xmlRegexp">Structure xmlRegexp</a></h3><pre class="programlisting">Structure xmlRegexp<br />struct _xmlRegexp {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlRegExecCtxt" id="xmlRegExecCtxt">Structure xmlRegExecCtxt</a></h3><pre class="programlisting">Structure xmlRegExecCtxt<br />struct _xmlRegExecCtxt {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlRegFreeExecCtxt" id="xmlRegFreeExecCtxt"></a>Function: xmlRegFreeExecCtxt</h3><pre class="programlisting">void	xmlRegFreeExecCtxt		(<a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a> exec)<br />
 </pre><p>Free the structures associated to a regular expression evaulation context.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>exec</tt></i>:</span></td><td>a regular expression evaulation context</td></tr></tbody></table></div><h3><a name="xmlRegexpExec" id="xmlRegexpExec"></a>Function: xmlRegexpExec</h3><pre class="programlisting">int	xmlRegexpExec	(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> comp, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><p>Check if the regular expression generate the value</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the compiled regular expression</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the value to check against the regular expression</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if it matches, 0 if not and a negativa value in case of error</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlRegExecPushString2" id="xmlRegExecPushString2"></a>Function: xmlRegExecPushString2</h3><pre class="programlisting">int	xmlRegExecPushString2	(<a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a> exec, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value2, <br />				 void * data)<br />
-</pre><p>Push one input token in the execution context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>exec</tt></i>:</span></td><td>a regexp execution context or NULL to indicate the end</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the first string token input</td></tr><tr><td><span class="term"><i><tt>value2</tt></i>:</span></td><td>the second string token input</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data associated to the token to reuse in callbacks</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the regexp reached a final state, 0 if non-final, and a negative value in case of error.</td></tr></tbody></table></div><h3><a name="xmlRegFreeRegexp" id="xmlRegFreeRegexp"></a>Function: xmlRegFreeRegexp</h3><pre class="programlisting">void	xmlRegFreeRegexp	(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> regexp)<br />
-</pre><p>Free a regexp</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>regexp</tt></i>:</span></td><td>the regexp</td></tr></tbody></table></div><h3><a name="xmlRegExecPushString" id="xmlRegExecPushString"></a>Function: xmlRegExecPushString</h3><pre class="programlisting">int	xmlRegExecPushString	(<a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a> exec, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 void * data)<br />
-</pre><p>Push one input token in the execution context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>exec</tt></i>:</span></td><td>a regexp execution context or NULL to indicate the end</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>a string token input</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data associated to the token to reuse in callbacks</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the regexp reached a final state, 0 if non-final, and a negative value in case of error.</td></tr></tbody></table></div><h3><a name="xmlRegexpIsDeterminist" id="xmlRegexpIsDeterminist"></a>Function: xmlRegexpIsDeterminist</h3><pre class="programlisting">int	xmlRegexpIsDeterminist	(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> comp)<br />
-</pre><p>Check if the regular expression is determinist</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the compiled regular expression</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if it yes, 0 if not and a negativa value in case of error</td></tr></tbody></table></div><h3><a name="xmlRegNewExecCtxt" id="xmlRegNewExecCtxt"></a>Function: xmlRegNewExecCtxt</h3><pre class="programlisting"><a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a>	xmlRegNewExecCtxt	(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> comp, <br />				 <a href="libxml-xmlregexp.html#xmlRegExecCallbacks">xmlRegExecCallbacks</a> callback, <br />				 void * data)<br />
-</pre><p>Build a context used for progressive evaluation of a regexp.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>a precompiled regular expression</td></tr><tr><td><span class="term"><i><tt>callback</tt></i>:</span></td><td>a callback function used for handling progresses in the automata matching phase</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the context data associated to the callback in this context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new context</td></tr></tbody></table></div><h3><a name="xmlRegexpCompile" id="xmlRegexpCompile"></a>Function: xmlRegexpCompile</h3><pre class="programlisting"><a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a>	xmlRegexpCompile	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * regexp)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>exec</tt></i>:</span></td><td>a regular expression evaulation context</td></tr></tbody></table></div><h3><a name="xmlRegexpCompile" id="xmlRegexpCompile"></a>Function: xmlRegexpCompile</h3><pre class="programlisting"><a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a>	xmlRegexpCompile	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * regexp)<br />
 </pre><p>Parses a regular expression conforming to XML Schemas Part 2 Datatype Appendix F and build an automata suitable for testing strings against that regular expression</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>regexp</tt></i>:</span></td><td>a regular expression string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the compiled expression or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlRegexpPrint" id="xmlRegexpPrint"></a>Function: xmlRegexpPrint</h3><pre class="programlisting">void	xmlRegexpPrint	(FILE * output, <br />				 <a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> regexp)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>regexp</tt></i>:</span></td><td>a regular expression string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the compiled expression or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlRegExecCallbacks" id="xmlRegExecCallbacks"></a>Function type: xmlRegExecCallbacks</h3><pre class="programlisting">Function type: xmlRegExecCallbacks
+void	xmlRegExecCallbacks		(<a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a> exec, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * token, <br />					 void * transdata, <br />					 void * inputdata)
+</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>exec</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>transdata</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>inputdata</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
+<h3><a name="xmlRegNewExecCtxt" id="xmlRegNewExecCtxt"></a>Function: xmlRegNewExecCtxt</h3><pre class="programlisting"><a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a>	xmlRegNewExecCtxt	(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> comp, <br />						 <a href="libxml-xmlregexp.html#xmlRegExecCallbacks">xmlRegExecCallbacks</a> callback, <br />						 void * data)<br />
+</pre><p>Build a context used for progressive evaluation of a regexp.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>a precompiled regular expression</td></tr><tr><td><span class="term"><i><tt>callback</tt></i>:</span></td><td>a callback function used for handling progresses in the automata matching phase</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the context data associated to the callback in this context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new context</td></tr></tbody></table></div><h3><a name="xmlRegexpIsDeterminist" id="xmlRegexpIsDeterminist"></a>Function: xmlRegexpIsDeterminist</h3><pre class="programlisting">int	xmlRegexpIsDeterminist		(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> comp)<br />
+</pre><p>Check if the regular expression is determinist</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the compiled regular expression</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if it yes, 0 if not and a negativa value in case of error</td></tr></tbody></table></div><h3><a name="xmlRegExecPushString2" id="xmlRegExecPushString2"></a>Function: xmlRegExecPushString2</h3><pre class="programlisting">int	xmlRegExecPushString2		(<a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a> exec, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value2, <br />					 void * data)<br />
+</pre><p>Push one input token in the execution context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>exec</tt></i>:</span></td><td>a regexp execution context or NULL to indicate the end</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the first string token input</td></tr><tr><td><span class="term"><i><tt>value2</tt></i>:</span></td><td>the second string token input</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data associated to the token to reuse in callbacks</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the regexp reached a final state, 0 if non-final, and a negative value in case of error.</td></tr></tbody></table></div><h3><a name="xmlRegExecPushString" id="xmlRegExecPushString"></a>Function: xmlRegExecPushString</h3><pre class="programlisting">int	xmlRegExecPushString		(<a href="libxml-xmlregexp.html#xmlRegExecCtxtPtr">xmlRegExecCtxtPtr</a> exec, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 void * data)<br />
+</pre><p>Push one input token in the execution context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>exec</tt></i>:</span></td><td>a regexp execution context or NULL to indicate the end</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>a string token input</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data associated to the token to reuse in callbacks</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the regexp reached a final state, 0 if non-final, and a negative value in case of error.</td></tr></tbody></table></div><h3><a name="xmlRegexpExec" id="xmlRegexpExec"></a>Function: xmlRegexpExec</h3><pre class="programlisting">int	xmlRegexpExec			(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> comp, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+</pre><p>Check if the regular expression generate the value</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the compiled regular expression</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the value to check against the regular expression</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if it matches, 0 if not and a negativa value in case of error</td></tr></tbody></table></div><h3><a name="xmlRegFreeRegexp" id="xmlRegFreeRegexp"></a>Function: xmlRegFreeRegexp</h3><pre class="programlisting">void	xmlRegFreeRegexp		(<a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> regexp)<br />
+</pre><p>Free a regexp</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>regexp</tt></i>:</span></td><td>the regexp</td></tr></tbody></table></div><h3><a name="xmlRegexpPrint" id="xmlRegexpPrint"></a>Function: xmlRegexpPrint</h3><pre class="programlisting">void	xmlRegexpPrint			(FILE * output, <br />					 <a href="libxml-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> regexp)<br />
 </pre><p>Print the content of the compiled regular expression</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the file for the output debug</td></tr><tr><td><span class="term"><i><tt>regexp</tt></i>:</span></td><td>the compiled regexp</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-xmlschemas.html b/doc/html/libxml-xmlschemas.html
index b3fa4ad..d491f8c 100644
--- a/doc/html/libxml-xmlschemas.html
+++ b/doc/html/libxml-xmlschemas.html
@@ -10,12 +10,54 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xmlschemas from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlschemas from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlregexp.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlregexp.html">xmlregexp</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlschemastypes.html">xmlschemastypes</a></th><td><a accesskey="n" href="libxml-xmlschemastypes.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>interface to the XML Schemas handling and schema validity checking, it is incomplete right now. </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a name="xmlSchemaParserCtxt" id="xmlSchemaParserCtxt">xmlSchemaParserCtxt</a><br />struct _xmlSchemaParserCtxt {
+    </style><title>Module xmlschemas from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlschemas from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlregexp.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlregexp.html">xmlregexp</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlschemastypes.html">xmlschemastypes</a></th><td><a accesskey="n" href="libxml-xmlschemastypes.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>interface to the XML Schemas handling and schema validity checking, it is incomplete right now. </p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xmlSchema">xmlSchema</a><br />struct _xmlSchema
+</pre><pre class="programlisting">Structure <a href="#xmlSchemaParserCtxt">xmlSchemaParserCtxt</a><br />struct _xmlSchemaParserCtxt
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a>	<a href="#xmlSchemaNewDocParserCtxt">xmlSchemaNewDocParserCtxt</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSchemaFree">xmlSchemaFree</a>	(<a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSchemaFreeValidCtxt">xmlSchemaFreeValidCtxt</a>	(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting">Enum <a name="xmlSchemaValidError" id="xmlSchemaValidError">xmlSchemaValidError</a> {
+</pre><pre class="programlisting">Typedef <a href="libxml-xmlschemas.html#xmlSchemaParserCtxt">xmlSchemaParserCtxt</a> * <a name="xmlSchemaParserCtxtPtr" id="xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-xmlschemas.html#xmlSchema">xmlSchema</a> * <a name="xmlSchemaPtr" id="xmlSchemaPtr">xmlSchemaPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlSchemaValidCtxt">xmlSchemaValidCtxt</a><br />struct _xmlSchemaValidCtxt
+The content of this structure is not made public by the API.
+</pre><pre class="programlisting">Typedef <a href="libxml-xmlschemas.html#xmlSchemaValidCtxt">xmlSchemaValidCtxt</a> * <a name="xmlSchemaValidCtxtPtr" id="xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a>
+</pre><pre class="programlisting">Enum <a href="#xmlSchemaValidError">xmlSchemaValidError</a>
+</pre><pre class="programlisting">void	<a href="#xmlSchemaDump">xmlSchemaDump</a>			(FILE * output, <br />					 <a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema)</pre>
+<pre class="programlisting">void	<a href="#xmlSchemaFree">xmlSchemaFree</a>			(<a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema)</pre>
+<pre class="programlisting">void	<a href="#xmlSchemaFreeParserCtxt">xmlSchemaFreeParserCtxt</a>		(<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlSchemaFreeValidCtxt">xmlSchemaFreeValidCtxt</a>		(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a>	<a href="#xmlSchemaNewDocParserCtxt">xmlSchemaNewDocParserCtxt</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a>	<a href="#xmlSchemaNewMemParserCtxt">xmlSchemaNewMemParserCtxt</a>	(const char * buffer, <br />							 int size)</pre>
+<pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a>	<a href="#xmlSchemaNewParserCtxt">xmlSchemaNewParserCtxt</a>	(const char * URL)</pre>
+<pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a>	<a href="#xmlSchemaNewValidCtxt">xmlSchemaNewValidCtxt</a>	(<a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema)</pre>
+<pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a>	<a href="#xmlSchemaParse">xmlSchemaParse</a>		(<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlSchemaSetParserErrors">xmlSchemaSetParserErrors</a>	(<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-xmlschemas.html#xmlSchemaValidityErrorFunc">xmlSchemaValidityErrorFunc</a> err, <br />					 <a href="libxml-xmlschemas.html#xmlSchemaValidityWarningFunc">xmlSchemaValidityWarningFunc</a> warn, <br />					 void * ctx)</pre>
+<pre class="programlisting">void	<a href="#xmlSchemaSetValidErrors">xmlSchemaSetValidErrors</a>		(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-xmlschemas.html#xmlSchemaValidityErrorFunc">xmlSchemaValidityErrorFunc</a> err, <br />					 <a href="libxml-xmlschemas.html#xmlSchemaValidityWarningFunc">xmlSchemaValidityWarningFunc</a> warn, <br />					 void * ctx)</pre>
+<pre class="programlisting">int	<a href="#xmlSchemaValidateDoc">xmlSchemaValidateDoc</a>		(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting">int	<a href="#xmlSchemaValidateStream">xmlSchemaValidateStream</a>		(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />					 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc, <br />					 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 void * user_data)</pre>
+<pre class="programlisting">Function type: <a href="#xmlSchemaValidityErrorFunc">xmlSchemaValidityErrorFunc</a>
+void	<a href="#xmlSchemaValidityErrorFunc">xmlSchemaValidityErrorFunc</a>	(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre>
+<pre class="programlisting">Function type: <a href="#xmlSchemaValidityWarningFunc">xmlSchemaValidityWarningFunc</a>
+void	<a href="#xmlSchemaValidityWarningFunc">xmlSchemaValidityWarningFunc</a>	(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre>
+<h2>Description</h2>
+<h3><a name="xmlSchemaParserCtxt" id="xmlSchemaParserCtxt">Structure xmlSchemaParserCtxt</a></h3><pre class="programlisting">Structure xmlSchemaParserCtxt<br />struct _xmlSchemaParserCtxt {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlSchema" id="xmlSchema">Structure xmlSchema</a></h3><pre class="programlisting">Structure xmlSchema<br />struct _xmlSchema {
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: schema name
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	targetNamespace	: the target namespace
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	version
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	id
+    <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	doc
+    <a href="libxml-schemasInternals.html#xmlSchemaAnnotPtr">xmlSchemaAnnotPtr</a>	annot
+    int	flags
+    <a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	typeDecl
+    <a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	attrDecl
+    <a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	attrgrpDecl
+    <a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	elemDecl
+    <a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	notaDecl
+    <a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	schemasImports
+    void *	_private	: unused by the library for users or bind
+    <a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	groupDecl
+}</pre><h3><a name="xmlSchemaValidError" id="xmlSchemaValidError">xmlSchemaValidError</a></h3><pre class="programlisting">Enum xmlSchemaValidError {
     <a name="XML_SCHEMAS_ERR_OK" id="XML_SCHEMAS_ERR_OK">XML_SCHEMAS_ERR_OK</a> = 0
     <a name="XML_SCHEMAS_ERR_NOROOT" id="XML_SCHEMAS_ERR_NOROOT">XML_SCHEMAS_ERR_NOROOT</a> = 1
     <a name="XML_SCHEMAS_ERR_UNDECLAREDELEM" id="XML_SCHEMAS_ERR_UNDECLAREDELEM">XML_SCHEMAS_ERR_UNDECLAREDELEM</a> = 2
@@ -43,100 +85,38 @@
     <a name="XML_SCHEMAS_ERR_" id="XML_SCHEMAS_ERR_">XML_SCHEMAS_ERR_</a> = 24
     <a name="XML_SCHEMAS_ERR_XXX" id="XML_SCHEMAS_ERR_XXX">XML_SCHEMAS_ERR_XXX</a> = 25
 }
-
-</pre><pre class="programlisting">void	<a href="#xmlSchemaFreeParserCtxt">xmlSchemaFreeParserCtxt</a>	(<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a>	<a href="#xmlSchemaNewParserCtxt">xmlSchemaNewParserCtxt</a>	(const char * URL)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSchemaValidateStream">xmlSchemaValidateStream</a>	(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc, <br />				 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-xmlschemas.html#xmlSchemaParserCtxt">xmlSchemaParserCtxt</a> * <a name="xmlSchemaParserCtxtPtr" id="xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlSchemaDump">xmlSchemaDump</a>	(FILE * output, <br />				 <a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSchemaSetValidErrors">xmlSchemaSetValidErrors</a>	(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-xmlschemas.html#xmlSchemaValidityErrorFunc">xmlSchemaValidityErrorFunc</a> err, <br />				 <a href="libxml-xmlschemas.html#xmlSchemaValidityWarningFunc">xmlSchemaValidityWarningFunc</a> warn, <br />				 void * ctx)<br />
-</pre><pre class="programlisting">Structure <a name="xmlSchemaValidCtxt" id="xmlSchemaValidCtxt">xmlSchemaValidCtxt</a><br />struct _xmlSchemaValidCtxt {
+</pre><h3><a name="xmlSchemaValidCtxt" id="xmlSchemaValidCtxt">Structure xmlSchemaValidCtxt</a></h3><pre class="programlisting">Structure xmlSchemaValidCtxt<br />struct _xmlSchemaValidCtxt {
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">int	<a href="#xmlSchemaValidateDoc">xmlSchemaValidateDoc</a>	(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting"><a name="xmlSchemaValidityErrorFunc" id="xmlSchemaValidityErrorFunc"></a>Function type: xmlSchemaValidityErrorFunc
-void	xmlSchemaValidityErrorFunc	(void * ctx, <br />				 const char * msg, <br />				 ... ...)
-</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
-<pre class="programlisting">Typedef <a href="libxml-xmlschemas.html#xmlSchema">xmlSchema</a> * <a name="xmlSchemaPtr" id="xmlSchemaPtr">xmlSchemaPtr</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlSchemaSetParserErrors">xmlSchemaSetParserErrors</a>	(<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-xmlschemas.html#xmlSchemaValidityErrorFunc">xmlSchemaValidityErrorFunc</a> err, <br />				 <a href="libxml-xmlschemas.html#xmlSchemaValidityWarningFunc">xmlSchemaValidityWarningFunc</a> warn, <br />				 void * ctx)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a>	<a href="#xmlSchemaParse">xmlSchemaParse</a>	(<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a name="xmlSchemaValidityWarningFunc" id="xmlSchemaValidityWarningFunc"></a>Function type: xmlSchemaValidityWarningFunc
-void	xmlSchemaValidityWarningFunc	(void * ctx, <br />				 const char * msg, <br />				 ... ...)
-</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
-<pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a>	<a href="#xmlSchemaNewMemParserCtxt">xmlSchemaNewMemParserCtxt</a>	(const char * buffer, <br />				 int size)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-xmlschemas.html#xmlSchemaValidCtxt">xmlSchemaValidCtxt</a> * <a name="xmlSchemaValidCtxtPtr" id="xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlSchema" id="xmlSchema">xmlSchema</a><br />struct _xmlSchema {
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: schema name
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	targetNamespace	: the target namespace
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	version
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	id
-    <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	doc
-    <a href="libxml-schemasInternals.html#xmlSchemaAnnotPtr">xmlSchemaAnnotPtr</a>	annot
-    int	flags
-    <a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	typeDecl
-    <a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	attrDecl
-    <a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	attrgrpDecl
-    <a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	elemDecl
-    <a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	notaDecl
-    <a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	schemasImports
-    void *	_private	: unused by the library for users or bind
-    <a href="libxml-hash.html#xmlHashTablePtr">xmlHashTablePtr</a>	groupDecl
-}</pre><br /><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a>	<a href="#xmlSchemaNewValidCtxt">xmlSchemaNewValidCtxt</a>	(<a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlSchemaNewDocParserCtxt" id="xmlSchemaNewDocParserCtxt"></a>Function: xmlSchemaNewDocParserCtxt</h3><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a>	xmlSchemaNewDocParserCtxt	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><p>Create an XML Schemas parse context for that document. NB. The document may be modified during the parsing process.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a preparsed document tree</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the parser context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlSchemaFree" id="xmlSchemaFree"></a>Function: xmlSchemaFree</h3><pre class="programlisting">void	xmlSchemaFree	(<a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema)<br />
-</pre><p>Deallocate a Schema structure.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a schema structure</td></tr></tbody></table></div><h3><a name="xmlSchemaFreeValidCtxt" id="xmlSchemaFreeValidCtxt"></a>Function: xmlSchemaFreeValidCtxt</h3><pre class="programlisting">void	xmlSchemaFreeValidCtxt	(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt)<br />
-</pre><p>Free the resources associated to the schema validation context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the schema validation context</td></tr></tbody></table></div><h3><a name="xmlSchemaFreeParserCtxt" id="xmlSchemaFreeParserCtxt"></a>Function: xmlSchemaFreeParserCtxt</h3><pre class="programlisting">void	xmlSchemaFreeParserCtxt	(<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt)<br />
-</pre><p>Free the resources associated to the schema parser context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the schema parser context</td></tr></tbody></table></div><h3><a name="xmlSchemaNewParserCtxt" id="xmlSchemaNewParserCtxt"></a>Function: xmlSchemaNewParserCtxt</h3><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a>	xmlSchemaNewParserCtxt	(const char * URL)<br />
-</pre><p>Create an XML Schemas parse context for that file/resource expected to contain an XML Schemas file.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the location of the schema</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the parser context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlSchemaValidateStream" id="xmlSchemaValidateStream"></a>Function: xmlSchemaValidateStream</h3><pre class="programlisting">int	xmlSchemaValidateStream	(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />				 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc, <br />				 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />				 void * user_data)<br />
+}</pre><h3><a name="xmlSchemaValidateStream" id="xmlSchemaValidateStream"></a>Function: xmlSchemaValidateStream</h3><pre class="programlisting">int	xmlSchemaValidateStream		(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input, <br />					 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc, <br />					 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax, <br />					 void * user_data)<br />
 </pre><p>Validate a document tree in memory.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a schema validation context</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>the input to use for reading the data</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>an optional encoding information</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>a SAX handler for the resulting events</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>the context to provide to the SAX handler.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the document is schemas valid, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlSchemaDump" id="xmlSchemaDump"></a>Function: xmlSchemaDump</h3><pre class="programlisting">void	xmlSchemaDump	(FILE * output, <br />				 <a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema)<br />
-</pre><p>Dump a Schema structure.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the file output</td></tr><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a schema structure</td></tr></tbody></table></div><h3><a name="xmlSchemaSetValidErrors" id="xmlSchemaSetValidErrors"></a>Function: xmlSchemaSetValidErrors</h3><pre class="programlisting">void	xmlSchemaSetValidErrors	(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-xmlschemas.html#xmlSchemaValidityErrorFunc">xmlSchemaValidityErrorFunc</a> err, <br />				 <a href="libxml-xmlschemas.html#xmlSchemaValidityWarningFunc">xmlSchemaValidityWarningFunc</a> warn, <br />				 void * ctx)<br />
-</pre><p>Set the error and warning callback informations</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a schema validation context</td></tr><tr><td><span class="term"><i><tt>err</tt></i>:</span></td><td>the error function</td></tr><tr><td><span class="term"><i><tt>warn</tt></i>:</span></td><td>the warning function</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the functions context</td></tr></tbody></table></div><h3><a name="xmlSchemaValidateDoc" id="xmlSchemaValidateDoc"></a>Function: xmlSchemaValidateDoc</h3><pre class="programlisting">int	xmlSchemaValidateDoc	(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><p>Validate a document tree in memory.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a schema validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a parsed document tree</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the document is schemas valid, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-    <h3><a name="xmlSchemaSetParserErrors" id="xmlSchemaSetParserErrors"></a>Function: xmlSchemaSetParserErrors</h3><pre class="programlisting">void	xmlSchemaSetParserErrors	(<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt, <br />				 <a href="libxml-xmlschemas.html#xmlSchemaValidityErrorFunc">xmlSchemaValidityErrorFunc</a> err, <br />				 <a href="libxml-xmlschemas.html#xmlSchemaValidityWarningFunc">xmlSchemaValidityWarningFunc</a> warn, <br />				 void * ctx)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a schema validation context</td></tr><tr><td><span class="term"><i><tt>input</tt></i>:</span></td><td>the input to use for reading the data</td></tr><tr><td><span class="term"><i><tt>enc</tt></i>:</span></td><td>an optional encoding information</td></tr><tr><td><span class="term"><i><tt>sax</tt></i>:</span></td><td>a SAX handler for the resulting events</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i>:</span></td><td>the context to provide to the SAX handler.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the document is schemas valid, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlSchemaSetParserErrors" id="xmlSchemaSetParserErrors"></a>Function: xmlSchemaSetParserErrors</h3><pre class="programlisting">void	xmlSchemaSetParserErrors	(<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt, <br />					 <a href="libxml-xmlschemas.html#xmlSchemaValidityErrorFunc">xmlSchemaValidityErrorFunc</a> err, <br />					 <a href="libxml-xmlschemas.html#xmlSchemaValidityWarningFunc">xmlSchemaValidityWarningFunc</a> warn, <br />					 void * ctx)<br />
 </pre><p>Set the callback functions used to handle errors for a validation context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a schema validation context</td></tr><tr><td><span class="term"><i><tt>err</tt></i>:</span></td><td>the error callback</td></tr><tr><td><span class="term"><i><tt>warn</tt></i>:</span></td><td>the warning callback</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>contextual data for the callbacks</td></tr></tbody></table></div><h3><a name="xmlSchemaParse" id="xmlSchemaParse"></a>Function: xmlSchemaParse</h3><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a>	xmlSchemaParse	(<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a schema validation context</td></tr><tr><td><span class="term"><i><tt>err</tt></i>:</span></td><td>the error callback</td></tr><tr><td><span class="term"><i><tt>warn</tt></i>:</span></td><td>the warning callback</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>contextual data for the callbacks</td></tr></tbody></table></div><h3><a name="xmlSchemaValidityWarningFunc" id="xmlSchemaValidityWarningFunc"></a>Function type: xmlSchemaValidityWarningFunc</h3><pre class="programlisting">Function type: xmlSchemaValidityWarningFunc
+void	xmlSchemaValidityWarningFunc	(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
+<h3><a name="xmlSchemaValidateDoc" id="xmlSchemaValidateDoc"></a>Function: xmlSchemaValidateDoc</h3><pre class="programlisting">int	xmlSchemaValidateDoc		(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+</pre><p>Validate a document tree in memory.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a schema validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a parsed document tree</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the document is schemas valid, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlSchemaNewDocParserCtxt" id="xmlSchemaNewDocParserCtxt"></a>Function: xmlSchemaNewDocParserCtxt</h3><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a>	xmlSchemaNewDocParserCtxt	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+</pre><p>Create an XML Schemas parse context for that document. NB. The document may be modified during the parsing process.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>a preparsed document tree</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the parser context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlSchemaFree" id="xmlSchemaFree"></a>Function: xmlSchemaFree</h3><pre class="programlisting">void	xmlSchemaFree			(<a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema)<br />
+</pre><p>Deallocate a Schema structure.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a schema structure</td></tr></tbody></table></div><h3><a name="xmlSchemaNewParserCtxt" id="xmlSchemaNewParserCtxt"></a>Function: xmlSchemaNewParserCtxt</h3><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a>	xmlSchemaNewParserCtxt	(const char * URL)<br />
+</pre><p>Create an XML Schemas parse context for that file/resource expected to contain an XML Schemas file.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>the location of the schema</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the parser context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlSchemaParse" id="xmlSchemaParse"></a>Function: xmlSchemaParse</h3><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a>	xmlSchemaParse		(<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt)<br />
 </pre><p>parse a schema definition resource and build an internal XML Shema struture which can be used to validate instances. *WARNING* this interface is highly subject to change</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a schema validation context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the internal XML Schema structure built from the resource or NULL in case of error</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-    <h3><a name="xmlSchemaNewMemParserCtxt" id="xmlSchemaNewMemParserCtxt"></a>Function: xmlSchemaNewMemParserCtxt</h3><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a>	xmlSchemaNewMemParserCtxt	(const char * buffer, <br />				 int size)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a schema validation context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the internal XML Schema structure built from the resource or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlSchemaNewMemParserCtxt" id="xmlSchemaNewMemParserCtxt"></a>Function: xmlSchemaNewMemParserCtxt</h3><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a>	xmlSchemaNewMemParserCtxt	(const char * buffer, <br />							 int size)<br />
 </pre><p>Create an XML Schemas parse context for that memory buffer expected to contain an XML Schemas file.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array containing the schemas</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the parser context or NULL in case of error</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlSchemaNewValidCtxt" id="xmlSchemaNewValidCtxt"></a>Function: xmlSchemaNewValidCtxt</h3><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a>	xmlSchemaNewValidCtxt	(<a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buffer</tt></i>:</span></td><td>a pointer to a char array containing the schemas</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>the size of the array</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the parser context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlSchemaFreeParserCtxt" id="xmlSchemaFreeParserCtxt"></a>Function: xmlSchemaFreeParserCtxt</h3><pre class="programlisting">void	xmlSchemaFreeParserCtxt		(<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt)<br />
+</pre><p>Free the resources associated to the schema parser context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the schema parser context</td></tr></tbody></table></div><h3><a name="xmlSchemaFreeValidCtxt" id="xmlSchemaFreeValidCtxt"></a>Function: xmlSchemaFreeValidCtxt</h3><pre class="programlisting">void	xmlSchemaFreeValidCtxt		(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt)<br />
+</pre><p>Free the resources associated to the schema validation context</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the schema validation context</td></tr></tbody></table></div><h3><a name="xmlSchemaNewValidCtxt" id="xmlSchemaNewValidCtxt"></a>Function: xmlSchemaNewValidCtxt</h3><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a>	xmlSchemaNewValidCtxt	(<a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema)<br />
 </pre><p>Create an XML Schemas validation context based on the given schema</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a precompiled XML Schemas</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the validation context or NULL in case of error</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a precompiled XML Schemas</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the validation context or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlSchemaDump" id="xmlSchemaDump"></a>Function: xmlSchemaDump</h3><pre class="programlisting">void	xmlSchemaDump			(FILE * output, <br />					 <a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema)<br />
+</pre><p>Dump a Schema structure.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the file output</td></tr><tr><td><span class="term"><i><tt>schema</tt></i>:</span></td><td>a schema structure</td></tr></tbody></table></div><h3><a name="xmlSchemaSetValidErrors" id="xmlSchemaSetValidErrors"></a>Function: xmlSchemaSetValidErrors</h3><pre class="programlisting">void	xmlSchemaSetValidErrors		(<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt, <br />					 <a href="libxml-xmlschemas.html#xmlSchemaValidityErrorFunc">xmlSchemaValidityErrorFunc</a> err, <br />					 <a href="libxml-xmlschemas.html#xmlSchemaValidityWarningFunc">xmlSchemaValidityWarningFunc</a> warn, <br />					 void * ctx)<br />
+</pre><p>Set the error and warning callback informations</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a schema validation context</td></tr><tr><td><span class="term"><i><tt>err</tt></i>:</span></td><td>the error function</td></tr><tr><td><span class="term"><i><tt>warn</tt></i>:</span></td><td>the warning function</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the functions context</td></tr></tbody></table></div><h3><a name="xmlSchemaValidityErrorFunc" id="xmlSchemaValidityErrorFunc"></a>Function type: xmlSchemaValidityErrorFunc</h3><pre class="programlisting">Function type: xmlSchemaValidityErrorFunc
+void	xmlSchemaValidityErrorFunc	(void * ctx, <br />					 const char * msg, <br />					 ... ...)
+</pre><p></p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr></tbody></table></div><br />
+<p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-xmlschemastypes.html b/doc/html/libxml-xmlschemastypes.html
index 0c2c01d..4ca35a6 100644
--- a/doc/html/libxml-xmlschemastypes.html
+++ b/doc/html/libxml-xmlschemastypes.html
@@ -10,38 +10,38 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xmlschemastypes from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlschemastypes from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlschemas.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlschemas.html">xmlschemas</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlunicode.html">xmlunicode</a></th><td><a accesskey="n" href="libxml-xmlunicode.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>module providing the XML Schema Datatypes implementation both definition and validity checking </p><h2>Table of Contents</h2><pre class="programlisting"><a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a>	<a href="#xmlSchemaNewFacet">xmlSchemaNewFacet</a>	(void)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSchemaValPredefTypeNode">xmlSchemaValPredefTypeNode</a>	(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> * val, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSchemaFreeFacet">xmlSchemaFreeFacet</a>	(<a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a> facet)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSchemaValidatePredefinedType">xmlSchemaValidatePredefinedType</a>	(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> * val)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSchemaCompareValues">xmlSchemaCompareValues</a>	(<a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> x, <br />				 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> y)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSchemaValidateFacet">xmlSchemaValidateFacet</a>	(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> base, <br />				 <a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a> facet, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> val)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSchemaCleanupTypes">xmlSchemaCleanupTypes</a>	(void)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSchemaInitTypes">xmlSchemaInitTypes</a>	(void)<br />
-</pre><pre class="programlisting">void	<a href="#xmlSchemaFreeValue">xmlSchemaFreeValue</a>	(<a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> value)<br />
-</pre><pre class="programlisting"><a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a>	<a href="#xmlSchemaGetPredefinedType">xmlSchemaGetPredefinedType</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns)<br />
-</pre><pre class="programlisting">int	<a href="#xmlSchemaCheckFacet">xmlSchemaCheckFacet</a>	(<a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a> facet, <br />				 <a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> typeDecl, <br />				 <a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><h2>Description</h2>
+    </style><title>Module xmlschemastypes from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlschemastypes from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlschemas.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlschemas.html">xmlschemas</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlunicode.html">xmlunicode</a></th><td><a accesskey="n" href="libxml-xmlunicode.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>module providing the XML Schema Datatypes implementation both definition and validity checking </p><h2>Table of Contents</h2><pre class="programlisting">int	<a href="#xmlSchemaCheckFacet">xmlSchemaCheckFacet</a>		(<a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a> facet, <br />					 <a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> typeDecl, <br />					 <a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">void	<a href="#xmlSchemaCleanupTypes">xmlSchemaCleanupTypes</a>		(void)</pre>
+<pre class="programlisting">int	<a href="#xmlSchemaCompareValues">xmlSchemaCompareValues</a>		(<a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> x, <br />					 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> y)</pre>
+<pre class="programlisting">void	<a href="#xmlSchemaFreeFacet">xmlSchemaFreeFacet</a>		(<a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a> facet)</pre>
+<pre class="programlisting">void	<a href="#xmlSchemaFreeValue">xmlSchemaFreeValue</a>		(<a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> value)</pre>
+<pre class="programlisting"><a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a>	<a href="#xmlSchemaGetPredefinedType">xmlSchemaGetPredefinedType</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns)</pre>
+<pre class="programlisting">void	<a href="#xmlSchemaInitTypes">xmlSchemaInitTypes</a>		(void)</pre>
+<pre class="programlisting"><a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a>	<a href="#xmlSchemaNewFacet">xmlSchemaNewFacet</a>	(void)</pre>
+<pre class="programlisting">int	<a href="#xmlSchemaValPredefTypeNode">xmlSchemaValPredefTypeNode</a>	(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> * val, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting">int	<a href="#xmlSchemaValidateFacet">xmlSchemaValidateFacet</a>		(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> base, <br />					 <a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a> facet, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> val)</pre>
+<pre class="programlisting">int	<a href="#xmlSchemaValidatePredefinedType">xmlSchemaValidatePredefinedType</a>	(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> * val)</pre>
+<h2>Description</h2>
 <h3><a name="xmlSchemaNewFacet" id="xmlSchemaNewFacet"></a>Function: xmlSchemaNewFacet</h3><pre class="programlisting"><a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a>	xmlSchemaNewFacet	(void)<br />
 </pre><p>Allocate a new Facet structure.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly allocated structure or NULL in case or error</td></tr></tbody></table></div><h3><a name="xmlSchemaValPredefTypeNode" id="xmlSchemaValPredefTypeNode"></a>Function: xmlSchemaValPredefTypeNode</h3><pre class="programlisting">int	xmlSchemaValPredefTypeNode	(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> * val, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly allocated structure or NULL in case or error</td></tr></tbody></table></div><h3><a name="xmlSchemaValPredefTypeNode" id="xmlSchemaValPredefTypeNode"></a>Function: xmlSchemaValPredefTypeNode</h3><pre class="programlisting">int	xmlSchemaValPredefTypeNode	(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> * val, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
 </pre><p>Check that a value conforms to the lexical space of the predefined type. if true a value is computed and returned in @val.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the predefined type</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to check</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the return computed value</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node containing the value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlSchemaFreeFacet" id="xmlSchemaFreeFacet"></a>Function: xmlSchemaFreeFacet</h3><pre class="programlisting">void	xmlSchemaFreeFacet	(<a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a> facet)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the predefined type</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to check</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the return computed value</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the node containing the value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlSchemaFreeFacet" id="xmlSchemaFreeFacet"></a>Function: xmlSchemaFreeFacet</h3><pre class="programlisting">void	xmlSchemaFreeFacet		(<a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a> facet)<br />
 </pre><p>Deallocate a Schema Facet structure.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>facet</tt></i>:</span></td><td>a schema facet structure</td></tr></tbody></table></div><h3><a name="xmlSchemaValidatePredefinedType" id="xmlSchemaValidatePredefinedType"></a>Function: xmlSchemaValidatePredefinedType</h3><pre class="programlisting">int	xmlSchemaValidatePredefinedType	(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> type, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> * val)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>facet</tt></i>:</span></td><td>a schema facet structure</td></tr></tbody></table></div><h3><a name="xmlSchemaValidatePredefinedType" id="xmlSchemaValidatePredefinedType"></a>Function: xmlSchemaValidatePredefinedType</h3><pre class="programlisting">int	xmlSchemaValidatePredefinedType	(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> type, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> * val)<br />
 </pre><p>Check that a value conforms to the lexical space of the predefined type. if true a value is computed and returned in @val.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the predefined type</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to check</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the return computed value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlSchemaCompareValues" id="xmlSchemaCompareValues"></a>Function: xmlSchemaCompareValues</h3><pre class="programlisting">int	xmlSchemaCompareValues	(<a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> x, <br />				 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> y)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the predefined type</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to check</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the return computed value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if this validates, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlSchemaCompareValues" id="xmlSchemaCompareValues"></a>Function: xmlSchemaCompareValues</h3><pre class="programlisting">int	xmlSchemaCompareValues		(<a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> x, <br />					 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> y)<br />
 </pre><p>Compare 2 values</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>x</tt></i>:</span></td><td>a first value</td></tr><tr><td><span class="term"><i><tt>y</tt></i>:</span></td><td>a second value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 if x &lt; y, 0 if x == y, 1 if x &gt; y, 2 if x &lt;&gt; y, and -2 in case of error</td></tr></tbody></table></div><h3><a name="xmlSchemaValidateFacet" id="xmlSchemaValidateFacet"></a>Function: xmlSchemaValidateFacet</h3><pre class="programlisting">int	xmlSchemaValidateFacet	(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> base, <br />				 <a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a> facet, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />				 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> val)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>x</tt></i>:</span></td><td>a first value</td></tr><tr><td><span class="term"><i><tt>y</tt></i>:</span></td><td>a second value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 if x &lt; y, 0 if x == y, 1 if x &gt; y, 2 if x &lt;&gt; y, and -2 in case of error</td></tr></tbody></table></div><h3><a name="xmlSchemaValidateFacet" id="xmlSchemaValidateFacet"></a>Function: xmlSchemaValidateFacet</h3><pre class="programlisting">int	xmlSchemaValidateFacet		(<a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> base, <br />					 <a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a> facet, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * value, <br />					 <a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> val)<br />
 </pre><p>Check a value against a facet condition</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>base</tt></i>:</span></td><td>the base type</td></tr><tr><td><span class="term"><i><tt>facet</tt></i>:</span></td><td>the facet to check</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the lexical repr of the value to validate</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the precomputed value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the element is schemas valid, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlSchemaCleanupTypes" id="xmlSchemaCleanupTypes"></a>Function: xmlSchemaCleanupTypes</h3><pre class="programlisting">void	xmlSchemaCleanupTypes	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>base</tt></i>:</span></td><td>the base type</td></tr><tr><td><span class="term"><i><tt>facet</tt></i>:</span></td><td>the facet to check</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the lexical repr of the value to validate</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the precomputed value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the element is schemas valid, a positive error code number otherwise and -1 in case of internal or API error.</td></tr></tbody></table></div><h3><a name="xmlSchemaCleanupTypes" id="xmlSchemaCleanupTypes"></a>Function: xmlSchemaCleanupTypes</h3><pre class="programlisting">void	xmlSchemaCleanupTypes		(void)<br />
 </pre><p>Cleanup the default XML Schemas type library</p>
-<h3><a name="xmlSchemaInitTypes" id="xmlSchemaInitTypes"></a>Function: xmlSchemaInitTypes</h3><pre class="programlisting">void	xmlSchemaInitTypes	(void)<br />
+<h3><a name="xmlSchemaInitTypes" id="xmlSchemaInitTypes"></a>Function: xmlSchemaInitTypes</h3><pre class="programlisting">void	xmlSchemaInitTypes		(void)<br />
 </pre><p>Initialize the default XML Schemas type library</p>
-<h3><a name="xmlSchemaFreeValue" id="xmlSchemaFreeValue"></a>Function: xmlSchemaFreeValue</h3><pre class="programlisting">void	xmlSchemaFreeValue	(<a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> value)<br />
+<h3><a name="xmlSchemaFreeValue" id="xmlSchemaFreeValue"></a>Function: xmlSchemaFreeValue</h3><pre class="programlisting">void	xmlSchemaFreeValue		(<a href="libxml-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> value)<br />
 </pre><p>Cleanup the default XML Schemas type library</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to free</td></tr></tbody></table></div><h3><a name="xmlSchemaGetPredefinedType" id="xmlSchemaGetPredefinedType"></a>Function: xmlSchemaGetPredefinedType</h3><pre class="programlisting"><a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a>	xmlSchemaGetPredefinedType	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value to free</td></tr></tbody></table></div><h3><a name="xmlSchemaGetPredefinedType" id="xmlSchemaGetPredefinedType"></a>Function: xmlSchemaGetPredefinedType</h3><pre class="programlisting"><a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a>	xmlSchemaGetPredefinedType	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns)<br />
 </pre><p>Lookup a type in the default XML Schemas type library</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the type name</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the URI of the namespace usually &quot;http://www.w3.org/2001/XMLSchema&quot;</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the type if found, NULL otherwise</td></tr></tbody></table></div><h3><a name="xmlSchemaCheckFacet" id="xmlSchemaCheckFacet"></a>Function: xmlSchemaCheckFacet</h3><pre class="programlisting">int	xmlSchemaCheckFacet	(<a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a> facet, <br />				 <a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> typeDecl, <br />				 <a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the type name</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the URI of the namespace usually &quot;http://www.w3.org/2001/XMLSchema&quot;</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the type if found, NULL otherwise</td></tr></tbody></table></div><h3><a name="xmlSchemaCheckFacet" id="xmlSchemaCheckFacet"></a>Function: xmlSchemaCheckFacet</h3><pre class="programlisting">int	xmlSchemaCheckFacet		(<a href="libxml-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a> facet, <br />					 <a href="libxml-schemasInternals.html#xmlSchemaTypePtr">xmlSchemaTypePtr</a> typeDecl, <br />					 <a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Checks the default values types, especially for facets</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>facet</tt></i>:</span></td><td>the facet</td></tr><tr><td><span class="term"><i><tt>typeDecl</tt></i>:</span></td><td>the schema type definition</td></tr><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the schema parser context or NULL</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>name of the type</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if okay or -1 in cae of error</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-xmlunicode.html b/doc/html/libxml-xmlunicode.html
index 0a5d87d..3ce7e7a 100644
--- a/doc/html/libxml-xmlunicode.html
+++ b/doc/html/libxml-xmlunicode.html
@@ -10,196 +10,196 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xmlunicode from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlunicode from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlschemastypes.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlschemastypes.html">xmlschemastypes</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlversion.html">xmlversion</a></th><td><a accesskey="n" href="libxml-xmlversion.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>API for the Unicode character APIs  This file is automatically generated from the UCS description files of the Unicode Character Database</p><h2>Table of Contents</h2><pre class="programlisting">int	<a href="#xmlUCSIsBlockElements">xmlUCSIsBlockElements</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsVariationSelectorsSupplement">xmlUCSIsVariationSelectorsSupplement</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsTags">xmlUCSIsTags</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsEnclosedAlphanumerics">xmlUCSIsEnclosedAlphanumerics</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsBopomofo">xmlUCSIsBopomofo</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsSinhala">xmlUCSIsSinhala</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsDingbats">xmlUCSIsDingbats</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsLatinExtendedB">xmlUCSIsLatinExtendedB</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCombiningHalfMarks">xmlUCSIsCombiningHalfMarks</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsSupplementalArrowsA">xmlUCSIsSupplementalArrowsA</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsLatinExtendedA">xmlUCSIsLatinExtendedA</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsYiRadicals">xmlUCSIsYiRadicals</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCombiningDiacriticalMarks">xmlUCSIsCombiningDiacriticalMarks</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCombiningMarksforSymbols">xmlUCSIsCombiningMarksforSymbols</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsHalfwidthandFullwidthForms">xmlUCSIsHalfwidthandFullwidthForms</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsBasicLatin">xmlUCSIsBasicLatin</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsOldItalic">xmlUCSIsOldItalic</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsLimbu">xmlUCSIsLimbu</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCat">xmlUCSIsCat</a>	(int code, <br />				 const char * cat)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatSo">xmlUCSIsCatSo</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatLu">xmlUCSIsCatLu</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatLt">xmlUCSIsCatLt</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsYiSyllables">xmlUCSIsYiSyllables</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatSk">xmlUCSIsCatSk</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatLo">xmlUCSIsCatLo</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsKhmerSymbols">xmlUCSIsKhmerSymbols</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatLm">xmlUCSIsCatLm</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsAlphabeticPresentationForms">xmlUCSIsAlphabeticPresentationForms</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsMiscellaneousTechnical">xmlUCSIsMiscellaneousTechnical</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsMongolian">xmlUCSIsMongolian</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsUgaritic">xmlUCSIsUgaritic</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCJKCompatibilityIdeographsSupplement">xmlUCSIsCJKCompatibilityIdeographsSupplement</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsKannada">xmlUCSIsKannada</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsMalayalam">xmlUCSIsMalayalam</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCypriotSyllabary">xmlUCSIsCypriotSyllabary</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsTamil">xmlUCSIsTamil</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatC">xmlUCSIsCatC</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsUnifiedCanadianAboriginalSyllabics">xmlUCSIsUnifiedCanadianAboriginalSyllabics</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatN">xmlUCSIsCatN</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatLl">xmlUCSIsCatLl</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatL">xmlUCSIsCatL</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatM">xmlUCSIsCatM</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsTelugu">xmlUCSIsTelugu</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsMathematicalAlphanumericSymbols">xmlUCSIsMathematicalAlphanumericSymbols</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsLowSurrogates">xmlUCSIsLowSurrogates</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsOsmanya">xmlUCSIsOsmanya</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsGreek">xmlUCSIsGreek</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsEthiopic">xmlUCSIsEthiopic</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatP">xmlUCSIsCatP</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsBoxDrawing">xmlUCSIsBoxDrawing</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsGeorgian">xmlUCSIsGeorgian</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsOgham">xmlUCSIsOgham</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatZ">xmlUCSIsCatZ</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsGreekandCoptic">xmlUCSIsGreekandCoptic</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsIPAExtensions">xmlUCSIsIPAExtensions</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsByzantineMusicalSymbols">xmlUCSIsByzantineMusicalSymbols</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsKangxiRadicals">xmlUCSIsKangxiRadicals</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsEnclosedCJKLettersandMonths">xmlUCSIsEnclosedCJKLettersandMonths</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCJKCompatibilityForms">xmlUCSIsCJKCompatibilityForms</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatCs">xmlUCSIsCatCs</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsHanunoo">xmlUCSIsHanunoo</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsGreekExtended">xmlUCSIsGreekExtended</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCJKRadicalsSupplement">xmlUCSIsCJKRadicalsSupplement</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsArmenian">xmlUCSIsArmenian</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatCf">xmlUCSIsCatCf</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsSmallFormVariants">xmlUCSIsSmallFormVariants</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsHangulCompatibilityJamo">xmlUCSIsHangulCompatibilityJamo</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsSupplementaryPrivateUseAreaB">xmlUCSIsSupplementaryPrivateUseAreaB</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatCc">xmlUCSIsCatCc</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsSupplementaryPrivateUseAreaA">xmlUCSIsSupplementaryPrivateUseAreaA</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatCo">xmlUCSIsCatCo</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCherokee">xmlUCSIsCherokee</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatPe">xmlUCSIsCatPe</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsKatakanaPhoneticExtensions">xmlUCSIsKatakanaPhoneticExtensions</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsLinearBSyllabary">xmlUCSIsLinearBSyllabary</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsGothic">xmlUCSIsGothic</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsLetterlikeSymbols">xmlUCSIsLetterlikeSymbols</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsKhmer">xmlUCSIsKhmer</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatNd">xmlUCSIsCatNd</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsPhoneticExtensions">xmlUCSIsPhoneticExtensions</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsTaiLe">xmlUCSIsTaiLe</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsArabic">xmlUCSIsArabic</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsHebrew">xmlUCSIsHebrew</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsMiscellaneousMathematicalSymbolsB">xmlUCSIsMiscellaneousMathematicalSymbolsB</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCombiningDiacriticalMarksforSymbols">xmlUCSIsCombiningDiacriticalMarksforSymbols</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsVariationSelectors">xmlUCSIsVariationSelectors</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsArabicPresentationFormsA">xmlUCSIsArabicPresentationFormsA</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatZp">xmlUCSIsCatZp</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatZs">xmlUCSIsCatZs</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsArabicPresentationFormsB">xmlUCSIsArabicPresentationFormsB</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsGeometricShapes">xmlUCSIsGeometricShapes</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatZl">xmlUCSIsCatZl</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsTagalog">xmlUCSIsTagalog</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsSpecials">xmlUCSIsSpecials</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsGujarati">xmlUCSIsGujarati</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsLinearBIdeograms">xmlUCSIsLinearBIdeograms</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsMiscellaneousMathematicalSymbolsA">xmlUCSIsMiscellaneousMathematicalSymbolsA</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsBlock">xmlUCSIsBlock</a>	(int code, <br />				 const char * block)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsBopomofoExtended">xmlUCSIsBopomofoExtended</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsThaana">xmlUCSIsThaana</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsIdeographicDescriptionCharacters">xmlUCSIsIdeographicDescriptionCharacters</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsHangulJamo">xmlUCSIsHangulJamo</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsShavian">xmlUCSIsShavian</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsTagbanwa">xmlUCSIsTagbanwa</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsGeneralPunctuation">xmlUCSIsGeneralPunctuation</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCyrillic">xmlUCSIsCyrillic</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsArrows">xmlUCSIsArrows</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsControlPictures">xmlUCSIsControlPictures</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsYijingHexagramSymbols">xmlUCSIsYijingHexagramSymbols</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCJKUnifiedIdeographs">xmlUCSIsCJKUnifiedIdeographs</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatNl">xmlUCSIsCatNl</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatNo">xmlUCSIsCatNo</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsDeseret">xmlUCSIsDeseret</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatSm">xmlUCSIsCatSm</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsBengali">xmlUCSIsBengali</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsPrivateUse">xmlUCSIsPrivateUse</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsMusicalSymbols">xmlUCSIsMusicalSymbols</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsBuhid">xmlUCSIsBuhid</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsHangulSyllables">xmlUCSIsHangulSyllables</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCJKCompatibility">xmlUCSIsCJKCompatibility</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCJKCompatibilityIdeographs">xmlUCSIsCJKCompatibilityIdeographs</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsOpticalCharacterRecognition">xmlUCSIsOpticalCharacterRecognition</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsLatin1Supplement">xmlUCSIsLatin1Supplement</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsAegeanNumbers">xmlUCSIsAegeanNumbers</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsKatakana">xmlUCSIsKatakana</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCJKSymbolsandPunctuation">xmlUCSIsCJKSymbolsandPunctuation</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsTaiXuanJingSymbols">xmlUCSIsTaiXuanJingSymbols</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsGurmukhi">xmlUCSIsGurmukhi</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsMiscellaneousSymbols">xmlUCSIsMiscellaneousSymbols</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsDevanagari">xmlUCSIsDevanagari</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsPrivateUseArea">xmlUCSIsPrivateUseArea</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsMathematicalOperators">xmlUCSIsMathematicalOperators</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsMiscellaneousSymbolsandArrows">xmlUCSIsMiscellaneousSymbolsandArrows</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsSupplementalArrowsB">xmlUCSIsSupplementalArrowsB</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCurrencySymbols">xmlUCSIsCurrencySymbols</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsNumberForms">xmlUCSIsNumberForms</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsTibetan">xmlUCSIsTibetan</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsSupplementalMathematicalOperators">xmlUCSIsSupplementalMathematicalOperators</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCJKUnifiedIdeographsExtensionA">xmlUCSIsCJKUnifiedIdeographsExtensionA</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsKanbun">xmlUCSIsKanbun</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCJKUnifiedIdeographsExtensionB">xmlUCSIsCJKUnifiedIdeographsExtensionB</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsThai">xmlUCSIsThai</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsSpacingModifierLetters">xmlUCSIsSpacingModifierLetters</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsRunic">xmlUCSIsRunic</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatSc">xmlUCSIsCatSc</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatPc">xmlUCSIsCatPc</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatMc">xmlUCSIsCatMc</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatPf">xmlUCSIsCatPf</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCyrillicSupplement">xmlUCSIsCyrillicSupplement</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatPd">xmlUCSIsCatPd</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsMyanmar">xmlUCSIsMyanmar</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatPi">xmlUCSIsCatPi</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsHiragana">xmlUCSIsHiragana</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatPo">xmlUCSIsCatPo</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsHighPrivateUseSurrogates">xmlUCSIsHighPrivateUseSurrogates</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsLatinExtendedAdditional">xmlUCSIsLatinExtendedAdditional</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatPs">xmlUCSIsCatPs</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsSyriac">xmlUCSIsSyriac</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsSuperscriptsandSubscripts">xmlUCSIsSuperscriptsandSubscripts</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsHighSurrogates">xmlUCSIsHighSurrogates</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatMn">xmlUCSIsCatMn</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsLao">xmlUCSIsLao</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsOriya">xmlUCSIsOriya</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsBraillePatterns">xmlUCSIsBraillePatterns</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatMe">xmlUCSIsCatMe</a>	(int code)<br />
-</pre><pre class="programlisting">int	<a href="#xmlUCSIsCatS">xmlUCSIsCatS</a>	(int code)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlUCSIsBlockElements" id="xmlUCSIsBlockElements"></a>Function: xmlUCSIsBlockElements</h3><pre class="programlisting">int	xmlUCSIsBlockElements	(int code)<br />
+    </style><title>Module xmlunicode from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlunicode from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlschemastypes.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlschemastypes.html">xmlschemastypes</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlversion.html">xmlversion</a></th><td><a accesskey="n" href="libxml-xmlversion.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>API for the Unicode character APIs  This file is automatically generated from the UCS description files of the Unicode Character Database</p><h2>Table of Contents</h2><pre class="programlisting">int	<a href="#xmlUCSIsAegeanNumbers">xmlUCSIsAegeanNumbers</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsAlphabeticPresentationForms">xmlUCSIsAlphabeticPresentationForms</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsArabic">xmlUCSIsArabic</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsArabicPresentationFormsA">xmlUCSIsArabicPresentationFormsA</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsArabicPresentationFormsB">xmlUCSIsArabicPresentationFormsB</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsArmenian">xmlUCSIsArmenian</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsArrows">xmlUCSIsArrows</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsBasicLatin">xmlUCSIsBasicLatin</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsBengali">xmlUCSIsBengali</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsBlock">xmlUCSIsBlock</a>			(int code, <br />					 const char * block)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsBlockElements">xmlUCSIsBlockElements</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsBopomofo">xmlUCSIsBopomofo</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsBopomofoExtended">xmlUCSIsBopomofoExtended</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsBoxDrawing">xmlUCSIsBoxDrawing</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsBraillePatterns">xmlUCSIsBraillePatterns</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsBuhid">xmlUCSIsBuhid</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsByzantineMusicalSymbols">xmlUCSIsByzantineMusicalSymbols</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCJKCompatibility">xmlUCSIsCJKCompatibility</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCJKCompatibilityForms">xmlUCSIsCJKCompatibilityForms</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCJKCompatibilityIdeographs">xmlUCSIsCJKCompatibilityIdeographs</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCJKCompatibilityIdeographsSupplement">xmlUCSIsCJKCompatibilityIdeographsSupplement</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCJKRadicalsSupplement">xmlUCSIsCJKRadicalsSupplement</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCJKSymbolsandPunctuation">xmlUCSIsCJKSymbolsandPunctuation</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCJKUnifiedIdeographs">xmlUCSIsCJKUnifiedIdeographs</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCJKUnifiedIdeographsExtensionA">xmlUCSIsCJKUnifiedIdeographsExtensionA</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCJKUnifiedIdeographsExtensionB">xmlUCSIsCJKUnifiedIdeographsExtensionB</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCat">xmlUCSIsCat</a>			(int code, <br />					 const char * cat)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatC">xmlUCSIsCatC</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatCc">xmlUCSIsCatCc</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatCf">xmlUCSIsCatCf</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatCo">xmlUCSIsCatCo</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatCs">xmlUCSIsCatCs</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatL">xmlUCSIsCatL</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatLl">xmlUCSIsCatLl</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatLm">xmlUCSIsCatLm</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatLo">xmlUCSIsCatLo</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatLt">xmlUCSIsCatLt</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatLu">xmlUCSIsCatLu</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatM">xmlUCSIsCatM</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatMc">xmlUCSIsCatMc</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatMe">xmlUCSIsCatMe</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatMn">xmlUCSIsCatMn</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatN">xmlUCSIsCatN</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatNd">xmlUCSIsCatNd</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatNl">xmlUCSIsCatNl</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatNo">xmlUCSIsCatNo</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatP">xmlUCSIsCatP</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatPc">xmlUCSIsCatPc</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatPd">xmlUCSIsCatPd</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatPe">xmlUCSIsCatPe</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatPf">xmlUCSIsCatPf</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatPi">xmlUCSIsCatPi</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatPo">xmlUCSIsCatPo</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatPs">xmlUCSIsCatPs</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatS">xmlUCSIsCatS</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatSc">xmlUCSIsCatSc</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatSk">xmlUCSIsCatSk</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatSm">xmlUCSIsCatSm</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatSo">xmlUCSIsCatSo</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatZ">xmlUCSIsCatZ</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatZl">xmlUCSIsCatZl</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatZp">xmlUCSIsCatZp</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCatZs">xmlUCSIsCatZs</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCherokee">xmlUCSIsCherokee</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCombiningDiacriticalMarks">xmlUCSIsCombiningDiacriticalMarks</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCombiningDiacriticalMarksforSymbols">xmlUCSIsCombiningDiacriticalMarksforSymbols</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCombiningHalfMarks">xmlUCSIsCombiningHalfMarks</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCombiningMarksforSymbols">xmlUCSIsCombiningMarksforSymbols</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsControlPictures">xmlUCSIsControlPictures</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCurrencySymbols">xmlUCSIsCurrencySymbols</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCypriotSyllabary">xmlUCSIsCypriotSyllabary</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCyrillic">xmlUCSIsCyrillic</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsCyrillicSupplement">xmlUCSIsCyrillicSupplement</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsDeseret">xmlUCSIsDeseret</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsDevanagari">xmlUCSIsDevanagari</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsDingbats">xmlUCSIsDingbats</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsEnclosedAlphanumerics">xmlUCSIsEnclosedAlphanumerics</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsEnclosedCJKLettersandMonths">xmlUCSIsEnclosedCJKLettersandMonths</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsEthiopic">xmlUCSIsEthiopic</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsGeneralPunctuation">xmlUCSIsGeneralPunctuation</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsGeometricShapes">xmlUCSIsGeometricShapes</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsGeorgian">xmlUCSIsGeorgian</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsGothic">xmlUCSIsGothic</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsGreek">xmlUCSIsGreek</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsGreekExtended">xmlUCSIsGreekExtended</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsGreekandCoptic">xmlUCSIsGreekandCoptic</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsGujarati">xmlUCSIsGujarati</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsGurmukhi">xmlUCSIsGurmukhi</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsHalfwidthandFullwidthForms">xmlUCSIsHalfwidthandFullwidthForms</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsHangulCompatibilityJamo">xmlUCSIsHangulCompatibilityJamo</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsHangulJamo">xmlUCSIsHangulJamo</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsHangulSyllables">xmlUCSIsHangulSyllables</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsHanunoo">xmlUCSIsHanunoo</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsHebrew">xmlUCSIsHebrew</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsHighPrivateUseSurrogates">xmlUCSIsHighPrivateUseSurrogates</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsHighSurrogates">xmlUCSIsHighSurrogates</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsHiragana">xmlUCSIsHiragana</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsIPAExtensions">xmlUCSIsIPAExtensions</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsIdeographicDescriptionCharacters">xmlUCSIsIdeographicDescriptionCharacters</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsKanbun">xmlUCSIsKanbun</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsKangxiRadicals">xmlUCSIsKangxiRadicals</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsKannada">xmlUCSIsKannada</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsKatakana">xmlUCSIsKatakana</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsKatakanaPhoneticExtensions">xmlUCSIsKatakanaPhoneticExtensions</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsKhmer">xmlUCSIsKhmer</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsKhmerSymbols">xmlUCSIsKhmerSymbols</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsLao">xmlUCSIsLao</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsLatin1Supplement">xmlUCSIsLatin1Supplement</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsLatinExtendedA">xmlUCSIsLatinExtendedA</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsLatinExtendedAdditional">xmlUCSIsLatinExtendedAdditional</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsLatinExtendedB">xmlUCSIsLatinExtendedB</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsLetterlikeSymbols">xmlUCSIsLetterlikeSymbols</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsLimbu">xmlUCSIsLimbu</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsLinearBIdeograms">xmlUCSIsLinearBIdeograms</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsLinearBSyllabary">xmlUCSIsLinearBSyllabary</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsLowSurrogates">xmlUCSIsLowSurrogates</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsMalayalam">xmlUCSIsMalayalam</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsMathematicalAlphanumericSymbols">xmlUCSIsMathematicalAlphanumericSymbols</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsMathematicalOperators">xmlUCSIsMathematicalOperators</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsMiscellaneousMathematicalSymbolsA">xmlUCSIsMiscellaneousMathematicalSymbolsA</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsMiscellaneousMathematicalSymbolsB">xmlUCSIsMiscellaneousMathematicalSymbolsB</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsMiscellaneousSymbols">xmlUCSIsMiscellaneousSymbols</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsMiscellaneousSymbolsandArrows">xmlUCSIsMiscellaneousSymbolsandArrows</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsMiscellaneousTechnical">xmlUCSIsMiscellaneousTechnical</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsMongolian">xmlUCSIsMongolian</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsMusicalSymbols">xmlUCSIsMusicalSymbols</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsMyanmar">xmlUCSIsMyanmar</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsNumberForms">xmlUCSIsNumberForms</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsOgham">xmlUCSIsOgham</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsOldItalic">xmlUCSIsOldItalic</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsOpticalCharacterRecognition">xmlUCSIsOpticalCharacterRecognition</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsOriya">xmlUCSIsOriya</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsOsmanya">xmlUCSIsOsmanya</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsPhoneticExtensions">xmlUCSIsPhoneticExtensions</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsPrivateUse">xmlUCSIsPrivateUse</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsPrivateUseArea">xmlUCSIsPrivateUseArea</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsRunic">xmlUCSIsRunic</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsShavian">xmlUCSIsShavian</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsSinhala">xmlUCSIsSinhala</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsSmallFormVariants">xmlUCSIsSmallFormVariants</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsSpacingModifierLetters">xmlUCSIsSpacingModifierLetters</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsSpecials">xmlUCSIsSpecials</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsSuperscriptsandSubscripts">xmlUCSIsSuperscriptsandSubscripts</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsSupplementalArrowsA">xmlUCSIsSupplementalArrowsA</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsSupplementalArrowsB">xmlUCSIsSupplementalArrowsB</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsSupplementalMathematicalOperators">xmlUCSIsSupplementalMathematicalOperators</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsSupplementaryPrivateUseAreaA">xmlUCSIsSupplementaryPrivateUseAreaA</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsSupplementaryPrivateUseAreaB">xmlUCSIsSupplementaryPrivateUseAreaB</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsSyriac">xmlUCSIsSyriac</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsTagalog">xmlUCSIsTagalog</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsTagbanwa">xmlUCSIsTagbanwa</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsTags">xmlUCSIsTags</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsTaiLe">xmlUCSIsTaiLe</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsTaiXuanJingSymbols">xmlUCSIsTaiXuanJingSymbols</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsTamil">xmlUCSIsTamil</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsTelugu">xmlUCSIsTelugu</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsThaana">xmlUCSIsThaana</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsThai">xmlUCSIsThai</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsTibetan">xmlUCSIsTibetan</a>			(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsUgaritic">xmlUCSIsUgaritic</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsUnifiedCanadianAboriginalSyllabics">xmlUCSIsUnifiedCanadianAboriginalSyllabics</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsVariationSelectors">xmlUCSIsVariationSelectors</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsVariationSelectorsSupplement">xmlUCSIsVariationSelectorsSupplement</a>	(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsYiRadicals">xmlUCSIsYiRadicals</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsYiSyllables">xmlUCSIsYiSyllables</a>		(int code)</pre>
+<pre class="programlisting">int	<a href="#xmlUCSIsYijingHexagramSymbols">xmlUCSIsYijingHexagramSymbols</a>	(int code)</pre>
+<h2>Description</h2>
+<h3><a name="xmlUCSIsBlockElements" id="xmlUCSIsBlockElements"></a>Function: xmlUCSIsBlockElements</h3><pre class="programlisting">int	xmlUCSIsBlockElements		(int code)<br />
 </pre><p>Check whether the character is part of BlockElements UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsVariationSelectorsSupplement" id="xmlUCSIsVariationSelectorsSupplement"></a>Function: xmlUCSIsVariationSelectorsSupplement</h3><pre class="programlisting">int	xmlUCSIsVariationSelectorsSupplement	(int code)<br />
 </pre><p>Check whether the character is part of VariationSelectorsSupplement UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsTags" id="xmlUCSIsTags"></a>Function: xmlUCSIsTags</h3><pre class="programlisting">int	xmlUCSIsTags	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsTags" id="xmlUCSIsTags"></a>Function: xmlUCSIsTags</h3><pre class="programlisting">int	xmlUCSIsTags			(int code)<br />
 </pre><p>Check whether the character is part of Tags UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsEnclosedAlphanumerics" id="xmlUCSIsEnclosedAlphanumerics"></a>Function: xmlUCSIsEnclosedAlphanumerics</h3><pre class="programlisting">int	xmlUCSIsEnclosedAlphanumerics	(int code)<br />
 </pre><p>Check whether the character is part of EnclosedAlphanumerics UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsBopomofo" id="xmlUCSIsBopomofo"></a>Function: xmlUCSIsBopomofo</h3><pre class="programlisting">int	xmlUCSIsBopomofo	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsBopomofo" id="xmlUCSIsBopomofo"></a>Function: xmlUCSIsBopomofo</h3><pre class="programlisting">int	xmlUCSIsBopomofo		(int code)<br />
 </pre><p>Check whether the character is part of Bopomofo UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsSinhala" id="xmlUCSIsSinhala"></a>Function: xmlUCSIsSinhala</h3><pre class="programlisting">int	xmlUCSIsSinhala	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsSinhala" id="xmlUCSIsSinhala"></a>Function: xmlUCSIsSinhala</h3><pre class="programlisting">int	xmlUCSIsSinhala			(int code)<br />
 </pre><p>Check whether the character is part of Sinhala UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsDingbats" id="xmlUCSIsDingbats"></a>Function: xmlUCSIsDingbats</h3><pre class="programlisting">int	xmlUCSIsDingbats	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsDingbats" id="xmlUCSIsDingbats"></a>Function: xmlUCSIsDingbats</h3><pre class="programlisting">int	xmlUCSIsDingbats		(int code)<br />
 </pre><p>Check whether the character is part of Dingbats UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsLatinExtendedB" id="xmlUCSIsLatinExtendedB"></a>Function: xmlUCSIsLatinExtendedB</h3><pre class="programlisting">int	xmlUCSIsLatinExtendedB	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsLatinExtendedB" id="xmlUCSIsLatinExtendedB"></a>Function: xmlUCSIsLatinExtendedB</h3><pre class="programlisting">int	xmlUCSIsLatinExtendedB		(int code)<br />
 </pre><p>Check whether the character is part of LatinExtended-B UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCombiningHalfMarks" id="xmlUCSIsCombiningHalfMarks"></a>Function: xmlUCSIsCombiningHalfMarks</h3><pre class="programlisting">int	xmlUCSIsCombiningHalfMarks	(int code)<br />
 </pre><p>Check whether the character is part of CombiningHalfMarks UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsSupplementalArrowsA" id="xmlUCSIsSupplementalArrowsA"></a>Function: xmlUCSIsSupplementalArrowsA</h3><pre class="programlisting">int	xmlUCSIsSupplementalArrowsA	(int code)<br />
 </pre><p>Check whether the character is part of SupplementalArrows-A UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsLatinExtendedA" id="xmlUCSIsLatinExtendedA"></a>Function: xmlUCSIsLatinExtendedA</h3><pre class="programlisting">int	xmlUCSIsLatinExtendedA	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsLatinExtendedA" id="xmlUCSIsLatinExtendedA"></a>Function: xmlUCSIsLatinExtendedA</h3><pre class="programlisting">int	xmlUCSIsLatinExtendedA		(int code)<br />
 </pre><p>Check whether the character is part of LatinExtended-A UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsYiRadicals" id="xmlUCSIsYiRadicals"></a>Function: xmlUCSIsYiRadicals</h3><pre class="programlisting">int	xmlUCSIsYiRadicals	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsYiRadicals" id="xmlUCSIsYiRadicals"></a>Function: xmlUCSIsYiRadicals</h3><pre class="programlisting">int	xmlUCSIsYiRadicals		(int code)<br />
 </pre><p>Check whether the character is part of YiRadicals UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCombiningDiacriticalMarks" id="xmlUCSIsCombiningDiacriticalMarks"></a>Function: xmlUCSIsCombiningDiacriticalMarks</h3><pre class="programlisting">int	xmlUCSIsCombiningDiacriticalMarks	(int code)<br />
 </pre><p>Check whether the character is part of CombiningDiacriticalMarks UCS Block</p>
@@ -207,105 +207,105 @@
 </pre><p>Check whether the character is part of CombiningMarksforSymbols UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsHalfwidthandFullwidthForms" id="xmlUCSIsHalfwidthandFullwidthForms"></a>Function: xmlUCSIsHalfwidthandFullwidthForms</h3><pre class="programlisting">int	xmlUCSIsHalfwidthandFullwidthForms	(int code)<br />
 </pre><p>Check whether the character is part of HalfwidthandFullwidthForms UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsBasicLatin" id="xmlUCSIsBasicLatin"></a>Function: xmlUCSIsBasicLatin</h3><pre class="programlisting">int	xmlUCSIsBasicLatin	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsBasicLatin" id="xmlUCSIsBasicLatin"></a>Function: xmlUCSIsBasicLatin</h3><pre class="programlisting">int	xmlUCSIsBasicLatin		(int code)<br />
 </pre><p>Check whether the character is part of BasicLatin UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsOldItalic" id="xmlUCSIsOldItalic"></a>Function: xmlUCSIsOldItalic</h3><pre class="programlisting">int	xmlUCSIsOldItalic	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsOldItalic" id="xmlUCSIsOldItalic"></a>Function: xmlUCSIsOldItalic</h3><pre class="programlisting">int	xmlUCSIsOldItalic		(int code)<br />
 </pre><p>Check whether the character is part of OldItalic UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsLimbu" id="xmlUCSIsLimbu"></a>Function: xmlUCSIsLimbu</h3><pre class="programlisting">int	xmlUCSIsLimbu	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsLimbu" id="xmlUCSIsLimbu"></a>Function: xmlUCSIsLimbu</h3><pre class="programlisting">int	xmlUCSIsLimbu			(int code)<br />
 </pre><p>Check whether the character is part of Limbu UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCat" id="xmlUCSIsCat"></a>Function: xmlUCSIsCat</h3><pre class="programlisting">int	xmlUCSIsCat	(int code, <br />				 const char * cat)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCat" id="xmlUCSIsCat"></a>Function: xmlUCSIsCat</h3><pre class="programlisting">int	xmlUCSIsCat			(int code, <br />					 const char * cat)<br />
 </pre><p>Check whether the character is part of the UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>cat</tt></i>:</span></td><td>UCS Category name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true, 0 if false and -1 on unknown category</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatSo" id="xmlUCSIsCatSo"></a>Function: xmlUCSIsCatSo</h3><pre class="programlisting">int	xmlUCSIsCatSo	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>cat</tt></i>:</span></td><td>UCS Category name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true, 0 if false and -1 on unknown category</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatSo" id="xmlUCSIsCatSo"></a>Function: xmlUCSIsCatSo</h3><pre class="programlisting">int	xmlUCSIsCatSo			(int code)<br />
 </pre><p>Check whether the character is part of So UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatLu" id="xmlUCSIsCatLu"></a>Function: xmlUCSIsCatLu</h3><pre class="programlisting">int	xmlUCSIsCatLu	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatLu" id="xmlUCSIsCatLu"></a>Function: xmlUCSIsCatLu</h3><pre class="programlisting">int	xmlUCSIsCatLu			(int code)<br />
 </pre><p>Check whether the character is part of Lu UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatLt" id="xmlUCSIsCatLt"></a>Function: xmlUCSIsCatLt</h3><pre class="programlisting">int	xmlUCSIsCatLt	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatLt" id="xmlUCSIsCatLt"></a>Function: xmlUCSIsCatLt</h3><pre class="programlisting">int	xmlUCSIsCatLt			(int code)<br />
 </pre><p>Check whether the character is part of Lt UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsYiSyllables" id="xmlUCSIsYiSyllables"></a>Function: xmlUCSIsYiSyllables</h3><pre class="programlisting">int	xmlUCSIsYiSyllables	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsYiSyllables" id="xmlUCSIsYiSyllables"></a>Function: xmlUCSIsYiSyllables</h3><pre class="programlisting">int	xmlUCSIsYiSyllables		(int code)<br />
 </pre><p>Check whether the character is part of YiSyllables UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatSk" id="xmlUCSIsCatSk"></a>Function: xmlUCSIsCatSk</h3><pre class="programlisting">int	xmlUCSIsCatSk	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatSk" id="xmlUCSIsCatSk"></a>Function: xmlUCSIsCatSk</h3><pre class="programlisting">int	xmlUCSIsCatSk			(int code)<br />
 </pre><p>Check whether the character is part of Sk UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatLo" id="xmlUCSIsCatLo"></a>Function: xmlUCSIsCatLo</h3><pre class="programlisting">int	xmlUCSIsCatLo	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatLo" id="xmlUCSIsCatLo"></a>Function: xmlUCSIsCatLo</h3><pre class="programlisting">int	xmlUCSIsCatLo			(int code)<br />
 </pre><p>Check whether the character is part of Lo UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsKhmerSymbols" id="xmlUCSIsKhmerSymbols"></a>Function: xmlUCSIsKhmerSymbols</h3><pre class="programlisting">int	xmlUCSIsKhmerSymbols	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsKhmerSymbols" id="xmlUCSIsKhmerSymbols"></a>Function: xmlUCSIsKhmerSymbols</h3><pre class="programlisting">int	xmlUCSIsKhmerSymbols		(int code)<br />
 </pre><p>Check whether the character is part of KhmerSymbols UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatLm" id="xmlUCSIsCatLm"></a>Function: xmlUCSIsCatLm</h3><pre class="programlisting">int	xmlUCSIsCatLm	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatLm" id="xmlUCSIsCatLm"></a>Function: xmlUCSIsCatLm</h3><pre class="programlisting">int	xmlUCSIsCatLm			(int code)<br />
 </pre><p>Check whether the character is part of Lm UCS Category</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsAlphabeticPresentationForms" id="xmlUCSIsAlphabeticPresentationForms"></a>Function: xmlUCSIsAlphabeticPresentationForms</h3><pre class="programlisting">int	xmlUCSIsAlphabeticPresentationForms	(int code)<br />
 </pre><p>Check whether the character is part of AlphabeticPresentationForms UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsMiscellaneousTechnical" id="xmlUCSIsMiscellaneousTechnical"></a>Function: xmlUCSIsMiscellaneousTechnical</h3><pre class="programlisting">int	xmlUCSIsMiscellaneousTechnical	(int code)<br />
 </pre><p>Check whether the character is part of MiscellaneousTechnical UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsMongolian" id="xmlUCSIsMongolian"></a>Function: xmlUCSIsMongolian</h3><pre class="programlisting">int	xmlUCSIsMongolian	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsMongolian" id="xmlUCSIsMongolian"></a>Function: xmlUCSIsMongolian</h3><pre class="programlisting">int	xmlUCSIsMongolian		(int code)<br />
 </pre><p>Check whether the character is part of Mongolian UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsUgaritic" id="xmlUCSIsUgaritic"></a>Function: xmlUCSIsUgaritic</h3><pre class="programlisting">int	xmlUCSIsUgaritic	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsUgaritic" id="xmlUCSIsUgaritic"></a>Function: xmlUCSIsUgaritic</h3><pre class="programlisting">int	xmlUCSIsUgaritic		(int code)<br />
 </pre><p>Check whether the character is part of Ugaritic UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCJKCompatibilityIdeographsSupplement" id="xmlUCSIsCJKCompatibilityIdeographsSupplement"></a>Function: xmlUCSIsCJKCompatibilityIdeographsSupplement</h3><pre class="programlisting">int	xmlUCSIsCJKCompatibilityIdeographsSupplement	(int code)<br />
 </pre><p>Check whether the character is part of CJKCompatibilityIdeographsSupplement UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsKannada" id="xmlUCSIsKannada"></a>Function: xmlUCSIsKannada</h3><pre class="programlisting">int	xmlUCSIsKannada	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsKannada" id="xmlUCSIsKannada"></a>Function: xmlUCSIsKannada</h3><pre class="programlisting">int	xmlUCSIsKannada			(int code)<br />
 </pre><p>Check whether the character is part of Kannada UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsMalayalam" id="xmlUCSIsMalayalam"></a>Function: xmlUCSIsMalayalam</h3><pre class="programlisting">int	xmlUCSIsMalayalam	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsMalayalam" id="xmlUCSIsMalayalam"></a>Function: xmlUCSIsMalayalam</h3><pre class="programlisting">int	xmlUCSIsMalayalam		(int code)<br />
 </pre><p>Check whether the character is part of Malayalam UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCypriotSyllabary" id="xmlUCSIsCypriotSyllabary"></a>Function: xmlUCSIsCypriotSyllabary</h3><pre class="programlisting">int	xmlUCSIsCypriotSyllabary	(int code)<br />
 </pre><p>Check whether the character is part of CypriotSyllabary UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsTamil" id="xmlUCSIsTamil"></a>Function: xmlUCSIsTamil</h3><pre class="programlisting">int	xmlUCSIsTamil	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsTamil" id="xmlUCSIsTamil"></a>Function: xmlUCSIsTamil</h3><pre class="programlisting">int	xmlUCSIsTamil			(int code)<br />
 </pre><p>Check whether the character is part of Tamil UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatC" id="xmlUCSIsCatC"></a>Function: xmlUCSIsCatC</h3><pre class="programlisting">int	xmlUCSIsCatC	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatC" id="xmlUCSIsCatC"></a>Function: xmlUCSIsCatC</h3><pre class="programlisting">int	xmlUCSIsCatC			(int code)<br />
 </pre><p>Check whether the character is part of C UCS Category</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsUnifiedCanadianAboriginalSyllabics" id="xmlUCSIsUnifiedCanadianAboriginalSyllabics"></a>Function: xmlUCSIsUnifiedCanadianAboriginalSyllabics</h3><pre class="programlisting">int	xmlUCSIsUnifiedCanadianAboriginalSyllabics	(int code)<br />
 </pre><p>Check whether the character is part of UnifiedCanadianAboriginalSyllabics UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatN" id="xmlUCSIsCatN"></a>Function: xmlUCSIsCatN</h3><pre class="programlisting">int	xmlUCSIsCatN	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatN" id="xmlUCSIsCatN"></a>Function: xmlUCSIsCatN</h3><pre class="programlisting">int	xmlUCSIsCatN			(int code)<br />
 </pre><p>Check whether the character is part of N UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatLl" id="xmlUCSIsCatLl"></a>Function: xmlUCSIsCatLl</h3><pre class="programlisting">int	xmlUCSIsCatLl	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatLl" id="xmlUCSIsCatLl"></a>Function: xmlUCSIsCatLl</h3><pre class="programlisting">int	xmlUCSIsCatLl			(int code)<br />
 </pre><p>Check whether the character is part of Ll UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatL" id="xmlUCSIsCatL"></a>Function: xmlUCSIsCatL</h3><pre class="programlisting">int	xmlUCSIsCatL	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatL" id="xmlUCSIsCatL"></a>Function: xmlUCSIsCatL</h3><pre class="programlisting">int	xmlUCSIsCatL			(int code)<br />
 </pre><p>Check whether the character is part of L UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatM" id="xmlUCSIsCatM"></a>Function: xmlUCSIsCatM</h3><pre class="programlisting">int	xmlUCSIsCatM	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatM" id="xmlUCSIsCatM"></a>Function: xmlUCSIsCatM</h3><pre class="programlisting">int	xmlUCSIsCatM			(int code)<br />
 </pre><p>Check whether the character is part of M UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsTelugu" id="xmlUCSIsTelugu"></a>Function: xmlUCSIsTelugu</h3><pre class="programlisting">int	xmlUCSIsTelugu	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsTelugu" id="xmlUCSIsTelugu"></a>Function: xmlUCSIsTelugu</h3><pre class="programlisting">int	xmlUCSIsTelugu			(int code)<br />
 </pre><p>Check whether the character is part of Telugu UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsMathematicalAlphanumericSymbols" id="xmlUCSIsMathematicalAlphanumericSymbols"></a>Function: xmlUCSIsMathematicalAlphanumericSymbols</h3><pre class="programlisting">int	xmlUCSIsMathematicalAlphanumericSymbols	(int code)<br />
 </pre><p>Check whether the character is part of MathematicalAlphanumericSymbols UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsLowSurrogates" id="xmlUCSIsLowSurrogates"></a>Function: xmlUCSIsLowSurrogates</h3><pre class="programlisting">int	xmlUCSIsLowSurrogates	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsLowSurrogates" id="xmlUCSIsLowSurrogates"></a>Function: xmlUCSIsLowSurrogates</h3><pre class="programlisting">int	xmlUCSIsLowSurrogates		(int code)<br />
 </pre><p>Check whether the character is part of LowSurrogates UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsOsmanya" id="xmlUCSIsOsmanya"></a>Function: xmlUCSIsOsmanya</h3><pre class="programlisting">int	xmlUCSIsOsmanya	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsOsmanya" id="xmlUCSIsOsmanya"></a>Function: xmlUCSIsOsmanya</h3><pre class="programlisting">int	xmlUCSIsOsmanya			(int code)<br />
 </pre><p>Check whether the character is part of Osmanya UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGreek" id="xmlUCSIsGreek"></a>Function: xmlUCSIsGreek</h3><pre class="programlisting">int	xmlUCSIsGreek	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGreek" id="xmlUCSIsGreek"></a>Function: xmlUCSIsGreek</h3><pre class="programlisting">int	xmlUCSIsGreek			(int code)<br />
 </pre><p>Check whether the character is part of Greek UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsEthiopic" id="xmlUCSIsEthiopic"></a>Function: xmlUCSIsEthiopic</h3><pre class="programlisting">int	xmlUCSIsEthiopic	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsEthiopic" id="xmlUCSIsEthiopic"></a>Function: xmlUCSIsEthiopic</h3><pre class="programlisting">int	xmlUCSIsEthiopic		(int code)<br />
 </pre><p>Check whether the character is part of Ethiopic UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatP" id="xmlUCSIsCatP"></a>Function: xmlUCSIsCatP</h3><pre class="programlisting">int	xmlUCSIsCatP	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatP" id="xmlUCSIsCatP"></a>Function: xmlUCSIsCatP</h3><pre class="programlisting">int	xmlUCSIsCatP			(int code)<br />
 </pre><p>Check whether the character is part of P UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsBoxDrawing" id="xmlUCSIsBoxDrawing"></a>Function: xmlUCSIsBoxDrawing</h3><pre class="programlisting">int	xmlUCSIsBoxDrawing	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsBoxDrawing" id="xmlUCSIsBoxDrawing"></a>Function: xmlUCSIsBoxDrawing</h3><pre class="programlisting">int	xmlUCSIsBoxDrawing		(int code)<br />
 </pre><p>Check whether the character is part of BoxDrawing UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGeorgian" id="xmlUCSIsGeorgian"></a>Function: xmlUCSIsGeorgian</h3><pre class="programlisting">int	xmlUCSIsGeorgian	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGeorgian" id="xmlUCSIsGeorgian"></a>Function: xmlUCSIsGeorgian</h3><pre class="programlisting">int	xmlUCSIsGeorgian		(int code)<br />
 </pre><p>Check whether the character is part of Georgian UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsOgham" id="xmlUCSIsOgham"></a>Function: xmlUCSIsOgham</h3><pre class="programlisting">int	xmlUCSIsOgham	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsOgham" id="xmlUCSIsOgham"></a>Function: xmlUCSIsOgham</h3><pre class="programlisting">int	xmlUCSIsOgham			(int code)<br />
 </pre><p>Check whether the character is part of Ogham UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatZ" id="xmlUCSIsCatZ"></a>Function: xmlUCSIsCatZ</h3><pre class="programlisting">int	xmlUCSIsCatZ	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatZ" id="xmlUCSIsCatZ"></a>Function: xmlUCSIsCatZ</h3><pre class="programlisting">int	xmlUCSIsCatZ			(int code)<br />
 </pre><p>Check whether the character is part of Z UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGreekandCoptic" id="xmlUCSIsGreekandCoptic"></a>Function: xmlUCSIsGreekandCoptic</h3><pre class="programlisting">int	xmlUCSIsGreekandCoptic	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGreekandCoptic" id="xmlUCSIsGreekandCoptic"></a>Function: xmlUCSIsGreekandCoptic</h3><pre class="programlisting">int	xmlUCSIsGreekandCoptic		(int code)<br />
 </pre><p>Check whether the character is part of GreekandCoptic UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsIPAExtensions" id="xmlUCSIsIPAExtensions"></a>Function: xmlUCSIsIPAExtensions</h3><pre class="programlisting">int	xmlUCSIsIPAExtensions	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsIPAExtensions" id="xmlUCSIsIPAExtensions"></a>Function: xmlUCSIsIPAExtensions</h3><pre class="programlisting">int	xmlUCSIsIPAExtensions		(int code)<br />
 </pre><p>Check whether the character is part of IPAExtensions UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsByzantineMusicalSymbols" id="xmlUCSIsByzantineMusicalSymbols"></a>Function: xmlUCSIsByzantineMusicalSymbols</h3><pre class="programlisting">int	xmlUCSIsByzantineMusicalSymbols	(int code)<br />
 </pre><p>Check whether the character is part of ByzantineMusicalSymbols UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsKangxiRadicals" id="xmlUCSIsKangxiRadicals"></a>Function: xmlUCSIsKangxiRadicals</h3><pre class="programlisting">int	xmlUCSIsKangxiRadicals	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsKangxiRadicals" id="xmlUCSIsKangxiRadicals"></a>Function: xmlUCSIsKangxiRadicals</h3><pre class="programlisting">int	xmlUCSIsKangxiRadicals		(int code)<br />
 </pre><p>Check whether the character is part of KangxiRadicals UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsEnclosedCJKLettersandMonths" id="xmlUCSIsEnclosedCJKLettersandMonths"></a>Function: xmlUCSIsEnclosedCJKLettersandMonths</h3><pre class="programlisting">int	xmlUCSIsEnclosedCJKLettersandMonths	(int code)<br />
 </pre><p>Check whether the character is part of EnclosedCJKLettersandMonths UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCJKCompatibilityForms" id="xmlUCSIsCJKCompatibilityForms"></a>Function: xmlUCSIsCJKCompatibilityForms</h3><pre class="programlisting">int	xmlUCSIsCJKCompatibilityForms	(int code)<br />
 </pre><p>Check whether the character is part of CJKCompatibilityForms UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatCs" id="xmlUCSIsCatCs"></a>Function: xmlUCSIsCatCs</h3><pre class="programlisting">int	xmlUCSIsCatCs	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatCs" id="xmlUCSIsCatCs"></a>Function: xmlUCSIsCatCs</h3><pre class="programlisting">int	xmlUCSIsCatCs			(int code)<br />
 </pre><p>Check whether the character is part of Cs UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsHanunoo" id="xmlUCSIsHanunoo"></a>Function: xmlUCSIsHanunoo</h3><pre class="programlisting">int	xmlUCSIsHanunoo	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsHanunoo" id="xmlUCSIsHanunoo"></a>Function: xmlUCSIsHanunoo</h3><pre class="programlisting">int	xmlUCSIsHanunoo			(int code)<br />
 </pre><p>Check whether the character is part of Hanunoo UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGreekExtended" id="xmlUCSIsGreekExtended"></a>Function: xmlUCSIsGreekExtended</h3><pre class="programlisting">int	xmlUCSIsGreekExtended	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGreekExtended" id="xmlUCSIsGreekExtended"></a>Function: xmlUCSIsGreekExtended</h3><pre class="programlisting">int	xmlUCSIsGreekExtended		(int code)<br />
 </pre><p>Check whether the character is part of GreekExtended UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCJKRadicalsSupplement" id="xmlUCSIsCJKRadicalsSupplement"></a>Function: xmlUCSIsCJKRadicalsSupplement</h3><pre class="programlisting">int	xmlUCSIsCJKRadicalsSupplement	(int code)<br />
 </pre><p>Check whether the character is part of CJKRadicalsSupplement UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsArmenian" id="xmlUCSIsArmenian"></a>Function: xmlUCSIsArmenian</h3><pre class="programlisting">int	xmlUCSIsArmenian	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsArmenian" id="xmlUCSIsArmenian"></a>Function: xmlUCSIsArmenian</h3><pre class="programlisting">int	xmlUCSIsArmenian		(int code)<br />
 </pre><p>Check whether the character is part of Armenian UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatCf" id="xmlUCSIsCatCf"></a>Function: xmlUCSIsCatCf</h3><pre class="programlisting">int	xmlUCSIsCatCf	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatCf" id="xmlUCSIsCatCf"></a>Function: xmlUCSIsCatCf</h3><pre class="programlisting">int	xmlUCSIsCatCf			(int code)<br />
 </pre><p>Check whether the character is part of Cf UCS Category</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsSmallFormVariants" id="xmlUCSIsSmallFormVariants"></a>Function: xmlUCSIsSmallFormVariants</h3><pre class="programlisting">int	xmlUCSIsSmallFormVariants	(int code)<br />
 </pre><p>Check whether the character is part of SmallFormVariants UCS Block</p>
@@ -313,35 +313,35 @@
 </pre><p>Check whether the character is part of HangulCompatibilityJamo UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsSupplementaryPrivateUseAreaB" id="xmlUCSIsSupplementaryPrivateUseAreaB"></a>Function: xmlUCSIsSupplementaryPrivateUseAreaB</h3><pre class="programlisting">int	xmlUCSIsSupplementaryPrivateUseAreaB	(int code)<br />
 </pre><p>Check whether the character is part of SupplementaryPrivateUseArea-B UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatCc" id="xmlUCSIsCatCc"></a>Function: xmlUCSIsCatCc</h3><pre class="programlisting">int	xmlUCSIsCatCc	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatCc" id="xmlUCSIsCatCc"></a>Function: xmlUCSIsCatCc</h3><pre class="programlisting">int	xmlUCSIsCatCc			(int code)<br />
 </pre><p>Check whether the character is part of Cc UCS Category</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsSupplementaryPrivateUseAreaA" id="xmlUCSIsSupplementaryPrivateUseAreaA"></a>Function: xmlUCSIsSupplementaryPrivateUseAreaA</h3><pre class="programlisting">int	xmlUCSIsSupplementaryPrivateUseAreaA	(int code)<br />
 </pre><p>Check whether the character is part of SupplementaryPrivateUseArea-A UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatCo" id="xmlUCSIsCatCo"></a>Function: xmlUCSIsCatCo</h3><pre class="programlisting">int	xmlUCSIsCatCo	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatCo" id="xmlUCSIsCatCo"></a>Function: xmlUCSIsCatCo</h3><pre class="programlisting">int	xmlUCSIsCatCo			(int code)<br />
 </pre><p>Check whether the character is part of Co UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCherokee" id="xmlUCSIsCherokee"></a>Function: xmlUCSIsCherokee</h3><pre class="programlisting">int	xmlUCSIsCherokee	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCherokee" id="xmlUCSIsCherokee"></a>Function: xmlUCSIsCherokee</h3><pre class="programlisting">int	xmlUCSIsCherokee		(int code)<br />
 </pre><p>Check whether the character is part of Cherokee UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatPe" id="xmlUCSIsCatPe"></a>Function: xmlUCSIsCatPe</h3><pre class="programlisting">int	xmlUCSIsCatPe	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatPe" id="xmlUCSIsCatPe"></a>Function: xmlUCSIsCatPe</h3><pre class="programlisting">int	xmlUCSIsCatPe			(int code)<br />
 </pre><p>Check whether the character is part of Pe UCS Category</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsKatakanaPhoneticExtensions" id="xmlUCSIsKatakanaPhoneticExtensions"></a>Function: xmlUCSIsKatakanaPhoneticExtensions</h3><pre class="programlisting">int	xmlUCSIsKatakanaPhoneticExtensions	(int code)<br />
 </pre><p>Check whether the character is part of KatakanaPhoneticExtensions UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsLinearBSyllabary" id="xmlUCSIsLinearBSyllabary"></a>Function: xmlUCSIsLinearBSyllabary</h3><pre class="programlisting">int	xmlUCSIsLinearBSyllabary	(int code)<br />
 </pre><p>Check whether the character is part of LinearBSyllabary UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGothic" id="xmlUCSIsGothic"></a>Function: xmlUCSIsGothic</h3><pre class="programlisting">int	xmlUCSIsGothic	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGothic" id="xmlUCSIsGothic"></a>Function: xmlUCSIsGothic</h3><pre class="programlisting">int	xmlUCSIsGothic			(int code)<br />
 </pre><p>Check whether the character is part of Gothic UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsLetterlikeSymbols" id="xmlUCSIsLetterlikeSymbols"></a>Function: xmlUCSIsLetterlikeSymbols</h3><pre class="programlisting">int	xmlUCSIsLetterlikeSymbols	(int code)<br />
 </pre><p>Check whether the character is part of LetterlikeSymbols UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsKhmer" id="xmlUCSIsKhmer"></a>Function: xmlUCSIsKhmer</h3><pre class="programlisting">int	xmlUCSIsKhmer	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsKhmer" id="xmlUCSIsKhmer"></a>Function: xmlUCSIsKhmer</h3><pre class="programlisting">int	xmlUCSIsKhmer			(int code)<br />
 </pre><p>Check whether the character is part of Khmer UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatNd" id="xmlUCSIsCatNd"></a>Function: xmlUCSIsCatNd</h3><pre class="programlisting">int	xmlUCSIsCatNd	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatNd" id="xmlUCSIsCatNd"></a>Function: xmlUCSIsCatNd</h3><pre class="programlisting">int	xmlUCSIsCatNd			(int code)<br />
 </pre><p>Check whether the character is part of Nd UCS Category</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsPhoneticExtensions" id="xmlUCSIsPhoneticExtensions"></a>Function: xmlUCSIsPhoneticExtensions</h3><pre class="programlisting">int	xmlUCSIsPhoneticExtensions	(int code)<br />
 </pre><p>Check whether the character is part of PhoneticExtensions UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsTaiLe" id="xmlUCSIsTaiLe"></a>Function: xmlUCSIsTaiLe</h3><pre class="programlisting">int	xmlUCSIsTaiLe	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsTaiLe" id="xmlUCSIsTaiLe"></a>Function: xmlUCSIsTaiLe</h3><pre class="programlisting">int	xmlUCSIsTaiLe			(int code)<br />
 </pre><p>Check whether the character is part of TaiLe UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsArabic" id="xmlUCSIsArabic"></a>Function: xmlUCSIsArabic</h3><pre class="programlisting">int	xmlUCSIsArabic	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsArabic" id="xmlUCSIsArabic"></a>Function: xmlUCSIsArabic</h3><pre class="programlisting">int	xmlUCSIsArabic			(int code)<br />
 </pre><p>Check whether the character is part of Arabic UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsHebrew" id="xmlUCSIsHebrew"></a>Function: xmlUCSIsHebrew</h3><pre class="programlisting">int	xmlUCSIsHebrew	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsHebrew" id="xmlUCSIsHebrew"></a>Function: xmlUCSIsHebrew</h3><pre class="programlisting">int	xmlUCSIsHebrew			(int code)<br />
 </pre><p>Check whether the character is part of Hebrew UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsMiscellaneousMathematicalSymbolsB" id="xmlUCSIsMiscellaneousMathematicalSymbolsB"></a>Function: xmlUCSIsMiscellaneousMathematicalSymbolsB</h3><pre class="programlisting">int	xmlUCSIsMiscellaneousMathematicalSymbolsB	(int code)<br />
 </pre><p>Check whether the character is part of MiscellaneousMathematicalSymbols-B UCS Block</p>
@@ -351,69 +351,69 @@
 </pre><p>Check whether the character is part of VariationSelectors UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsArabicPresentationFormsA" id="xmlUCSIsArabicPresentationFormsA"></a>Function: xmlUCSIsArabicPresentationFormsA</h3><pre class="programlisting">int	xmlUCSIsArabicPresentationFormsA	(int code)<br />
 </pre><p>Check whether the character is part of ArabicPresentationForms-A UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatZp" id="xmlUCSIsCatZp"></a>Function: xmlUCSIsCatZp</h3><pre class="programlisting">int	xmlUCSIsCatZp	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatZp" id="xmlUCSIsCatZp"></a>Function: xmlUCSIsCatZp</h3><pre class="programlisting">int	xmlUCSIsCatZp			(int code)<br />
 </pre><p>Check whether the character is part of Zp UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatZs" id="xmlUCSIsCatZs"></a>Function: xmlUCSIsCatZs</h3><pre class="programlisting">int	xmlUCSIsCatZs	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatZs" id="xmlUCSIsCatZs"></a>Function: xmlUCSIsCatZs</h3><pre class="programlisting">int	xmlUCSIsCatZs			(int code)<br />
 </pre><p>Check whether the character is part of Zs UCS Category</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsArabicPresentationFormsB" id="xmlUCSIsArabicPresentationFormsB"></a>Function: xmlUCSIsArabicPresentationFormsB</h3><pre class="programlisting">int	xmlUCSIsArabicPresentationFormsB	(int code)<br />
 </pre><p>Check whether the character is part of ArabicPresentationForms-B UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGeometricShapes" id="xmlUCSIsGeometricShapes"></a>Function: xmlUCSIsGeometricShapes</h3><pre class="programlisting">int	xmlUCSIsGeometricShapes	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGeometricShapes" id="xmlUCSIsGeometricShapes"></a>Function: xmlUCSIsGeometricShapes</h3><pre class="programlisting">int	xmlUCSIsGeometricShapes		(int code)<br />
 </pre><p>Check whether the character is part of GeometricShapes UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatZl" id="xmlUCSIsCatZl"></a>Function: xmlUCSIsCatZl</h3><pre class="programlisting">int	xmlUCSIsCatZl	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatZl" id="xmlUCSIsCatZl"></a>Function: xmlUCSIsCatZl</h3><pre class="programlisting">int	xmlUCSIsCatZl			(int code)<br />
 </pre><p>Check whether the character is part of Zl UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsTagalog" id="xmlUCSIsTagalog"></a>Function: xmlUCSIsTagalog</h3><pre class="programlisting">int	xmlUCSIsTagalog	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsTagalog" id="xmlUCSIsTagalog"></a>Function: xmlUCSIsTagalog</h3><pre class="programlisting">int	xmlUCSIsTagalog			(int code)<br />
 </pre><p>Check whether the character is part of Tagalog UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsSpecials" id="xmlUCSIsSpecials"></a>Function: xmlUCSIsSpecials</h3><pre class="programlisting">int	xmlUCSIsSpecials	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsSpecials" id="xmlUCSIsSpecials"></a>Function: xmlUCSIsSpecials</h3><pre class="programlisting">int	xmlUCSIsSpecials		(int code)<br />
 </pre><p>Check whether the character is part of Specials UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGujarati" id="xmlUCSIsGujarati"></a>Function: xmlUCSIsGujarati</h3><pre class="programlisting">int	xmlUCSIsGujarati	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGujarati" id="xmlUCSIsGujarati"></a>Function: xmlUCSIsGujarati</h3><pre class="programlisting">int	xmlUCSIsGujarati		(int code)<br />
 </pre><p>Check whether the character is part of Gujarati UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsLinearBIdeograms" id="xmlUCSIsLinearBIdeograms"></a>Function: xmlUCSIsLinearBIdeograms</h3><pre class="programlisting">int	xmlUCSIsLinearBIdeograms	(int code)<br />
 </pre><p>Check whether the character is part of LinearBIdeograms UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsMiscellaneousMathematicalSymbolsA" id="xmlUCSIsMiscellaneousMathematicalSymbolsA"></a>Function: xmlUCSIsMiscellaneousMathematicalSymbolsA</h3><pre class="programlisting">int	xmlUCSIsMiscellaneousMathematicalSymbolsA	(int code)<br />
 </pre><p>Check whether the character is part of MiscellaneousMathematicalSymbols-A UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsBlock" id="xmlUCSIsBlock"></a>Function: xmlUCSIsBlock</h3><pre class="programlisting">int	xmlUCSIsBlock	(int code, <br />				 const char * block)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsBlock" id="xmlUCSIsBlock"></a>Function: xmlUCSIsBlock</h3><pre class="programlisting">int	xmlUCSIsBlock			(int code, <br />					 const char * block)<br />
 </pre><p>Check whether the character is part of the UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>block</tt></i>:</span></td><td>UCS block name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true, 0 if false and -1 on unknown block</td></tr></tbody></table></div><h3><a name="xmlUCSIsBopomofoExtended" id="xmlUCSIsBopomofoExtended"></a>Function: xmlUCSIsBopomofoExtended</h3><pre class="programlisting">int	xmlUCSIsBopomofoExtended	(int code)<br />
 </pre><p>Check whether the character is part of BopomofoExtended UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsThaana" id="xmlUCSIsThaana"></a>Function: xmlUCSIsThaana</h3><pre class="programlisting">int	xmlUCSIsThaana	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsThaana" id="xmlUCSIsThaana"></a>Function: xmlUCSIsThaana</h3><pre class="programlisting">int	xmlUCSIsThaana			(int code)<br />
 </pre><p>Check whether the character is part of Thaana UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsIdeographicDescriptionCharacters" id="xmlUCSIsIdeographicDescriptionCharacters"></a>Function: xmlUCSIsIdeographicDescriptionCharacters</h3><pre class="programlisting">int	xmlUCSIsIdeographicDescriptionCharacters	(int code)<br />
 </pre><p>Check whether the character is part of IdeographicDescriptionCharacters UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsHangulJamo" id="xmlUCSIsHangulJamo"></a>Function: xmlUCSIsHangulJamo</h3><pre class="programlisting">int	xmlUCSIsHangulJamo	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsHangulJamo" id="xmlUCSIsHangulJamo"></a>Function: xmlUCSIsHangulJamo</h3><pre class="programlisting">int	xmlUCSIsHangulJamo		(int code)<br />
 </pre><p>Check whether the character is part of HangulJamo UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsShavian" id="xmlUCSIsShavian"></a>Function: xmlUCSIsShavian</h3><pre class="programlisting">int	xmlUCSIsShavian	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsShavian" id="xmlUCSIsShavian"></a>Function: xmlUCSIsShavian</h3><pre class="programlisting">int	xmlUCSIsShavian			(int code)<br />
 </pre><p>Check whether the character is part of Shavian UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsTagbanwa" id="xmlUCSIsTagbanwa"></a>Function: xmlUCSIsTagbanwa</h3><pre class="programlisting">int	xmlUCSIsTagbanwa	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsTagbanwa" id="xmlUCSIsTagbanwa"></a>Function: xmlUCSIsTagbanwa</h3><pre class="programlisting">int	xmlUCSIsTagbanwa		(int code)<br />
 </pre><p>Check whether the character is part of Tagbanwa UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGeneralPunctuation" id="xmlUCSIsGeneralPunctuation"></a>Function: xmlUCSIsGeneralPunctuation</h3><pre class="programlisting">int	xmlUCSIsGeneralPunctuation	(int code)<br />
 </pre><p>Check whether the character is part of GeneralPunctuation UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCyrillic" id="xmlUCSIsCyrillic"></a>Function: xmlUCSIsCyrillic</h3><pre class="programlisting">int	xmlUCSIsCyrillic	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCyrillic" id="xmlUCSIsCyrillic"></a>Function: xmlUCSIsCyrillic</h3><pre class="programlisting">int	xmlUCSIsCyrillic		(int code)<br />
 </pre><p>Check whether the character is part of Cyrillic UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsArrows" id="xmlUCSIsArrows"></a>Function: xmlUCSIsArrows</h3><pre class="programlisting">int	xmlUCSIsArrows	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsArrows" id="xmlUCSIsArrows"></a>Function: xmlUCSIsArrows</h3><pre class="programlisting">int	xmlUCSIsArrows			(int code)<br />
 </pre><p>Check whether the character is part of Arrows UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsControlPictures" id="xmlUCSIsControlPictures"></a>Function: xmlUCSIsControlPictures</h3><pre class="programlisting">int	xmlUCSIsControlPictures	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsControlPictures" id="xmlUCSIsControlPictures"></a>Function: xmlUCSIsControlPictures</h3><pre class="programlisting">int	xmlUCSIsControlPictures		(int code)<br />
 </pre><p>Check whether the character is part of ControlPictures UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsYijingHexagramSymbols" id="xmlUCSIsYijingHexagramSymbols"></a>Function: xmlUCSIsYijingHexagramSymbols</h3><pre class="programlisting">int	xmlUCSIsYijingHexagramSymbols	(int code)<br />
 </pre><p>Check whether the character is part of YijingHexagramSymbols UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCJKUnifiedIdeographs" id="xmlUCSIsCJKUnifiedIdeographs"></a>Function: xmlUCSIsCJKUnifiedIdeographs</h3><pre class="programlisting">int	xmlUCSIsCJKUnifiedIdeographs	(int code)<br />
 </pre><p>Check whether the character is part of CJKUnifiedIdeographs UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatNl" id="xmlUCSIsCatNl"></a>Function: xmlUCSIsCatNl</h3><pre class="programlisting">int	xmlUCSIsCatNl	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatNl" id="xmlUCSIsCatNl"></a>Function: xmlUCSIsCatNl</h3><pre class="programlisting">int	xmlUCSIsCatNl			(int code)<br />
 </pre><p>Check whether the character is part of Nl UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatNo" id="xmlUCSIsCatNo"></a>Function: xmlUCSIsCatNo</h3><pre class="programlisting">int	xmlUCSIsCatNo	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatNo" id="xmlUCSIsCatNo"></a>Function: xmlUCSIsCatNo</h3><pre class="programlisting">int	xmlUCSIsCatNo			(int code)<br />
 </pre><p>Check whether the character is part of No UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsDeseret" id="xmlUCSIsDeseret"></a>Function: xmlUCSIsDeseret</h3><pre class="programlisting">int	xmlUCSIsDeseret	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsDeseret" id="xmlUCSIsDeseret"></a>Function: xmlUCSIsDeseret</h3><pre class="programlisting">int	xmlUCSIsDeseret			(int code)<br />
 </pre><p>Check whether the character is part of Deseret UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatSm" id="xmlUCSIsCatSm"></a>Function: xmlUCSIsCatSm</h3><pre class="programlisting">int	xmlUCSIsCatSm	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatSm" id="xmlUCSIsCatSm"></a>Function: xmlUCSIsCatSm</h3><pre class="programlisting">int	xmlUCSIsCatSm			(int code)<br />
 </pre><p>Check whether the character is part of Sm UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsBengali" id="xmlUCSIsBengali"></a>Function: xmlUCSIsBengali</h3><pre class="programlisting">int	xmlUCSIsBengali	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsBengali" id="xmlUCSIsBengali"></a>Function: xmlUCSIsBengali</h3><pre class="programlisting">int	xmlUCSIsBengali			(int code)<br />
 </pre><p>Check whether the character is part of Bengali UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsPrivateUse" id="xmlUCSIsPrivateUse"></a>Function: xmlUCSIsPrivateUse</h3><pre class="programlisting">int	xmlUCSIsPrivateUse	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsPrivateUse" id="xmlUCSIsPrivateUse"></a>Function: xmlUCSIsPrivateUse</h3><pre class="programlisting">int	xmlUCSIsPrivateUse		(int code)<br />
 </pre><p>Check whether the character is part of PrivateUse UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsMusicalSymbols" id="xmlUCSIsMusicalSymbols"></a>Function: xmlUCSIsMusicalSymbols</h3><pre class="programlisting">int	xmlUCSIsMusicalSymbols	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsMusicalSymbols" id="xmlUCSIsMusicalSymbols"></a>Function: xmlUCSIsMusicalSymbols</h3><pre class="programlisting">int	xmlUCSIsMusicalSymbols		(int code)<br />
 </pre><p>Check whether the character is part of MusicalSymbols UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsBuhid" id="xmlUCSIsBuhid"></a>Function: xmlUCSIsBuhid</h3><pre class="programlisting">int	xmlUCSIsBuhid	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsBuhid" id="xmlUCSIsBuhid"></a>Function: xmlUCSIsBuhid</h3><pre class="programlisting">int	xmlUCSIsBuhid			(int code)<br />
 </pre><p>Check whether the character is part of Buhid UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsHangulSyllables" id="xmlUCSIsHangulSyllables"></a>Function: xmlUCSIsHangulSyllables</h3><pre class="programlisting">int	xmlUCSIsHangulSyllables	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsHangulSyllables" id="xmlUCSIsHangulSyllables"></a>Function: xmlUCSIsHangulSyllables</h3><pre class="programlisting">int	xmlUCSIsHangulSyllables		(int code)<br />
 </pre><p>Check whether the character is part of HangulSyllables UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCJKCompatibility" id="xmlUCSIsCJKCompatibility"></a>Function: xmlUCSIsCJKCompatibility</h3><pre class="programlisting">int	xmlUCSIsCJKCompatibility	(int code)<br />
 </pre><p>Check whether the character is part of CJKCompatibility UCS Block</p>
@@ -423,21 +423,21 @@
 </pre><p>Check whether the character is part of OpticalCharacterRecognition UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsLatin1Supplement" id="xmlUCSIsLatin1Supplement"></a>Function: xmlUCSIsLatin1Supplement</h3><pre class="programlisting">int	xmlUCSIsLatin1Supplement	(int code)<br />
 </pre><p>Check whether the character is part of Latin-1Supplement UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsAegeanNumbers" id="xmlUCSIsAegeanNumbers"></a>Function: xmlUCSIsAegeanNumbers</h3><pre class="programlisting">int	xmlUCSIsAegeanNumbers	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsAegeanNumbers" id="xmlUCSIsAegeanNumbers"></a>Function: xmlUCSIsAegeanNumbers</h3><pre class="programlisting">int	xmlUCSIsAegeanNumbers		(int code)<br />
 </pre><p>Check whether the character is part of AegeanNumbers UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsKatakana" id="xmlUCSIsKatakana"></a>Function: xmlUCSIsKatakana</h3><pre class="programlisting">int	xmlUCSIsKatakana	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsKatakana" id="xmlUCSIsKatakana"></a>Function: xmlUCSIsKatakana</h3><pre class="programlisting">int	xmlUCSIsKatakana		(int code)<br />
 </pre><p>Check whether the character is part of Katakana UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCJKSymbolsandPunctuation" id="xmlUCSIsCJKSymbolsandPunctuation"></a>Function: xmlUCSIsCJKSymbolsandPunctuation</h3><pre class="programlisting">int	xmlUCSIsCJKSymbolsandPunctuation	(int code)<br />
 </pre><p>Check whether the character is part of CJKSymbolsandPunctuation UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsTaiXuanJingSymbols" id="xmlUCSIsTaiXuanJingSymbols"></a>Function: xmlUCSIsTaiXuanJingSymbols</h3><pre class="programlisting">int	xmlUCSIsTaiXuanJingSymbols	(int code)<br />
 </pre><p>Check whether the character is part of TaiXuanJingSymbols UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGurmukhi" id="xmlUCSIsGurmukhi"></a>Function: xmlUCSIsGurmukhi</h3><pre class="programlisting">int	xmlUCSIsGurmukhi	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsGurmukhi" id="xmlUCSIsGurmukhi"></a>Function: xmlUCSIsGurmukhi</h3><pre class="programlisting">int	xmlUCSIsGurmukhi		(int code)<br />
 </pre><p>Check whether the character is part of Gurmukhi UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsMiscellaneousSymbols" id="xmlUCSIsMiscellaneousSymbols"></a>Function: xmlUCSIsMiscellaneousSymbols</h3><pre class="programlisting">int	xmlUCSIsMiscellaneousSymbols	(int code)<br />
 </pre><p>Check whether the character is part of MiscellaneousSymbols UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsDevanagari" id="xmlUCSIsDevanagari"></a>Function: xmlUCSIsDevanagari</h3><pre class="programlisting">int	xmlUCSIsDevanagari	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsDevanagari" id="xmlUCSIsDevanagari"></a>Function: xmlUCSIsDevanagari</h3><pre class="programlisting">int	xmlUCSIsDevanagari		(int code)<br />
 </pre><p>Check whether the character is part of Devanagari UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsPrivateUseArea" id="xmlUCSIsPrivateUseArea"></a>Function: xmlUCSIsPrivateUseArea</h3><pre class="programlisting">int	xmlUCSIsPrivateUseArea	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsPrivateUseArea" id="xmlUCSIsPrivateUseArea"></a>Function: xmlUCSIsPrivateUseArea</h3><pre class="programlisting">int	xmlUCSIsPrivateUseArea		(int code)<br />
 </pre><p>Check whether the character is part of PrivateUseArea UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsMathematicalOperators" id="xmlUCSIsMathematicalOperators"></a>Function: xmlUCSIsMathematicalOperators</h3><pre class="programlisting">int	xmlUCSIsMathematicalOperators	(int code)<br />
 </pre><p>Check whether the character is part of MathematicalOperators UCS Block</p>
@@ -445,68 +445,68 @@
 </pre><p>Check whether the character is part of MiscellaneousSymbolsandArrows UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsSupplementalArrowsB" id="xmlUCSIsSupplementalArrowsB"></a>Function: xmlUCSIsSupplementalArrowsB</h3><pre class="programlisting">int	xmlUCSIsSupplementalArrowsB	(int code)<br />
 </pre><p>Check whether the character is part of SupplementalArrows-B UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCurrencySymbols" id="xmlUCSIsCurrencySymbols"></a>Function: xmlUCSIsCurrencySymbols</h3><pre class="programlisting">int	xmlUCSIsCurrencySymbols	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCurrencySymbols" id="xmlUCSIsCurrencySymbols"></a>Function: xmlUCSIsCurrencySymbols</h3><pre class="programlisting">int	xmlUCSIsCurrencySymbols		(int code)<br />
 </pre><p>Check whether the character is part of CurrencySymbols UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsNumberForms" id="xmlUCSIsNumberForms"></a>Function: xmlUCSIsNumberForms</h3><pre class="programlisting">int	xmlUCSIsNumberForms	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsNumberForms" id="xmlUCSIsNumberForms"></a>Function: xmlUCSIsNumberForms</h3><pre class="programlisting">int	xmlUCSIsNumberForms		(int code)<br />
 </pre><p>Check whether the character is part of NumberForms UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsTibetan" id="xmlUCSIsTibetan"></a>Function: xmlUCSIsTibetan</h3><pre class="programlisting">int	xmlUCSIsTibetan	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsTibetan" id="xmlUCSIsTibetan"></a>Function: xmlUCSIsTibetan</h3><pre class="programlisting">int	xmlUCSIsTibetan			(int code)<br />
 </pre><p>Check whether the character is part of Tibetan UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsSupplementalMathematicalOperators" id="xmlUCSIsSupplementalMathematicalOperators"></a>Function: xmlUCSIsSupplementalMathematicalOperators</h3><pre class="programlisting">int	xmlUCSIsSupplementalMathematicalOperators	(int code)<br />
 </pre><p>Check whether the character is part of SupplementalMathematicalOperators UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCJKUnifiedIdeographsExtensionA" id="xmlUCSIsCJKUnifiedIdeographsExtensionA"></a>Function: xmlUCSIsCJKUnifiedIdeographsExtensionA</h3><pre class="programlisting">int	xmlUCSIsCJKUnifiedIdeographsExtensionA	(int code)<br />
 </pre><p>Check whether the character is part of CJKUnifiedIdeographsExtensionA UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsKanbun" id="xmlUCSIsKanbun"></a>Function: xmlUCSIsKanbun</h3><pre class="programlisting">int	xmlUCSIsKanbun	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsKanbun" id="xmlUCSIsKanbun"></a>Function: xmlUCSIsKanbun</h3><pre class="programlisting">int	xmlUCSIsKanbun			(int code)<br />
 </pre><p>Check whether the character is part of Kanbun UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCJKUnifiedIdeographsExtensionB" id="xmlUCSIsCJKUnifiedIdeographsExtensionB"></a>Function: xmlUCSIsCJKUnifiedIdeographsExtensionB</h3><pre class="programlisting">int	xmlUCSIsCJKUnifiedIdeographsExtensionB	(int code)<br />
 </pre><p>Check whether the character is part of CJKUnifiedIdeographsExtensionB UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsThai" id="xmlUCSIsThai"></a>Function: xmlUCSIsThai</h3><pre class="programlisting">int	xmlUCSIsThai	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsThai" id="xmlUCSIsThai"></a>Function: xmlUCSIsThai</h3><pre class="programlisting">int	xmlUCSIsThai			(int code)<br />
 </pre><p>Check whether the character is part of Thai UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsSpacingModifierLetters" id="xmlUCSIsSpacingModifierLetters"></a>Function: xmlUCSIsSpacingModifierLetters</h3><pre class="programlisting">int	xmlUCSIsSpacingModifierLetters	(int code)<br />
 </pre><p>Check whether the character is part of SpacingModifierLetters UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsRunic" id="xmlUCSIsRunic"></a>Function: xmlUCSIsRunic</h3><pre class="programlisting">int	xmlUCSIsRunic	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsRunic" id="xmlUCSIsRunic"></a>Function: xmlUCSIsRunic</h3><pre class="programlisting">int	xmlUCSIsRunic			(int code)<br />
 </pre><p>Check whether the character is part of Runic UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatSc" id="xmlUCSIsCatSc"></a>Function: xmlUCSIsCatSc</h3><pre class="programlisting">int	xmlUCSIsCatSc	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatSc" id="xmlUCSIsCatSc"></a>Function: xmlUCSIsCatSc</h3><pre class="programlisting">int	xmlUCSIsCatSc			(int code)<br />
 </pre><p>Check whether the character is part of Sc UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatPc" id="xmlUCSIsCatPc"></a>Function: xmlUCSIsCatPc</h3><pre class="programlisting">int	xmlUCSIsCatPc	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatPc" id="xmlUCSIsCatPc"></a>Function: xmlUCSIsCatPc</h3><pre class="programlisting">int	xmlUCSIsCatPc			(int code)<br />
 </pre><p>Check whether the character is part of Pc UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatMc" id="xmlUCSIsCatMc"></a>Function: xmlUCSIsCatMc</h3><pre class="programlisting">int	xmlUCSIsCatMc	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatMc" id="xmlUCSIsCatMc"></a>Function: xmlUCSIsCatMc</h3><pre class="programlisting">int	xmlUCSIsCatMc			(int code)<br />
 </pre><p>Check whether the character is part of Mc UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatPf" id="xmlUCSIsCatPf"></a>Function: xmlUCSIsCatPf</h3><pre class="programlisting">int	xmlUCSIsCatPf	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatPf" id="xmlUCSIsCatPf"></a>Function: xmlUCSIsCatPf</h3><pre class="programlisting">int	xmlUCSIsCatPf			(int code)<br />
 </pre><p>Check whether the character is part of Pf UCS Category</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCyrillicSupplement" id="xmlUCSIsCyrillicSupplement"></a>Function: xmlUCSIsCyrillicSupplement</h3><pre class="programlisting">int	xmlUCSIsCyrillicSupplement	(int code)<br />
 </pre><p>Check whether the character is part of CyrillicSupplement UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatPd" id="xmlUCSIsCatPd"></a>Function: xmlUCSIsCatPd</h3><pre class="programlisting">int	xmlUCSIsCatPd	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatPd" id="xmlUCSIsCatPd"></a>Function: xmlUCSIsCatPd</h3><pre class="programlisting">int	xmlUCSIsCatPd			(int code)<br />
 </pre><p>Check whether the character is part of Pd UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsMyanmar" id="xmlUCSIsMyanmar"></a>Function: xmlUCSIsMyanmar</h3><pre class="programlisting">int	xmlUCSIsMyanmar	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsMyanmar" id="xmlUCSIsMyanmar"></a>Function: xmlUCSIsMyanmar</h3><pre class="programlisting">int	xmlUCSIsMyanmar			(int code)<br />
 </pre><p>Check whether the character is part of Myanmar UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatPi" id="xmlUCSIsCatPi"></a>Function: xmlUCSIsCatPi</h3><pre class="programlisting">int	xmlUCSIsCatPi	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatPi" id="xmlUCSIsCatPi"></a>Function: xmlUCSIsCatPi</h3><pre class="programlisting">int	xmlUCSIsCatPi			(int code)<br />
 </pre><p>Check whether the character is part of Pi UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsHiragana" id="xmlUCSIsHiragana"></a>Function: xmlUCSIsHiragana</h3><pre class="programlisting">int	xmlUCSIsHiragana	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsHiragana" id="xmlUCSIsHiragana"></a>Function: xmlUCSIsHiragana</h3><pre class="programlisting">int	xmlUCSIsHiragana		(int code)<br />
 </pre><p>Check whether the character is part of Hiragana UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatPo" id="xmlUCSIsCatPo"></a>Function: xmlUCSIsCatPo</h3><pre class="programlisting">int	xmlUCSIsCatPo	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatPo" id="xmlUCSIsCatPo"></a>Function: xmlUCSIsCatPo</h3><pre class="programlisting">int	xmlUCSIsCatPo			(int code)<br />
 </pre><p>Check whether the character is part of Po UCS Category</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsHighPrivateUseSurrogates" id="xmlUCSIsHighPrivateUseSurrogates"></a>Function: xmlUCSIsHighPrivateUseSurrogates</h3><pre class="programlisting">int	xmlUCSIsHighPrivateUseSurrogates	(int code)<br />
 </pre><p>Check whether the character is part of HighPrivateUseSurrogates UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsLatinExtendedAdditional" id="xmlUCSIsLatinExtendedAdditional"></a>Function: xmlUCSIsLatinExtendedAdditional</h3><pre class="programlisting">int	xmlUCSIsLatinExtendedAdditional	(int code)<br />
 </pre><p>Check whether the character is part of LatinExtendedAdditional UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatPs" id="xmlUCSIsCatPs"></a>Function: xmlUCSIsCatPs</h3><pre class="programlisting">int	xmlUCSIsCatPs	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatPs" id="xmlUCSIsCatPs"></a>Function: xmlUCSIsCatPs</h3><pre class="programlisting">int	xmlUCSIsCatPs			(int code)<br />
 </pre><p>Check whether the character is part of Ps UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsSyriac" id="xmlUCSIsSyriac"></a>Function: xmlUCSIsSyriac</h3><pre class="programlisting">int	xmlUCSIsSyriac	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsSyriac" id="xmlUCSIsSyriac"></a>Function: xmlUCSIsSyriac</h3><pre class="programlisting">int	xmlUCSIsSyriac			(int code)<br />
 </pre><p>Check whether the character is part of Syriac UCS Block</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsSuperscriptsandSubscripts" id="xmlUCSIsSuperscriptsandSubscripts"></a>Function: xmlUCSIsSuperscriptsandSubscripts</h3><pre class="programlisting">int	xmlUCSIsSuperscriptsandSubscripts	(int code)<br />
 </pre><p>Check whether the character is part of SuperscriptsandSubscripts UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsHighSurrogates" id="xmlUCSIsHighSurrogates"></a>Function: xmlUCSIsHighSurrogates</h3><pre class="programlisting">int	xmlUCSIsHighSurrogates	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsHighSurrogates" id="xmlUCSIsHighSurrogates"></a>Function: xmlUCSIsHighSurrogates</h3><pre class="programlisting">int	xmlUCSIsHighSurrogates		(int code)<br />
 </pre><p>Check whether the character is part of HighSurrogates UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatMn" id="xmlUCSIsCatMn"></a>Function: xmlUCSIsCatMn</h3><pre class="programlisting">int	xmlUCSIsCatMn	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatMn" id="xmlUCSIsCatMn"></a>Function: xmlUCSIsCatMn</h3><pre class="programlisting">int	xmlUCSIsCatMn			(int code)<br />
 </pre><p>Check whether the character is part of Mn UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsLao" id="xmlUCSIsLao"></a>Function: xmlUCSIsLao</h3><pre class="programlisting">int	xmlUCSIsLao	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsLao" id="xmlUCSIsLao"></a>Function: xmlUCSIsLao</h3><pre class="programlisting">int	xmlUCSIsLao			(int code)<br />
 </pre><p>Check whether the character is part of Lao UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsOriya" id="xmlUCSIsOriya"></a>Function: xmlUCSIsOriya</h3><pre class="programlisting">int	xmlUCSIsOriya	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsOriya" id="xmlUCSIsOriya"></a>Function: xmlUCSIsOriya</h3><pre class="programlisting">int	xmlUCSIsOriya			(int code)<br />
 </pre><p>Check whether the character is part of Oriya UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsBraillePatterns" id="xmlUCSIsBraillePatterns"></a>Function: xmlUCSIsBraillePatterns</h3><pre class="programlisting">int	xmlUCSIsBraillePatterns	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsBraillePatterns" id="xmlUCSIsBraillePatterns"></a>Function: xmlUCSIsBraillePatterns</h3><pre class="programlisting">int	xmlUCSIsBraillePatterns		(int code)<br />
 </pre><p>Check whether the character is part of BraillePatterns UCS Block</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatMe" id="xmlUCSIsCatMe"></a>Function: xmlUCSIsCatMe</h3><pre class="programlisting">int	xmlUCSIsCatMe	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatMe" id="xmlUCSIsCatMe"></a>Function: xmlUCSIsCatMe</h3><pre class="programlisting">int	xmlUCSIsCatMe			(int code)<br />
 </pre><p>Check whether the character is part of Me UCS Category</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatS" id="xmlUCSIsCatS"></a>Function: xmlUCSIsCatS</h3><pre class="programlisting">int	xmlUCSIsCatS	(int code)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlUCSIsCatS" id="xmlUCSIsCatS"></a>Function: xmlUCSIsCatS</h3><pre class="programlisting">int	xmlUCSIsCatS			(int code)<br />
 </pre><p>Check whether the character is part of S UCS Category</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>code</tt></i>:</span></td><td>UCS code point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-xmlversion.html b/doc/html/libxml-xmlversion.html
index 877e800..93f6d74 100644
--- a/doc/html/libxml-xmlversion.html
+++ b/doc/html/libxml-xmlversion.html
@@ -10,81 +10,13 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xmlversion from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlversion from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlunicode.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlunicode.html">xmlunicode</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlwriter.html">xmlwriter</a></th><td><a accesskey="n" href="libxml-xmlwriter.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>compile-time version informations for the XML library </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#LIBXML_VERSION_STRING">LIBXML_VERSION_STRING</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_DOCB_ENABLED">LIBXML_DOCB_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_CATALOG_ENABLED">LIBXML_CATALOG_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_LEGACY_ENABLED">LIBXML_LEGACY_ENABLED</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlCheckVersion">xmlCheckVersion</a>	(int version)<br />
-</pre><pre class="programlisting">#define <a href="#LIBXML_REGEXP_ENABLED">LIBXML_REGEXP_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_XPTR_ENABLED">LIBXML_XPTR_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_READER_ENABLED">LIBXML_READER_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_ICONV_ENABLED">LIBXML_ICONV_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_HTML_ENABLED">LIBXML_HTML_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_DOTTED_VERSION">LIBXML_DOTTED_VERSION</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_UNICODE_ENABLED">LIBXML_UNICODE_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_ISO8859X_ENABLED">LIBXML_ISO8859X_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_DEBUG_ENABLED">LIBXML_DEBUG_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_XINCLUDE_ENABLED">LIBXML_XINCLUDE_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_FTP_ENABLED">LIBXML_FTP_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_AUTOMATA_ENABLED">LIBXML_AUTOMATA_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#ATTRIBUTE_UNUSED">ATTRIBUTE_UNUSED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_PUSH_ENABLED">LIBXML_PUSH_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#WITHOUT_TRIO">WITHOUT_TRIO</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_C14N_ENABLED">LIBXML_C14N_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_SCHEMAS_ENABLED">LIBXML_SCHEMAS_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#DEBUG_MEMORY_LOCATION">DEBUG_MEMORY_LOCATION</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_SAX1_ENABLED">LIBXML_SAX1_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_TEST_VERSION">LIBXML_TEST_VERSION</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_HTTP_ENABLED">LIBXML_HTTP_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_OUTPUT_ENABLED">LIBXML_OUTPUT_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#WITH_TRIO">WITH_TRIO</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_THREAD_ENABLED">LIBXML_THREAD_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_XPATH_ENABLED">LIBXML_XPATH_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_VERSION">LIBXML_VERSION</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_VALID_ENABLED">LIBXML_VALID_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_TREE_ENABLED">LIBXML_TREE_ENABLED</a>
-
-</pre><pre class="programlisting">#define <a href="#LIBXML_WRITER_ENABLED">LIBXML_WRITER_ENABLED</a>
-
-</pre><h2>Description</h2>
+    </style><title>Module xmlversion from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlversion from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlunicode.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlunicode.html">xmlunicode</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xmlwriter.html">xmlwriter</a></th><td><a accesskey="n" href="libxml-xmlwriter.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>compile-time version informations for the XML library </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#ATTRIBUTE_UNUSED">ATTRIBUTE_UNUSED</a></pre><pre class="programlisting">#define <a href="#DEBUG_MEMORY_LOCATION">DEBUG_MEMORY_LOCATION</a></pre><pre class="programlisting">#define <a href="#LIBXML_AUTOMATA_ENABLED">LIBXML_AUTOMATA_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_C14N_ENABLED">LIBXML_C14N_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_CATALOG_ENABLED">LIBXML_CATALOG_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_DEBUG_ENABLED">LIBXML_DEBUG_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_DOCB_ENABLED">LIBXML_DOCB_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_DOTTED_VERSION">LIBXML_DOTTED_VERSION</a></pre><pre class="programlisting">#define <a href="#LIBXML_FTP_ENABLED">LIBXML_FTP_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_HTML_ENABLED">LIBXML_HTML_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_HTTP_ENABLED">LIBXML_HTTP_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_ICONV_ENABLED">LIBXML_ICONV_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_ISO8859X_ENABLED">LIBXML_ISO8859X_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_LEGACY_ENABLED">LIBXML_LEGACY_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_OUTPUT_ENABLED">LIBXML_OUTPUT_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_PUSH_ENABLED">LIBXML_PUSH_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_READER_ENABLED">LIBXML_READER_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_REGEXP_ENABLED">LIBXML_REGEXP_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_SAX1_ENABLED">LIBXML_SAX1_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_SCHEMAS_ENABLED">LIBXML_SCHEMAS_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_TEST_VERSION">LIBXML_TEST_VERSION</a></pre><pre class="programlisting">#define <a href="#LIBXML_THREAD_ENABLED">LIBXML_THREAD_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_TREE_ENABLED">LIBXML_TREE_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_UNICODE_ENABLED">LIBXML_UNICODE_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_VALID_ENABLED">LIBXML_VALID_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_VERSION">LIBXML_VERSION</a></pre><pre class="programlisting">#define <a href="#LIBXML_VERSION_STRING">LIBXML_VERSION_STRING</a></pre><pre class="programlisting">#define <a href="#LIBXML_WRITER_ENABLED">LIBXML_WRITER_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_XINCLUDE_ENABLED">LIBXML_XINCLUDE_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_XPATH_ENABLED">LIBXML_XPATH_ENABLED</a></pre><pre class="programlisting">#define <a href="#LIBXML_XPTR_ENABLED">LIBXML_XPTR_ENABLED</a></pre><pre class="programlisting">#define <a href="#WITHOUT_TRIO">WITHOUT_TRIO</a></pre><pre class="programlisting">#define <a href="#WITH_TRIO">WITH_TRIO</a></pre><pre class="programlisting">void	<a href="#xmlCheckVersion">xmlCheckVersion</a>			(int version)</pre>
+<h2>Description</h2>
 <h3><a name="LIBXML_VERSION_STRING" id="LIBXML_VERSION_STRING"></a>Macro: LIBXML_VERSION_STRING</h3><pre>#define LIBXML_VERSION_STRING</pre><p>the version number string, 1.2.3 value is &quot;1002003&quot;</p>
 <h3><a name="LIBXML_DOCB_ENABLED" id="LIBXML_DOCB_ENABLED"></a>Macro: LIBXML_DOCB_ENABLED</h3><pre>#define LIBXML_DOCB_ENABLED</pre><p>Whether the SGML Docbook support is configured in</p>
 <h3><a name="LIBXML_CATALOG_ENABLED" id="LIBXML_CATALOG_ENABLED"></a>Macro: LIBXML_CATALOG_ENABLED</h3><pre>#define LIBXML_CATALOG_ENABLED</pre><p>Whether the Catalog support is configured in</p>
 <h3><a name="LIBXML_LEGACY_ENABLED" id="LIBXML_LEGACY_ENABLED"></a>Macro: LIBXML_LEGACY_ENABLED</h3><pre>#define LIBXML_LEGACY_ENABLED</pre><p>Whether the deprecated APIs are compiled in for compatibility</p>
-<h3><a name="xmlCheckVersion" id="xmlCheckVersion"></a>Function: xmlCheckVersion</h3><pre class="programlisting">void	xmlCheckVersion	(int version)<br />
-</pre><p>check the compiled lib version against the include one. This can warn or immediately kill the application</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>version</tt></i>:</span></td><td>the include version number</td></tr></tbody></table></div><h3><a name="LIBXML_REGEXP_ENABLED" id="LIBXML_REGEXP_ENABLED"></a>Macro: LIBXML_REGEXP_ENABLED</h3><pre>#define LIBXML_REGEXP_ENABLED</pre><p>Whether the regular expressions interfaces are compiled in</p>
+<h3><a name="LIBXML_REGEXP_ENABLED" id="LIBXML_REGEXP_ENABLED"></a>Macro: LIBXML_REGEXP_ENABLED</h3><pre>#define LIBXML_REGEXP_ENABLED</pre><p>Whether the regular expressions interfaces are compiled in</p>
 <h3><a name="LIBXML_XPTR_ENABLED" id="LIBXML_XPTR_ENABLED"></a>Macro: LIBXML_XPTR_ENABLED</h3><pre>#define LIBXML_XPTR_ENABLED</pre><p>Whether XPointer is configured in</p>
 <h3><a name="LIBXML_READER_ENABLED" id="LIBXML_READER_ENABLED"></a>Macro: LIBXML_READER_ENABLED</h3><pre>#define LIBXML_READER_ENABLED</pre><p>Whether the xmlReader parsing interface is configured in</p>
 <h3><a name="LIBXML_ICONV_ENABLED" id="LIBXML_ICONV_ENABLED"></a>Macro: LIBXML_ICONV_ENABLED</h3><pre>#define LIBXML_ICONV_ENABLED</pre><p>Whether iconv support is available</p>
@@ -113,4 +45,6 @@
 <h3><a name="LIBXML_VALID_ENABLED" id="LIBXML_VALID_ENABLED"></a>Macro: LIBXML_VALID_ENABLED</h3><pre>#define LIBXML_VALID_ENABLED</pre><p>Whether the DTD validation support is configured in</p>
 <h3><a name="LIBXML_TREE_ENABLED" id="LIBXML_TREE_ENABLED"></a>Macro: LIBXML_TREE_ENABLED</h3><pre>#define LIBXML_TREE_ENABLED</pre><p>Whether the DOM like tree manipulation API support is configured in</p>
 <h3><a name="LIBXML_WRITER_ENABLED" id="LIBXML_WRITER_ENABLED"></a>Macro: LIBXML_WRITER_ENABLED</h3><pre>#define LIBXML_WRITER_ENABLED</pre><p>Whether the xmlWriter saving interface is configured in</p>
-<p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<h3><a name="xmlCheckVersion" id="xmlCheckVersion"></a>Function: xmlCheckVersion</h3><pre class="programlisting">void	xmlCheckVersion			(int version)<br />
+</pre><p>check the compiled lib version against the include one. This can warn or immediately kill the application</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>version</tt></i>:</span></td><td>the include version number</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-xmlwriter.html b/doc/html/libxml-xmlwriter.html
index 54662f2..04cf778 100644
--- a/doc/html/libxml-xmlwriter.html
+++ b/doc/html/libxml-xmlwriter.html
@@ -10,228 +10,219 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xmlwriter from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlwriter from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlversion.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlversion.html">xmlversion</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xpath.html">xpath</a></th><td><a accesskey="n" href="libxml-xpath.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>text writing API for XML </p><h2>Table of Contents</h2><pre class="programlisting">int	<a href="#xmlTextWriterStartDocument">xmlTextWriterStartDocument</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * version, <br />				 const char * encoding, <br />				 const char * standalone)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterEndPI">xmlTextWriterEndPI</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteBase64">xmlTextWriterWriteBase64</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * data, <br />				 int start, <br />				 int len)<br />
-</pre><pre class="programlisting">#define <a href="#xmlTextWriterWriteProcessingInstruction">xmlTextWriterWriteProcessingInstruction</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterStartAttribute">xmlTextWriterStartAttribute</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteComment">xmlTextWriterWriteComment</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteRawLen">xmlTextWriterWriteRawLen</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />				 int len)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatDTD">xmlTextWriterWriteVFormatDTD</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />				 const char * format, <br />				 va_list argptr)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatCDATA">xmlTextWriterWriteVFormatCDATA</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 va_list argptr)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterStartAttributeNS">xmlTextWriterStartAttributeNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatAttributeNS">xmlTextWriterWriteFormatAttributeNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />				 const char * format, <br />				 ... ...)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteDTDEntity">xmlTextWriterWriteDTDEntity</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 int pe, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ndataid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatPI">xmlTextWriterWriteVFormatPI</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />				 const char * format, <br />				 va_list argptr)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteBinHex">xmlTextWriterWriteBinHex</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * data, <br />				 int start, <br />				 int len)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterEndAttribute">xmlTextWriterEndAttribute</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatDTDAttlist">xmlTextWriterWriteVFormatDTDAttlist</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 va_list argptr)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatPI">xmlTextWriterWriteFormatPI</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />				 const char * format, <br />				 ... ...)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterEndDocument">xmlTextWriterEndDocument</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteDTDAttlist">xmlTextWriterWriteDTDAttlist</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatString">xmlTextWriterWriteFormatString</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 ... ...)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterEndCDATA">xmlTextWriterEndCDATA</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterStartElementNS">xmlTextWriterStartElementNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)<br />
-</pre><pre class="programlisting">Structure <a name="xmlTextWriter" id="xmlTextWriter">xmlTextWriter</a><br />struct _xmlTextWriter {
+    </style><title>Module xmlwriter from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xmlwriter from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlversion.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlversion.html">xmlversion</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xpath.html">xpath</a></th><td><a accesskey="n" href="libxml-xpath.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>text writing API for XML </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#xmlTextWriterEndDTDAttlist">xmlTextWriterEndDTDAttlist</a></pre><pre class="programlisting">#define <a href="#xmlTextWriterEndDTDElement">xmlTextWriterEndDTDElement</a></pre><pre class="programlisting">#define <a href="#xmlTextWriterEndDTDEntity">xmlTextWriterEndDTDEntity</a></pre><pre class="programlisting">#define <a href="#xmlTextWriterWriteDocType">xmlTextWriterWriteDocType</a></pre><pre class="programlisting">#define <a href="#xmlTextWriterWriteProcessingInstruction">xmlTextWriterWriteProcessingInstruction</a></pre><pre class="programlisting">Structure <a href="#xmlTextWriter">xmlTextWriter</a><br />struct _xmlTextWriter
 The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting"><a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a>	<a href="#xmlNewTextWriter">xmlNewTextWriter</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out)<br />
-</pre><pre class="programlisting">void	<a href="#xmlFreeTextWriter">xmlFreeTextWriter</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
-</pre><pre class="programlisting">#define <a href="#xmlTextWriterWriteDocType">xmlTextWriterWriteDocType</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterStartPI">xmlTextWriterStartPI</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterStartElement">xmlTextWriterStartElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteDTDExternalEntity">xmlTextWriterWriteDTDExternalEntity</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 int pe, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ndataid)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatRaw">xmlTextWriterWriteFormatRaw</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 ... ...)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteCDATA">xmlTextWriterWriteCDATA</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatDTDInternalEntity">xmlTextWriterWriteVFormatDTDInternalEntity</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 int pe, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 va_list argptr)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatAttribute">xmlTextWriterWriteVFormatAttribute</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 va_list argptr)<br />
-</pre><pre class="programlisting">#define <a href="#xmlTextWriterEndDTDElement">xmlTextWriterEndDTDElement</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterEndDTD">xmlTextWriterEndDTD</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteElement">xmlTextWriterWriteElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterEndElement">xmlTextWriterEndElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatComment">xmlTextWriterWriteVFormatComment</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 va_list argptr)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterStartCDATA">xmlTextWriterStartCDATA</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
-</pre><pre class="programlisting"><a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a>	<a href="#xmlNewTextWriterFilename">xmlNewTextWriterFilename</a>	(const char * uri, <br />				 int compression)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatElement">xmlTextWriterWriteVFormatElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 va_list argptr)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatComment">xmlTextWriterWriteFormatComment</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 ... ...)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteAttributeNS">xmlTextWriterWriteAttributeNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWritePI">xmlTextWriterWritePI</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatRaw">xmlTextWriterWriteVFormatRaw</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 va_list argptr)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatDTDInternalEntity">xmlTextWriterWriteFormatDTDInternalEntity</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 int pe, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 ... ...)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatString">xmlTextWriterWriteVFormatString</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 va_list argptr)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteDTDInternalEntity">xmlTextWriterWriteDTDInternalEntity</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 int pe, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatElementNS">xmlTextWriterWriteVFormatElementNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />				 const char * format, <br />				 va_list argptr)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteDTDNotation">xmlTextWriterWriteDTDNotation</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatElement">xmlTextWriterWriteFormatElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 ... ...)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteElementNS">xmlTextWriterWriteElementNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteString">xmlTextWriterWriteString</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteRaw">xmlTextWriterWriteRaw</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterFullEndElement">xmlTextWriterFullEndElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatAttributeNS">xmlTextWriterWriteVFormatAttributeNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />				 const char * format, <br />				 va_list argptr)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterFlush">xmlTextWriterFlush</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterStartDTD">xmlTextWriterStartDTD</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteAttribute">xmlTextWriterWriteAttribute</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatDTDElement">xmlTextWriterWriteFormatDTDElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 ... ...)<br />
-</pre><pre class="programlisting">#define <a href="#xmlTextWriterEndDTDAttlist">xmlTextWriterEndDTDAttlist</a>
-
-</pre><pre class="programlisting"><a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a>	<a href="#xmlNewTextWriterMemory">xmlNewTextWriterMemory</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 int compression)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatCDATA">xmlTextWriterWriteFormatCDATA</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 ... ...)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterStartDTDAttlist">xmlTextWriterStartDTDAttlist</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterStartDTDElement">xmlTextWriterStartDTDElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatDTD">xmlTextWriterWriteFormatDTD</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />				 const char * format, <br />				 ... ...)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatDTDAttlist">xmlTextWriterWriteFormatDTDAttlist</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 ... ...)<br />
 </pre><pre class="programlisting">Typedef <a href="libxml-xmlwriter.html#xmlTextWriter">xmlTextWriter</a> * <a name="xmlTextWriterPtr" id="xmlTextWriterPtr">xmlTextWriterPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteDTDElement">xmlTextWriterWriteDTDElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteDTD">xmlTextWriterWriteDTD</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * subset)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatAttribute">xmlTextWriterWriteFormatAttribute</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 ... ...)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterStartDTDEntity">xmlTextWriterStartDTDEntity</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 int pe, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatDTDElement">xmlTextWriterWriteVFormatDTDElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 va_list argptr)<br />
-</pre><pre class="programlisting">#define <a href="#xmlTextWriterEndDTDEntity">xmlTextWriterEndDTDEntity</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatElementNS">xmlTextWriterWriteFormatElementNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />				 const char * format, <br />				 ... ...)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlTextWriterStartDocument" id="xmlTextWriterStartDocument"></a>Function: xmlTextWriterStartDocument</h3><pre class="programlisting">int	xmlTextWriterStartDocument	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * version, <br />				 const char * encoding, <br />				 const char * standalone)<br />
+</pre><pre class="programlisting">void	<a href="#xmlFreeTextWriter">xmlFreeTextWriter</a>		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)</pre>
+<pre class="programlisting"><a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a>	<a href="#xmlNewTextWriter">xmlNewTextWriter</a>	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out)</pre>
+<pre class="programlisting"><a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a>	<a href="#xmlNewTextWriterFilename">xmlNewTextWriterFilename</a>	(const char * uri, <br />							 int compression)</pre>
+<pre class="programlisting"><a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a>	<a href="#xmlNewTextWriterMemory">xmlNewTextWriterMemory</a>	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />						 int compression)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterEndAttribute">xmlTextWriterEndAttribute</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterEndCDATA">xmlTextWriterEndCDATA</a>		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterEndDTD">xmlTextWriterEndDTD</a>		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterEndDocument">xmlTextWriterEndDocument</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterEndElement">xmlTextWriterEndElement</a>		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterEndPI">xmlTextWriterEndPI</a>		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterFlush">xmlTextWriterFlush</a>		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterFullEndElement">xmlTextWriterFullEndElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterStartAttribute">xmlTextWriterStartAttribute</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterStartAttributeNS">xmlTextWriterStartAttributeNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterStartCDATA">xmlTextWriterStartCDATA</a>		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterStartDTD">xmlTextWriterStartDTD</a>		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterStartDTDAttlist">xmlTextWriterStartDTDAttlist</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterStartDTDElement">xmlTextWriterStartDTDElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterStartDTDEntity">xmlTextWriterStartDTDEntity</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 int pe, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterStartDocument">xmlTextWriterStartDocument</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * version, <br />					 const char * encoding, <br />					 const char * standalone)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterStartElement">xmlTextWriterStartElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterStartElementNS">xmlTextWriterStartElementNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterStartPI">xmlTextWriterStartPI</a>		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteAttribute">xmlTextWriterWriteAttribute</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteAttributeNS">xmlTextWriterWriteAttributeNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteBase64">xmlTextWriterWriteBase64</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * data, <br />					 int start, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteBinHex">xmlTextWriterWriteBinHex</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * data, <br />					 int start, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteCDATA">xmlTextWriterWriteCDATA</a>		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteComment">xmlTextWriterWriteComment</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteDTD">xmlTextWriterWriteDTD</a>		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * subset)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteDTDAttlist">xmlTextWriterWriteDTDAttlist</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteDTDElement">xmlTextWriterWriteDTDElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteDTDEntity">xmlTextWriterWriteDTDEntity</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 int pe, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ndataid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteDTDExternalEntity">xmlTextWriterWriteDTDExternalEntity</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 int pe, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ndataid)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteDTDInternalEntity">xmlTextWriterWriteDTDInternalEntity</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 int pe, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteDTDNotation">xmlTextWriterWriteDTDNotation</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteElement">xmlTextWriterWriteElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteElementNS">xmlTextWriterWriteElementNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatAttribute">xmlTextWriterWriteFormatAttribute</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const char * format, <br />						 ... ...)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatAttributeNS">xmlTextWriterWriteFormatAttributeNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />						 const char * format, <br />						 ... ...)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatCDATA">xmlTextWriterWriteFormatCDATA</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * format, <br />					 ... ...)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatComment">xmlTextWriterWriteFormatComment</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * format, <br />					 ... ...)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatDTD">xmlTextWriterWriteFormatDTD</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />					 const char * format, <br />					 ... ...)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatDTDAttlist">xmlTextWriterWriteFormatDTDAttlist</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const char * format, <br />						 ... ...)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatDTDElement">xmlTextWriterWriteFormatDTDElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const char * format, <br />						 ... ...)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatDTDInternalEntity">xmlTextWriterWriteFormatDTDInternalEntity</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />							 int pe, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />							 const char * format, <br />							 ... ...)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatElement">xmlTextWriterWriteFormatElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const char * format, <br />					 ... ...)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatElementNS">xmlTextWriterWriteFormatElementNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />						 const char * format, <br />						 ... ...)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatPI">xmlTextWriterWriteFormatPI</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />					 const char * format, <br />					 ... ...)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatRaw">xmlTextWriterWriteFormatRaw</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * format, <br />					 ... ...)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteFormatString">xmlTextWriterWriteFormatString</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * format, <br />					 ... ...)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWritePI">xmlTextWriterWritePI</a>		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteRaw">xmlTextWriterWriteRaw</a>		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteRawLen">xmlTextWriterWriteRawLen</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />					 int len)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteString">xmlTextWriterWriteString</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatAttribute">xmlTextWriterWriteVFormatAttribute</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const char * format, <br />						 va_list argptr)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatAttributeNS">xmlTextWriterWriteVFormatAttributeNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />						 const char * format, <br />						 va_list argptr)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatCDATA">xmlTextWriterWriteVFormatCDATA</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * format, <br />					 va_list argptr)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatComment">xmlTextWriterWriteVFormatComment</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const char * format, <br />						 va_list argptr)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatDTD">xmlTextWriterWriteVFormatDTD</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />					 const char * format, <br />					 va_list argptr)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatDTDAttlist">xmlTextWriterWriteVFormatDTDAttlist</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const char * format, <br />						 va_list argptr)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatDTDElement">xmlTextWriterWriteVFormatDTDElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const char * format, <br />						 va_list argptr)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatDTDInternalEntity">xmlTextWriterWriteVFormatDTDInternalEntity</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />							 int pe, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />							 const char * format, <br />							 va_list argptr)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatElement">xmlTextWriterWriteVFormatElement</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const char * format, <br />						 va_list argptr)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatElementNS">xmlTextWriterWriteVFormatElementNS</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />						 const char * format, <br />						 va_list argptr)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatPI">xmlTextWriterWriteVFormatPI</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />					 const char * format, <br />					 va_list argptr)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatRaw">xmlTextWriterWriteVFormatRaw</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * format, <br />					 va_list argptr)</pre>
+<pre class="programlisting">int	<a href="#xmlTextWriterWriteVFormatString">xmlTextWriterWriteVFormatString</a>	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * format, <br />					 va_list argptr)</pre>
+<h2>Description</h2>
+<h3><a name="xmlTextWriterWriteProcessingInstruction" id="xmlTextWriterWriteProcessingInstruction"></a>Macro: xmlTextWriterWriteProcessingInstruction</h3><pre>#define xmlTextWriterWriteProcessingInstruction</pre><p></p>
+<h3><a name="xmlTextWriterEndDTDEntity" id="xmlTextWriterEndDTDEntity"></a>Macro: xmlTextWriterEndDTDEntity</h3><pre>#define xmlTextWriterEndDTDEntity</pre><p></p>
+<h3><a name="xmlTextWriterEndDTDElement" id="xmlTextWriterEndDTDElement"></a>Macro: xmlTextWriterEndDTDElement</h3><pre>#define xmlTextWriterEndDTDElement</pre><p></p>
+<h3><a name="xmlTextWriterEndDTDAttlist" id="xmlTextWriterEndDTDAttlist"></a>Macro: xmlTextWriterEndDTDAttlist</h3><pre>#define xmlTextWriterEndDTDAttlist</pre><p></p>
+<h3><a name="xmlTextWriterWriteDocType" id="xmlTextWriterWriteDocType"></a>Macro: xmlTextWriterWriteDocType</h3><pre>#define xmlTextWriterWriteDocType</pre><p></p>
+<h3><a name="xmlTextWriter" id="xmlTextWriter">Structure xmlTextWriter</a></h3><pre class="programlisting">Structure xmlTextWriter<br />struct _xmlTextWriter {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlTextWriterStartDocument" id="xmlTextWriterStartDocument"></a>Function: xmlTextWriterStartDocument</h3><pre class="programlisting">int	xmlTextWriterStartDocument	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * version, <br />					 const char * encoding, <br />					 const char * standalone)<br />
 </pre><p>Start a new xml document</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>version</tt></i>:</span></td><td>the xml version (&quot;1.0&quot;) or NULL for default (&quot;1.0&quot;)</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding or NULL for default</td></tr><tr><td><span class="term"><i><tt>standalone</tt></i>:</span></td><td>&quot;yes&quot; or &quot;no&quot; or NULL for default</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterEndPI" id="xmlTextWriterEndPI"></a>Function: xmlTextWriterEndPI</h3><pre class="programlisting">int	xmlTextWriterEndPI	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
-</pre><p>End the current xml PI.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteBase64" id="xmlTextWriterWriteBase64"></a>Function: xmlTextWriterWriteBase64</h3><pre class="programlisting">int	xmlTextWriterWriteBase64	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * data, <br />				 int start, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>version</tt></i>:</span></td><td>the xml version (&quot;1.0&quot;) or NULL for default (&quot;1.0&quot;)</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding or NULL for default</td></tr><tr><td><span class="term"><i><tt>standalone</tt></i>:</span></td><td>&quot;yes&quot; or &quot;no&quot; or NULL for default</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterEndDocument" id="xmlTextWriterEndDocument"></a>Function: xmlTextWriterEndDocument</h3><pre class="programlisting">int	xmlTextWriterEndDocument	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
+</pre><p>End an xml document. All open elements are closed</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteBase64" id="xmlTextWriterWriteBase64"></a>Function: xmlTextWriterWriteBase64</h3><pre class="programlisting">int	xmlTextWriterWriteBase64	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * data, <br />					 int start, <br />					 int len)<br />
 </pre><p>Write an base64 encoded xml text.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>binary data</td></tr><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the position within the data of the first byte to encode</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of bytes to encode</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteProcessingInstruction" id="xmlTextWriterWriteProcessingInstruction"></a>Macro: xmlTextWriterWriteProcessingInstruction</h3><pre>#define xmlTextWriterWriteProcessingInstruction</pre><p></p>
-<h3><a name="xmlTextWriterStartAttribute" id="xmlTextWriterStartAttribute"></a>Function: xmlTextWriterStartAttribute</h3><pre class="programlisting">int	xmlTextWriterStartAttribute	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>binary data</td></tr><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the position within the data of the first byte to encode</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of bytes to encode</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterStartAttribute" id="xmlTextWriterStartAttribute"></a>Function: xmlTextWriterStartAttribute</h3><pre class="programlisting">int	xmlTextWriterStartAttribute	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Start an xml attribute.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteComment" id="xmlTextWriterWriteComment"></a>Function: xmlTextWriterWriteComment</h3><pre class="programlisting">int	xmlTextWriterWriteComment	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteComment" id="xmlTextWriterWriteComment"></a>Function: xmlTextWriterWriteComment</h3><pre class="programlisting">int	xmlTextWriterWriteComment	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p>Write an xml comment.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td><a href="libxml-SAX.html#comment">comment</a> string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteRawLen" id="xmlTextWriterWriteRawLen"></a>Function: xmlTextWriterWriteRawLen</h3><pre class="programlisting">int	xmlTextWriterWriteRawLen	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td><a href="libxml-SAX.html#comment">comment</a> string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteRawLen" id="xmlTextWriterWriteRawLen"></a>Function: xmlTextWriterWriteRawLen</h3><pre class="programlisting">int	xmlTextWriterWriteRawLen	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content, <br />					 int len)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatDTD" id="xmlTextWriterWriteVFormatDTD"></a>Function: xmlTextWriterWriteVFormatDTD</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatDTD	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />				 const char * format, <br />				 va_list argptr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatDTD" id="xmlTextWriterWriteVFormatDTD"></a>Function: xmlTextWriterWriteVFormatDTD</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatDTD	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />					 const char * format, <br />					 va_list argptr)<br />
 </pre><p>Write a DTD with a formatted markup declarations part.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the DTD</td></tr><tr><td><span class="term"><i><tt>pubid</tt></i>:</span></td><td>the public identifier, which is an alternative to the system identifier</td></tr><tr><td><span class="term"><i><tt>sysid</tt></i>:</span></td><td>the system identifier, which is the URI of the DTD</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatCDATA" id="xmlTextWriterWriteVFormatCDATA"></a>Function: xmlTextWriterWriteVFormatCDATA</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatCDATA	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 va_list argptr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the DTD</td></tr><tr><td><span class="term"><i><tt>pubid</tt></i>:</span></td><td>the public identifier, which is an alternative to the system identifier</td></tr><tr><td><span class="term"><i><tt>sysid</tt></i>:</span></td><td>the system identifier, which is the URI of the DTD</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatCDATA" id="xmlTextWriterWriteVFormatCDATA"></a>Function: xmlTextWriterWriteVFormatCDATA</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatCDATA	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * format, <br />					 va_list argptr)<br />
 </pre><p>Write a formatted xml CDATA.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterStartAttributeNS" id="xmlTextWriterStartAttributeNS"></a>Function: xmlTextWriterStartAttributeNS</h3><pre class="programlisting">int	xmlTextWriterStartAttributeNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterStartAttributeNS" id="xmlTextWriterStartAttributeNS"></a>Function: xmlTextWriterStartAttributeNS</h3><pre class="programlisting">int	xmlTextWriterStartAttributeNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)<br />
 </pre><p>Start an xml <a href="libxml-SAX.html#attribute">attribute</a> with namespace support.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>namespace prefix or NULL</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element local name</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>namespace URI or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatAttributeNS" id="xmlTextWriterWriteFormatAttributeNS"></a>Function: xmlTextWriterWriteFormatAttributeNS</h3><pre class="programlisting">int	xmlTextWriterWriteFormatAttributeNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />				 const char * format, <br />				 ... ...)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>namespace prefix or NULL</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element local name</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>namespace URI or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatAttributeNS" id="xmlTextWriterWriteFormatAttributeNS"></a>Function: xmlTextWriterWriteFormatAttributeNS</h3><pre class="programlisting">int	xmlTextWriterWriteFormatAttributeNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />						 const char * format, <br />						 ... ...)<br />
 </pre><p>Write a formatted xml attribute.with namespace support</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>namespace prefix</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> local name</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>namespace URI</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteDTDEntity" id="xmlTextWriterWriteDTDEntity"></a>Function: xmlTextWriterWriteDTDEntity</h3><pre class="programlisting">int	xmlTextWriterWriteDTDEntity	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 int pe, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ndataid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>namespace prefix</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> local name</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>namespace URI</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteDTDEntity" id="xmlTextWriterWriteDTDEntity"></a>Function: xmlTextWriterWriteDTDEntity</h3><pre class="programlisting">int	xmlTextWriterWriteDTDEntity	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 int pe, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ndataid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pe</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pubid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>sysid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>ndataid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatPI" id="xmlTextWriterWriteVFormatPI"></a>Function: xmlTextWriterWriteVFormatPI</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatPI	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />				 const char * format, <br />				 va_list argptr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pe</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pubid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>sysid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>ndataid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatPI" id="xmlTextWriterWriteVFormatPI"></a>Function: xmlTextWriterWriteVFormatPI</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatPI	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />					 const char * format, <br />					 va_list argptr)<br />
 </pre><p>Write a formatted xml PI.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>PI target</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteBinHex" id="xmlTextWriterWriteBinHex"></a>Function: xmlTextWriterWriteBinHex</h3><pre class="programlisting">int	xmlTextWriterWriteBinHex	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * data, <br />				 int start, <br />				 int len)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>PI target</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteBinHex" id="xmlTextWriterWriteBinHex"></a>Function: xmlTextWriterWriteBinHex</h3><pre class="programlisting">int	xmlTextWriterWriteBinHex	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * data, <br />					 int start, <br />					 int len)<br />
 </pre><p>Write a BinHex encoded xml text.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>binary data</td></tr><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the position within the data of the first byte to encode</td></tr><tr><td><span class="term"><i><tt>len</tt></i>:</span></td><td>the number of bytes to encode</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterEndAttribute" id="xmlTextWriterEndAttribute"></a>Function: xmlTextWriterEndAttribute</h3><pre class="programlisting">int	xmlTextWriterEndAttribute	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
 </pre><p>End the current xml element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatDTDAttlist" id="xmlTextWriterWriteVFormatDTDAttlist"></a>Function: xmlTextWriterWriteVFormatDTDAttlist</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatDTDAttlist	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 va_list argptr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatDTDAttlist" id="xmlTextWriterWriteVFormatDTDAttlist"></a>Function: xmlTextWriterWriteVFormatDTDAttlist</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatDTDAttlist	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const char * format, <br />						 va_list argptr)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatPI" id="xmlTextWriterWriteFormatPI"></a>Function: xmlTextWriterWriteFormatPI</h3><pre class="programlisting">int	xmlTextWriterWriteFormatPI	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />				 const char * format, <br />				 ... ...)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatPI" id="xmlTextWriterWriteFormatPI"></a>Function: xmlTextWriterWriteFormatPI</h3><pre class="programlisting">int	xmlTextWriterWriteFormatPI	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />					 const char * format, <br />					 ... ...)<br />
 </pre><p>Write a formatted PI.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>PI target</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterEndDocument" id="xmlTextWriterEndDocument"></a>Function: xmlTextWriterEndDocument</h3><pre class="programlisting">int	xmlTextWriterEndDocument	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
-</pre><p>End an xml document. All open elements are closed</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteDTDAttlist" id="xmlTextWriterWriteDTDAttlist"></a>Function: xmlTextWriterWriteDTDAttlist</h3><pre class="programlisting">int	xmlTextWriterWriteDTDAttlist	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>PI target</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterEndPI" id="xmlTextWriterEndPI"></a>Function: xmlTextWriterEndPI</h3><pre class="programlisting">int	xmlTextWriterEndPI		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
+</pre><p>End the current xml PI.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteDTDAttlist" id="xmlTextWriterWriteDTDAttlist"></a>Function: xmlTextWriterWriteDTDAttlist</h3><pre class="programlisting">int	xmlTextWriterWriteDTDAttlist	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatString" id="xmlTextWriterWriteFormatString"></a>Function: xmlTextWriterWriteFormatString</h3><pre class="programlisting">int	xmlTextWriterWriteFormatString	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 ... ...)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatString" id="xmlTextWriterWriteFormatString"></a>Function: xmlTextWriterWriteFormatString</h3><pre class="programlisting">int	xmlTextWriterWriteFormatString	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * format, <br />					 ... ...)<br />
 </pre><p>Write a formatted xml text.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterEndCDATA" id="xmlTextWriterEndCDATA"></a>Function: xmlTextWriterEndCDATA</h3><pre class="programlisting">int	xmlTextWriterEndCDATA	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterEndCDATA" id="xmlTextWriterEndCDATA"></a>Function: xmlTextWriterEndCDATA</h3><pre class="programlisting">int	xmlTextWriterEndCDATA		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
 </pre><p>End an xml CDATA section.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterStartElementNS" id="xmlTextWriterStartElementNS"></a>Function: xmlTextWriterStartElementNS</h3><pre class="programlisting">int	xmlTextWriterStartElementNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterStartElementNS" id="xmlTextWriterStartElementNS"></a>Function: xmlTextWriterStartElementNS</h3><pre class="programlisting">int	xmlTextWriterStartElementNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI)<br />
 </pre><p>Start an xml element with namespace support.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>namespace prefix or NULL</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element local name</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>namespace URI or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlNewTextWriter" id="xmlNewTextWriter"></a>Function: xmlNewTextWriter</h3><pre class="programlisting"><a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a>	xmlNewTextWriter	(<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> out)<br />
 </pre><p>Create a new <a href="libxml-xmlwriter.html#xmlNewTextWriter">xmlNewTextWriter</a> structure using an <a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlFreeTextWriter" id="xmlFreeTextWriter"></a>Function: xmlFreeTextWriter</h3><pre class="programlisting">void	xmlFreeTextWriter	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlFreeTextWriter" id="xmlFreeTextWriter"></a>Function: xmlFreeTextWriter</h3><pre class="programlisting">void	xmlFreeTextWriter		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
 </pre><p>Deallocate all the resources associated to the writer</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteDocType" id="xmlTextWriterWriteDocType"></a>Macro: xmlTextWriterWriteDocType</h3><pre>#define xmlTextWriterWriteDocType</pre><p></p>
-<h3><a name="xmlTextWriterStartPI" id="xmlTextWriterStartPI"></a>Function: xmlTextWriterStartPI</h3><pre class="programlisting">int	xmlTextWriterStartPI	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr></tbody></table></div><h3><a name="xmlTextWriterStartPI" id="xmlTextWriterStartPI"></a>Function: xmlTextWriterStartPI</h3><pre class="programlisting">int	xmlTextWriterStartPI		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target)<br />
 </pre><p>Start an xml PI.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>PI target</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterStartElement" id="xmlTextWriterStartElement"></a>Function: xmlTextWriterStartElement</h3><pre class="programlisting">int	xmlTextWriterStartElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>PI target</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterStartElement" id="xmlTextWriterStartElement"></a>Function: xmlTextWriterStartElement</h3><pre class="programlisting">int	xmlTextWriterStartElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p>Start an xml element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteDTDExternalEntity" id="xmlTextWriterWriteDTDExternalEntity"></a>Function: xmlTextWriterWriteDTDExternalEntity</h3><pre class="programlisting">int	xmlTextWriterWriteDTDExternalEntity	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 int pe, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ndataid)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteDTDExternalEntity" id="xmlTextWriterWriteDTDExternalEntity"></a>Function: xmlTextWriterWriteDTDExternalEntity</h3><pre class="programlisting">int	xmlTextWriterWriteDTDExternalEntity	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 int pe, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ndataid)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pe</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pubid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>sysid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>ndataid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatRaw" id="xmlTextWriterWriteFormatRaw"></a>Function: xmlTextWriterWriteFormatRaw</h3><pre class="programlisting">int	xmlTextWriterWriteFormatRaw	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 ... ...)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pe</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pubid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>sysid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>ndataid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatRaw" id="xmlTextWriterWriteFormatRaw"></a>Function: xmlTextWriterWriteFormatRaw</h3><pre class="programlisting">int	xmlTextWriterWriteFormatRaw	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * format, <br />					 ... ...)<br />
 </pre><p>Write a formatted raw xml text.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteCDATA" id="xmlTextWriterWriteCDATA"></a>Function: xmlTextWriterWriteCDATA</h3><pre class="programlisting">int	xmlTextWriterWriteCDATA	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteCDATA" id="xmlTextWriterWriteCDATA"></a>Function: xmlTextWriterWriteCDATA</h3><pre class="programlisting">int	xmlTextWriterWriteCDATA		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p>Write an xml CDATA.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>CDATA content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatDTDInternalEntity" id="xmlTextWriterWriteVFormatDTDInternalEntity"></a>Function: xmlTextWriterWriteVFormatDTDInternalEntity</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatDTDInternalEntity	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 int pe, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 va_list argptr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>CDATA content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatDTDInternalEntity" id="xmlTextWriterWriteVFormatDTDInternalEntity"></a>Function: xmlTextWriterWriteVFormatDTDInternalEntity</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatDTDInternalEntity	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />							 int pe, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />							 const char * format, <br />							 va_list argptr)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pe</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatAttribute" id="xmlTextWriterWriteVFormatAttribute"></a>Function: xmlTextWriterWriteVFormatAttribute</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatAttribute	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 va_list argptr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pe</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatAttribute" id="xmlTextWriterWriteVFormatAttribute"></a>Function: xmlTextWriterWriteVFormatAttribute</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatAttribute	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const char * format, <br />						 va_list argptr)<br />
 </pre><p>Write a formatted xml attribute.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td>pointer to the first member of the variable argument list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterEndDTDElement" id="xmlTextWriterEndDTDElement"></a>Macro: xmlTextWriterEndDTDElement</h3><pre>#define xmlTextWriterEndDTDElement</pre><p></p>
-<h3><a name="xmlTextWriterEndDTD" id="xmlTextWriterEndDTD"></a>Function: xmlTextWriterEndDTD</h3><pre class="programlisting">int	xmlTextWriterEndDTD	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td>pointer to the first member of the variable argument list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterEndDTD" id="xmlTextWriterEndDTD"></a>Function: xmlTextWriterEndDTD</h3><pre class="programlisting">int	xmlTextWriterEndDTD		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
 </pre><p>End an xml DTD.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteElement" id="xmlTextWriterWriteElement"></a>Function: xmlTextWriterWriteElement</h3><pre class="programlisting">int	xmlTextWriterWriteElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteElement" id="xmlTextWriterWriteElement"></a>Function: xmlTextWriterWriteElement</h3><pre class="programlisting">int	xmlTextWriterWriteElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p>Write an xml element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element name</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>element content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterEndElement" id="xmlTextWriterEndElement"></a>Function: xmlTextWriterEndElement</h3><pre class="programlisting">int	xmlTextWriterEndElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element name</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>element content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterEndElement" id="xmlTextWriterEndElement"></a>Function: xmlTextWriterEndElement</h3><pre class="programlisting">int	xmlTextWriterEndElement		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
 </pre><p>End the current xml element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatComment" id="xmlTextWriterWriteVFormatComment"></a>Function: xmlTextWriterWriteVFormatComment</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatComment	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 va_list argptr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatComment" id="xmlTextWriterWriteVFormatComment"></a>Function: xmlTextWriterWriteVFormatComment</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatComment	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const char * format, <br />						 va_list argptr)<br />
 </pre><p>Write an xml comment.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td>pointer to the first member of the variable argument list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterStartCDATA" id="xmlTextWriterStartCDATA"></a>Function: xmlTextWriterStartCDATA</h3><pre class="programlisting">int	xmlTextWriterStartCDATA	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td>pointer to the first member of the variable argument list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterStartCDATA" id="xmlTextWriterStartCDATA"></a>Function: xmlTextWriterStartCDATA</h3><pre class="programlisting">int	xmlTextWriterStartCDATA		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
 </pre><p>Start an xml CDATA section.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlNewTextWriterFilename" id="xmlNewTextWriterFilename"></a>Function: xmlNewTextWriterFilename</h3><pre class="programlisting"><a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a>	xmlNewTextWriterFilename	(const char * uri, <br />				 int compression)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlNewTextWriterFilename" id="xmlNewTextWriterFilename"></a>Function: xmlNewTextWriterFilename</h3><pre class="programlisting"><a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a>	xmlNewTextWriterFilename	(const char * uri, <br />							 int compression)<br />
 </pre><p>Create a new <a href="libxml-xmlwriter.html#xmlNewTextWriter">xmlNewTextWriter</a> structure with @uri as output</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>uri</tt></i>:</span></td><td>the URI of the resource for the output</td></tr><tr><td><span class="term"><i><tt>compression</tt></i>:</span></td><td>compress the output?</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatElement" id="xmlTextWriterWriteVFormatElement"></a>Function: xmlTextWriterWriteVFormatElement</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 va_list argptr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>uri</tt></i>:</span></td><td>the URI of the resource for the output</td></tr><tr><td><span class="term"><i><tt>compression</tt></i>:</span></td><td>compress the output?</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatElement" id="xmlTextWriterWriteVFormatElement"></a>Function: xmlTextWriterWriteVFormatElement</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const char * format, <br />						 va_list argptr)<br />
 </pre><p>Write a formatted xml element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element name</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td>pointer to the first member of the variable argument list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatComment" id="xmlTextWriterWriteFormatComment"></a>Function: xmlTextWriterWriteFormatComment</h3><pre class="programlisting">int	xmlTextWriterWriteFormatComment	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 ... ...)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element name</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td>pointer to the first member of the variable argument list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatComment" id="xmlTextWriterWriteFormatComment"></a>Function: xmlTextWriterWriteFormatComment</h3><pre class="programlisting">int	xmlTextWriterWriteFormatComment	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * format, <br />					 ... ...)<br />
 </pre><p>Write an xml comment.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteAttributeNS" id="xmlTextWriterWriteAttributeNS"></a>Function: xmlTextWriterWriteAttributeNS</h3><pre class="programlisting">int	xmlTextWriterWriteAttributeNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteAttributeNS" id="xmlTextWriterWriteAttributeNS"></a>Function: xmlTextWriterWriteAttributeNS</h3><pre class="programlisting">int	xmlTextWriterWriteAttributeNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p>Write an xml attribute.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>namespace prefix</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> local name</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>namespace URI</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWritePI" id="xmlTextWriterWritePI"></a>Function: xmlTextWriterWritePI</h3><pre class="programlisting">int	xmlTextWriterWritePI	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>namespace prefix</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> local name</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>namespace URI</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWritePI" id="xmlTextWriterWritePI"></a>Function: xmlTextWriterWritePI</h3><pre class="programlisting">int	xmlTextWriterWritePI		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * target, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p>Write an xml PI.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>PI target</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>PI content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatRaw" id="xmlTextWriterWriteVFormatRaw"></a>Function: xmlTextWriterWriteVFormatRaw</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatRaw	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 va_list argptr)<br />
-</pre><p>Write a formatted raw xml text.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td>pointer to the first member of the variable argument list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatDTDInternalEntity" id="xmlTextWriterWriteFormatDTDInternalEntity"></a>Function: xmlTextWriterWriteFormatDTDInternalEntity</h3><pre class="programlisting">int	xmlTextWriterWriteFormatDTDInternalEntity	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 int pe, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 ... ...)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>target</tt></i>:</span></td><td>PI target</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>PI content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatDTDInternalEntity" id="xmlTextWriterWriteFormatDTDInternalEntity"></a>Function: xmlTextWriterWriteFormatDTDInternalEntity</h3><pre class="programlisting">int	xmlTextWriterWriteFormatDTDInternalEntity	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />							 int pe, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />							 const char * format, <br />							 ... ...)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pe</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatString" id="xmlTextWriterWriteVFormatString"></a>Function: xmlTextWriterWriteVFormatString</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatString	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 va_list argptr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pe</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatString" id="xmlTextWriterWriteVFormatString"></a>Function: xmlTextWriterWriteVFormatString</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatString	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * format, <br />					 va_list argptr)<br />
 </pre><p>Write a formatted xml text.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td>pointer to the first member of the variable argument list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteDTDInternalEntity" id="xmlTextWriterWriteDTDInternalEntity"></a>Function: xmlTextWriterWriteDTDInternalEntity</h3><pre class="programlisting">int	xmlTextWriterWriteDTDInternalEntity	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 int pe, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td>pointer to the first member of the variable argument list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteDTDInternalEntity" id="xmlTextWriterWriteDTDInternalEntity"></a>Function: xmlTextWriterWriteDTDInternalEntity</h3><pre class="programlisting">int	xmlTextWriterWriteDTDInternalEntity	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 int pe, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pe</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatElementNS" id="xmlTextWriterWriteVFormatElementNS"></a>Function: xmlTextWriterWriteVFormatElementNS</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatElementNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />				 const char * format, <br />				 va_list argptr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pe</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatElementNS" id="xmlTextWriterWriteVFormatElementNS"></a>Function: xmlTextWriterWriteVFormatElementNS</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatElementNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />						 const char * format, <br />						 va_list argptr)<br />
 </pre><p>Write a formatted xml element with namespace support.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>namespace prefix</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element local name</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>namespace URI</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td>pointer to the first member of the variable argument list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteDTDNotation" id="xmlTextWriterWriteDTDNotation"></a>Function: xmlTextWriterWriteDTDNotation</h3><pre class="programlisting">int	xmlTextWriterWriteDTDNotation	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>namespace prefix</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element local name</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>namespace URI</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td>pointer to the first member of the variable argument list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteDTDNotation" id="xmlTextWriterWriteDTDNotation"></a>Function: xmlTextWriterWriteDTDNotation</h3><pre class="programlisting">int	xmlTextWriterWriteDTDNotation	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pubid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>sysid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatElement" id="xmlTextWriterWriteFormatElement"></a>Function: xmlTextWriterWriteFormatElement</h3><pre class="programlisting">int	xmlTextWriterWriteFormatElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 ... ...)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pubid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>sysid</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatElement" id="xmlTextWriterWriteFormatElement"></a>Function: xmlTextWriterWriteFormatElement</h3><pre class="programlisting">int	xmlTextWriterWriteFormatElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const char * format, <br />					 ... ...)<br />
 </pre><p>Write a formatted xml element.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element name</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteElementNS" id="xmlTextWriterWriteElementNS"></a>Function: xmlTextWriterWriteElementNS</h3><pre class="programlisting">int	xmlTextWriterWriteElementNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element name</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteElementNS" id="xmlTextWriterWriteElementNS"></a>Function: xmlTextWriterWriteElementNS</h3><pre class="programlisting">int	xmlTextWriterWriteElementNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p>Write an xml element with namespace support.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>namespace prefix</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element local name</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>namespace URI</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>element content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteString" id="xmlTextWriterWriteString"></a>Function: xmlTextWriterWriteString</h3><pre class="programlisting">int	xmlTextWriterWriteString	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>namespace prefix</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element local name</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>namespace URI</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>element content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteString" id="xmlTextWriterWriteString"></a>Function: xmlTextWriterWriteString</h3><pre class="programlisting">int	xmlTextWriterWriteString	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p>Write an xml text.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>text string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteRaw" id="xmlTextWriterWriteRaw"></a>Function: xmlTextWriterWriteRaw</h3><pre class="programlisting">int	xmlTextWriterWriteRaw	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
-</pre><p>Write a raw xml text.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>text string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterFullEndElement" id="xmlTextWriterFullEndElement"></a>Function: xmlTextWriterFullEndElement</h3><pre class="programlisting">int	xmlTextWriterFullEndElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
 </pre><p>End the current xml element. Writes an end tag even if the element is empty</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatAttributeNS" id="xmlTextWriterWriteVFormatAttributeNS"></a>Function: xmlTextWriterWriteVFormatAttributeNS</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatAttributeNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />				 const char * format, <br />				 va_list argptr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatAttributeNS" id="xmlTextWriterWriteVFormatAttributeNS"></a>Function: xmlTextWriterWriteVFormatAttributeNS</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatAttributeNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />						 const char * format, <br />						 va_list argptr)<br />
 </pre><p>Write a formatted xml attribute.with namespace support</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>namespace prefix</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> local name</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>namespace URI</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td>pointer to the first member of the variable argument list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterFlush" id="xmlTextWriterFlush"></a>Function: xmlTextWriterFlush</h3><pre class="programlisting">int	xmlTextWriterFlush	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>namespace prefix</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> local name</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>namespace URI</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td>pointer to the first member of the variable argument list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterFlush" id="xmlTextWriterFlush"></a>Function: xmlTextWriterFlush</h3><pre class="programlisting">int	xmlTextWriterFlush		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer)<br />
 </pre><p>Flush the output buffer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterStartDTD" id="xmlTextWriterStartDTD"></a>Function: xmlTextWriterStartDTD</h3><pre class="programlisting">int	xmlTextWriterStartDTD	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterStartDTD" id="xmlTextWriterStartDTD"></a>Function: xmlTextWriterStartDTD</h3><pre class="programlisting">int	xmlTextWriterStartDTD		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid)<br />
 </pre><p>Start an xml DTD.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the DTD</td></tr><tr><td><span class="term"><i><tt>pubid</tt></i>:</span></td><td>the public identifier, which is an alternative to the system identifier</td></tr><tr><td><span class="term"><i><tt>sysid</tt></i>:</span></td><td>the system identifier, which is the URI of the DTD</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteAttribute" id="xmlTextWriterWriteAttribute"></a>Function: xmlTextWriterWriteAttribute</h3><pre class="programlisting">int	xmlTextWriterWriteAttribute	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the DTD</td></tr><tr><td><span class="term"><i><tt>pubid</tt></i>:</span></td><td>the public identifier, which is an alternative to the system identifier</td></tr><tr><td><span class="term"><i><tt>sysid</tt></i>:</span></td><td>the system identifier, which is the URI of the DTD</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteAttribute" id="xmlTextWriterWriteAttribute"></a>Function: xmlTextWriterWriteAttribute</h3><pre class="programlisting">int	xmlTextWriterWriteAttribute	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p>Write an xml attribute.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatDTDElement" id="xmlTextWriterWriteFormatDTDElement"></a>Function: xmlTextWriterWriteFormatDTDElement</h3><pre class="programlisting">int	xmlTextWriterWriteFormatDTDElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 ... ...)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> content</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatDTDElement" id="xmlTextWriterWriteFormatDTDElement"></a>Function: xmlTextWriterWriteFormatDTDElement</h3><pre class="programlisting">int	xmlTextWriterWriteFormatDTDElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const char * format, <br />						 ... ...)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterEndDTDAttlist" id="xmlTextWriterEndDTDAttlist"></a>Macro: xmlTextWriterEndDTDAttlist</h3><pre>#define xmlTextWriterEndDTDAttlist</pre><p></p>
-<h3><a name="xmlNewTextWriterMemory" id="xmlNewTextWriterMemory"></a>Function: xmlNewTextWriterMemory</h3><pre class="programlisting"><a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a>	xmlNewTextWriterMemory	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />				 int compression)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlNewTextWriterMemory" id="xmlNewTextWriterMemory"></a>Function: xmlNewTextWriterMemory</h3><pre class="programlisting"><a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a>	xmlNewTextWriterMemory	(<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br />						 int compression)<br />
 </pre><p>Create a new <a href="libxml-xmlwriter.html#xmlNewTextWriter">xmlNewTextWriter</a> structure with @buf as output TODO: handle compression</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a></td></tr><tr><td><span class="term"><i><tt>compression</tt></i>:</span></td><td>compress the output?</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatCDATA" id="xmlTextWriterWriteFormatCDATA"></a>Function: xmlTextWriterWriteFormatCDATA</h3><pre class="programlisting">int	xmlTextWriterWriteFormatCDATA	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const char * format, <br />				 ... ...)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a></td></tr><tr><td><span class="term"><i><tt>compression</tt></i>:</span></td><td>compress the output?</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> or NULL in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatCDATA" id="xmlTextWriterWriteFormatCDATA"></a>Function: xmlTextWriterWriteFormatCDATA</h3><pre class="programlisting">int	xmlTextWriterWriteFormatCDATA	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * format, <br />					 ... ...)<br />
 </pre><p>Write a formatted xml CDATA.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterStartDTDAttlist" id="xmlTextWriterStartDTDAttlist"></a>Function: xmlTextWriterStartDTDAttlist</h3><pre class="programlisting">int	xmlTextWriterStartDTDAttlist	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterStartDTDAttlist" id="xmlTextWriterStartDTDAttlist"></a>Function: xmlTextWriterStartDTDAttlist</h3><pre class="programlisting">int	xmlTextWriterStartDTDAttlist	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterStartDTDElement" id="xmlTextWriterStartDTDElement"></a>Function: xmlTextWriterStartDTDElement</h3><pre class="programlisting">int	xmlTextWriterStartDTDElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatDTD" id="xmlTextWriterWriteFormatDTD"></a>Function: xmlTextWriterWriteFormatDTD</h3><pre class="programlisting">int	xmlTextWriterWriteFormatDTD	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />				 const char * format, <br />				 ... ...)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatRaw" id="xmlTextWriterWriteVFormatRaw"></a>Function: xmlTextWriterWriteVFormatRaw</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatRaw	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const char * format, <br />					 va_list argptr)<br />
+</pre><p>Write a formatted raw xml text.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td>pointer to the first member of the variable argument list.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatDTD" id="xmlTextWriterWriteFormatDTD"></a>Function: xmlTextWriterWriteFormatDTD</h3><pre class="programlisting">int	xmlTextWriterWriteFormatDTD	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />					 const char * format, <br />					 ... ...)<br />
 </pre><p>Write a DTD with a formatted markup declarations part.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the DTD</td></tr><tr><td><span class="term"><i><tt>pubid</tt></i>:</span></td><td>the public identifier, which is an alternative to the system identifier</td></tr><tr><td><span class="term"><i><tt>sysid</tt></i>:</span></td><td>the system identifier, which is the URI of the DTD</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatDTDAttlist" id="xmlTextWriterWriteFormatDTDAttlist"></a>Function: xmlTextWriterWriteFormatDTDAttlist</h3><pre class="programlisting">int	xmlTextWriterWriteFormatDTDAttlist	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 ... ...)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the DTD</td></tr><tr><td><span class="term"><i><tt>pubid</tt></i>:</span></td><td>the public identifier, which is an alternative to the system identifier</td></tr><tr><td><span class="term"><i><tt>sysid</tt></i>:</span></td><td>the system identifier, which is the URI of the DTD</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatDTDAttlist" id="xmlTextWriterWriteFormatDTDAttlist"></a>Function: xmlTextWriterWriteFormatDTDAttlist</h3><pre class="programlisting">int	xmlTextWriterWriteFormatDTDAttlist	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const char * format, <br />						 ... ...)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteDTDElement" id="xmlTextWriterWriteDTDElement"></a>Function: xmlTextWriterWriteDTDElement</h3><pre class="programlisting">int	xmlTextWriterWriteDTDElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteRaw" id="xmlTextWriterWriteRaw"></a>Function: xmlTextWriterWriteRaw</h3><pre class="programlisting">int	xmlTextWriterWriteRaw		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
+</pre><p>Write a raw xml text.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>text string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteDTDElement" id="xmlTextWriterWriteDTDElement"></a>Function: xmlTextWriterWriteDTDElement</h3><pre class="programlisting">int	xmlTextWriterWriteDTDElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * content)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteDTD" id="xmlTextWriterWriteDTD"></a>Function: xmlTextWriterWriteDTD</h3><pre class="programlisting">int	xmlTextWriterWriteDTD	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * subset)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteDTD" id="xmlTextWriterWriteDTD"></a>Function: xmlTextWriterWriteDTD</h3><pre class="programlisting">int	xmlTextWriterWriteDTD		(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * pubid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * sysid, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * subset)<br />
 </pre><p>Write a DTD.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the DTD</td></tr><tr><td><span class="term"><i><tt>pubid</tt></i>:</span></td><td>the public identifier, which is an alternative to the system identifier</td></tr><tr><td><span class="term"><i><tt>sysid</tt></i>:</span></td><td>the system identifier, which is the URI of the DTD</td></tr><tr><td><span class="term"><i><tt>subset</tt></i>:</span></td><td>string content of the DTD</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatAttribute" id="xmlTextWriterWriteFormatAttribute"></a>Function: xmlTextWriterWriteFormatAttribute</h3><pre class="programlisting">int	xmlTextWriterWriteFormatAttribute	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 ... ...)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the DTD</td></tr><tr><td><span class="term"><i><tt>pubid</tt></i>:</span></td><td>the public identifier, which is an alternative to the system identifier</td></tr><tr><td><span class="term"><i><tt>sysid</tt></i>:</span></td><td>the system identifier, which is the URI of the DTD</td></tr><tr><td><span class="term"><i><tt>subset</tt></i>:</span></td><td>string content of the DTD</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatAttribute" id="xmlTextWriterWriteFormatAttribute"></a>Function: xmlTextWriterWriteFormatAttribute</h3><pre class="programlisting">int	xmlTextWriterWriteFormatAttribute	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const char * format, <br />						 ... ...)<br />
 </pre><p>Write a formatted xml attribute.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterStartDTDEntity" id="xmlTextWriterStartDTDEntity"></a>Function: xmlTextWriterStartDTDEntity</h3><pre class="programlisting">int	xmlTextWriterStartDTDEntity	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 int pe, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td><a href="libxml-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlTextWriterStartDTDEntity" id="xmlTextWriterStartDTDEntity"></a>Function: xmlTextWriterStartDTDEntity</h3><pre class="programlisting">int	xmlTextWriterStartDTDEntity	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 int pe, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pe</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatDTDElement" id="xmlTextWriterWriteVFormatDTDElement"></a>Function: xmlTextWriterWriteVFormatDTDElement</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatDTDElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const char * format, <br />				 va_list argptr)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>pe</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteVFormatDTDElement" id="xmlTextWriterWriteVFormatDTDElement"></a>Function: xmlTextWriterWriteVFormatDTDElement</h3><pre class="programlisting">int	xmlTextWriterWriteVFormatDTDElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const char * format, <br />						 va_list argptr)<br />
 </pre><p></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterEndDTDEntity" id="xmlTextWriterEndDTDEntity"></a>Macro: xmlTextWriterEndDTDEntity</h3><pre>#define xmlTextWriterEndDTDEntity</pre><p></p>
-<h3><a name="xmlTextWriterWriteFormatElementNS" id="xmlTextWriterWriteFormatElementNS"></a>Function: xmlTextWriterWriteFormatElementNS</h3><pre class="programlisting">int	xmlTextWriterWriteFormatElementNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />				 const char * format, <br />				 ... ...)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>argptr</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterStartDTDElement" id="xmlTextWriterStartDTDElement"></a>Function: xmlTextWriterStartDTDElement</h3><pre class="programlisting">int	xmlTextWriterStartDTDElement	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td></td></tr></tbody></table></div><h3><a name="xmlTextWriterWriteFormatElementNS" id="xmlTextWriterWriteFormatElementNS"></a>Function: xmlTextWriterWriteFormatElementNS</h3><pre class="programlisting">int	xmlTextWriterWriteFormatElementNS	(<a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a> writer, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * namespaceURI, <br />						 const char * format, <br />						 ... ...)<br />
 </pre><p>Write a formatted xml element with namespace support.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>writer</tt></i>:</span></td><td>the <a href="libxml-xmlwriter.html#xmlTextWriterPtr">xmlTextWriterPtr</a></td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>namespace prefix</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>element local name</td></tr><tr><td><span class="term"><i><tt>namespaceURI</tt></i>:</span></td><td>namespace URI</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>format string (see printf)</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td></td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the bytes written (may be 0 because of buffering) or -1 in case of error</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-xpath.html b/doc/html/libxml-xpath.html
index 9c4d1e8..5bc83c8 100644
--- a/doc/html/libxml-xpath.html
+++ b/doc/html/libxml-xpath.html
@@ -10,100 +10,91 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xpath from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xpath from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlwriter.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlwriter.html">xmlwriter</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xpathInternals.html">xpathInternals</a></th><td><a accesskey="n" href="libxml-xpathInternals.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>API for the XML Path Language implementation  XML Path Language implementation XPath is a language for addressing parts of an XML document, designed to be used by both XSLT and XPointer</p><h2>Table of Contents</h2><pre class="programlisting">int	<a href="#xmlXPathCastNodeSetToBoolean">xmlXPathCastNodeSetToBoolean</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> ns)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-xpath.html#xmlXPathObject">xmlXPathObject</a> * <a name="xmlXPathObjectPtr" id="xmlXPathObjectPtr">xmlXPathObjectPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlXPathIsNaN">xmlXPathIsNaN</a>	(double val)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathConvertString">xmlXPathConvertString</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathConvertBoolean">xmlXPathConvertBoolean</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathNodeSetCreate">xmlXPathNodeSetCreate</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
-</pre><pre class="programlisting">double	<a href="#xmlXPathCastBooleanToNumber">xmlXPathCastBooleanToNumber</a>	(int val)<br />
-</pre><pre class="programlisting">Variable double <a name="xmlXPathPINF" id="xmlXPathPINF"></a>xmlXPathPINF
-
-</pre><pre class="programlisting"><a name="xmlXPathAxisFunc" id="xmlXPathAxisFunc"></a>Function type: xmlXPathAxisFunc
-<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathAxisFunc	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> cur)
-</pre><p>An axis traversal function. To traverse an axis, the engine calls the first time with cur == NULL and repeat until the function returns NULL indicating the end of the axis traversal.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath interpreter context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the previous node being explored on that axis</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next node in that axis or NULL if at the end of the axis.</td></tr></tbody></table></div><br />
-<pre class="programlisting">double	<a href="#xmlXPathCastToNumber">xmlXPathCastToNumber</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><pre class="programlisting">int	<a href="#xmlXPathCastStringToBoolean">xmlXPathCastStringToBoolean</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathNodeSetItem">xmlXPathNodeSetItem</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlXPathFreeObject">xmlXPathFreeObject</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj)<br />
+    </style><title>Module xpath from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xpath from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xmlwriter.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xmlwriter.html">xmlwriter</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xpathInternals.html">xpathInternals</a></th><td><a accesskey="n" href="libxml-xpathInternals.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>API for the XML Path Language implementation  XML Path Language implementation XPath is a language for addressing parts of an XML document, designed to be used by both XSLT and XPointer</p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#xmlXPathNodeSetGetLength">xmlXPathNodeSetGetLength</a></pre><pre class="programlisting">#define <a href="#xmlXPathNodeSetIsEmpty">xmlXPathNodeSetIsEmpty</a></pre><pre class="programlisting">#define <a href="#xmlXPathNodeSetItem">xmlXPathNodeSetItem</a></pre><pre class="programlisting">Structure <a href="#xmlNodeSet">xmlNodeSet</a><br />struct _xmlNodeSet
 </pre><pre class="programlisting">Typedef <a href="libxml-xpath.html#xmlNodeSet">xmlNodeSet</a> * <a name="xmlNodeSetPtr" id="xmlNodeSetPtr">xmlNodeSetPtr</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlXPathEvalPredicate">xmlXPathEvalPredicate</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> res)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathFreeContext">xmlXPathFreeContext</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathFreeNodeSetList">xmlXPathFreeNodeSetList</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathEval">xmlXPathEval</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br />
+</pre><pre class="programlisting">Structure <a href="#xmlXPathAxis">xmlXPathAxis</a><br />struct _xmlXPathAxis
 </pre><pre class="programlisting">Typedef <a href="libxml-xpath.html#xmlXPathAxis">xmlXPathAxis</a> * <a name="xmlXPathAxisPtr" id="xmlXPathAxisPtr">xmlXPathAxisPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathConvertNumber">xmlXPathConvertNumber</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathCastNodeSetToString">xmlXPathCastNodeSetToString</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> ns)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathEvalExpression">xmlXPathEvalExpression</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">Variable double <a name="xmlXPathNINF" id="xmlXPathNINF"></a>xmlXPathNINF
-
-</pre><pre class="programlisting">Structure <a name="xmlXPathVariable" id="xmlXPathVariable">xmlXPathVariable</a><br />struct _xmlXPathVariable {
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: the variable name
-    <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	value	: the value
-}</pre><br /><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathCastToString">xmlXPathCastToString</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathObjectCopy">xmlXPathObjectCopy</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathCastBooleanToString">xmlXPathCastBooleanToString</a>	(int val)<br />
-</pre><pre class="programlisting">int	<a href="#xmlXPathCastNumberToBoolean">xmlXPathCastNumberToBoolean</a>	(double val)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathFreeNodeSet">xmlXPathFreeNodeSet</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> obj)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a>	<a href="#xmlXPathNewContext">xmlXPathNewContext</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathNodeSetIsEmpty">xmlXPathNodeSetIsEmpty</a>
-
-</pre><pre class="programlisting">Variable double <a name="xmlXPathNAN" id="xmlXPathNAN"></a>xmlXPathNAN
-
-</pre><pre class="programlisting">Enum <a name="xmlXPathError" id="xmlXPathError">xmlXPathError</a> {
-    <a name="XPATH_EXPRESSION_OK" id="XPATH_EXPRESSION_OK">XPATH_EXPRESSION_OK</a> = 0
-    <a name="XPATH_NUMBER_ERROR" id="XPATH_NUMBER_ERROR">XPATH_NUMBER_ERROR</a> = 1
-    <a name="XPATH_UNFINISHED_LITERAL_ERROR" id="XPATH_UNFINISHED_LITERAL_ERROR">XPATH_UNFINISHED_LITERAL_ERROR</a> = 2
-    <a name="XPATH_START_LITERAL_ERROR" id="XPATH_START_LITERAL_ERROR">XPATH_START_LITERAL_ERROR</a> = 3
-    <a name="XPATH_VARIABLE_REF_ERROR" id="XPATH_VARIABLE_REF_ERROR">XPATH_VARIABLE_REF_ERROR</a> = 4
-    <a name="XPATH_UNDEF_VARIABLE_ERROR" id="XPATH_UNDEF_VARIABLE_ERROR">XPATH_UNDEF_VARIABLE_ERROR</a> = 5
-    <a name="XPATH_INVALID_PREDICATE_ERROR" id="XPATH_INVALID_PREDICATE_ERROR">XPATH_INVALID_PREDICATE_ERROR</a> = 6
-    <a name="XPATH_EXPR_ERROR" id="XPATH_EXPR_ERROR">XPATH_EXPR_ERROR</a> = 7
-    <a name="XPATH_UNCLOSED_ERROR" id="XPATH_UNCLOSED_ERROR">XPATH_UNCLOSED_ERROR</a> = 8
-    <a name="XPATH_UNKNOWN_FUNC_ERROR" id="XPATH_UNKNOWN_FUNC_ERROR">XPATH_UNKNOWN_FUNC_ERROR</a> = 9
-    <a name="XPATH_INVALID_OPERAND" id="XPATH_INVALID_OPERAND">XPATH_INVALID_OPERAND</a> = 10
-    <a name="XPATH_INVALID_TYPE" id="XPATH_INVALID_TYPE">XPATH_INVALID_TYPE</a> = 11
-    <a name="XPATH_INVALID_ARITY" id="XPATH_INVALID_ARITY">XPATH_INVALID_ARITY</a> = 12
-    <a name="XPATH_INVALID_CTXT_SIZE" id="XPATH_INVALID_CTXT_SIZE">XPATH_INVALID_CTXT_SIZE</a> = 13
-    <a name="XPATH_INVALID_CTXT_POSITION" id="XPATH_INVALID_CTXT_POSITION">XPATH_INVALID_CTXT_POSITION</a> = 14
-    <a name="XPATH_MEMORY_ERROR" id="XPATH_MEMORY_ERROR">XPATH_MEMORY_ERROR</a> = 15
-    <a name="XPTR_SYNTAX_ERROR" id="XPTR_SYNTAX_ERROR">XPTR_SYNTAX_ERROR</a> = 16
-    <a name="XPTR_RESOURCE_ERROR" id="XPTR_RESOURCE_ERROR">XPTR_RESOURCE_ERROR</a> = 17
-    <a name="XPTR_SUB_RESOURCE_ERROR" id="XPTR_SUB_RESOURCE_ERROR">XPTR_SUB_RESOURCE_ERROR</a> = 18
-    <a name="XPATH_UNDEF_PREFIX_ERROR" id="XPATH_UNDEF_PREFIX_ERROR">XPATH_UNDEF_PREFIX_ERROR</a> = 19
-    <a name="XPATH_ENCODING_ERROR" id="XPATH_ENCODING_ERROR">XPATH_ENCODING_ERROR</a> = 20
-    <a name="XPATH_INVALID_CHAR_ERROR" id="XPATH_INVALID_CHAR_ERROR">XPATH_INVALID_CHAR_ERROR</a> = 21
-}
-
-</pre><pre class="programlisting">int	<a href="#xmlXPathCastToBoolean">xmlXPathCastToBoolean</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
+</pre><pre class="programlisting">Structure <a href="#xmlXPathCompExpr">xmlXPathCompExpr</a><br />struct _xmlXPathCompExpr
+The content of this structure is not made public by the API.
+</pre><pre class="programlisting">Typedef <a href="libxml-xpath.html#xmlXPathCompExpr">xmlXPathCompExpr</a> * <a name="xmlXPathCompExprPtr" id="xmlXPathCompExprPtr">xmlXPathCompExprPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlXPathContext">xmlXPathContext</a><br />struct _xmlXPathContext
+</pre><pre class="programlisting">Typedef <a href="libxml-xpath.html#xmlXPathContext">xmlXPathContext</a> * <a name="xmlXPathContextPtr" id="xmlXPathContextPtr">xmlXPathContextPtr</a>
+</pre><pre class="programlisting">Enum <a href="#xmlXPathError">xmlXPathError</a>
+</pre><pre class="programlisting">Typedef <a href="libxml-xpath.html#xmlXPathFunct">xmlXPathFunct</a> * <a name="xmlXPathFuncPtr" id="xmlXPathFuncPtr">xmlXPathFuncPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlXPathFunct">xmlXPathFunct</a><br />struct _xmlXPathFunct
+</pre><pre class="programlisting">Structure <a href="#xmlXPathObject">xmlXPathObject</a><br />struct _xmlXPathObject
+</pre><pre class="programlisting">Typedef <a href="libxml-xpath.html#xmlXPathObject">xmlXPathObject</a> * <a name="xmlXPathObjectPtr" id="xmlXPathObjectPtr">xmlXPathObjectPtr</a>
+</pre><pre class="programlisting">Enum <a href="#xmlXPathObjectType">xmlXPathObjectType</a>
+</pre><pre class="programlisting">Structure <a href="#xmlXPathParserContext">xmlXPathParserContext</a><br />struct _xmlXPathParserContext
+</pre><pre class="programlisting">Typedef <a href="libxml-xpath.html#xmlXPathParserContext">xmlXPathParserContext</a> * <a name="xmlXPathParserContextPtr" id="xmlXPathParserContextPtr">xmlXPathParserContextPtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlXPathType">xmlXPathType</a><br />struct _xmlXPathType
+</pre><pre class="programlisting">Typedef <a href="libxml-xpath.html#xmlXPathType">xmlXPathType</a> * <a name="xmlXPathTypePtr" id="xmlXPathTypePtr">xmlXPathTypePtr</a>
+</pre><pre class="programlisting">Structure <a href="#xmlXPathVariable">xmlXPathVariable</a><br />struct _xmlXPathVariable
 </pre><pre class="programlisting">Typedef <a href="libxml-xpath.html#xmlXPathVariable">xmlXPathVariable</a> * <a name="xmlXPathVariablePtr" id="xmlXPathVariablePtr">xmlXPathVariablePtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathCastNodeToString">xmlXPathCastNodeToString</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">Structure <a name="xmlXPathFunct" id="xmlXPathFunct">xmlXPathFunct</a><br />struct _xmlXPathFunct {
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: the function name
-    <a href="libxml-xpath.html#xmlXPathEvalFunc">xmlXPathEvalFunc</a>	func	: the evaluation function
-}</pre><br /><pre class="programlisting">Typedef <a href="libxml-xpath.html#xmlXPathCompExpr">xmlXPathCompExpr</a> * <a name="xmlXPathCompExprPtr" id="xmlXPathCompExprPtr">xmlXPathCompExprPtr</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlXPathObject" id="xmlXPathObject">xmlXPathObject</a><br />struct _xmlXPathObject {
-    <a href="libxml-xpath.html#xmlXPathObjectType">xmlXPathObjectType</a>	type
-    <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	nodesetval
-    int	boolval
-    double	floatval
-    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	stringval
-    void *	user
-    int	index
-    void *	user2
-    int	index2
-}</pre><br /><pre class="programlisting">long	<a href="#xmlXPathOrderDocElems">xmlXPathOrderDocElems</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathNodeSetGetLength">xmlXPathNodeSetGetLength</a>
-
-</pre><pre class="programlisting">double	<a href="#xmlXPathCastNodeToNumber">xmlXPathCastNodeToNumber</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">double	<a href="#xmlXPathCastStringToNumber">xmlXPathCastStringToNumber</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
-</pre><pre class="programlisting">Structure <a name="xmlXPathContext" id="xmlXPathContext">xmlXPathContext</a><br />struct _xmlXPathContext {
+</pre><pre class="programlisting">Function type: <a href="#xmlXPathAxisFunc">xmlXPathAxisFunc</a>
+<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathAxisFunc">xmlXPathAxisFunc</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />						 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> cur)
+</pre>
+<pre class="programlisting">double	<a href="#xmlXPathCastBooleanToNumber">xmlXPathCastBooleanToNumber</a>	(int val)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathCastBooleanToString">xmlXPathCastBooleanToString</a>	(int val)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathCastNodeSetToBoolean">xmlXPathCastNodeSetToBoolean</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> ns)</pre>
+<pre class="programlisting">double	<a href="#xmlXPathCastNodeSetToNumber">xmlXPathCastNodeSetToNumber</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> ns)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathCastNodeSetToString">xmlXPathCastNodeSetToString</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> ns)</pre>
+<pre class="programlisting">double	<a href="#xmlXPathCastNodeToNumber">xmlXPathCastNodeToNumber</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathCastNodeToString">xmlXPathCastNodeToString</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathCastNumberToBoolean">xmlXPathCastNumberToBoolean</a>	(double val)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathCastNumberToString">xmlXPathCastNumberToString</a>	(double val)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathCastStringToBoolean">xmlXPathCastStringToBoolean</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)</pre>
+<pre class="programlisting">double	<a href="#xmlXPathCastStringToNumber">xmlXPathCastStringToNumber</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathCastToBoolean">xmlXPathCastToBoolean</a>		(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)</pre>
+<pre class="programlisting">double	<a href="#xmlXPathCastToNumber">xmlXPathCastToNumber</a>		(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathCastToString">xmlXPathCastToString</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathCmpNodes">xmlXPathCmpNodes</a>		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node1, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a>	<a href="#xmlXPathCompile">xmlXPathCompile</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathCompiledEval">xmlXPathCompiledEval</a>	(<a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp, <br />						 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathConvertBoolean">xmlXPathConvertBoolean</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)</pre>
+<pre class="programlisting">Function type: <a href="#xmlXPathConvertFunc">xmlXPathConvertFunc</a>
+int	<a href="#xmlXPathConvertFunc">xmlXPathConvertFunc</a>		(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj, <br />					 int type)
+</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathConvertNumber">xmlXPathConvertNumber</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathConvertString">xmlXPathConvertString</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathEval">xmlXPathEval</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathEvalExpression">xmlXPathEvalExpression</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />						 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)</pre>
+<pre class="programlisting">Function type: <a href="#xmlXPathEvalFunc">xmlXPathEvalFunc</a>
+void	<a href="#xmlXPathEvalFunc">xmlXPathEvalFunc</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)
+</pre>
+<pre class="programlisting">int	<a href="#xmlXPathEvalPredicate">xmlXPathEvalPredicate</a>		(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> res)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathFreeCompExpr">xmlXPathFreeCompExpr</a>		(<a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathFreeContext">xmlXPathFreeContext</a>		(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathFreeNodeSet">xmlXPathFreeNodeSet</a>		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> obj)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathFreeNodeSetList">xmlXPathFreeNodeSetList</a>		(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathFreeObject">xmlXPathFreeObject</a>		(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj)</pre>
+<pre class="programlisting">Function type: <a href="#xmlXPathFunction">xmlXPathFunction</a>
+void	<a href="#xmlXPathFunction">xmlXPathFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)
+</pre>
+<pre class="programlisting">void	<a href="#xmlXPathInit">xmlXPathInit</a>			(void)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathIsInf">xmlXPathIsInf</a>			(double val)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathIsNaN">xmlXPathIsNaN</a>			(double val)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a>	<a href="#xmlXPathNewContext">xmlXPathNewContext</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathNodeSetCreate">xmlXPathNodeSetCreate</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathObjectCopy">xmlXPathObjectCopy</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)</pre>
+<pre class="programlisting">long	<a href="#xmlXPathOrderDocElems">xmlXPathOrderDocElems</a>		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)</pre>
+<h2>Description</h2>
+<h3><a name="xmlXPathNodeSetGetLength" id="xmlXPathNodeSetGetLength"></a>Macro: xmlXPathNodeSetGetLength</h3><pre>#define xmlXPathNodeSetGetLength</pre><p>Implement a functionality similar to the DOM NodeList.length. Returns the number of nodes in the node-set.</p>
+<h3><a name="xmlXPathNodeSetIsEmpty" id="xmlXPathNodeSetIsEmpty"></a>Macro: xmlXPathNodeSetIsEmpty</h3><pre>#define xmlXPathNodeSetIsEmpty</pre><p>Checks whether @ns is empty or not. Returns %TRUE if @ns is an empty node-set.</p>
+<h3><a name="xmlXPathNodeSetItem" id="xmlXPathNodeSetItem"></a>Macro: xmlXPathNodeSetItem</h3><pre>#define xmlXPathNodeSetItem</pre><p>Implements a functionality similar to the DOM NodeList.item(). Returns the <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> at the given @index in @ns or NULL if @index is out of range (0 to length-1)</p>
+<h3><a name="xmlXPathObjectType" id="xmlXPathObjectType">xmlXPathObjectType</a></h3><pre class="programlisting">Enum xmlXPathObjectType {
+    <a name="XPATH_UNDEFINED" id="XPATH_UNDEFINED">XPATH_UNDEFINED</a> = 0
+    <a name="XPATH_NODESET" id="XPATH_NODESET">XPATH_NODESET</a> = 1
+    <a name="XPATH_BOOLEAN" id="XPATH_BOOLEAN">XPATH_BOOLEAN</a> = 2
+    <a name="XPATH_NUMBER" id="XPATH_NUMBER">XPATH_NUMBER</a> = 3
+    <a name="XPATH_STRING" id="XPATH_STRING">XPATH_STRING</a> = 4
+    <a name="XPATH_POINT" id="XPATH_POINT">XPATH_POINT</a> = 5
+    <a name="XPATH_RANGE" id="XPATH_RANGE">XPATH_RANGE</a> = 6
+    <a name="XPATH_LOCATIONSET" id="XPATH_LOCATIONSET">XPATH_LOCATIONSET</a> = 7
+    <a name="XPATH_USERS" id="XPATH_USERS">XPATH_USERS</a> = 8
+    <a name="XPATH_XSLT_TREE" id="XPATH_XSLT_TREE">XPATH_XSLT_TREE</a> = 9 : An XSLT value tree, non modifiable
+}
+</pre><h3><a name="xmlXPathContext" id="xmlXPathContext">Structure xmlXPathContext</a></h3><pre class="programlisting">Structure xmlXPathContext<br />struct _xmlXPathContext {
     <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>	doc	: The current document
     <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	node	: The current node
     int	nb_variables_unused	: unused (hash table)
@@ -140,7 +131,59 @@
     <a href="libxml-xmlerror.html#xmlStructuredErrorFunc">xmlStructuredErrorFunc</a>	error	: the callback in case of errors
     <a href="libxml-xmlerror.html#xmlError">xmlError</a>	lastError	: the last error
     <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	debugNode	: the source node XSLT
-}</pre><br /><pre class="programlisting">Structure <a name="xmlXPathParserContext" id="xmlXPathParserContext">xmlXPathParserContext</a><br />struct _xmlXPathParserContext {
+}</pre><h3><a name="xmlXPathType" id="xmlXPathType">Structure xmlXPathType</a></h3><pre class="programlisting">Structure xmlXPathType<br />struct _xmlXPathType {
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: the type name
+    <a href="libxml-xpath.html#xmlXPathConvertFunc">xmlXPathConvertFunc</a>	func	: the conversion function
+}</pre><h3><a name="xmlXPathFunct" id="xmlXPathFunct">Structure xmlXPathFunct</a></h3><pre class="programlisting">Structure xmlXPathFunct<br />struct _xmlXPathFunct {
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: the function name
+    <a href="libxml-xpath.html#xmlXPathEvalFunc">xmlXPathEvalFunc</a>	func	: the evaluation function
+}</pre><h3><a name="xmlXPathError" id="xmlXPathError">xmlXPathError</a></h3><pre class="programlisting">Enum xmlXPathError {
+    <a name="XPATH_EXPRESSION_OK" id="XPATH_EXPRESSION_OK">XPATH_EXPRESSION_OK</a> = 0
+    <a name="XPATH_NUMBER_ERROR" id="XPATH_NUMBER_ERROR">XPATH_NUMBER_ERROR</a> = 1
+    <a name="XPATH_UNFINISHED_LITERAL_ERROR" id="XPATH_UNFINISHED_LITERAL_ERROR">XPATH_UNFINISHED_LITERAL_ERROR</a> = 2
+    <a name="XPATH_START_LITERAL_ERROR" id="XPATH_START_LITERAL_ERROR">XPATH_START_LITERAL_ERROR</a> = 3
+    <a name="XPATH_VARIABLE_REF_ERROR" id="XPATH_VARIABLE_REF_ERROR">XPATH_VARIABLE_REF_ERROR</a> = 4
+    <a name="XPATH_UNDEF_VARIABLE_ERROR" id="XPATH_UNDEF_VARIABLE_ERROR">XPATH_UNDEF_VARIABLE_ERROR</a> = 5
+    <a name="XPATH_INVALID_PREDICATE_ERROR" id="XPATH_INVALID_PREDICATE_ERROR">XPATH_INVALID_PREDICATE_ERROR</a> = 6
+    <a name="XPATH_EXPR_ERROR" id="XPATH_EXPR_ERROR">XPATH_EXPR_ERROR</a> = 7
+    <a name="XPATH_UNCLOSED_ERROR" id="XPATH_UNCLOSED_ERROR">XPATH_UNCLOSED_ERROR</a> = 8
+    <a name="XPATH_UNKNOWN_FUNC_ERROR" id="XPATH_UNKNOWN_FUNC_ERROR">XPATH_UNKNOWN_FUNC_ERROR</a> = 9
+    <a name="XPATH_INVALID_OPERAND" id="XPATH_INVALID_OPERAND">XPATH_INVALID_OPERAND</a> = 10
+    <a name="XPATH_INVALID_TYPE" id="XPATH_INVALID_TYPE">XPATH_INVALID_TYPE</a> = 11
+    <a name="XPATH_INVALID_ARITY" id="XPATH_INVALID_ARITY">XPATH_INVALID_ARITY</a> = 12
+    <a name="XPATH_INVALID_CTXT_SIZE" id="XPATH_INVALID_CTXT_SIZE">XPATH_INVALID_CTXT_SIZE</a> = 13
+    <a name="XPATH_INVALID_CTXT_POSITION" id="XPATH_INVALID_CTXT_POSITION">XPATH_INVALID_CTXT_POSITION</a> = 14
+    <a name="XPATH_MEMORY_ERROR" id="XPATH_MEMORY_ERROR">XPATH_MEMORY_ERROR</a> = 15
+    <a name="XPTR_SYNTAX_ERROR" id="XPTR_SYNTAX_ERROR">XPTR_SYNTAX_ERROR</a> = 16
+    <a name="XPTR_RESOURCE_ERROR" id="XPTR_RESOURCE_ERROR">XPTR_RESOURCE_ERROR</a> = 17
+    <a name="XPTR_SUB_RESOURCE_ERROR" id="XPTR_SUB_RESOURCE_ERROR">XPTR_SUB_RESOURCE_ERROR</a> = 18
+    <a name="XPATH_UNDEF_PREFIX_ERROR" id="XPATH_UNDEF_PREFIX_ERROR">XPATH_UNDEF_PREFIX_ERROR</a> = 19
+    <a name="XPATH_ENCODING_ERROR" id="XPATH_ENCODING_ERROR">XPATH_ENCODING_ERROR</a> = 20
+    <a name="XPATH_INVALID_CHAR_ERROR" id="XPATH_INVALID_CHAR_ERROR">XPATH_INVALID_CHAR_ERROR</a> = 21
+}
+</pre><h3><a name="xmlXPathObject" id="xmlXPathObject">Structure xmlXPathObject</a></h3><pre class="programlisting">Structure xmlXPathObject<br />struct _xmlXPathObject {
+    <a href="libxml-xpath.html#xmlXPathObjectType">xmlXPathObjectType</a>	type
+    <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	nodesetval
+    int	boolval
+    double	floatval
+    <a href="libxml-tree.html#xmlChar">xmlChar</a> *	stringval
+    void *	user
+    int	index
+    void *	user2
+    int	index2
+}</pre><h3><a name="xmlXPathCompExpr" id="xmlXPathCompExpr">Structure xmlXPathCompExpr</a></h3><pre class="programlisting">Structure xmlXPathCompExpr<br />struct _xmlXPathCompExpr {
+The content of this structure is not made public by the API.
+}</pre><h3><a name="xmlNodeSet" id="xmlNodeSet">Structure xmlNodeSet</a></h3><pre class="programlisting">Structure xmlNodeSet<br />struct _xmlNodeSet {
+    int	nodeNr	: number of nodes in the set
+    int	nodeMax	: size of the array as allocated
+    <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> *	nodeTab	: array of nodes in no particular order @
+}</pre><h3><a name="xmlXPathVariable" id="xmlXPathVariable">Structure xmlXPathVariable</a></h3><pre class="programlisting">Structure xmlXPathVariable<br />struct _xmlXPathVariable {
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: the variable name
+    <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	value	: the value
+}</pre><h3><a name="xmlXPathAxis" id="xmlXPathAxis">Structure xmlXPathAxis</a></h3><pre class="programlisting">Structure xmlXPathAxis<br />struct _xmlXPathAxis {
+    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: the axis name
+    <a href="libxml-xpath.html#xmlXPathAxisFunc">xmlXPathAxisFunc</a>	func	: the search function
+}</pre><h3><a name="xmlXPathParserContext" id="xmlXPathParserContext">Structure xmlXPathParserContext</a></h3><pre class="programlisting">Structure xmlXPathParserContext<br />struct _xmlXPathParserContext {
     const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	cur	: the current char being parsed
     const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	base	: the full expression
     int	error	: error code
@@ -152,223 +195,86 @@
     <a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a>	comp	: the precompiled expression
     int	xptr	: it this an XPointer expression
     <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	ancestor	: used for walking preceding axis
-}</pre><br /><pre class="programlisting">Typedef <a href="libxml-xpath.html#xmlXPathType">xmlXPathType</a> * <a name="xmlXPathTypePtr" id="xmlXPathTypePtr">xmlXPathTypePtr</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlXPathType" id="xmlXPathType">xmlXPathType</a><br />struct _xmlXPathType {
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: the type name
-    <a href="libxml-xpath.html#xmlXPathConvertFunc">xmlXPathConvertFunc</a>	func	: the conversion function
-}</pre><br /><pre class="programlisting">int	<a href="#xmlXPathIsInf">xmlXPathIsInf</a>	(double val)<br />
-</pre><pre class="programlisting">Structure <a name="xmlXPathAxis" id="xmlXPathAxis">xmlXPathAxis</a><br />struct _xmlXPathAxis {
-    const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	name	: the axis name
-    <a href="libxml-xpath.html#xmlXPathAxisFunc">xmlXPathAxisFunc</a>	func	: the search function
-}</pre><br /><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathCompiledEval">xmlXPathCompiledEval</a>	(<a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp, <br />				 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br />
-</pre><pre class="programlisting">Structure <a name="xmlNodeSet" id="xmlNodeSet">xmlNodeSet</a><br />struct _xmlNodeSet {
-    int	nodeNr	: number of nodes in the set
-    int	nodeMax	: size of the array as allocated
-    <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> *	nodeTab	: array of nodes in no particular order @
-}</pre><br /><pre class="programlisting">Typedef <a href="libxml-xpath.html#xmlXPathFunct">xmlXPathFunct</a> * <a name="xmlXPathFuncPtr" id="xmlXPathFuncPtr">xmlXPathFuncPtr</a>
-
-</pre><pre class="programlisting"><a name="xmlXPathConvertFunc" id="xmlXPathConvertFunc"></a>Function type: xmlXPathConvertFunc
-int	xmlXPathConvertFunc	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj, <br />				 int type)
-</pre><p>A conversion function is associated to a type and used to cast the new type to primitive values.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>obj</tt></i>:</span></td><td>an XPath object</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the number of the target type</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of error, 0 otherwise</td></tr></tbody></table></div><br />
-<pre class="programlisting">void	<a href="#xmlXPathInit">xmlXPathInit</a>	(void)<br />
-</pre><pre class="programlisting">int	<a href="#xmlXPathCmpNodes">xmlXPathCmpNodes</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node1, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathCastNumberToString">xmlXPathCastNumberToString</a>	(double val)<br />
-</pre><pre class="programlisting"><a name="xmlXPathEvalFunc" id="xmlXPathEvalFunc"></a>Function type: xmlXPathEvalFunc
-void	xmlXPathEvalFunc	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)
-</pre><p>An XPath evaluation function, the parameters are on the XPath context stack.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments passed to the function</td></tr></tbody></table></div><br />
-<pre class="programlisting"><a name="xmlXPathFunction" id="xmlXPathFunction"></a>Function type: xmlXPathFunction
-void	xmlXPathFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)
-</pre><p>An XPath function. The arguments (if any) are popped out from the context stack and the result is pushed on the stack.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath interprestation context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><br />
-<pre class="programlisting">void	<a href="#xmlXPathFreeCompExpr">xmlXPathFreeCompExpr</a>	(<a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp)<br />
-</pre><pre class="programlisting">Typedef <a href="libxml-xpath.html#xmlXPathParserContext">xmlXPathParserContext</a> * <a name="xmlXPathParserContextPtr" id="xmlXPathParserContextPtr">xmlXPathParserContextPtr</a>
-
-</pre><pre class="programlisting">Structure <a name="xmlXPathCompExpr" id="xmlXPathCompExpr">xmlXPathCompExpr</a><br />struct _xmlXPathCompExpr {
-The content of this structure is not made public by the API.
-}</pre><br /><pre class="programlisting">Typedef <a href="libxml-xpath.html#xmlXPathContext">xmlXPathContext</a> * <a name="xmlXPathContextPtr" id="xmlXPathContextPtr">xmlXPathContextPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a>	<a href="#xmlXPathCompile">xmlXPathCompile</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
-</pre><pre class="programlisting">double	<a href="#xmlXPathCastNodeSetToNumber">xmlXPathCastNodeSetToNumber</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> ns)<br />
-</pre><pre class="programlisting">Enum <a name="xmlXPathObjectType" id="xmlXPathObjectType">xmlXPathObjectType</a> {
-    <a name="XPATH_UNDEFINED" id="XPATH_UNDEFINED">XPATH_UNDEFINED</a> = 0
-    <a name="XPATH_NODESET" id="XPATH_NODESET">XPATH_NODESET</a> = 1
-    <a name="XPATH_BOOLEAN" id="XPATH_BOOLEAN">XPATH_BOOLEAN</a> = 2
-    <a name="XPATH_NUMBER" id="XPATH_NUMBER">XPATH_NUMBER</a> = 3
-    <a name="XPATH_STRING" id="XPATH_STRING">XPATH_STRING</a> = 4
-    <a name="XPATH_POINT" id="XPATH_POINT">XPATH_POINT</a> = 5
-    <a name="XPATH_RANGE" id="XPATH_RANGE">XPATH_RANGE</a> = 6
-    <a name="XPATH_LOCATIONSET" id="XPATH_LOCATIONSET">XPATH_LOCATIONSET</a> = 7
-    <a name="XPATH_USERS" id="XPATH_USERS">XPATH_USERS</a> = 8
-    <a name="XPATH_XSLT_TREE" id="XPATH_XSLT_TREE">XPATH_XSLT_TREE</a> = 9 : An XSLT value tree, non modifiable
-}
-
-</pre><h2>Description</h2>
-<h3><a name="xmlXPathCastNodeSetToBoolean" id="xmlXPathCastNodeSetToBoolean"></a>Function: xmlXPathCastNodeSetToBoolean</h3><pre class="programlisting">int	xmlXPathCastNodeSetToBoolean	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> ns)<br />
+}</pre><h3><a name="xmlXPathCastNodeSetToString" id="xmlXPathCastNodeSetToString"></a>Function: xmlXPathCastNodeSetToString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathCastNodeSetToString	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> ns)<br />
+</pre><p>Converts a node-set to its string value.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a newly allocated string.</td></tr></tbody></table></div><h3><a name="xmlXPathCastNodeSetToBoolean" id="xmlXPathCastNodeSetToBoolean"></a>Function: xmlXPathCastNodeSetToBoolean</h3><pre class="programlisting">int	xmlXPathCastNodeSetToBoolean	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> ns)<br />
 </pre><p>Converts a node-set to its boolean value</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the boolean value</td></tr></tbody></table></div><h3><a name="xmlXPathIsNaN" id="xmlXPathIsNaN"></a>Function: xmlXPathIsNaN</h3><pre class="programlisting">int	xmlXPathIsNaN	(double val)<br />
-</pre><p>Provides a portable isnan() function to detect whether a double is a NotaNumber. Based on trio code http://sourceforge.net/projects/ctrio/</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a double value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the value is a NaN, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlXPathConvertString" id="xmlXPathConvertString"></a>Function: xmlXPathConvertString</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathConvertString	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the boolean value</td></tr></tbody></table></div><h3><a name="xmlXPathCompiledEval" id="xmlXPathCompiledEval"></a>Function: xmlXPathCompiledEval</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathCompiledEval	(<a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp, <br />						 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br />
+</pre><p>Evaluate the Precompiled XPath expression in the given context.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the compiled XPath expression</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xmlXPathCastNodeToString" id="xmlXPathCastNodeToString"></a>Function: xmlXPathCastNodeToString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathCastNodeToString	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+</pre><p>Converts a node to its string value.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a newly allocated string.</td></tr></tbody></table></div><h3><a name="xmlXPathEvalExpression" id="xmlXPathEvalExpression"></a>Function: xmlXPathEvalExpression</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathEvalExpression	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />						 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
+</pre><p>Evaluate the XPath expression in the given context.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xmlXPathConvertString" id="xmlXPathConvertString"></a>Function: xmlXPathConvertString</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathConvertString	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
 </pre><p>Converts an existing object to its string() equivalent</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an XPath object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new object, the old one is freed (or the operation is done directly on @val)</td></tr></tbody></table></div><h3><a name="xmlXPathConvertBoolean" id="xmlXPathConvertBoolean"></a>Function: xmlXPathConvertBoolean</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathConvertBoolean	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
 </pre><p>Converts an existing object to its boolean() equivalent</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an XPath object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new object, the old one is freed (or the operation is done directly on @val)</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetCreate" id="xmlXPathNodeSetCreate"></a>Function: xmlXPathNodeSetCreate</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathNodeSetCreate	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
-</pre><p>Create a new <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> of type double and of value @val</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an initial xmlNodePtr, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathCastBooleanToNumber" id="xmlXPathCastBooleanToNumber"></a>Function: xmlXPathCastBooleanToNumber</h3><pre class="programlisting">double	xmlXPathCastBooleanToNumber	(int val)<br />
-</pre><p>Converts a boolean to its number value</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a boolean</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number value</td></tr></tbody></table></div>
-      An axis traversal function. To traverse an axis, the engine calls the first time with cur == NULL and repeat until the function returns NULL indicating the end of the axis traversal.
-      
-      
-      
-    <h3><a name="xmlXPathCastToNumber" id="xmlXPathCastToNumber"></a>Function: xmlXPathCastToNumber</h3><pre class="programlisting">double	xmlXPathCastToNumber	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><p>Converts an XPath object to its number value</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an XPath object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number value</td></tr></tbody></table></div><h3><a name="xmlXPathCastStringToBoolean" id="xmlXPathCastStringToBoolean"></a>Function: xmlXPathCastStringToBoolean</h3><pre class="programlisting">int	xmlXPathCastStringToBoolean	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
-</pre><p>Converts a string to its boolean value</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the boolean value</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetItem" id="xmlXPathNodeSetItem"></a>Macro: xmlXPathNodeSetItem</h3><pre>#define xmlXPathNodeSetItem</pre><p>Implements a functionality similar to the DOM NodeList.item(). Returns the <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> at the given @index in @ns or NULL if @index is out of range (0 to length-1)</p>
-<h3><a name="xmlXPathFreeObject" id="xmlXPathFreeObject"></a>Function: xmlXPathFreeObject</h3><pre class="programlisting">void	xmlXPathFreeObject	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj)<br />
-</pre><p>Free up an <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> object.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>obj</tt></i>:</span></td><td>the object to free</td></tr></tbody></table></div><h3><a name="xmlXPathEvalPredicate" id="xmlXPathEvalPredicate"></a>Function: xmlXPathEvalPredicate</h3><pre class="programlisting">int	xmlXPathEvalPredicate	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> res)<br />
-</pre><p>Evaluate a predicate result for the current node. A PredicateExpr is evaluated by evaluating the Expr and converting the result to a boolean. If the result is a number, the result will be converted to true if the number is equal to the position of the context node in the context node list (as returned by the position function) and will be converted to false otherwise; if the result is not a number, then the result will be converted as if by a call to the boolean function.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>res</tt></i>:</span></td><td>the Predicate Expression evaluation result</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if predicate is true, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlXPathFreeContext" id="xmlXPathFreeContext"></a>Function: xmlXPathFreeContext</h3><pre class="programlisting">void	xmlXPathFreeContext	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
-</pre><p>Free up an <a href="libxml-xpath.html#xmlXPathContext">xmlXPathContext</a></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the context to free</td></tr></tbody></table></div><h3><a name="xmlXPathFreeNodeSetList" id="xmlXPathFreeNodeSetList"></a>Function: xmlXPathFreeNodeSetList</h3><pre class="programlisting">void	xmlXPathFreeNodeSetList	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj)<br />
-</pre><p>Free up the <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> @obj but don't deallocate the objects in the list contrary to xmlXPathFreeObject().</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>obj</tt></i>:</span></td><td>an existing NodeSetList object</td></tr></tbody></table></div><h3><a name="xmlXPathEval" id="xmlXPathEval"></a>Function: xmlXPathEval</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathEval	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br />
-</pre><p>Evaluate the XPath Location Path in the given context.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xmlXPathConvertNumber" id="xmlXPathConvertNumber"></a>Function: xmlXPathConvertNumber</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathConvertNumber	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><p>Converts an existing object to its number() equivalent</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an XPath object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new object, the old one is freed (or the operation is done directly on @val)</td></tr></tbody></table></div><h3><a name="xmlXPathCastNodeSetToString" id="xmlXPathCastNodeSetToString"></a>Function: xmlXPathCastNodeSetToString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathCastNodeSetToString	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> ns)<br />
-</pre><p>Converts a node-set to its string value.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a newly allocated string.</td></tr></tbody></table></div><h3><a name="xmlXPathEvalExpression" id="xmlXPathEvalExpression"></a>Function: xmlXPathEvalExpression</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathEvalExpression	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
-</pre><p>Evaluate the XPath expression in the given context.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div>
-      
-      
-    <h3><a name="xmlXPathCastToString" id="xmlXPathCastToString"></a>Function: xmlXPathCastToString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathCastToString	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><p>Converts an existing object to its string() equivalent</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an XPath object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the string value of the object, NULL in case of error. A new string is allocated only if needed (@val isn't a string object).</td></tr></tbody></table></div><h3><a name="xmlXPathObjectCopy" id="xmlXPathObjectCopy"></a>Function: xmlXPathObjectCopy</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathObjectCopy	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><p>allocate a new copy of a given object</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the original object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathCastBooleanToString" id="xmlXPathCastBooleanToString"></a>Function: xmlXPathCastBooleanToString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathCastBooleanToString	(int val)<br />
-</pre><p>Converts a boolean to its string value.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a boolean</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a newly allocated string.</td></tr></tbody></table></div><h3><a name="xmlXPathCastNumberToBoolean" id="xmlXPathCastNumberToBoolean"></a>Function: xmlXPathCastNumberToBoolean</h3><pre class="programlisting">int	xmlXPathCastNumberToBoolean	(double val)<br />
-</pre><p>Converts a number to its boolean value</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a number</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the boolean value</td></tr></tbody></table></div><h3><a name="xmlXPathFreeNodeSet" id="xmlXPathFreeNodeSet"></a>Function: xmlXPathFreeNodeSet</h3><pre class="programlisting">void	xmlXPathFreeNodeSet	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> obj)<br />
-</pre><p>Free the NodeSet compound (not the actual nodes !).</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>obj</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> to free</td></tr></tbody></table></div><h3><a name="xmlXPathNewContext" id="xmlXPathNewContext"></a>Function: xmlXPathNewContext</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a>	xmlXPathNewContext	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathContext">xmlXPathContext</a></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the XML document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathContext">xmlXPathContext</a> just allocated. The caller will need to free it.</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetIsEmpty" id="xmlXPathNodeSetIsEmpty"></a>Macro: xmlXPathNodeSetIsEmpty</h3><pre>#define xmlXPathNodeSetIsEmpty</pre><p>Checks whether @ns is empty or not. Returns %TRUE if @ns is an empty node-set.</p>
-<h3><a name="xmlXPathCastToBoolean" id="xmlXPathCastToBoolean"></a>Function: xmlXPathCastToBoolean</h3><pre class="programlisting">int	xmlXPathCastToBoolean	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><p>Converts an XPath object to its boolean value</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an XPath object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the boolean value</td></tr></tbody></table></div><h3><a name="xmlXPathCastNodeToString" id="xmlXPathCastNodeToString"></a>Function: xmlXPathCastNodeToString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathCastNodeToString	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><p>Converts a node to its string value.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a newly allocated string.</td></tr></tbody></table></div>
-      
-      
-    
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    <h3><a name="xmlXPathOrderDocElems" id="xmlXPathOrderDocElems"></a>Function: xmlXPathOrderDocElems</h3><pre class="programlisting">long	xmlXPathOrderDocElems	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
-</pre><p>Call this routine to speed up XPath computation on static documents. This stamps all the element nodes with the document order Like for line information, the order is kept in the element-&gt;content field, the value stored is actually - the node number (startting at -1) to be able to differenciate from line numbers.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>an input document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of element found in the document or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetGetLength" id="xmlXPathNodeSetGetLength"></a>Macro: xmlXPathNodeSetGetLength</h3><pre>#define xmlXPathNodeSetGetLength</pre><p>Implement a functionality similar to the DOM NodeList.length. Returns the number of nodes in the node-set.</p>
-<h3><a name="xmlXPathCastNodeToNumber" id="xmlXPathCastNodeToNumber"></a>Function: xmlXPathCastNodeToNumber</h3><pre class="programlisting">double	xmlXPathCastNodeToNumber	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><p>Converts a node to its number value</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number value</td></tr></tbody></table></div><h3><a name="xmlXPathCastStringToNumber" id="xmlXPathCastStringToNumber"></a>Function: xmlXPathCastStringToNumber</h3><pre class="programlisting">double	xmlXPathCastStringToNumber	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
-</pre><p>Converts a string to its number value</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number value</td></tr></tbody></table></div>
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-      
-    
-      
-      
-    <h3><a name="xmlXPathIsInf" id="xmlXPathIsInf"></a>Function: xmlXPathIsInf</h3><pre class="programlisting">int	xmlXPathIsInf	(double val)<br />
-</pre><p>Provides a portable isinf() function to detect whether a double is a +Infinite or -Infinite. Based on trio code http://sourceforge.net/projects/ctrio/</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a double value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 vi the value is +Infinite, -1 if -Infinite, 0 otherwise</td></tr></tbody></table></div>
-      
-      
-    <h3><a name="xmlXPathCompiledEval" id="xmlXPathCompiledEval"></a>Function: xmlXPathCompiledEval</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathCompiledEval	(<a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp, <br />				 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br />
-</pre><p>Evaluate the Precompiled XPath expression in the given context.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the compiled XPath expression</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div>
-      
-      
-      
-    
-      A conversion function is associated to a type and used to cast the new type to primitive values.
-      
-      
-      
-    <h3><a name="xmlXPathInit" id="xmlXPathInit"></a>Function: xmlXPathInit</h3><pre class="programlisting">void	xmlXPathInit	(void)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an XPath object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new object, the old one is freed (or the operation is done directly on @val)</td></tr></tbody></table></div><h3><a name="xmlXPathInit" id="xmlXPathInit"></a>Function: xmlXPathInit</h3><pre class="programlisting">void	xmlXPathInit			(void)<br />
 </pre><p>Initialize the XPath environment</p>
-<h3><a name="xmlXPathCmpNodes" id="xmlXPathCmpNodes"></a>Function: xmlXPathCmpNodes</h3><pre class="programlisting">int	xmlXPathCmpNodes	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node1, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
+<h3><a name="xmlXPathCastStringToBoolean" id="xmlXPathCastStringToBoolean"></a>Function: xmlXPathCastStringToBoolean</h3><pre class="programlisting">int	xmlXPathCastStringToBoolean	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
+</pre><p>Converts a string to its boolean value</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the boolean value</td></tr></tbody></table></div><h3><a name="xmlXPathConvertFunc" id="xmlXPathConvertFunc"></a>Function type: xmlXPathConvertFunc</h3><pre class="programlisting">Function type: xmlXPathConvertFunc
+int	xmlXPathConvertFunc		(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj, <br />					 int type)
+</pre><p>A conversion function is associated to a type and used to cast the new type to primitive values.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>obj</tt></i>:</span></td><td>an XPath object</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the number of the target type</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-1 in case of error, 0 otherwise</td></tr></tbody></table></div><br />
+<h3><a name="xmlXPathIsInf" id="xmlXPathIsInf"></a>Function: xmlXPathIsInf</h3><pre class="programlisting">int	xmlXPathIsInf			(double val)<br />
+</pre><p>Provides a portable isinf() function to detect whether a double is a +Infinite or -Infinite. Based on trio code http://sourceforge.net/projects/ctrio/</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a double value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 vi the value is +Infinite, -1 if -Infinite, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlXPathOrderDocElems" id="xmlXPathOrderDocElems"></a>Function: xmlXPathOrderDocElems</h3><pre class="programlisting">long	xmlXPathOrderDocElems		(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+</pre><p>Call this routine to speed up XPath computation on static documents. This stamps all the element nodes with the document order Like for line information, the order is kept in the element-&gt;content field, the value stored is actually - the node number (startting at -1) to be able to differenciate from line numbers.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>an input document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of element found in the document or -1 in case of error.</td></tr></tbody></table></div><h3><a name="xmlXPathFunction" id="xmlXPathFunction"></a>Function type: xmlXPathFunction</h3><pre class="programlisting">Function type: xmlXPathFunction
+void	xmlXPathFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)
+</pre><p>An XPath function. The arguments (if any) are popped out from the context stack and the result is pushed on the stack.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath interprestation context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><br />
+<h3><a name="xmlXPathFreeNodeSetList" id="xmlXPathFreeNodeSetList"></a>Function: xmlXPathFreeNodeSetList</h3><pre class="programlisting">void	xmlXPathFreeNodeSetList		(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj)<br />
+</pre><p>Free up the <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> @obj but don't deallocate the objects in the list contrary to xmlXPathFreeObject().</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>obj</tt></i>:</span></td><td>an existing NodeSetList object</td></tr></tbody></table></div><h3><a name="xmlXPathCmpNodes" id="xmlXPathCmpNodes"></a>Function: xmlXPathCmpNodes</h3><pre class="programlisting">int	xmlXPathCmpNodes		(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node1, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node2)<br />
 </pre><p>Compare two nodes w.r.t document order</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node1</tt></i>:</span></td><td>the first node</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>the second node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-2 in case of error 1 if first point &lt; second point, 0 if that's the same node, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlXPathCastNumberToString" id="xmlXPathCastNumberToString"></a>Function: xmlXPathCastNumberToString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathCastNumberToString	(double val)<br />
-</pre><p>Converts a number to its string value.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a number</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a newly allocated string.</td></tr></tbody></table></div>
-      An XPath evaluation function, the parameters are on the XPath context stack.
-      
-      
-      
-    
-      An XPath function. The arguments (if any) are popped out from the context stack and the result is pushed on the stack.
-      
-      
-      
-    <h3><a name="xmlXPathFreeCompExpr" id="xmlXPathFreeCompExpr"></a>Function: xmlXPathFreeCompExpr</h3><pre class="programlisting">void	xmlXPathFreeCompExpr	(<a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node1</tt></i>:</span></td><td>the first node</td></tr><tr><td><span class="term"><i><tt>node2</tt></i>:</span></td><td>the second node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>-2 in case of error 1 if first point &lt; second point, 0 if that's the same node, -1 otherwise</td></tr></tbody></table></div><h3><a name="xmlXPathCastBooleanToNumber" id="xmlXPathCastBooleanToNumber"></a>Function: xmlXPathCastBooleanToNumber</h3><pre class="programlisting">double	xmlXPathCastBooleanToNumber	(int val)<br />
+</pre><p>Converts a boolean to its number value</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a boolean</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number value</td></tr></tbody></table></div><h3><a name="xmlXPathCastToString" id="xmlXPathCastToString"></a>Function: xmlXPathCastToString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathCastToString	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
+</pre><p>Converts an existing object to its string() equivalent</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an XPath object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the string value of the object, NULL in case of error. A new string is allocated only if needed (@val isn't a string object).</td></tr></tbody></table></div><h3><a name="xmlXPathCastStringToNumber" id="xmlXPathCastStringToNumber"></a>Function: xmlXPathCastStringToNumber</h3><pre class="programlisting">double	xmlXPathCastStringToNumber	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
+</pre><p>Converts a string to its number value</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number value</td></tr></tbody></table></div><h3><a name="xmlXPathAxisFunc" id="xmlXPathAxisFunc"></a>Function type: xmlXPathAxisFunc</h3><pre class="programlisting">Function type: xmlXPathAxisFunc
+<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathAxisFunc	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />						 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> cur)
+</pre><p>An axis traversal function. To traverse an axis, the engine calls the first time with cur == NULL and repeat until the function returns NULL indicating the end of the axis traversal.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath interpreter context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the previous node being explored on that axis</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next node in that axis or NULL if at the end of the axis.</td></tr></tbody></table></div><br />
+<h3><a name="xmlXPathCastToNumber" id="xmlXPathCastToNumber"></a>Function: xmlXPathCastToNumber</h3><pre class="programlisting">double	xmlXPathCastToNumber		(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
+</pre><p>Converts an XPath object to its number value</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an XPath object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number value</td></tr></tbody></table></div><h3><a name="xmlXPathCastBooleanToString" id="xmlXPathCastBooleanToString"></a>Function: xmlXPathCastBooleanToString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathCastBooleanToString	(int val)<br />
+</pre><p>Converts a boolean to its string value.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a boolean</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a newly allocated string.</td></tr></tbody></table></div><h3><a name="xmlXPathCastNodeToNumber" id="xmlXPathCastNodeToNumber"></a>Function: xmlXPathCastNodeToNumber</h3><pre class="programlisting">double	xmlXPathCastNodeToNumber	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+</pre><p>Converts a node to its number value</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number value</td></tr></tbody></table></div><h3><a name="xmlXPathCastNumberToBoolean" id="xmlXPathCastNumberToBoolean"></a>Function: xmlXPathCastNumberToBoolean</h3><pre class="programlisting">int	xmlXPathCastNumberToBoolean	(double val)<br />
+</pre><p>Converts a number to its boolean value</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a number</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the boolean value</td></tr></tbody></table></div><h3><a name="xmlXPathIsNaN" id="xmlXPathIsNaN"></a>Function: xmlXPathIsNaN</h3><pre class="programlisting">int	xmlXPathIsNaN			(double val)<br />
+</pre><p>Provides a portable isnan() function to detect whether a double is a NotaNumber. Based on trio code http://sourceforge.net/projects/ctrio/</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a double value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the value is a NaN, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlXPathEvalFunc" id="xmlXPathEvalFunc"></a>Function type: xmlXPathEvalFunc</h3><pre class="programlisting">Function type: xmlXPathEvalFunc
+void	xmlXPathEvalFunc		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)
+</pre><p>An XPath evaluation function, the parameters are on the XPath context stack.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments passed to the function</td></tr></tbody></table></div><br />
+<h3><a name="xmlXPathFreeCompExpr" id="xmlXPathFreeCompExpr"></a>Function: xmlXPathFreeCompExpr</h3><pre class="programlisting">void	xmlXPathFreeCompExpr		(<a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp)<br />
 </pre><p>Free up the memory allocated by @comp</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>an XPATH comp</td></tr></tbody></table></div><h3><a name="xmlXPathCompile" id="xmlXPathCompile"></a>Function: xmlXPathCompile</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a>	xmlXPathCompile	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>an XPATH comp</td></tr></tbody></table></div><h3><a name="xmlXPathObjectCopy" id="xmlXPathObjectCopy"></a>Function: xmlXPathObjectCopy</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathObjectCopy	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
+</pre><p>allocate a new copy of a given object</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the original object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathNewContext" id="xmlXPathNewContext"></a>Function: xmlXPathNewContext</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a>	xmlXPathNewContext	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc)<br />
+</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathContext">xmlXPathContext</a></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the XML document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathContext">xmlXPathContext</a> just allocated. The caller will need to free it.</td></tr></tbody></table></div><h3><a name="xmlXPathEvalPredicate" id="xmlXPathEvalPredicate"></a>Function: xmlXPathEvalPredicate</h3><pre class="programlisting">int	xmlXPathEvalPredicate		(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> res)<br />
+</pre><p>Evaluate a predicate result for the current node. A PredicateExpr is evaluated by evaluating the Expr and converting the result to a boolean. If the result is a number, the result will be converted to true if the number is equal to the position of the context node in the context node list (as returned by the position function) and will be converted to false otherwise; if the result is not a number, then the result will be converted as if by a call to the boolean function.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>res</tt></i>:</span></td><td>the Predicate Expression evaluation result</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if predicate is true, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlXPathConvertNumber" id="xmlXPathConvertNumber"></a>Function: xmlXPathConvertNumber</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathConvertNumber	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
+</pre><p>Converts an existing object to its number() equivalent</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an XPath object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new object, the old one is freed (or the operation is done directly on @val)</td></tr></tbody></table></div><h3><a name="xmlXPathCompile" id="xmlXPathCompile"></a>Function: xmlXPathCompile</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a>	xmlXPathCompile	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
 </pre><p>Compile an XPath expression</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> resulting from the compilation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xmlXPathCastNodeSetToNumber" id="xmlXPathCastNodeSetToNumber"></a>Function: xmlXPathCastNodeSetToNumber</h3><pre class="programlisting">double	xmlXPathCastNodeSetToNumber	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> ns)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> resulting from the compilation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xmlXPathFreeObject" id="xmlXPathFreeObject"></a>Function: xmlXPathFreeObject</h3><pre class="programlisting">void	xmlXPathFreeObject		(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj)<br />
+</pre><p>Free up an <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> object.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>obj</tt></i>:</span></td><td>the object to free</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetCreate" id="xmlXPathNodeSetCreate"></a>Function: xmlXPathNodeSetCreate</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathNodeSetCreate	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
+</pre><p>Create a new <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> of type double and of value @val</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an initial xmlNodePtr, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathFreeNodeSet" id="xmlXPathFreeNodeSet"></a>Function: xmlXPathFreeNodeSet</h3><pre class="programlisting">void	xmlXPathFreeNodeSet		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> obj)<br />
+</pre><p>Free the NodeSet compound (not the actual nodes !).</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>obj</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> to free</td></tr></tbody></table></div><h3><a name="xmlXPathCastNodeSetToNumber" id="xmlXPathCastNodeSetToNumber"></a>Function: xmlXPathCastNodeSetToNumber</h3><pre class="programlisting">double	xmlXPathCastNodeSetToNumber	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> ns)<br />
 </pre><p>Converts a node-set to its number value</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number value</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number value</td></tr></tbody></table></div><h3><a name="xmlXPathFreeContext" id="xmlXPathFreeContext"></a>Function: xmlXPathFreeContext</h3><pre class="programlisting">void	xmlXPathFreeContext		(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
+</pre><p>Free up an <a href="libxml-xpath.html#xmlXPathContext">xmlXPathContext</a></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the context to free</td></tr></tbody></table></div><h3><a name="xmlXPathEval" id="xmlXPathEval"></a>Function: xmlXPathEval</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathEval	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br />
+</pre><p>Evaluate the XPath Location Path in the given context.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xmlXPathCastNumberToString" id="xmlXPathCastNumberToString"></a>Function: xmlXPathCastNumberToString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathCastNumberToString	(double val)<br />
+</pre><p>Converts a number to its string value.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a number</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a newly allocated string.</td></tr></tbody></table></div><h3><a name="xmlXPathCastToBoolean" id="xmlXPathCastToBoolean"></a>Function: xmlXPathCastToBoolean</h3><pre class="programlisting">int	xmlXPathCastToBoolean		(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
+</pre><p>Converts an XPath object to its boolean value</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an XPath object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the boolean value</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-xpathInternals.html b/doc/html/libxml-xpathInternals.html
index 74839ac..9951587 100644
--- a/doc/html/libxml-xpathInternals.html
+++ b/doc/html/libxml-xpathInternals.html
@@ -10,461 +10,397 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xpathInternals from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xpathInternals from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xpath.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xpath.html">xpath</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xpointer.html">xpointer</a></th><td><a accesskey="n" href="libxml-xpointer.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>internal interfaces for XML Path Language implementation used to build new modules on top of XPath like XPointer and XSLT </p><h2>Table of Contents</h2><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathNodeSetMerge">xmlXPathNodeSetMerge</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> val1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> val2)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathRoundFunction">xmlXPathRoundFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">#define <a href="#CAST_TO_NUMBER">CAST_TO_NUMBER</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlXPathNumberFunction">xmlXPathNumberFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">int	<a href="#xmlXPathNotEqualValues">xmlXPathNotEqualValues</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathStackIsNodeSet">xmlXPathStackIsNodeSet</a>
-
-</pre><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathNsLookup">xmlXPathNsLookup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathCountFunction">xmlXPathCountFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathParseNCName">xmlXPathParseNCName</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathNewNodeSet">xmlXPathNewNodeSet</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathReturnNumber">xmlXPathReturnNumber</a>
-
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathVariableLookupNS">xmlXPathVariableLookupNS</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextAncestorOrSelf">xmlXPathNextAncestorOrSelf</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathNewBoolean">xmlXPathNewBoolean</a>	(int val)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathNodeSetRemove">xmlXPathNodeSetRemove</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />				 int val)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathSubValues">xmlXPathSubValues</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathNewNodeSetList">xmlXPathNewNodeSetList</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> val)<br />
-</pre><pre class="programlisting">int	<a href="#xmlXPathPopBoolean">xmlXPathPopBoolean</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathNotFunction">xmlXPathNotFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">int	<a href="#xmlXPathEqualValues">xmlXPathEqualValues</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathGetContextNode">xmlXPathGetContextNode</a>
-
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathNewString">xmlXPathNewString</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathTrailingSorted">xmlXPathTrailingSorted</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathMultValues">xmlXPathMultValues</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathModValues">xmlXPathModValues</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathNodeLeadingSorted">xmlXPathNodeLeadingSorted</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">int	<a href="#xmlXPathEvaluatePredicateResult">xmlXPathEvaluatePredicateResult</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> res)<br />
-</pre><pre class="programlisting">#define <a href="#CHECK_ARITY">CHECK_ARITY</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextChild">xmlXPathNextChild</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">#define <a href="#CAST_TO_STRING">CAST_TO_STRING</a>
-
-</pre><pre class="programlisting">#define <a href="#xmlXPathReturnExternal">xmlXPathReturnExternal</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextFollowingSibling">xmlXPathNextFollowingSibling</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathBooleanFunction">xmlXPathBooleanFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a>	<a href="#xmlXPathNewParserContext">xmlXPathNewParserContext</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathNamespaceURIFunction">xmlXPathNamespaceURIFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathSubstringAfterFunction">xmlXPathSubstringAfterFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathRoot">xmlXPathRoot</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathLangFunction">xmlXPathLangFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">#define <a href="#CHECK_TYPE0">CHECK_TYPE0</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlXPathCompareValues">xmlXPathCompareValues</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int inf, <br />				 int strict)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathPopNodeSet">xmlXPathPopNodeSet</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathCheckError">xmlXPathCheckError</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlXPathConcatFunction">xmlXPathConcatFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathNodeSetAddNs">xmlXPathNodeSetAddNs</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns)<br />
-</pre><pre class="programlisting">int	<a href="#xmlXPathRegisterFunc">xmlXPathRegisterFunc</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a> f)<br />
-</pre><pre class="programlisting">int	<a href="#xmlXPathNodeSetContains">xmlXPathNodeSetContains</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
-</pre><pre class="programlisting">int	<a href="#xmlXPathRegisterFuncNS">xmlXPathRegisterFuncNS</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri, <br />				 <a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a> f)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPatherror">xmlXPatherror</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 const char * file, <br />				 int line, <br />				 int no)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextAncestor">xmlXPathNextAncestor</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextFollowing">xmlXPathNextFollowing</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">int	<a href="#xmlXPathRegisterVariableNS">xmlXPathRegisterVariableNS</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> value)<br />
-</pre><pre class="programlisting">#define <a href="#CAST_TO_BOOLEAN">CAST_TO_BOOLEAN</a>
-
-</pre><pre class="programlisting">int	<a href="#xmlXPathIsNodeType">xmlXPathIsNodeType</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathPopString">xmlXPathPopString</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathLocalNameFunction">xmlXPathLocalNameFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathAddValues">xmlXPathAddValues</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathDifference">xmlXPathDifference</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
-</pre><pre class="programlisting">int	<a href="#xmlXPathRegisterVariable">xmlXPathRegisterVariable</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> value)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#valuePop">valuePop</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#CHECK_ERROR0">CHECK_ERROR0</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlXPathCeilingFunction">xmlXPathCeilingFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathIntersection">xmlXPathIntersection</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathLeadingSorted">xmlXPathLeadingSorted</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathReturnFalse">xmlXPathReturnFalse</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlXPathContainsFunction">xmlXPathContainsFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextPrecedingSibling">xmlXPathNextPrecedingSibling</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathNodeSetSort">xmlXPathNodeSetSort</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> set)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathStartsWithFunction">xmlXPathStartsWithFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">void *	<a href="#xmlXPathPopExternal">xmlXPathPopExternal</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathNormalizeFunction">xmlXPathNormalizeFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathNodeLeading">xmlXPathNodeLeading</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathSumFunction">xmlXPathSumFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathRegisterVariableLookup">xmlXPathRegisterVariableLookup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 <a href="libxml-xpathInternals.html#xmlXPathVariableLookupFunc">xmlXPathVariableLookupFunc</a> f, <br />				 void * data)<br />
-</pre><pre class="programlisting"><a name="xmlXPathFuncLookupFunc" id="xmlXPathFuncLookupFunc"></a>Function type: xmlXPathFuncLookupFunc
-<a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a>	xmlXPathFuncLookupFunc	(void * ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)
-</pre><p>Prototype for callbacks used to plug function lookup in the XPath engine.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>name of the function</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the namespace name hosting this function</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the XPath function or NULL if not found.</td></tr></tbody></table></div><br />
-<pre class="programlisting">void	<a href="#xmlXPathNodeSetDel">xmlXPathNodeSetDel</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathStackIsExternal">xmlXPathStackIsExternal</a>
-
-</pre><pre class="programlisting">#define <a href="#xmlXPathReturnEmptyString">xmlXPathReturnEmptyString</a>
-
-</pre><pre class="programlisting">#define <a href="#XP_ERROR0">XP_ERROR0</a>
-
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathNodeTrailingSorted">xmlXPathNodeTrailingSorted</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathErr">xmlXPathErr</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int error)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextPreceding">xmlXPathNextPreceding</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a>	<a href="#xmlXPathFunctionLookupNS">xmlXPathFunctionLookupNS</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathWrapNodeSet">xmlXPathWrapNodeSet</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> val)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathSetTypeError">xmlXPathSetTypeError</a>
-
-</pre><pre class="programlisting">#define <a href="#xmlXPathReturnTrue">xmlXPathReturnTrue</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlXPathRegisteredFuncsCleanup">xmlXPathRegisteredFuncsCleanup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathRegisterAllFunctions">xmlXPathRegisterAllFunctions</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathReturnEmptyNodeSet">xmlXPathReturnEmptyNodeSet</a>
-
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a>	<a href="#xmlXPathFunctionLookup">xmlXPathFunctionLookup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathGetDocument">xmlXPathGetDocument</a>
-
-</pre><pre class="programlisting">#define <a href="#xmlXPathReturnBoolean">xmlXPathReturnBoolean</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlXPathPositionFunction">xmlXPathPositionFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting"><a name="xmlXPathVariableLookupFunc" id="xmlXPathVariableLookupFunc"></a>Function type: xmlXPathVariableLookupFunc
-<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathVariableLookupFunc	(void * ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)
-</pre><p>Prototype for callbacks used to plug variable lookup in the XPath engine.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>name of the variable</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the namespace name hosting this variable</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the XPath object value or NULL if not found.</td></tr></tbody></table></div><br />
-<pre class="programlisting">void	<a href="#xmlXPathSubstringBeforeFunction">xmlXPathSubstringBeforeFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathRegisteredVariablesCleanup">xmlXPathRegisteredVariablesCleanup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextDescendant">xmlXPathNextDescendant</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextNamespace">xmlXPathNextNamespace</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathWrapCString">xmlXPathWrapCString</a>	(char * val)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathNewFloat">xmlXPathNewFloat</a>	(double val)<br />
-</pre><pre class="programlisting">int	<a href="#xmlXPathRegisterNs">xmlXPathRegisterNs</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathWrapExternal">xmlXPathWrapExternal</a>	(void * val)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathTranslateFunction">xmlXPathTranslateFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextParent">xmlXPathNextParent</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathNodeSetFreeNs">xmlXPathNodeSetFreeNs</a>	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathTrailing">xmlXPathTrailing</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
-</pre><pre class="programlisting">int	<a href="#xmlXPathHasSameNodes">xmlXPathHasSameNodes</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathDistinctSorted">xmlXPathDistinctSorted</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathFreeParserContext">xmlXPathFreeParserContext</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathNodeTrailing">xmlXPathNodeTrailing</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathNewCString">xmlXPathNewCString</a>	(const char * val)<br />
-</pre><pre class="programlisting">int	<a href="#valuePush">valuePush</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> value)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathNodeSetAdd">xmlXPathNodeSetAdd</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathSubstringFunction">xmlXPathSubstringFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathStringFunction">xmlXPathStringFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathFloorFunction">xmlXPathFloorFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathNodeSetAddUnique">xmlXPathNodeSetAddUnique</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathNewValueTree">xmlXPathNewValueTree</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathVariableLookup">xmlXPathVariableLookup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathDistinct">xmlXPathDistinct</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathIdFunction">xmlXPathIdFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathSetError">xmlXPathSetError</a>
-
-</pre><pre class="programlisting">#define <a href="#CHECK_ERROR">CHECK_ERROR</a>
-
-</pre><pre class="programlisting">#define <a href="#CHECK_TYPE">CHECK_TYPE</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextDescendantOrSelf">xmlXPathNextDescendantOrSelf</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathRegisterFuncLookup">xmlXPathRegisterFuncLookup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 <a href="libxml-xpathInternals.html#xmlXPathFuncLookupFunc">xmlXPathFuncLookupFunc</a> f, <br />				 void * funcCtxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextAttribute">xmlXPathNextAttribute</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathDivValues">xmlXPathDivValues</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathStringLengthFunction">xmlXPathStringLengthFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathLastFunction">xmlXPathLastFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathSetArityError">xmlXPathSetArityError</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextSelf">xmlXPathNextSelf</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathDebugDumpCompExpr">xmlXPathDebugDumpCompExpr</a>	(FILE * output, <br />				 <a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp, <br />				 int depth)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathEvalExpr">xmlXPathEvalExpr</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathFalseFunction">xmlXPathFalseFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathDebugDumpObject">xmlXPathDebugDumpObject</a>	(FILE * output, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> cur, <br />				 int depth)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathValueFlipSign">xmlXPathValueFlipSign</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">double	<a href="#xmlXPathStringEvalNumber">xmlXPathStringEvalNumber</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathWrapString">xmlXPathWrapString</a>	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathEmptyNodeSet">xmlXPathEmptyNodeSet</a>
-
-</pre><pre class="programlisting">#define <a href="#xmlXPathReturnString">xmlXPathReturnString</a>
-
-</pre><pre class="programlisting">#define <a href="#xmlXPathGetError">xmlXPathGetError</a>
-
-</pre><pre class="programlisting">#define <a href="#XP_ERROR">XP_ERROR</a>
-
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathLeading">xmlXPathLeading</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPathRegisteredNsCleanup">xmlXPathRegisteredNsCleanup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathParseName">xmlXPathParseName</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">#define <a href="#xmlXPathReturnNodeSet">xmlXPathReturnNodeSet</a>
-
-</pre><pre class="programlisting">void	<a href="#xmlXPathTrueFunction">xmlXPathTrueFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting">double	<a href="#xmlXPathPopNumber">xmlXPathPopNumber</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlXPathNodeSetMerge" id="xmlXPathNodeSetMerge"></a>Function: xmlXPathNodeSetMerge</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathNodeSetMerge	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> val1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> val2)<br />
+    </style><title>Module xpathInternals from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xpathInternals from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xpath.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xpath.html">xpath</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th><th align="right"><a href="libxml-xpointer.html">xpointer</a></th><td><a accesskey="n" href="libxml-xpointer.html"><img src="right.png" width="24" height="24" border="0" alt="Next" /></a></td></tr></table><p>internal interfaces for XML Path Language implementation used to build new modules on top of XPath like XPointer and XSLT </p><h2>Table of Contents</h2><pre class="programlisting">#define <a href="#CAST_TO_BOOLEAN">CAST_TO_BOOLEAN</a></pre><pre class="programlisting">#define <a href="#CAST_TO_NUMBER">CAST_TO_NUMBER</a></pre><pre class="programlisting">#define <a href="#CAST_TO_STRING">CAST_TO_STRING</a></pre><pre class="programlisting">#define <a href="#CHECK_ARITY">CHECK_ARITY</a></pre><pre class="programlisting">#define <a href="#CHECK_ERROR">CHECK_ERROR</a></pre><pre class="programlisting">#define <a href="#CHECK_ERROR0">CHECK_ERROR0</a></pre><pre class="programlisting">#define <a href="#CHECK_TYPE">CHECK_TYPE</a></pre><pre class="programlisting">#define <a href="#CHECK_TYPE0">CHECK_TYPE0</a></pre><pre class="programlisting">#define <a href="#XP_ERROR">XP_ERROR</a></pre><pre class="programlisting">#define <a href="#XP_ERROR0">XP_ERROR0</a></pre><pre class="programlisting">#define <a href="#xmlXPathCheckError">xmlXPathCheckError</a></pre><pre class="programlisting">#define <a href="#xmlXPathEmptyNodeSet">xmlXPathEmptyNodeSet</a></pre><pre class="programlisting">#define <a href="#xmlXPathGetContextNode">xmlXPathGetContextNode</a></pre><pre class="programlisting">#define <a href="#xmlXPathGetDocument">xmlXPathGetDocument</a></pre><pre class="programlisting">#define <a href="#xmlXPathGetError">xmlXPathGetError</a></pre><pre class="programlisting">#define <a href="#xmlXPathReturnBoolean">xmlXPathReturnBoolean</a></pre><pre class="programlisting">#define <a href="#xmlXPathReturnEmptyNodeSet">xmlXPathReturnEmptyNodeSet</a></pre><pre class="programlisting">#define <a href="#xmlXPathReturnEmptyString">xmlXPathReturnEmptyString</a></pre><pre class="programlisting">#define <a href="#xmlXPathReturnExternal">xmlXPathReturnExternal</a></pre><pre class="programlisting">#define <a href="#xmlXPathReturnFalse">xmlXPathReturnFalse</a></pre><pre class="programlisting">#define <a href="#xmlXPathReturnNodeSet">xmlXPathReturnNodeSet</a></pre><pre class="programlisting">#define <a href="#xmlXPathReturnNumber">xmlXPathReturnNumber</a></pre><pre class="programlisting">#define <a href="#xmlXPathReturnString">xmlXPathReturnString</a></pre><pre class="programlisting">#define <a href="#xmlXPathReturnTrue">xmlXPathReturnTrue</a></pre><pre class="programlisting">#define <a href="#xmlXPathSetArityError">xmlXPathSetArityError</a></pre><pre class="programlisting">#define <a href="#xmlXPathSetError">xmlXPathSetError</a></pre><pre class="programlisting">#define <a href="#xmlXPathSetTypeError">xmlXPathSetTypeError</a></pre><pre class="programlisting">#define <a href="#xmlXPathStackIsExternal">xmlXPathStackIsExternal</a></pre><pre class="programlisting">#define <a href="#xmlXPathStackIsNodeSet">xmlXPathStackIsNodeSet</a></pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#valuePop">valuePop</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#valuePush">valuePush</a>			(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> value)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathAddValues">xmlXPathAddValues</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathBooleanFunction">xmlXPathBooleanFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathCeilingFunction">xmlXPathCeilingFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathCompareValues">xmlXPathCompareValues</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int inf, <br />					 int strict)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathConcatFunction">xmlXPathConcatFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathContainsFunction">xmlXPathContainsFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathCountFunction">xmlXPathCountFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathDebugDumpCompExpr">xmlXPathDebugDumpCompExpr</a>	(FILE * output, <br />					 <a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp, <br />					 int depth)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathDebugDumpObject">xmlXPathDebugDumpObject</a>		(FILE * output, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> cur, <br />					 int depth)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathDifference">xmlXPathDifference</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathDistinct">xmlXPathDistinct</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathDistinctSorted">xmlXPathDistinctSorted</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathDivValues">xmlXPathDivValues</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathEqualValues">xmlXPathEqualValues</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathErr">xmlXPathErr</a>			(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int error)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathEvalExpr">xmlXPathEvalExpr</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathEvaluatePredicateResult">xmlXPathEvaluatePredicateResult</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> res)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathFalseFunction">xmlXPathFalseFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathFloorFunction">xmlXPathFloorFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathFreeParserContext">xmlXPathFreeParserContext</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">Function type: <a href="#xmlXPathFuncLookupFunc">xmlXPathFuncLookupFunc</a>
+<a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a>	<a href="#xmlXPathFuncLookupFunc">xmlXPathFuncLookupFunc</a>	(void * ctxt, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)
+</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a>	<a href="#xmlXPathFunctionLookup">xmlXPathFunctionLookup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a>	<a href="#xmlXPathFunctionLookupNS">xmlXPathFunctionLookupNS</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathHasSameNodes">xmlXPathHasSameNodes</a>		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathIdFunction">xmlXPathIdFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathIntersection">xmlXPathIntersection</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathIsNodeType">xmlXPathIsNodeType</a>		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathLangFunction">xmlXPathLangFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathLastFunction">xmlXPathLastFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathLeading">xmlXPathLeading</a>		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathLeadingSorted">xmlXPathLeadingSorted</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathLocalNameFunction">xmlXPathLocalNameFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathModValues">xmlXPathModValues</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathMultValues">xmlXPathMultValues</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathNamespaceURIFunction">xmlXPathNamespaceURIFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathNewBoolean">xmlXPathNewBoolean</a>	(int val)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathNewCString">xmlXPathNewCString</a>	(const char * val)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathNewFloat">xmlXPathNewFloat</a>	(double val)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathNewNodeSet">xmlXPathNewNodeSet</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathNewNodeSetList">xmlXPathNewNodeSetList</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> val)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a>	<a href="#xmlXPathNewParserContext">xmlXPathNewParserContext</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />							 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathNewString">xmlXPathNewString</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathNewValueTree">xmlXPathNewValueTree</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextAncestor">xmlXPathNextAncestor</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextAncestorOrSelf">xmlXPathNextAncestorOrSelf</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextAttribute">xmlXPathNextAttribute</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextChild">xmlXPathNextChild</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextDescendant">xmlXPathNextDescendant</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextDescendantOrSelf">xmlXPathNextDescendantOrSelf</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextFollowing">xmlXPathNextFollowing</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextFollowingSibling">xmlXPathNextFollowingSibling</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextNamespace">xmlXPathNextNamespace</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextParent">xmlXPathNextParent</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextPreceding">xmlXPathNextPreceding</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextPrecedingSibling">xmlXPathNextPrecedingSibling</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPathNextSelf">xmlXPathNextSelf</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathNodeLeading">xmlXPathNodeLeading</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathNodeLeadingSorted">xmlXPathNodeLeadingSorted</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathNodeSetAdd">xmlXPathNodeSetAdd</a>		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathNodeSetAddNs">xmlXPathNodeSetAddNs</a>		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathNodeSetAddUnique">xmlXPathNodeSetAddUnique</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathNodeSetContains">xmlXPathNodeSetContains</a>		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathNodeSetDel">xmlXPathNodeSetDel</a>		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathNodeSetFreeNs">xmlXPathNodeSetFreeNs</a>		(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathNodeSetMerge">xmlXPathNodeSetMerge</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> val1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> val2)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathNodeSetRemove">xmlXPathNodeSetRemove</a>		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />					 int val)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathNodeSetSort">xmlXPathNodeSetSort</a>		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> set)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathNodeTrailing">xmlXPathNodeTrailing</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathNodeTrailingSorted">xmlXPathNodeTrailingSorted</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathNormalizeFunction">xmlXPathNormalizeFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathNotEqualValues">xmlXPathNotEqualValues</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathNotFunction">xmlXPathNotFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathNsLookup">xmlXPathNsLookup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathNumberFunction">xmlXPathNumberFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathParseNCName">xmlXPathParseNCName</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathParseName">xmlXPathParseName</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathPopBoolean">xmlXPathPopBoolean</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void *	<a href="#xmlXPathPopExternal">xmlXPathPopExternal</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathPopNodeSet">xmlXPathPopNodeSet</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">double	<a href="#xmlXPathPopNumber">xmlXPathPopNumber</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	<a href="#xmlXPathPopString">xmlXPathPopString</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathPositionFunction">xmlXPathPositionFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathRegisterAllFunctions">xmlXPathRegisterAllFunctions</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathRegisterFunc">xmlXPathRegisterFunc</a>		(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a> f)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathRegisterFuncLookup">xmlXPathRegisterFuncLookup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 <a href="libxml-xpathInternals.html#xmlXPathFuncLookupFunc">xmlXPathFuncLookupFunc</a> f, <br />					 void * funcCtxt)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathRegisterFuncNS">xmlXPathRegisterFuncNS</a>		(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri, <br />					 <a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a> f)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathRegisterNs">xmlXPathRegisterNs</a>		(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathRegisterVariable">xmlXPathRegisterVariable</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> value)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathRegisterVariableLookup">xmlXPathRegisterVariableLookup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 <a href="libxml-xpathInternals.html#xmlXPathVariableLookupFunc">xmlXPathVariableLookupFunc</a> f, <br />					 void * data)</pre>
+<pre class="programlisting">int	<a href="#xmlXPathRegisterVariableNS">xmlXPathRegisterVariableNS</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> value)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathRegisteredFuncsCleanup">xmlXPathRegisteredFuncsCleanup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathRegisteredNsCleanup">xmlXPathRegisteredNsCleanup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathRegisteredVariablesCleanup">xmlXPathRegisteredVariablesCleanup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathRoot">xmlXPathRoot</a>			(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathRoundFunction">xmlXPathRoundFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathStartsWithFunction">xmlXPathStartsWithFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">double	<a href="#xmlXPathStringEvalNumber">xmlXPathStringEvalNumber</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathStringFunction">xmlXPathStringFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathStringLengthFunction">xmlXPathStringLengthFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathSubValues">xmlXPathSubValues</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathSubstringAfterFunction">xmlXPathSubstringAfterFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathSubstringBeforeFunction">xmlXPathSubstringBeforeFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathSubstringFunction">xmlXPathSubstringFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathSumFunction">xmlXPathSumFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathTrailing">xmlXPathTrailing</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	<a href="#xmlXPathTrailingSorted">xmlXPathTrailingSorted</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathTranslateFunction">xmlXPathTranslateFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathTrueFunction">xmlXPathTrueFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting">void	<a href="#xmlXPathValueFlipSign">xmlXPathValueFlipSign</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathVariableLookup">xmlXPathVariableLookup</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)</pre>
+<pre class="programlisting">Function type: <a href="#xmlXPathVariableLookupFunc">xmlXPathVariableLookupFunc</a>
+<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathVariableLookupFunc">xmlXPathVariableLookupFunc</a>	(void * ctxt, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)
+</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathVariableLookupNS">xmlXPathVariableLookupNS</a>	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathWrapCString">xmlXPathWrapCString</a>	(char * val)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathWrapExternal">xmlXPathWrapExternal</a>	(void * val)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathWrapNodeSet">xmlXPathWrapNodeSet</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> val)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPathWrapString">xmlXPathWrapString</a>	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * val)</pre>
+<pre class="programlisting">void	<a href="#xmlXPatherror">xmlXPatherror</a>			(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 const char * file, <br />					 int line, <br />					 int no)</pre>
+<h2>Description</h2>
+<h3><a name="xmlXPathStackIsNodeSet" id="xmlXPathStackIsNodeSet"></a>Macro: xmlXPathStackIsNodeSet</h3><pre>#define xmlXPathStackIsNodeSet</pre><p>Check if the current value on the XPath stack is a node set or an XSLT value tree. Returns true if the current object on the stack is a node-set.</p>
+<h3><a name="xmlXPathStackIsExternal" id="xmlXPathStackIsExternal"></a>Macro: xmlXPathStackIsExternal</h3><pre>#define xmlXPathStackIsExternal</pre><p>Checks if the current value on the XPath stack is an external object. Returns true if the current object on the stack is an external object.</p>
+<h3><a name="xmlXPathReturnEmptyString" id="xmlXPathReturnEmptyString"></a>Macro: xmlXPathReturnEmptyString</h3><pre>#define xmlXPathReturnEmptyString</pre><p>Pushes an empty string on the stack.</p>
+<h3><a name="XP_ERROR0" id="XP_ERROR0"></a>Macro: XP_ERROR0</h3><pre>#define XP_ERROR0</pre><p>Macro to raise an XPath error and return 0.</p>
+<h3><a name="xmlXPathCheckError" id="xmlXPathCheckError"></a>Macro: xmlXPathCheckError</h3><pre>#define xmlXPathCheckError</pre><p>Check if an XPath error was raised. Returns true if an error has been raised, false otherwise.</p>
+<h3><a name="xmlXPathSetError" id="xmlXPathSetError"></a>Macro: xmlXPathSetError</h3><pre>#define xmlXPathSetError</pre><p>Raises an error.</p>
+<h3><a name="CHECK_ERROR" id="CHECK_ERROR"></a>Macro: CHECK_ERROR</h3><pre>#define CHECK_ERROR</pre><p>Macro to return from the function if an XPath error was detected.</p>
+<h3><a name="xmlXPathSetTypeError" id="xmlXPathSetTypeError"></a>Macro: xmlXPathSetTypeError</h3><pre>#define xmlXPathSetTypeError</pre><p>Raises an <a href="libxml-xpath.html#XPATH_INVALID_TYPE">XPATH_INVALID_TYPE</a> error.</p>
+<h3><a name="xmlXPathReturnEmptyNodeSet" id="xmlXPathReturnEmptyNodeSet"></a>Macro: xmlXPathReturnEmptyNodeSet</h3><pre>#define xmlXPathReturnEmptyNodeSet</pre><p>Pushes an empty node-set on the context stack.</p>
+<h3><a name="xmlXPathReturnString" id="xmlXPathReturnString"></a>Macro: xmlXPathReturnString</h3><pre>#define xmlXPathReturnString</pre><p>Pushes the string @str on the context stack.</p>
+<h3><a name="xmlXPathReturnTrue" id="xmlXPathReturnTrue"></a>Macro: xmlXPathReturnTrue</h3><pre>#define xmlXPathReturnTrue</pre><p>Pushes true on the context stack.</p>
+<h3><a name="CAST_TO_BOOLEAN" id="CAST_TO_BOOLEAN"></a>Macro: CAST_TO_BOOLEAN</h3><pre>#define CAST_TO_BOOLEAN</pre><p>Macro to try to cast the value on the top of the XPath stack to a boolean.</p>
+<h3><a name="xmlXPathSetArityError" id="xmlXPathSetArityError"></a>Macro: xmlXPathSetArityError</h3><pre>#define xmlXPathSetArityError</pre><p>Raises an <a href="libxml-xpath.html#XPATH_INVALID_ARITY">XPATH_INVALID_ARITY</a> error.</p>
+<h3><a name="xmlXPathReturnBoolean" id="xmlXPathReturnBoolean"></a>Macro: xmlXPathReturnBoolean</h3><pre>#define xmlXPathReturnBoolean</pre><p>Pushes the boolean @val on the context stack.</p>
+<h3><a name="CHECK_TYPE" id="CHECK_TYPE"></a>Macro: CHECK_TYPE</h3><pre>#define CHECK_TYPE</pre><p>Macro to check that the value on top of the XPath stack is of a given type.</p>
+<h3><a name="xmlXPathGetContextNode" id="xmlXPathGetContextNode"></a>Macro: xmlXPathGetContextNode</h3><pre>#define xmlXPathGetContextNode</pre><p>Get the context node of an XPath context. Returns the context node.</p>
+<h3><a name="xmlXPathReturnFalse" id="xmlXPathReturnFalse"></a>Macro: xmlXPathReturnFalse</h3><pre>#define xmlXPathReturnFalse</pre><p>Pushes false on the context stack.</p>
+<h3><a name="xmlXPathReturnNumber" id="xmlXPathReturnNumber"></a>Macro: xmlXPathReturnNumber</h3><pre>#define xmlXPathReturnNumber</pre><p>Pushes the double @val on the context stack.</p>
+<h3><a name="CAST_TO_NUMBER" id="CAST_TO_NUMBER"></a>Macro: CAST_TO_NUMBER</h3><pre>#define CAST_TO_NUMBER</pre><p>Macro to try to cast the value on the top of the XPath stack to a number.</p>
+<h3><a name="CHECK_ERROR0" id="CHECK_ERROR0"></a>Macro: CHECK_ERROR0</h3><pre>#define CHECK_ERROR0</pre><p>Macro to return 0 from the function if an XPath error was detected.</p>
+<h3><a name="xmlXPathReturnExternal" id="xmlXPathReturnExternal"></a>Macro: xmlXPathReturnExternal</h3><pre>#define xmlXPathReturnExternal</pre><p>Pushes user data on the context stack.</p>
+<h3><a name="xmlXPathGetDocument" id="xmlXPathGetDocument"></a>Macro: xmlXPathGetDocument</h3><pre>#define xmlXPathGetDocument</pre><p>Get the document of an XPath context. Returns the context document.</p>
+<h3><a name="xmlXPathGetError" id="xmlXPathGetError"></a>Macro: xmlXPathGetError</h3><pre>#define xmlXPathGetError</pre><p>Get the error code of an XPath context. Returns the context error.</p>
+<h3><a name="XP_ERROR" id="XP_ERROR"></a>Macro: XP_ERROR</h3><pre>#define XP_ERROR</pre><p>Macro to raise an XPath error and return.</p>
+<h3><a name="CHECK_ARITY" id="CHECK_ARITY"></a>Macro: CHECK_ARITY</h3><pre>#define CHECK_ARITY</pre><p>Macro to check that the number of args passed to an XPath function matches.</p>
+<h3><a name="CHECK_TYPE0" id="CHECK_TYPE0"></a>Macro: CHECK_TYPE0</h3><pre>#define CHECK_TYPE0</pre><p>Macro to check that the value on top of the XPath stack is of a given type. Return(0) in case of failure</p>
+<h3><a name="CAST_TO_STRING" id="CAST_TO_STRING"></a>Macro: CAST_TO_STRING</h3><pre>#define CAST_TO_STRING</pre><p>Macro to try to cast the value on the top of the XPath stack to a string.</p>
+<h3><a name="xmlXPathEmptyNodeSet" id="xmlXPathEmptyNodeSet"></a>Macro: xmlXPathEmptyNodeSet</h3><pre>#define xmlXPathEmptyNodeSet</pre><p>Empties a node-set.</p>
+<h3><a name="xmlXPathReturnNodeSet" id="xmlXPathReturnNodeSet"></a>Macro: xmlXPathReturnNodeSet</h3><pre>#define xmlXPathReturnNodeSet</pre><p>Pushes the node-set @ns on the context stack.</p>
+<h3><a name="xmlXPathNodeSetMerge" id="xmlXPathNodeSetMerge"></a>Function: xmlXPathNodeSetMerge</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathNodeSetMerge	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> val1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> val2)<br />
 </pre><p>Merges two nodesets, all nodes from @val2 are added to @val1 if @val1 is NULL, a new set is created and copied from @val2</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val1</tt></i>:</span></td><td>the first NodeSet or NULL</td></tr><tr><td><span class="term"><i><tt>val2</tt></i>:</span></td><td>the second NodeSet</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>@val1 once extended or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlXPathRoundFunction" id="xmlXPathRoundFunction"></a>Function: xmlXPathRoundFunction</h3><pre class="programlisting">void	xmlXPathRoundFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val1</tt></i>:</span></td><td>the first NodeSet or NULL</td></tr><tr><td><span class="term"><i><tt>val2</tt></i>:</span></td><td>the second NodeSet</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>@val1 once extended or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlXPathRoundFunction" id="xmlXPathRoundFunction"></a>Function: xmlXPathRoundFunction</h3><pre class="programlisting">void	xmlXPathRoundFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the round() XPath function number round(number) The round function returns the number that is closest to the argument and that is an integer. If there are two such numbers, then the one that is even is returned.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="CAST_TO_NUMBER" id="CAST_TO_NUMBER"></a>Macro: CAST_TO_NUMBER</h3><pre>#define CAST_TO_NUMBER</pre><p>Macro to try to cast the value on the top of the XPath stack to a number.</p>
-<h3><a name="xmlXPathNumberFunction" id="xmlXPathNumberFunction"></a>Function: xmlXPathNumberFunction</h3><pre class="programlisting">void	xmlXPathNumberFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathSubstringAfterFunction" id="xmlXPathSubstringAfterFunction"></a>Function: xmlXPathSubstringAfterFunction</h3><pre class="programlisting">void	xmlXPathSubstringAfterFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
+</pre><p>Implement the substring-after() XPath function string substring-after(string, string) The substring-after function returns the substring of the first argument string that follows the first occurrence of the second argument string in the first argument string, or the empty stringi if the first argument string does not contain the second argument string. For example, substring-after(&quot;1999/04/01&quot;,&quot;/&quot;) returns 04/01, and substring-after(&quot;1999/04/01&quot;,&quot;19&quot;) returns 99/04/01.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathNumberFunction" id="xmlXPathNumberFunction"></a>Function: xmlXPathNumberFunction</h3><pre class="programlisting">void	xmlXPathNumberFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the number() XPath function number number(object?)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathNotEqualValues" id="xmlXPathNotEqualValues"></a>Function: xmlXPathNotEqualValues</h3><pre class="programlisting">int	xmlXPathNotEqualValues	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><p>Implement the equal operation on XPath objects content: @arg1 == @arg2</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or 1 depending on the results of the test.</td></tr></tbody></table></div><h3><a name="xmlXPathStackIsNodeSet" id="xmlXPathStackIsNodeSet"></a>Macro: xmlXPathStackIsNodeSet</h3><pre>#define xmlXPathStackIsNodeSet</pre><p>Check if the current value on the XPath stack is a node set or an XSLT value tree. Returns true if the current object on the stack is a node-set.</p>
-<h3><a name="xmlXPathNsLookup" id="xmlXPathNsLookup"></a>Function: xmlXPathNsLookup</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathNsLookup	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathPopNodeSet" id="xmlXPathPopNodeSet"></a>Function: xmlXPathPopNodeSet</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathPopNodeSet	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+</pre><p>Pops a node-set from the stack, handling conversion if needed. Check error with #xmlXPathCheckError.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the node-set</td></tr></tbody></table></div><h3><a name="xmlXPathNsLookup" id="xmlXPathNsLookup"></a>Function: xmlXPathNsLookup</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathNsLookup	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix)<br />
 </pre><p>Search in the namespace declaration array of the context for the given namespace name associated to the given prefix</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the namespace prefix value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value or NULL if not found</td></tr></tbody></table></div><h3><a name="xmlXPathCountFunction" id="xmlXPathCountFunction"></a>Function: xmlXPathCountFunction</h3><pre class="programlisting">void	xmlXPathCountFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the namespace prefix value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the value or NULL if not found</td></tr></tbody></table></div><h3><a name="xmlXPathCountFunction" id="xmlXPathCountFunction"></a>Function: xmlXPathCountFunction</h3><pre class="programlisting">void	xmlXPathCountFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the count() XPath function number count(node-set)</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathParseNCName" id="xmlXPathParseNCName"></a>Function: xmlXPathParseNCName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathParseNCName	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
 </pre><p>parse an XML namespace non qualified name. [NS 3] NCName ::= (Letter | '_') (NCNameChar)* [NS 4] NCNameChar ::= Letter | Digit | '.' | '-' | '_' | CombiningChar | Extender</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace name or NULL</td></tr></tbody></table></div><h3><a name="xmlXPathNewNodeSet" id="xmlXPathNewNodeSet"></a>Function: xmlXPathNewNodeSet</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathNewNodeSet	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
 </pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type NodeSet and initialize it with the single Node @val</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the NodePtr value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathReturnNumber" id="xmlXPathReturnNumber"></a>Macro: xmlXPathReturnNumber</h3><pre>#define xmlXPathReturnNumber</pre><p>Pushes the double @val on the context stack.</p>
-<h3><a name="xmlXPathVariableLookupNS" id="xmlXPathVariableLookupNS"></a>Function: xmlXPathVariableLookupNS</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathVariableLookupNS	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the NodePtr value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathVariableLookupNS" id="xmlXPathVariableLookupNS"></a>Function: xmlXPathVariableLookupNS</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathVariableLookupNS	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)<br />
 </pre><p>Search in the Variable array of the context for the given variable value.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the variable name</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the variable namespace URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the a copy of the value or NULL if not found</td></tr></tbody></table></div><h3><a name="xmlXPathNextAncestorOrSelf" id="xmlXPathNextAncestorOrSelf"></a>Function: xmlXPathNextAncestorOrSelf</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextAncestorOrSelf	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the variable name</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the variable namespace URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the a copy of the value or NULL if not found</td></tr></tbody></table></div><h3><a name="xmlXPathNextAncestorOrSelf" id="xmlXPathNextAncestorOrSelf"></a>Function: xmlXPathNextAncestorOrSelf</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextAncestorOrSelf	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
 </pre><p>Traversal function for the &quot;ancestor-or-self&quot; direction he ancestor-or-self axis contains the context node and ancestors of the context node in reverse document order; thus the context node is the first node on the axis, and the context node's parent the second; parent here is defined the same as with the parent axis.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathNewBoolean" id="xmlXPathNewBoolean"></a>Function: xmlXPathNewBoolean</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathNewBoolean	(int val)<br />
 </pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type boolean and of value @val</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the boolean value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetRemove" id="xmlXPathNodeSetRemove"></a>Function: xmlXPathNodeSetRemove</h3><pre class="programlisting">void	xmlXPathNodeSetRemove	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />				 int val)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the boolean value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetRemove" id="xmlXPathNodeSetRemove"></a>Function: xmlXPathNodeSetRemove</h3><pre class="programlisting">void	xmlXPathNodeSetRemove		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />					 int val)<br />
 </pre><p>Removes an entry from an existing NodeSet list.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the initial node set</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the index to remove</td></tr></tbody></table></div><h3><a name="xmlXPathSubValues" id="xmlXPathSubValues"></a>Function: xmlXPathSubValues</h3><pre class="programlisting">void	xmlXPathSubValues	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the initial node set</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the index to remove</td></tr></tbody></table></div><h3><a name="xmlXPathSubValues" id="xmlXPathSubValues"></a>Function: xmlXPathSubValues</h3><pre class="programlisting">void	xmlXPathSubValues		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
 </pre><p>Implement the subtraction operation on XPath objects: The numeric operators convert their operands to numbers as if by calling the number function.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathNewNodeSetList" id="xmlXPathNewNodeSetList"></a>Function: xmlXPathNewNodeSetList</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathNewNodeSetList	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> val)<br />
 </pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type NodeSet and initialize it with the Nodeset @val</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an existing NodeSet</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathPopBoolean" id="xmlXPathPopBoolean"></a>Function: xmlXPathPopBoolean</h3><pre class="programlisting">int	xmlXPathPopBoolean	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an existing NodeSet</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathPopBoolean" id="xmlXPathPopBoolean"></a>Function: xmlXPathPopBoolean</h3><pre class="programlisting">int	xmlXPathPopBoolean		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
 </pre><p>Pops a boolean from the stack, handling conversion if needed. Check error with #xmlXPathCheckError.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the boolean</td></tr></tbody></table></div><h3><a name="xmlXPathNotFunction" id="xmlXPathNotFunction"></a>Function: xmlXPathNotFunction</h3><pre class="programlisting">void	xmlXPathNotFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><p>Implement the not() XPath function boolean not(boolean) The not function returns true if its argument is false, and false otherwise.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathEqualValues" id="xmlXPathEqualValues"></a>Function: xmlXPathEqualValues</h3><pre class="programlisting">int	xmlXPathEqualValues	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the boolean</td></tr></tbody></table></div><h3><a name="xmlXPathEqualValues" id="xmlXPathEqualValues"></a>Function: xmlXPathEqualValues</h3><pre class="programlisting">int	xmlXPathEqualValues		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
 </pre><p>Implement the equal operation on XPath objects content: @arg1 == @arg2</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or 1 depending on the results of the test.</td></tr></tbody></table></div><h3><a name="xmlXPathGetContextNode" id="xmlXPathGetContextNode"></a>Macro: xmlXPathGetContextNode</h3><pre>#define xmlXPathGetContextNode</pre><p>Get the context node of an XPath context. Returns the context node.</p>
-<h3><a name="xmlXPathNewString" id="xmlXPathNewString"></a>Function: xmlXPathNewString</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathNewString	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or 1 depending on the results of the test.</td></tr></tbody></table></div><h3><a name="xmlXPathNewString" id="xmlXPathNewString"></a>Function: xmlXPathNewString</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathNewString	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
 </pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type string and of value @val</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathTrailingSorted" id="xmlXPathTrailingSorted"></a>Function: xmlXPathTrailingSorted</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathTrailingSorted	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathTrailingSorted" id="xmlXPathTrailingSorted"></a>Function: xmlXPathTrailingSorted</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathTrailingSorted	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
 </pre><p>Implements the EXSLT - Sets trailing() function: node-set set:trailing (node-set, node-set)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes1</tt></i>:</span></td><td>a node-set, sorted by document order</td></tr><tr><td><span class="term"><i><tt>nodes2</tt></i>:</span></td><td>a node-set, sorted by document order</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes1 that follow the first node in @nodes2 in document order, @nodes1 if @nodes2 is NULL or empty or an empty node-set if @nodes1 doesn't contain @nodes2</td></tr></tbody></table></div><h3><a name="xmlXPathMultValues" id="xmlXPathMultValues"></a>Function: xmlXPathMultValues</h3><pre class="programlisting">void	xmlXPathMultValues	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes1</tt></i>:</span></td><td>a node-set, sorted by document order</td></tr><tr><td><span class="term"><i><tt>nodes2</tt></i>:</span></td><td>a node-set, sorted by document order</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes1 that follow the first node in @nodes2 in document order, @nodes1 if @nodes2 is NULL or empty or an empty node-set if @nodes1 doesn't contain @nodes2</td></tr></tbody></table></div><h3><a name="xmlXPathMultValues" id="xmlXPathMultValues"></a>Function: xmlXPathMultValues</h3><pre class="programlisting">void	xmlXPathMultValues		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
 </pre><p>Implement the multiply operation on XPath objects: The numeric operators convert their operands to numbers as if by calling the number function.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathModValues" id="xmlXPathModValues"></a>Function: xmlXPathModValues</h3><pre class="programlisting">void	xmlXPathModValues	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathModValues" id="xmlXPathModValues"></a>Function: xmlXPathModValues</h3><pre class="programlisting">void	xmlXPathModValues		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
 </pre><p>Implement the mod operation on XPath objects: @arg1 / @arg2 The numeric operators convert their operands to numbers as if by calling the number function.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathNodeLeadingSorted" id="xmlXPathNodeLeadingSorted"></a>Function: xmlXPathNodeLeadingSorted</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathNodeLeadingSorted	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathNodeLeadingSorted" id="xmlXPathNodeLeadingSorted"></a>Function: xmlXPathNodeLeadingSorted</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathNodeLeadingSorted	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
 </pre><p>Implements the EXSLT - Sets leading() function: node-set set:leading (node-set, node-set)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>a node-set, sorted by document order</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes that precede @node in document order, @nodes if @node is NULL or an empty node-set if @nodes doesn't contain @node</td></tr></tbody></table></div><h3><a name="xmlXPathEvaluatePredicateResult" id="xmlXPathEvaluatePredicateResult"></a>Function: xmlXPathEvaluatePredicateResult</h3><pre class="programlisting">int	xmlXPathEvaluatePredicateResult	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> res)<br />
-</pre><p>Evaluate a predicate result for the current node. A PredicateExpr is evaluated by evaluating the Expr and converting the result to a boolean. If the result is a number, the result will be converted to true if the number is equal to the position of the context node in the context node list (as returned by the position function) and will be converted to false otherwise; if the result is not a number, then the result will be converted as if by a call to the boolean function.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>res</tt></i>:</span></td><td>the Predicate Expression evaluation result</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if predicate is true, 0 otherwise</td></tr></tbody></table></div><h3><a name="CHECK_ARITY" id="CHECK_ARITY"></a>Macro: CHECK_ARITY</h3><pre>#define CHECK_ARITY</pre><p>Macro to check that the number of args passed to an XPath function matches.</p>
-<h3><a name="xmlXPathNextChild" id="xmlXPathNextChild"></a>Function: xmlXPathNextChild</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextChild	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>a node-set, sorted by document order</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes that precede @node in document order, @nodes if @node is NULL or an empty node-set if @nodes doesn't contain @node</td></tr></tbody></table></div><h3><a name="xmlXPathNextChild" id="xmlXPathNextChild"></a>Function: xmlXPathNextChild</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextChild	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
 </pre><p>Traversal function for the &quot;child&quot; direction The child axis contains the children of the context node in document order.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="CAST_TO_STRING" id="CAST_TO_STRING"></a>Macro: CAST_TO_STRING</h3><pre>#define CAST_TO_STRING</pre><p>Macro to try to cast the value on the top of the XPath stack to a string.</p>
-<h3><a name="xmlXPathReturnExternal" id="xmlXPathReturnExternal"></a>Macro: xmlXPathReturnExternal</h3><pre>#define xmlXPathReturnExternal</pre><p>Pushes user data on the context stack.</p>
-<h3><a name="xmlXPathNextFollowingSibling" id="xmlXPathNextFollowingSibling"></a>Function: xmlXPathNextFollowingSibling</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextFollowingSibling	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathNextFollowingSibling" id="xmlXPathNextFollowingSibling"></a>Function: xmlXPathNextFollowingSibling</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextFollowingSibling	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
 </pre><p>Traversal function for the &quot;following-sibling&quot; direction The following-sibling axis contains the following siblings of the context node in document order.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathBooleanFunction" id="xmlXPathBooleanFunction"></a>Function: xmlXPathBooleanFunction</h3><pre class="programlisting">void	xmlXPathBooleanFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><p>Implement the boolean() XPath function boolean boolean(object) he boolean function converts its argument to a boolean as follows: - a number is true if and only if it is neither positive or negative zero nor NaN - a node-set is true if and only if it is non-empty - a string is true if and only if its length is non-zero</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathNewParserContext" id="xmlXPathNewParserContext"></a>Function: xmlXPathNewParserContext</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a>	xmlXPathNewParserContext	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
-</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathParserContext">xmlXPathParserContext</a></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathParserContext">xmlXPathParserContext</a> just allocated.</td></tr></tbody></table></div><h3><a name="xmlXPathNamespaceURIFunction" id="xmlXPathNamespaceURIFunction"></a>Function: xmlXPathNamespaceURIFunction</h3><pre class="programlisting">void	xmlXPathNamespaceURIFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><p>Implement the namespace-uri() XPath function string namespace-uri(node-set?) The namespace-uri function returns a string containing the namespace URI of the expanded name of the node in the argument node-set that is first in document order. If the node-set is empty, the first node has no name, or the expanded name has no namespace URI, an empty string is returned. If the argument is omitted it defaults to the context node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathSubstringAfterFunction" id="xmlXPathSubstringAfterFunction"></a>Function: xmlXPathSubstringAfterFunction</h3><pre class="programlisting">void	xmlXPathSubstringAfterFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><p>Implement the substring-after() XPath function string substring-after(string, string) The substring-after function returns the substring of the first argument string that follows the first occurrence of the second argument string in the first argument string, or the empty stringi if the first argument string does not contain the second argument string. For example, substring-after(&quot;1999/04/01&quot;,&quot;/&quot;) returns 04/01, and substring-after(&quot;1999/04/01&quot;,&quot;19&quot;) returns 99/04/01.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathRoot" id="xmlXPathRoot"></a>Function: xmlXPathRoot</h3><pre class="programlisting">void	xmlXPathRoot	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><p>Initialize the context to the root of the document</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathLangFunction" id="xmlXPathLangFunction"></a>Function: xmlXPathLangFunction</h3><pre class="programlisting">void	xmlXPathLangFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><p>Implement the lang() XPath function boolean lang(string) The lang function returns true or false depending on whether the language of the context node as specified by xml:lang attributes is the same as or is a sublanguage of the language specified by the argument string. The language of the context node is determined by the value of the xml:lang <a href="libxml-SAX.html#attribute">attribute</a> on the context node, or, if the context node has no xml:lang attribute, by the value of the xml:lang <a href="libxml-SAX.html#attribute">attribute</a> on the nearest ancestor of the context node that has an xml:lang attribute. If there is no such attribute, then lang</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="CHECK_TYPE0" id="CHECK_TYPE0"></a>Macro: CHECK_TYPE0</h3><pre>#define CHECK_TYPE0</pre><p>Macro to check that the value on top of the XPath stack is of a given type. Return(0) in case of failure</p>
-<h3><a name="xmlXPathCompareValues" id="xmlXPathCompareValues"></a>Function: xmlXPathCompareValues</h3><pre class="programlisting">int	xmlXPathCompareValues	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int inf, <br />				 int strict)<br />
-</pre><p>Implement the compare operation on XPath objects: @arg1 &lt; @arg2 (1, 1, ... @arg1 &lt;= @arg2 (1, 0, ... @arg1 &gt; @arg2 (0, 1, ... @arg1 &gt;= @arg2 (0, 0, ... When neither object to be compared is a node-set and the operator is &lt;=, &lt;, &gt;=, &gt;, then the objects are compared by converted both objects to numbers and comparing the numbers according to IEEE 754. The &lt; comparison will be true if and only if the first number is less than the second number. The &lt;= comparison will be true if and only if the first number is less than or equal to the second number. The &gt; comparison will be true if and only if the first number is greater than the second number. The &gt;= comparison will be true if and only if the first number is greater than or equal to the second number.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>inf</tt></i>:</span></td><td>less than (1) or greater than (0)</td></tr><tr><td><span class="term"><i><tt>strict</tt></i>:</span></td><td>is the comparison strict</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the comparison succeeded, 0 if it failed</td></tr></tbody></table></div><h3><a name="xmlXPathPopNodeSet" id="xmlXPathPopNodeSet"></a>Function: xmlXPathPopNodeSet</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathPopNodeSet	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><p>Pops a node-set from the stack, handling conversion if needed. Check error with #xmlXPathCheckError.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the node-set</td></tr></tbody></table></div><h3><a name="xmlXPathCheckError" id="xmlXPathCheckError"></a>Macro: xmlXPathCheckError</h3><pre>#define xmlXPathCheckError</pre><p>Check if an XPath error was raised. Returns true if an error has been raised, false otherwise.</p>
-<h3><a name="xmlXPathConcatFunction" id="xmlXPathConcatFunction"></a>Function: xmlXPathConcatFunction</h3><pre class="programlisting">void	xmlXPathConcatFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><p>Implement the concat() XPath function string concat(string, string, string*) The concat function returns the concatenation of its arguments.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetAddNs" id="xmlXPathNodeSetAddNs"></a>Function: xmlXPathNodeSetAddNs</h3><pre class="programlisting">void	xmlXPathNodeSetAddNs	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />				 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns)<br />
-</pre><p>add a new namespace node to an existing NodeSet</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the initial node set</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the hosting node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>a the namespace node</td></tr></tbody></table></div><h3><a name="xmlXPathRegisterFunc" id="xmlXPathRegisterFunc"></a>Function: xmlXPathRegisterFunc</h3><pre class="programlisting">int	xmlXPathRegisterFunc	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a> f)<br />
-</pre><p>Register a new function. If @f is NULL it unregisters the function</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the function name</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the function implementation or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetContains" id="xmlXPathNodeSetContains"></a>Function: xmlXPathNodeSetContains</h3><pre class="programlisting">int	xmlXPathNodeSetContains	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
-</pre><p>checks whether @cur contains @val</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node-set</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true (1) if @cur contains @val, false (0) otherwise</td></tr></tbody></table></div><h3><a name="xmlXPathRegisterFuncNS" id="xmlXPathRegisterFuncNS"></a>Function: xmlXPathRegisterFuncNS</h3><pre class="programlisting">int	xmlXPathRegisterFuncNS	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri, <br />				 <a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a> f)<br />
-</pre><p>Register a new function. If @f is NULL it unregisters the function</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the function name</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the function namespace URI</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the function implementation or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlXPatherror" id="xmlXPatherror"></a>Function: xmlXPatherror</h3><pre class="programlisting">void	xmlXPatherror	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 const char * file, <br />				 int line, <br />				 int no)<br />
-</pre><p>Formats an error message.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>the file name</td></tr><tr><td><span class="term"><i><tt>line</tt></i>:</span></td><td>the line number</td></tr><tr><td><span class="term"><i><tt>no</tt></i>:</span></td><td>the error number</td></tr></tbody></table></div><h3><a name="xmlXPathNextAncestor" id="xmlXPathNextAncestor"></a>Function: xmlXPathNextAncestor</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextAncestor	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><p>Traversal function for the &quot;ancestor&quot; direction the ancestor axis contains the ancestors of the context node; the ancestors of the context node consist of the parent of context node and the parent's parent and so on; the nodes are ordered in reverse document order; thus the parent is the first node on the axis, and the parent's parent is the second node on the axis</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathNextFollowing" id="xmlXPathNextFollowing"></a>Function: xmlXPathNextFollowing</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextFollowing	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><p>Traversal function for the &quot;following&quot; direction The following axis contains all nodes in the same document as the context node that are after the context node in document order, excluding any descendants and excluding <a href="libxml-SAX.html#attribute">attribute</a> nodes and namespace nodes; the nodes are ordered in document order</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathRegisterVariableNS" id="xmlXPathRegisterVariableNS"></a>Function: xmlXPathRegisterVariableNS</h3><pre class="programlisting">int	xmlXPathRegisterVariableNS	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> value)<br />
-</pre><p>Register a new variable value. If @value is NULL it unregisters the variable</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the variable name</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the variable namespace URI</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the variable value or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error</td></tr></tbody></table></div><h3><a name="CAST_TO_BOOLEAN" id="CAST_TO_BOOLEAN"></a>Macro: CAST_TO_BOOLEAN</h3><pre>#define CAST_TO_BOOLEAN</pre><p>Macro to try to cast the value on the top of the XPath stack to a boolean.</p>
-<h3><a name="xmlXPathIsNodeType" id="xmlXPathIsNodeType"></a>Function: xmlXPathIsNodeType</h3><pre class="programlisting">int	xmlXPathIsNodeType	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Is the name given a NodeType one. [38] NodeType ::= 'comment' | 'text' | 'processing-instruction' | 'node'</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>a name string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlXPathPopString" id="xmlXPathPopString"></a>Function: xmlXPathPopString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathPopString	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathPopString" id="xmlXPathPopString"></a>Function: xmlXPathPopString</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathPopString	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
 </pre><p>Pops a string from the stack, handling conversion if needed. Check error with #xmlXPathCheckError.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the string</td></tr></tbody></table></div><h3><a name="xmlXPathLocalNameFunction" id="xmlXPathLocalNameFunction"></a>Function: xmlXPathLocalNameFunction</h3><pre class="programlisting">void	xmlXPathLocalNameFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the string</td></tr></tbody></table></div><h3><a name="xmlXPathNewParserContext" id="xmlXPathNewParserContext"></a>Function: xmlXPathNewParserContext</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a>	xmlXPathNewParserContext	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />							 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
+</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathParserContext">xmlXPathParserContext</a></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPath expression</td></tr><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathParserContext">xmlXPathParserContext</a> just allocated.</td></tr></tbody></table></div><h3><a name="xmlXPathNamespaceURIFunction" id="xmlXPathNamespaceURIFunction"></a>Function: xmlXPathNamespaceURIFunction</h3><pre class="programlisting">void	xmlXPathNamespaceURIFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
+</pre><p>Implement the namespace-uri() XPath function string namespace-uri(node-set?) The namespace-uri function returns a string containing the namespace URI of the expanded name of the node in the argument node-set that is first in document order. If the node-set is empty, the first node has no name, or the expanded name has no namespace URI, an empty string is returned. If the argument is omitted it defaults to the context node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathWrapNodeSet" id="xmlXPathWrapNodeSet"></a>Function: xmlXPathWrapNodeSet</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathWrapNodeSet	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> val)<br />
+</pre><p>Wrap the Nodeset @val in a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a></p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the NodePtr value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathRoot" id="xmlXPathRoot"></a>Function: xmlXPathRoot</h3><pre class="programlisting">void	xmlXPathRoot			(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+</pre><p>Initialize the context to the root of the document</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathLangFunction" id="xmlXPathLangFunction"></a>Function: xmlXPathLangFunction</h3><pre class="programlisting">void	xmlXPathLangFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
+</pre><p>Implement the lang() XPath function boolean lang(string) The lang function returns true or false depending on whether the language of the context node as specified by xml:lang attributes is the same as or is a sublanguage of the language specified by the argument string. The language of the context node is determined by the value of the xml:lang <a href="libxml-SAX.html#attribute">attribute</a> on the context node, or, if the context node has no xml:lang attribute, by the value of the xml:lang <a href="libxml-SAX.html#attribute">attribute</a> on the nearest ancestor of the context node that has an xml:lang attribute. If there is no such attribute, then lang</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathRegisterFuncNS" id="xmlXPathRegisterFuncNS"></a>Function: xmlXPathRegisterFuncNS</h3><pre class="programlisting">int	xmlXPathRegisterFuncNS		(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri, <br />					 <a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a> f)<br />
+</pre><p>Register a new function. If @f is NULL it unregisters the function</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the function name</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the function namespace URI</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the function implementation or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlXPathCompareValues" id="xmlXPathCompareValues"></a>Function: xmlXPathCompareValues</h3><pre class="programlisting">int	xmlXPathCompareValues		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int inf, <br />					 int strict)<br />
+</pre><p>Implement the compare operation on XPath objects: @arg1 &lt; @arg2 (1, 1, ... @arg1 &lt;= @arg2 (1, 0, ... @arg1 &gt; @arg2 (0, 1, ... @arg1 &gt;= @arg2 (0, 0, ... When neither object to be compared is a node-set and the operator is &lt;=, &lt;, &gt;=, &gt;, then the objects are compared by converted both objects to numbers and comparing the numbers according to IEEE 754. The &lt; comparison will be true if and only if the first number is less than the second number. The &lt;= comparison will be true if and only if the first number is less than or equal to the second number. The &gt; comparison will be true if and only if the first number is greater than the second number. The &gt;= comparison will be true if and only if the first number is greater than or equal to the second number.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>inf</tt></i>:</span></td><td>less than (1) or greater than (0)</td></tr><tr><td><span class="term"><i><tt>strict</tt></i>:</span></td><td>is the comparison strict</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if the comparison succeeded, 0 if it failed</td></tr></tbody></table></div><h3><a name="xmlXPathIsNodeType" id="xmlXPathIsNodeType"></a>Function: xmlXPathIsNodeType</h3><pre class="programlisting">int	xmlXPathIsNodeType		(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Is the name given a NodeType one. [38] NodeType ::= 'comment' | 'text' | 'processing-instruction' | 'node'</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>a name string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetAddNs" id="xmlXPathNodeSetAddNs"></a>Function: xmlXPathNodeSetAddNs</h3><pre class="programlisting">void	xmlXPathNodeSetAddNs		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node, <br />					 <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns)<br />
+</pre><p>add a new namespace node to an existing NodeSet</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the initial node set</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>the hosting node</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>a the namespace node</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetContains" id="xmlXPathNodeSetContains"></a>Function: xmlXPathNodeSetContains</h3><pre class="programlisting">int	xmlXPathNodeSetContains		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
+</pre><p>checks whether @cur contains @val</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the node-set</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true (1) if @cur contains @val, false (0) otherwise</td></tr></tbody></table></div><h3><a name="xmlXPatherror" id="xmlXPatherror"></a>Function: xmlXPatherror</h3><pre class="programlisting">void	xmlXPatherror			(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 const char * file, <br />					 int line, <br />					 int no)<br />
+</pre><p>Formats an error message.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>file</tt></i>:</span></td><td>the file name</td></tr><tr><td><span class="term"><i><tt>line</tt></i>:</span></td><td>the line number</td></tr><tr><td><span class="term"><i><tt>no</tt></i>:</span></td><td>the error number</td></tr></tbody></table></div><h3><a name="xmlXPathNextAncestor" id="xmlXPathNextAncestor"></a>Function: xmlXPathNextAncestor</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextAncestor	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+</pre><p>Traversal function for the &quot;ancestor&quot; direction the ancestor axis contains the ancestors of the context node; the ancestors of the context node consist of the parent of context node and the parent's parent and so on; the nodes are ordered in reverse document order; thus the parent is the first node on the axis, and the parent's parent is the second node on the axis</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathNextFollowing" id="xmlXPathNextFollowing"></a>Function: xmlXPathNextFollowing</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextFollowing	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+</pre><p>Traversal function for the &quot;following&quot; direction The following axis contains all nodes in the same document as the context node that are after the context node in document order, excluding any descendants and excluding <a href="libxml-SAX.html#attribute">attribute</a> nodes and namespace nodes; the nodes are ordered in document order</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathRegisterVariableNS" id="xmlXPathRegisterVariableNS"></a>Function: xmlXPathRegisterVariableNS</h3><pre class="programlisting">int	xmlXPathRegisterVariableNS	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> value)<br />
+</pre><p>Register a new variable value. If @value is NULL it unregisters the variable</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the variable name</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the variable namespace URI</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the variable value or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlXPathRegisteredNsCleanup" id="xmlXPathRegisteredNsCleanup"></a>Function: xmlXPathRegisteredNsCleanup</h3><pre class="programlisting">void	xmlXPathRegisteredNsCleanup	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
+</pre><p>Cleanup the XPath context data associated to registered variables</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr></tbody></table></div><h3><a name="xmlXPathConcatFunction" id="xmlXPathConcatFunction"></a>Function: xmlXPathConcatFunction</h3><pre class="programlisting">void	xmlXPathConcatFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
+</pre><p>Implement the concat() XPath function string concat(string, string, string*) The concat function returns the concatenation of its arguments.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathLocalNameFunction" id="xmlXPathLocalNameFunction"></a>Function: xmlXPathLocalNameFunction</h3><pre class="programlisting">void	xmlXPathLocalNameFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the local-name() XPath function string local-name(node-set?) The local-name function returns a string containing the local part of the name of the node in the argument node-set that is first in document order. If the node-set is empty or the first node has no name, an empty string is returned. If the argument is omitted it defaults to the context node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathAddValues" id="xmlXPathAddValues"></a>Function: xmlXPathAddValues</h3><pre class="programlisting">void	xmlXPathAddValues	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathAddValues" id="xmlXPathAddValues"></a>Function: xmlXPathAddValues</h3><pre class="programlisting">void	xmlXPathAddValues		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
 </pre><p>Implement the add operation on XPath objects: The numeric operators convert their operands to numbers as if by calling the number function.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathDifference" id="xmlXPathDifference"></a>Function: xmlXPathDifference</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathDifference	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathDifference" id="xmlXPathDifference"></a>Function: xmlXPathDifference</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathDifference	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
 </pre><p>Implements the EXSLT - Sets difference() function: node-set set:difference (node-set, node-set)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes1</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>nodes2</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the difference between the two node sets, or nodes1 if nodes2 is empty</td></tr></tbody></table></div><h3><a name="xmlXPathRegisterVariable" id="xmlXPathRegisterVariable"></a>Function: xmlXPathRegisterVariable</h3><pre class="programlisting">int	xmlXPathRegisterVariable	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes1</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>nodes2</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the difference between the two node sets, or nodes1 if nodes2 is empty</td></tr></tbody></table></div><h3><a name="xmlXPathRegisterVariable" id="xmlXPathRegisterVariable"></a>Function: xmlXPathRegisterVariable</h3><pre class="programlisting">int	xmlXPathRegisterVariable	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> value)<br />
 </pre><p>Register a new variable value. If @value is NULL it unregisters the variable</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the variable name</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the variable value or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error</td></tr></tbody></table></div><h3><a name="valuePop" id="valuePop"></a>Function: valuePop</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	valuePop	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
 </pre><p>Pops the top XPath object from the value stack</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath evaluation context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the XPath object just removed</td></tr></tbody></table></div><h3><a name="CHECK_ERROR0" id="CHECK_ERROR0"></a>Macro: CHECK_ERROR0</h3><pre>#define CHECK_ERROR0</pre><p>Macro to return 0 from the function if an XPath error was detected.</p>
-<h3><a name="xmlXPathCeilingFunction" id="xmlXPathCeilingFunction"></a>Function: xmlXPathCeilingFunction</h3><pre class="programlisting">void	xmlXPathCeilingFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath evaluation context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the XPath object just removed</td></tr></tbody></table></div><h3><a name="xmlXPathCeilingFunction" id="xmlXPathCeilingFunction"></a>Function: xmlXPathCeilingFunction</h3><pre class="programlisting">void	xmlXPathCeilingFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the ceiling() XPath function number ceiling(number) The ceiling function returns the smallest (closest to negative infinity) number that is not less than the argument and that is an integer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathIntersection" id="xmlXPathIntersection"></a>Function: xmlXPathIntersection</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathIntersection	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathIntersection" id="xmlXPathIntersection"></a>Function: xmlXPathIntersection</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathIntersection	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
 </pre><p>Implements the EXSLT - Sets intersection() function: node-set set:intersection (node-set, node-set)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes1</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>nodes2</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a node set comprising the nodes that are within both the node sets passed as arguments</td></tr></tbody></table></div><h3><a name="xmlXPathLeadingSorted" id="xmlXPathLeadingSorted"></a>Function: xmlXPathLeadingSorted</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathLeadingSorted	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes1</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>nodes2</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a node set comprising the nodes that are within both the node sets passed as arguments</td></tr></tbody></table></div><h3><a name="xmlXPathLeadingSorted" id="xmlXPathLeadingSorted"></a>Function: xmlXPathLeadingSorted</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathLeadingSorted	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
 </pre><p>Implements the EXSLT - Sets leading() function: node-set set:leading (node-set, node-set)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes1</tt></i>:</span></td><td>a node-set, sorted by document order</td></tr><tr><td><span class="term"><i><tt>nodes2</tt></i>:</span></td><td>a node-set, sorted by document order</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes1 that precede the first node in @nodes2 in document order, @nodes1 if @nodes2 is NULL or empty or an empty node-set if @nodes1 doesn't contain @nodes2</td></tr></tbody></table></div><h3><a name="xmlXPathReturnFalse" id="xmlXPathReturnFalse"></a>Macro: xmlXPathReturnFalse</h3><pre>#define xmlXPathReturnFalse</pre><p>Pushes false on the context stack.</p>
-<h3><a name="xmlXPathContainsFunction" id="xmlXPathContainsFunction"></a>Function: xmlXPathContainsFunction</h3><pre class="programlisting">void	xmlXPathContainsFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes1</tt></i>:</span></td><td>a node-set, sorted by document order</td></tr><tr><td><span class="term"><i><tt>nodes2</tt></i>:</span></td><td>a node-set, sorted by document order</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes1 that precede the first node in @nodes2 in document order, @nodes1 if @nodes2 is NULL or empty or an empty node-set if @nodes1 doesn't contain @nodes2</td></tr></tbody></table></div><h3><a name="xmlXPathContainsFunction" id="xmlXPathContainsFunction"></a>Function: xmlXPathContainsFunction</h3><pre class="programlisting">void	xmlXPathContainsFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the contains() XPath function boolean contains(string, string) The contains function returns true if the first argument string contains the second argument string, and otherwise returns false.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathNextPrecedingSibling" id="xmlXPathNextPrecedingSibling"></a>Function: xmlXPathNextPrecedingSibling</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextPrecedingSibling	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathNextPrecedingSibling" id="xmlXPathNextPrecedingSibling"></a>Function: xmlXPathNextPrecedingSibling</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextPrecedingSibling	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
 </pre><p>Traversal function for the &quot;preceding-sibling&quot; direction The preceding-sibling axis contains the preceding siblings of the context node in reverse document order; the first preceding sibling is first on the axis; the sibling preceding that node is the second on the axis and so on.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetSort" id="xmlXPathNodeSetSort"></a>Function: xmlXPathNodeSetSort</h3><pre class="programlisting">void	xmlXPathNodeSetSort	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> set)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetSort" id="xmlXPathNodeSetSort"></a>Function: xmlXPathNodeSetSort</h3><pre class="programlisting">void	xmlXPathNodeSetSort		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> set)<br />
 </pre><p>Sort the node set in document order</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>set</tt></i>:</span></td><td>the node set</td></tr></tbody></table></div><h3><a name="xmlXPathStartsWithFunction" id="xmlXPathStartsWithFunction"></a>Function: xmlXPathStartsWithFunction</h3><pre class="programlisting">void	xmlXPathStartsWithFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>set</tt></i>:</span></td><td>the node set</td></tr></tbody></table></div><h3><a name="xmlXPathStartsWithFunction" id="xmlXPathStartsWithFunction"></a>Function: xmlXPathStartsWithFunction</h3><pre class="programlisting">void	xmlXPathStartsWithFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the starts-with() XPath function boolean starts-with(string, string) The starts-with function returns true if the first argument string starts with the second argument string, and otherwise returns false.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathPopExternal" id="xmlXPathPopExternal"></a>Function: xmlXPathPopExternal</h3><pre class="programlisting">void *	xmlXPathPopExternal	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathBooleanFunction" id="xmlXPathBooleanFunction"></a>Function: xmlXPathBooleanFunction</h3><pre class="programlisting">void	xmlXPathBooleanFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
+</pre><p>Implement the boolean() XPath function boolean boolean(object) he boolean function converts its argument to a boolean as follows: - a number is true if and only if it is neither positive or negative zero nor NaN - a node-set is true if and only if it is non-empty - a string is true if and only if its length is non-zero</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathPopExternal" id="xmlXPathPopExternal"></a>Function: xmlXPathPopExternal</h3><pre class="programlisting">void *	xmlXPathPopExternal		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
 </pre><p>Pops an external object from the stack, handling conversion if needed. Check error with #xmlXPathCheckError.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the object</td></tr></tbody></table></div><h3><a name="xmlXPathNormalizeFunction" id="xmlXPathNormalizeFunction"></a>Function: xmlXPathNormalizeFunction</h3><pre class="programlisting">void	xmlXPathNormalizeFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the object</td></tr></tbody></table></div><h3><a name="xmlXPathNormalizeFunction" id="xmlXPathNormalizeFunction"></a>Function: xmlXPathNormalizeFunction</h3><pre class="programlisting">void	xmlXPathNormalizeFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the normalize-space() XPath function string normalize-space(string?) The normalize-space function returns the argument string with white space normalized by stripping leading and trailing whitespace and replacing sequences of whitespace <a href="libxml-SAX.html#characters">characters</a> by a single space. Whitespace <a href="libxml-SAX.html#characters">characters</a> are the same allowed by the S production in XML. If the argument is omitted, it defaults to the context node converted to a string, in other words the value of the context node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathNodeLeading" id="xmlXPathNodeLeading"></a>Function: xmlXPathNodeLeading</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathNodeLeading	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathNodeLeading" id="xmlXPathNodeLeading"></a>Function: xmlXPathNodeLeading</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathNodeLeading	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
 </pre><p>Implements the EXSLT - Sets leading() function: node-set set:leading (node-set, node-set) @nodes is sorted by document order, then #exslSetsNodeLeadingSorted is called.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes that precede @node in document order, @nodes if @node is NULL or an empty node-set if @nodes doesn't contain @node</td></tr></tbody></table></div><h3><a name="xmlXPathSumFunction" id="xmlXPathSumFunction"></a>Function: xmlXPathSumFunction</h3><pre class="programlisting">void	xmlXPathSumFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes that precede @node in document order, @nodes if @node is NULL or an empty node-set if @nodes doesn't contain @node</td></tr></tbody></table></div><h3><a name="xmlXPathSumFunction" id="xmlXPathSumFunction"></a>Function: xmlXPathSumFunction</h3><pre class="programlisting">void	xmlXPathSumFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the sum() XPath function number sum(node-set) The sum function returns the sum of the values of the nodes in the argument node-set.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathRegisterVariableLookup" id="xmlXPathRegisterVariableLookup"></a>Function: xmlXPathRegisterVariableLookup</h3><pre class="programlisting">void	xmlXPathRegisterVariableLookup	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 <a href="libxml-xpathInternals.html#xmlXPathVariableLookupFunc">xmlXPathVariableLookupFunc</a> f, <br />				 void * data)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathRegisterVariableLookup" id="xmlXPathRegisterVariableLookup"></a>Function: xmlXPathRegisterVariableLookup</h3><pre class="programlisting">void	xmlXPathRegisterVariableLookup	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 <a href="libxml-xpathInternals.html#xmlXPathVariableLookupFunc">xmlXPathVariableLookupFunc</a> f, <br />					 void * data)<br />
 </pre><p>register an external mechanism to do variable lookup</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the lookup function</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the lookup data</td></tr></tbody></table></div>
-      Prototype for callbacks used to plug function lookup in the XPath engine.
-      
-      
-      
-      
-    <h3><a name="xmlXPathNodeSetDel" id="xmlXPathNodeSetDel"></a>Function: xmlXPathNodeSetDel</h3><pre class="programlisting">void	xmlXPathNodeSetDel	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the lookup function</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>the lookup data</td></tr></tbody></table></div><h3><a name="xmlXPathNotEqualValues" id="xmlXPathNotEqualValues"></a>Function: xmlXPathNotEqualValues</h3><pre class="programlisting">int	xmlXPathNotEqualValues		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+</pre><p>Implement the equal operation on XPath objects content: @arg1 == @arg2</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or 1 depending on the results of the test.</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetDel" id="xmlXPathNodeSetDel"></a>Function: xmlXPathNodeSetDel</h3><pre class="programlisting">void	xmlXPathNodeSetDel		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
 </pre><p>Removes an <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> from an existing NodeSet</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the initial node set</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a></td></tr></tbody></table></div><h3><a name="xmlXPathStackIsExternal" id="xmlXPathStackIsExternal"></a>Macro: xmlXPathStackIsExternal</h3><pre>#define xmlXPathStackIsExternal</pre><p>Checks if the current value on the XPath stack is an external object. Returns true if the current object on the stack is an external object.</p>
-<h3><a name="xmlXPathReturnEmptyString" id="xmlXPathReturnEmptyString"></a>Macro: xmlXPathReturnEmptyString</h3><pre>#define xmlXPathReturnEmptyString</pre><p>Pushes an empty string on the stack.</p>
-<h3><a name="XP_ERROR0" id="XP_ERROR0"></a>Macro: XP_ERROR0</h3><pre>#define XP_ERROR0</pre><p>Macro to raise an XPath error and return 0.</p>
-<h3><a name="xmlXPathNodeTrailingSorted" id="xmlXPathNodeTrailingSorted"></a>Function: xmlXPathNodeTrailingSorted</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathNodeTrailingSorted	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the initial node set</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a></td></tr></tbody></table></div><h3><a name="xmlXPathWrapString" id="xmlXPathWrapString"></a>Function: xmlXPathWrapString</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathWrapString	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
+</pre><p>Wraps the @val string into an XPath object.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathEvaluatePredicateResult" id="xmlXPathEvaluatePredicateResult"></a>Function: xmlXPathEvaluatePredicateResult</h3><pre class="programlisting">int	xmlXPathEvaluatePredicateResult	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> res)<br />
+</pre><p>Evaluate a predicate result for the current node. A PredicateExpr is evaluated by evaluating the Expr and converting the result to a boolean. If the result is a number, the result will be converted to true if the number is equal to the position of the context node in the context node list (as returned by the position function) and will be converted to false otherwise; if the result is not a number, then the result will be converted as if by a call to the boolean function.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>res</tt></i>:</span></td><td>the Predicate Expression evaluation result</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if predicate is true, 0 otherwise</td></tr></tbody></table></div><h3><a name="xmlXPathNodeTrailingSorted" id="xmlXPathNodeTrailingSorted"></a>Function: xmlXPathNodeTrailingSorted</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathNodeTrailingSorted	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
 </pre><p>Implements the EXSLT - Sets trailing() function: node-set set:trailing (node-set, node-set)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>a node-set, sorted by document order</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes that follow @node in document order, @nodes if @node is NULL or an empty node-set if @nodes doesn't contain @node</td></tr></tbody></table></div><h3><a name="xmlXPathErr" id="xmlXPathErr"></a>Function: xmlXPathErr</h3><pre class="programlisting">void	xmlXPathErr	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int error)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>a node-set, sorted by document order</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes that follow @node in document order, @nodes if @node is NULL or an empty node-set if @nodes doesn't contain @node</td></tr></tbody></table></div><h3><a name="xmlXPathErr" id="xmlXPathErr"></a>Function: xmlXPathErr</h3><pre class="programlisting">void	xmlXPathErr			(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int error)<br />
 </pre><p>Handle a Relax NG Parsing error</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a XPath parser context</td></tr><tr><td><span class="term"><i><tt>error</tt></i>:</span></td><td>the error code</td></tr></tbody></table></div><h3><a name="xmlXPathNextPreceding" id="xmlXPathNextPreceding"></a>Function: xmlXPathNextPreceding</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextPreceding	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>a XPath parser context</td></tr><tr><td><span class="term"><i><tt>error</tt></i>:</span></td><td>the error code</td></tr></tbody></table></div><h3><a name="xmlXPathNextPreceding" id="xmlXPathNextPreceding"></a>Function: xmlXPathNextPreceding</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextPreceding	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
 </pre><p>Traversal function for the &quot;preceding&quot; direction the preceding axis contains all nodes in the same document as the context node that are before the context node in document order, excluding any ancestors and excluding <a href="libxml-SAX.html#attribute">attribute</a> nodes and namespace nodes; the nodes are ordered in reverse document order</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathFunctionLookupNS" id="xmlXPathFunctionLookupNS"></a>Function: xmlXPathFunctionLookupNS</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a>	xmlXPathFunctionLookupNS	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathFunctionLookupNS" id="xmlXPathFunctionLookupNS"></a>Function: xmlXPathFunctionLookupNS</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a>	xmlXPathFunctionLookupNS	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)<br />
 </pre><p>Search in the Function array of the context for the given function.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the function name</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the function namespace URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a> or NULL if not found</td></tr></tbody></table></div><h3><a name="xmlXPathWrapNodeSet" id="xmlXPathWrapNodeSet"></a>Function: xmlXPathWrapNodeSet</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathWrapNodeSet	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> val)<br />
-</pre><p>Wrap the Nodeset @val in a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the NodePtr value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathSetTypeError" id="xmlXPathSetTypeError"></a>Macro: xmlXPathSetTypeError</h3><pre>#define xmlXPathSetTypeError</pre><p>Raises an <a href="libxml-xpath.html#XPATH_INVALID_TYPE">XPATH_INVALID_TYPE</a> error.</p>
-<h3><a name="xmlXPathReturnTrue" id="xmlXPathReturnTrue"></a>Macro: xmlXPathReturnTrue</h3><pre>#define xmlXPathReturnTrue</pre><p>Pushes true on the context stack.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the function name</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the function namespace URI</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a> or NULL if not found</td></tr></tbody></table></div><h3><a name="xmlXPathFuncLookupFunc" id="xmlXPathFuncLookupFunc"></a>Function type: xmlXPathFuncLookupFunc</h3><pre class="programlisting">Function type: xmlXPathFuncLookupFunc
+<a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a>	xmlXPathFuncLookupFunc	(void * ctxt, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)
+</pre><p>Prototype for callbacks used to plug function lookup in the XPath engine.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>name of the function</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the namespace name hosting this function</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the XPath function or NULL if not found.</td></tr></tbody></table></div><br />
 <h3><a name="xmlXPathRegisteredFuncsCleanup" id="xmlXPathRegisteredFuncsCleanup"></a>Function: xmlXPathRegisteredFuncsCleanup</h3><pre class="programlisting">void	xmlXPathRegisteredFuncsCleanup	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
 </pre><p>Cleanup the XPath context data associated to registered functions</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr></tbody></table></div><h3><a name="xmlXPathRegisterAllFunctions" id="xmlXPathRegisterAllFunctions"></a>Function: xmlXPathRegisterAllFunctions</h3><pre class="programlisting">void	xmlXPathRegisterAllFunctions	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
 </pre><p>Registers all default XPath functions in this context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr></tbody></table></div><h3><a name="xmlXPathReturnEmptyNodeSet" id="xmlXPathReturnEmptyNodeSet"></a>Macro: xmlXPathReturnEmptyNodeSet</h3><pre>#define xmlXPathReturnEmptyNodeSet</pre><p>Pushes an empty node-set on the context stack.</p>
-<h3><a name="xmlXPathFunctionLookup" id="xmlXPathFunctionLookup"></a>Function: xmlXPathFunctionLookup</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a>	xmlXPathFunctionLookup	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Search in the Function array of the context for the given function.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the function name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a> or NULL if not found</td></tr></tbody></table></div><h3><a name="xmlXPathGetDocument" id="xmlXPathGetDocument"></a>Macro: xmlXPathGetDocument</h3><pre>#define xmlXPathGetDocument</pre><p>Get the document of an XPath context. Returns the context document.</p>
-<h3><a name="xmlXPathReturnBoolean" id="xmlXPathReturnBoolean"></a>Macro: xmlXPathReturnBoolean</h3><pre>#define xmlXPathReturnBoolean</pre><p>Pushes the boolean @val on the context stack.</p>
-<h3><a name="xmlXPathPositionFunction" id="xmlXPathPositionFunction"></a>Function: xmlXPathPositionFunction</h3><pre class="programlisting">void	xmlXPathPositionFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr></tbody></table></div><h3><a name="xmlXPathNewCString" id="xmlXPathNewCString"></a>Function: xmlXPathNewCString</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathNewCString	(const char * val)<br />
+</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type string and of value @val</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the char * value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathRegisterFunc" id="xmlXPathRegisterFunc"></a>Function: xmlXPathRegisterFunc</h3><pre class="programlisting">int	xmlXPathRegisterFunc		(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />					 <a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a> f)<br />
+</pre><p>Register a new function. If @f is NULL it unregisters the function</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the function name</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the function implementation or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlXPathPositionFunction" id="xmlXPathPositionFunction"></a>Function: xmlXPathPositionFunction</h3><pre class="programlisting">void	xmlXPathPositionFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the position() XPath function number position() The position function returns the position of the context node in the context node list. The first position is 1, and so the last position will be equal to last().</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div>
-      Prototype for callbacks used to plug variable lookup in the XPath engine.
-      
-      
-      
-      
-    <h3><a name="xmlXPathSubstringBeforeFunction" id="xmlXPathSubstringBeforeFunction"></a>Function: xmlXPathSubstringBeforeFunction</h3><pre class="programlisting">void	xmlXPathSubstringBeforeFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathVariableLookupFunc" id="xmlXPathVariableLookupFunc"></a>Function type: xmlXPathVariableLookupFunc</h3><pre class="programlisting">Function type: xmlXPathVariableLookupFunc
+<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathVariableLookupFunc	(void * ctxt, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name, <br />							 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)
+</pre><p>Prototype for callbacks used to plug variable lookup in the XPath engine.</p><div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>name of the variable</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the namespace name hosting this variable</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the XPath object value or NULL if not found.</td></tr></tbody></table></div><br />
+<h3><a name="xmlXPathSubstringBeforeFunction" id="xmlXPathSubstringBeforeFunction"></a>Function: xmlXPathSubstringBeforeFunction</h3><pre class="programlisting">void	xmlXPathSubstringBeforeFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the substring-before() XPath function string substring-before(string, string) The substring-before function returns the substring of the first argument string that precedes the first occurrence of the second argument string in the first argument string, or the empty string if the first argument string does not contain the second argument string. For example, substring-before(&quot;1999/04/01&quot;,&quot;/&quot;) returns 1999.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathRegisteredVariablesCleanup" id="xmlXPathRegisteredVariablesCleanup"></a>Function: xmlXPathRegisteredVariablesCleanup</h3><pre class="programlisting">void	xmlXPathRegisteredVariablesCleanup	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
 </pre><p>Cleanup the XPath context data associated to registered variables</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr></tbody></table></div><h3><a name="xmlXPathNextDescendant" id="xmlXPathNextDescendant"></a>Function: xmlXPathNextDescendant</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextDescendant	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr></tbody></table></div><h3><a name="xmlXPathNextDescendant" id="xmlXPathNextDescendant"></a>Function: xmlXPathNextDescendant</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextDescendant	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
 </pre><p>Traversal function for the &quot;descendant&quot; direction the descendant axis contains the descendants of the context node in document order; a descendant is a child or a child of a child and so on.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathNextNamespace" id="xmlXPathNextNamespace"></a>Function: xmlXPathNextNamespace</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextNamespace	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathNextNamespace" id="xmlXPathNextNamespace"></a>Function: xmlXPathNextNamespace</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextNamespace	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
 </pre><p>Traversal function for the &quot;namespace&quot; direction the namespace axis contains the namespace nodes of the context node; the order of nodes on this axis is implementation-defined; the axis will be empty unless the context node is an element We keep the XML namespace node at the end of the list.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current <a href="libxml-SAX.html#attribute">attribute</a> in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathWrapCString" id="xmlXPathWrapCString"></a>Function: xmlXPathWrapCString</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathWrapCString	(char * val)<br />
 </pre><p>Wraps a string into an XPath object.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the char * value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathNewFloat" id="xmlXPathNewFloat"></a>Function: xmlXPathNewFloat</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathNewFloat	(double val)<br />
 </pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type double and of value @val</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the double value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathRegisterNs" id="xmlXPathRegisterNs"></a>Function: xmlXPathRegisterNs</h3><pre class="programlisting">int	xmlXPathRegisterNs	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the double value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathRegisterNs" id="xmlXPathRegisterNs"></a>Function: xmlXPathRegisterNs</h3><pre class="programlisting">int	xmlXPathRegisterNs		(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * prefix, <br />					 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * ns_uri)<br />
 </pre><p>Register a new namespace. If @ns_uri is NULL it unregisters the namespace</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i>:</span></td><td>the namespace prefix</td></tr><tr><td><span class="term"><i><tt>ns_uri</tt></i>:</span></td><td>the namespace name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success, -1 in case of error</td></tr></tbody></table></div><h3><a name="xmlXPathWrapExternal" id="xmlXPathWrapExternal"></a>Function: xmlXPathWrapExternal</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathWrapExternal	(void * val)<br />
 </pre><p>Wraps the @val data into an XPath object.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the user data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathTranslateFunction" id="xmlXPathTranslateFunction"></a>Function: xmlXPathTranslateFunction</h3><pre class="programlisting">void	xmlXPathTranslateFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><p>Implement the translate() XPath function string translate(string, string, string) The translate function returns the first argument string with occurrences of <a href="libxml-SAX.html#characters">characters</a> in the second argument string replaced by the character at the corresponding position in the third argument string. For example, translate(&quot;bar&quot;,&quot;abc&quot;,&quot;ABC&quot;) returns the string BAr. If there is a character in the second argument string with no character at a corresponding position in the third argument string (because the second argument string is longer than the third argument string), then occurrences of that character in the first argument string are removed. For example, translate(&quot;--aaa--&quot;,&quot;abc-&quot;,&quot;ABC&quot;)</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathNextParent" id="xmlXPathNextParent"></a>Function: xmlXPathNextParent</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextParent	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the user data</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathNextParent" id="xmlXPathNextParent"></a>Function: xmlXPathNextParent</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextParent	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
 </pre><p>Traversal function for the &quot;parent&quot; direction The parent axis contains the parent of the context node, if there is one.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetFreeNs" id="xmlXPathNodeSetFreeNs"></a>Function: xmlXPathNodeSetFreeNs</h3><pre class="programlisting">void	xmlXPathNodeSetFreeNs	(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetFreeNs" id="xmlXPathNodeSetFreeNs"></a>Function: xmlXPathNodeSetFreeNs</h3><pre class="programlisting">void	xmlXPathNodeSetFreeNs		(<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns)<br />
 </pre><p>Namespace node in libxml don't match the XPath semantic. In a node set the namespace nodes are duplicated and the next pointer is set to the parent node in the XPath semantic. Check if such a node need to be freed</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the XPath namespace node found in a nodeset.</td></tr></tbody></table></div><h3><a name="xmlXPathTrailing" id="xmlXPathTrailing"></a>Function: xmlXPathTrailing</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathTrailing	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the XPath namespace node found in a nodeset.</td></tr></tbody></table></div><h3><a name="xmlXPathTrailing" id="xmlXPathTrailing"></a>Function: xmlXPathTrailing</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathTrailing	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
 </pre><p>Implements the EXSLT - Sets trailing() function: node-set set:trailing (node-set, node-set) @nodes1 and @nodes2 are sorted by document order, then #xmlXPathTrailingSorted is called.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes1</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>nodes2</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes1 that follow the first node in @nodes2 in document order, @nodes1 if @nodes2 is NULL or empty or an empty node-set if @nodes1 doesn't contain @nodes2</td></tr></tbody></table></div><h3><a name="xmlXPathHasSameNodes" id="xmlXPathHasSameNodes"></a>Function: xmlXPathHasSameNodes</h3><pre class="programlisting">int	xmlXPathHasSameNodes	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes1</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>nodes2</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes1 that follow the first node in @nodes2 in document order, @nodes1 if @nodes2 is NULL or empty or an empty node-set if @nodes1 doesn't contain @nodes2</td></tr></tbody></table></div><h3><a name="xmlXPathHasSameNodes" id="xmlXPathHasSameNodes"></a>Function: xmlXPathHasSameNodes</h3><pre class="programlisting">int	xmlXPathHasSameNodes		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
 </pre><p>Implements the EXSLT - Sets has-same-nodes function: boolean set:has-same-node(node-set, node-set)</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes1</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>nodes2</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>true (1) if @nodes1 shares any node with @nodes2, false (0) otherwise</td></tr></tbody></table></div><h3><a name="xmlXPathDistinctSorted" id="xmlXPathDistinctSorted"></a>Function: xmlXPathDistinctSorted</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathDistinctSorted	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes)<br />
 </pre><p>Implements the EXSLT - Sets distinct() function: node-set set:distinct (node-set)</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>a node-set, sorted by document order</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a subset of the nodes contained in @nodes, or @nodes if it is empty</td></tr></tbody></table></div><h3><a name="xmlXPathFreeParserContext" id="xmlXPathFreeParserContext"></a>Function: xmlXPathFreeParserContext</h3><pre class="programlisting">void	xmlXPathFreeParserContext	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
 </pre><p>Free up an <a href="libxml-xpath.html#xmlXPathParserContext">xmlXPathParserContext</a></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the context to free</td></tr></tbody></table></div><h3><a name="xmlXPathNodeTrailing" id="xmlXPathNodeTrailing"></a>Function: xmlXPathNodeTrailing</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathNodeTrailing	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the context to free</td></tr></tbody></table></div><h3><a name="xmlXPathNodeTrailing" id="xmlXPathNodeTrailing"></a>Function: xmlXPathNodeTrailing</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathNodeTrailing	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node)<br />
 </pre><p>Implements the EXSLT - Sets trailing() function: node-set set:trailing (node-set, node-set) @nodes is sorted by document order, then #xmlXPathNodeTrailingSorted is called.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes that follow @node in document order, @nodes if @node is NULL or an empty node-set if @nodes doesn't contain @node</td></tr></tbody></table></div><h3><a name="xmlXPathNewCString" id="xmlXPathNewCString"></a>Function: xmlXPathNewCString</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathNewCString	(const char * val)<br />
-</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type string and of value @val</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the char * value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="valuePush" id="valuePush"></a>Function: valuePush</h3><pre class="programlisting">int	valuePush	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> value)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>node</tt></i>:</span></td><td>a node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes that follow @node in document order, @nodes if @node is NULL or an empty node-set if @nodes doesn't contain @node</td></tr></tbody></table></div><h3><a name="xmlXPathFunctionLookup" id="xmlXPathFunctionLookup"></a>Function: xmlXPathFunctionLookup</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a>	xmlXPathFunctionLookup	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Search in the Function array of the context for the given function.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the function name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathFunction">xmlXPathFunction</a> or NULL if not found</td></tr></tbody></table></div><h3><a name="valuePush" id="valuePush"></a>Function: valuePush</h3><pre class="programlisting">int	valuePush			(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> value)<br />
 </pre><p>Pushes a new XPath object on top of the value stack</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath evaluation context</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the XPath object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of items on the value stack</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetAdd" id="xmlXPathNodeSetAdd"></a>Function: xmlXPathNodeSetAdd</h3><pre class="programlisting">void	xmlXPathNodeSetAdd	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath evaluation context</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the XPath object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of items on the value stack</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetAdd" id="xmlXPathNodeSetAdd"></a>Function: xmlXPathNodeSetAdd</h3><pre class="programlisting">void	xmlXPathNodeSetAdd		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
 </pre><p>add a new <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> to an existing NodeSet</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the initial node set</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a new <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a></td></tr></tbody></table></div><h3><a name="xmlXPathSubstringFunction" id="xmlXPathSubstringFunction"></a>Function: xmlXPathSubstringFunction</h3><pre class="programlisting">void	xmlXPathSubstringFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the initial node set</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a new <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a></td></tr></tbody></table></div><h3><a name="xmlXPathSubstringFunction" id="xmlXPathSubstringFunction"></a>Function: xmlXPathSubstringFunction</h3><pre class="programlisting">void	xmlXPathSubstringFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the substring() XPath function string substring(string, number, number?) The substring function returns the substring of the first argument starting at the position specified in the second argument with length specified in the third argument. For example, substring(&quot;12345&quot;,2,3) returns &quot;234&quot;. If the third argument is not specified, it returns the substring starting at the position specified in the second argument and continuing to the end of the string. For example, substring(&quot;12345&quot;,2) returns &quot;2345&quot;. More precisely, each character in the string (see [3.6 Strings]) is considered to have a numeric position: the position of the first character is 1, the position of the second character is 2 and so on. The returned substring contains those <a href="libxml-SAX.html#characters">characters</a> for which the position of the character is greater than or equal to the second argument and, if the third argument is specified, less than the sum of the second and third arguments; the comparisons and addition used for the above follow the standard IEEE 754 rules. Thus: - substring(&quot;12345&quot;, 1.5, 2.6) returns &quot;234&quot; - substring(&quot;12345&quot;, 0, 3) returns &quot;12&quot; - substring(&quot;12345&quot;, 0 div 0, 3) returns &quot;&quot; - substring(&quot;12345&quot;, 1, 0 div 0) returns &quot;&quot; - substring(&quot;12345&quot;, -42, 1 div 0) returns &quot;12345&quot; - substring(&quot;12345&quot;, -1 div 0, 1 div 0) returns &quot;&quot;</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathStringFunction" id="xmlXPathStringFunction"></a>Function: xmlXPathStringFunction</h3><pre class="programlisting">void	xmlXPathStringFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathStringFunction" id="xmlXPathStringFunction"></a>Function: xmlXPathStringFunction</h3><pre class="programlisting">void	xmlXPathStringFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the string() XPath function string string(object?) he string function converts an object to a string as follows: - A node-set is converted to a string by returning the value of the node in the node-set that is first in document order. If the node-set is empty, an empty string is returned. - A number is converted to a string as follows + NaN is converted to the string NaN + positive zero is converted to the string 0 + negative zero is converted to the string 0 + positive infinity is converted to the string Infinity + negative infinity is converted to the string -Infinity + if the number is an integer, the number is represented in decimal form as a Number with no decimal point and no leading zeros, preceded by a minus sign (-) if the number is negative + otherwise, the number is represented in decimal form as a Number including a decimal point with at least one digit before the decimal point and at least one digit after the decimal point, preceded by a minus sign (-) if the number is negative; there must be no leading zeros before the decimal point apart possibly from the one required digit immediately before the decimal point; beyond the one required digit after the decimal point there must be as many, but only as many, more digits as are needed to uniquely distinguish the number from all other IEEE 754 numeric values. - The boolean false value is converted to the string false. The boolean true value is converted to the string true. If the argument is omitted, it defaults to a node-set with the context node as its only member.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathFloorFunction" id="xmlXPathFloorFunction"></a>Function: xmlXPathFloorFunction</h3><pre class="programlisting">void	xmlXPathFloorFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathFloorFunction" id="xmlXPathFloorFunction"></a>Function: xmlXPathFloorFunction</h3><pre class="programlisting">void	xmlXPathFloorFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the floor() XPath function number floor(number) The floor function returns the largest (closest to positive infinity) number that is not greater than the argument and that is an integer.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetAddUnique" id="xmlXPathNodeSetAddUnique"></a>Function: xmlXPathNodeSetAddUnique</h3><pre class="programlisting">void	xmlXPathNodeSetAddUnique	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathNodeSetAddUnique" id="xmlXPathNodeSetAddUnique"></a>Function: xmlXPathNodeSetAddUnique</h3><pre class="programlisting">void	xmlXPathNodeSetAddUnique	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> cur, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
 </pre><p>add a new <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> to an existing NodeSet, optimized version when we are sure the node is not already in the set.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the initial node set</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a new <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a></td></tr></tbody></table></div><h3><a name="xmlXPathNewValueTree" id="xmlXPathNewValueTree"></a>Function: xmlXPathNewValueTree</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathNewValueTree	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> val)<br />
 </pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type Value Tree (XSLT) and initialize it with the tree root @val</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the NodePtr value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathVariableLookup" id="xmlXPathVariableLookup"></a>Function: xmlXPathVariableLookup</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathVariableLookup	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
-</pre><p>Search in the Variable array of the context for the given variable value.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the variable name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a copy of the value or NULL if not found</td></tr></tbody></table></div><h3><a name="xmlXPathDistinct" id="xmlXPathDistinct"></a>Function: xmlXPathDistinct</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathDistinct	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the NodePtr value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathDistinct" id="xmlXPathDistinct"></a>Function: xmlXPathDistinct</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathDistinct	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes)<br />
 </pre><p>Implements the EXSLT - Sets distinct() function: node-set set:distinct (node-set) @nodes is sorted by document order, then #exslSetsDistinctSorted is called with the sorted node-set</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a subset of the nodes contained in @nodes, or @nodes if it is empty</td></tr></tbody></table></div><h3><a name="xmlXPathIdFunction" id="xmlXPathIdFunction"></a>Function: xmlXPathIdFunction</h3><pre class="programlisting">void	xmlXPathIdFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a subset of the nodes contained in @nodes, or @nodes if it is empty</td></tr></tbody></table></div><h3><a name="xmlXPathIdFunction" id="xmlXPathIdFunction"></a>Function: xmlXPathIdFunction</h3><pre class="programlisting">void	xmlXPathIdFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the id() XPath function node-set id(object) The id function selects elements by their unique ID (see [5.2.1 Unique IDs]). When the argument to id is of type node-set, then the result is the union of the result of applying id to the string value of each of the nodes in the argument node-set. When the argument to id is of any other type, the argument is converted to a string as if by a call to the string function; the string is split into a whitespace-separated list of tokens (whitespace is any sequence of <a href="libxml-SAX.html#characters">characters</a> matching the production S); the result is a node-set containing the elements in the same document as the context node that have a unique ID equal to any of the tokens in the list.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathSetError" id="xmlXPathSetError"></a>Macro: xmlXPathSetError</h3><pre>#define xmlXPathSetError</pre><p>Raises an error.</p>
-<h3><a name="CHECK_ERROR" id="CHECK_ERROR"></a>Macro: CHECK_ERROR</h3><pre>#define CHECK_ERROR</pre><p>Macro to return from the function if an XPath error was detected.</p>
-<h3><a name="CHECK_TYPE" id="CHECK_TYPE"></a>Macro: CHECK_TYPE</h3><pre>#define CHECK_TYPE</pre><p>Macro to check that the value on top of the XPath stack is of a given type.</p>
-<h3><a name="xmlXPathNextDescendantOrSelf" id="xmlXPathNextDescendantOrSelf"></a>Function: xmlXPathNextDescendantOrSelf</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextDescendantOrSelf	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><p>Traversal function for the &quot;descendant-or-self&quot; direction the descendant-or-self axis contains the context node and the descendants of the context node in document order; thus the context node is the first node on the axis, and the first child of the context node is the second node on the axis</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathRegisterFuncLookup" id="xmlXPathRegisterFuncLookup"></a>Function: xmlXPathRegisterFuncLookup</h3><pre class="programlisting">void	xmlXPathRegisterFuncLookup	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />				 <a href="libxml-xpathInternals.html#xmlXPathFuncLookupFunc">xmlXPathFuncLookupFunc</a> f, <br />				 void * funcCtxt)<br />
-</pre><p>Registers an external mechanism to do function lookup.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the lookup function</td></tr><tr><td><span class="term"><i><tt>funcCtxt</tt></i>:</span></td><td>the lookup data</td></tr></tbody></table></div><h3><a name="xmlXPathNextAttribute" id="xmlXPathNextAttribute"></a>Function: xmlXPathNextAttribute</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextAttribute	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><p>Traversal function for the &quot;attribute&quot; direction TODO: support DTD inherited default attributes</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current <a href="libxml-SAX.html#attribute">attribute</a> in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathDivValues" id="xmlXPathDivValues"></a>Function: xmlXPathDivValues</h3><pre class="programlisting">void	xmlXPathDivValues	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><p>Implement the div operation on XPath objects @arg1 / @arg2: The numeric operators convert their operands to numbers as if by calling the number function.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathStringLengthFunction" id="xmlXPathStringLengthFunction"></a>Function: xmlXPathStringLengthFunction</h3><pre class="programlisting">void	xmlXPathStringLengthFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><p>Implement the string-length() XPath function number string-length(string?) The string-length returns the number of <a href="libxml-SAX.html#characters">characters</a> in the string (see [3.6 Strings]). If the argument is omitted, it defaults to the context node converted to a string, in other words the value of the context node.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathLastFunction" id="xmlXPathLastFunction"></a>Function: xmlXPathLastFunction</h3><pre class="programlisting">void	xmlXPathLastFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><p>Implement the last() XPath function number last() The last function returns the number of nodes in the context node list.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathSetArityError" id="xmlXPathSetArityError"></a>Macro: xmlXPathSetArityError</h3><pre>#define xmlXPathSetArityError</pre><p>Raises an <a href="libxml-xpath.html#XPATH_INVALID_ARITY">XPATH_INVALID_ARITY</a> error.</p>
-<h3><a name="xmlXPathNextSelf" id="xmlXPathNextSelf"></a>Function: xmlXPathNextSelf</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextSelf	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
-</pre><p>Traversal function for the &quot;self&quot; direction The self axis contains just the context node itself</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathDebugDumpCompExpr" id="xmlXPathDebugDumpCompExpr"></a>Function: xmlXPathDebugDumpCompExpr</h3><pre class="programlisting">void	xmlXPathDebugDumpCompExpr	(FILE * output, <br />				 <a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp, <br />				 int depth)<br />
-</pre><p>Dumps the tree of the compiled XPath expression.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the precompiled XPath expression</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>the indentation level.</td></tr></tbody></table></div><h3><a name="xmlXPathEvalExpr" id="xmlXPathEvalExpr"></a>Function: xmlXPathEvalExpr</h3><pre class="programlisting">void	xmlXPathEvalExpr	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><p>Parse and evaluate an XPath expression in the given context, then push the result on the context stack</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathFalseFunction" id="xmlXPathFalseFunction"></a>Function: xmlXPathFalseFunction</h3><pre class="programlisting">void	xmlXPathFalseFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><p>Implement the false() XPath function boolean false()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathDebugDumpObject" id="xmlXPathDebugDumpObject"></a>Function: xmlXPathDebugDumpObject</h3><pre class="programlisting">void	xmlXPathDebugDumpObject	(FILE * output, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> cur, <br />				 int depth)<br />
-</pre><p>Dump the content of the object for debugging purposes</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * to dump the output</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the object to inspect</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>indentation level</td></tr></tbody></table></div><h3><a name="xmlXPathValueFlipSign" id="xmlXPathValueFlipSign"></a>Function: xmlXPathValueFlipSign</h3><pre class="programlisting">void	xmlXPathValueFlipSign	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><p>Implement the unary - operation on an XPath object The numeric operators convert their operands to numbers as if by calling the number function.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathStringEvalNumber" id="xmlXPathStringEvalNumber"></a>Function: xmlXPathStringEvalNumber</h3><pre class="programlisting">double	xmlXPathStringEvalNumber	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathVariableLookup" id="xmlXPathVariableLookup"></a>Function: xmlXPathVariableLookup</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathVariableLookup	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />						 const <a href="libxml-tree.html#xmlChar">xmlChar</a> * name)<br />
+</pre><p>Search in the Variable array of the context for the given variable value.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the variable name</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a copy of the value or NULL if not found</td></tr></tbody></table></div><h3><a name="xmlXPathNotFunction" id="xmlXPathNotFunction"></a>Function: xmlXPathNotFunction</h3><pre class="programlisting">void	xmlXPathNotFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
+</pre><p>Implement the not() XPath function boolean not(boolean) The not function returns true if its argument is false, and false otherwise.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathStringEvalNumber" id="xmlXPathStringEvalNumber"></a>Function: xmlXPathStringEvalNumber</h3><pre class="programlisting">double	xmlXPathStringEvalNumber	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str)<br />
 </pre><p>[30a] Float ::= Number ('e' Digits?)? [30] Number ::= Digits ('.' Digits?)? | '.' Digits [31] Digits ::= [0-9]+ Compile a Number in the string In complement of the Number expression, this function also handles negative values : '-' Number.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>A string to scan</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the double value.</td></tr></tbody></table></div><h3><a name="xmlXPathWrapString" id="xmlXPathWrapString"></a>Function: xmlXPathWrapString</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPathWrapString	(<a href="libxml-tree.html#xmlChar">xmlChar</a> * val)<br />
-</pre><p>Wraps the @val string into an XPath object.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the <a href="libxml-tree.html#xmlChar">xmlChar</a> * value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPathEmptyNodeSet" id="xmlXPathEmptyNodeSet"></a>Macro: xmlXPathEmptyNodeSet</h3><pre>#define xmlXPathEmptyNodeSet</pre><p>Empties a node-set.</p>
-<h3><a name="xmlXPathReturnString" id="xmlXPathReturnString"></a>Macro: xmlXPathReturnString</h3><pre>#define xmlXPathReturnString</pre><p>Pushes the string @str on the context stack.</p>
-<h3><a name="xmlXPathGetError" id="xmlXPathGetError"></a>Macro: xmlXPathGetError</h3><pre>#define xmlXPathGetError</pre><p>Get the error code of an XPath context. Returns the context error.</p>
-<h3><a name="XP_ERROR" id="XP_ERROR"></a>Macro: XP_ERROR</h3><pre>#define XP_ERROR</pre><p>Macro to raise an XPath error and return.</p>
-<h3><a name="xmlXPathLeading" id="xmlXPathLeading"></a>Function: xmlXPathLeading</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathLeading	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />				 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>A string to scan</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the double value.</td></tr></tbody></table></div><h3><a name="xmlXPathNextDescendantOrSelf" id="xmlXPathNextDescendantOrSelf"></a>Function: xmlXPathNextDescendantOrSelf</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextDescendantOrSelf	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+</pre><p>Traversal function for the &quot;descendant-or-self&quot; direction the descendant-or-self axis contains the context node and the descendants of the context node in document order; thus the context node is the first node on the axis, and the first child of the context node is the second node on the axis</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathRegisterFuncLookup" id="xmlXPathRegisterFuncLookup"></a>Function: xmlXPathRegisterFuncLookup</h3><pre class="programlisting">void	xmlXPathRegisterFuncLookup	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt, <br />					 <a href="libxml-xpathInternals.html#xmlXPathFuncLookupFunc">xmlXPathFuncLookupFunc</a> f, <br />					 void * funcCtxt)<br />
+</pre><p>Registers an external mechanism to do function lookup.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the lookup function</td></tr><tr><td><span class="term"><i><tt>funcCtxt</tt></i>:</span></td><td>the lookup data</td></tr></tbody></table></div><h3><a name="xmlXPathNextAttribute" id="xmlXPathNextAttribute"></a>Function: xmlXPathNextAttribute</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextAttribute	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+</pre><p>Traversal function for the &quot;attribute&quot; direction TODO: support DTD inherited default attributes</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current <a href="libxml-SAX.html#attribute">attribute</a> in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathDivValues" id="xmlXPathDivValues"></a>Function: xmlXPathDivValues</h3><pre class="programlisting">void	xmlXPathDivValues		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+</pre><p>Implement the div operation on XPath objects @arg1 / @arg2: The numeric operators convert their operands to numbers as if by calling the number function.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathStringLengthFunction" id="xmlXPathStringLengthFunction"></a>Function: xmlXPathStringLengthFunction</h3><pre class="programlisting">void	xmlXPathStringLengthFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
+</pre><p>Implement the string-length() XPath function number string-length(string?) The string-length returns the number of <a href="libxml-SAX.html#characters">characters</a> in the string (see [3.6 Strings]). If the argument is omitted, it defaults to the context node converted to a string, in other words the value of the context node.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathLastFunction" id="xmlXPathLastFunction"></a>Function: xmlXPathLastFunction</h3><pre class="programlisting">void	xmlXPathLastFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
+</pre><p>Implement the last() XPath function number last() The last function returns the number of nodes in the context node list.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathNextSelf" id="xmlXPathNextSelf"></a>Function: xmlXPathNextSelf</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPathNextSelf	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br />
+</pre><p>Traversal function for the &quot;self&quot; direction The self axis contains just the context node itself</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node in the traversal</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the next element following that axis</td></tr></tbody></table></div><h3><a name="xmlXPathDebugDumpCompExpr" id="xmlXPathDebugDumpCompExpr"></a>Function: xmlXPathDebugDumpCompExpr</h3><pre class="programlisting">void	xmlXPathDebugDumpCompExpr	(FILE * output, <br />					 <a href="libxml-xpath.html#xmlXPathCompExprPtr">xmlXPathCompExprPtr</a> comp, <br />					 int depth)<br />
+</pre><p>Dumps the tree of the compiled XPath expression.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * for the output</td></tr><tr><td><span class="term"><i><tt>comp</tt></i>:</span></td><td>the precompiled XPath expression</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>the indentation level.</td></tr></tbody></table></div><h3><a name="xmlXPathEvalExpr" id="xmlXPathEvalExpr"></a>Function: xmlXPathEvalExpr</h3><pre class="programlisting">void	xmlXPathEvalExpr		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+</pre><p>Parse and evaluate an XPath expression in the given context, then push the result on the context stack</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathFalseFunction" id="xmlXPathFalseFunction"></a>Function: xmlXPathFalseFunction</h3><pre class="programlisting">void	xmlXPathFalseFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
+</pre><p>Implement the false() XPath function boolean false()</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathDebugDumpObject" id="xmlXPathDebugDumpObject"></a>Function: xmlXPathDebugDumpObject</h3><pre class="programlisting">void	xmlXPathDebugDumpObject		(FILE * output, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> cur, <br />					 int depth)<br />
+</pre><p>Dump the content of the object for debugging purposes</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>output</tt></i>:</span></td><td>the FILE * to dump the output</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the object to inspect</td></tr><tr><td><span class="term"><i><tt>depth</tt></i>:</span></td><td>indentation level</td></tr></tbody></table></div><h3><a name="xmlXPathValueFlipSign" id="xmlXPathValueFlipSign"></a>Function: xmlXPathValueFlipSign</h3><pre class="programlisting">void	xmlXPathValueFlipSign		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+</pre><p>Implement the unary - operation on an XPath object The numeric operators convert their operands to numbers as if by calling the number function.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr></tbody></table></div><h3><a name="xmlXPathTranslateFunction" id="xmlXPathTranslateFunction"></a>Function: xmlXPathTranslateFunction</h3><pre class="programlisting">void	xmlXPathTranslateFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
+</pre><p>Implement the translate() XPath function string translate(string, string, string) The translate function returns the first argument string with occurrences of <a href="libxml-SAX.html#characters">characters</a> in the second argument string replaced by the character at the corresponding position in the third argument string. For example, translate(&quot;bar&quot;,&quot;abc&quot;,&quot;ABC&quot;) returns the string BAr. If there is a character in the second argument string with no character at a corresponding position in the third argument string (because the second argument string is longer than the third argument string), then occurrences of that character in the first argument string are removed. For example, translate(&quot;--aaa--&quot;,&quot;abc-&quot;,&quot;ABC&quot;)</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathLeading" id="xmlXPathLeading"></a>Function: xmlXPathLeading</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a>	xmlXPathLeading		(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes1, <br />					 <a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> nodes2)<br />
 </pre><p>Implements the EXSLT - Sets leading() function: node-set set:leading (node-set, node-set) @nodes1 and @nodes2 are sorted by document order, then #exslSetsLeadingSorted is called.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes1</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>nodes2</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes1 that precede the first node in @nodes2 in document order, @nodes1 if @nodes2 is NULL or empty or an empty node-set if @nodes1 doesn't contain @nodes2</td></tr></tbody></table></div><h3><a name="xmlXPathRegisteredNsCleanup" id="xmlXPathRegisteredNsCleanup"></a>Function: xmlXPathRegisteredNsCleanup</h3><pre class="programlisting">void	xmlXPathRegisteredNsCleanup	(<a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctxt)<br />
-</pre><p>Cleanup the XPath context data associated to registered variables</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath context</td></tr></tbody></table></div><h3><a name="xmlXPathParseName" id="xmlXPathParseName"></a>Function: xmlXPathParseName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathParseName	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>nodes1</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>nodes2</tt></i>:</span></td><td>a node-set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the nodes in @nodes1 that precede the first node in @nodes2 in document order, @nodes1 if @nodes2 is NULL or empty or an empty node-set if @nodes1 doesn't contain @nodes2</td></tr></tbody></table></div><h3><a name="xmlXPathParseName" id="xmlXPathParseName"></a>Function: xmlXPathParseName</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> *	xmlXPathParseName	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
 </pre><p>parse an XML name [4] NameChar ::= Letter | Digit | '.' | '-' | '_' | ':' | CombiningChar | Extender [5] Name ::= (Letter | '_' | ':') (NameChar)*</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace name or NULL</td></tr></tbody></table></div><h3><a name="xmlXPathReturnNodeSet" id="xmlXPathReturnNodeSet"></a>Macro: xmlXPathReturnNodeSet</h3><pre>#define xmlXPathReturnNodeSet</pre><p>Pushes the node-set @ns on the context stack.</p>
-<h3><a name="xmlXPathTrueFunction" id="xmlXPathTrueFunction"></a>Function: xmlXPathTrueFunction</h3><pre class="programlisting">void	xmlXPathTrueFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the namespace name or NULL</td></tr></tbody></table></div><h3><a name="xmlXPathTrueFunction" id="xmlXPathTrueFunction"></a>Function: xmlXPathTrueFunction</h3><pre class="programlisting">void	xmlXPathTrueFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the true() XPath function boolean true()</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathPopNumber" id="xmlXPathPopNumber"></a>Function: xmlXPathPopNumber</h3><pre class="programlisting">double	xmlXPathPopNumber	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPath Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of arguments</td></tr></tbody></table></div><h3><a name="xmlXPathPopNumber" id="xmlXPathPopNumber"></a>Function: xmlXPathPopNumber</h3><pre class="programlisting">double	xmlXPathPopNumber		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
 </pre><p>Pops a number from the stack, handling conversion if needed. Check error with #xmlXPathCheckError.</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>an XPath parser context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/html/libxml-xpointer.html b/doc/html/libxml-xpointer.html
index 43d3bfb..19e2440 100644
--- a/doc/html/libxml-xpointer.html
+++ b/doc/html/libxml-xpointer.html
@@ -10,78 +10,74 @@
 </style><style type="text/css">
       div.deprecated pre.programlisting {border-style: double;border-color:red}
       pre.programlisting {border-style: double}
-    </style><title>Module xpointer from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xpointer from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xpathInternals.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xpathInternals.html">xpathInternals</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th></tr></table><p>API to handle XML Pointers Base implementation was made accordingly to W3C Candidate Recommendation 7 June 2000</p><h2>Table of Contents</h2><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewRangePoints">xmlXPtrNewRangePoints</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> start, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end)<br />
+    </style><title>Module xpointer from libxml2</title></head><body bgcolor="#8b7765" text="#000000" link="#000000" vlink="#000000"><table border="0" width="100%" cellpadding="5" cellspacing="0" align="center"><tr><td width="120"><a href="http://swpat.ffii.org/"><img src="../epatents.png" alt="Action against software patents" /></a></td><td width="180"><a href="http://www.gnome.org/"><img src="../gnome2.png" alt="Gnome2 Logo" /></a><a href="http://www.w3.org/Status"><img src="../w3c.png" alt="W3C Logo" /></a><a href="http://www.redhat.com/"><img src="../redhat.gif" alt="Red Hat Logo" /></a><div align="left"><a href="http://xmlsoft.org/"><img src="../Libxml2-Logo-180x168.gif" alt="Made with Libxml2 Logo" /></a></div></td><td><table border="0" width="90%" cellpadding="2" cellspacing="0" align="center" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3" bgcolor="#fffacd"><tr><td align="center"><h1></h1><h2>Module xpointer from libxml2</h2></td></tr></table></td></tr></table></td></tr></table><table border="0" cellpadding="4" cellspacing="0" width="100%" align="center"><tr><td bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="2" width="100%"><tr><td valign="top" width="200" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Menu</b></center></td></tr><tr><td bgcolor="#fffacd"><form action="../search.php" enctype="application/x-www-form-urlencoded" method="get"><input name="query" type="text" size="20" value="" /><input name="submit" type="submit" value="Search ..." /></form><ul><li><a style="font-weight:bold" href="../index.html">Main Menu</a></li><li><a style="font-weight:bold" href="../docs.html">Developer Menu</a></li><li><a style="font-weight:bold" href="../examples/index.html">Code Examples</a></li><li><a style="font-weight:bold" href="index.html">API Menu</a></li><li><a href="libxml-parser.html">Parser API</a></li><li><a href="libxml-tree.html">Tree API</a></li><li><a href="libxml-xmlreader.html">Reader API</a></li><li><a href="../guidelines.html">XML Guidelines</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>API Indexes</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="../APIchunk0.html">Alphabetic</a></li><li><a href="../APIconstructors.html">Constructors</a></li><li><a href="../APIfunctions.html">Functions/Types</a></li><li><a href="../APIfiles.html">Modules</a></li><li><a href="../APIsymbols.html">Symbols</a></li></ul></td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td colspan="1" bgcolor="#eecfa1" align="center"><center><b>Related links</b></center></td></tr><tr><td bgcolor="#fffacd"><ul><li><a href="http://mail.gnome.org/archives/xml/">Mail archive</a></li><li><a href="http://xmlsoft.org/XSLT/">XSLT libxslt</a></li><li><a href="http://phd.cs.unibo.it/gdome2/">DOM gdome2</a></li><li><a href="http://www.aleksey.com/xmlsec/">XML-DSig xmlsec</a></li><li><a href="ftp://xmlsoft.org/">FTP</a></li><li><a href="http://www.zlatkovic.com/projects/libxml/">Windows binaries</a></li><li><a href="http://garypennington.net/libxml2/">Solaris binaries</a></li><li><a href="http://www.zveno.com/open_source/libxml2xslt.html">MacOsX binaries</a></li><li><a href="http://sourceforge.net/projects/libxml2-pas/">Pascal bindings</a></li><li><a href="http://bugzilla.gnome.org/buglist.cgi?product=libxml2">Bug Tracker</a></li></ul></td></tr></table></td></tr></table></td><td valign="top" bgcolor="#8b7765"><table border="0" cellspacing="0" cellpadding="1" width="100%"><tr><td><table border="0" cellspacing="0" cellpadding="1" width="100%" bgcolor="#000000"><tr><td><table border="0" cellpadding="3" cellspacing="1" width="100%"><tr><td bgcolor="#fffacd"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xpathInternals.html"><img src="left.png" width="24" height="24" border="0" alt="Prev" /></a></td><th align="left"><a href="libxml-xpathInternals.html">xpathInternals</a></th><td><a accesskey="u" href="index.html"><img src="up.png" width="24" height="24" border="0" alt="Up" /></a></td><th align="left"><a href="index.html">API documentation</a></th><td><a accesskey="h" href="../index.html"><img src="home.png" width="24" height="24" border="0" alt="Home" /></a></td><th align="center"><a href="../index.html">The XML C parser and toolkit of Gnome</a></th></tr></table><p>API to handle XML Pointers Base implementation was made accordingly to W3C Candidate Recommendation 7 June 2000</p><h2>Table of Contents</h2><pre class="programlisting">Structure <a href="#xmlLocationSet">xmlLocationSet</a><br />struct _xmlLocationSet
 </pre><pre class="programlisting">Typedef <a href="libxml-xpointer.html#xmlLocationSet">xmlLocationSet</a> * <a name="xmlLocationSetPtr" id="xmlLocationSetPtr">xmlLocationSetPtr</a>
-
-</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPtrBuildNodeList">xmlXPtrBuildNodeList</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrEval">xmlXPtrEval</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewCollapsedRange">xmlXPtrNewCollapsedRange</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start)<br />
-</pre><pre class="programlisting">Structure <a name="xmlLocationSet" id="xmlLocationSet">xmlLocationSet</a><br />struct _xmlLocationSet {
+</pre><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	<a href="#xmlXPtrBuildNodeList">xmlXPtrBuildNodeList</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrEval">xmlXPtrEval</a>	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)</pre>
+<pre class="programlisting">void	<a href="#xmlXPtrEvalRangePredicate">xmlXPtrEvalRangePredicate</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)</pre>
+<pre class="programlisting">void	<a href="#xmlXPtrFreeLocationSet">xmlXPtrFreeLocationSet</a>		(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> obj)</pre>
+<pre class="programlisting">void	<a href="#xmlXPtrLocationSetAdd">xmlXPtrLocationSetAdd</a>		(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)</pre>
+<pre class="programlisting"><a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a>	<a href="#xmlXPtrLocationSetCreate">xmlXPtrLocationSetCreate</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)</pre>
+<pre class="programlisting">void	<a href="#xmlXPtrLocationSetDel">xmlXPtrLocationSetDel</a>		(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)</pre>
+<pre class="programlisting"><a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a>	<a href="#xmlXPtrLocationSetMerge">xmlXPtrLocationSetMerge</a>	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val1, <br />						 <a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val2)</pre>
+<pre class="programlisting">void	<a href="#xmlXPtrLocationSetRemove">xmlXPtrLocationSetRemove</a>	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur, <br />					 int val)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewCollapsedRange">xmlXPtrNewCollapsedRange</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a>	<a href="#xmlXPtrNewContext">xmlXPtrNewContext</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> here, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> origin)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewLocationSetNodeSet">xmlXPtrNewLocationSetNodeSet</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> set)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewLocationSetNodes">xmlXPtrNewLocationSetNodes</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />							 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewRange">xmlXPtrNewRange</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />					 int startindex, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end, <br />					 int endindex)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewRangeNodeObject">xmlXPtrNewRangeNodeObject</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />							 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewRangeNodePoint">xmlXPtrNewRangeNodePoint</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />							 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewRangeNodes">xmlXPtrNewRangeNodes</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewRangePointNode">xmlXPtrNewRangePointNode</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> start, <br />							 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewRangePoints">xmlXPtrNewRangePoints</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> start, <br />						 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end)</pre>
+<pre class="programlisting">void	<a href="#xmlXPtrRangeToFunction">xmlXPtrRangeToFunction</a>		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)</pre>
+<pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrWrapLocationSet">xmlXPtrWrapLocationSet</a>	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val)</pre>
+<h2>Description</h2>
+<h3><a name="xmlLocationSet" id="xmlLocationSet">Structure xmlLocationSet</a></h3><pre class="programlisting">Structure xmlLocationSet<br />struct _xmlLocationSet {
     int	locNr	: number of locations in the set
     int	locMax	: size of the array as allocated
     <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> *	locTab	: array of locations
-}</pre><br /><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewLocationSetNodeSet">xmlXPtrNewLocationSetNodeSet</a>	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> set)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewRangePointNode">xmlXPtrNewRangePointNode</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> start, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end)<br />
-</pre><pre class="programlisting"><a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a>	<a href="#xmlXPtrLocationSetMerge">xmlXPtrLocationSetMerge</a>	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val1, <br />				 <a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val2)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPtrEvalRangePredicate">xmlXPtrEvalRangePredicate</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPtrLocationSetDel">xmlXPtrLocationSetDel</a>	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewRange">xmlXPtrNewRange</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />				 int startindex, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end, <br />				 int endindex)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPtrFreeLocationSet">xmlXPtrFreeLocationSet</a>	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> obj)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrWrapLocationSet">xmlXPtrWrapLocationSet</a>	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewRangeNodes">xmlXPtrNewRangeNodes</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end)<br />
-</pre><pre class="programlisting"><a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a>	<a href="#xmlXPtrLocationSetCreate">xmlXPtrLocationSetCreate</a>	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPtrLocationSetAdd">xmlXPtrLocationSetAdd</a>	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPtrRangeToFunction">xmlXPtrRangeToFunction</a>	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewLocationSetNodes">xmlXPtrNewLocationSetNodes</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a>	<a href="#xmlXPtrNewContext">xmlXPtrNewContext</a>	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> here, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> origin)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewRangeNodeObject">xmlXPtrNewRangeNodeObject</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end)<br />
-</pre><pre class="programlisting">void	<a href="#xmlXPtrLocationSetRemove">xmlXPtrLocationSetRemove</a>	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur, <br />				 int val)<br />
-</pre><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	<a href="#xmlXPtrNewRangeNodePoint">xmlXPtrNewRangeNodePoint</a>	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end)<br />
-</pre><h2>Description</h2>
-<h3><a name="xmlXPtrNewRangePoints" id="xmlXPtrNewRangePoints"></a>Function: xmlXPtrNewRangePoints</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewRangePoints	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> start, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end)<br />
-</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type range using 2 Points</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting point</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the ending point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrBuildNodeList" id="xmlXPtrBuildNodeList"></a>Function: xmlXPtrBuildNodeList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPtrBuildNodeList	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj)<br />
-</pre><p>Build a node list tree copy of the XPointer result. This will drop Attributes and Namespace declarations.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>obj</tt></i>:</span></td><td>the XPointer result from the evaluation.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list or NULL. the caller has to free the node tree.</td></tr></tbody></table></div><h3><a name="xmlXPtrEval" id="xmlXPtrEval"></a>Function: xmlXPtrEval</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrEval	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />				 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br />
-</pre><p>Evaluate the XPath Location Path in the given context.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPointer expression</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the XPointer context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xmlXPtrNewCollapsedRange" id="xmlXPtrNewCollapsedRange"></a>Function: xmlXPtrNewCollapsedRange</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewCollapsedRange	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start)<br />
-</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type range using a single nodes</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting and ending node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div>
-      
-      
-      
-    <h3><a name="xmlXPtrNewLocationSetNodeSet" id="xmlXPtrNewLocationSetNodeSet"></a>Function: xmlXPtrNewLocationSetNodeSet</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewLocationSetNodeSet	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> set)<br />
-</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type LocationSet and initialize it with all the nodes from @set</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>set</tt></i>:</span></td><td>a node set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrNewRangePointNode" id="xmlXPtrNewRangePointNode"></a>Function: xmlXPtrNewRangePointNode</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewRangePointNode	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> start, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end)<br />
-</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type range from a point to a node</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting point</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the ending node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrLocationSetMerge" id="xmlXPtrLocationSetMerge"></a>Function: xmlXPtrLocationSetMerge</h3><pre class="programlisting"><a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a>	xmlXPtrLocationSetMerge	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val1, <br />				 <a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val2)<br />
-</pre><p>Merges two rangesets, all ranges from @val2 are added to @val1</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val1</tt></i>:</span></td><td>the first LocationSet</td></tr><tr><td><span class="term"><i><tt>val2</tt></i>:</span></td><td>the second LocationSet</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>val1 once extended or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlXPtrEvalRangePredicate" id="xmlXPtrEvalRangePredicate"></a>Function: xmlXPtrEvalRangePredicate</h3><pre class="programlisting">void	xmlXPtrEvalRangePredicate	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
-</pre><p>[8] Predicate ::= '[' PredicateExpr ']' [9] PredicateExpr ::= Expr Evaluate a predicate as in xmlXPathEvalPredicate() but for a Location Set instead of a node set</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPointer Parser context</td></tr></tbody></table></div><h3><a name="xmlXPtrLocationSetDel" id="xmlXPtrLocationSetDel"></a>Function: xmlXPtrLocationSetDel</h3><pre class="programlisting">void	xmlXPtrLocationSetDel	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><p>Removes an <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> from an existing LocationSet</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the initial range set</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a></td></tr></tbody></table></div><h3><a name="xmlXPtrNewRange" id="xmlXPtrNewRange"></a>Function: xmlXPtrNewRange</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewRange	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />				 int startindex, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end, <br />				 int endindex)<br />
+}</pre><h3><a name="xmlXPtrNewRange" id="xmlXPtrNewRange"></a>Function: xmlXPtrNewRange</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewRange	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />					 int startindex, <br />					 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end, <br />					 int endindex)<br />
 </pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type range</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting node</td></tr><tr><td><span class="term"><i><tt>startindex</tt></i>:</span></td><td>the start index</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the ending point</td></tr><tr><td><span class="term"><i><tt>endindex</tt></i>:</span></td><td>the ending index</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrFreeLocationSet" id="xmlXPtrFreeLocationSet"></a>Function: xmlXPtrFreeLocationSet</h3><pre class="programlisting">void	xmlXPtrFreeLocationSet	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> obj)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting node</td></tr><tr><td><span class="term"><i><tt>startindex</tt></i>:</span></td><td>the start index</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the ending point</td></tr><tr><td><span class="term"><i><tt>endindex</tt></i>:</span></td><td>the ending index</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrFreeLocationSet" id="xmlXPtrFreeLocationSet"></a>Function: xmlXPtrFreeLocationSet</h3><pre class="programlisting">void	xmlXPtrFreeLocationSet		(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> obj)<br />
 </pre><p>Free the LocationSet compound (not the actual ranges !).</p>
 <div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>obj</tt></i>:</span></td><td>the <a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> to free</td></tr></tbody></table></div><h3><a name="xmlXPtrWrapLocationSet" id="xmlXPtrWrapLocationSet"></a>Function: xmlXPtrWrapLocationSet</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrWrapLocationSet	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val)<br />
 </pre><p>Wrap the LocationSet @val in a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a></p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the LocationSet value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrNewRangeNodes" id="xmlXPtrNewRangeNodes"></a>Function: xmlXPtrNewRangeNodes</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewRangeNodes	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end)<br />
-</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type range using 2 nodes</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting node</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the ending node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrLocationSetCreate" id="xmlXPtrLocationSetCreate"></a>Function: xmlXPtrLocationSetCreate</h3><pre class="programlisting"><a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a>	xmlXPtrLocationSetCreate	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
-</pre><p>Create a new <a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> of type double and of value @val</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an initial xmlXPathObjectPtr, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrLocationSetAdd" id="xmlXPtrLocationSetAdd"></a>Function: xmlXPtrLocationSetAdd</h3><pre class="programlisting">void	xmlXPtrLocationSetAdd	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the LocationSet value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrEvalRangePredicate" id="xmlXPtrEvalRangePredicate"></a>Function: xmlXPtrEvalRangePredicate</h3><pre class="programlisting">void	xmlXPtrEvalRangePredicate	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt)<br />
+</pre><p>[8] Predicate ::= '[' PredicateExpr ']' [9] PredicateExpr ::= Expr Evaluate a predicate as in xmlXPathEvalPredicate() but for a Location Set instead of a node set</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPointer Parser context</td></tr></tbody></table></div><h3><a name="xmlXPtrBuildNodeList" id="xmlXPtrBuildNodeList"></a>Function: xmlXPtrBuildNodeList</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>	xmlXPtrBuildNodeList	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> obj)<br />
+</pre><p>Build a node list tree copy of the XPointer result. This will drop Attributes and Namespace declarations.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>obj</tt></i>:</span></td><td>the XPointer result from the evaluation.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>an <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list or NULL. the caller has to free the node tree.</td></tr></tbody></table></div><h3><a name="xmlXPtrLocationSetAdd" id="xmlXPtrLocationSetAdd"></a>Function: xmlXPtrLocationSetAdd</h3><pre class="programlisting">void	xmlXPtrLocationSetAdd		(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
 </pre><p>add a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> to an existing LocationSet If the location already exist in the set @val is freed.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the initial range set</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a></td></tr></tbody></table></div><h3><a name="xmlXPtrRangeToFunction" id="xmlXPtrRangeToFunction"></a>Function: xmlXPtrRangeToFunction</h3><pre class="programlisting">void	xmlXPtrRangeToFunction	(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />				 int nargs)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the initial range set</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a></td></tr></tbody></table></div><h3><a name="xmlXPtrNewRangeNodes" id="xmlXPtrNewRangeNodes"></a>Function: xmlXPtrNewRangeNodes</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewRangeNodes	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end)<br />
+</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type range using 2 nodes</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting node</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the ending node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrEval" id="xmlXPtrEval"></a>Function: xmlXPtrEval</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrEval	(const <a href="libxml-tree.html#xmlChar">xmlChar</a> * str, <br />					 <a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a> ctx)<br />
+</pre><p>Evaluate the XPath Location Path in the given context.</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>str</tt></i>:</span></td><td>the XPointer expression</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>the XPointer context</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> resulting from the evaluation or NULL. the caller has to free the object.</td></tr></tbody></table></div><h3><a name="xmlXPtrRangeToFunction" id="xmlXPtrRangeToFunction"></a>Function: xmlXPtrRangeToFunction</h3><pre class="programlisting">void	xmlXPtrRangeToFunction		(<a href="libxml-xpath.html#xmlXPathParserContextPtr">xmlXPathParserContextPtr</a> ctxt, <br />					 int nargs)<br />
 </pre><p>Implement the range-to() XPointer function</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPointer Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of args</td></tr></tbody></table></div><h3><a name="xmlXPtrNewLocationSetNodes" id="xmlXPtrNewLocationSetNodes"></a>Function: xmlXPtrNewLocationSetNodes</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewLocationSetNodes	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end)<br />
-</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type LocationSet and initialize it with the single range made of the two nodes @start and @end</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the start NodePtr value</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the end NodePtr value or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrNewContext" id="xmlXPtrNewContext"></a>Function: xmlXPtrNewContext</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a>	xmlXPtrNewContext	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> here, <br />				 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> origin)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the XPointer Parser context</td></tr><tr><td><span class="term"><i><tt>nargs</tt></i>:</span></td><td>the number of args</td></tr></tbody></table></div><h3><a name="xmlXPtrNewCollapsedRange" id="xmlXPtrNewCollapsedRange"></a>Function: xmlXPtrNewCollapsedRange</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewCollapsedRange	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start)<br />
+</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type range using a single nodes</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting and ending node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrNewRangePoints" id="xmlXPtrNewRangePoints"></a>Function: xmlXPtrNewRangePoints</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewRangePoints	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> start, <br />						 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end)<br />
+</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type range using 2 Points</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting point</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the ending point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrNewLocationSetNodeSet" id="xmlXPtrNewLocationSetNodeSet"></a>Function: xmlXPtrNewLocationSetNodeSet</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewLocationSetNodeSet	(<a href="libxml-xpath.html#xmlNodeSetPtr">xmlNodeSetPtr</a> set)<br />
+</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type LocationSet and initialize it with all the nodes from @set</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>set</tt></i>:</span></td><td>a node set</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrNewRangePointNode" id="xmlXPtrNewRangePointNode"></a>Function: xmlXPtrNewRangePointNode</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewRangePointNode	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> start, <br />							 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end)<br />
+</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type range from a point to a node</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting point</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the ending node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrNewContext" id="xmlXPtrNewContext"></a>Function: xmlXPtrNewContext</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathContextPtr">xmlXPathContextPtr</a>	xmlXPtrNewContext	(<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> here, <br />						 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> origin)<br />
 </pre><p>Create a new XPointer context</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the XML document</td></tr><tr><td><span class="term"><i><tt>here</tt></i>:</span></td><td>the node that directly contains the XPointer being evaluated or NULL</td></tr><tr><td><span class="term"><i><tt>origin</tt></i>:</span></td><td>the element from which a user or program initiated traversal of the link, or NULL.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathContext">xmlXPathContext</a> just allocated.</td></tr></tbody></table></div><h3><a name="xmlXPtrNewRangeNodeObject" id="xmlXPtrNewRangeNodeObject"></a>Function: xmlXPtrNewRangeNodeObject</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewRangeNodeObject	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the XML document</td></tr><tr><td><span class="term"><i><tt>here</tt></i>:</span></td><td>the node that directly contains the XPointer being evaluated or NULL</td></tr><tr><td><span class="term"><i><tt>origin</tt></i>:</span></td><td>the element from which a user or program initiated traversal of the link, or NULL.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml-xpath.html#xmlXPathContext">xmlXPathContext</a> just allocated.</td></tr></tbody></table></div><h3><a name="xmlXPtrNewRangeNodeObject" id="xmlXPtrNewRangeNodeObject"></a>Function: xmlXPtrNewRangeNodeObject</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewRangeNodeObject	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />							 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end)<br />
 </pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type range from a not to an object</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting node</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the ending object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrLocationSetRemove" id="xmlXPtrLocationSetRemove"></a>Function: xmlXPtrLocationSetRemove</h3><pre class="programlisting">void	xmlXPtrLocationSetRemove	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur, <br />				 int val)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting node</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the ending object</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrLocationSetRemove" id="xmlXPtrLocationSetRemove"></a>Function: xmlXPtrLocationSetRemove</h3><pre class="programlisting">void	xmlXPtrLocationSetRemove	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur, <br />					 int val)<br />
 </pre><p>Removes an entry from an existing LocationSet list.</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the initial range set</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the index to remove</td></tr></tbody></table></div><h3><a name="xmlXPtrNewRangeNodePoint" id="xmlXPtrNewRangeNodePoint"></a>Function: xmlXPtrNewRangeNodePoint</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewRangeNodePoint	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />				 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end)<br />
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the initial range set</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the index to remove</td></tr></tbody></table></div><h3><a name="xmlXPtrNewRangeNodePoint" id="xmlXPtrNewRangeNodePoint"></a>Function: xmlXPtrNewRangeNodePoint</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewRangeNodePoint	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />							 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> end)<br />
 </pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type range from a node to a point</p>
-<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting node</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the ending point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the starting node</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the ending point</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrLocationSetDel" id="xmlXPtrLocationSetDel"></a>Function: xmlXPtrLocationSetDel</h3><pre class="programlisting">void	xmlXPtrLocationSetDel		(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> cur, <br />					 <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
+</pre><p>Removes an <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> from an existing LocationSet</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the initial range set</td></tr><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a></td></tr></tbody></table></div><h3><a name="xmlXPtrLocationSetMerge" id="xmlXPtrLocationSetMerge"></a>Function: xmlXPtrLocationSetMerge</h3><pre class="programlisting"><a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a>	xmlXPtrLocationSetMerge	(<a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val1, <br />						 <a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> val2)<br />
+</pre><p>Merges two rangesets, all ranges from @val2 are added to @val1</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val1</tt></i>:</span></td><td>the first LocationSet</td></tr><tr><td><span class="term"><i><tt>val2</tt></i>:</span></td><td>the second LocationSet</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>val1 once extended or NULL in case of error.</td></tr></tbody></table></div><h3><a name="xmlXPtrLocationSetCreate" id="xmlXPtrLocationSetCreate"></a>Function: xmlXPtrLocationSetCreate</h3><pre class="programlisting"><a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a>	xmlXPtrLocationSetCreate	(<a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> val)<br />
+</pre><p>Create a new <a href="libxml-xpointer.html#xmlLocationSetPtr">xmlLocationSetPtr</a> of type double and of value @val</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>an initial xmlXPathObjectPtr, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><h3><a name="xmlXPtrNewLocationSetNodes" id="xmlXPtrNewLocationSetNodes"></a>Function: xmlXPtrNewLocationSetNodes</h3><pre class="programlisting"><a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a>	xmlXPtrNewLocationSetNodes	(<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> start, <br />							 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> end)<br />
+</pre><p>Create a new <a href="libxml-xpath.html#xmlXPathObjectPtr">xmlXPathObjectPtr</a> of type LocationSet and initialize it with the single range made of the two nodes @start and @end</p>
+<div class="variablelist"><table border="0"><col align="left" /><tbody><tr><td><span class="term"><i><tt>start</tt></i>:</span></td><td>the start NodePtr value</td></tr><tr><td><span class="term"><i><tt>end</tt></i>:</span></td><td>the end NodePtr value or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the newly created object.</td></tr></tbody></table></div><p><a href="../bugs.html">Daniel Veillard</a></p></td></tr></table></td></tr></table></td></tr></table></td></tr></table></td></tr></table></body></html>
diff --git a/doc/libxml2-api.xml b/doc/libxml2-api.xml
index 7eadd4e..eb13aab 100644
--- a/doc/libxml2-api.xml
+++ b/doc/libxml2-api.xml
@@ -6,3015 +6,3015 @@
      <description>interface for a DocBook SGML non-verifying parser This code is DEPRECATED, and should not be used anymore. </description>
      <author>Daniel Veillard </author>
      <deprecated/>
-     <exports symbol='docbFreeParserCtxt'/>
-     <exports symbol='docbParseDoc'/>
-     <exports symbol='docbDocPtr'/>
-     <exports symbol='docbCreateFileParserCtxt'/>
-     <exports symbol='docbParserCtxtPtr'/>
-     <exports symbol='docbSAXParseDoc'/>
-     <exports symbol='docbSAXParseFile'/>
-     <exports symbol='docbCreatePushParserCtxt'/>
-     <exports symbol='docbEncodeEntities'/>
-     <exports symbol='docbParseFile'/>
-     <exports symbol='docbParseDocument'/>
-     <exports symbol='docbParserInput'/>
-     <exports symbol='docbSAXHandler'/>
-     <exports symbol='docbParserCtxt'/>
-     <exports symbol='docbSAXHandlerPtr'/>
-     <exports symbol='docbParseChunk'/>
-     <exports symbol='docbParserInputPtr'/>
+     <exports symbol='docbParserInput' type='typedef'/>
+     <exports symbol='docbParserInputPtr' type='typedef'/>
+     <exports symbol='docbParserCtxt' type='typedef'/>
+     <exports symbol='docbParserCtxtPtr' type='typedef'/>
+     <exports symbol='docbDocPtr' type='typedef'/>
+     <exports symbol='docbSAXHandler' type='typedef'/>
+     <exports symbol='docbSAXHandlerPtr' type='typedef'/>
+     <exports symbol='docbCreatePushParserCtxt' type='function'/>
+     <exports symbol='docbEncodeEntities' type='function'/>
+     <exports symbol='docbParseFile' type='function'/>
+     <exports symbol='docbParseDocument' type='function'/>
+     <exports symbol='docbCreateFileParserCtxt' type='function'/>
+     <exports symbol='docbParseDoc' type='function'/>
+     <exports symbol='docbSAXParseDoc' type='function'/>
+     <exports symbol='docbSAXParseFile' type='function'/>
+     <exports symbol='docbParseChunk' type='function'/>
+     <exports symbol='docbFreeParserCtxt' type='function'/>
     </file>
     <file name='HTMLparser'>
      <summary>interface for an HTML 4.0 non-verifying parser</summary>
      <description>this module implements an HTML 4.0 non-verifying parser with API compatible with the XML parser ones. It should be able to parse &quot;real world&quot; HTML, even if severely broken from a specification point of view. </description>
      <author>Daniel Veillard </author>
-     <exports symbol='htmlParserNodeInfo'/>
-     <exports symbol='htmlIsScriptAttribute'/>
-     <exports symbol='htmlHandleOmittedElem'/>
-     <exports symbol='HTML_VALID'/>
-     <exports symbol='htmlCtxtReadDoc'/>
-     <exports symbol='HTML_PARSE_NOWARNING'/>
-     <exports symbol='htmlNodePtr'/>
-     <exports symbol='htmlParserCtxtPtr'/>
-     <exports symbol='HTML_DEPRECATED'/>
-     <exports symbol='htmlParseFile'/>
-     <exports symbol='htmlReadIO'/>
-     <exports symbol='_htmlElemDesc'/>
-     <exports symbol='htmlAutoCloseTag'/>
-     <exports symbol='htmlParseChunk'/>
-     <exports symbol='htmlTagLookup'/>
-     <exports symbol='htmlCreateMemoryParserCtxt'/>
-     <exports symbol='htmlCtxtReset'/>
-     <exports symbol='htmlSAXHandler'/>
-     <exports symbol='htmlElementAllowedHere'/>
-     <exports symbol='htmlCtxtReadIO'/>
-     <exports symbol='htmlSAXHandlerPtr'/>
-     <exports symbol='htmlStatus'/>
-     <exports symbol='htmlCreatePushParserCtxt'/>
-     <exports symbol='htmlReadMemory'/>
-     <exports symbol='htmlIsAutoClosed'/>
-     <exports symbol='htmlDocPtr'/>
-     <exports symbol='htmlReadDoc'/>
-     <exports symbol='htmlParserOption'/>
-     <exports symbol='htmlEntityDescPtr'/>
-     <exports symbol='htmlEncodeEntities'/>
-     <exports symbol='htmlParserCtxt'/>
-     <exports symbol='HTML_REQUIRED'/>
-     <exports symbol='htmlNodeStatus'/>
-     <exports symbol='HTML_PARSE_NONET'/>
-     <exports symbol='htmlAttrAllowed'/>
-     <exports symbol='htmlDefaultSubelement'/>
-     <exports symbol='htmlParseCharRef'/>
-     <exports symbol='HTML_PARSE_NOBLANKS'/>
-     <exports symbol='htmlSAXParseFile'/>
-     <exports symbol='htmlParseEntityRef'/>
-     <exports symbol='htmlParserInput'/>
-     <exports symbol='HTML_INVALID'/>
-     <exports symbol='htmlElementStatusHere'/>
-     <exports symbol='htmlEntityValueLookup'/>
-     <exports symbol='htmlParseElement'/>
-     <exports symbol='UTF8ToHtml'/>
-     <exports symbol='htmlRequiredAttrs'/>
-     <exports symbol='HTML_PARSE_PEDANTIC'/>
-     <exports symbol='htmlEntityLookup'/>
-     <exports symbol='_htmlEntityDesc'/>
-     <exports symbol='HTML_NA'/>
-     <exports symbol='htmlFreeParserCtxt'/>
-     <exports symbol='htmlCtxtReadMemory'/>
-     <exports symbol='htmlCtxtReadFd'/>
-     <exports symbol='htmlEntityDesc'/>
-     <exports symbol='htmlElementAllowedHereDesc'/>
-     <exports symbol='HTML_PARSE_NOERROR'/>
-     <exports symbol='htmlReadFile'/>
-     <exports symbol='htmlCtxtReadFile'/>
-     <exports symbol='htmlElemDescPtr'/>
-     <exports symbol='htmlElemDesc'/>
-     <exports symbol='htmlSAXParseDoc'/>
-     <exports symbol='htmlCtxtUseOptions'/>
-     <exports symbol='htmlParserInputPtr'/>
-     <exports symbol='htmlReadFd'/>
-     <exports symbol='htmlParseDoc'/>
-     <exports symbol='htmlParseDocument'/>
+     <exports symbol='htmlDefaultSubelement' type='macro'/>
+     <exports symbol='htmlElementAllowedHereDesc' type='macro'/>
+     <exports symbol='htmlRequiredAttrs' type='macro'/>
+     <exports symbol='HTML_REQUIRED' type='enum'/>
+     <exports symbol='HTML_DEPRECATED' type='enum'/>
+     <exports symbol='HTML_INVALID' type='enum'/>
+     <exports symbol='HTML_PARSE_NONET' type='enum'/>
+     <exports symbol='HTML_PARSE_PEDANTIC' type='enum'/>
+     <exports symbol='HTML_NA' type='enum'/>
+     <exports symbol='HTML_VALID' type='enum'/>
+     <exports symbol='HTML_PARSE_NOWARNING' type='enum'/>
+     <exports symbol='HTML_PARSE_NOBLANKS' type='enum'/>
+     <exports symbol='HTML_PARSE_NOERROR' type='enum'/>
+     <exports symbol='htmlParserNodeInfo' type='typedef'/>
+     <exports symbol='htmlParserInput' type='typedef'/>
+     <exports symbol='htmlParserCtxtPtr' type='typedef'/>
+     <exports symbol='htmlEntityDesc' type='typedef'/>
+     <exports symbol='htmlDocPtr' type='typedef'/>
+     <exports symbol='htmlSAXHandlerPtr' type='typedef'/>
+     <exports symbol='htmlStatus' type='typedef'/>
+     <exports symbol='htmlNodePtr' type='typedef'/>
+     <exports symbol='htmlElemDescPtr' type='typedef'/>
+     <exports symbol='htmlElemDesc' type='typedef'/>
+     <exports symbol='htmlSAXHandler' type='typedef'/>
+     <exports symbol='htmlParserInputPtr' type='typedef'/>
+     <exports symbol='htmlParserOption' type='typedef'/>
+     <exports symbol='htmlEntityDescPtr' type='typedef'/>
+     <exports symbol='htmlParserCtxt' type='typedef'/>
+     <exports symbol='_htmlEntityDesc' type='struct'/>
+     <exports symbol='_htmlElemDesc' type='struct'/>
+     <exports symbol='htmlParseChunk' type='function'/>
+     <exports symbol='htmlNodeStatus' type='function'/>
+     <exports symbol='htmlAttrAllowed' type='function'/>
+     <exports symbol='htmlIsScriptAttribute' type='function'/>
+     <exports symbol='htmlHandleOmittedElem' type='function'/>
+     <exports symbol='htmlReadFd' type='function'/>
+     <exports symbol='htmlSAXParseFile' type='function'/>
+     <exports symbol='htmlParseEntityRef' type='function'/>
+     <exports symbol='htmlSAXParseDoc' type='function'/>
+     <exports symbol='htmlParseFile' type='function'/>
+     <exports symbol='htmlReadIO' type='function'/>
+     <exports symbol='htmlCtxtReadDoc' type='function'/>
+     <exports symbol='htmlElementStatusHere' type='function'/>
+     <exports symbol='htmlEntityLookup' type='function'/>
+     <exports symbol='htmlEntityValueLookup' type='function'/>
+     <exports symbol='htmlParseElement' type='function'/>
+     <exports symbol='htmlAutoCloseTag' type='function'/>
+     <exports symbol='UTF8ToHtml' type='function'/>
+     <exports symbol='htmlTagLookup' type='function'/>
+     <exports symbol='htmlCreateMemoryParserCtxt' type='function'/>
+     <exports symbol='htmlCtxtReset' type='function'/>
+     <exports symbol='htmlFreeParserCtxt' type='function'/>
+     <exports symbol='htmlCtxtReadMemory' type='function'/>
+     <exports symbol='htmlCtxtReadFd' type='function'/>
+     <exports symbol='htmlElementAllowedHere' type='function'/>
+     <exports symbol='htmlCtxtReadIO' type='function'/>
+     <exports symbol='htmlReadFile' type='function'/>
+     <exports symbol='htmlCtxtReadFile' type='function'/>
+     <exports symbol='htmlCreatePushParserCtxt' type='function'/>
+     <exports symbol='htmlReadMemory' type='function'/>
+     <exports symbol='htmlParseDocument' type='function'/>
+     <exports symbol='htmlIsAutoClosed' type='function'/>
+     <exports symbol='htmlParseCharRef' type='function'/>
+     <exports symbol='htmlCtxtUseOptions' type='function'/>
+     <exports symbol='htmlReadDoc' type='function'/>
+     <exports symbol='htmlParseDoc' type='function'/>
+     <exports symbol='htmlEncodeEntities' type='function'/>
     </file>
     <file name='HTMLtree'>
      <summary>specific APIs to process HTML tree, especially serialization</summary>
      <description>this module implements a few function needed to process tree in an HTML specific way. </description>
      <author>Daniel Veillard </author>
-     <exports symbol='htmlDocDumpMemory'/>
-     <exports symbol='htmlSaveFile'/>
-     <exports symbol='HTML_TEXT_NODE'/>
-     <exports symbol='htmlNodeDump'/>
-     <exports symbol='htmlNodeDumpFormatOutput'/>
-     <exports symbol='htmlSaveFileEnc'/>
-     <exports symbol='htmlNodeDumpOutput'/>
-     <exports symbol='htmlDocDump'/>
-     <exports symbol='htmlNewDoc'/>
-     <exports symbol='htmlGetMetaEncoding'/>
-     <exports symbol='htmlNodeDumpFile'/>
-     <exports symbol='htmlNodeDumpFileFormat'/>
-     <exports symbol='HTML_PRESERVE_NODE'/>
-     <exports symbol='htmlSetMetaEncoding'/>
-     <exports symbol='htmlNewDocNoDtD'/>
-     <exports symbol='HTML_COMMENT_NODE'/>
-     <exports symbol='htmlIsBooleanAttr'/>
-     <exports symbol='HTML_PI_NODE'/>
-     <exports symbol='HTML_ENTITY_REF_NODE'/>
-     <exports symbol='htmlDocContentDumpFormatOutput'/>
-     <exports symbol='htmlSaveFileFormat'/>
-     <exports symbol='htmlDocContentDumpOutput'/>
+     <exports symbol='HTML_ENTITY_REF_NODE' type='macro'/>
+     <exports symbol='HTML_COMMENT_NODE' type='macro'/>
+     <exports symbol='HTML_PRESERVE_NODE' type='macro'/>
+     <exports symbol='HTML_TEXT_NODE' type='macro'/>
+     <exports symbol='HTML_PI_NODE' type='macro'/>
+     <exports symbol='htmlDocDumpMemory' type='function'/>
+     <exports symbol='htmlSaveFile' type='function'/>
+     <exports symbol='htmlNewDocNoDtD' type='function'/>
+     <exports symbol='htmlDocDump' type='function'/>
+     <exports symbol='htmlNodeDump' type='function'/>
+     <exports symbol='htmlDocContentDumpFormatOutput' type='function'/>
+     <exports symbol='htmlSetMetaEncoding' type='function'/>
+     <exports symbol='htmlSaveFileEnc' type='function'/>
+     <exports symbol='htmlNodeDumpOutput' type='function'/>
+     <exports symbol='htmlIsBooleanAttr' type='function'/>
+     <exports symbol='htmlNodeDumpFormatOutput' type='function'/>
+     <exports symbol='htmlNewDoc' type='function'/>
+     <exports symbol='htmlGetMetaEncoding' type='function'/>
+     <exports symbol='htmlNodeDumpFile' type='function'/>
+     <exports symbol='htmlNodeDumpFileFormat' type='function'/>
+     <exports symbol='htmlSaveFileFormat' type='function'/>
+     <exports symbol='htmlDocContentDumpOutput' type='function'/>
     </file>
     <file name='SAX'>
      <summary>Old SAX version 1 handler, deprecated</summary>
      <description>DEPRECATED set of SAX version 1 interfaces used to build the DOM tree. </description>
      <author>Daniel Veillard </author>
      <deprecated/>
-     <exports symbol='cdataBlock'/>
-     <exports symbol='comment'/>
-     <exports symbol='checkNamespace'/>
-     <exports symbol='startElement'/>
-     <exports symbol='inithtmlDefaultSAXHandler'/>
-     <exports symbol='getColumnNumber'/>
-     <exports symbol='endElement'/>
-     <exports symbol='attribute'/>
-     <exports symbol='namespaceDecl'/>
-     <exports symbol='getNamespace'/>
-     <exports symbol='initdocbDefaultSAXHandler'/>
-     <exports symbol='setDocumentLocator'/>
-     <exports symbol='getPublicId'/>
-     <exports symbol='getEntity'/>
-     <exports symbol='characters'/>
-     <exports symbol='elementDecl'/>
-     <exports symbol='ignorableWhitespace'/>
-     <exports symbol='hasExternalSubset'/>
-     <exports symbol='isStandalone'/>
-     <exports symbol='unparsedEntityDecl'/>
-     <exports symbol='reference'/>
-     <exports symbol='globalNamespace'/>
-     <exports symbol='initxmlDefaultSAXHandler'/>
-     <exports symbol='hasInternalSubset'/>
-     <exports symbol='processingInstruction'/>
-     <exports symbol='getParameterEntity'/>
-     <exports symbol='attributeDecl'/>
-     <exports symbol='notationDecl'/>
-     <exports symbol='entityDecl'/>
-     <exports symbol='setNamespace'/>
-     <exports symbol='externalSubset'/>
-     <exports symbol='resolveEntity'/>
-     <exports symbol='getSystemId'/>
-     <exports symbol='startDocument'/>
-     <exports symbol='internalSubset'/>
-     <exports symbol='endDocument'/>
-     <exports symbol='getLineNumber'/>
+     <exports symbol='cdataBlock' type='function'/>
+     <exports symbol='comment' type='function'/>
+     <exports symbol='checkNamespace' type='function'/>
+     <exports symbol='startElement' type='function'/>
+     <exports symbol='inithtmlDefaultSAXHandler' type='function'/>
+     <exports symbol='getColumnNumber' type='function'/>
+     <exports symbol='endElement' type='function'/>
+     <exports symbol='attribute' type='function'/>
+     <exports symbol='namespaceDecl' type='function'/>
+     <exports symbol='getNamespace' type='function'/>
+     <exports symbol='initdocbDefaultSAXHandler' type='function'/>
+     <exports symbol='setDocumentLocator' type='function'/>
+     <exports symbol='getPublicId' type='function'/>
+     <exports symbol='getEntity' type='function'/>
+     <exports symbol='characters' type='function'/>
+     <exports symbol='elementDecl' type='function'/>
+     <exports symbol='ignorableWhitespace' type='function'/>
+     <exports symbol='hasExternalSubset' type='function'/>
+     <exports symbol='isStandalone' type='function'/>
+     <exports symbol='unparsedEntityDecl' type='function'/>
+     <exports symbol='reference' type='function'/>
+     <exports symbol='globalNamespace' type='function'/>
+     <exports symbol='initxmlDefaultSAXHandler' type='function'/>
+     <exports symbol='hasInternalSubset' type='function'/>
+     <exports symbol='processingInstruction' type='function'/>
+     <exports symbol='getParameterEntity' type='function'/>
+     <exports symbol='attributeDecl' type='function'/>
+     <exports symbol='notationDecl' type='function'/>
+     <exports symbol='entityDecl' type='function'/>
+     <exports symbol='setNamespace' type='function'/>
+     <exports symbol='externalSubset' type='function'/>
+     <exports symbol='resolveEntity' type='function'/>
+     <exports symbol='getSystemId' type='function'/>
+     <exports symbol='startDocument' type='function'/>
+     <exports symbol='internalSubset' type='function'/>
+     <exports symbol='endDocument' type='function'/>
+     <exports symbol='getLineNumber' type='function'/>
     </file>
     <file name='SAX2'>
      <summary>SAX2 parser interface used to build the DOM tree</summary>
      <description>those are the default SAX2 interfaces used by the library when building DOM tree. </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlSAX2CheckNamespace'/>
-     <exports symbol='xmlSAX2EndElementNs'/>
-     <exports symbol='xmlSAX2Reference'/>
-     <exports symbol='xmlSAX2GetNamespace'/>
-     <exports symbol='xmlSAX2ElementDecl'/>
-     <exports symbol='xmlSAX2NamespaceDecl'/>
-     <exports symbol='xmlSAX2AttributeDecl'/>
-     <exports symbol='xmlSAX2EntityDecl'/>
-     <exports symbol='xmlSAX2GetColumnNumber'/>
-     <exports symbol='xmlSAX2GetEntity'/>
-     <exports symbol='xmlSAX2UnparsedEntityDecl'/>
-     <exports symbol='xmlSAX2InitDocbDefaultSAXHandler'/>
-     <exports symbol='xmlSAXVersion'/>
-     <exports symbol='xmlSAX2IgnorableWhitespace'/>
-     <exports symbol='xmlSAX2NotationDecl'/>
-     <exports symbol='xmlDefaultSAXHandlerInit'/>
-     <exports symbol='xmlSAX2StartDocument'/>
-     <exports symbol='xmlSAX2EndElement'/>
-     <exports symbol='xmlSAX2ResolveEntity'/>
-     <exports symbol='xmlSAX2ExternalSubset'/>
-     <exports symbol='xmlSAX2GetPublicId'/>
-     <exports symbol='xmlSAX2SetNamespace'/>
-     <exports symbol='xmlSAX2IsStandalone'/>
-     <exports symbol='xmlSAX2EndDocument'/>
-     <exports symbol='xmlSAX2ProcessingInstruction'/>
-     <exports symbol='xmlSAX2InternalSubset'/>
-     <exports symbol='xmlSAX2Characters'/>
-     <exports symbol='xmlSAX2Comment'/>
-     <exports symbol='xmlSAX2StartElement'/>
-     <exports symbol='xmlSAX2SetDocumentLocator'/>
-     <exports symbol='xmlSAX2CDataBlock'/>
-     <exports symbol='htmlDefaultSAXHandlerInit'/>
-     <exports symbol='xmlSAX2HasExternalSubset'/>
-     <exports symbol='xmlSAX2StartElementNs'/>
-     <exports symbol='xmlSAX2GlobalNamespace'/>
-     <exports symbol='xmlSAX2GetLineNumber'/>
-     <exports symbol='xmlSAX2HasInternalSubset'/>
-     <exports symbol='xmlSAX2InitHtmlDefaultSAXHandler'/>
-     <exports symbol='docbDefaultSAXHandlerInit'/>
-     <exports symbol='xmlSAXDefaultVersion'/>
-     <exports symbol='xmlSAX2InitDefaultSAXHandler'/>
-     <exports symbol='xmlSAX2GetParameterEntity'/>
-     <exports symbol='xmlSAX2GetSystemId'/>
+     <exports symbol='xmlSAX2CheckNamespace' type='function'/>
+     <exports symbol='xmlSAX2EndElementNs' type='function'/>
+     <exports symbol='xmlSAX2Reference' type='function'/>
+     <exports symbol='xmlSAX2GetNamespace' type='function'/>
+     <exports symbol='xmlSAX2ElementDecl' type='function'/>
+     <exports symbol='xmlSAX2NamespaceDecl' type='function'/>
+     <exports symbol='xmlSAX2AttributeDecl' type='function'/>
+     <exports symbol='xmlSAX2EntityDecl' type='function'/>
+     <exports symbol='xmlSAX2GetColumnNumber' type='function'/>
+     <exports symbol='xmlSAX2GetEntity' type='function'/>
+     <exports symbol='xmlSAX2UnparsedEntityDecl' type='function'/>
+     <exports symbol='xmlSAX2InitDocbDefaultSAXHandler' type='function'/>
+     <exports symbol='xmlSAXVersion' type='function'/>
+     <exports symbol='xmlSAX2IgnorableWhitespace' type='function'/>
+     <exports symbol='xmlSAX2NotationDecl' type='function'/>
+     <exports symbol='xmlDefaultSAXHandlerInit' type='function'/>
+     <exports symbol='xmlSAX2StartDocument' type='function'/>
+     <exports symbol='xmlSAX2EndElement' type='function'/>
+     <exports symbol='xmlSAX2ResolveEntity' type='function'/>
+     <exports symbol='xmlSAX2ExternalSubset' type='function'/>
+     <exports symbol='xmlSAX2GetPublicId' type='function'/>
+     <exports symbol='xmlSAX2SetNamespace' type='function'/>
+     <exports symbol='xmlSAX2IsStandalone' type='function'/>
+     <exports symbol='xmlSAX2EndDocument' type='function'/>
+     <exports symbol='xmlSAX2ProcessingInstruction' type='function'/>
+     <exports symbol='xmlSAX2InternalSubset' type='function'/>
+     <exports symbol='xmlSAX2Characters' type='function'/>
+     <exports symbol='xmlSAX2Comment' type='function'/>
+     <exports symbol='xmlSAX2StartElement' type='function'/>
+     <exports symbol='xmlSAX2SetDocumentLocator' type='function'/>
+     <exports symbol='xmlSAX2CDataBlock' type='function'/>
+     <exports symbol='htmlDefaultSAXHandlerInit' type='function'/>
+     <exports symbol='xmlSAX2HasExternalSubset' type='function'/>
+     <exports symbol='xmlSAX2StartElementNs' type='function'/>
+     <exports symbol='xmlSAX2GlobalNamespace' type='function'/>
+     <exports symbol='xmlSAX2GetLineNumber' type='function'/>
+     <exports symbol='xmlSAX2HasInternalSubset' type='function'/>
+     <exports symbol='xmlSAX2InitHtmlDefaultSAXHandler' type='function'/>
+     <exports symbol='docbDefaultSAXHandlerInit' type='function'/>
+     <exports symbol='xmlSAXDefaultVersion' type='function'/>
+     <exports symbol='xmlSAX2InitDefaultSAXHandler' type='function'/>
+     <exports symbol='xmlSAX2GetParameterEntity' type='function'/>
+     <exports symbol='xmlSAX2GetSystemId' type='function'/>
     </file>
     <file name='c14n'>
      <summary>Provide Canonical XML and Exclusive XML Canonicalization</summary>
      <description>the c14n modules provides a  &quot;Canonical XML&quot; implementation</description>
      <author>Aleksey Sanin &lt;aleksey@aleksey.com&gt; </author>
-     <exports symbol='xmlC14NExecute'/>
-     <exports symbol='xmlC14NDocSaveTo'/>
-     <exports symbol='xmlC14NIsVisibleCallback'/>
-     <exports symbol='xmlC14NDocSave'/>
-     <exports symbol='xmlC14NDocDumpMemory'/>
+     <exports symbol='xmlC14NExecute' type='function'/>
+     <exports symbol='xmlC14NDocSaveTo' type='function'/>
+     <exports symbol='xmlC14NIsVisibleCallback' type='function'/>
+     <exports symbol='xmlC14NDocSave' type='function'/>
+     <exports symbol='xmlC14NDocDumpMemory' type='function'/>
     </file>
     <file name='catalog'>
      <summary>interfaces to the Catalog handling system</summary>
      <description>the catalog module implements the support for XML Catalogs and SGML catalogs </description>
      <author>Daniel Veillard </author>
-     <exports symbol='XML_CATA_ALLOW_NONE'/>
-     <exports symbol='XML_CATALOGS_NAMESPACE'/>
-     <exports symbol='xmlCatalogLocalResolve'/>
-     <exports symbol='xmlACatalogAdd'/>
-     <exports symbol='xmlCatalogResolvePublic'/>
-     <exports symbol='xmlCatalogGetDefaults'/>
-     <exports symbol='XML_CATA_PREFER_PUBLIC'/>
-     <exports symbol='xmlCatalogAdd'/>
-     <exports symbol='xmlCatalogSetDefaultPrefer'/>
-     <exports symbol='xmlParseCatalogFile'/>
-     <exports symbol='xmlACatalogResolveURI'/>
-     <exports symbol='xmlACatalogRemove'/>
-     <exports symbol='xmlLoadCatalogs'/>
-     <exports symbol='xmlCatalogGetSystem'/>
-     <exports symbol='xmlInitializeCatalog'/>
-     <exports symbol='xmlLoadCatalog'/>
-     <exports symbol='XML_CATALOG_PI'/>
-     <exports symbol='XML_CATA_ALLOW_GLOBAL'/>
-     <exports symbol='xmlCatalogIsEmpty'/>
-     <exports symbol='xmlACatalogDump'/>
-     <exports symbol='xmlCatalogPtr'/>
-     <exports symbol='xmlCatalogFreeLocal'/>
-     <exports symbol='xmlACatalogResolve'/>
-     <exports symbol='XML_CATA_PREFER_SYSTEM'/>
-     <exports symbol='xmlCatalogResolveSystem'/>
-     <exports symbol='xmlCatalogPrefer'/>
-     <exports symbol='xmlLoadSGMLSuperCatalog'/>
-     <exports symbol='xmlCatalogConvert'/>
-     <exports symbol='XML_CATA_PREFER_NONE'/>
-     <exports symbol='xmlCatalogGetPublic'/>
-     <exports symbol='XML_CATA_ALLOW_ALL'/>
-     <exports symbol='xmlLoadACatalog'/>
-     <exports symbol='XML_CATA_ALLOW_DOCUMENT'/>
-     <exports symbol='xmlACatalogResolveSystem'/>
-     <exports symbol='xmlCatalogLocalResolveURI'/>
-     <exports symbol='xmlConvertSGMLCatalog'/>
-     <exports symbol='xmlACatalogResolvePublic'/>
-     <exports symbol='xmlCatalogAddLocal'/>
-     <exports symbol='xmlCatalogRemove'/>
-     <exports symbol='xmlFreeCatalog'/>
-     <exports symbol='xmlNewCatalog'/>
-     <exports symbol='xmlCatalogAllow'/>
-     <exports symbol='xmlCatalogSetDebug'/>
-     <exports symbol='xmlCatalogResolve'/>
-     <exports symbol='xmlCatalog'/>
-     <exports symbol='xmlCatalogSetDefaults'/>
-     <exports symbol='xmlCatalogDump'/>
-     <exports symbol='xmlCatalogCleanup'/>
-     <exports symbol='xmlCatalogResolveURI'/>
+     <exports symbol='XML_CATALOG_PI' type='macro'/>
+     <exports symbol='XML_CATALOGS_NAMESPACE' type='macro'/>
+     <exports symbol='XML_CATA_ALLOW_DOCUMENT' type='enum'/>
+     <exports symbol='XML_CATA_ALLOW_NONE' type='enum'/>
+     <exports symbol='XML_CATA_PREFER_NONE' type='enum'/>
+     <exports symbol='XML_CATA_ALLOW_ALL' type='enum'/>
+     <exports symbol='XML_CATA_PREFER_SYSTEM' type='enum'/>
+     <exports symbol='XML_CATA_ALLOW_GLOBAL' type='enum'/>
+     <exports symbol='XML_CATA_PREFER_PUBLIC' type='enum'/>
+     <exports symbol='xmlCatalogAllow' type='typedef'/>
+     <exports symbol='xmlCatalogPrefer' type='typedef'/>
+     <exports symbol='xmlCatalog' type='typedef'/>
+     <exports symbol='xmlCatalogPtr' type='typedef'/>
+     <exports symbol='xmlCatalogConvert' type='function'/>
+     <exports symbol='xmlFreeCatalog' type='function'/>
+     <exports symbol='xmlLoadCatalogs' type='function'/>
+     <exports symbol='xmlCatalogLocalResolve' type='function'/>
+     <exports symbol='xmlACatalogAdd' type='function'/>
+     <exports symbol='xmlACatalogResolvePublic' type='function'/>
+     <exports symbol='xmlCatalogGetDefaults' type='function'/>
+     <exports symbol='xmlInitializeCatalog' type='function'/>
+     <exports symbol='xmlLoadACatalog' type='function'/>
+     <exports symbol='xmlCatalogAddLocal' type='function'/>
+     <exports symbol='xmlCatalogLocalResolveURI' type='function'/>
+     <exports symbol='xmlCatalogSetDefaultPrefer' type='function'/>
+     <exports symbol='xmlCatalogDump' type='function'/>
+     <exports symbol='xmlACatalogResolveURI' type='function'/>
+     <exports symbol='xmlCatalogCleanup' type='function'/>
+     <exports symbol='xmlCatalogAdd' type='function'/>
+     <exports symbol='xmlConvertSGMLCatalog' type='function'/>
+     <exports symbol='xmlCatalogResolvePublic' type='function'/>
+     <exports symbol='xmlCatalogGetSystem' type='function'/>
+     <exports symbol='xmlACatalogRemove' type='function'/>
+     <exports symbol='xmlNewCatalog' type='function'/>
+     <exports symbol='xmlLoadCatalog' type='function'/>
+     <exports symbol='xmlCatalogResolve' type='function'/>
+     <exports symbol='xmlParseCatalogFile' type='function'/>
+     <exports symbol='xmlCatalogSetDebug' type='function'/>
+     <exports symbol='xmlCatalogRemove' type='function'/>
+     <exports symbol='xmlCatalogIsEmpty' type='function'/>
+     <exports symbol='xmlCatalogGetPublic' type='function'/>
+     <exports symbol='xmlACatalogResolveSystem' type='function'/>
+     <exports symbol='xmlACatalogDump' type='function'/>
+     <exports symbol='xmlCatalogSetDefaults' type='function'/>
+     <exports symbol='xmlCatalogFreeLocal' type='function'/>
+     <exports symbol='xmlACatalogResolve' type='function'/>
+     <exports symbol='xmlCatalogResolveURI' type='function'/>
+     <exports symbol='xmlCatalogResolveSystem' type='function'/>
+     <exports symbol='xmlLoadSGMLSuperCatalog' type='function'/>
     </file>
     <file name='chvalid'>
      <summary>Unicode character range checking</summary>
      <description>this module exports interfaces for the character range validation APIs  This file is automatically generated from the cvs source definition files using the genChRanges.py Python script </description>
      <author>William Brack &lt;wbrack@mmm.com.hk&gt; </author>
-     <exports symbol='_xmlChSRange'/>
-     <exports symbol='xmlIsPubidChar_ch'/>
-     <exports symbol='xmlIsBlank'/>
-     <exports symbol='xmlChLRange'/>
-     <exports symbol='xmlIsIdeographicQ'/>
-     <exports symbol='xmlCharInRange'/>
-     <exports symbol='xmlIsBaseCharQ'/>
-     <exports symbol='xmlIsDigitQ'/>
-     <exports symbol='xmlIsExtenderGroup'/>
-     <exports symbol='xmlIsBaseChar_ch'/>
-     <exports symbol='xmlIsPubidCharQ'/>
-     <exports symbol='xmlIsCombining'/>
-     <exports symbol='xmlIsIdeographic'/>
-     <exports symbol='xmlChLRangePtr'/>
-     <exports symbol='xmlIsCharQ'/>
-     <exports symbol='_xmlChRangeGroup'/>
-     <exports symbol='xmlChRangeGroup'/>
-     <exports symbol='xmlIsChar_ch'/>
-     <exports symbol='xmlIsExtender'/>
-     <exports symbol='xmlIsDigitGroup'/>
-     <exports symbol='xmlIsChar'/>
-     <exports symbol='xmlIsBaseCharGroup'/>
-     <exports symbol='xmlIsDigit'/>
-     <exports symbol='xmlIsExtender_ch'/>
-     <exports symbol='xmlIsPubidChar'/>
-     <exports symbol='xmlChSRangePtr'/>
-     <exports symbol='xmlIsExtenderQ'/>
-     <exports symbol='xmlIsIdeographicGroup'/>
-     <exports symbol='xmlIsCombiningQ'/>
-     <exports symbol='xmlIsDigit_ch'/>
-     <exports symbol='xmlChRangeGroupPtr'/>
-     <exports symbol='xmlChSRange'/>
-     <exports symbol='_xmlChLRange'/>
-     <exports symbol='xmlIsPubidChar_tab'/>
-     <exports symbol='xmlIsCharGroup'/>
-     <exports symbol='xmlIsBlankQ'/>
-     <exports symbol='xmlIsBlank_ch'/>
-     <exports symbol='xmlIsCombiningGroup'/>
-     <exports symbol='xmlIsBaseChar'/>
+     <exports symbol='xmlIsExtender_ch' type='macro'/>
+     <exports symbol='xmlIsPubidCharQ' type='macro'/>
+     <exports symbol='xmlIsIdeographicQ' type='macro'/>
+     <exports symbol='xmlIsExtenderQ' type='macro'/>
+     <exports symbol='xmlIsCombiningQ' type='macro'/>
+     <exports symbol='xmlIsDigitQ' type='macro'/>
+     <exports symbol='xmlIsDigit_ch' type='macro'/>
+     <exports symbol='xmlIsBaseChar_ch' type='macro'/>
+     <exports symbol='xmlIsPubidChar_ch' type='macro'/>
+     <exports symbol='xmlIsBlankQ' type='macro'/>
+     <exports symbol='xmlIsCharQ' type='macro'/>
+     <exports symbol='xmlIsBaseCharQ' type='macro'/>
+     <exports symbol='xmlIsBlank_ch' type='macro'/>
+     <exports symbol='xmlIsChar_ch' type='macro'/>
+     <exports symbol='xmlChRangeGroupPtr' type='typedef'/>
+     <exports symbol='xmlChSRange' type='typedef'/>
+     <exports symbol='xmlChLRange' type='typedef'/>
+     <exports symbol='xmlChSRangePtr' type='typedef'/>
+     <exports symbol='xmlChRangeGroup' type='typedef'/>
+     <exports symbol='xmlChLRangePtr' type='typedef'/>
+     <exports symbol='_xmlChSRange' type='struct'/>
+     <exports symbol='_xmlChLRange' type='struct'/>
+     <exports symbol='_xmlChRangeGroup' type='struct'/>
+     <exports symbol='xmlIsDigitGroup' type='variable'/>
+     <exports symbol='xmlIsExtenderGroup' type='variable'/>
+     <exports symbol='xmlIsBaseCharGroup' type='variable'/>
+     <exports symbol='xmlIsPubidChar_tab' type='variable'/>
+     <exports symbol='xmlIsCharGroup' type='variable'/>
+     <exports symbol='xmlIsCombiningGroup' type='variable'/>
+     <exports symbol='xmlIsIdeographicGroup' type='variable'/>
+     <exports symbol='xmlIsPubidChar' type='function'/>
+     <exports symbol='xmlIsChar' type='function'/>
+     <exports symbol='xmlIsDigit' type='function'/>
+     <exports symbol='xmlIsCombining' type='function'/>
+     <exports symbol='xmlIsIdeographic' type='function'/>
+     <exports symbol='xmlIsExtender' type='function'/>
+     <exports symbol='xmlCharInRange' type='function'/>
+     <exports symbol='xmlIsBaseChar' type='function'/>
+     <exports symbol='xmlIsBlank' type='function'/>
     </file>
     <file name='debugXML'>
      <summary>Tree debugging APIs</summary>
      <description>Interfaces to a set of routines used for debugging the tree produced by the XML parser. </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlShellWrite'/>
-     <exports symbol='xmlDebugDumpEntities'/>
-     <exports symbol='_xmlShellCtxt'/>
-     <exports symbol='xmlShellCtxt'/>
-     <exports symbol='xmlDebugDumpDTD'/>
-     <exports symbol='xmlDebugDumpNode'/>
-     <exports symbol='xmlDebugDumpAttrList'/>
-     <exports symbol='xmlShellPrintNode'/>
-     <exports symbol='xmlLsOneNode'/>
-     <exports symbol='xmlShellReadlineFunc'/>
-     <exports symbol='xmlShellSave'/>
-     <exports symbol='xmlShellPwd'/>
-     <exports symbol='xmlBoolToText'/>
-     <exports symbol='xmlShellBase'/>
-     <exports symbol='xmlDebugDumpString'/>
-     <exports symbol='xmlDebugDumpAttr'/>
-     <exports symbol='xmlShellDu'/>
-     <exports symbol='xmlDebugDumpNodeList'/>
-     <exports symbol='xmlDebugDumpDocument'/>
-     <exports symbol='xmlShellCat'/>
-     <exports symbol='xmlShellDir'/>
-     <exports symbol='xmlLsCountNode'/>
-     <exports symbol='xmlShellValidate'/>
-     <exports symbol='xmlShellPrintXPathError'/>
-     <exports symbol='xmlShellCtxtPtr'/>
-     <exports symbol='xmlShellPrintXPathResult'/>
-     <exports symbol='xmlDebugDumpOneNode'/>
-     <exports symbol='xmlShellCmd'/>
-     <exports symbol='xmlShellLoad'/>
-     <exports symbol='xmlShellList'/>
-     <exports symbol='xmlDebugDumpDocumentHead'/>
-     <exports symbol='xmlShell'/>
+     <exports symbol='xmlShellCtxt' type='typedef'/>
+     <exports symbol='xmlShellCtxtPtr' type='typedef'/>
+     <exports symbol='_xmlShellCtxt' type='struct'/>
+     <exports symbol='xmlDebugDumpEntities' type='function'/>
+     <exports symbol='xmlShellBase' type='function'/>
+     <exports symbol='xmlShellCat' type='function'/>
+     <exports symbol='xmlDebugDumpDTD' type='function'/>
+     <exports symbol='xmlDebugDumpNode' type='function'/>
+     <exports symbol='xmlDebugDumpAttrList' type='function'/>
+     <exports symbol='xmlShellPrintNode' type='function'/>
+     <exports symbol='xmlLsOneNode' type='function'/>
+     <exports symbol='xmlShellReadlineFunc' type='function'/>
+     <exports symbol='xmlShellSave' type='function'/>
+     <exports symbol='xmlShellPwd' type='function'/>
+     <exports symbol='xmlBoolToText' type='function'/>
+     <exports symbol='xmlShellWrite' type='function'/>
+     <exports symbol='xmlDebugDumpString' type='function'/>
+     <exports symbol='xmlDebugDumpAttr' type='function'/>
+     <exports symbol='xmlShellDu' type='function'/>
+     <exports symbol='xmlDebugDumpNodeList' type='function'/>
+     <exports symbol='xmlDebugDumpDocument' type='function'/>
+     <exports symbol='xmlLsCountNode' type='function'/>
+     <exports symbol='xmlShellValidate' type='function'/>
+     <exports symbol='xmlShellPrintXPathError' type='function'/>
+     <exports symbol='xmlShellDir' type='function'/>
+     <exports symbol='xmlShellPrintXPathResult' type='function'/>
+     <exports symbol='xmlDebugDumpDocumentHead' type='function'/>
+     <exports symbol='xmlDebugDumpOneNode' type='function'/>
+     <exports symbol='xmlShellCmd' type='function'/>
+     <exports symbol='xmlShellList' type='function'/>
+     <exports symbol='xmlShell' type='function'/>
+     <exports symbol='xmlShellLoad' type='function'/>
     </file>
     <file name='dict'>
      <summary>string dictionnary</summary>
      <description>dictionary of reusable strings, just used to avoid allocation and freeing operations. </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlDictQLookup'/>
-     <exports symbol='xmlDictPtr'/>
-     <exports symbol='xmlDictReference'/>
-     <exports symbol='xmlDictSize'/>
-     <exports symbol='xmlDict'/>
-     <exports symbol='xmlDictCreate'/>
-     <exports symbol='xmlDictLookup'/>
-     <exports symbol='xmlDictFree'/>
-     <exports symbol='xmlDictOwns'/>
+     <exports symbol='xmlDict' type='typedef'/>
+     <exports symbol='xmlDictPtr' type='typedef'/>
+     <exports symbol='xmlDictQLookup' type='function'/>
+     <exports symbol='xmlDictReference' type='function'/>
+     <exports symbol='xmlDictSize' type='function'/>
+     <exports symbol='xmlDictCreate' type='function'/>
+     <exports symbol='xmlDictLookup' type='function'/>
+     <exports symbol='xmlDictFree' type='function'/>
+     <exports symbol='xmlDictOwns' type='function'/>
     </file>
     <file name='encoding'>
      <summary>interface for the encoding conversion functions</summary>
      <description>interface for the encoding conversion functions needed for XML basic encoding and iconv() support.  Related specs are rfc2044        (UTF-8 and UTF-16) F. Yergeau Alis Technologies [ISO-10646]    UTF-8 and UTF-16 in Annexes [ISO-8859-1]   ISO Latin-1 characters codes. [UNICODE]      The Unicode Consortium, &quot;The Unicode Standard -- Worldwide Character Encoding -- Version 1.0&quot;, Addison- Wesley, Volume 1, 1991, Volume 2, 1992.  UTF-8 is described in Unicode Technical Report #4. [US-ASCII]     Coded Character Set--7-bit American Standard Code for Information Interchange, ANSI X3.4-1986. </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlDelEncodingAlias'/>
-     <exports symbol='XML_CHAR_ENCODING_UCS4LE'/>
-     <exports symbol='XML_CHAR_ENCODING_ERROR'/>
-     <exports symbol='XML_CHAR_ENCODING_EUC_JP'/>
-     <exports symbol='XML_CHAR_ENCODING_EBCDIC'/>
-     <exports symbol='xmlGetEncodingAlias'/>
-     <exports symbol='xmlUTF8Strloc'/>
-     <exports symbol='xmlCleanupCharEncodingHandlers'/>
-     <exports symbol='XML_CHAR_ENCODING_ASCII'/>
-     <exports symbol='xmlFindCharEncodingHandler'/>
-     <exports symbol='xmlCharEncCloseFunc'/>
-     <exports symbol='XML_CHAR_ENCODING_UCS4_2143'/>
-     <exports symbol='xmlUTF8Size'/>
-     <exports symbol='xmlParseCharEncoding'/>
-     <exports symbol='xmlUTF8Strpos'/>
-     <exports symbol='XML_CHAR_ENCODING_NONE'/>
-     <exports symbol='XML_CHAR_ENCODING_UTF16BE'/>
-     <exports symbol='XML_CHAR_ENCODING_2022_JP'/>
-     <exports symbol='xmlCharEncodingHandler'/>
-     <exports symbol='XML_CHAR_ENCODING_SHIFT_JIS'/>
-     <exports symbol='xmlGetCharEncodingName'/>
-     <exports symbol='xmlCheckUTF8'/>
-     <exports symbol='UTF8Toisolat1'/>
-     <exports symbol='xmlCharEncInFunc'/>
-     <exports symbol='xmlAddEncodingAlias'/>
-     <exports symbol='xmlCharEncodingHandlerPtr'/>
-     <exports symbol='xmlCharEncOutFunc'/>
-     <exports symbol='xmlCharEncodingInputFunc'/>
-     <exports symbol='xmlGetCharEncodingHandler'/>
-     <exports symbol='xmlUTF8Strsub'/>
-     <exports symbol='xmlGetUTF8Char'/>
-     <exports symbol='_xmlCharEncodingHandler'/>
-     <exports symbol='XML_CHAR_ENCODING_UCS4BE'/>
-     <exports symbol='isolat1ToUTF8'/>
-     <exports symbol='xmlNewCharEncodingHandler'/>
-     <exports symbol='xmlInitCharEncodingHandlers'/>
-     <exports symbol='xmlRegisterCharEncodingHandler'/>
-     <exports symbol='xmlCharEncFirstLine'/>
-     <exports symbol='xmlCharEncoding'/>
-     <exports symbol='XML_CHAR_ENCODING_UTF16LE'/>
-     <exports symbol='xmlUTF8Strsize'/>
-     <exports symbol='XML_CHAR_ENCODING_UCS4_3412'/>
-     <exports symbol='xmlUTF8Charcmp'/>
-     <exports symbol='xmlUTF8Strlen'/>
-     <exports symbol='XML_CHAR_ENCODING_8859_8'/>
-     <exports symbol='XML_CHAR_ENCODING_8859_9'/>
-     <exports symbol='XML_CHAR_ENCODING_8859_6'/>
-     <exports symbol='XML_CHAR_ENCODING_8859_7'/>
-     <exports symbol='XML_CHAR_ENCODING_8859_4'/>
-     <exports symbol='XML_CHAR_ENCODING_8859_5'/>
-     <exports symbol='XML_CHAR_ENCODING_8859_2'/>
-     <exports symbol='XML_CHAR_ENCODING_8859_3'/>
-     <exports symbol='XML_CHAR_ENCODING_8859_1'/>
-     <exports symbol='xmlCharEncodingOutputFunc'/>
-     <exports symbol='xmlUTF8Strndup'/>
-     <exports symbol='XML_CHAR_ENCODING_UTF8'/>
-     <exports symbol='XML_CHAR_ENCODING_UCS2'/>
-     <exports symbol='xmlDetectCharEncoding'/>
-     <exports symbol='xmlCleanupEncodingAliases'/>
+     <exports symbol='XML_CHAR_ENCODING_UCS4LE' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_ERROR' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_8859_5' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_EBCDIC' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_ASCII' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_NONE' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_UCS4BE' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_UTF16LE' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_UCS4_2143' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_8859_8' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_8859_9' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_8859_6' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_8859_7' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_8859_4' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_EUC_JP' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_8859_2' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_8859_3' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_8859_1' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_UCS4_3412' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_UTF16BE' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_2022_JP' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_UTF8' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_SHIFT_JIS' type='enum'/>
+     <exports symbol='XML_CHAR_ENCODING_UCS2' type='enum'/>
+     <exports symbol='xmlCharEncoding' type='typedef'/>
+     <exports symbol='xmlCharEncodingHandler' type='typedef'/>
+     <exports symbol='xmlCharEncodingHandlerPtr' type='typedef'/>
+     <exports symbol='_xmlCharEncodingHandler' type='struct'/>
+     <exports symbol='xmlDelEncodingAlias' type='function'/>
+     <exports symbol='xmlGetEncodingAlias' type='function'/>
+     <exports symbol='UTF8Toisolat1' type='function'/>
+     <exports symbol='xmlUTF8Strloc' type='function'/>
+     <exports symbol='xmlAddEncodingAlias' type='function'/>
+     <exports symbol='xmlCharEncOutFunc' type='function'/>
+     <exports symbol='xmlCharEncodingInputFunc' type='function'/>
+     <exports symbol='xmlCleanupCharEncodingHandlers' type='function'/>
+     <exports symbol='xmlGetUTF8Char' type='function'/>
+     <exports symbol='isolat1ToUTF8' type='function'/>
+     <exports symbol='xmlFindCharEncodingHandler' type='function'/>
+     <exports symbol='xmlInitCharEncodingHandlers' type='function'/>
+     <exports symbol='xmlRegisterCharEncodingHandler' type='function'/>
+     <exports symbol='xmlCharEncFirstLine' type='function'/>
+     <exports symbol='xmlCharEncCloseFunc' type='function'/>
+     <exports symbol='xmlCheckUTF8' type='function'/>
+     <exports symbol='xmlUTF8Charcmp' type='function'/>
+     <exports symbol='xmlUTF8Strlen' type='function'/>
+     <exports symbol='xmlUTF8Size' type='function'/>
+     <exports symbol='xmlCleanupEncodingAliases' type='function'/>
+     <exports symbol='xmlUTF8Strsub' type='function'/>
+     <exports symbol='xmlUTF8Strpos' type='function'/>
+     <exports symbol='xmlParseCharEncoding' type='function'/>
+     <exports symbol='xmlCharEncodingOutputFunc' type='function'/>
+     <exports symbol='xmlUTF8Strndup' type='function'/>
+     <exports symbol='xmlGetCharEncodingName' type='function'/>
+     <exports symbol='xmlCharEncInFunc' type='function'/>
+     <exports symbol='xmlGetCharEncodingHandler' type='function'/>
+     <exports symbol='xmlUTF8Strsize' type='function'/>
+     <exports symbol='xmlDetectCharEncoding' type='function'/>
+     <exports symbol='xmlNewCharEncodingHandler' type='function'/>
     </file>
     <file name='entities'>
      <summary>interface for the XML entities handling</summary>
      <description>this module provides some of the entity API needed for the parser and applications. </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlAddDocEntity'/>
-     <exports symbol='XML_EXTERNAL_GENERAL_UNPARSED_ENTITY'/>
-     <exports symbol='xmlGetDtdEntity'/>
-     <exports symbol='xmlAddDtdEntity'/>
-     <exports symbol='xmlFreeEntitiesTable'/>
-     <exports symbol='XML_EXTERNAL_PARAMETER_ENTITY'/>
-     <exports symbol='xmlEntitiesTable'/>
-     <exports symbol='xmlEncodeSpecialChars'/>
-     <exports symbol='XML_INTERNAL_PARAMETER_ENTITY'/>
-     <exports symbol='XML_INTERNAL_GENERAL_ENTITY'/>
-     <exports symbol='xmlGetDocEntity'/>
-     <exports symbol='xmlEncodeEntities'/>
-     <exports symbol='xmlGetPredefinedEntity'/>
-     <exports symbol='xmlInitializePredefinedEntities'/>
-     <exports symbol='xmlEntitiesTablePtr'/>
-     <exports symbol='XML_EXTERNAL_GENERAL_PARSED_ENTITY'/>
-     <exports symbol='xmlEncodeEntitiesReentrant'/>
-     <exports symbol='xmlEntityType'/>
-     <exports symbol='XML_INTERNAL_PREDEFINED_ENTITY'/>
-     <exports symbol='xmlCopyEntitiesTable'/>
-     <exports symbol='xmlGetParameterEntity'/>
-     <exports symbol='xmlDumpEntitiesTable'/>
-     <exports symbol='xmlDumpEntityDecl'/>
-     <exports symbol='xmlCleanupPredefinedEntities'/>
-     <exports symbol='_xmlEntity'/>
-     <exports symbol='xmlCreateEntitiesTable'/>
+     <exports symbol='XML_EXTERNAL_GENERAL_PARSED_ENTITY' type='enum'/>
+     <exports symbol='XML_INTERNAL_PARAMETER_ENTITY' type='enum'/>
+     <exports symbol='XML_INTERNAL_GENERAL_ENTITY' type='enum'/>
+     <exports symbol='XML_EXTERNAL_GENERAL_UNPARSED_ENTITY' type='enum'/>
+     <exports symbol='XML_INTERNAL_PREDEFINED_ENTITY' type='enum'/>
+     <exports symbol='XML_EXTERNAL_PARAMETER_ENTITY' type='enum'/>
+     <exports symbol='xmlEntityType' type='typedef'/>
+     <exports symbol='xmlEntitiesTable' type='typedef'/>
+     <exports symbol='xmlEntitiesTablePtr' type='typedef'/>
+     <exports symbol='_xmlEntity' type='struct'/>
+     <exports symbol='xmlAddDocEntity' type='function'/>
+     <exports symbol='xmlEncodeEntitiesReentrant' type='function'/>
+     <exports symbol='xmlCreateEntitiesTable' type='function'/>
+     <exports symbol='xmlGetDtdEntity' type='function'/>
+     <exports symbol='xmlAddDtdEntity' type='function'/>
+     <exports symbol='xmlCopyEntitiesTable' type='function'/>
+     <exports symbol='xmlFreeEntitiesTable' type='function'/>
+     <exports symbol='xmlGetParameterEntity' type='function'/>
+     <exports symbol='xmlDumpEntitiesTable' type='function'/>
+     <exports symbol='xmlDumpEntityDecl' type='function'/>
+     <exports symbol='xmlCleanupPredefinedEntities' type='function'/>
+     <exports symbol='xmlEncodeSpecialChars' type='function'/>
+     <exports symbol='xmlEncodeEntities' type='function'/>
+     <exports symbol='xmlGetDocEntity' type='function'/>
+     <exports symbol='xmlInitializePredefinedEntities' type='function'/>
+     <exports symbol='xmlGetPredefinedEntity' type='function'/>
     </file>
     <file name='globals'>
      <summary>interface for all global variables of the library</summary>
      <description>all the global variables and thread handling for those variables is handled by this module.  The bottom of this file is automatically generated by build_glob.py based on the description file global.data </description>
      <author>Gary Pennington &lt;Gary.Pennington@uk.sun.com&gt;, Daniel Veillard </author>
-     <exports symbol='xmlThrDefSetStructuredErrorFunc'/>
-     <exports symbol='_xmlGlobalState'/>
-     <exports symbol='xmlInitializeGlobalState'/>
-     <exports symbol='xmlTreeIndentString'/>
-     <exports symbol='xmlThrDefBufferAllocScheme'/>
-     <exports symbol='xmlIndentTreeOutput'/>
-     <exports symbol='xmlThrDefPedanticParserDefaultValue'/>
-     <exports symbol='xmlBufferAllocScheme'/>
-     <exports symbol='xmlRegisterNodeDefault'/>
-     <exports symbol='xmlDefaultBufferSize'/>
-     <exports symbol='xmlRegisterNodeDefaultValue'/>
-     <exports symbol='xmlGetWarningsDefaultValue'/>
-     <exports symbol='xmlThrDefTreeIndentString'/>
-     <exports symbol='docbDefaultSAXHandler'/>
-     <exports symbol='xmlGenericErrorContext'/>
-     <exports symbol='xmlThrDefDefaultBufferSize'/>
-     <exports symbol='xmlThrDefLoadExtDtdDefaultValue'/>
-     <exports symbol='xmlDeregisterNodeDefaultValue'/>
-     <exports symbol='xmlGenericError'/>
-     <exports symbol='xmlDeregisterNodeDefault'/>
-     <exports symbol='xmlMalloc'/>
-     <exports symbol='xmlParserVersion'/>
-     <exports symbol='xmlStructuredError'/>
-     <exports symbol='xmlThrDefKeepBlanksDefaultValue'/>
-     <exports symbol='xmlSaveNoEmptyTags'/>
-     <exports symbol='xmlDeregisterNodeFunc'/>
-     <exports symbol='xmlPedanticParserDefaultValue'/>
-     <exports symbol='xmlParserDebugEntities'/>
-     <exports symbol='xmlGlobalStatePtr'/>
-     <exports symbol='xmlRealloc'/>
-     <exports symbol='xmlThrDefRegisterNodeDefault'/>
-     <exports symbol='xmlThrDefParserDebugEntities'/>
-     <exports symbol='xmlMemStrdup'/>
-     <exports symbol='htmlDefaultSAXHandler'/>
-     <exports symbol='xmlThrDefSetGenericErrorFunc'/>
-     <exports symbol='xmlGlobalState'/>
-     <exports symbol='xmlThrDefDoValidityCheckingDefaultValue'/>
-     <exports symbol='xmlCleanupGlobals'/>
-     <exports symbol='xmlDoValidityCheckingDefaultValue'/>
-     <exports symbol='xmlThrDefGetWarningsDefaultValue'/>
-     <exports symbol='xmlKeepBlanksDefaultValue'/>
-     <exports symbol='xmlThrDefDeregisterNodeDefault'/>
-     <exports symbol='xmlThrDefSubstituteEntitiesDefaultValue'/>
-     <exports symbol='xmlRegisterNodeFunc'/>
-     <exports symbol='xmlThrDefSaveNoEmptyTags'/>
-     <exports symbol='xmlMallocAtomic'/>
-     <exports symbol='xmlThrDefIndentTreeOutput'/>
-     <exports symbol='xmlSubstituteEntitiesDefaultValue'/>
-     <exports symbol='oldXMLWDcompatibility'/>
-     <exports symbol='xmlFree'/>
-     <exports symbol='xmlLoadExtDtdDefaultValue'/>
-     <exports symbol='xmlLastError'/>
-     <exports symbol='xmlInitGlobals'/>
-     <exports symbol='xmlLineNumbersDefaultValue'/>
-     <exports symbol='xmlThrDefLineNumbersDefaultValue'/>
-     <exports symbol='xmlDefaultSAXHandler'/>
-     <exports symbol='xmlDefaultSAXLocator'/>
+     <exports symbol='xmlGlobalStatePtr' type='typedef'/>
+     <exports symbol='xmlGlobalState' type='typedef'/>
+     <exports symbol='_xmlGlobalState' type='struct'/>
+     <exports symbol='xmlRealloc' type='variable'/>
+     <exports symbol='xmlStructuredError' type='variable'/>
+     <exports symbol='xmlLastError' type='variable'/>
+     <exports symbol='xmlDefaultSAXLocator' type='variable'/>
+     <exports symbol='xmlTreeIndentString' type='variable'/>
+     <exports symbol='xmlMemStrdup' type='variable'/>
+     <exports symbol='htmlDefaultSAXHandler' type='variable'/>
+     <exports symbol='xmlIndentTreeOutput' type='variable'/>
+     <exports symbol='xmlSaveNoEmptyTags' type='variable'/>
+     <exports symbol='xmlDefaultBufferSize' type='variable'/>
+     <exports symbol='xmlRegisterNodeDefaultValue' type='variable'/>
+     <exports symbol='xmlKeepBlanksDefaultValue' type='variable'/>
+     <exports symbol='xmlGetWarningsDefaultValue' type='variable'/>
+     <exports symbol='xmlMallocAtomic' type='variable'/>
+     <exports symbol='xmlSubstituteEntitiesDefaultValue' type='variable'/>
+     <exports symbol='xmlBufferAllocScheme' type='variable'/>
+     <exports symbol='docbDefaultSAXHandler' type='variable'/>
+     <exports symbol='xmlGenericErrorContext' type='variable'/>
+     <exports symbol='oldXMLWDcompatibility' type='variable'/>
+     <exports symbol='xmlFree' type='variable'/>
+     <exports symbol='xmlLoadExtDtdDefaultValue' type='variable'/>
+     <exports symbol='xmlDeregisterNodeDefaultValue' type='variable'/>
+     <exports symbol='xmlGenericError' type='variable'/>
+     <exports symbol='xmlMalloc' type='variable'/>
+     <exports symbol='xmlLineNumbersDefaultValue' type='variable'/>
+     <exports symbol='xmlParserVersion' type='variable'/>
+     <exports symbol='xmlDoValidityCheckingDefaultValue' type='variable'/>
+     <exports symbol='xmlDefaultSAXHandler' type='variable'/>
+     <exports symbol='xmlPedanticParserDefaultValue' type='variable'/>
+     <exports symbol='xmlParserDebugEntities' type='variable'/>
+     <exports symbol='xmlThrDefSetStructuredErrorFunc' type='function'/>
+     <exports symbol='xmlCleanupGlobals' type='function'/>
+     <exports symbol='xmlThrDefRegisterNodeDefault' type='function'/>
+     <exports symbol='xmlInitializeGlobalState' type='function'/>
+     <exports symbol='xmlThrDefBufferAllocScheme' type='function'/>
+     <exports symbol='xmlThrDefSetGenericErrorFunc' type='function'/>
+     <exports symbol='xmlThrDefDoValidityCheckingDefaultValue' type='function'/>
+     <exports symbol='xmlThrDefPedanticParserDefaultValue' type='function'/>
+     <exports symbol='xmlRegisterNodeDefault' type='function'/>
+     <exports symbol='xmlThrDefGetWarningsDefaultValue' type='function'/>
+     <exports symbol='xmlThrDefDeregisterNodeDefault' type='function'/>
+     <exports symbol='xmlThrDefSubstituteEntitiesDefaultValue' type='function'/>
+     <exports symbol='xmlRegisterNodeFunc' type='function'/>
+     <exports symbol='xmlThrDefSaveNoEmptyTags' type='function'/>
+     <exports symbol='xmlThrDefIndentTreeOutput' type='function'/>
+     <exports symbol='xmlThrDefDefaultBufferSize' type='function'/>
+     <exports symbol='xmlDeregisterNodeDefault' type='function'/>
+     <exports symbol='xmlInitGlobals' type='function'/>
+     <exports symbol='xmlThrDefLoadExtDtdDefaultValue' type='function'/>
+     <exports symbol='xmlThrDefLineNumbersDefaultValue' type='function'/>
+     <exports symbol='xmlThrDefKeepBlanksDefaultValue' type='function'/>
+     <exports symbol='xmlDeregisterNodeFunc' type='function'/>
+     <exports symbol='xmlThrDefParserDebugEntities' type='function'/>
+     <exports symbol='xmlThrDefTreeIndentString' type='function'/>
     </file>
     <file name='hash'>
      <summary>chained hash tables</summary>
      <author>Bjorn Reese &lt;bjorn.reese@systematic.dk&gt; </author>
-     <exports symbol='xmlHashScanFull'/>
-     <exports symbol='xmlHashDeallocator'/>
-     <exports symbol='xmlHashScannerFull'/>
-     <exports symbol='xmlHashCopy'/>
-     <exports symbol='xmlHashScanFull3'/>
-     <exports symbol='xmlHashUpdateEntry3'/>
-     <exports symbol='xmlHashScan'/>
-     <exports symbol='xmlHashLookup3'/>
-     <exports symbol='xmlHashLookup2'/>
-     <exports symbol='xmlHashUpdateEntry'/>
-     <exports symbol='xmlHashRemoveEntry'/>
-     <exports symbol='xmlHashRemoveEntry2'/>
-     <exports symbol='xmlHashQLookup3'/>
-     <exports symbol='xmlHashQLookup2'/>
-     <exports symbol='xmlHashAddEntry3'/>
-     <exports symbol='xmlHashScan3'/>
-     <exports symbol='xmlHashScanner'/>
-     <exports symbol='xmlHashAddEntry'/>
-     <exports symbol='xmlHashCopier'/>
-     <exports symbol='xmlHashCreate'/>
-     <exports symbol='xmlHashFree'/>
-     <exports symbol='xmlHashUpdateEntry2'/>
-     <exports symbol='xmlHashLookup'/>
-     <exports symbol='xmlHashTablePtr'/>
-     <exports symbol='xmlHashQLookup'/>
-     <exports symbol='xmlHashTable'/>
-     <exports symbol='xmlHashAddEntry2'/>
-     <exports symbol='xmlHashRemoveEntry3'/>
-     <exports symbol='xmlHashSize'/>
+     <exports symbol='xmlHashTable' type='typedef'/>
+     <exports symbol='xmlHashTablePtr' type='typedef'/>
+     <exports symbol='xmlHashScanFull' type='function'/>
+     <exports symbol='xmlHashDeallocator' type='function'/>
+     <exports symbol='xmlHashScannerFull' type='function'/>
+     <exports symbol='xmlHashCopy' type='function'/>
+     <exports symbol='xmlHashScanFull3' type='function'/>
+     <exports symbol='xmlHashUpdateEntry3' type='function'/>
+     <exports symbol='xmlHashScan' type='function'/>
+     <exports symbol='xmlHashLookup3' type='function'/>
+     <exports symbol='xmlHashLookup2' type='function'/>
+     <exports symbol='xmlHashUpdateEntry' type='function'/>
+     <exports symbol='xmlHashRemoveEntry' type='function'/>
+     <exports symbol='xmlHashRemoveEntry2' type='function'/>
+     <exports symbol='xmlHashQLookup3' type='function'/>
+     <exports symbol='xmlHashQLookup2' type='function'/>
+     <exports symbol='xmlHashAddEntry3' type='function'/>
+     <exports symbol='xmlHashScan3' type='function'/>
+     <exports symbol='xmlHashScanner' type='function'/>
+     <exports symbol='xmlHashAddEntry' type='function'/>
+     <exports symbol='xmlHashCopier' type='function'/>
+     <exports symbol='xmlHashCreate' type='function'/>
+     <exports symbol='xmlHashFree' type='function'/>
+     <exports symbol='xmlHashLookup' type='function'/>
+     <exports symbol='xmlHashQLookup' type='function'/>
+     <exports symbol='xmlHashUpdateEntry2' type='function'/>
+     <exports symbol='xmlHashAddEntry2' type='function'/>
+     <exports symbol='xmlHashRemoveEntry3' type='function'/>
+     <exports symbol='xmlHashSize' type='function'/>
     </file>
     <file name='list'>
      <summary>lists interfaces</summary>
      <description>this module implement the list support used in various place in the library. </description>
      <author>Gary Pennington &lt;Gary.Pennington@uk.sun.com&gt; </author>
-     <exports symbol='xmlListWalker'/>
-     <exports symbol='xmlLinkPtr'/>
-     <exports symbol='xmlListReverseWalk'/>
-     <exports symbol='xmlLinkGetData'/>
-     <exports symbol='xmlListInsert'/>
-     <exports symbol='xmlListEmpty'/>
-     <exports symbol='xmlListRemoveFirst'/>
-     <exports symbol='xmlListFront'/>
-     <exports symbol='xmlListSort'/>
-     <exports symbol='xmlListClear'/>
-     <exports symbol='xmlListDeallocator'/>
-     <exports symbol='xmlList'/>
-     <exports symbol='xmlLink'/>
-     <exports symbol='xmlListCreate'/>
-     <exports symbol='xmlListAppend'/>
-     <exports symbol='xmlListRemoveAll'/>
-     <exports symbol='xmlListDup'/>
-     <exports symbol='xmlListPtr'/>
-     <exports symbol='xmlListRemoveLast'/>
-     <exports symbol='xmlListWalk'/>
-     <exports symbol='xmlListReverse'/>
-     <exports symbol='xmlListDataCompare'/>
-     <exports symbol='xmlListSize'/>
-     <exports symbol='xmlListPushFront'/>
-     <exports symbol='xmlListEnd'/>
-     <exports symbol='xmlListCopy'/>
-     <exports symbol='xmlListPopBack'/>
-     <exports symbol='xmlListPushBack'/>
-     <exports symbol='xmlListPopFront'/>
-     <exports symbol='xmlListDelete'/>
-     <exports symbol='xmlListReverseSearch'/>
-     <exports symbol='xmlListSearch'/>
-     <exports symbol='xmlListMerge'/>
+     <exports symbol='xmlLink' type='typedef'/>
+     <exports symbol='xmlLinkPtr' type='typedef'/>
+     <exports symbol='xmlList' type='typedef'/>
+     <exports symbol='xmlListPtr' type='typedef'/>
+     <exports symbol='xmlListWalker' type='function'/>
+     <exports symbol='xmlListRemoveFirst' type='function'/>
+     <exports symbol='xmlListReverseWalk' type='function'/>
+     <exports symbol='xmlLinkGetData' type='function'/>
+     <exports symbol='xmlListInsert' type='function'/>
+     <exports symbol='xmlListEmpty' type='function'/>
+     <exports symbol='xmlListFront' type='function'/>
+     <exports symbol='xmlListSort' type='function'/>
+     <exports symbol='xmlListClear' type='function'/>
+     <exports symbol='xmlListDeallocator' type='function'/>
+     <exports symbol='xmlListMerge' type='function'/>
+     <exports symbol='xmlListCreate' type='function'/>
+     <exports symbol='xmlListAppend' type='function'/>
+     <exports symbol='xmlListRemoveAll' type='function'/>
+     <exports symbol='xmlListDup' type='function'/>
+     <exports symbol='xmlListReverse' type='function'/>
+     <exports symbol='xmlListRemoveLast' type='function'/>
+     <exports symbol='xmlListWalk' type='function'/>
+     <exports symbol='xmlListDataCompare' type='function'/>
+     <exports symbol='xmlListSize' type='function'/>
+     <exports symbol='xmlListPushFront' type='function'/>
+     <exports symbol='xmlListEnd' type='function'/>
+     <exports symbol='xmlListCopy' type='function'/>
+     <exports symbol='xmlListPopBack' type='function'/>
+     <exports symbol='xmlListPushBack' type='function'/>
+     <exports symbol='xmlListPopFront' type='function'/>
+     <exports symbol='xmlListDelete' type='function'/>
+     <exports symbol='xmlListReverseSearch' type='function'/>
+     <exports symbol='xmlListSearch' type='function'/>
     </file>
     <file name='nanoftp'>
      <summary>minimal FTP implementation</summary>
      <description>minimal FTP implementation allowing to fetch resources like external subset. </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlNanoFTPScanProxy'/>
-     <exports symbol='xmlNanoFTPQuit'/>
-     <exports symbol='xmlNanoFTPClose'/>
-     <exports symbol='ftpDataCallback'/>
-     <exports symbol='xmlNanoFTPGetResponse'/>
-     <exports symbol='ftpListCallback'/>
-     <exports symbol='xmlNanoFTPCwd'/>
-     <exports symbol='xmlNanoFTPCloseConnection'/>
-     <exports symbol='xmlNanoFTPProxy'/>
-     <exports symbol='xmlNanoFTPInit'/>
-     <exports symbol='xmlNanoFTPConnectTo'/>
-     <exports symbol='xmlNanoFTPList'/>
-     <exports symbol='xmlNanoFTPUpdateURL'/>
-     <exports symbol='xmlNanoFTPOpen'/>
-     <exports symbol='xmlNanoFTPConnect'/>
-     <exports symbol='xmlNanoFTPDele'/>
-     <exports symbol='xmlNanoFTPGet'/>
-     <exports symbol='xmlNanoFTPGetSocket'/>
-     <exports symbol='xmlNanoFTPNewCtxt'/>
-     <exports symbol='xmlNanoFTPCheckResponse'/>
-     <exports symbol='xmlNanoFTPRead'/>
-     <exports symbol='xmlNanoFTPFreeCtxt'/>
-     <exports symbol='xmlNanoFTPCleanup'/>
-     <exports symbol='xmlNanoFTPGetConnection'/>
+     <exports symbol='xmlNanoFTPScanProxy' type='function'/>
+     <exports symbol='xmlNanoFTPQuit' type='function'/>
+     <exports symbol='xmlNanoFTPClose' type='function'/>
+     <exports symbol='ftpDataCallback' type='function'/>
+     <exports symbol='xmlNanoFTPGetResponse' type='function'/>
+     <exports symbol='ftpListCallback' type='function'/>
+     <exports symbol='xmlNanoFTPCwd' type='function'/>
+     <exports symbol='xmlNanoFTPCloseConnection' type='function'/>
+     <exports symbol='xmlNanoFTPProxy' type='function'/>
+     <exports symbol='xmlNanoFTPInit' type='function'/>
+     <exports symbol='xmlNanoFTPConnectTo' type='function'/>
+     <exports symbol='xmlNanoFTPList' type='function'/>
+     <exports symbol='xmlNanoFTPUpdateURL' type='function'/>
+     <exports symbol='xmlNanoFTPOpen' type='function'/>
+     <exports symbol='xmlNanoFTPConnect' type='function'/>
+     <exports symbol='xmlNanoFTPDele' type='function'/>
+     <exports symbol='xmlNanoFTPGet' type='function'/>
+     <exports symbol='xmlNanoFTPGetSocket' type='function'/>
+     <exports symbol='xmlNanoFTPNewCtxt' type='function'/>
+     <exports symbol='xmlNanoFTPCheckResponse' type='function'/>
+     <exports symbol='xmlNanoFTPRead' type='function'/>
+     <exports symbol='xmlNanoFTPFreeCtxt' type='function'/>
+     <exports symbol='xmlNanoFTPCleanup' type='function'/>
+     <exports symbol='xmlNanoFTPGetConnection' type='function'/>
     </file>
     <file name='nanohttp'>
      <summary>minimal HTTP implementation</summary>
      <description>minimal HTTP implementation allowing to fetch resources like external subset. </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlNanoHTTPSave'/>
-     <exports symbol='xmlNanoHTTPRedir'/>
-     <exports symbol='xmlNanoHTTPAuthHeader'/>
-     <exports symbol='xmlNanoHTTPFetch'/>
-     <exports symbol='xmlNanoHTTPInit'/>
-     <exports symbol='xmlNanoHTTPMimeType'/>
-     <exports symbol='xmlNanoHTTPClose'/>
-     <exports symbol='xmlNanoHTTPCleanup'/>
-     <exports symbol='xmlNanoHTTPMethod'/>
-     <exports symbol='xmlNanoHTTPRead'/>
-     <exports symbol='xmlNanoHTTPOpen'/>
-     <exports symbol='xmlNanoHTTPOpenRedir'/>
-     <exports symbol='xmlNanoHTTPMethodRedir'/>
-     <exports symbol='xmlNanoHTTPScanProxy'/>
-     <exports symbol='xmlNanoHTTPEncoding'/>
-     <exports symbol='xmlNanoHTTPReturnCode'/>
+     <exports symbol='xmlNanoHTTPSave' type='function'/>
+     <exports symbol='xmlNanoHTTPRedir' type='function'/>
+     <exports symbol='xmlNanoHTTPAuthHeader' type='function'/>
+     <exports symbol='xmlNanoHTTPFetch' type='function'/>
+     <exports symbol='xmlNanoHTTPInit' type='function'/>
+     <exports symbol='xmlNanoHTTPMimeType' type='function'/>
+     <exports symbol='xmlNanoHTTPClose' type='function'/>
+     <exports symbol='xmlNanoHTTPCleanup' type='function'/>
+     <exports symbol='xmlNanoHTTPMethod' type='function'/>
+     <exports symbol='xmlNanoHTTPRead' type='function'/>
+     <exports symbol='xmlNanoHTTPOpen' type='function'/>
+     <exports symbol='xmlNanoHTTPOpenRedir' type='function'/>
+     <exports symbol='xmlNanoHTTPMethodRedir' type='function'/>
+     <exports symbol='xmlNanoHTTPScanProxy' type='function'/>
+     <exports symbol='xmlNanoHTTPEncoding' type='function'/>
+     <exports symbol='xmlNanoHTTPReturnCode' type='function'/>
     </file>
     <file name='parser'>
      <summary>the core parser module</summary>
      <description>Interfaces, constants and types related to the XML parser </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlSetupParserForBuffer'/>
-     <exports symbol='xmlCtxtReadFile'/>
-     <exports symbol='XML_PARSER_ENTITY_DECL'/>
-     <exports symbol='xmlStrcmp'/>
-     <exports symbol='_xmlParserCtxt'/>
-     <exports symbol='xmlParseMemory'/>
-     <exports symbol='xmlParseCtxtExternalEntity'/>
-     <exports symbol='XML_PARSER_SYSTEM_LITERAL'/>
-     <exports symbol='xmlParserNodeInfoSeq'/>
-     <exports symbol='xmlStrcasestr'/>
-     <exports symbol='xmlStrcat'/>
-     <exports symbol='attributeDeclSAXFunc'/>
-     <exports symbol='getEntitySAXFunc'/>
-     <exports symbol='xmlStrstr'/>
-     <exports symbol='XML_PARSER_PROLOG'/>
-     <exports symbol='startElementSAXFunc'/>
-     <exports symbol='XML_PARSE_NOWARNING'/>
-     <exports symbol='charactersSAXFunc'/>
-     <exports symbol='xmlClearNodeInfoSeq'/>
-     <exports symbol='xmlParseChunk'/>
-     <exports symbol='xmlReadMemory'/>
-     <exports symbol='xmlParseEntity'/>
-     <exports symbol='xmlRecoverFile'/>
-     <exports symbol='XML_PARSE_NOBLANKS'/>
-     <exports symbol='XML_PARSER_CDATA_SECTION'/>
-     <exports symbol='xmlStrdup'/>
-     <exports symbol='XML_PARSE_RECOVER'/>
-     <exports symbol='_xmlSAXLocator'/>
-     <exports symbol='unparsedEntityDeclSAXFunc'/>
-     <exports symbol='startElementNsSAX2Func'/>
-     <exports symbol='xmlCreateIOParserCtxt'/>
-     <exports symbol='referenceSAXFunc'/>
-     <exports symbol='xmlStrncat'/>
-     <exports symbol='hasExternalSubsetSAXFunc'/>
-     <exports symbol='xmlSAXHandlerV1Ptr'/>
-     <exports symbol='xmlStrPrintf'/>
-     <exports symbol='xmlSAXParseDoc'/>
-     <exports symbol='xmlStrndup'/>
-     <exports symbol='xmlCharStrdup'/>
-     <exports symbol='XML_PARSE_NOCDATA'/>
-     <exports symbol='XML_PARSE_SAX1'/>
-     <exports symbol='XML_PARSER_START'/>
-     <exports symbol='xmlNewIOInputStream'/>
-     <exports symbol='XML_PARSE_NONET'/>
-     <exports symbol='processingInstructionSAXFunc'/>
-     <exports symbol='xmlParseBalancedChunkMemoryRecover'/>
-     <exports symbol='xmlInitParser'/>
-     <exports symbol='XML_PARSER_CONTENT'/>
-     <exports symbol='errorSAXFunc'/>
-     <exports symbol='xmlParserInputState'/>
-     <exports symbol='xmlSAXParseMemory'/>
-     <exports symbol='xmlRecoverMemory'/>
-     <exports symbol='xmlExternalEntityLoader'/>
-     <exports symbol='hasInternalSubsetSAXFunc'/>
-     <exports symbol='xmlReadDoc'/>
-     <exports symbol='cdataBlockSAXFunc'/>
-     <exports symbol='XML_PARSER_EPILOG'/>
-     <exports symbol='XML_COMPLETE_ATTRS'/>
-     <exports symbol='xmlSAXParseFile'/>
-     <exports symbol='xmlParserInputDeallocate'/>
-     <exports symbol='xmlParserNodeInfoPtr'/>
-     <exports symbol='xmlCtxtReadIO'/>
-     <exports symbol='XML_PARSE_PEDANTIC'/>
-     <exports symbol='xmlSAXParseMemoryWithData'/>
-     <exports symbol='XML_PARSER_COMMENT'/>
-     <exports symbol='xmlParserFindNodeInfo'/>
-     <exports symbol='xmlGetFeature'/>
-     <exports symbol='XML_PARSER_PUBLIC_LITERAL'/>
-     <exports symbol='xmlParserNodeInfo'/>
-     <exports symbol='xmlStrchr'/>
-     <exports symbol='xmlIOParseDTD'/>
-     <exports symbol='xmlFreeParserCtxt'/>
-     <exports symbol='xmlParseDTD'/>
-     <exports symbol='XML_PARSE_NOENT'/>
-     <exports symbol='commentSAXFunc'/>
-     <exports symbol='xmlInitParserCtxt'/>
-     <exports symbol='attributeSAXFunc'/>
-     <exports symbol='XML_PARSE_NSCLEAN'/>
-     <exports symbol='xmlStrQEqual'/>
-     <exports symbol='XML_PARSER_DTD'/>
-     <exports symbol='xmlParserInputGrow'/>
-     <exports symbol='xmlCtxtReadMemory'/>
-     <exports symbol='externalSubsetSAXFunc'/>
-     <exports symbol='XML_PARSER_START_TAG'/>
-     <exports symbol='resolveEntitySAXFunc'/>
-     <exports symbol='_xmlSAXHandler'/>
-     <exports symbol='xmlParserOption'/>
-     <exports symbol='xmlPedanticParserDefault'/>
-     <exports symbol='xmlSAXParseEntity'/>
-     <exports symbol='xmlParseDoc'/>
-     <exports symbol='xmlParserAddNodeInfo'/>
-     <exports symbol='XML_SAX2_MAGIC'/>
-     <exports symbol='xmlSAXParseFileWithData'/>
-     <exports symbol='xmlLineNumbersDefault'/>
-     <exports symbol='xmlGetExternalEntityLoader'/>
-     <exports symbol='elementDeclSAXFunc'/>
-     <exports symbol='xmlCtxtUseOptions'/>
-     <exports symbol='xmlCreatePushParserCtxt'/>
-     <exports symbol='xmlCharStrndup'/>
-     <exports symbol='xmlCtxtReadFd'/>
-     <exports symbol='internalSubsetSAXFunc'/>
-     <exports symbol='xmlNewParserCtxt'/>
-     <exports symbol='endDocumentSAXFunc'/>
-     <exports symbol='xmlParseFile'/>
-     <exports symbol='xmlParserNodeInfoSeqPtr'/>
-     <exports symbol='xmlParseDocument'/>
-     <exports symbol='xmlStrncmp'/>
-     <exports symbol='setDocumentLocatorSAXFunc'/>
-     <exports symbol='endElementSAXFunc'/>
-     <exports symbol='XML_PARSER_ENTITY_VALUE'/>
-     <exports symbol='XML_DETECT_IDS'/>
-     <exports symbol='getParameterEntitySAXFunc'/>
-     <exports symbol='endElementNsSAX2Func'/>
-     <exports symbol='ignorableWhitespaceSAXFunc'/>
-     <exports symbol='xmlInitNodeInfoSeq'/>
-     <exports symbol='XML_PARSER_MISC'/>
-     <exports symbol='xmlStrlen'/>
-     <exports symbol='xmlSubstituteEntitiesDefault'/>
-     <exports symbol='xmlStrncasecmp'/>
-     <exports symbol='xmlParserFindNodeInfoIndex'/>
-     <exports symbol='xmlSAXUserParseMemory'/>
-     <exports symbol='xmlCtxtReset'/>
-     <exports symbol='xmlSetFeature'/>
-     <exports symbol='xmlStrEqual'/>
-     <exports symbol='xmlKeepBlanksDefault'/>
-     <exports symbol='xmlParserInputRead'/>
-     <exports symbol='xmlReadFile'/>
-     <exports symbol='_xmlParserNodeInfo'/>
-     <exports symbol='xmlGetFeaturesList'/>
-     <exports symbol='_xmlSAXHandlerV1'/>
-     <exports symbol='_xmlParserInput'/>
-     <exports symbol='XML_PARSE_NODICT'/>
-     <exports symbol='xmlCtxtReadDoc'/>
-     <exports symbol='XML_PARSER_PI'/>
-     <exports symbol='xmlSAXHandlerV1'/>
-     <exports symbol='xmlSAXUserParseFile'/>
-     <exports symbol='fatalErrorSAXFunc'/>
-     <exports symbol='xmlSAXParseDTD'/>
-     <exports symbol='XML_PARSER_END_TAG'/>
-     <exports symbol='XML_PARSE_DTDVALID'/>
-     <exports symbol='entityDeclSAXFunc'/>
-     <exports symbol='xmlLoadExternalEntity'/>
-     <exports symbol='XML_DEFAULT_VERSION'/>
-     <exports symbol='xmlStopParser'/>
-     <exports symbol='xmlReadFd'/>
-     <exports symbol='XML_PARSER_EOF'/>
-     <exports symbol='xmlParseExtParsedEnt'/>
-     <exports symbol='xmlReadIO'/>
-     <exports symbol='XML_PARSE_XINCLUDE'/>
-     <exports symbol='xmlStrVPrintf'/>
-     <exports symbol='xmlCreateDocParserCtxt'/>
-     <exports symbol='xmlStrsub'/>
-     <exports symbol='xmlParseBalancedChunkMemory'/>
-     <exports symbol='XML_PARSE_DTDLOAD'/>
-     <exports symbol='xmlRecoverDoc'/>
-     <exports symbol='XML_PARSE_DTDATTR'/>
-     <exports symbol='xmlCleanupParser'/>
-     <exports symbol='XML_PARSE_NOERROR'/>
-     <exports symbol='xmlStrcasecmp'/>
-     <exports symbol='xmlCtxtResetPush'/>
-     <exports symbol='isStandaloneSAXFunc'/>
-     <exports symbol='startDocumentSAXFunc'/>
-     <exports symbol='XML_SKIP_IDS'/>
-     <exports symbol='xmlClearParserCtxt'/>
-     <exports symbol='XML_PARSER_ATTRIBUTE_VALUE'/>
-     <exports symbol='xmlParseExternalEntity'/>
-     <exports symbol='XML_PARSER_IGNORE'/>
-     <exports symbol='_xmlParserNodeInfoSeq'/>
-     <exports symbol='notationDeclSAXFunc'/>
-     <exports symbol='warningSAXFunc'/>
-     <exports symbol='xmlSetExternalEntityLoader'/>
+     <exports symbol='XML_COMPLETE_ATTRS' type='macro'/>
+     <exports symbol='XML_SKIP_IDS' type='macro'/>
+     <exports symbol='XML_SAX2_MAGIC' type='macro'/>
+     <exports symbol='XML_DETECT_IDS' type='macro'/>
+     <exports symbol='XML_DEFAULT_VERSION' type='macro'/>
+     <exports symbol='XML_PARSE_NODICT' type='enum'/>
+     <exports symbol='XML_PARSER_ENTITY_DECL' type='enum'/>
+     <exports symbol='XML_PARSER_CONTENT' type='enum'/>
+     <exports symbol='XML_PARSE_NOBLANKS' type='enum'/>
+     <exports symbol='XML_PARSE_NOENT' type='enum'/>
+     <exports symbol='XML_PARSER_ENTITY_VALUE' type='enum'/>
+     <exports symbol='XML_PARSE_DTDLOAD' type='enum'/>
+     <exports symbol='XML_PARSER_SYSTEM_LITERAL' type='enum'/>
+     <exports symbol='XML_PARSER_PI' type='enum'/>
+     <exports symbol='XML_PARSE_NOWARNING' type='enum'/>
+     <exports symbol='XML_PARSE_NOERROR' type='enum'/>
+     <exports symbol='XML_PARSE_DTDATTR' type='enum'/>
+     <exports symbol='XML_PARSE_NSCLEAN' type='enum'/>
+     <exports symbol='XML_PARSER_PROLOG' type='enum'/>
+     <exports symbol='XML_PARSE_NONET' type='enum'/>
+     <exports symbol='XML_PARSER_EPILOG' type='enum'/>
+     <exports symbol='XML_PARSER_END_TAG' type='enum'/>
+     <exports symbol='XML_PARSE_NOCDATA' type='enum'/>
+     <exports symbol='XML_PARSE_SAX1' type='enum'/>
+     <exports symbol='XML_PARSE_DTDVALID' type='enum'/>
+     <exports symbol='XML_PARSER_DTD' type='enum'/>
+     <exports symbol='XML_PARSER_MISC' type='enum'/>
+     <exports symbol='XML_PARSER_ATTRIBUTE_VALUE' type='enum'/>
+     <exports symbol='XML_PARSER_START' type='enum'/>
+     <exports symbol='XML_PARSE_PEDANTIC' type='enum'/>
+     <exports symbol='XML_PARSER_START_TAG' type='enum'/>
+     <exports symbol='XML_PARSER_IGNORE' type='enum'/>
+     <exports symbol='XML_PARSER_EOF' type='enum'/>
+     <exports symbol='XML_PARSER_COMMENT' type='enum'/>
+     <exports symbol='XML_PARSER_PUBLIC_LITERAL' type='enum'/>
+     <exports symbol='XML_PARSER_CDATA_SECTION' type='enum'/>
+     <exports symbol='XML_PARSE_XINCLUDE' type='enum'/>
+     <exports symbol='XML_PARSE_RECOVER' type='enum'/>
+     <exports symbol='xmlParserNodeInfoSeqPtr' type='typedef'/>
+     <exports symbol='xmlSAXHandlerV1Ptr' type='typedef'/>
+     <exports symbol='xmlSAXHandlerV1' type='typedef'/>
+     <exports symbol='xmlParserInputState' type='typedef'/>
+     <exports symbol='xmlParserOption' type='typedef'/>
+     <exports symbol='xmlParserNodeInfoPtr' type='typedef'/>
+     <exports symbol='xmlParserNodeInfo' type='typedef'/>
+     <exports symbol='xmlParserNodeInfoSeq' type='typedef'/>
+     <exports symbol='_xmlParserNodeInfo' type='struct'/>
+     <exports symbol='_xmlSAXHandler' type='struct'/>
+     <exports symbol='_xmlParserNodeInfoSeq' type='struct'/>
+     <exports symbol='_xmlParserCtxt' type='struct'/>
+     <exports symbol='_xmlSAXHandlerV1' type='struct'/>
+     <exports symbol='_xmlParserInput' type='struct'/>
+     <exports symbol='_xmlSAXLocator' type='struct'/>
+     <exports symbol='xmlParseDoc' type='function'/>
+     <exports symbol='xmlStrndup' type='function'/>
+     <exports symbol='xmlCtxtReadFile' type='function'/>
+     <exports symbol='xmlSetupParserForBuffer' type='function'/>
+     <exports symbol='xmlParseCtxtExternalEntity' type='function'/>
+     <exports symbol='xmlRecoverFile' type='function'/>
+     <exports symbol='xmlStrcasestr' type='function'/>
+     <exports symbol='xmlStrcat' type='function'/>
+     <exports symbol='attributeDeclSAXFunc' type='function'/>
+     <exports symbol='getEntitySAXFunc' type='function'/>
+     <exports symbol='xmlStrstr' type='function'/>
+     <exports symbol='xmlLineNumbersDefault' type='function'/>
+     <exports symbol='xmlGetExternalEntityLoader' type='function'/>
+     <exports symbol='elementDeclSAXFunc' type='function'/>
+     <exports symbol='startElementSAXFunc' type='function'/>
+     <exports symbol='charactersSAXFunc' type='function'/>
+     <exports symbol='xmlClearNodeInfoSeq' type='function'/>
+     <exports symbol='xmlParseChunk' type='function'/>
+     <exports symbol='xmlStrQEqual' type='function'/>
+     <exports symbol='xmlCtxtUseOptions' type='function'/>
+     <exports symbol='xmlParseEntity' type='function'/>
+     <exports symbol='xmlCreatePushParserCtxt' type='function'/>
+     <exports symbol='xmlParserAddNodeInfo' type='function'/>
+     <exports symbol='xmlCtxtReadFd' type='function'/>
+     <exports symbol='internalSubsetSAXFunc' type='function'/>
+     <exports symbol='xmlStrdup' type='function'/>
+     <exports symbol='xmlNewParserCtxt' type='function'/>
+     <exports symbol='endDocumentSAXFunc' type='function'/>
+     <exports symbol='xmlParseFile' type='function'/>
+     <exports symbol='unparsedEntityDeclSAXFunc' type='function'/>
+     <exports symbol='xmlParseDocument' type='function'/>
+     <exports symbol='xmlStrncmp' type='function'/>
+     <exports symbol='xmlCreateIOParserCtxt' type='function'/>
+     <exports symbol='xmlStrncasecmp' type='function'/>
+     <exports symbol='referenceSAXFunc' type='function'/>
+     <exports symbol='xmlStrncat' type='function'/>
+     <exports symbol='getParameterEntitySAXFunc' type='function'/>
+     <exports symbol='ignorableWhitespaceSAXFunc' type='function'/>
+     <exports symbol='xmlStrPrintf' type='function'/>
+     <exports symbol='xmlSAXParseDoc' type='function'/>
+     <exports symbol='xmlReadMemory' type='function'/>
+     <exports symbol='xmlInitNodeInfoSeq' type='function'/>
+     <exports symbol='xmlStrVPrintf' type='function'/>
+     <exports symbol='xmlParseMemory' type='function'/>
+     <exports symbol='xmlStrlen' type='function'/>
+     <exports symbol='xmlSubstituteEntitiesDefault' type='function'/>
+     <exports symbol='endElementSAXFunc' type='function'/>
+     <exports symbol='xmlCtxtReadMemory' type='function'/>
+     <exports symbol='xmlParserFindNodeInfoIndex' type='function'/>
+     <exports symbol='xmlSAXParseFileWithData' type='function'/>
+     <exports symbol='xmlCtxtReset' type='function'/>
+     <exports symbol='xmlRecoverDoc' type='function'/>
+     <exports symbol='xmlNewIOInputStream' type='function'/>
+     <exports symbol='xmlStrEqual' type='function'/>
+     <exports symbol='xmlKeepBlanksDefault' type='function'/>
+     <exports symbol='xmlReadFile' type='function'/>
+     <exports symbol='xmlParserInputRead' type='function'/>
+     <exports symbol='xmlInitParser' type='function'/>
+     <exports symbol='xmlStrcmp' type='function'/>
+     <exports symbol='xmlGetFeaturesList' type='function'/>
+     <exports symbol='xmlCharStrndup' type='function'/>
+     <exports symbol='xmlSetFeature' type='function'/>
+     <exports symbol='errorSAXFunc' type='function'/>
+     <exports symbol='xmlCtxtReadDoc' type='function'/>
+     <exports symbol='xmlSAXParseMemory' type='function'/>
+     <exports symbol='xmlRecoverMemory' type='function'/>
+     <exports symbol='xmlExternalEntityLoader' type='function'/>
+     <exports symbol='startElementNsSAX2Func' type='function'/>
+     <exports symbol='xmlSAXUserParseFile' type='function'/>
+     <exports symbol='hasInternalSubsetSAXFunc' type='function'/>
+     <exports symbol='fatalErrorSAXFunc' type='function'/>
+     <exports symbol='xmlSAXParseDTD' type='function'/>
+     <exports symbol='cdataBlockSAXFunc' type='function'/>
+     <exports symbol='xmlParserFindNodeInfo' type='function'/>
+     <exports symbol='xmlSAXParseFile' type='function'/>
+     <exports symbol='entityDeclSAXFunc' type='function'/>
+     <exports symbol='xmlLoadExternalEntity' type='function'/>
+     <exports symbol='xmlParserInputDeallocate' type='function'/>
+     <exports symbol='xmlCtxtReadIO' type='function'/>
+     <exports symbol='xmlStopParser' type='function'/>
+     <exports symbol='xmlReadFd' type='function'/>
+     <exports symbol='xmlSAXParseMemoryWithData' type='function'/>
+     <exports symbol='processingInstructionSAXFunc' type='function'/>
+     <exports symbol='xmlParseExtParsedEnt' type='function'/>
+     <exports symbol='xmlReadIO' type='function'/>
+     <exports symbol='xmlGetFeature' type='function'/>
+     <exports symbol='xmlParseBalancedChunkMemoryRecover' type='function'/>
+     <exports symbol='xmlCharStrdup' type='function'/>
+     <exports symbol='xmlStrchr' type='function'/>
+     <exports symbol='xmlIOParseDTD' type='function'/>
+     <exports symbol='xmlFreeParserCtxt' type='function'/>
+     <exports symbol='xmlCreateDocParserCtxt' type='function'/>
+     <exports symbol='xmlStrsub' type='function'/>
+     <exports symbol='xmlSAXUserParseMemory' type='function'/>
+     <exports symbol='xmlParseDTD' type='function'/>
+     <exports symbol='xmlParseBalancedChunkMemory' type='function'/>
+     <exports symbol='notationDeclSAXFunc' type='function'/>
+     <exports symbol='endElementNsSAX2Func' type='function'/>
+     <exports symbol='commentSAXFunc' type='function'/>
+     <exports symbol='xmlCleanupParser' type='function'/>
+     <exports symbol='attributeSAXFunc' type='function'/>
+     <exports symbol='xmlStrcasecmp' type='function'/>
+     <exports symbol='hasExternalSubsetSAXFunc' type='function'/>
+     <exports symbol='isStandaloneSAXFunc' type='function'/>
+     <exports symbol='startDocumentSAXFunc' type='function'/>
+     <exports symbol='xmlInitParserCtxt' type='function'/>
+     <exports symbol='xmlClearParserCtxt' type='function'/>
+     <exports symbol='xmlParserInputGrow' type='function'/>
+     <exports symbol='xmlParseExternalEntity' type='function'/>
+     <exports symbol='xmlCtxtResetPush' type='function'/>
+     <exports symbol='externalSubsetSAXFunc' type='function'/>
+     <exports symbol='resolveEntitySAXFunc' type='function'/>
+     <exports symbol='setDocumentLocatorSAXFunc' type='function'/>
+     <exports symbol='xmlSetExternalEntityLoader' type='function'/>
+     <exports symbol='xmlPedanticParserDefault' type='function'/>
+     <exports symbol='warningSAXFunc' type='function'/>
+     <exports symbol='xmlSAXParseEntity' type='function'/>
+     <exports symbol='xmlReadDoc' type='function'/>
     </file>
     <file name='parserInternals'>
      <summary>internals routines exported by the parser.</summary>
      <description>this module exports a number of internal parsing routines they are not really all intended for applications but can prove useful doing low level processing. </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlParseAttValue'/>
-     <exports symbol='xmlCreateMemoryParserCtxt'/>
-     <exports symbol='xmlParseAttributeListDecl'/>
-     <exports symbol='nodePop'/>
-     <exports symbol='xmlSkipBlankChars'/>
-     <exports symbol='IS_CHAR'/>
-     <exports symbol='xmlParseName'/>
-     <exports symbol='xmlParseEncName'/>
-     <exports symbol='nodePush'/>
-     <exports symbol='xmlSwitchEncoding'/>
-     <exports symbol='xmlParseNotationDecl'/>
-     <exports symbol='xmlParseExternalSubset'/>
-     <exports symbol='IS_PUBIDCHAR'/>
-     <exports symbol='xmlSwitchToEncoding'/>
-     <exports symbol='xmlParseMisc'/>
-     <exports symbol='xmlSwitchInputEncoding'/>
-     <exports symbol='IS_COMBINING_CH'/>
-     <exports symbol='xmlNewStringInputStream'/>
-     <exports symbol='xmlParseExternalID'/>
-     <exports symbol='xmlParseEntityRef'/>
-     <exports symbol='xmlScanName'/>
-     <exports symbol='xmlParseElementDecl'/>
-     <exports symbol='xmlParseAttribute'/>
-     <exports symbol='xmlParseEndTag'/>
-     <exports symbol='xmlParseEncodingDecl'/>
-     <exports symbol='htmlInitAutoClose'/>
-     <exports symbol='IS_LETTER'/>
-     <exports symbol='IS_EXTENDER_CH'/>
-     <exports symbol='htmlCreateFileParserCtxt'/>
-     <exports symbol='xmlCreateEntityParserCtxt'/>
-     <exports symbol='xmlParseNotationType'/>
-     <exports symbol='inputPush'/>
-     <exports symbol='namePush'/>
-     <exports symbol='xmlStringLenDecodeEntities'/>
-     <exports symbol='xmlNewEntityInputStream'/>
-     <exports symbol='namePop'/>
-     <exports symbol='xmlSplitQName'/>
-     <exports symbol='MOVETO_ENDTAG'/>
-     <exports symbol='xmlParseContent'/>
-     <exports symbol='xmlStringComment'/>
-     <exports symbol='SKIP_EOL'/>
-     <exports symbol='xmlParseMarkupDecl'/>
-     <exports symbol='xmlNewInputStream'/>
-     <exports symbol='xmlParserHandleReference'/>
-     <exports symbol='xmlNamespaceParseQName'/>
-     <exports symbol='xmlParsePITarget'/>
-     <exports symbol='IS_LETTER_CH'/>
-     <exports symbol='xmlParseElementContentDecl'/>
-     <exports symbol='XML_SUBSTITUTE_NONE'/>
-     <exports symbol='xmlNewInputFromFile'/>
-     <exports symbol='inputPop'/>
-     <exports symbol='xmlParserHandlePEReference'/>
-     <exports symbol='xmlPopInput'/>
-     <exports symbol='xmlParsePEReference'/>
-     <exports symbol='xmlPushInput'/>
-     <exports symbol='xmlStringTextNoenc'/>
-     <exports symbol='xmlParseEntityValue'/>
-     <exports symbol='xmlStringDecodeEntities'/>
-     <exports symbol='xmlCreateFileParserCtxt'/>
-     <exports symbol='xmlParseNamespace'/>
-     <exports symbol='XML_SUBSTITUTE_REF'/>
-     <exports symbol='IS_BLANK'/>
-     <exports symbol='xmlParseCharRef'/>
-     <exports symbol='xmlParseVersionNum'/>
-     <exports symbol='xmlParseElement'/>
-     <exports symbol='IS_BYTE_CHAR'/>
-     <exports symbol='xmlParseTextDecl'/>
-     <exports symbol='xmlParseXMLDecl'/>
-     <exports symbol='xmlEntityReferenceFunc'/>
-     <exports symbol='xmlParserMaxDepth'/>
-     <exports symbol='xmlParseElementMixedContentDecl'/>
-     <exports symbol='xmlCopyCharMultiByte'/>
-     <exports symbol='xmlParseElementChildrenContentDecl'/>
-     <exports symbol='xmlParseQuotedString'/>
-     <exports symbol='IS_DIGIT_CH'/>
-     <exports symbol='xmlParseCharData'/>
-     <exports symbol='IS_EXTENDER'/>
-     <exports symbol='xmlNamespaceParseNSDef'/>
-     <exports symbol='xmlParseCDSect'/>
-     <exports symbol='xmlParseVersionInfo'/>
-     <exports symbol='xmlDecodeEntities'/>
-     <exports symbol='xmlParseComment'/>
-     <exports symbol='xmlErrMemory'/>
-     <exports symbol='xmlHandleEntity'/>
-     <exports symbol='xmlCurrentChar'/>
-     <exports symbol='xmlNamespaceParseNCName'/>
-     <exports symbol='xmlParsePI'/>
-     <exports symbol='xmlParseNmtoken'/>
-     <exports symbol='IS_IDEOGRAPHIC'/>
-     <exports symbol='MOVETO_STARTTAG'/>
-     <exports symbol='xmlParserInputShrink'/>
-     <exports symbol='xmlParseReference'/>
-     <exports symbol='xmlCreateURLParserCtxt'/>
-     <exports symbol='xmlSetEntityReferenceFunc'/>
-     <exports symbol='xmlFreeInputStream'/>
-     <exports symbol='IS_DIGIT'/>
-     <exports symbol='xmlParsePubidLiteral'/>
-     <exports symbol='xmlStringText'/>
-     <exports symbol='xmlStringCurrentChar'/>
-     <exports symbol='XML_SUBSTITUTE_PEREF'/>
-     <exports symbol='xmlParseDefaultDecl'/>
-     <exports symbol='INPUT_CHUNK'/>
-     <exports symbol='xmlIsLetter'/>
-     <exports symbol='xmlCheckLanguageID'/>
-     <exports symbol='xmlCopyChar'/>
-     <exports symbol='xmlNextChar'/>
-     <exports symbol='IS_BLANK_CH'/>
-     <exports symbol='xmlParseStartTag'/>
-     <exports symbol='xmlParseEnumerationType'/>
-     <exports symbol='xmlParseSDDecl'/>
-     <exports symbol='xmlParseAttributeType'/>
-     <exports symbol='xmlParseSystemLiteral'/>
-     <exports symbol='xmlParseEnumeratedType'/>
-     <exports symbol='IS_COMBINING'/>
-     <exports symbol='XML_MAX_NAMELEN'/>
-     <exports symbol='IS_BASECHAR'/>
-     <exports symbol='xmlParseDocTypeDecl'/>
-     <exports symbol='XML_SUBSTITUTE_BOTH'/>
-     <exports symbol='IS_PUBIDCHAR_CH'/>
-     <exports symbol='IS_CHAR_CH'/>
-     <exports symbol='xmlParseEntityDecl'/>
+     <exports symbol='XML_SUBSTITUTE_REF' type='macro'/>
+     <exports symbol='IS_BLANK' type='macro'/>
+     <exports symbol='IS_EXTENDER_CH' type='macro'/>
+     <exports symbol='IS_BYTE_CHAR' type='macro'/>
+     <exports symbol='IS_DIGIT' type='macro'/>
+     <exports symbol='IS_PUBIDCHAR' type='macro'/>
+     <exports symbol='XML_SUBSTITUTE_PEREF' type='macro'/>
+     <exports symbol='MOVETO_ENDTAG' type='macro'/>
+     <exports symbol='IS_DIGIT_CH' type='macro'/>
+     <exports symbol='SKIP_EOL' type='macro'/>
+     <exports symbol='IS_EXTENDER' type='macro'/>
+     <exports symbol='IS_CHAR' type='macro'/>
+     <exports symbol='IS_COMBINING_CH' type='macro'/>
+     <exports symbol='IS_PUBIDCHAR_CH' type='macro'/>
+     <exports symbol='IS_LETTER_CH' type='macro'/>
+     <exports symbol='XML_SUBSTITUTE_NONE' type='macro'/>
+     <exports symbol='IS_BLANK_CH' type='macro'/>
+     <exports symbol='IS_COMBINING' type='macro'/>
+     <exports symbol='XML_MAX_NAMELEN' type='macro'/>
+     <exports symbol='IS_LETTER' type='macro'/>
+     <exports symbol='IS_BASECHAR' type='macro'/>
+     <exports symbol='INPUT_CHUNK' type='macro'/>
+     <exports symbol='IS_IDEOGRAPHIC' type='macro'/>
+     <exports symbol='MOVETO_STARTTAG' type='macro'/>
+     <exports symbol='IS_CHAR_CH' type='macro'/>
+     <exports symbol='XML_SUBSTITUTE_BOTH' type='macro'/>
+     <exports symbol='xmlStringTextNoenc' type='variable'/>
+     <exports symbol='xmlStringComment' type='variable'/>
+     <exports symbol='xmlStringText' type='variable'/>
+     <exports symbol='xmlParserMaxDepth' type='variable'/>
+     <exports symbol='xmlParseAttValue' type='function'/>
+     <exports symbol='xmlCreateMemoryParserCtxt' type='function'/>
+     <exports symbol='xmlParseAttributeListDecl' type='function'/>
+     <exports symbol='nodePop' type='function'/>
+     <exports symbol='xmlParseName' type='function'/>
+     <exports symbol='xmlParseEncName' type='function'/>
+     <exports symbol='xmlParseEntityRef' type='function'/>
+     <exports symbol='nodePush' type='function'/>
+     <exports symbol='xmlSwitchEncoding' type='function'/>
+     <exports symbol='xmlParseNotationDecl' type='function'/>
+     <exports symbol='xmlParseExternalSubset' type='function'/>
+     <exports symbol='xmlSwitchToEncoding' type='function'/>
+     <exports symbol='xmlParseMisc' type='function'/>
+     <exports symbol='xmlSwitchInputEncoding' type='function'/>
+     <exports symbol='xmlNewStringInputStream' type='function'/>
+     <exports symbol='xmlParseExternalID' type='function'/>
+     <exports symbol='xmlSkipBlankChars' type='function'/>
+     <exports symbol='xmlScanName' type='function'/>
+     <exports symbol='xmlParseElementDecl' type='function'/>
+     <exports symbol='xmlParseAttribute' type='function'/>
+     <exports symbol='xmlParseEndTag' type='function'/>
+     <exports symbol='xmlParseEncodingDecl' type='function'/>
+     <exports symbol='htmlInitAutoClose' type='function'/>
+     <exports symbol='xmlParseMarkupDecl' type='function'/>
+     <exports symbol='htmlCreateFileParserCtxt' type='function'/>
+     <exports symbol='xmlCreateEntityParserCtxt' type='function'/>
+     <exports symbol='inputPush' type='function'/>
+     <exports symbol='namePush' type='function'/>
+     <exports symbol='xmlStringLenDecodeEntities' type='function'/>
+     <exports symbol='xmlNewEntityInputStream' type='function'/>
+     <exports symbol='namePop' type='function'/>
+     <exports symbol='xmlSplitQName' type='function'/>
+     <exports symbol='xmlParseContent' type='function'/>
+     <exports symbol='xmlParseNamespace' type='function'/>
+     <exports symbol='xmlNewInputStream' type='function'/>
+     <exports symbol='xmlParserHandleReference' type='function'/>
+     <exports symbol='xmlNamespaceParseQName' type='function'/>
+     <exports symbol='xmlParsePITarget' type='function'/>
+     <exports symbol='xmlParseElementContentDecl' type='function'/>
+     <exports symbol='xmlNewInputFromFile' type='function'/>
+     <exports symbol='xmlDecodeEntities' type='function'/>
+     <exports symbol='xmlParserHandlePEReference' type='function'/>
+     <exports symbol='xmlPopInput' type='function'/>
+     <exports symbol='xmlParsePubidLiteral' type='function'/>
+     <exports symbol='xmlPushInput' type='function'/>
+     <exports symbol='xmlParseEntityValue' type='function'/>
+     <exports symbol='xmlStringDecodeEntities' type='function'/>
+     <exports symbol='xmlCreateFileParserCtxt' type='function'/>
+     <exports symbol='xmlParseCharRef' type='function'/>
+     <exports symbol='xmlParseVersionNum' type='function'/>
+     <exports symbol='xmlParseElement' type='function'/>
+     <exports symbol='xmlParseTextDecl' type='function'/>
+     <exports symbol='xmlParseXMLDecl' type='function'/>
+     <exports symbol='xmlEntityReferenceFunc' type='function'/>
+     <exports symbol='xmlParseElementMixedContentDecl' type='function'/>
+     <exports symbol='xmlCopyCharMultiByte' type='function'/>
+     <exports symbol='xmlParseElementChildrenContentDecl' type='function'/>
+     <exports symbol='xmlParseQuotedString' type='function'/>
+     <exports symbol='xmlParseCharData' type='function'/>
+     <exports symbol='xmlNamespaceParseNSDef' type='function'/>
+     <exports symbol='xmlParseCDSect' type='function'/>
+     <exports symbol='xmlParseVersionInfo' type='function'/>
+     <exports symbol='xmlStringCurrentChar' type='function'/>
+     <exports symbol='xmlParseEnumeratedType' type='function'/>
+     <exports symbol='xmlErrMemory' type='function'/>
+     <exports symbol='xmlHandleEntity' type='function'/>
+     <exports symbol='xmlCurrentChar' type='function'/>
+     <exports symbol='xmlNamespaceParseNCName' type='function'/>
+     <exports symbol='xmlParseNmtoken' type='function'/>
+     <exports symbol='xmlParseNotationType' type='function'/>
+     <exports symbol='xmlParserInputShrink' type='function'/>
+     <exports symbol='xmlParseReference' type='function'/>
+     <exports symbol='xmlSetEntityReferenceFunc' type='function'/>
+     <exports symbol='xmlFreeInputStream' type='function'/>
+     <exports symbol='xmlParsePEReference' type='function'/>
+     <exports symbol='xmlParseDefaultDecl' type='function'/>
+     <exports symbol='xmlParseDocTypeDecl' type='function'/>
+     <exports symbol='xmlIsLetter' type='function'/>
+     <exports symbol='xmlCheckLanguageID' type='function'/>
+     <exports symbol='xmlCopyChar' type='function'/>
+     <exports symbol='inputPop' type='function'/>
+     <exports symbol='xmlNextChar' type='function'/>
+     <exports symbol='xmlParseEnumerationType' type='function'/>
+     <exports symbol='xmlParseSDDecl' type='function'/>
+     <exports symbol='xmlParseAttributeType' type='function'/>
+     <exports symbol='xmlParseComment' type='function'/>
+     <exports symbol='xmlParsePI' type='function'/>
+     <exports symbol='xmlCreateURLParserCtxt' type='function'/>
+     <exports symbol='xmlParseStartTag' type='function'/>
+     <exports symbol='xmlParseSystemLiteral' type='function'/>
+     <exports symbol='xmlParseEntityDecl' type='function'/>
     </file>
     <file name='relaxng'>
      <summary>implementation of the Relax-NG validation</summary>
      <description>implementation of the Relax-NG validation </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlRelaxNGFreeValidCtxt'/>
-     <exports symbol='XML_RELAXNG_ERR_DUPID'/>
-     <exports symbol='XML_RELAXNG_ERR_VALELEM'/>
-     <exports symbol='XML_RELAXNG_ERR_ATTRVALID'/>
-     <exports symbol='xmlRelaxNGSetValidErrors'/>
-     <exports symbol='XML_RELAXNG_ERR_LISTELEM'/>
-     <exports symbol='xmlRelaxNGSetParserErrors'/>
-     <exports symbol='XML_RELAXNG_ERR_LISTEXTRA'/>
-     <exports symbol='XML_RELAXNG_ERR_ATTRNONS'/>
-     <exports symbol='XML_RELAXNG_ERR_EXTRADATA'/>
-     <exports symbol='xmlRelaxNGNewMemParserCtxt'/>
-     <exports symbol='XML_RELAXNG_ERR_ELEMNONS'/>
-     <exports symbol='XML_RELAXNG_ERR_ELEMEXTRANS'/>
-     <exports symbol='xmlRelaxNGValidatePopElement'/>
-     <exports symbol='xmlRelaxNGNewValidCtxt'/>
-     <exports symbol='XML_RELAXNG_ERR_INTERNODATA'/>
-     <exports symbol='xmlRelaxNGValidCtxtPtr'/>
-     <exports symbol='XML_RELAXNG_ERR_TYPECMP'/>
-     <exports symbol='XML_RELAXNG_ERR_VALUE'/>
-     <exports symbol='XML_RELAXNG_ERR_DATAELEM'/>
-     <exports symbol='xmlRelaxNGDump'/>
-     <exports symbol='XML_RELAXNG_ERR_INTERSEQ'/>
-     <exports symbol='xmlRelaxNGParserCtxtPtr'/>
-     <exports symbol='XML_RELAXNG_ERR_LACKDATA'/>
-     <exports symbol='xmlRelaxNG'/>
-     <exports symbol='xmlRelaxNGParserCtxt'/>
-     <exports symbol='xmlRelaxNGValidateDoc'/>
-     <exports symbol='xmlRelaxNGParse'/>
-     <exports symbol='xmlRelaxNGValidCtxt'/>
-     <exports symbol='xmlRelaxNGValidatePushElement'/>
-     <exports symbol='XML_RELAXNG_ERR_ATTRNAME'/>
-     <exports symbol='XML_RELAXNG_ERR_ELEMNOTEMPTY'/>
-     <exports symbol='xmlRelaxNGValidateFullElement'/>
-     <exports symbol='XML_RELAXNG_OK'/>
-     <exports symbol='XML_RELAXNG_ERR_DATATYPE'/>
-     <exports symbol='xmlRelaxNGNewParserCtxt'/>
-     <exports symbol='xmlRelaxNGValidityErrorFunc'/>
-     <exports symbol='XML_RELAXNG_ERR_ATTRWRONGNS'/>
-     <exports symbol='XML_RELAXNG_ERR_EXTRACONTENT'/>
-     <exports symbol='xmlRelaxNGFree'/>
-     <exports symbol='XML_RELAXNG_ERR_ELEMWRONG'/>
-     <exports symbol='XML_RELAXNG_ERR_INVALIDATTR'/>
-     <exports symbol='XML_RELAXNG_ERR_LISTEMPTY'/>
-     <exports symbol='XML_RELAXNG_ERR_ATTREXTRANS'/>
-     <exports symbol='xmlRelaxNGFreeParserCtxt'/>
-     <exports symbol='XML_RELAXNG_ERR_TEXTWRONG'/>
-     <exports symbol='xmlRelaxNGNewDocParserCtxt'/>
-     <exports symbol='XML_RELAXNG_ERR_NOSTATE'/>
-     <exports symbol='XML_RELAXNG_ERR_ELEMWRONGNS'/>
-     <exports symbol='XML_RELAXNG_ERR_CONTENTVALID'/>
-     <exports symbol='xmlRelaxNGGetValidErrors'/>
-     <exports symbol='XML_RELAXNG_ERR_TYPEVAL'/>
-     <exports symbol='xmlRelaxNGCleanupTypes'/>
-     <exports symbol='XML_RELAXNG_ERR_LIST'/>
-     <exports symbol='xmlRelaxNGPtr'/>
-     <exports symbol='xmlRelaxNGValidErr'/>
-     <exports symbol='XML_RELAXNG_ERR_TYPE'/>
-     <exports symbol='XML_RELAXNG_ERR_NOELEM'/>
-     <exports symbol='XML_RELAXNG_ERR_MEMORY'/>
-     <exports symbol='XML_RELAXNG_ERR_ELEMNAME'/>
-     <exports symbol='XML_RELAXNG_ERR_NOGRAMMAR'/>
-     <exports symbol='xmlRelaxNGGetParserErrors'/>
-     <exports symbol='XML_RELAXNG_ERR_NODEFINE'/>
-     <exports symbol='xmlRelaxNGDumpTree'/>
-     <exports symbol='XML_RELAXNG_ERR_INTEREXTRA'/>
-     <exports symbol='XML_RELAXNG_ERR_INTERNAL'/>
-     <exports symbol='xmlRelaxNGValidatePushCData'/>
-     <exports symbol='XML_RELAXNG_ERR_NOTELEM'/>
-     <exports symbol='xmlRelaxNGValidityWarningFunc'/>
+     <exports symbol='XML_RELAXNG_OK' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_DUPID' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_LISTEXTRA' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_ATTRVALID' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_ATTRWRONGNS' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_LISTELEM' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_EXTRACONTENT' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_INTERNODATA' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_ELEMWRONG' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_INVALIDATTR' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_ATTRNONS' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_LISTEMPTY' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_EXTRADATA' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_TEXTWRONG' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_ELEMNONS' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_ELEMEXTRANS' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_ELEMWRONGNS' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_CONTENTVALID' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_DATATYPE' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_TYPEVAL' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_INTERNAL' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_LIST' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_VALUE' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_NOGRAMMAR' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_MEMORY' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_TYPE' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_NOELEM' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_INTERSEQ' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_LACKDATA' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_ELEMNAME' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_DATAELEM' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_ATTREXTRANS' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_NODEFINE' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_NOSTATE' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_VALELEM' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_ATTRNAME' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_INTEREXTRA' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_ELEMNOTEMPTY' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_NOTELEM' type='enum'/>
+     <exports symbol='XML_RELAXNG_ERR_TYPECMP' type='enum'/>
+     <exports symbol='xmlRelaxNG' type='typedef'/>
+     <exports symbol='xmlRelaxNGParserCtxt' type='typedef'/>
+     <exports symbol='xmlRelaxNGParserCtxtPtr' type='typedef'/>
+     <exports symbol='xmlRelaxNGPtr' type='typedef'/>
+     <exports symbol='xmlRelaxNGValidErr' type='typedef'/>
+     <exports symbol='xmlRelaxNGValidCtxt' type='typedef'/>
+     <exports symbol='xmlRelaxNGValidCtxtPtr' type='typedef'/>
+     <exports symbol='xmlRelaxNGFreeValidCtxt' type='function'/>
+     <exports symbol='xmlRelaxNGValidateFullElement' type='function'/>
+     <exports symbol='xmlRelaxNGNewDocParserCtxt' type='function'/>
+     <exports symbol='xmlRelaxNGSetValidErrors' type='function'/>
+     <exports symbol='xmlRelaxNGValidatePopElement' type='function'/>
+     <exports symbol='xmlRelaxNGFree' type='function'/>
+     <exports symbol='xmlRelaxNGNewParserCtxt' type='function'/>
+     <exports symbol='xmlRelaxNGValidateDoc' type='function'/>
+     <exports symbol='xmlRelaxNGGetParserErrors' type='function'/>
+     <exports symbol='xmlRelaxNGFreeParserCtxt' type='function'/>
+     <exports symbol='xmlRelaxNGSetParserErrors' type='function'/>
+     <exports symbol='xmlRelaxNGNewValidCtxt' type='function'/>
+     <exports symbol='xmlRelaxNGGetValidErrors' type='function'/>
+     <exports symbol='xmlRelaxNGNewMemParserCtxt' type='function'/>
+     <exports symbol='xmlRelaxNGDump' type='function'/>
+     <exports symbol='xmlRelaxNGValidityErrorFunc' type='function'/>
+     <exports symbol='xmlRelaxNGParse' type='function'/>
+     <exports symbol='xmlRelaxNGDumpTree' type='function'/>
+     <exports symbol='xmlRelaxNGValidatePushElement' type='function'/>
+     <exports symbol='xmlRelaxNGCleanupTypes' type='function'/>
+     <exports symbol='xmlRelaxNGValidatePushCData' type='function'/>
+     <exports symbol='xmlRelaxNGValidityWarningFunc' type='function'/>
     </file>
     <file name='schemasInternals'>
      <summary>internal interfaces for XML Schemas</summary>
      <description>internal interfaces for the XML Schemas handling and schema validity checking </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlSchemaNotationPtr'/>
-     <exports symbol='XML_SCHEMA_TYPE_SIMPLE'/>
-     <exports symbol='xmlSchemaAttributeGroupPtr'/>
-     <exports symbol='XML_SCHEMAS_QUALIF_ATTR'/>
-     <exports symbol='xmlSchemaElementPtr'/>
-     <exports symbol='XML_SCHEMA_CONTENT_ELEMENTS'/>
-     <exports symbol='xmlSchemaFreeType'/>
-     <exports symbol='XML_SCHEMAS_FACET_COLLAPSE'/>
-     <exports symbol='_xmlSchemaFacet'/>
-     <exports symbol='XML_SCHEMA_CONTENT_MIXED'/>
-     <exports symbol='xmlSchemaContentType'/>
-     <exports symbol='xmlSchemaTypeType'/>
-     <exports symbol='XML_SCHEMA_TYPE_SEQUENCE'/>
-     <exports symbol='XML_SCHEMA_TYPE_FACET'/>
-     <exports symbol='XML_SCHEMA_TYPE_COMPLEX_CONTENT'/>
-     <exports symbol='xmlSchemaAnnot'/>
-     <exports symbol='XML_SCHEMA_CONTENT_MIXED_OR_ELEMENTS'/>
-     <exports symbol='XML_SCHEMA_CONTENT_EMPTY'/>
-     <exports symbol='XML_SCHEMA_TYPE_EXTENSION'/>
-     <exports symbol='XML_SCHEMA_TYPE_RESTRICTION'/>
-     <exports symbol='XML_SCHEMA_FACET_MAXINCLUSIVE'/>
-     <exports symbol='XML_SCHEMAS_FACET_UNKNOWN'/>
-     <exports symbol='xmlSchemaAttribute'/>
-     <exports symbol='xmlSchemaElement'/>
-     <exports symbol='XML_SCHEMA_TYPE_LIST'/>
-     <exports symbol='XML_SCHEMA_FACET_TOTALDIGITS'/>
-     <exports symbol='_xmlSchemaNotation'/>
-     <exports symbol='XML_SCHEMAS_ELEM_FIXED'/>
-     <exports symbol='_xmlSchemaAttributeGroup'/>
-     <exports symbol='xmlSchemaNotation'/>
-     <exports symbol='_xmlSchemaElement'/>
-     <exports symbol='xmlSchemaFacetPtr'/>
-     <exports symbol='XML_SCHEMAS_ANYATTR_STRICT'/>
-     <exports symbol='XML_SCHEMA_FACET_MINEXCLUSIVE'/>
-     <exports symbol='_xmlSchemaAnnot'/>
-     <exports symbol='XML_SCHEMAS_FACET_PRESERVE'/>
-     <exports symbol='XML_SCHEMA_FACET_WHITESPACE'/>
-     <exports symbol='XML_SCHEMAS_ANYATTR_SKIP'/>
-     <exports symbol='xmlSchemaValPtr'/>
-     <exports symbol='XML_SCHEMAS_ANYATTR_LAX'/>
-     <exports symbol='XML_SCHEMA_TYPE_GROUP'/>
-     <exports symbol='xmlSchemaAttributeGroup'/>
-     <exports symbol='XML_SCHEMAS_ELEM_NILLABLE'/>
-     <exports symbol='XML_SCHEMA_TYPE_SIMPLE_CONTENT'/>
-     <exports symbol='XML_SCHEMA_FACET_FRACTIONDIGITS'/>
-     <exports symbol='XML_SCHEMA_TYPE_ANY'/>
-     <exports symbol='_xmlSchemaAttribute'/>
-     <exports symbol='xmlSchemaTypePtr'/>
-     <exports symbol='XML_SCHEMAS_ELEM_GLOBAL'/>
-     <exports symbol='XML_SCHEMAS_ELEM_TOPLEVEL'/>
-     <exports symbol='XML_SCHEMA_TYPE_COMPLEX'/>
-     <exports symbol='xmlSchemaAttributePtr'/>
-     <exports symbol='XML_SCHEMA_TYPE_ATTRIBUTEGROUP'/>
-     <exports symbol='XML_SCHEMA_TYPE_ALL'/>
-     <exports symbol='xmlSchemaAnnotPtr'/>
-     <exports symbol='xmlSchemaVal'/>
-     <exports symbol='XML_SCHEMA_TYPE_BASIC'/>
-     <exports symbol='XML_SCHEMA_TYPE_CHOICE'/>
-     <exports symbol='_xmlSchemaType'/>
-     <exports symbol='XML_SCHEMA_TYPE_UNION'/>
-     <exports symbol='XML_SCHEMA_TYPE_ATTRIBUTE'/>
-     <exports symbol='XML_SCHEMAS_TYPE_MIXED'/>
-     <exports symbol='XML_SCHEMAS_ELEM_ABSTRACT'/>
-     <exports symbol='XML_SCHEMA_TYPE_ELEMENT'/>
-     <exports symbol='XML_SCHEMA_FACET_MAXEXCLUSIVE'/>
-     <exports symbol='xmlSchemaFacet'/>
-     <exports symbol='XML_SCHEMA_TYPE_UR'/>
-     <exports symbol='XML_SCHEMA_TYPE_NOTATION'/>
-     <exports symbol='XML_SCHEMA_FACET_LENGTH'/>
-     <exports symbol='XML_SCHEMAS_QUALIF_ELEM'/>
-     <exports symbol='XML_SCHEMA_CONTENT_SIMPLE'/>
-     <exports symbol='XML_SCHEMA_CONTENT_ANY'/>
-     <exports symbol='XML_SCHEMA_CONTENT_BASIC'/>
-     <exports symbol='xmlSchemaType'/>
-     <exports symbol='XML_SCHEMA_FACET_MINLENGTH'/>
-     <exports symbol='XML_SCHEMAS_ELEM_REF'/>
-     <exports symbol='XML_SCHEMAS_ELEM_DEFAULT'/>
-     <exports symbol='_xmlSchema'/>
-     <exports symbol='XML_SCHEMA_FACET_PATTERN'/>
-     <exports symbol='XML_SCHEMA_FACET_MININCLUSIVE'/>
-     <exports symbol='XML_SCHEMA_FACET_MAXLENGTH'/>
-     <exports symbol='XML_SCHEMA_FACET_ENUMERATION'/>
-     <exports symbol='XML_SCHEMA_CONTENT_UNKNOWN'/>
-     <exports symbol='XML_SCHEMAS_FACET_REPLACE'/>
+     <exports symbol='XML_SCHEMAS_FACET_UNKNOWN' type='macro'/>
+     <exports symbol='XML_SCHEMAS_ANYATTR_LAX' type='macro'/>
+     <exports symbol='XML_SCHEMAS_ELEM_TOPLEVEL' type='macro'/>
+     <exports symbol='XML_SCHEMAS_ELEM_ABSTRACT' type='macro'/>
+     <exports symbol='XML_SCHEMAS_ANYATTR_STRICT' type='macro'/>
+     <exports symbol='XML_SCHEMAS_QUALIF_ATTR' type='macro'/>
+     <exports symbol='XML_SCHEMAS_ELEM_FIXED' type='macro'/>
+     <exports symbol='XML_SCHEMAS_FACET_COLLAPSE' type='macro'/>
+     <exports symbol='XML_SCHEMAS_QUALIF_ELEM' type='macro'/>
+     <exports symbol='XML_SCHEMAS_ELEM_GLOBAL' type='macro'/>
+     <exports symbol='XML_SCHEMAS_TYPE_MIXED' type='macro'/>
+     <exports symbol='XML_SCHEMAS_ANYATTR_SKIP' type='macro'/>
+     <exports symbol='XML_SCHEMAS_ELEM_DEFAULT' type='macro'/>
+     <exports symbol='XML_SCHEMAS_FACET_REPLACE' type='macro'/>
+     <exports symbol='XML_SCHEMAS_FACET_PRESERVE' type='macro'/>
+     <exports symbol='XML_SCHEMAS_ELEM_REF' type='macro'/>
+     <exports symbol='XML_SCHEMAS_ELEM_NILLABLE' type='macro'/>
+     <exports symbol='XML_SCHEMA_TYPE_SIMPLE' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_GROUP' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_SEQUENCE' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_SIMPLE_CONTENT' type='enum'/>
+     <exports symbol='XML_SCHEMA_CONTENT_ELEMENTS' type='enum'/>
+     <exports symbol='XML_SCHEMA_FACET_MININCLUSIVE' type='enum'/>
+     <exports symbol='XML_SCHEMA_FACET_WHITESPACE' type='enum'/>
+     <exports symbol='XML_SCHEMA_FACET_MINEXCLUSIVE' type='enum'/>
+     <exports symbol='XML_SCHEMA_CONTENT_MIXED' type='enum'/>
+     <exports symbol='XML_SCHEMA_FACET_MAXEXCLUSIVE' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_FACET' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_COMPLEX' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_LIST' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_ATTRIBUTEGROUP' type='enum'/>
+     <exports symbol='XML_SCHEMA_CONTENT_MIXED_OR_ELEMENTS' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_ALL' type='enum'/>
+     <exports symbol='XML_SCHEMA_CONTENT_EMPTY' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_BASIC' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_EXTENSION' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_CHOICE' type='enum'/>
+     <exports symbol='XML_SCHEMA_FACET_MAXINCLUSIVE' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_ATTRIBUTE' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_UNION' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_ELEMENT' type='enum'/>
+     <exports symbol='XML_SCHEMA_FACET_TOTALDIGITS' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_UR' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_NOTATION' type='enum'/>
+     <exports symbol='XML_SCHEMA_FACET_LENGTH' type='enum'/>
+     <exports symbol='XML_SCHEMA_CONTENT_SIMPLE' type='enum'/>
+     <exports symbol='XML_SCHEMA_CONTENT_ANY' type='enum'/>
+     <exports symbol='XML_SCHEMA_CONTENT_BASIC' type='enum'/>
+     <exports symbol='XML_SCHEMA_FACET_MINLENGTH' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_COMPLEX_CONTENT' type='enum'/>
+     <exports symbol='XML_SCHEMA_FACET_FRACTIONDIGITS' type='enum'/>
+     <exports symbol='XML_SCHEMA_FACET_PATTERN' type='enum'/>
+     <exports symbol='XML_SCHEMA_FACET_MAXLENGTH' type='enum'/>
+     <exports symbol='XML_SCHEMA_FACET_ENUMERATION' type='enum'/>
+     <exports symbol='XML_SCHEMA_CONTENT_UNKNOWN' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_ANY' type='enum'/>
+     <exports symbol='XML_SCHEMA_TYPE_RESTRICTION' type='enum'/>
+     <exports symbol='xmlSchemaValPtr' type='typedef'/>
+     <exports symbol='xmlSchemaAttributeGroup' type='typedef'/>
+     <exports symbol='xmlSchemaAttributePtr' type='typedef'/>
+     <exports symbol='xmlSchemaElement' type='typedef'/>
+     <exports symbol='xmlSchemaElementPtr' type='typedef'/>
+     <exports symbol='xmlSchemaFacet' type='typedef'/>
+     <exports symbol='xmlSchemaType' type='typedef'/>
+     <exports symbol='xmlSchemaContentType' type='typedef'/>
+     <exports symbol='xmlSchemaTypeType' type='typedef'/>
+     <exports symbol='xmlSchemaAttribute' type='typedef'/>
+     <exports symbol='xmlSchemaFacetPtr' type='typedef'/>
+     <exports symbol='xmlSchemaNotation' type='typedef'/>
+     <exports symbol='xmlSchemaNotationPtr' type='typedef'/>
+     <exports symbol='xmlSchemaAnnot' type='typedef'/>
+     <exports symbol='xmlSchemaAnnotPtr' type='typedef'/>
+     <exports symbol='xmlSchemaVal' type='typedef'/>
+     <exports symbol='xmlSchemaTypePtr' type='typedef'/>
+     <exports symbol='xmlSchemaAttributeGroupPtr' type='typedef'/>
+     <exports symbol='_xmlSchemaAttribute' type='struct'/>
+     <exports symbol='_xmlSchemaType' type='struct'/>
+     <exports symbol='_xmlSchemaAttributeGroup' type='struct'/>
+     <exports symbol='_xmlSchemaNotation' type='struct'/>
+     <exports symbol='_xmlSchemaElement' type='struct'/>
+     <exports symbol='_xmlSchema' type='struct'/>
+     <exports symbol='_xmlSchemaAnnot' type='struct'/>
+     <exports symbol='_xmlSchemaFacet' type='struct'/>
+     <exports symbol='xmlSchemaFreeType' type='function'/>
     </file>
     <file name='threads'>
      <summary>interfaces for thread handling</summary>
      <description>set of generic threading related routines should work with pthreads, Windows native or TLS threads </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlRMutexPtr'/>
-     <exports symbol='xmlFreeRMutex'/>
-     <exports symbol='xmlGetThreadId'/>
-     <exports symbol='xmlMutexPtr'/>
-     <exports symbol='xmlRMutex'/>
-     <exports symbol='xmlFreeMutex'/>
-     <exports symbol='xmlCleanupThreads'/>
-     <exports symbol='xmlMutexUnlock'/>
-     <exports symbol='xmlNewRMutex'/>
-     <exports symbol='xmlMutexLock'/>
-     <exports symbol='xmlIsMainThread'/>
-     <exports symbol='xmlRMutexUnlock'/>
-     <exports symbol='xmlGetGlobalState'/>
-     <exports symbol='xmlNewMutex'/>
-     <exports symbol='xmlMutex'/>
-     <exports symbol='xmlInitThreads'/>
-     <exports symbol='xmlUnlockLibrary'/>
-     <exports symbol='xmlLockLibrary'/>
-     <exports symbol='xmlRMutexLock'/>
+     <exports symbol='xmlMutex' type='typedef'/>
+     <exports symbol='xmlRMutex' type='typedef'/>
+     <exports symbol='xmlRMutexPtr' type='typedef'/>
+     <exports symbol='xmlMutexPtr' type='typedef'/>
+     <exports symbol='xmlFreeRMutex' type='function'/>
+     <exports symbol='xmlGetThreadId' type='function'/>
+     <exports symbol='xmlFreeMutex' type='function'/>
+     <exports symbol='xmlCleanupThreads' type='function'/>
+     <exports symbol='xmlMutexUnlock' type='function'/>
+     <exports symbol='xmlNewRMutex' type='function'/>
+     <exports symbol='xmlMutexLock' type='function'/>
+     <exports symbol='xmlIsMainThread' type='function'/>
+     <exports symbol='xmlRMutexUnlock' type='function'/>
+     <exports symbol='xmlGetGlobalState' type='function'/>
+     <exports symbol='xmlNewMutex' type='function'/>
+     <exports symbol='xmlRMutexLock' type='function'/>
+     <exports symbol='xmlInitThreads' type='function'/>
+     <exports symbol='xmlUnlockLibrary' type='function'/>
+     <exports symbol='xmlLockLibrary' type='function'/>
     </file>
     <file name='tree'>
      <summary>interfaces for tree manipulation</summary>
      <description>this module describes the structures found in an tree resulting from an XML or HTML parsing, as well as the API provided for various processing on that tree </description>
      <author>Daniel Veillard </author>
-     <exports symbol='XML_ATTRIBUTE_IMPLIED'/>
-     <exports symbol='xmlNewDocRawNode'/>
-     <exports symbol='xmlElementContent'/>
-     <exports symbol='xmlGetProp'/>
-     <exports symbol='XML_XINCLUDE_START'/>
-     <exports symbol='xmlNewNsPropEatName'/>
-     <exports symbol='xmlElementPtr'/>
-     <exports symbol='xmlDocCopyNode'/>
-     <exports symbol='xmlStringGetNodeList'/>
-     <exports symbol='xmlBufferWriteCHAR'/>
-     <exports symbol='BAD_CAST'/>
-     <exports symbol='xmlElement'/>
-     <exports symbol='xmlNodeGetBase'/>
-     <exports symbol='XML_ATTRIBUTE_IDREF'/>
-     <exports symbol='xmlAttributePtr'/>
-     <exports symbol='xmlBufferEmpty'/>
-     <exports symbol='xmlSaveFormatFile'/>
-     <exports symbol='XML_CDATA_SECTION_NODE'/>
-     <exports symbol='XML_ELEMENT_CONTENT_SEQ'/>
-     <exports symbol='xmlNewDocNodeEatName'/>
-     <exports symbol='xmlAddSibling'/>
-     <exports symbol='XML_BUFFER_ALLOC_DOUBLEIT'/>
-     <exports symbol='xmlNewDocFragment'/>
-     <exports symbol='xmlDocGetRootElement'/>
-     <exports symbol='xmlNodeAddContentLen'/>
-     <exports symbol='XML_HTML_DOCUMENT_NODE'/>
-     <exports symbol='XML_ELEMENT_CONTENT_ONCE'/>
-     <exports symbol='_xmlElement'/>
-     <exports symbol='xmlNotation'/>
-     <exports symbol='xmlElementType'/>
-     <exports symbol='xmlNsPtr'/>
-     <exports symbol='xmlValidateQName'/>
-     <exports symbol='_xmlEnumeration'/>
-     <exports symbol='XML_ATTRIBUTE_FIXED'/>
-     <exports symbol='xmlHasNsProp'/>
-     <exports symbol='xmlAddPrevSibling'/>
-     <exports symbol='xmlBufferAddHead'/>
-     <exports symbol='xmlSetListDoc'/>
-     <exports symbol='xmlNewPI'/>
-     <exports symbol='XML_BUFFER_ALLOC_IMMUTABLE'/>
-     <exports symbol='xmlElementContentOccur'/>
-     <exports symbol='xmlDocFormatDump'/>
-     <exports symbol='xmlSetProp'/>
-     <exports symbol='xmlParserInputPtr'/>
-     <exports symbol='XML_ELEMENT_TYPE_UNDEFINED'/>
-     <exports symbol='xmlElemDump'/>
-     <exports symbol='xmlID'/>
-     <exports symbol='xmlSaveFormatFileTo'/>
-     <exports symbol='xmlGetIntSubset'/>
-     <exports symbol='_xmlNotation'/>
-     <exports symbol='xmlNodeBufGetContent'/>
-     <exports symbol='XML_ATTRIBUTE_NMTOKENS'/>
-     <exports symbol='XML_ATTRIBUTE_NOTATION'/>
-     <exports symbol='XML_ATTRIBUTE_ENTITY'/>
-     <exports symbol='xmlBufferFree'/>
-     <exports symbol='xmlReplaceNode'/>
-     <exports symbol='xmlNewNode'/>
-     <exports symbol='XML_TEXT_NODE'/>
-     <exports symbol='xmlSaveFileTo'/>
-     <exports symbol='xmlIDPtr'/>
-     <exports symbol='XML_ATTRIBUTE_CDATA'/>
-     <exports symbol='xmlAttribute'/>
-     <exports symbol='XML_DOCUMENT_NODE'/>
-     <exports symbol='xmlSAXHandlerPtr'/>
-     <exports symbol='xmlNodeSetContent'/>
-     <exports symbol='xmlBufferAdd'/>
-     <exports symbol='xmlNodeDumpOutput'/>
-     <exports symbol='xmlCopyNamespace'/>
-     <exports symbol='xmlSearchNsByHref'/>
-     <exports symbol='xmlAddChild'/>
-     <exports symbol='xmlReconciliateNs'/>
-     <exports symbol='xmlSAXLocatorPtr'/>
-     <exports symbol='xmlParserInput'/>
-     <exports symbol='XML_GET_CONTENT'/>
-     <exports symbol='xmlNodeSetName'/>
-     <exports symbol='xmlValidateNCName'/>
-     <exports symbol='xmlNewDocComment'/>
-     <exports symbol='xmlRef'/>
-     <exports symbol='xmlGetCompressMode'/>
-     <exports symbol='xmlRootNode'/>
-     <exports symbol='_xmlElementContent'/>
-     <exports symbol='XML_ELEMENT_NODE'/>
-     <exports symbol='XML_ELEMENT_DECL'/>
-     <exports symbol='XML_BUFFER_ALLOC_EXACT'/>
-     <exports symbol='xmlBufferCreateSize'/>
-     <exports symbol='xmlNodeListGetString'/>
-     <exports symbol='XML_DOCUMENT_FRAG_NODE'/>
-     <exports symbol='xmlSetCompressMode'/>
-     <exports symbol='xmlSetTreeDoc'/>
-     <exports symbol='xmlBufferCreate'/>
-     <exports symbol='xmlCopyNodeList'/>
-     <exports symbol='xmlDocPtr'/>
-     <exports symbol='xmlBufferGrow'/>
-     <exports symbol='xmlAddChildList'/>
-     <exports symbol='xmlGetNodePath'/>
-     <exports symbol='xmlParserCtxtPtr'/>
-     <exports symbol='XML_NAMESPACE_DECL'/>
-     <exports symbol='xmlFreePropList'/>
-     <exports symbol='xmlNodeAddContent'/>
-     <exports symbol='xmlUnsetNsProp'/>
-     <exports symbol='xmlNodeIsText'/>
-     <exports symbol='xmlAttr'/>
-     <exports symbol='xmlAddNextSibling'/>
-     <exports symbol='xmlIsBlankNode'/>
-     <exports symbol='xmlEntity'/>
-     <exports symbol='xmlValidateName'/>
-     <exports symbol='xmlNewGlobalNs'/>
-     <exports symbol='xmlBufferDump'/>
-     <exports symbol='xmlNewNs'/>
-     <exports symbol='xmlCopyDoc'/>
-     <exports symbol='XML_ENTITY_REF_NODE'/>
-     <exports symbol='XML_ATTRIBUTE_ENTITIES'/>
-     <exports symbol='xmlDocDumpMemoryEnc'/>
-     <exports symbol='xmlTextMerge'/>
-     <exports symbol='XML_ATTRIBUTE_ENUMERATION'/>
-     <exports symbol='xmlDocDumpMemory'/>
-     <exports symbol='xmlNewTextLen'/>
-     <exports symbol='xmlFreeNs'/>
-     <exports symbol='xmlDocDump'/>
-     <exports symbol='BASE_BUFFER_SIZE'/>
-     <exports symbol='xmlFreeProp'/>
-     <exports symbol='xmlEnumeration'/>
-     <exports symbol='xmlBufferWriteChar'/>
-     <exports symbol='xmlGetNoNsProp'/>
-     <exports symbol='xmlSplitQName2'/>
-     <exports symbol='xmlSAXHandler'/>
-     <exports symbol='XML_GET_LINE'/>
-     <exports symbol='xmlRefPtr'/>
-     <exports symbol='xmlNewProp'/>
-     <exports symbol='xmlTextConcat'/>
-     <exports symbol='xmlSAXLocator'/>
-     <exports symbol='xmlOutputBufferPtr'/>
-     <exports symbol='xmlNodeGetSpacePreserve'/>
-     <exports symbol='xmlNotationPtr'/>
-     <exports symbol='xmlBufferShrink'/>
-     <exports symbol='XML_ELEMENT_CONTENT_PLUS'/>
-     <exports symbol='XML_ELEMENT_CONTENT_MULT'/>
-     <exports symbol='xmlNodeGetContent'/>
-     <exports symbol='XML_ELEMENT_TYPE_EMPTY'/>
-     <exports symbol='XML_LOCAL_NAMESPACE'/>
-     <exports symbol='xmlStringLenGetNodeList'/>
-     <exports symbol='xmlBuildQName'/>
-     <exports symbol='xmlBufferPtr'/>
-     <exports symbol='xmlEnumerationPtr'/>
-     <exports symbol='XML_ATTRIBUTE_IDREFS'/>
-     <exports symbol='XML_DOCUMENT_TYPE_NODE'/>
-     <exports symbol='xmlBuffer'/>
-     <exports symbol='_xmlRef'/>
-     <exports symbol='xmlBufferWriteQuotedString'/>
-     <exports symbol='xmlCopyProp'/>
-     <exports symbol='xmlNs'/>
-     <exports symbol='xmlAttributeType'/>
-     <exports symbol='xmlSetDocCompressMode'/>
-     <exports symbol='xmlCopyNode'/>
-     <exports symbol='xmlUnlinkNode'/>
-     <exports symbol='xmlSplitQName3'/>
-     <exports symbol='_xmlID'/>
-     <exports symbol='xmlParserInputBuffer'/>
-     <exports symbol='xmlDocSetRootElement'/>
-     <exports symbol='xmlSearchNs'/>
-     <exports symbol='xmlGetLineNo'/>
-     <exports symbol='xmlNodePtr'/>
-     <exports symbol='xmlRemoveProp'/>
-     <exports symbol='xmlParserCtxt'/>
-     <exports symbol='xmlNewTextChild'/>
-     <exports symbol='xmlDocDumpFormatMemoryEnc'/>
-     <exports symbol='_xmlAttr'/>
-     <exports symbol='XML_ELEMENT_CONTENT_OPT'/>
-     <exports symbol='XML_ENTITY_NODE'/>
-     <exports symbol='_xmlAttribute'/>
-     <exports symbol='xmlNewDocProp'/>
-     <exports symbol='xmlFreeNode'/>
-     <exports symbol='xmlNewDocTextLen'/>
-     <exports symbol='xmlBufferContent'/>
-     <exports symbol='xmlNodeGetLang'/>
-     <exports symbol='xmlValidateNMToken'/>
-     <exports symbol='xmlBufferSetAllocationScheme'/>
-     <exports symbol='XML_DOCB_DOCUMENT_NODE'/>
-     <exports symbol='xmlNewChild'/>
-     <exports symbol='xmlGetDocCompressMode'/>
-     <exports symbol='xmlSaveFileEnc'/>
-     <exports symbol='xmlAttrPtr'/>
-     <exports symbol='xmlCopyPropList'/>
-     <exports symbol='XML_XML_NAMESPACE'/>
-     <exports symbol='_xmlDoc'/>
-     <exports symbol='xmlNodeSetContentLen'/>
-     <exports symbol='xmlElementContentType'/>
-     <exports symbol='xmlNodeSetSpacePreserve'/>
-     <exports symbol='xmlSetNsProp'/>
-     <exports symbol='xmlHasProp'/>
-     <exports symbol='XML_PI_NODE'/>
-     <exports symbol='XML_ATTRIBUTE_NODE'/>
-     <exports symbol='xmlBufferCat'/>
-     <exports symbol='xmlCreateIntSubset'/>
-     <exports symbol='xmlNewDoc'/>
-     <exports symbol='xmlNewCharRef'/>
-     <exports symbol='xmlCopyNamespaceList'/>
-     <exports symbol='xmlNewNodeEatName'/>
-     <exports symbol='_xmlDtd'/>
-     <exports symbol='XML_XINCLUDE_END'/>
-     <exports symbol='xmlBufferResize'/>
-     <exports symbol='XML_ELEMENT_TYPE_MIXED'/>
-     <exports symbol='xmlNodeSetBase'/>
-     <exports symbol='xmlNsType'/>
-     <exports symbol='XML_ELEMENT_CONTENT_ELEMENT'/>
-     <exports symbol='xmlNewComment'/>
-     <exports symbol='XML_ELEMENT_TYPE_ELEMENT'/>
-     <exports symbol='xmlChildrenNode'/>
-     <exports symbol='xmlBufferLength'/>
-     <exports symbol='xmlBufferAllocationScheme'/>
-     <exports symbol='xmlChar'/>
-     <exports symbol='XML_ELEMENT_CONTENT_PCDATA'/>
-     <exports symbol='xmlAttributeDefault'/>
-     <exports symbol='xmlNewText'/>
-     <exports symbol='xmlUnsetProp'/>
-     <exports symbol='xmlGetBufferAllocationScheme'/>
-     <exports symbol='xmlSaveFile'/>
-     <exports symbol='_xmlNode'/>
-     <exports symbol='xmlSetNs'/>
-     <exports symbol='xmlNode'/>
-     <exports symbol='xmlGetNsProp'/>
-     <exports symbol='XML_ATTRIBUTE_REQUIRED'/>
-     <exports symbol='xmlNewCDataBlock'/>
-     <exports symbol='xmlSaveFormatFileEnc'/>
-     <exports symbol='XML_ELEMENT_TYPE_ANY'/>
-     <exports symbol='xmlCopyDtd'/>
-     <exports symbol='xmlNewDocText'/>
-     <exports symbol='xmlDtdPtr'/>
-     <exports symbol='xmlNodeListGetRawString'/>
-     <exports symbol='xmlBufferCreateStatic'/>
-     <exports symbol='XML_ATTRIBUTE_NONE'/>
-     <exports symbol='xmlNewReference'/>
-     <exports symbol='_xmlBuffer'/>
-     <exports symbol='xmlBufferCCat'/>
-     <exports symbol='xmlGetNsList'/>
-     <exports symbol='xmlEntityPtr'/>
-     <exports symbol='XML_ATTRIBUTE_DECL'/>
-     <exports symbol='xmlSetBufferAllocationScheme'/>
-     <exports symbol='xmlNodeDump'/>
-     <exports symbol='xmlIsXHTML'/>
-     <exports symbol='xmlNodeSetLang'/>
-     <exports symbol='XML_ENTITY_DECL'/>
-     <exports symbol='xmlFreeDtd'/>
-     <exports symbol='xmlFreeNodeList'/>
-     <exports symbol='xmlFreeDoc'/>
-     <exports symbol='xmlDoc'/>
-     <exports symbol='xmlNewDocNode'/>
-     <exports symbol='xmlDtd'/>
-     <exports symbol='XML_COMMENT_NODE'/>
-     <exports symbol='_xmlNs'/>
-     <exports symbol='XML_DTD_NODE'/>
-     <exports symbol='XML_ELEMENT_CONTENT_OR'/>
-     <exports symbol='xmlDocDumpFormatMemory'/>
-     <exports symbol='XML_ATTRIBUTE_NMTOKEN'/>
-     <exports symbol='XML_NOTATION_NODE'/>
-     <exports symbol='xmlOutputBuffer'/>
-     <exports symbol='xmlElementContentPtr'/>
-     <exports symbol='xmlElementTypeVal'/>
-     <exports symbol='xmlNewDtd'/>
-     <exports symbol='xmlParserInputBufferPtr'/>
-     <exports symbol='XML_ATTRIBUTE_ID'/>
-     <exports symbol='xmlNewNsProp'/>
-     <exports symbol='xmlFreeNsList'/>
-     <exports symbol='xmlGetLastChild'/>
+     <exports symbol='XML_LOCAL_NAMESPACE' type='macro'/>
+     <exports symbol='BAD_CAST' type='macro'/>
+     <exports symbol='XML_GET_CONTENT' type='macro'/>
+     <exports symbol='BASE_BUFFER_SIZE' type='macro'/>
+     <exports symbol='xmlChildrenNode' type='macro'/>
+     <exports symbol='xmlRootNode' type='macro'/>
+     <exports symbol='XML_XML_NAMESPACE' type='macro'/>
+     <exports symbol='XML_GET_LINE' type='macro'/>
+     <exports symbol='XML_ATTRIBUTE_IMPLIED' type='enum'/>
+     <exports symbol='XML_ATTRIBUTE_IDREF' type='enum'/>
+     <exports symbol='XML_ATTRIBUTE_IDREFS' type='enum'/>
+     <exports symbol='XML_ATTRIBUTE_REQUIRED' type='enum'/>
+     <exports symbol='XML_XINCLUDE_END' type='enum'/>
+     <exports symbol='XML_ATTRIBUTE_NODE' type='enum'/>
+     <exports symbol='XML_ELEMENT_CONTENT_ELEMENT' type='enum'/>
+     <exports symbol='XML_ELEMENT_TYPE_ELEMENT' type='enum'/>
+     <exports symbol='XML_CDATA_SECTION_NODE' type='enum'/>
+     <exports symbol='XML_ELEMENT_NODE' type='enum'/>
+     <exports symbol='XML_ELEMENT_DECL' type='enum'/>
+     <exports symbol='XML_ELEMENT_CONTENT_SEQ' type='enum'/>
+     <exports symbol='XML_BUFFER_ALLOC_DOUBLEIT' type='enum'/>
+     <exports symbol='XML_DOCUMENT_FRAG_NODE' type='enum'/>
+     <exports symbol='XML_ELEMENT_TYPE_ANY' type='enum'/>
+     <exports symbol='XML_ELEMENT_CONTENT_ONCE' type='enum'/>
+     <exports symbol='XML_ELEMENT_CONTENT_PCDATA' type='enum'/>
+     <exports symbol='XML_ATTRIBUTE_FIXED' type='enum'/>
+     <exports symbol='XML_DOCUMENT_TYPE_NODE' type='enum'/>
+     <exports symbol='XML_ELEMENT_CONTENT_OPT' type='enum'/>
+     <exports symbol='XML_NAMESPACE_DECL' type='enum'/>
+     <exports symbol='XML_ENTITY_NODE' type='enum'/>
+     <exports symbol='XML_ELEMENT_TYPE_MIXED' type='enum'/>
+     <exports symbol='XML_XINCLUDE_START' type='enum'/>
+     <exports symbol='XML_TEXT_NODE' type='enum'/>
+     <exports symbol='XML_BUFFER_ALLOC_EXACT' type='enum'/>
+     <exports symbol='XML_ATTRIBUTE_ENTITIES' type='enum'/>
+     <exports symbol='XML_BUFFER_ALLOC_IMMUTABLE' type='enum'/>
+     <exports symbol='XML_NOTATION_NODE' type='enum'/>
+     <exports symbol='XML_ENTITY_REF_NODE' type='enum'/>
+     <exports symbol='XML_ELEMENT_TYPE_EMPTY' type='enum'/>
+     <exports symbol='XML_ATTRIBUTE_ENUMERATION' type='enum'/>
+     <exports symbol='XML_HTML_DOCUMENT_NODE' type='enum'/>
+     <exports symbol='XML_ELEMENT_TYPE_UNDEFINED' type='enum'/>
+     <exports symbol='XML_ATTRIBUTE_NONE' type='enum'/>
+     <exports symbol='XML_DOCB_DOCUMENT_NODE' type='enum'/>
+     <exports symbol='XML_COMMENT_NODE' type='enum'/>
+     <exports symbol='XML_DOCUMENT_NODE' type='enum'/>
+     <exports symbol='XML_DTD_NODE' type='enum'/>
+     <exports symbol='XML_ELEMENT_CONTENT_OR' type='enum'/>
+     <exports symbol='XML_ATTRIBUTE_NMTOKEN' type='enum'/>
+     <exports symbol='XML_PI_NODE' type='enum'/>
+     <exports symbol='XML_ATTRIBUTE_NMTOKENS' type='enum'/>
+     <exports symbol='XML_ATTRIBUTE_NOTATION' type='enum'/>
+     <exports symbol='XML_ATTRIBUTE_ENTITY' type='enum'/>
+     <exports symbol='XML_ATTRIBUTE_DECL' type='enum'/>
+     <exports symbol='XML_ENTITY_DECL' type='enum'/>
+     <exports symbol='XML_ATTRIBUTE_ID' type='enum'/>
+     <exports symbol='XML_ATTRIBUTE_CDATA' type='enum'/>
+     <exports symbol='XML_ELEMENT_CONTENT_MULT' type='enum'/>
+     <exports symbol='XML_ELEMENT_CONTENT_PLUS' type='enum'/>
+     <exports symbol='xmlNs' type='typedef'/>
+     <exports symbol='xmlBufferPtr' type='typedef'/>
+     <exports symbol='xmlEnumerationPtr' type='typedef'/>
+     <exports symbol='xmlBuffer' type='typedef'/>
+     <exports symbol='xmlSAXLocatorPtr' type='typedef'/>
+     <exports symbol='xmlParserInput' type='typedef'/>
+     <exports symbol='xmlElement' type='typedef'/>
+     <exports symbol='xmlElementType' type='typedef'/>
+     <exports symbol='xmlBufferAllocationScheme' type='typedef'/>
+     <exports symbol='xmlChar' type='typedef'/>
+     <exports symbol='xmlDocPtr' type='typedef'/>
+     <exports symbol='xmlElementContent' type='typedef'/>
+     <exports symbol='xmlRef' type='typedef'/>
+     <exports symbol='xmlAttributeType' type='typedef'/>
+     <exports symbol='xmlRefPtr' type='typedef'/>
+     <exports symbol='xmlParserInputBuffer' type='typedef'/>
+     <exports symbol='xmlNode' type='typedef'/>
+     <exports symbol='xmlDoc' type='typedef'/>
+     <exports symbol='xmlParserCtxt' type='typedef'/>
+     <exports symbol='xmlDtdPtr' type='typedef'/>
+     <exports symbol='xmlAttributeDefault' type='typedef'/>
+     <exports symbol='xmlNotation' type='typedef'/>
+     <exports symbol='xmlNsType' type='typedef'/>
+     <exports symbol='xmlEntity' type='typedef'/>
+     <exports symbol='xmlAttr' type='typedef'/>
+     <exports symbol='xmlAttributePtr' type='typedef'/>
+     <exports symbol='xmlElementTypeVal' type='typedef'/>
+     <exports symbol='xmlElementPtr' type='typedef'/>
+     <exports symbol='xmlElementContentOccur' type='typedef'/>
+     <exports symbol='xmlIDPtr' type='typedef'/>
+     <exports symbol='xmlAttrPtr' type='typedef'/>
+     <exports symbol='xmlParserInputPtr' type='typedef'/>
+     <exports symbol='xmlID' type='typedef'/>
+     <exports symbol='xmlParserCtxtPtr' type='typedef'/>
+     <exports symbol='xmlEntityPtr' type='typedef'/>
+     <exports symbol='xmlEnumeration' type='typedef'/>
+     <exports symbol='xmlElementContentType' type='typedef'/>
+     <exports symbol='xmlNsPtr' type='typedef'/>
+     <exports symbol='xmlParserInputBufferPtr' type='typedef'/>
+     <exports symbol='xmlSAXHandler' type='typedef'/>
+     <exports symbol='xmlOutputBuffer' type='typedef'/>
+     <exports symbol='xmlSAXLocator' type='typedef'/>
+     <exports symbol='xmlElementContentPtr' type='typedef'/>
+     <exports symbol='xmlNotationPtr' type='typedef'/>
+     <exports symbol='xmlNodePtr' type='typedef'/>
+     <exports symbol='xmlDtd' type='typedef'/>
+     <exports symbol='xmlAttribute' type='typedef'/>
+     <exports symbol='xmlOutputBufferPtr' type='typedef'/>
+     <exports symbol='xmlSAXHandlerPtr' type='typedef'/>
+     <exports symbol='_xmlBuffer' type='struct'/>
+     <exports symbol='_xmlAttribute' type='struct'/>
+     <exports symbol='_xmlEnumeration' type='struct'/>
+     <exports symbol='_xmlNs' type='struct'/>
+     <exports symbol='_xmlNode' type='struct'/>
+     <exports symbol='_xmlID' type='struct'/>
+     <exports symbol='_xmlElement' type='struct'/>
+     <exports symbol='_xmlDoc' type='struct'/>
+     <exports symbol='_xmlNotation' type='struct'/>
+     <exports symbol='_xmlDtd' type='struct'/>
+     <exports symbol='_xmlRef' type='struct'/>
+     <exports symbol='_xmlAttr' type='struct'/>
+     <exports symbol='_xmlElementContent' type='struct'/>
+     <exports symbol='xmlNodeSetContentLen' type='function'/>
+     <exports symbol='xmlDocCopyNode' type='function'/>
+     <exports symbol='xmlDocSetRootElement' type='function'/>
+     <exports symbol='xmlGetProp' type='function'/>
+     <exports symbol='xmlNewNsPropEatName' type='function'/>
+     <exports symbol='xmlSearchNs' type='function'/>
+     <exports symbol='xmlStringGetNodeList' type='function'/>
+     <exports symbol='xmlBufferWriteQuotedString' type='function'/>
+     <exports symbol='xmlCopyProp' type='function'/>
+     <exports symbol='xmlNodeListGetString' type='function'/>
+     <exports symbol='xmlNewDocRawNode' type='function'/>
+     <exports symbol='xmlNodeGetBase' type='function'/>
+     <exports symbol='xmlGetLineNo' type='function'/>
+     <exports symbol='xmlBufferEmpty' type='function'/>
+     <exports symbol='xmlSetDocCompressMode' type='function'/>
+     <exports symbol='xmlBuildQName' type='function'/>
+     <exports symbol='xmlCopyNode' type='function'/>
+     <exports symbol='xmlUnlinkNode' type='function'/>
+     <exports symbol='xmlSplitQName3' type='function'/>
+     <exports symbol='xmlRemoveProp' type='function'/>
+     <exports symbol='xmlAddSibling' type='function'/>
+     <exports symbol='xmlNodeSetName' type='function'/>
+     <exports symbol='xmlNewDocFragment' type='function'/>
+     <exports symbol='xmlDocGetRootElement' type='function'/>
+     <exports symbol='xmlNodeAddContentLen' type='function'/>
+     <exports symbol='xmlValidateName' type='function'/>
+     <exports symbol='xmlAddChild' type='function'/>
+     <exports symbol='xmlGetDocCompressMode' type='function'/>
+     <exports symbol='xmlSetBufferAllocationScheme' type='function'/>
+     <exports symbol='xmlGetNsProp' type='function'/>
+     <exports symbol='xmlNewDocProp' type='function'/>
+     <exports symbol='xmlFreeNode' type='function'/>
+     <exports symbol='xmlFreeNs' type='function'/>
+     <exports symbol='xmlBufferContent' type='function'/>
+     <exports symbol='xmlAddPrevSibling' type='function'/>
+     <exports symbol='xmlNodeGetLang' type='function'/>
+     <exports symbol='xmlBufferAddHead' type='function'/>
+     <exports symbol='xmlSetListDoc' type='function'/>
+     <exports symbol='xmlNewPI' type='function'/>
+     <exports symbol='xmlValidateNMToken' type='function'/>
+     <exports symbol='xmlBufferSetAllocationScheme' type='function'/>
+     <exports symbol='xmlGetCompressMode' type='function'/>
+     <exports symbol='xmlNewChild' type='function'/>
+     <exports symbol='xmlNodeListGetRawString' type='function'/>
+     <exports symbol='xmlStringLenGetNodeList' type='function'/>
+     <exports symbol='xmlSaveFormatFile' type='function'/>
+     <exports symbol='xmlGetNodePath' type='function'/>
+     <exports symbol='xmlElemDump' type='function'/>
+     <exports symbol='xmlCopyPropList' type='function'/>
+     <exports symbol='xmlBufferWriteCHAR' type='function'/>
+     <exports symbol='xmlSaveFormatFileTo' type='function'/>
+     <exports symbol='xmlDocFormatDump' type='function'/>
+     <exports symbol='xmlGetIntSubset' type='function'/>
+     <exports symbol='xmlNodeSetSpacePreserve' type='function'/>
+     <exports symbol='xmlHasProp' type='function'/>
+     <exports symbol='xmlNodeBufGetContent' type='function'/>
+     <exports symbol='xmlBufferWriteChar' type='function'/>
+     <exports symbol='xmlBufferFree' type='function'/>
+     <exports symbol='xmlReplaceNode' type='function'/>
+     <exports symbol='xmlNewNode' type='function'/>
+     <exports symbol='xmlBufferCat' type='function'/>
+     <exports symbol='xmlSaveFileTo' type='function'/>
+     <exports symbol='xmlCreateIntSubset' type='function'/>
+     <exports symbol='xmlNewTextChild' type='function'/>
+     <exports symbol='xmlNewDoc' type='function'/>
+     <exports symbol='xmlNodeSetContent' type='function'/>
+     <exports symbol='xmlBufferAdd' type='function'/>
+     <exports symbol='xmlNewCharRef' type='function'/>
+     <exports symbol='xmlNodeDumpOutput' type='function'/>
+     <exports symbol='xmlCopyNamespace' type='function'/>
+     <exports symbol='xmlSearchNsByHref' type='function'/>
+     <exports symbol='xmlCopyNamespaceList' type='function'/>
+     <exports symbol='xmlNewNodeEatName' type='function'/>
+     <exports symbol='xmlTextMerge' type='function'/>
+     <exports symbol='xmlSplitQName2' type='function'/>
+     <exports symbol='xmlUnsetProp' type='function'/>
+     <exports symbol='xmlBufferResize' type='function'/>
+     <exports symbol='xmlValidateQName' type='function'/>
+     <exports symbol='xmlNodeSetBase' type='function'/>
+     <exports symbol='xmlNewComment' type='function'/>
+     <exports symbol='xmlValidateNCName' type='function'/>
+     <exports symbol='xmlBufferLength' type='function'/>
+     <exports symbol='xmlNewDocComment' type='function'/>
+     <exports symbol='xmlNewText' type='function'/>
+     <exports symbol='xmlNodeDump' type='function'/>
+     <exports symbol='xmlGetBufferAllocationScheme' type='function'/>
+     <exports symbol='xmlSaveFile' type='function'/>
+     <exports symbol='xmlSetNs' type='function'/>
+     <exports symbol='xmlBufferCreateSize' type='function'/>
+     <exports symbol='xmlNewNs' type='function'/>
+     <exports symbol='xmlHasNsProp' type='function'/>
+     <exports symbol='xmlNewCDataBlock' type='function'/>
+     <exports symbol='xmlSetCompressMode' type='function'/>
+     <exports symbol='xmlSetTreeDoc' type='function'/>
+     <exports symbol='xmlSaveFormatFileEnc' type='function'/>
+     <exports symbol='xmlBufferCreate' type='function'/>
+     <exports symbol='xmlCopyNodeList' type='function'/>
+     <exports symbol='xmlNewDocNodeEatName' type='function'/>
+     <exports symbol='xmlCopyDtd' type='function'/>
+     <exports symbol='xmlNewDocText' type='function'/>
+     <exports symbol='xmlAddChildList' type='function'/>
+     <exports symbol='xmlBufferCreateStatic' type='function'/>
+     <exports symbol='xmlFreePropList' type='function'/>
+     <exports symbol='xmlNodeAddContent' type='function'/>
+     <exports symbol='xmlUnsetNsProp' type='function'/>
+     <exports symbol='xmlNewReference' type='function'/>
+     <exports symbol='xmlReconciliateNs' type='function'/>
+     <exports symbol='xmlBufferCCat' type='function'/>
+     <exports symbol='xmlAddNextSibling' type='function'/>
+     <exports symbol='xmlGetNsList' type='function'/>
+     <exports symbol='xmlBufferGrow' type='function'/>
+     <exports symbol='xmlNodeIsText' type='function'/>
+     <exports symbol='xmlSetProp' type='function'/>
+     <exports symbol='xmlNewGlobalNs' type='function'/>
+     <exports symbol='xmlBufferDump' type='function'/>
+     <exports symbol='xmlNodeGetContent' type='function'/>
+     <exports symbol='xmlIsXHTML' type='function'/>
+     <exports symbol='xmlNodeSetLang' type='function'/>
+     <exports symbol='xmlDocDumpMemoryEnc' type='function'/>
+     <exports symbol='xmlFreeDtd' type='function'/>
+     <exports symbol='xmlFreeNodeList' type='function'/>
+     <exports symbol='xmlFreeDoc' type='function'/>
+     <exports symbol='xmlDocDumpMemory' type='function'/>
+     <exports symbol='xmlNewTextLen' type='function'/>
+     <exports symbol='xmlCopyDoc' type='function'/>
+     <exports symbol='xmlNewDocNode' type='function'/>
+     <exports symbol='xmlDocDump' type='function'/>
+     <exports symbol='xmlSaveFileEnc' type='function'/>
+     <exports symbol='xmlFreeProp' type='function'/>
+     <exports symbol='xmlSetNsProp' type='function'/>
+     <exports symbol='xmlIsBlankNode' type='function'/>
+     <exports symbol='xmlDocDumpFormatMemory' type='function'/>
+     <exports symbol='xmlGetNoNsProp' type='function'/>
+     <exports symbol='xmlDocDumpFormatMemoryEnc' type='function'/>
+     <exports symbol='xmlNewProp' type='function'/>
+     <exports symbol='xmlTextConcat' type='function'/>
+     <exports symbol='xmlNodeGetSpacePreserve' type='function'/>
+     <exports symbol='xmlNewDocTextLen' type='function'/>
+     <exports symbol='xmlNewDtd' type='function'/>
+     <exports symbol='xmlBufferShrink' type='function'/>
+     <exports symbol='xmlNewNsProp' type='function'/>
+     <exports symbol='xmlFreeNsList' type='function'/>
+     <exports symbol='xmlGetLastChild' type='function'/>
     </file>
     <file name='uri'>
      <summary>library of generic URI related routines</summary>
      <description>library of generic URI related routines Implements RFC 2396 </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlNormalizeURIPath'/>
-     <exports symbol='xmlPrintURI'/>
-     <exports symbol='xmlURIUnescapeString'/>
-     <exports symbol='xmlParseURI'/>
-     <exports symbol='xmlCreateURI'/>
-     <exports symbol='xmlURIEscapeStr'/>
-     <exports symbol='xmlCanonicPath'/>
-     <exports symbol='xmlFreeURI'/>
-     <exports symbol='xmlParseURIReference'/>
-     <exports symbol='xmlURIPtr'/>
-     <exports symbol='_xmlURI'/>
-     <exports symbol='xmlSaveUri'/>
-     <exports symbol='xmlURIEscape'/>
-     <exports symbol='xmlURI'/>
-     <exports symbol='xmlBuildURI'/>
+     <exports symbol='xmlURI' type='typedef'/>
+     <exports symbol='xmlURIPtr' type='typedef'/>
+     <exports symbol='_xmlURI' type='struct'/>
+     <exports symbol='xmlNormalizeURIPath' type='function'/>
+     <exports symbol='xmlPrintURI' type='function'/>
+     <exports symbol='xmlURIUnescapeString' type='function'/>
+     <exports symbol='xmlParseURI' type='function'/>
+     <exports symbol='xmlCreateURI' type='function'/>
+     <exports symbol='xmlURIEscapeStr' type='function'/>
+     <exports symbol='xmlCanonicPath' type='function'/>
+     <exports symbol='xmlFreeURI' type='function'/>
+     <exports symbol='xmlParseURIReference' type='function'/>
+     <exports symbol='xmlSaveUri' type='function'/>
+     <exports symbol='xmlURIEscape' type='function'/>
+     <exports symbol='xmlBuildURI' type='function'/>
     </file>
     <file name='valid'>
      <summary>The DTD validation</summary>
      <description>API for the DTD handling and the validity checking </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlValidateDocument'/>
-     <exports symbol='xmlFreeNotationTable'/>
-     <exports symbol='xmlNotationTable'/>
-     <exports symbol='xmlValidateNameValue'/>
-     <exports symbol='xmlSnprintfElementContent'/>
-     <exports symbol='xmlAddRef'/>
-     <exports symbol='xmlDumpAttributeDecl'/>
-     <exports symbol='xmlValidateDocumentFinal'/>
-     <exports symbol='xmlElementTablePtr'/>
-     <exports symbol='xmlValidateDtdFinal'/>
-     <exports symbol='xmlDumpAttributeTable'/>
-     <exports symbol='xmlCreateEnumeration'/>
-     <exports symbol='xmlValidateOneAttribute'/>
-     <exports symbol='xmlValidGetValidElements'/>
-     <exports symbol='xmlDumpNotationTable'/>
-     <exports symbol='xmlDumpNotationDecl'/>
-     <exports symbol='xmlIsID'/>
-     <exports symbol='xmlGetDtdQAttrDesc'/>
-     <exports symbol='xmlFreeAttributeTable'/>
-     <exports symbol='xmlValidityErrorFunc'/>
-     <exports symbol='xmlValidateAttributeDecl'/>
-     <exports symbol='xmlGetDtdQElementDesc'/>
-     <exports symbol='xmlGetRefs'/>
-     <exports symbol='xmlCopyNotationTable'/>
-     <exports symbol='xmlNotationTablePtr'/>
-     <exports symbol='xmlElementTable'/>
-     <exports symbol='xmlValidGetPotentialChildren'/>
-     <exports symbol='xmlAddNotationDecl'/>
-     <exports symbol='xmlValidateElementDecl'/>
-     <exports symbol='xmlAddAttributeDecl'/>
-     <exports symbol='xmlGetID'/>
-     <exports symbol='xmlAddID'/>
-     <exports symbol='xmlValidState'/>
-     <exports symbol='xmlSprintfElementContent'/>
-     <exports symbol='xmlValidateOneElement'/>
-     <exports symbol='xmlValidateNmtokenValue'/>
-     <exports symbol='xmlDumpElementTable'/>
-     <exports symbol='xmlAttributeTablePtr'/>
-     <exports symbol='xmlIDTable'/>
-     <exports symbol='_xmlValidCtxt'/>
-     <exports symbol='xmlAddElementDecl'/>
-     <exports symbol='xmlGetDtdNotationDesc'/>
-     <exports symbol='xmlValidateOneNamespace'/>
-     <exports symbol='xmlValidatePushElement'/>
-     <exports symbol='xmlIsRef'/>
-     <exports symbol='xmlRemoveRef'/>
-     <exports symbol='xmlCopyElementTable'/>
-     <exports symbol='xmlValidateNmtokensValue'/>
-     <exports symbol='xmlFreeRefTable'/>
-     <exports symbol='xmlValidCtxtPtr'/>
-     <exports symbol='xmlRefTable'/>
-     <exports symbol='xmlValidityWarningFunc'/>
-     <exports symbol='xmlRemoveID'/>
-     <exports symbol='xmlFreeElementTable'/>
-     <exports symbol='xmlValidatePopElement'/>
-     <exports symbol='xmlFreeIDTable'/>
-     <exports symbol='xmlValidCtxt'/>
-     <exports symbol='xmlFreeValidCtxt'/>
-     <exports symbol='xmlCopyAttributeTable'/>
-     <exports symbol='xmlCopyElementContent'/>
-     <exports symbol='xmlValidateAttributeValue'/>
-     <exports symbol='xmlValidateRoot'/>
-     <exports symbol='xmlValidCtxtNormalizeAttributeValue'/>
-     <exports symbol='xmlValidStatePtr'/>
-     <exports symbol='xmlIDTablePtr'/>
-     <exports symbol='xmlFreeEnumeration'/>
-     <exports symbol='xmlValidateNamesValue'/>
-     <exports symbol='xmlCopyEnumeration'/>
-     <exports symbol='xmlGetDtdAttrDesc'/>
-     <exports symbol='xmlValidateDtd'/>
-     <exports symbol='xmlNewValidCtxt'/>
-     <exports symbol='xmlIsMixedElement'/>
-     <exports symbol='xmlDumpElementDecl'/>
-     <exports symbol='xmlValidNormalizeAttributeValue'/>
-     <exports symbol='xmlValidBuildContentModel'/>
-     <exports symbol='xmlValidateElement'/>
-     <exports symbol='xmlValidateNotationUse'/>
-     <exports symbol='xmlAttributeTable'/>
-     <exports symbol='xmlValidateNotationDecl'/>
-     <exports symbol='xmlNewElementContent'/>
-     <exports symbol='xmlGetDtdElementDesc'/>
-     <exports symbol='xmlFreeElementContent'/>
-     <exports symbol='xmlValidatePushCData'/>
-     <exports symbol='xmlRefTablePtr'/>
+     <exports symbol='xmlElementTable' type='typedef'/>
+     <exports symbol='xmlValidStatePtr' type='typedef'/>
+     <exports symbol='xmlIDTablePtr' type='typedef'/>
+     <exports symbol='xmlNotationTablePtr' type='typedef'/>
+     <exports symbol='xmlAttributeTable' type='typedef'/>
+     <exports symbol='xmlElementTablePtr' type='typedef'/>
+     <exports symbol='xmlRefTablePtr' type='typedef'/>
+     <exports symbol='xmlNotationTable' type='typedef'/>
+     <exports symbol='xmlRefTable' type='typedef'/>
+     <exports symbol='xmlValidState' type='typedef'/>
+     <exports symbol='xmlValidCtxt' type='typedef'/>
+     <exports symbol='xmlAttributeTablePtr' type='typedef'/>
+     <exports symbol='xmlIDTable' type='typedef'/>
+     <exports symbol='xmlValidCtxtPtr' type='typedef'/>
+     <exports symbol='_xmlValidCtxt' type='struct'/>
+     <exports symbol='xmlFreeNotationTable' type='function'/>
+     <exports symbol='xmlValidateNameValue' type='function'/>
+     <exports symbol='xmlValidateElement' type='function'/>
+     <exports symbol='xmlAddRef' type='function'/>
+     <exports symbol='xmlDumpAttributeDecl' type='function'/>
+     <exports symbol='xmlValidateDocumentFinal' type='function'/>
+     <exports symbol='xmlValidateDtdFinal' type='function'/>
+     <exports symbol='xmlDumpAttributeTable' type='function'/>
+     <exports symbol='xmlCreateEnumeration' type='function'/>
+     <exports symbol='xmlValidateOneAttribute' type='function'/>
+     <exports symbol='xmlValidGetValidElements' type='function'/>
+     <exports symbol='xmlDumpNotationTable' type='function'/>
+     <exports symbol='xmlFreeAttributeTable' type='function'/>
+     <exports symbol='xmlIsID' type='function'/>
+     <exports symbol='xmlGetDtdQAttrDesc' type='function'/>
+     <exports symbol='xmlDumpNotationDecl' type='function'/>
+     <exports symbol='xmlValidityErrorFunc' type='function'/>
+     <exports symbol='xmlGetDtdQElementDesc' type='function'/>
+     <exports symbol='xmlGetRefs' type='function'/>
+     <exports symbol='xmlCopyNotationTable' type='function'/>
+     <exports symbol='xmlValidateDocument' type='function'/>
+     <exports symbol='xmlValidGetPotentialChildren' type='function'/>
+     <exports symbol='xmlAddNotationDecl' type='function'/>
+     <exports symbol='xmlValidateElementDecl' type='function'/>
+     <exports symbol='xmlAddAttributeDecl' type='function'/>
+     <exports symbol='xmlGetID' type='function'/>
+     <exports symbol='xmlAddID' type='function'/>
+     <exports symbol='xmlValidateAttributeDecl' type='function'/>
+     <exports symbol='xmlSprintfElementContent' type='function'/>
+     <exports symbol='xmlValidateOneElement' type='function'/>
+     <exports symbol='xmlValidateNmtokenValue' type='function'/>
+     <exports symbol='xmlRemoveRef' type='function'/>
+     <exports symbol='xmlValidateNmtokensValue' type='function'/>
+     <exports symbol='xmlAddElementDecl' type='function'/>
+     <exports symbol='xmlSnprintfElementContent' type='function'/>
+     <exports symbol='xmlValidateOneNamespace' type='function'/>
+     <exports symbol='xmlValidatePushElement' type='function'/>
+     <exports symbol='xmlIsRef' type='function'/>
+     <exports symbol='xmlDumpElementTable' type='function'/>
+     <exports symbol='xmlCopyElementTable' type='function'/>
+     <exports symbol='xmlFreeRefTable' type='function'/>
+     <exports symbol='xmlFreeElementContent' type='function'/>
+     <exports symbol='xmlRemoveID' type='function'/>
+     <exports symbol='xmlFreeElementTable' type='function'/>
+     <exports symbol='xmlFreeIDTable' type='function'/>
+     <exports symbol='xmlFreeValidCtxt' type='function'/>
+     <exports symbol='xmlCopyAttributeTable' type='function'/>
+     <exports symbol='xmlCopyElementContent' type='function'/>
+     <exports symbol='xmlValidateAttributeValue' type='function'/>
+     <exports symbol='xmlValidCtxtNormalizeAttributeValue' type='function'/>
+     <exports symbol='xmlValidityWarningFunc' type='function'/>
+     <exports symbol='xmlValidatePopElement' type='function'/>
+     <exports symbol='xmlFreeEnumeration' type='function'/>
+     <exports symbol='xmlValidateNamesValue' type='function'/>
+     <exports symbol='xmlCopyEnumeration' type='function'/>
+     <exports symbol='xmlGetDtdAttrDesc' type='function'/>
+     <exports symbol='xmlValidateDtd' type='function'/>
+     <exports symbol='xmlNewValidCtxt' type='function'/>
+     <exports symbol='xmlIsMixedElement' type='function'/>
+     <exports symbol='xmlDumpElementDecl' type='function'/>
+     <exports symbol='xmlValidNormalizeAttributeValue' type='function'/>
+     <exports symbol='xmlValidBuildContentModel' type='function'/>
+     <exports symbol='xmlValidateNotationUse' type='function'/>
+     <exports symbol='xmlValidateRoot' type='function'/>
+     <exports symbol='xmlValidateNotationDecl' type='function'/>
+     <exports symbol='xmlNewElementContent' type='function'/>
+     <exports symbol='xmlGetDtdElementDesc' type='function'/>
+     <exports symbol='xmlGetDtdNotationDesc' type='function'/>
+     <exports symbol='xmlValidatePushCData' type='function'/>
     </file>
     <file name='xinclude'>
      <summary>implementation of XInclude</summary>
      <description>API to handle XInclude processing, implements the World Wide Web Consortium Working Draft 26 October 2000</description>
      <author>Daniel Veillard </author>
-     <exports symbol='XINCLUDE_PARSE_TEXT'/>
-     <exports symbol='xmlXIncludeCtxt'/>
-     <exports symbol='XINCLUDE_HREF'/>
-     <exports symbol='xmlXIncludeProcessNode'/>
-     <exports symbol='XINCLUDE_FALLBACK'/>
-     <exports symbol='XINCLUDE_NS'/>
-     <exports symbol='xmlXIncludeCtxtPtr'/>
-     <exports symbol='xmlXIncludeProcessTree'/>
-     <exports symbol='xmlXIncludeProcess'/>
-     <exports symbol='xmlXIncludeFreeContext'/>
-     <exports symbol='XINCLUDE_PARSE'/>
-     <exports symbol='XINCLUDE_NODE'/>
-     <exports symbol='XINCLUDE_PARSE_XML'/>
-     <exports symbol='xmlXIncludeNewContext'/>
-     <exports symbol='XINCLUDE_PARSE_ENCODING'/>
+     <exports symbol='XINCLUDE_PARSE_TEXT' type='macro'/>
+     <exports symbol='XINCLUDE_NODE' type='macro'/>
+     <exports symbol='XINCLUDE_PARSE_XML' type='macro'/>
+     <exports symbol='XINCLUDE_HREF' type='macro'/>
+     <exports symbol='XINCLUDE_FALLBACK' type='macro'/>
+     <exports symbol='XINCLUDE_NS' type='macro'/>
+     <exports symbol='XINCLUDE_PARSE' type='macro'/>
+     <exports symbol='XINCLUDE_PARSE_ENCODING' type='macro'/>
+     <exports symbol='xmlXIncludeCtxt' type='typedef'/>
+     <exports symbol='xmlXIncludeCtxtPtr' type='typedef'/>
+     <exports symbol='xmlXIncludeProcess' type='function'/>
+     <exports symbol='xmlXIncludeNewContext' type='function'/>
+     <exports symbol='xmlXIncludeProcessNode' type='function'/>
+     <exports symbol='xmlXIncludeProcessTree' type='function'/>
+     <exports symbol='xmlXIncludeFreeContext' type='function'/>
     </file>
     <file name='xlink'>
      <summary>unfinished XLink detection module</summary>
      <description>unfinished XLink detection module </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xlinkShow'/>
-     <exports symbol='XLINK_TYPE_SIMPLE'/>
-     <exports symbol='xlinkHRef'/>
-     <exports symbol='xlinkSetDefaultHandler'/>
-     <exports symbol='XLINK_SHOW_NEW'/>
-     <exports symbol='XLINK_TYPE_EXTENDED'/>
-     <exports symbol='xlinkExtendedLinkSetFunk'/>
-     <exports symbol='xlinkActuate'/>
-     <exports symbol='xlinkSetDefaultDetect'/>
-     <exports symbol='xlinkIsLink'/>
-     <exports symbol='xlinkGetDefaultDetect'/>
-     <exports symbol='xlinkTitle'/>
-     <exports symbol='XLINK_TYPE_EXTENDED_SET'/>
-     <exports symbol='XLINK_ACTUATE_NONE'/>
-     <exports symbol='xlinkRole'/>
-     <exports symbol='xlinkExtendedLinkFunk'/>
-     <exports symbol='XLINK_SHOW_NONE'/>
-     <exports symbol='XLINK_TYPE_NONE'/>
-     <exports symbol='XLINK_SHOW_REPLACE'/>
-     <exports symbol='xlinkHandler'/>
-     <exports symbol='xlinkNodeDetectFunc'/>
-     <exports symbol='xlinkGetDefaultHandler'/>
-     <exports symbol='xlinkHandlerPtr'/>
-     <exports symbol='XLINK_ACTUATE_ONREQUEST'/>
-     <exports symbol='xlinkType'/>
-     <exports symbol='_xlinkHandler'/>
-     <exports symbol='xlinkSimpleLinkFunk'/>
-     <exports symbol='XLINK_ACTUATE_AUTO'/>
-     <exports symbol='XLINK_SHOW_EMBED'/>
+     <exports symbol='XLINK_ACTUATE_NONE' type='enum'/>
+     <exports symbol='XLINK_SHOW_NEW' type='enum'/>
+     <exports symbol='XLINK_TYPE_EXTENDED' type='enum'/>
+     <exports symbol='XLINK_TYPE_NONE' type='enum'/>
+     <exports symbol='XLINK_SHOW_REPLACE' type='enum'/>
+     <exports symbol='XLINK_ACTUATE_ONREQUEST' type='enum'/>
+     <exports symbol='XLINK_SHOW_NONE' type='enum'/>
+     <exports symbol='XLINK_TYPE_EXTENDED_SET' type='enum'/>
+     <exports symbol='XLINK_ACTUATE_AUTO' type='enum'/>
+     <exports symbol='XLINK_SHOW_EMBED' type='enum'/>
+     <exports symbol='XLINK_TYPE_SIMPLE' type='enum'/>
+     <exports symbol='xlinkHandler' type='typedef'/>
+     <exports symbol='xlinkRole' type='typedef'/>
+     <exports symbol='xlinkShow' type='typedef'/>
+     <exports symbol='xlinkHandlerPtr' type='typedef'/>
+     <exports symbol='xlinkHRef' type='typedef'/>
+     <exports symbol='xlinkType' type='typedef'/>
+     <exports symbol='xlinkTitle' type='typedef'/>
+     <exports symbol='xlinkActuate' type='typedef'/>
+     <exports symbol='_xlinkHandler' type='struct'/>
+     <exports symbol='xlinkNodeDetectFunc' type='function'/>
+     <exports symbol='xlinkGetDefaultHandler' type='function'/>
+     <exports symbol='xlinkIsLink' type='function'/>
+     <exports symbol='xlinkSimpleLinkFunk' type='function'/>
+     <exports symbol='xlinkSetDefaultHandler' type='function'/>
+     <exports symbol='xlinkSetDefaultDetect' type='function'/>
+     <exports symbol='xlinkExtendedLinkFunk' type='function'/>
+     <exports symbol='xlinkExtendedLinkSetFunk' type='function'/>
+     <exports symbol='xlinkGetDefaultDetect' type='function'/>
     </file>
     <file name='xmlIO'>
      <summary>interface for the I/O interfaces used by the parser</summary>
      <description>interface for the I/O interfaces used by the parser </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlIOHTTPRead'/>
-     <exports symbol='xmlInputMatchCallback'/>
-     <exports symbol='xmlRegisterDefaultOutputCallbacks'/>
-     <exports symbol='xmlFileClose'/>
-     <exports symbol='xmlOutputMatchCallback'/>
-     <exports symbol='xmlIOFTPRead'/>
-     <exports symbol='xmlRegisterHTTPPostCallbacks'/>
-     <exports symbol='xmlIOFTPOpen'/>
-     <exports symbol='xmlIOFTPClose'/>
-     <exports symbol='xmlFileOpen'/>
-     <exports symbol='_xmlOutputBuffer'/>
-     <exports symbol='xmlOutputBufferCreateFile'/>
-     <exports symbol='xmlCheckFilename'/>
-     <exports symbol='xmlOutputOpenCallback'/>
-     <exports symbol='xmlParserInputBufferCreateFilename'/>
-     <exports symbol='xmlOutputBufferClose'/>
-     <exports symbol='xmlParserInputBufferCreateFd'/>
-     <exports symbol='xmlOutputBufferCreateIO'/>
-     <exports symbol='xmlOutputWriteCallback'/>
-     <exports symbol='xmlOutputBufferFlush'/>
-     <exports symbol='xmlCheckHTTPInput'/>
-     <exports symbol='xmlRegisterOutputCallbacks'/>
-     <exports symbol='xmlParserInputBufferCreateMem'/>
-     <exports symbol='xmlIOFTPMatch'/>
-     <exports symbol='xmlRegisterInputCallbacks'/>
-     <exports symbol='xmlFreeParserInputBuffer'/>
-     <exports symbol='xmlRegisterDefaultInputCallbacks'/>
-     <exports symbol='xmlParserInputBufferGrow'/>
-     <exports symbol='xmlAllocOutputBuffer'/>
-     <exports symbol='xmlNoNetExternalEntityLoader'/>
-     <exports symbol='xmlOutputCloseCallback'/>
-     <exports symbol='xmlIOHTTPMatch'/>
-     <exports symbol='xmlIOHTTPOpen'/>
-     <exports symbol='xmlParserInputBufferCreateIO'/>
-     <exports symbol='xmlOutputBufferCreateFd'/>
-     <exports symbol='xmlNormalizeWindowsPath'/>
-     <exports symbol='xmlInputReadCallback'/>
-     <exports symbol='_xmlParserInputBuffer'/>
-     <exports symbol='xmlIOHTTPClose'/>
-     <exports symbol='xmlParserInputBufferPush'/>
-     <exports symbol='xmlOutputBufferCreateFilename'/>
-     <exports symbol='xmlCleanupOutputCallbacks'/>
-     <exports symbol='xmlInputOpenCallback'/>
-     <exports symbol='xmlParserInputBufferRead'/>
-     <exports symbol='xmlOutputBufferWriteString'/>
-     <exports symbol='xmlFileMatch'/>
-     <exports symbol='xmlFileRead'/>
-     <exports symbol='xmlParserInputBufferCreateFile'/>
-     <exports symbol='xmlParserInputBufferCreateStatic'/>
-     <exports symbol='xmlParserGetDirectory'/>
-     <exports symbol='xmlOutputBufferWrite'/>
-     <exports symbol='xmlCleanupInputCallbacks'/>
-     <exports symbol='xmlInputCloseCallback'/>
-     <exports symbol='xmlIOHTTPOpenW'/>
-     <exports symbol='xmlAllocParserInputBuffer'/>
+     <exports symbol='_xmlParserInputBuffer' type='struct'/>
+     <exports symbol='_xmlOutputBuffer' type='struct'/>
+     <exports symbol='xmlIOHTTPRead' type='function'/>
+     <exports symbol='xmlInputMatchCallback' type='function'/>
+     <exports symbol='xmlRegisterDefaultOutputCallbacks' type='function'/>
+     <exports symbol='xmlFileClose' type='function'/>
+     <exports symbol='xmlOutputMatchCallback' type='function'/>
+     <exports symbol='xmlIOFTPRead' type='function'/>
+     <exports symbol='xmlRegisterHTTPPostCallbacks' type='function'/>
+     <exports symbol='xmlIOFTPOpen' type='function'/>
+     <exports symbol='xmlIOFTPClose' type='function'/>
+     <exports symbol='xmlFileOpen' type='function'/>
+     <exports symbol='xmlOutputBufferCreateFile' type='function'/>
+     <exports symbol='xmlCheckFilename' type='function'/>
+     <exports symbol='xmlOutputOpenCallback' type='function'/>
+     <exports symbol='xmlParserInputBufferCreateFilename' type='function'/>
+     <exports symbol='xmlOutputBufferClose' type='function'/>
+     <exports symbol='xmlParserInputBufferCreateFd' type='function'/>
+     <exports symbol='xmlOutputBufferCreateIO' type='function'/>
+     <exports symbol='xmlOutputWriteCallback' type='function'/>
+     <exports symbol='xmlOutputBufferFlush' type='function'/>
+     <exports symbol='xmlCheckHTTPInput' type='function'/>
+     <exports symbol='xmlRegisterOutputCallbacks' type='function'/>
+     <exports symbol='xmlParserInputBufferCreateMem' type='function'/>
+     <exports symbol='xmlIOFTPMatch' type='function'/>
+     <exports symbol='xmlRegisterInputCallbacks' type='function'/>
+     <exports symbol='xmlFreeParserInputBuffer' type='function'/>
+     <exports symbol='xmlRegisterDefaultInputCallbacks' type='function'/>
+     <exports symbol='xmlParserInputBufferGrow' type='function'/>
+     <exports symbol='xmlAllocOutputBuffer' type='function'/>
+     <exports symbol='xmlNoNetExternalEntityLoader' type='function'/>
+     <exports symbol='xmlOutputCloseCallback' type='function'/>
+     <exports symbol='xmlIOHTTPMatch' type='function'/>
+     <exports symbol='xmlIOHTTPOpen' type='function'/>
+     <exports symbol='xmlParserInputBufferCreateIO' type='function'/>
+     <exports symbol='xmlOutputBufferCreateFd' type='function'/>
+     <exports symbol='xmlNormalizeWindowsPath' type='function'/>
+     <exports symbol='xmlInputReadCallback' type='function'/>
+     <exports symbol='xmlParserInputBufferCreateStatic' type='function'/>
+     <exports symbol='xmlIOHTTPClose' type='function'/>
+     <exports symbol='xmlParserInputBufferPush' type='function'/>
+     <exports symbol='xmlOutputBufferCreateFilename' type='function'/>
+     <exports symbol='xmlCleanupOutputCallbacks' type='function'/>
+     <exports symbol='xmlInputOpenCallback' type='function'/>
+     <exports symbol='xmlParserInputBufferRead' type='function'/>
+     <exports symbol='xmlOutputBufferWriteString' type='function'/>
+     <exports symbol='xmlFileMatch' type='function'/>
+     <exports symbol='xmlFileRead' type='function'/>
+     <exports symbol='xmlParserInputBufferCreateFile' type='function'/>
+     <exports symbol='xmlParserGetDirectory' type='function'/>
+     <exports symbol='xmlOutputBufferWrite' type='function'/>
+     <exports symbol='xmlCleanupInputCallbacks' type='function'/>
+     <exports symbol='xmlInputCloseCallback' type='function'/>
+     <exports symbol='xmlIOHTTPOpenW' type='function'/>
+     <exports symbol='xmlAllocParserInputBuffer' type='function'/>
     </file>
     <file name='xmlautomata'>
      <summary>API to build regexp automata</summary>
      <description>the API to build regexp automata </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlFreeAutomata'/>
-     <exports symbol='xmlAutomataNewCounter'/>
-     <exports symbol='xmlAutomataGetInitState'/>
-     <exports symbol='xmlAutomataNewTransition2'/>
-     <exports symbol='xmlAutomataState'/>
-     <exports symbol='xmlAutomataNewState'/>
-     <exports symbol='xmlAutomataPtr'/>
-     <exports symbol='xmlAutomataNewCountTrans'/>
-     <exports symbol='xmlAutomataNewAllTrans'/>
-     <exports symbol='xmlAutomataNewOnceTrans'/>
-     <exports symbol='xmlAutomataNewCounterTrans'/>
-     <exports symbol='xmlAutomataCompile'/>
-     <exports symbol='xmlNewAutomata'/>
-     <exports symbol='xmlAutomataNewEpsilon'/>
-     <exports symbol='xmlAutomataStatePtr'/>
-     <exports symbol='xmlAutomataSetFinalState'/>
-     <exports symbol='xmlAutomata'/>
-     <exports symbol='xmlAutomataNewCountedTrans'/>
-     <exports symbol='xmlAutomataNewTransition'/>
-     <exports symbol='xmlAutomataIsDeterminist'/>
+     <exports symbol='xmlAutomataStatePtr' type='typedef'/>
+     <exports symbol='xmlAutomata' type='typedef'/>
+     <exports symbol='xmlAutomataPtr' type='typedef'/>
+     <exports symbol='xmlAutomataState' type='typedef'/>
+     <exports symbol='xmlFreeAutomata' type='function'/>
+     <exports symbol='xmlAutomataNewCounter' type='function'/>
+     <exports symbol='xmlAutomataGetInitState' type='function'/>
+     <exports symbol='xmlAutomataNewTransition2' type='function'/>
+     <exports symbol='xmlAutomataNewCountTrans' type='function'/>
+     <exports symbol='xmlAutomataNewAllTrans' type='function'/>
+     <exports symbol='xmlAutomataNewState' type='function'/>
+     <exports symbol='xmlAutomataNewCounterTrans' type='function'/>
+     <exports symbol='xmlAutomataCompile' type='function'/>
+     <exports symbol='xmlNewAutomata' type='function'/>
+     <exports symbol='xmlAutomataNewEpsilon' type='function'/>
+     <exports symbol='xmlAutomataNewCountedTrans' type='function'/>
+     <exports symbol='xmlAutomataSetFinalState' type='function'/>
+     <exports symbol='xmlAutomataNewOnceTrans' type='function'/>
+     <exports symbol='xmlAutomataNewTransition' type='function'/>
+     <exports symbol='xmlAutomataIsDeterminist' type='function'/>
     </file>
     <file name='xmlerror'>
      <summary>error handling</summary>
      <description>the API used to report errors </description>
      <author>Daniel Veillard </author>
-     <exports symbol='XML_DTD_CONTENT_ERROR'/>
-     <exports symbol='XML_SCHEMAV_NOROOT'/>
-     <exports symbol='XML_DTD_ATTRIBUTE_VALUE'/>
-     <exports symbol='XML_ERR_INVALID_DEC_CHARREF'/>
-     <exports symbol='XML_RNGP_PARENTREF_NO_PARENT'/>
-     <exports symbol='XML_ERR_CDATA_NOT_FINISHED'/>
-     <exports symbol='XML_XINCLUDE_INCLUDE_IN_INCLUDE'/>
-     <exports symbol='xmlParserWarning'/>
-     <exports symbol='xmlErrorDomain'/>
-     <exports symbol='XML_ERR_DOCUMENT_END'/>
-     <exports symbol='xmlStructuredErrorFunc'/>
-     <exports symbol='XML_ERR_ENTITY_NOT_STARTED'/>
-     <exports symbol='XML_ERR_CHARREF_IN_PROLOG'/>
-     <exports symbol='XML_RNGP_INVALID_DEFINE_NAME'/>
-     <exports symbol='XML_SAVE_UNKNOWN_ENCODING'/>
-     <exports symbol='XML_ERR_CONDSEC_INVALID_KEYWORD'/>
-     <exports symbol='XML_CATALOG_MISSING_ATTR'/>
-     <exports symbol='XML_ERR_NO_MEMORY'/>
-     <exports symbol='XML_ERR_PEREF_SEMICOL_MISSING'/>
-     <exports symbol='XML_ERR_DOCUMENT_START'/>
-     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_TEXT'/>
-     <exports symbol='XML_FROM_IO'/>
-     <exports symbol='XML_HTML_UNKNOWN_TAG'/>
-     <exports symbol='XML_DTD_NOT_STANDALONE'/>
-     <exports symbol='XML_RNGP_PAT_START_ATTR'/>
-     <exports symbol='XML_SCHEMAV_NOTEMPTY'/>
-     <exports symbol='XML_RNGP_NEED_COMBINE'/>
-     <exports symbol='XML_IO_EROFS'/>
-     <exports symbol='XML_ERR_DOCTYPE_NOT_FINISHED'/>
-     <exports symbol='XML_ERR_XMLDECL_NOT_STARTED'/>
-     <exports symbol='XML_IO_EXDEV'/>
-     <exports symbol='xmlParserValidityError'/>
-     <exports symbol='XML_XINCLUDE_NO_FALLBACK'/>
-     <exports symbol='XML_RNGP_URI_FRAGMENT'/>
-     <exports symbol='XML_FROM_MEMORY'/>
-     <exports symbol='XML_SCHEMAP_INVALID_MAXOCCURS'/>
-     <exports symbol='XML_ERR_MISSING_ENCODING'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_ATTR_CHILD'/>
-     <exports symbol='XML_RNGP_ELEMENT_CONTENT'/>
-     <exports symbol='XML_ERR_LT_IN_ATTRIBUTE'/>
-     <exports symbol='XML_XINCLUDE_ENTITY_DEF_MISMATCH'/>
-     <exports symbol='XML_XPTR_RESOURCE_ERROR'/>
-     <exports symbol='XML_IO_EISCONN'/>
-     <exports symbol='XML_ERR_GT_REQUIRED'/>
-     <exports symbol='XML_SCHEMAP_FACET_NO_VALUE'/>
-     <exports symbol='XML_HTTP_UNKNOWN_HOST'/>
-     <exports symbol='XML_XPTR_EXTRA_OBJECTS'/>
-     <exports symbol='XML_ERR_ENTITY_NOT_FINISHED'/>
-     <exports symbol='XML_IO_UNKNOWN'/>
-     <exports symbol='XML_RNGP_PAT_ONEMORE_GROUP_ATTR'/>
-     <exports symbol='XML_ERR_VALUE_REQUIRED'/>
-     <exports symbol='XML_RNGP_INTERLEAVE_EMPTY'/>
-     <exports symbol='XML_IO_ECHILD'/>
-     <exports symbol='XML_RNGP_URI_NOT_ABSOLUTE'/>
-     <exports symbol='XML_RNGP_NAME_MISSING'/>
-     <exports symbol='XML_ERR_CONDSEC_NOT_STARTED'/>
-     <exports symbol='XML_RNGP_START_MISSING'/>
-     <exports symbol='XML_ERR_PEREF_IN_EPILOG'/>
-     <exports symbol='XML_IO_EINTR'/>
-     <exports symbol='XML_FROM_VALID'/>
-     <exports symbol='XML_FTP_PASV_ANSWER'/>
-     <exports symbol='XML_RNGP_ATTRIBUTE_NOOP'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_ELEM_CHILD'/>
-     <exports symbol='XML_CATALOG_RECURSION'/>
-     <exports symbol='XML_SCHEMAP_REDEFINED_GROUP'/>
-     <exports symbol='XML_SCHEMAP_IMPORT_NAMESPACE_NOT_URI'/>
-     <exports symbol='XML_ERR_CHARREF_IN_EPILOG'/>
-     <exports symbol='XML_DTD_ELEM_DEFAULT_NAMESPACE'/>
-     <exports symbol='XML_SCHEMAP_FAILED_BUILD_IMPORT'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_ATTRGRP_CHILD'/>
-     <exports symbol='XML_SCHEMAP_REGEXP_INVALID'/>
-     <exports symbol='XML_XPTR_CHILDSEQ_START'/>
-     <exports symbol='XML_C14N_CREATE_STACK'/>
-     <exports symbol='XML_XINCLUDE_TEXT_FRAGMENT'/>
-     <exports symbol='XML_ERR_EXT_SUBSET_NOT_FINISHED'/>
-     <exports symbol='XML_RNGP_PARENTREF_NAME_INVALID'/>
-     <exports symbol='XML_FROM_DTD'/>
-     <exports symbol='XML_SCHEMAV_CONSTRUCT'/>
-     <exports symbol='XML_RNGP_EXTERNALREF_RECURSE'/>
-     <exports symbol='xmlParserValidityWarning'/>
-     <exports symbol='XML_DTD_ATTRIBUTE_DEFAULT'/>
-     <exports symbol='XML_RNGP_UNKNOWN_COMBINE'/>
-     <exports symbol='XML_RNGP_START_EMPTY'/>
-     <exports symbol='XML_RNGP_ELEM_CONTENT_EMPTY'/>
-     <exports symbol='XML_XPATH_EXPRESSION_OK'/>
-     <exports symbol='xmlSetGenericErrorFunc'/>
-     <exports symbol='XML_IO_EMLINK'/>
-     <exports symbol='XML_ERR_NMTOKEN_REQUIRED'/>
-     <exports symbol='XML_RNGP_ANYNAME_ATTR_ANCESTOR'/>
-     <exports symbol='XML_ERR_ENTITY_IS_EXTERNAL'/>
-     <exports symbol='XML_WAR_UNDECLARED_ENTITY'/>
-     <exports symbol='XML_ERR_PI_NOT_STARTED'/>
-     <exports symbol='XML_RNGP_START_CONTENT'/>
-     <exports symbol='XML_RNGP_GROUP_ATTR_CONFLICT'/>
-     <exports symbol='XML_RNGP_EMPTY'/>
-     <exports symbol='XML_SCHEMAV_ATTRUNKNOWN'/>
-     <exports symbol='XML_IO_ENODEV'/>
-     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_REF'/>
-     <exports symbol='XML_FROM_PARSER'/>
-     <exports symbol='XML_XINCLUDE_RECURSION'/>
-     <exports symbol='XML_C14N_CREATE_CTXT'/>
-     <exports symbol='XML_SCHEMAP_ATTRGRP_NONAME_NOREF'/>
-     <exports symbol='XML_SCHEMAP_RESTRICTION_NONAME_NOREF'/>
-     <exports symbol='XML_XINCLUDE_TEXT_DOCUMENT'/>
-     <exports symbol='xmlParserPrintFileContext'/>
-     <exports symbol='XML_XINCLUDE_FALLBACKS_IN_INCLUDE'/>
-     <exports symbol='XML_ERR_STANDALONE_VALUE'/>
-     <exports symbol='XML_SCHEMAP_REDEFINED_ATTR'/>
-     <exports symbol='XML_ERR_ENTITY_LOOP'/>
-     <exports symbol='XML_XPATH_INVALID_TYPE'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_RESTRICTION_CHILD'/>
-     <exports symbol='XML_IO_EINPROGRESS'/>
-     <exports symbol='XML_IO_FLUSH'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_COMPLEXCONTENT_CHILD'/>
-     <exports symbol='XML_C14N_INVALID_NODE'/>
-     <exports symbol='XML_IO_EFAULT'/>
-     <exports symbol='XML_XPATH_INVALID_CTXT_POSITION'/>
-     <exports symbol='XML_ERR_NOTATION_NOT_FINISHED'/>
-     <exports symbol='xmlError'/>
-     <exports symbol='XML_HTML_STRUCURE_ERROR'/>
-     <exports symbol='XML_DTD_INVALID_DEFAULT'/>
-     <exports symbol='XML_DTD_UNKNOWN_ELEM'/>
-     <exports symbol='XML_SCHEMAP_REDEFINED_TYPE'/>
-     <exports symbol='XML_SCHEMAV_NOTYPE'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_FACET_CHILD'/>
-     <exports symbol='XML_SCHEMAP_NOTATION_NO_NAME'/>
-     <exports symbol='XML_DTD_EMPTY_NOTATION'/>
-     <exports symbol='XML_RNGP_ELEMENT_EMPTY'/>
-     <exports symbol='XML_RNGP_PAT_LIST_TEXT'/>
-     <exports symbol='XML_XPATH_START_LITERAL_ERROR'/>
-     <exports symbol='XML_ERR_ELEMCONTENT_NOT_STARTED'/>
-     <exports symbol='XML_RNGP_INCLUDE_FAILURE'/>
-     <exports symbol='XML_RNGP_INVALID_VALUE'/>
-     <exports symbol='XML_ERR_COMMENT_NOT_FINISHED'/>
-     <exports symbol='XML_SCHEMAP_REDEFINED_ATTRGROUP'/>
-     <exports symbol='initGenericErrorDefaultFunc'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_SIMPLETYPE_CHILD'/>
-     <exports symbol='XML_IO_EMSGSIZE'/>
-     <exports symbol='XML_FROM_CATALOG'/>
-     <exports symbol='XML_SCHEMAV_ATTRINVALID'/>
-     <exports symbol='XML_SCHEMAV_VALUE'/>
-     <exports symbol='XML_IO_LOAD_ERROR'/>
-     <exports symbol='XML_FROM_HTML'/>
-     <exports symbol='XML_RNGP_PAT_START_LIST'/>
-     <exports symbol='XML_ERR_LT_REQUIRED'/>
-     <exports symbol='XML_ERR_ATTLIST_NOT_STARTED'/>
-     <exports symbol='XML_RNGP_ELEMENT_NAME'/>
-     <exports symbol='XML_ERR_PCDATA_REQUIRED'/>
-     <exports symbol='XML_SCHEMAV_INTERNAL'/>
-     <exports symbol='XML_RNGP_PAT_START_VALUE'/>
-     <exports symbol='XML_ERR_STRING_NOT_CLOSED'/>
-     <exports symbol='XML_ERR_ENTITYREF_IN_DTD'/>
-     <exports symbol='XML_SCHEMAV_HAVEDEFAULT'/>
-     <exports symbol='XML_SCHEMAP_REDEFINED_NOTATION'/>
-     <exports symbol='XML_RNGP_ERROR_TYPE_LIB'/>
-     <exports symbol='XML_XPTR_EVAL_FAILED'/>
-     <exports symbol='XML_DTD_NO_ROOT'/>
-     <exports symbol='XML_SCHEMAP_IMPORT_REDEFINE_NSNAME'/>
-     <exports symbol='XML_RNGP_PAT_NSNAME_EXCEPT_NSNAME'/>
-     <exports symbol='XML_IO_ECANCELED'/>
-     <exports symbol='XML_ERR_UNKNOWN_ENCODING'/>
-     <exports symbol='XML_HTTP_URL_SYNTAX'/>
-     <exports symbol='XML_SCHEMAP_INVALID_FACET'/>
-     <exports symbol='XML_DTD_CONTENT_MODEL'/>
-     <exports symbol='XML_XPATH_UNDEF_PREFIX_ERROR'/>
-     <exports symbol='XML_SCHEMAP_REF_AND_SUBTYPE'/>
-     <exports symbol='XML_RNGP_PAT_ONEMORE_INTERLEAVE_ATTR'/>
-     <exports symbol='XML_IO_EADDRINUSE'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_LIST_CHILD'/>
-     <exports symbol='XML_CATALOG_ENTRY_BROKEN'/>
-     <exports symbol='XML_WAR_NS_URI_RELATIVE'/>
-     <exports symbol='XML_DTD_UNKNOWN_ID'/>
-     <exports symbol='XML_RNGP_TEXT_EXPECTED'/>
-     <exports symbol='XML_WAR_NS_URI'/>
-     <exports symbol='XML_XPATH_UNDEF_VARIABLE_ERROR'/>
-     <exports symbol='XML_SCHEMAV_ELEMCONT'/>
-     <exports symbol='XML_IO_EDOM'/>
-     <exports symbol='XML_SCHEMAV_FACET'/>
-     <exports symbol='XML_RNGP_PARAM_NAME_MISSING'/>
-     <exports symbol='xmlErrorLevel'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_BASE_TYPE'/>
-     <exports symbol='XML_RNGP_INVALID_URI'/>
-     <exports symbol='XML_RNGP_PAT_LIST_LIST'/>
-     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_LIST'/>
-     <exports symbol='XML_RNGP_EXCEPT_NO_CONTENT'/>
-     <exports symbol='XML_RNGP_EXCEPT_EMPTY'/>
-     <exports symbol='XML_XPATH_UNFINISHED_LITERAL_ERROR'/>
-     <exports symbol='XML_RNGP_EXTERNALREF_EMTPY'/>
-     <exports symbol='XML_ERR_SPACE_REQUIRED'/>
-     <exports symbol='XML_SCHEMAV_EXTRACONTENT'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_SCHEMAS_CHILD'/>
-     <exports symbol='XML_DTD_DIFFERENT_PREFIX'/>
-     <exports symbol='XML_RNGP_INTERLEAVE_NO_CONTENT'/>
-     <exports symbol='XML_SCHEMAV_NOTDETERMINIST'/>
-     <exports symbol='XML_ERR_INVALID_HEX_CHARREF'/>
-     <exports symbol='XML_SCHEMAP_COMPLEXTYPE_NONAME_NOREF'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_EXTENSION_CHILD'/>
-     <exports symbol='XML_RNGP_PAT_START_INTERLEAVE'/>
-     <exports symbol='XML_IO_ENFILE'/>
-     <exports symbol='XML_SCHEMAV_MISSING'/>
-     <exports symbol='XML_RNGP_GRAMMAR_CONTENT'/>
-     <exports symbol='XML_XINCLUDE_XPTR_FAILED'/>
-     <exports symbol='XML_DTD_ELEM_REDEFINED'/>
-     <exports symbol='XML_RNGP_PARENTREF_CREATE_FAILED'/>
-     <exports symbol='XML_ERR_ENTITY_IS_PARAMETER'/>
-     <exports symbol='XML_ERR_RESERVED_XML_NAME'/>
-     <exports symbol='XML_SCHEMAV_NOTSIMPLE'/>
-     <exports symbol='XML_RNGP_PARENTREF_NO_NAME'/>
-     <exports symbol='XML_IO_EPERM'/>
-     <exports symbol='XML_IO_ENETUNREACH'/>
-     <exports symbol='XML_ERR_CHARREF_AT_EOF'/>
-     <exports symbol='XML_IO_ENOMEM'/>
-     <exports symbol='XML_IO_ENOSPC'/>
-     <exports symbol='XML_RNGP_ATTR_CONFLICT'/>
-     <exports symbol='XML_RNGP_TYPE_VALUE'/>
-     <exports symbol='XML_FROM_REGEXP'/>
-     <exports symbol='XML_XINCLUDE_UNKNOWN_ENCODING'/>
-     <exports symbol='XML_RNGP_DEF_CHOICE_AND_INTERLEAVE'/>
-     <exports symbol='XML_TREE_UNTERMINATED_ENTITY'/>
-     <exports symbol='XML_ERR_URI_REQUIRED'/>
-     <exports symbol='XML_FROM_TREE'/>
-     <exports symbol='XML_CATALOG_PREFER_VALUE'/>
-     <exports symbol='XML_ERR_HYPHEN_IN_COMMENT'/>
-     <exports symbol='XML_TREE_INVALID_HEX'/>
-     <exports symbol='XML_C14N_REQUIRES_UTF8'/>
-     <exports symbol='XML_FROM_XINCLUDE'/>
-     <exports symbol='XML_SCHEMAP_TYPE_AND_SUBTYPE'/>
-     <exports symbol='xmlParserPrintFileInfo'/>
-     <exports symbol='xmlParserErrors'/>
-     <exports symbol='XML_RNGP_GRAMMAR_EMPTY'/>
-     <exports symbol='XML_IO_ENOTDIR'/>
-     <exports symbol='XML_SAVE_CHAR_INVALID'/>
-     <exports symbol='XML_RNGP_ELEMENT_NO_CONTENT'/>
-     <exports symbol='XML_ERR_ENTITYREF_NO_NAME'/>
-     <exports symbol='XML_DTD_ID_FIXED'/>
-     <exports symbol='XML_XINCLUDE_NO_HREF'/>
-     <exports symbol='XML_XPATH_INVALID_OPERAND'/>
-     <exports symbol='XML_IO_ENOEXEC'/>
-     <exports symbol='XML_RNGP_PAT_LIST_REF'/>
-     <exports symbol='XML_XINCLUDE_HREF_URI'/>
-     <exports symbol='XML_ERR_EXTRA_CONTENT'/>
-     <exports symbol='XML_ERR_EXT_ENTITY_STANDALONE'/>
-     <exports symbol='XML_SCHEMAP_FAILED_PARSE'/>
-     <exports symbol='XML_RNGP_REF_CYCLE'/>
-     <exports symbol='XML_RNGP_HREF_ERROR'/>
-     <exports symbol='XML_FROM_NONE'/>
-     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_GROUP'/>
-     <exports symbol='XML_ERR_LITERAL_NOT_STARTED'/>
-     <exports symbol='XML_SCHEMAP_INVALID_REF_AND_SUBTYPE'/>
-     <exports symbol='XML_RNGP_ELEM_TEXT_CONFLICT'/>
-     <exports symbol='XML_SCHEMAP_ATTR_NONAME_NOREF'/>
-     <exports symbol='XML_SCHEMAP_ELEM_NONAME_NOREF'/>
-     <exports symbol='XML_DTD_ID_SUBSET'/>
-     <exports symbol='XML_ERR_ENTITY_CHAR_ERROR'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_ANYATTRIBUTE_CHILD'/>
-     <exports symbol='XML_RNGP_PAT_START_EMPTY'/>
-     <exports symbol='XML_DTD_UNKNOWN_ENTITY'/>
-     <exports symbol='XML_RNGP_PARSE_ERROR'/>
-     <exports symbol='XML_RNGP_XML_NS'/>
-     <exports symbol='XML_ERR_MISPLACED_CDATA_END'/>
-     <exports symbol='XML_FROM_HTTP'/>
-     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_ONEMORE'/>
-     <exports symbol='XML_WAR_LANG_VALUE'/>
-     <exports symbol='XML_RNGP_REF_CREATE_FAILED'/>
-     <exports symbol='XML_ERR_SEPARATOR_REQUIRED'/>
-     <exports symbol='XML_DTD_ROOT_NAME'/>
-     <exports symbol='XML_RNGP_UNKNOWN_TYPE_LIB'/>
-     <exports symbol='XML_XINCLUDE_FALLBACK_NOT_IN_INCLUDE'/>
-     <exports symbol='XML_RNGP_ATTRIBUTE_CONTENT'/>
-     <exports symbol='XML_RNGP_REF_NOT_EMPTY'/>
-     <exports symbol='xmlGetLastError'/>
-     <exports symbol='XML_XPATH_VARIABLE_REF_ERROR'/>
-     <exports symbol='XML_RNGP_INTERLEAVE_ADD'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_CHOICE_CHILD'/>
-     <exports symbol='XML_DTD_NOTATION_REDEFINED'/>
-     <exports symbol='XML_RNGP_ELEM_CONTENT_ERROR'/>
-     <exports symbol='xmlParserError'/>
-     <exports symbol='XML_DTD_ATTRIBUTE_REDEFINED'/>
-     <exports symbol='XML_RNGP_UNKNOWN_ATTRIBUTE'/>
-     <exports symbol='XML_ERR_UNDECLARED_ENTITY'/>
-     <exports symbol='XML_ERR_PUBID_REQUIRED'/>
-     <exports symbol='XML_IO_ENOTSOCK'/>
-     <exports symbol='XML_RNGP_PAT_START_GROUP'/>
-     <exports symbol='XML_RNGP_NOTALLOWED_NOT_EMPTY'/>
-     <exports symbol='XML_RNGP_MISSING_HREF'/>
-     <exports symbol='XML_ERR_PI_NOT_FINISHED'/>
-     <exports symbol='XML_FROM_RELAXNGP'/>
-     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_ATTR'/>
-     <exports symbol='XML_FTP_ACCNT'/>
-     <exports symbol='XML_FROM_RELAXNGV'/>
-     <exports symbol='XML_RNGP_PAT_START_DATA'/>
-     <exports symbol='XML_SCHEMAV_NOTTOPLEVEL'/>
-     <exports symbol='XML_IO_ENOENT'/>
-     <exports symbol='XML_ERR_NO_DTD'/>
-     <exports symbol='XML_FROM_C14N'/>
-     <exports symbol='XML_FROM_XSLT'/>
-     <exports symbol='XML_RNGP_PAT_LIST_ATTR'/>
-     <exports symbol='XML_IO_EIO'/>
-     <exports symbol='XML_IO_EACCES'/>
-     <exports symbol='XML_DTD_NOT_PCDATA'/>
-     <exports symbol='XML_SCHEMAP_PREFIX_UNDEFINED'/>
-     <exports symbol='XML_WAR_UNKNOWN_VERSION'/>
-     <exports symbol='XML_RNGP_PARAM_FORBIDDEN'/>
-     <exports symbol='XML_ERR_OK'/>
-     <exports symbol='XML_SCHEMAP_NOTHING_TO_PARSE'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_PROCESSCONTENT_CHILD'/>
-     <exports symbol='XML_ERR_UNSUPPORTED_ENCODING'/>
-     <exports symbol='XML_SCHEMAP_GROUP_NONAME_NOREF'/>
-     <exports symbol='XML_RNGP_PAT_NSNAME_EXCEPT_ANYNAME'/>
-     <exports symbol='XML_ERR_ENTITYREF_IN_PROLOG'/>
-     <exports symbol='XML_ERR_CHARREF_IN_DTD'/>
-     <exports symbol='XML_DTD_LOAD_ERROR'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_NOTATION_CHILD'/>
-     <exports symbol='XML_IO_ENOTTY'/>
-     <exports symbol='XML_RNGP_EMPTY_CONTENT'/>
-     <exports symbol='XML_IO_EALREADY'/>
-     <exports symbol='XML_DTD_NO_DTD'/>
-     <exports symbol='XML_IO_ERANGE'/>
-     <exports symbol='XML_DTD_UNKNOWN_NOTATION'/>
-     <exports symbol='XML_IO_ENOSYS'/>
-     <exports symbol='XML_FROM_DATATYPE'/>
-     <exports symbol='XML_ERR_WARNING'/>
-     <exports symbol='XML_SCHEMAP_ATTRFORMDEFAULT_VALUE'/>
-     <exports symbol='XML_IO_EISDIR'/>
-     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_INTERLEAVE'/>
-     <exports symbol='XML_ERR_VERSION_MISSING'/>
-     <exports symbol='XML_XINCLUDE_MULTIPLE_ROOT'/>
-     <exports symbol='XML_XPATH_INVALID_CTXT_SIZE'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_UNION_CHILD'/>
-     <exports symbol='XML_ERR_PEREF_AT_EOF'/>
-     <exports symbol='XML_XPATH_MEMORY_ERROR'/>
-     <exports symbol='XML_SCHEMAP_NOROOT'/>
-     <exports symbol='XML_XPATH_EXPR_ERROR'/>
-     <exports symbol='XML_RNGP_DEFINE_EMPTY'/>
-     <exports symbol='XML_ERR_ATTRIBUTE_NOT_STARTED'/>
-     <exports symbol='XML_XPATH_UNCLOSED_ERROR'/>
-     <exports symbol='XML_WAR_CATALOG_PI'/>
-     <exports symbol='XML_SCHEMAP_INVALID_MINOCCURS'/>
-     <exports symbol='XML_IO_ENOLCK'/>
-     <exports symbol='XML_RNGP_CHOICE_EMPTY'/>
-     <exports symbol='XML_ERR_LITERAL_NOT_FINISHED'/>
-     <exports symbol='xmlSetStructuredErrorFunc'/>
-     <exports symbol='XML_ERR_ENTITYREF_SEMICOL_MISSING'/>
-     <exports symbol='XML_DTD_MULTIPLE_ID'/>
-     <exports symbol='XML_FROM_XPATH'/>
-     <exports symbol='XML_IO_EPIPE'/>
-     <exports symbol='XML_TREE_INVALID_DEC'/>
-     <exports symbol='XML_SCHEMAP_EXTENSION_NO_BASE'/>
-     <exports symbol='XML_SCHEMAP_NOTYPE_NOREF'/>
-     <exports symbol='xmlResetError'/>
-     <exports symbol='XML_RNGP_ATTRIBUTE_EMPTY'/>
-     <exports symbol='XML_SCHEMAV_ISABSTRACT'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_ATTRIBUTE_GROUP'/>
-     <exports symbol='XML_DTD_NOT_EMPTY'/>
-     <exports symbol='XML_RNGP_PAT_LIST_ELEM'/>
-     <exports symbol='XML_SCHEMAV_UNDECLAREDELEM'/>
-     <exports symbol='XML_RNGP_CREATE_FAILURE'/>
-     <exports symbol='XML_IO_EBADF'/>
-     <exports symbol='XML_ERR_CONDSEC_NOT_FINISHED'/>
-     <exports symbol='XML_RNGP_PREFIX_UNDEFINED'/>
-     <exports symbol='XML_SCHEMAP_IMPORT_SCHEMA_NOT_URI'/>
-     <exports symbol='XML_ERR_EQUAL_REQUIRED'/>
-     <exports symbol='XML_XPATH_UNKNOWN_FUNC_ERROR'/>
-     <exports symbol='XML_SCHEMAP_INVALID_WHITE_SPACE'/>
-     <exports symbol='XML_RNGP_INCLUDE_EMPTY'/>
-     <exports symbol='XML_IO_ENOTSUP'/>
-     <exports symbol='XML_DTD_UNKNOWN_ATTRIBUTE'/>
-     <exports symbol='XML_XPTR_SUB_RESOURCE_ERROR'/>
-     <exports symbol='XML_RNGP_VALUE_EMPTY'/>
-     <exports symbol='XML_RNGP_INTERLEAVE_CREATE_FAILED'/>
-     <exports symbol='XML_DTD_NO_PREFIX'/>
-     <exports symbol='XML_IO_EAGAIN'/>
-     <exports symbol='XML_RNGP_UNKNOWN_CONSTRUCT'/>
-     <exports symbol='XML_ERR_UNPARSED_ENTITY'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_IMPORT_CHILD'/>
-     <exports symbol='XML_FTP_EPSV_ANSWER'/>
-     <exports symbol='XML_DTD_ENTITY_TYPE'/>
-     <exports symbol='XML_ERR_FATAL'/>
-     <exports symbol='_xmlError'/>
-     <exports symbol='XML_DTD_ID_REDEFINED'/>
-     <exports symbol='XML_XPATH_ENCODING_ERROR'/>
-     <exports symbol='XML_RNGP_REF_NO_NAME'/>
-     <exports symbol='XML_ERR_NONE'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_COMPLEXTYPE_CHILD'/>
-     <exports symbol='XML_RNGP_NSNAME_ATTR_ANCESTOR'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_FACET_TYPE'/>
-     <exports symbol='XML_RNGP_PAT_START_ONEMORE'/>
-     <exports symbol='XML_ERR_CONDSEC_INVALID'/>
-     <exports symbol='XML_RNGP_PAT_ATTR_ATTR'/>
-     <exports symbol='XML_XPTR_UNKNOWN_SCHEME'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_SEQUENCE_CHILD'/>
-     <exports symbol='XML_SCHEMAP_INVALID_FACET_VALUE'/>
-     <exports symbol='xmlErrorPtr'/>
-     <exports symbol='XML_SCHEMAP_INVALID_BOOLEAN'/>
-     <exports symbol='XML_ERR_ENTITYREF_IN_EPILOG'/>
-     <exports symbol='XML_SCHEMAP_NOATTR_NOREF'/>
-     <exports symbol='XML_RNGP_GRAMMAR_MISSING'/>
-     <exports symbol='XML_DTD_CONTENT_NOT_DETERMINIST'/>
-     <exports symbol='XML_DTD_NO_ELEM_NAME'/>
-     <exports symbol='XML_RNGP_GRAMMAR_NO_START'/>
-     <exports symbol='XML_RNGP_VALUE_NO_CONTENT'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_SIMPLECONTENT_CHILD'/>
-     <exports symbol='XML_IO_EAFNOSUPPORT'/>
-     <exports symbol='xmlResetLastError'/>
-     <exports symbol='XML_XPTR_SYNTAX_ERROR'/>
-     <exports symbol='XML_CATALOG_NOT_CATALOG'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_REF'/>
-     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_EMPTY'/>
-     <exports symbol='xmlCtxtResetLastError'/>
-     <exports symbol='XML_IO_EFBIG'/>
-     <exports symbol='XML_ERR_NS_DECL_ERROR'/>
-     <exports symbol='XML_RNGP_REF_NAME_INVALID'/>
-     <exports symbol='XML_ERR_ERROR'/>
-     <exports symbol='XML_DTD_MISSING_ATTRIBUTE'/>
-     <exports symbol='XML_IO_EMFILE'/>
-     <exports symbol='XML_RNGP_EMPTY_NOT_EMPTY'/>
-     <exports symbol='XML_DTD_ELEM_NAMESPACE'/>
-     <exports symbol='XML_RNGP_PAT_ATTR_ELEM'/>
-     <exports symbol='XML_IO_NO_INPUT'/>
-     <exports symbol='XML_NS_ERR_UNDEFINED_NAMESPACE'/>
-     <exports symbol='XML_XPATH_INVALID_ARITY'/>
-     <exports symbol='XML_XPATH_INVALID_CHAR_ERROR'/>
-     <exports symbol='XML_REGEXP_COMPILE_ERROR'/>
-     <exports symbol='XML_IO_WRITE'/>
-     <exports symbol='XML_ERR_ENTITY_PE_INTERNAL'/>
-     <exports symbol='XML_RNGP_DEFINE_MISSING'/>
-     <exports symbol='XML_ERR_NOTATION_NOT_STARTED'/>
-     <exports symbol='XML_ERR_INTERNAL_ERROR'/>
-     <exports symbol='XML_IO_EBADMSG'/>
-     <exports symbol='XML_RNGP_PAT_LIST_INTERLEAVE'/>
-     <exports symbol='XML_ERR_DOCUMENT_EMPTY'/>
-     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_ELEM'/>
-     <exports symbol='XML_IO_NETWORK_ATTEMPT'/>
-     <exports symbol='XML_FROM_OUTPUT'/>
-     <exports symbol='XML_FROM_NAMESPACE'/>
-     <exports symbol='XML_IO_EBUSY'/>
-     <exports symbol='XML_ERR_ATTLIST_NOT_FINISHED'/>
-     <exports symbol='XML_RNGP_INCLUDE_RECURSE'/>
-     <exports symbol='XML_ERR_INVALID_URI'/>
-     <exports symbol='XML_SCHEMAP_INVALID_ENUM'/>
-     <exports symbol='XML_SCHEMAV_INVALIDATTR'/>
-     <exports symbol='XML_SCHEMAP_FAILED_LOAD'/>
-     <exports symbol='XML_IO_ESRCH'/>
-     <exports symbol='XML_IO_ENXIO'/>
-     <exports symbol='XML_FROM_XPOINTER'/>
-     <exports symbol='XML_ERR_ATTRIBUTE_WITHOUT_VALUE'/>
-     <exports symbol='XML_RNGP_TEXT_HAS_CHILD'/>
-     <exports symbol='XML_SCHEMAV_NOTNILLABLE'/>
-     <exports symbol='XML_SCHEMAP_ELEM_DEFAULT_FIXED'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_TYPE'/>
-     <exports symbol='XML_RNGP_REF_NO_DEF'/>
-     <exports symbol='XML_ERR_NOT_WELL_BALANCED'/>
-     <exports symbol='XML_NS_ERR_XML_NAMESPACE'/>
-     <exports symbol='XML_ERR_INVALID_CHARREF'/>
-     <exports symbol='XML_ERR_INVALID_CHAR'/>
-     <exports symbol='XML_RNGP_FOREIGN_ELEMENT'/>
-     <exports symbol='XML_XINCLUDE_PARSE_VALUE'/>
-     <exports symbol='XML_RNGP_PAT_ANYNAME_EXCEPT_ANYNAME'/>
-     <exports symbol='XML_RNGP_NSNAME_NO_NS'/>
-     <exports symbol='XML_ERR_MIXED_NOT_STARTED'/>
-     <exports symbol='XML_SCHEMAV_INVALIDELEM'/>
-     <exports symbol='XML_NS_ERR_QNAME'/>
-     <exports symbol='XML_DTD_NOTATION_VALUE'/>
-     <exports symbol='XML_ERR_INVALID_ENCODING'/>
-     <exports symbol='XML_RNGP_EXCEPT_MISSING'/>
-     <exports symbol='XML_ERR_TAG_NOT_FINISHED'/>
-     <exports symbol='XML_RNGP_XMLNS_NAME'/>
-     <exports symbol='XML_ERR_LTSLASH_REQUIRED'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_ALL_CHILD'/>
-     <exports symbol='XML_DTD_MIXED_CORRUPT'/>
-     <exports symbol='XML_RNGP_DEFINE_CREATE_FAILED'/>
-     <exports symbol='XML_ERR_ENTITY_BOUNDARY'/>
-     <exports symbol='XML_SCHEMAP_ELEMFORMDEFAULT_VALUE'/>
-     <exports symbol='XML_ERR_PEREF_IN_INT_SUBSET'/>
-     <exports symbol='XML_RNGP_DATA_CONTENT'/>
-     <exports symbol='XML_ERR_STRING_NOT_STARTED'/>
-     <exports symbol='xmlCtxtGetLastError'/>
-     <exports symbol='XML_RNGP_EXCEPT_MULTIPLE'/>
-     <exports symbol='XML_IO_EDEADLK'/>
-     <exports symbol='XML_ERR_ATTRIBUTE_NOT_FINISHED'/>
-     <exports symbol='XML_IO_EINVAL'/>
-     <exports symbol='XML_IO_ENAMETOOLONG'/>
-     <exports symbol='XML_ERR_PEREF_IN_PROLOG'/>
-     <exports symbol='XML_RNGP_EXTERNAL_REF_FAILURE'/>
-     <exports symbol='XML_SCHEMAV_NOROLLBACK'/>
-     <exports symbol='XML_FROM_FTP'/>
-     <exports symbol='XML_RNGP_PAT_START_TEXT'/>
-     <exports symbol='XML_SAVE_NOT_UTF8'/>
-     <exports symbol='XML_DTD_INVALID_CHILD'/>
-     <exports symbol='XML_RNGP_TYPE_MISSING'/>
-     <exports symbol='XML_ERR_TAG_NAME_MISMATCH'/>
-     <exports symbol='XML_ERR_ENCODING_NAME'/>
-     <exports symbol='XML_ERR_ATTRIBUTE_REDEFINED'/>
-     <exports symbol='XML_IO_ECONNREFUSED'/>
-     <exports symbol='XML_ERR_XMLDECL_NOT_FINISHED'/>
-     <exports symbol='XML_XINCLUDE_XPTR_RESULT'/>
-     <exports symbol='XML_SCHEMAP_SIMPLETYPE_NONAME'/>
-     <exports symbol='XML_SCHEMAP_UNKNOWN_GROUP_CHILD'/>
-     <exports symbol='XML_XINCLUDE_BUILD_FAILED'/>
-     <exports symbol='XML_RNGP_PARENTREF_NOT_EMPTY'/>
-     <exports symbol='XML_ERR_PEREF_NO_NAME'/>
-     <exports symbol='XML_ERR_ENTITYREF_AT_EOF'/>
-     <exports symbol='XML_NS_ERR_ATTRIBUTE_REDEFINED'/>
-     <exports symbol='XML_ERR_NAME_REQUIRED'/>
-     <exports symbol='XML_IO_ETIMEDOUT'/>
-     <exports symbol='XML_RNGP_ATTRIBUTE_CHILDREN'/>
-     <exports symbol='xmlCopyError'/>
-     <exports symbol='XML_RNGP_DEFINE_NAME_MISSING'/>
-     <exports symbol='XML_XPATH_NUMBER_ERROR'/>
-     <exports symbol='XML_SAVE_NO_DOCTYPE'/>
-     <exports symbol='XML_RNGP_CHOICE_CONTENT'/>
-     <exports symbol='XML_RNGP_EMPTY_CONSTRUCT'/>
-     <exports symbol='XML_RNGP_FORBIDDEN_ATTRIBUTE'/>
-     <exports symbol='XML_ERR_ELEMCONTENT_NOT_FINISHED'/>
-     <exports symbol='xmlGenericErrorFunc'/>
-     <exports symbol='XML_SCHEMAP_REDEFINED_ELEMENT'/>
-     <exports symbol='XML_ERR_URI_FRAGMENT'/>
-     <exports symbol='XML_IO_ESPIPE'/>
-     <exports symbol='XML_DTD_NO_DOC'/>
-     <exports symbol='XML_IO_EEXIST'/>
-     <exports symbol='XML_FROM_SCHEMASV'/>
-     <exports symbol='XML_FROM_SCHEMASP'/>
-     <exports symbol='XML_ERR_MIXED_NOT_FINISHED'/>
-     <exports symbol='XML_DTD_STANDALONE_WHITE_SPACE'/>
-     <exports symbol='XML_HTTP_USE_IP'/>
-     <exports symbol='XML_IO_ENCODER'/>
-     <exports symbol='XML_IO_ENOTEMPTY'/>
-     <exports symbol='XML_SCHEMAV_WRONGELEM'/>
-     <exports symbol='XML_RNGP_START_CHOICE_AND_INTERLEAVE'/>
-     <exports symbol='XML_XPATH_INVALID_PREDICATE_ERROR'/>
-     <exports symbol='XML_XINCLUDE_INVALID_CHAR'/>
-     <exports symbol='XML_RNGP_TYPE_NOT_FOUND'/>
-     <exports symbol='XML_IO_BUFFER_FULL'/>
+     <exports symbol='XML_DTD_CONTENT_ERROR' type='enum'/>
+     <exports symbol='XML_SCHEMAV_NOROOT' type='enum'/>
+     <exports symbol='XML_DTD_ATTRIBUTE_VALUE' type='enum'/>
+     <exports symbol='XML_ERR_INVALID_DEC_CHARREF' type='enum'/>
+     <exports symbol='XML_RNGP_PARENTREF_NO_PARENT' type='enum'/>
+     <exports symbol='XML_ERR_CDATA_NOT_FINISHED' type='enum'/>
+     <exports symbol='XML_XINCLUDE_INCLUDE_IN_INCLUDE' type='enum'/>
+     <exports symbol='XML_ERR_DOCUMENT_END' type='enum'/>
+     <exports symbol='XML_ERR_ENTITY_NOT_STARTED' type='enum'/>
+     <exports symbol='XML_ERR_CHARREF_IN_PROLOG' type='enum'/>
+     <exports symbol='XML_RNGP_INVALID_DEFINE_NAME' type='enum'/>
+     <exports symbol='XML_SAVE_UNKNOWN_ENCODING' type='enum'/>
+     <exports symbol='XML_ERR_CONDSEC_INVALID_KEYWORD' type='enum'/>
+     <exports symbol='XML_CATALOG_MISSING_ATTR' type='enum'/>
+     <exports symbol='XML_ERR_NO_MEMORY' type='enum'/>
+     <exports symbol='XML_ERR_PEREF_SEMICOL_MISSING' type='enum'/>
+     <exports symbol='XML_ERR_DOCUMENT_START' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_TEXT' type='enum'/>
+     <exports symbol='XML_FROM_IO' type='enum'/>
+     <exports symbol='XML_HTML_UNKNOWN_TAG' type='enum'/>
+     <exports symbol='XML_DTD_NOT_STANDALONE' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_START_ATTR' type='enum'/>
+     <exports symbol='XML_SCHEMAV_NOTEMPTY' type='enum'/>
+     <exports symbol='XML_RNGP_NEED_COMBINE' type='enum'/>
+     <exports symbol='XML_IO_EROFS' type='enum'/>
+     <exports symbol='XML_ERR_DOCTYPE_NOT_FINISHED' type='enum'/>
+     <exports symbol='XML_ERR_XMLDECL_NOT_STARTED' type='enum'/>
+     <exports symbol='XML_IO_EXDEV' type='enum'/>
+     <exports symbol='XML_XINCLUDE_NO_FALLBACK' type='enum'/>
+     <exports symbol='XML_RNGP_URI_FRAGMENT' type='enum'/>
+     <exports symbol='XML_FROM_MEMORY' type='enum'/>
+     <exports symbol='XML_SCHEMAP_INVALID_MAXOCCURS' type='enum'/>
+     <exports symbol='XML_ERR_MISSING_ENCODING' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_ATTR_CHILD' type='enum'/>
+     <exports symbol='XML_RNGP_ELEMENT_CONTENT' type='enum'/>
+     <exports symbol='XML_ERR_LT_IN_ATTRIBUTE' type='enum'/>
+     <exports symbol='XML_XINCLUDE_ENTITY_DEF_MISMATCH' type='enum'/>
+     <exports symbol='XML_XPTR_RESOURCE_ERROR' type='enum'/>
+     <exports symbol='XML_IO_EISCONN' type='enum'/>
+     <exports symbol='XML_ERR_GT_REQUIRED' type='enum'/>
+     <exports symbol='XML_SCHEMAP_FACET_NO_VALUE' type='enum'/>
+     <exports symbol='XML_HTTP_UNKNOWN_HOST' type='enum'/>
+     <exports symbol='XML_XPTR_EXTRA_OBJECTS' type='enum'/>
+     <exports symbol='XML_ERR_ENTITY_NOT_FINISHED' type='enum'/>
+     <exports symbol='XML_IO_UNKNOWN' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_ONEMORE_GROUP_ATTR' type='enum'/>
+     <exports symbol='XML_ERR_VALUE_REQUIRED' type='enum'/>
+     <exports symbol='XML_RNGP_INTERLEAVE_EMPTY' type='enum'/>
+     <exports symbol='XML_IO_ECHILD' type='enum'/>
+     <exports symbol='XML_RNGP_URI_NOT_ABSOLUTE' type='enum'/>
+     <exports symbol='XML_RNGP_NAME_MISSING' type='enum'/>
+     <exports symbol='XML_ERR_CONDSEC_NOT_STARTED' type='enum'/>
+     <exports symbol='XML_RNGP_START_MISSING' type='enum'/>
+     <exports symbol='XML_ERR_PEREF_IN_EPILOG' type='enum'/>
+     <exports symbol='XML_IO_EINTR' type='enum'/>
+     <exports symbol='XML_FROM_VALID' type='enum'/>
+     <exports symbol='XML_FTP_PASV_ANSWER' type='enum'/>
+     <exports symbol='XML_RNGP_ATTRIBUTE_NOOP' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_ELEM_CHILD' type='enum'/>
+     <exports symbol='XML_CATALOG_RECURSION' type='enum'/>
+     <exports symbol='XML_SCHEMAP_REDEFINED_GROUP' type='enum'/>
+     <exports symbol='XML_SCHEMAP_IMPORT_NAMESPACE_NOT_URI' type='enum'/>
+     <exports symbol='XML_ERR_CHARREF_IN_EPILOG' type='enum'/>
+     <exports symbol='XML_DTD_ELEM_DEFAULT_NAMESPACE' type='enum'/>
+     <exports symbol='XML_SCHEMAP_FAILED_BUILD_IMPORT' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_ATTRGRP_CHILD' type='enum'/>
+     <exports symbol='XML_SCHEMAP_REGEXP_INVALID' type='enum'/>
+     <exports symbol='XML_XPTR_CHILDSEQ_START' type='enum'/>
+     <exports symbol='XML_C14N_CREATE_STACK' type='enum'/>
+     <exports symbol='XML_XINCLUDE_TEXT_FRAGMENT' type='enum'/>
+     <exports symbol='XML_ERR_EXT_SUBSET_NOT_FINISHED' type='enum'/>
+     <exports symbol='XML_RNGP_PARENTREF_NAME_INVALID' type='enum'/>
+     <exports symbol='XML_FROM_DTD' type='enum'/>
+     <exports symbol='XML_SCHEMAV_CONSTRUCT' type='enum'/>
+     <exports symbol='XML_RNGP_EXTERNALREF_RECURSE' type='enum'/>
+     <exports symbol='XML_DTD_ATTRIBUTE_DEFAULT' type='enum'/>
+     <exports symbol='XML_RNGP_UNKNOWN_COMBINE' type='enum'/>
+     <exports symbol='XML_RNGP_START_EMPTY' type='enum'/>
+     <exports symbol='XML_RNGP_ELEM_CONTENT_EMPTY' type='enum'/>
+     <exports symbol='XML_XPATH_EXPRESSION_OK' type='enum'/>
+     <exports symbol='XML_IO_EMLINK' type='enum'/>
+     <exports symbol='XML_ERR_NMTOKEN_REQUIRED' type='enum'/>
+     <exports symbol='XML_RNGP_ANYNAME_ATTR_ANCESTOR' type='enum'/>
+     <exports symbol='XML_ERR_ENTITY_IS_EXTERNAL' type='enum'/>
+     <exports symbol='XML_WAR_UNDECLARED_ENTITY' type='enum'/>
+     <exports symbol='XML_ERR_PI_NOT_STARTED' type='enum'/>
+     <exports symbol='XML_RNGP_START_CONTENT' type='enum'/>
+     <exports symbol='XML_RNGP_GROUP_ATTR_CONFLICT' type='enum'/>
+     <exports symbol='XML_RNGP_EMPTY' type='enum'/>
+     <exports symbol='XML_SCHEMAV_ATTRUNKNOWN' type='enum'/>
+     <exports symbol='XML_IO_ENODEV' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_REF' type='enum'/>
+     <exports symbol='XML_FROM_PARSER' type='enum'/>
+     <exports symbol='XML_XINCLUDE_RECURSION' type='enum'/>
+     <exports symbol='XML_C14N_CREATE_CTXT' type='enum'/>
+     <exports symbol='XML_SCHEMAP_ATTRGRP_NONAME_NOREF' type='enum'/>
+     <exports symbol='XML_SCHEMAP_RESTRICTION_NONAME_NOREF' type='enum'/>
+     <exports symbol='XML_XINCLUDE_TEXT_DOCUMENT' type='enum'/>
+     <exports symbol='XML_XINCLUDE_FALLBACKS_IN_INCLUDE' type='enum'/>
+     <exports symbol='XML_ERR_STANDALONE_VALUE' type='enum'/>
+     <exports symbol='XML_SCHEMAP_REDEFINED_ATTR' type='enum'/>
+     <exports symbol='XML_ERR_ENTITY_LOOP' type='enum'/>
+     <exports symbol='XML_XPATH_INVALID_TYPE' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_RESTRICTION_CHILD' type='enum'/>
+     <exports symbol='XML_IO_EINPROGRESS' type='enum'/>
+     <exports symbol='XML_IO_FLUSH' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_COMPLEXCONTENT_CHILD' type='enum'/>
+     <exports symbol='XML_C14N_INVALID_NODE' type='enum'/>
+     <exports symbol='XML_IO_EFAULT' type='enum'/>
+     <exports symbol='XML_XPATH_INVALID_CTXT_POSITION' type='enum'/>
+     <exports symbol='XML_ERR_NOTATION_NOT_FINISHED' type='enum'/>
+     <exports symbol='XML_HTML_STRUCURE_ERROR' type='enum'/>
+     <exports symbol='XML_DTD_INVALID_DEFAULT' type='enum'/>
+     <exports symbol='XML_DTD_UNKNOWN_ELEM' type='enum'/>
+     <exports symbol='XML_SCHEMAP_REDEFINED_TYPE' type='enum'/>
+     <exports symbol='XML_SCHEMAV_NOTYPE' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_FACET_CHILD' type='enum'/>
+     <exports symbol='XML_SCHEMAP_NOTATION_NO_NAME' type='enum'/>
+     <exports symbol='XML_DTD_EMPTY_NOTATION' type='enum'/>
+     <exports symbol='XML_RNGP_ELEMENT_EMPTY' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_LIST_TEXT' type='enum'/>
+     <exports symbol='XML_XPATH_START_LITERAL_ERROR' type='enum'/>
+     <exports symbol='XML_ERR_ELEMCONTENT_NOT_STARTED' type='enum'/>
+     <exports symbol='XML_RNGP_INCLUDE_FAILURE' type='enum'/>
+     <exports symbol='XML_RNGP_INVALID_VALUE' type='enum'/>
+     <exports symbol='XML_ERR_COMMENT_NOT_FINISHED' type='enum'/>
+     <exports symbol='XML_SCHEMAP_REDEFINED_ATTRGROUP' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_SIMPLETYPE_CHILD' type='enum'/>
+     <exports symbol='XML_IO_EMSGSIZE' type='enum'/>
+     <exports symbol='XML_FROM_CATALOG' type='enum'/>
+     <exports symbol='XML_SCHEMAV_ATTRINVALID' type='enum'/>
+     <exports symbol='XML_SCHEMAV_VALUE' type='enum'/>
+     <exports symbol='XML_IO_LOAD_ERROR' type='enum'/>
+     <exports symbol='XML_FROM_HTML' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_START_LIST' type='enum'/>
+     <exports symbol='XML_ERR_LT_REQUIRED' type='enum'/>
+     <exports symbol='XML_ERR_ATTLIST_NOT_STARTED' type='enum'/>
+     <exports symbol='XML_RNGP_ELEMENT_NAME' type='enum'/>
+     <exports symbol='XML_ERR_PCDATA_REQUIRED' type='enum'/>
+     <exports symbol='XML_SCHEMAV_INTERNAL' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_START_VALUE' type='enum'/>
+     <exports symbol='XML_ERR_STRING_NOT_CLOSED' type='enum'/>
+     <exports symbol='XML_ERR_ENTITYREF_IN_DTD' type='enum'/>
+     <exports symbol='XML_SCHEMAV_HAVEDEFAULT' type='enum'/>
+     <exports symbol='XML_SCHEMAP_REDEFINED_NOTATION' type='enum'/>
+     <exports symbol='XML_RNGP_ERROR_TYPE_LIB' type='enum'/>
+     <exports symbol='XML_XPTR_EVAL_FAILED' type='enum'/>
+     <exports symbol='XML_DTD_NO_ROOT' type='enum'/>
+     <exports symbol='XML_SCHEMAP_IMPORT_REDEFINE_NSNAME' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_NSNAME_EXCEPT_NSNAME' type='enum'/>
+     <exports symbol='XML_IO_ECANCELED' type='enum'/>
+     <exports symbol='XML_ERR_UNKNOWN_ENCODING' type='enum'/>
+     <exports symbol='XML_HTTP_URL_SYNTAX' type='enum'/>
+     <exports symbol='XML_SCHEMAP_INVALID_FACET' type='enum'/>
+     <exports symbol='XML_DTD_CONTENT_MODEL' type='enum'/>
+     <exports symbol='XML_XPATH_UNDEF_PREFIX_ERROR' type='enum'/>
+     <exports symbol='XML_SCHEMAP_REF_AND_SUBTYPE' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_ONEMORE_INTERLEAVE_ATTR' type='enum'/>
+     <exports symbol='XML_IO_EADDRINUSE' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_LIST_CHILD' type='enum'/>
+     <exports symbol='XML_CATALOG_ENTRY_BROKEN' type='enum'/>
+     <exports symbol='XML_WAR_NS_URI_RELATIVE' type='enum'/>
+     <exports symbol='XML_DTD_UNKNOWN_ID' type='enum'/>
+     <exports symbol='XML_RNGP_TEXT_EXPECTED' type='enum'/>
+     <exports symbol='XML_WAR_NS_URI' type='enum'/>
+     <exports symbol='XML_XPATH_UNDEF_VARIABLE_ERROR' type='enum'/>
+     <exports symbol='XML_SCHEMAV_ELEMCONT' type='enum'/>
+     <exports symbol='XML_IO_EDOM' type='enum'/>
+     <exports symbol='XML_SCHEMAV_FACET' type='enum'/>
+     <exports symbol='XML_RNGP_PARAM_NAME_MISSING' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_BASE_TYPE' type='enum'/>
+     <exports symbol='XML_RNGP_INVALID_URI' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_LIST_LIST' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_LIST' type='enum'/>
+     <exports symbol='XML_RNGP_EXCEPT_NO_CONTENT' type='enum'/>
+     <exports symbol='XML_RNGP_EXCEPT_EMPTY' type='enum'/>
+     <exports symbol='XML_XPATH_UNFINISHED_LITERAL_ERROR' type='enum'/>
+     <exports symbol='XML_RNGP_EXTERNALREF_EMTPY' type='enum'/>
+     <exports symbol='XML_ERR_SPACE_REQUIRED' type='enum'/>
+     <exports symbol='XML_SCHEMAV_EXTRACONTENT' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_SCHEMAS_CHILD' type='enum'/>
+     <exports symbol='XML_DTD_DIFFERENT_PREFIX' type='enum'/>
+     <exports symbol='XML_RNGP_INTERLEAVE_NO_CONTENT' type='enum'/>
+     <exports symbol='XML_SCHEMAV_NOTDETERMINIST' type='enum'/>
+     <exports symbol='XML_ERR_INVALID_HEX_CHARREF' type='enum'/>
+     <exports symbol='XML_SCHEMAP_COMPLEXTYPE_NONAME_NOREF' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_EXTENSION_CHILD' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_START_INTERLEAVE' type='enum'/>
+     <exports symbol='XML_IO_ENFILE' type='enum'/>
+     <exports symbol='XML_SCHEMAV_MISSING' type='enum'/>
+     <exports symbol='XML_RNGP_GRAMMAR_CONTENT' type='enum'/>
+     <exports symbol='XML_XINCLUDE_XPTR_FAILED' type='enum'/>
+     <exports symbol='XML_DTD_ELEM_REDEFINED' type='enum'/>
+     <exports symbol='XML_RNGP_PARENTREF_CREATE_FAILED' type='enum'/>
+     <exports symbol='XML_ERR_ENTITY_IS_PARAMETER' type='enum'/>
+     <exports symbol='XML_ERR_RESERVED_XML_NAME' type='enum'/>
+     <exports symbol='XML_SCHEMAV_NOTSIMPLE' type='enum'/>
+     <exports symbol='XML_RNGP_PARENTREF_NO_NAME' type='enum'/>
+     <exports symbol='XML_IO_EPERM' type='enum'/>
+     <exports symbol='XML_IO_ENETUNREACH' type='enum'/>
+     <exports symbol='XML_ERR_CHARREF_AT_EOF' type='enum'/>
+     <exports symbol='XML_IO_ENOMEM' type='enum'/>
+     <exports symbol='XML_IO_ENOSPC' type='enum'/>
+     <exports symbol='XML_RNGP_ATTR_CONFLICT' type='enum'/>
+     <exports symbol='XML_RNGP_TYPE_VALUE' type='enum'/>
+     <exports symbol='XML_FROM_REGEXP' type='enum'/>
+     <exports symbol='XML_XINCLUDE_UNKNOWN_ENCODING' type='enum'/>
+     <exports symbol='XML_RNGP_DEF_CHOICE_AND_INTERLEAVE' type='enum'/>
+     <exports symbol='XML_TREE_UNTERMINATED_ENTITY' type='enum'/>
+     <exports symbol='XML_ERR_URI_REQUIRED' type='enum'/>
+     <exports symbol='XML_FROM_TREE' type='enum'/>
+     <exports symbol='XML_CATALOG_PREFER_VALUE' type='enum'/>
+     <exports symbol='XML_ERR_HYPHEN_IN_COMMENT' type='enum'/>
+     <exports symbol='XML_TREE_INVALID_HEX' type='enum'/>
+     <exports symbol='XML_C14N_REQUIRES_UTF8' type='enum'/>
+     <exports symbol='XML_FROM_XINCLUDE' type='enum'/>
+     <exports symbol='XML_SCHEMAP_TYPE_AND_SUBTYPE' type='enum'/>
+     <exports symbol='XML_RNGP_GRAMMAR_EMPTY' type='enum'/>
+     <exports symbol='XML_IO_ENOTDIR' type='enum'/>
+     <exports symbol='XML_SAVE_CHAR_INVALID' type='enum'/>
+     <exports symbol='XML_RNGP_ELEMENT_NO_CONTENT' type='enum'/>
+     <exports symbol='XML_ERR_ENTITYREF_NO_NAME' type='enum'/>
+     <exports symbol='XML_DTD_ID_FIXED' type='enum'/>
+     <exports symbol='XML_XINCLUDE_NO_HREF' type='enum'/>
+     <exports symbol='XML_XPATH_INVALID_OPERAND' type='enum'/>
+     <exports symbol='XML_IO_ENOEXEC' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_LIST_REF' type='enum'/>
+     <exports symbol='XML_XINCLUDE_HREF_URI' type='enum'/>
+     <exports symbol='XML_ERR_EXTRA_CONTENT' type='enum'/>
+     <exports symbol='XML_ERR_EXT_ENTITY_STANDALONE' type='enum'/>
+     <exports symbol='XML_SCHEMAP_FAILED_PARSE' type='enum'/>
+     <exports symbol='XML_RNGP_REF_CYCLE' type='enum'/>
+     <exports symbol='XML_RNGP_HREF_ERROR' type='enum'/>
+     <exports symbol='XML_FROM_NONE' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_GROUP' type='enum'/>
+     <exports symbol='XML_ERR_LITERAL_NOT_STARTED' type='enum'/>
+     <exports symbol='XML_SCHEMAP_INVALID_REF_AND_SUBTYPE' type='enum'/>
+     <exports symbol='XML_RNGP_ELEM_TEXT_CONFLICT' type='enum'/>
+     <exports symbol='XML_SCHEMAP_ATTR_NONAME_NOREF' type='enum'/>
+     <exports symbol='XML_SCHEMAP_ELEM_NONAME_NOREF' type='enum'/>
+     <exports symbol='XML_DTD_ID_SUBSET' type='enum'/>
+     <exports symbol='XML_ERR_ENTITY_CHAR_ERROR' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_ANYATTRIBUTE_CHILD' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_START_EMPTY' type='enum'/>
+     <exports symbol='XML_DTD_UNKNOWN_ENTITY' type='enum'/>
+     <exports symbol='XML_RNGP_PARSE_ERROR' type='enum'/>
+     <exports symbol='XML_RNGP_XML_NS' type='enum'/>
+     <exports symbol='XML_ERR_MISPLACED_CDATA_END' type='enum'/>
+     <exports symbol='XML_FROM_HTTP' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_ONEMORE' type='enum'/>
+     <exports symbol='XML_WAR_LANG_VALUE' type='enum'/>
+     <exports symbol='XML_RNGP_REF_CREATE_FAILED' type='enum'/>
+     <exports symbol='XML_ERR_SEPARATOR_REQUIRED' type='enum'/>
+     <exports symbol='XML_DTD_ROOT_NAME' type='enum'/>
+     <exports symbol='XML_RNGP_UNKNOWN_TYPE_LIB' type='enum'/>
+     <exports symbol='XML_XINCLUDE_FALLBACK_NOT_IN_INCLUDE' type='enum'/>
+     <exports symbol='XML_RNGP_ATTRIBUTE_CONTENT' type='enum'/>
+     <exports symbol='XML_RNGP_REF_NOT_EMPTY' type='enum'/>
+     <exports symbol='XML_XPATH_VARIABLE_REF_ERROR' type='enum'/>
+     <exports symbol='XML_RNGP_INTERLEAVE_ADD' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_CHOICE_CHILD' type='enum'/>
+     <exports symbol='XML_DTD_NOTATION_REDEFINED' type='enum'/>
+     <exports symbol='XML_RNGP_ELEM_CONTENT_ERROR' type='enum'/>
+     <exports symbol='XML_DTD_ATTRIBUTE_REDEFINED' type='enum'/>
+     <exports symbol='XML_RNGP_UNKNOWN_ATTRIBUTE' type='enum'/>
+     <exports symbol='XML_ERR_UNDECLARED_ENTITY' type='enum'/>
+     <exports symbol='XML_ERR_PUBID_REQUIRED' type='enum'/>
+     <exports symbol='XML_IO_ENOTSOCK' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_START_GROUP' type='enum'/>
+     <exports symbol='XML_RNGP_NOTALLOWED_NOT_EMPTY' type='enum'/>
+     <exports symbol='XML_RNGP_MISSING_HREF' type='enum'/>
+     <exports symbol='XML_ERR_PI_NOT_FINISHED' type='enum'/>
+     <exports symbol='XML_FROM_RELAXNGP' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_ATTR' type='enum'/>
+     <exports symbol='XML_FTP_ACCNT' type='enum'/>
+     <exports symbol='XML_FROM_RELAXNGV' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_START_DATA' type='enum'/>
+     <exports symbol='XML_SCHEMAV_NOTTOPLEVEL' type='enum'/>
+     <exports symbol='XML_IO_ENOENT' type='enum'/>
+     <exports symbol='XML_ERR_NO_DTD' type='enum'/>
+     <exports symbol='XML_FROM_C14N' type='enum'/>
+     <exports symbol='XML_FROM_XSLT' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_LIST_ATTR' type='enum'/>
+     <exports symbol='XML_IO_EIO' type='enum'/>
+     <exports symbol='XML_IO_EACCES' type='enum'/>
+     <exports symbol='XML_DTD_NOT_PCDATA' type='enum'/>
+     <exports symbol='XML_SCHEMAP_PREFIX_UNDEFINED' type='enum'/>
+     <exports symbol='XML_WAR_UNKNOWN_VERSION' type='enum'/>
+     <exports symbol='XML_RNGP_PARAM_FORBIDDEN' type='enum'/>
+     <exports symbol='XML_ERR_OK' type='enum'/>
+     <exports symbol='XML_SCHEMAP_NOTHING_TO_PARSE' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_PROCESSCONTENT_CHILD' type='enum'/>
+     <exports symbol='XML_ERR_UNSUPPORTED_ENCODING' type='enum'/>
+     <exports symbol='XML_SCHEMAP_GROUP_NONAME_NOREF' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_NSNAME_EXCEPT_ANYNAME' type='enum'/>
+     <exports symbol='XML_ERR_ENTITYREF_IN_PROLOG' type='enum'/>
+     <exports symbol='XML_ERR_CHARREF_IN_DTD' type='enum'/>
+     <exports symbol='XML_DTD_LOAD_ERROR' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_NOTATION_CHILD' type='enum'/>
+     <exports symbol='XML_IO_ENOTTY' type='enum'/>
+     <exports symbol='XML_RNGP_EMPTY_CONTENT' type='enum'/>
+     <exports symbol='XML_IO_EALREADY' type='enum'/>
+     <exports symbol='XML_DTD_NO_DTD' type='enum'/>
+     <exports symbol='XML_IO_ERANGE' type='enum'/>
+     <exports symbol='XML_DTD_UNKNOWN_NOTATION' type='enum'/>
+     <exports symbol='XML_IO_ENOSYS' type='enum'/>
+     <exports symbol='XML_FROM_DATATYPE' type='enum'/>
+     <exports symbol='XML_ERR_WARNING' type='enum'/>
+     <exports symbol='XML_SCHEMAP_ATTRFORMDEFAULT_VALUE' type='enum'/>
+     <exports symbol='XML_IO_EISDIR' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_INTERLEAVE' type='enum'/>
+     <exports symbol='XML_ERR_VERSION_MISSING' type='enum'/>
+     <exports symbol='XML_XINCLUDE_MULTIPLE_ROOT' type='enum'/>
+     <exports symbol='XML_XPATH_INVALID_CTXT_SIZE' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_UNION_CHILD' type='enum'/>
+     <exports symbol='XML_ERR_PEREF_AT_EOF' type='enum'/>
+     <exports symbol='XML_XPATH_MEMORY_ERROR' type='enum'/>
+     <exports symbol='XML_SCHEMAP_NOROOT' type='enum'/>
+     <exports symbol='XML_XPATH_EXPR_ERROR' type='enum'/>
+     <exports symbol='XML_RNGP_DEFINE_EMPTY' type='enum'/>
+     <exports symbol='XML_ERR_ATTRIBUTE_NOT_STARTED' type='enum'/>
+     <exports symbol='XML_XPATH_UNCLOSED_ERROR' type='enum'/>
+     <exports symbol='XML_WAR_CATALOG_PI' type='enum'/>
+     <exports symbol='XML_SCHEMAP_INVALID_MINOCCURS' type='enum'/>
+     <exports symbol='XML_IO_ENOLCK' type='enum'/>
+     <exports symbol='XML_RNGP_CHOICE_EMPTY' type='enum'/>
+     <exports symbol='XML_ERR_LITERAL_NOT_FINISHED' type='enum'/>
+     <exports symbol='XML_ERR_ENTITYREF_SEMICOL_MISSING' type='enum'/>
+     <exports symbol='XML_DTD_MULTIPLE_ID' type='enum'/>
+     <exports symbol='XML_FROM_XPATH' type='enum'/>
+     <exports symbol='XML_IO_EPIPE' type='enum'/>
+     <exports symbol='XML_TREE_INVALID_DEC' type='enum'/>
+     <exports symbol='XML_SCHEMAP_EXTENSION_NO_BASE' type='enum'/>
+     <exports symbol='XML_SCHEMAP_NOTYPE_NOREF' type='enum'/>
+     <exports symbol='XML_RNGP_ATTRIBUTE_EMPTY' type='enum'/>
+     <exports symbol='XML_SCHEMAV_ISABSTRACT' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_ATTRIBUTE_GROUP' type='enum'/>
+     <exports symbol='XML_DTD_NOT_EMPTY' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_LIST_ELEM' type='enum'/>
+     <exports symbol='XML_SCHEMAV_UNDECLAREDELEM' type='enum'/>
+     <exports symbol='XML_RNGP_CREATE_FAILURE' type='enum'/>
+     <exports symbol='XML_IO_EBADF' type='enum'/>
+     <exports symbol='XML_ERR_CONDSEC_NOT_FINISHED' type='enum'/>
+     <exports symbol='XML_RNGP_PREFIX_UNDEFINED' type='enum'/>
+     <exports symbol='XML_SCHEMAP_IMPORT_SCHEMA_NOT_URI' type='enum'/>
+     <exports symbol='XML_ERR_EQUAL_REQUIRED' type='enum'/>
+     <exports symbol='XML_XPATH_UNKNOWN_FUNC_ERROR' type='enum'/>
+     <exports symbol='XML_SCHEMAP_INVALID_WHITE_SPACE' type='enum'/>
+     <exports symbol='XML_RNGP_INCLUDE_EMPTY' type='enum'/>
+     <exports symbol='XML_IO_ENOTSUP' type='enum'/>
+     <exports symbol='XML_DTD_UNKNOWN_ATTRIBUTE' type='enum'/>
+     <exports symbol='XML_XPTR_SUB_RESOURCE_ERROR' type='enum'/>
+     <exports symbol='XML_RNGP_VALUE_EMPTY' type='enum'/>
+     <exports symbol='XML_RNGP_INTERLEAVE_CREATE_FAILED' type='enum'/>
+     <exports symbol='XML_DTD_NO_PREFIX' type='enum'/>
+     <exports symbol='XML_IO_EAGAIN' type='enum'/>
+     <exports symbol='XML_RNGP_UNKNOWN_CONSTRUCT' type='enum'/>
+     <exports symbol='XML_ERR_UNPARSED_ENTITY' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_IMPORT_CHILD' type='enum'/>
+     <exports symbol='XML_FTP_EPSV_ANSWER' type='enum'/>
+     <exports symbol='XML_DTD_ENTITY_TYPE' type='enum'/>
+     <exports symbol='XML_ERR_FATAL' type='enum'/>
+     <exports symbol='XML_DTD_ID_REDEFINED' type='enum'/>
+     <exports symbol='XML_XPATH_ENCODING_ERROR' type='enum'/>
+     <exports symbol='XML_RNGP_REF_NO_NAME' type='enum'/>
+     <exports symbol='XML_ERR_NONE' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_COMPLEXTYPE_CHILD' type='enum'/>
+     <exports symbol='XML_RNGP_NSNAME_ATTR_ANCESTOR' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_FACET_TYPE' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_START_ONEMORE' type='enum'/>
+     <exports symbol='XML_ERR_CONDSEC_INVALID' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_ATTR_ATTR' type='enum'/>
+     <exports symbol='XML_XPTR_UNKNOWN_SCHEME' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_SEQUENCE_CHILD' type='enum'/>
+     <exports symbol='XML_SCHEMAP_INVALID_FACET_VALUE' type='enum'/>
+     <exports symbol='XML_SCHEMAP_INVALID_BOOLEAN' type='enum'/>
+     <exports symbol='XML_ERR_ENTITYREF_IN_EPILOG' type='enum'/>
+     <exports symbol='XML_SCHEMAP_NOATTR_NOREF' type='enum'/>
+     <exports symbol='XML_RNGP_GRAMMAR_MISSING' type='enum'/>
+     <exports symbol='XML_DTD_CONTENT_NOT_DETERMINIST' type='enum'/>
+     <exports symbol='XML_DTD_NO_ELEM_NAME' type='enum'/>
+     <exports symbol='XML_RNGP_GRAMMAR_NO_START' type='enum'/>
+     <exports symbol='XML_RNGP_VALUE_NO_CONTENT' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_SIMPLECONTENT_CHILD' type='enum'/>
+     <exports symbol='XML_IO_EAFNOSUPPORT' type='enum'/>
+     <exports symbol='XML_XPTR_SYNTAX_ERROR' type='enum'/>
+     <exports symbol='XML_CATALOG_NOT_CATALOG' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_REF' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_EMPTY' type='enum'/>
+     <exports symbol='XML_IO_EFBIG' type='enum'/>
+     <exports symbol='XML_ERR_NS_DECL_ERROR' type='enum'/>
+     <exports symbol='XML_RNGP_REF_NAME_INVALID' type='enum'/>
+     <exports symbol='XML_ERR_ERROR' type='enum'/>
+     <exports symbol='XML_DTD_MISSING_ATTRIBUTE' type='enum'/>
+     <exports symbol='XML_IO_EMFILE' type='enum'/>
+     <exports symbol='XML_RNGP_EMPTY_NOT_EMPTY' type='enum'/>
+     <exports symbol='XML_DTD_ELEM_NAMESPACE' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_ATTR_ELEM' type='enum'/>
+     <exports symbol='XML_IO_NO_INPUT' type='enum'/>
+     <exports symbol='XML_NS_ERR_UNDEFINED_NAMESPACE' type='enum'/>
+     <exports symbol='XML_XPATH_INVALID_ARITY' type='enum'/>
+     <exports symbol='XML_XPATH_INVALID_CHAR_ERROR' type='enum'/>
+     <exports symbol='XML_REGEXP_COMPILE_ERROR' type='enum'/>
+     <exports symbol='XML_IO_WRITE' type='enum'/>
+     <exports symbol='XML_ERR_ENTITY_PE_INTERNAL' type='enum'/>
+     <exports symbol='XML_RNGP_DEFINE_MISSING' type='enum'/>
+     <exports symbol='XML_ERR_NOTATION_NOT_STARTED' type='enum'/>
+     <exports symbol='XML_ERR_INTERNAL_ERROR' type='enum'/>
+     <exports symbol='XML_IO_EBADMSG' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_LIST_INTERLEAVE' type='enum'/>
+     <exports symbol='XML_ERR_DOCUMENT_EMPTY' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_DATA_EXCEPT_ELEM' type='enum'/>
+     <exports symbol='XML_IO_NETWORK_ATTEMPT' type='enum'/>
+     <exports symbol='XML_FROM_OUTPUT' type='enum'/>
+     <exports symbol='XML_FROM_NAMESPACE' type='enum'/>
+     <exports symbol='XML_IO_EBUSY' type='enum'/>
+     <exports symbol='XML_ERR_ATTLIST_NOT_FINISHED' type='enum'/>
+     <exports symbol='XML_RNGP_INCLUDE_RECURSE' type='enum'/>
+     <exports symbol='XML_ERR_INVALID_URI' type='enum'/>
+     <exports symbol='XML_SCHEMAP_INVALID_ENUM' type='enum'/>
+     <exports symbol='XML_SCHEMAV_INVALIDATTR' type='enum'/>
+     <exports symbol='XML_SCHEMAP_FAILED_LOAD' type='enum'/>
+     <exports symbol='XML_IO_ESRCH' type='enum'/>
+     <exports symbol='XML_IO_ENXIO' type='enum'/>
+     <exports symbol='XML_FROM_XPOINTER' type='enum'/>
+     <exports symbol='XML_ERR_ATTRIBUTE_WITHOUT_VALUE' type='enum'/>
+     <exports symbol='XML_RNGP_TEXT_HAS_CHILD' type='enum'/>
+     <exports symbol='XML_SCHEMAV_NOTNILLABLE' type='enum'/>
+     <exports symbol='XML_SCHEMAP_ELEM_DEFAULT_FIXED' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_TYPE' type='enum'/>
+     <exports symbol='XML_RNGP_REF_NO_DEF' type='enum'/>
+     <exports symbol='XML_ERR_NOT_WELL_BALANCED' type='enum'/>
+     <exports symbol='XML_NS_ERR_XML_NAMESPACE' type='enum'/>
+     <exports symbol='XML_ERR_INVALID_CHARREF' type='enum'/>
+     <exports symbol='XML_ERR_INVALID_CHAR' type='enum'/>
+     <exports symbol='XML_RNGP_FOREIGN_ELEMENT' type='enum'/>
+     <exports symbol='XML_XINCLUDE_PARSE_VALUE' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_ANYNAME_EXCEPT_ANYNAME' type='enum'/>
+     <exports symbol='XML_RNGP_NSNAME_NO_NS' type='enum'/>
+     <exports symbol='XML_ERR_MIXED_NOT_STARTED' type='enum'/>
+     <exports symbol='XML_SCHEMAV_INVALIDELEM' type='enum'/>
+     <exports symbol='XML_NS_ERR_QNAME' type='enum'/>
+     <exports symbol='XML_DTD_NOTATION_VALUE' type='enum'/>
+     <exports symbol='XML_ERR_INVALID_ENCODING' type='enum'/>
+     <exports symbol='XML_RNGP_EXCEPT_MISSING' type='enum'/>
+     <exports symbol='XML_ERR_TAG_NOT_FINISHED' type='enum'/>
+     <exports symbol='XML_RNGP_XMLNS_NAME' type='enum'/>
+     <exports symbol='XML_ERR_LTSLASH_REQUIRED' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_ALL_CHILD' type='enum'/>
+     <exports symbol='XML_DTD_MIXED_CORRUPT' type='enum'/>
+     <exports symbol='XML_RNGP_DEFINE_CREATE_FAILED' type='enum'/>
+     <exports symbol='XML_ERR_ENTITY_BOUNDARY' type='enum'/>
+     <exports symbol='XML_SCHEMAP_ELEMFORMDEFAULT_VALUE' type='enum'/>
+     <exports symbol='XML_ERR_PEREF_IN_INT_SUBSET' type='enum'/>
+     <exports symbol='XML_RNGP_DATA_CONTENT' type='enum'/>
+     <exports symbol='XML_ERR_STRING_NOT_STARTED' type='enum'/>
+     <exports symbol='XML_RNGP_EXCEPT_MULTIPLE' type='enum'/>
+     <exports symbol='XML_IO_EDEADLK' type='enum'/>
+     <exports symbol='XML_ERR_ATTRIBUTE_NOT_FINISHED' type='enum'/>
+     <exports symbol='XML_IO_EINVAL' type='enum'/>
+     <exports symbol='XML_IO_ENAMETOOLONG' type='enum'/>
+     <exports symbol='XML_ERR_PEREF_IN_PROLOG' type='enum'/>
+     <exports symbol='XML_RNGP_EXTERNAL_REF_FAILURE' type='enum'/>
+     <exports symbol='XML_SCHEMAV_NOROLLBACK' type='enum'/>
+     <exports symbol='XML_FROM_FTP' type='enum'/>
+     <exports symbol='XML_RNGP_PAT_START_TEXT' type='enum'/>
+     <exports symbol='XML_SAVE_NOT_UTF8' type='enum'/>
+     <exports symbol='XML_DTD_INVALID_CHILD' type='enum'/>
+     <exports symbol='XML_RNGP_TYPE_MISSING' type='enum'/>
+     <exports symbol='XML_ERR_TAG_NAME_MISMATCH' type='enum'/>
+     <exports symbol='XML_ERR_ENCODING_NAME' type='enum'/>
+     <exports symbol='XML_ERR_ATTRIBUTE_REDEFINED' type='enum'/>
+     <exports symbol='XML_IO_ECONNREFUSED' type='enum'/>
+     <exports symbol='XML_ERR_XMLDECL_NOT_FINISHED' type='enum'/>
+     <exports symbol='XML_XINCLUDE_XPTR_RESULT' type='enum'/>
+     <exports symbol='XML_SCHEMAP_SIMPLETYPE_NONAME' type='enum'/>
+     <exports symbol='XML_SCHEMAP_UNKNOWN_GROUP_CHILD' type='enum'/>
+     <exports symbol='XML_XINCLUDE_BUILD_FAILED' type='enum'/>
+     <exports symbol='XML_RNGP_PARENTREF_NOT_EMPTY' type='enum'/>
+     <exports symbol='XML_ERR_PEREF_NO_NAME' type='enum'/>
+     <exports symbol='XML_ERR_ENTITYREF_AT_EOF' type='enum'/>
+     <exports symbol='XML_NS_ERR_ATTRIBUTE_REDEFINED' type='enum'/>
+     <exports symbol='XML_ERR_NAME_REQUIRED' type='enum'/>
+     <exports symbol='XML_IO_ETIMEDOUT' type='enum'/>
+     <exports symbol='XML_RNGP_ATTRIBUTE_CHILDREN' type='enum'/>
+     <exports symbol='XML_RNGP_DEFINE_NAME_MISSING' type='enum'/>
+     <exports symbol='XML_XPATH_NUMBER_ERROR' type='enum'/>
+     <exports symbol='XML_SAVE_NO_DOCTYPE' type='enum'/>
+     <exports symbol='XML_RNGP_CHOICE_CONTENT' type='enum'/>
+     <exports symbol='XML_RNGP_EMPTY_CONSTRUCT' type='enum'/>
+     <exports symbol='XML_RNGP_FORBIDDEN_ATTRIBUTE' type='enum'/>
+     <exports symbol='XML_ERR_ELEMCONTENT_NOT_FINISHED' type='enum'/>
+     <exports symbol='XML_SCHEMAP_REDEFINED_ELEMENT' type='enum'/>
+     <exports symbol='XML_ERR_URI_FRAGMENT' type='enum'/>
+     <exports symbol='XML_IO_ESPIPE' type='enum'/>
+     <exports symbol='XML_DTD_NO_DOC' type='enum'/>
+     <exports symbol='XML_IO_EEXIST' type='enum'/>
+     <exports symbol='XML_FROM_SCHEMASV' type='enum'/>
+     <exports symbol='XML_FROM_SCHEMASP' type='enum'/>
+     <exports symbol='XML_ERR_MIXED_NOT_FINISHED' type='enum'/>
+     <exports symbol='XML_DTD_STANDALONE_WHITE_SPACE' type='enum'/>
+     <exports symbol='XML_HTTP_USE_IP' type='enum'/>
+     <exports symbol='XML_IO_ENCODER' type='enum'/>
+     <exports symbol='XML_IO_ENOTEMPTY' type='enum'/>
+     <exports symbol='XML_SCHEMAV_WRONGELEM' type='enum'/>
+     <exports symbol='XML_RNGP_START_CHOICE_AND_INTERLEAVE' type='enum'/>
+     <exports symbol='XML_XPATH_INVALID_PREDICATE_ERROR' type='enum'/>
+     <exports symbol='XML_XINCLUDE_INVALID_CHAR' type='enum'/>
+     <exports symbol='XML_RNGP_TYPE_NOT_FOUND' type='enum'/>
+     <exports symbol='XML_IO_BUFFER_FULL' type='enum'/>
+     <exports symbol='xmlErrorPtr' type='typedef'/>
+     <exports symbol='xmlErrorLevel' type='typedef'/>
+     <exports symbol='xmlParserErrors' type='typedef'/>
+     <exports symbol='xmlErrorDomain' type='typedef'/>
+     <exports symbol='xmlError' type='typedef'/>
+     <exports symbol='_xmlError' type='struct'/>
+     <exports symbol='xmlParserValidityError' type='function'/>
+     <exports symbol='xmlGenericErrorFunc' type='function'/>
+     <exports symbol='xmlSetGenericErrorFunc' type='function'/>
+     <exports symbol='xmlParserPrintFileInfo' type='function'/>
+     <exports symbol='xmlCtxtResetLastError' type='function'/>
+     <exports symbol='xmlResetLastError' type='function'/>
+     <exports symbol='initGenericErrorDefaultFunc' type='function'/>
+     <exports symbol='xmlCopyError' type='function'/>
+     <exports symbol='xmlParserValidityWarning' type='function'/>
+     <exports symbol='xmlParserPrintFileContext' type='function'/>
+     <exports symbol='xmlGetLastError' type='function'/>
+     <exports symbol='xmlParserWarning' type='function'/>
+     <exports symbol='xmlStructuredErrorFunc' type='function'/>
+     <exports symbol='xmlSetStructuredErrorFunc' type='function'/>
+     <exports symbol='xmlResetError' type='function'/>
+     <exports symbol='xmlParserError' type='function'/>
+     <exports symbol='xmlCtxtGetLastError' type='function'/>
     </file>
     <file name='xmlexports'>
      <summary>macros for marking symbols as exportable/importable.</summary>
      <description>macros for marking symbols as exportable/importable. </description>
      <author>Igor Zlatovic &lt;igor@zlatkovic.com&gt; </author>
-     <exports symbol='XMLCALL'/>
-     <exports symbol='_REENTRANT'/>
-     <exports symbol='XMLPUBFUN'/>
-     <exports symbol='XMLPUBVAR'/>
-     <exports symbol='LIBXML_DLL_IMPORT'/>
+     <exports symbol='XMLCALL' type='macro'/>
+     <exports symbol='_REENTRANT' type='macro'/>
+     <exports symbol='XMLPUBFUN' type='macro'/>
+     <exports symbol='XMLPUBVAR' type='macro'/>
+     <exports symbol='LIBXML_DLL_IMPORT' type='macro'/>
     </file>
     <file name='xmlmemory'>
      <summary>interface for the memory allocator</summary>
      <description>provides interfaces for the memory allocator, including debugging capabilities. </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlMemRealloc'/>
-     <exports symbol='xmlReallocLoc'/>
-     <exports symbol='xmlGcMemGet'/>
-     <exports symbol='xmlStrdupFunc'/>
-     <exports symbol='xmlFreeFunc'/>
-     <exports symbol='xmlInitMemory'/>
-     <exports symbol='xmlMemStrdup'/>
-     <exports symbol='xmlRealloc'/>
-     <exports symbol='xmlMemFree'/>
-     <exports symbol='xmlMemGet'/>
-     <exports symbol='xmlMallocAtomicLoc'/>
-     <exports symbol='xmlMemMalloc'/>
-     <exports symbol='xmlMemDisplay'/>
-     <exports symbol='xmlMemUsed'/>
-     <exports symbol='xmlMemSetup'/>
-     <exports symbol='xmlMallocAtomic'/>
-     <exports symbol='xmlMemoryDump'/>
-     <exports symbol='xmlMallocLoc'/>
-     <exports symbol='xmlMemShow'/>
-     <exports symbol='xmlReallocFunc'/>
-     <exports symbol='xmlMalloc'/>
-     <exports symbol='xmlMallocFunc'/>
-     <exports symbol='DEBUG_MEMORY'/>
-     <exports symbol='xmlGcMemSetup'/>
-     <exports symbol='xmlMemoryStrdup'/>
-     <exports symbol='xmlMemStrdupLoc'/>
+     <exports symbol='xmlRealloc' type='macro'/>
+     <exports symbol='xmlMalloc' type='macro'/>
+     <exports symbol='xmlMallocAtomic' type='macro'/>
+     <exports symbol='DEBUG_MEMORY' type='macro'/>
+     <exports symbol='xmlMemStrdup' type='macro'/>
+     <exports symbol='xmlReallocLoc' type='function'/>
+     <exports symbol='xmlMemRealloc' type='function'/>
+     <exports symbol='xmlMemUsed' type='function'/>
+     <exports symbol='xmlMemGet' type='function'/>
+     <exports symbol='xmlMemoryDump' type='function'/>
+     <exports symbol='xmlGcMemGet' type='function'/>
+     <exports symbol='xmlStrdupFunc' type='function'/>
+     <exports symbol='xmlMallocLoc' type='function'/>
+     <exports symbol='xmlFreeFunc' type='function'/>
+     <exports symbol='xmlInitMemory' type='function'/>
+     <exports symbol='xmlReallocFunc' type='function'/>
+     <exports symbol='xmlMemFree' type='function'/>
+     <exports symbol='xmlMallocFunc' type='function'/>
+     <exports symbol='xmlMemDisplay' type='function'/>
+     <exports symbol='xmlMemMalloc' type='function'/>
+     <exports symbol='xmlMallocAtomicLoc' type='function'/>
+     <exports symbol='xmlGcMemSetup' type='function'/>
+     <exports symbol='xmlMemShow' type='function'/>
+     <exports symbol='xmlMemoryStrdup' type='function'/>
+     <exports symbol='xmlMemSetup' type='function'/>
+     <exports symbol='xmlMemStrdupLoc' type='function'/>
     </file>
     <file name='xmlreader'>
      <summary>the XMLReader implementation</summary>
      <description>API of the XML streaming API based on C# interfaces. </description>
      <author>Daniel Veillard </author>
-     <exports symbol='XML_READER_TYPE_DOCUMENT_FRAGMENT'/>
-     <exports symbol='xmlTextReaderBaseUri'/>
-     <exports symbol='xmlNewTextReaderFilename'/>
-     <exports symbol='XML_PARSER_SEVERITY_ERROR'/>
-     <exports symbol='XML_PARSER_LOADDTD'/>
-     <exports symbol='xmlTextReaderMoveToAttributeNo'/>
-     <exports symbol='xmlTextReaderHasAttributes'/>
-     <exports symbol='xmlTextReaderLocatorLineNumber'/>
-     <exports symbol='xmlReaderNewIO'/>
-     <exports symbol='xmlTextReaderMoveToAttributeNs'/>
-     <exports symbol='xmlTextReaderNext'/>
-     <exports symbol='xmlTextReaderCurrentDoc'/>
-     <exports symbol='XML_READER_TYPE_NONE'/>
-     <exports symbol='xmlReaderForFile'/>
-     <exports symbol='xmlTextReaderConstNamespaceUri'/>
-     <exports symbol='xmlTextReaderValue'/>
-     <exports symbol='XML_READER_TYPE_PROCESSING_INSTRUCTION'/>
-     <exports symbol='XML_PARSER_SEVERITY_WARNING'/>
-     <exports symbol='xmlTextReaderExpand'/>
-     <exports symbol='xmlTextReaderAttributeCount'/>
-     <exports symbol='xmlTextReaderXmlLang'/>
-     <exports symbol='xmlReaderForDoc'/>
-     <exports symbol='xmlParserProperties'/>
-     <exports symbol='xmlTextReaderLookupNamespace'/>
-     <exports symbol='xmlTextReaderMoveToElement'/>
-     <exports symbol='XML_READER_TYPE_ELEMENT'/>
-     <exports symbol='xmlTextReaderClose'/>
-     <exports symbol='XML_READER_TYPE_WHITESPACE'/>
-     <exports symbol='xmlTextReaderReadInnerXml'/>
-     <exports symbol='XML_READER_TYPE_END_ELEMENT'/>
-     <exports symbol='xmlReaderForIO'/>
-     <exports symbol='xmlReaderForFd'/>
-     <exports symbol='xmlTextReaderReadOuterXml'/>
-     <exports symbol='XML_READER_TYPE_COMMENT'/>
-     <exports symbol='xmlTextReaderNormalization'/>
-     <exports symbol='XML_PARSER_DEFAULTATTRS'/>
-     <exports symbol='xmlTextReaderGetParserProp'/>
-     <exports symbol='xmlTextReaderPrefix'/>
-     <exports symbol='xmlTextReaderMoveToAttribute'/>
-     <exports symbol='xmlTextReaderQuoteChar'/>
-     <exports symbol='XML_READER_TYPE_END_ENTITY'/>
-     <exports symbol='xmlTextReaderNextSibling'/>
-     <exports symbol='xmlTextReaderGetRemainder'/>
-     <exports symbol='xmlTextReaderReadString'/>
-     <exports symbol='xmlTextReaderIsValid'/>
-     <exports symbol='xmlTextReaderMoveToFirstAttribute'/>
-     <exports symbol='xmlTextReaderPtr'/>
-     <exports symbol='xmlTextReaderGetAttribute'/>
-     <exports symbol='xmlTextReaderConstValue'/>
-     <exports symbol='xmlTextReaderLocatorPtr'/>
-     <exports symbol='xmlReaderNewMemory'/>
-     <exports symbol='xmlTextReaderGetAttributeNo'/>
-     <exports symbol='xmlTextReaderLocalName'/>
-     <exports symbol='xmlTextReaderGetAttributeNs'/>
-     <exports symbol='xmlTextReaderConstName'/>
-     <exports symbol='xmlTextReaderPreserve'/>
-     <exports symbol='xmlTextReaderReadState'/>
-     <exports symbol='xmlTextReaderCurrentNode'/>
-     <exports symbol='xmlTextReaderConstString'/>
-     <exports symbol='xmlTextReaderSetParserProp'/>
-     <exports symbol='xmlNewTextReader'/>
-     <exports symbol='XML_READER_TYPE_CDATA'/>
-     <exports symbol='xmlTextReaderDepth'/>
-     <exports symbol='xmlTextReaderErrorFunc'/>
-     <exports symbol='XML_READER_TYPE_TEXT'/>
-     <exports symbol='xmlTextReaderSetErrorHandler'/>
-     <exports symbol='XML_READER_TYPE_XML_DECLARATION'/>
-     <exports symbol='xmlParserSeverities'/>
-     <exports symbol='xmlTextReaderMoveToNextAttribute'/>
-     <exports symbol='XML_PARSER_SEVERITY_VALIDITY_ERROR'/>
-     <exports symbol='xmlReaderNewWalker'/>
-     <exports symbol='xmlReaderNewDoc'/>
-     <exports symbol='xmlTextReaderConstPrefix'/>
-     <exports symbol='XML_READER_TYPE_ATTRIBUTE'/>
-     <exports symbol='XML_READER_TYPE_DOCUMENT_TYPE'/>
-     <exports symbol='xmlReaderWalker'/>
-     <exports symbol='XML_READER_TYPE_NOTATION'/>
-     <exports symbol='XML_PARSER_SUBST_ENTITIES'/>
-     <exports symbol='XML_READER_TYPE_ENTITY'/>
-     <exports symbol='xmlTextReaderConstXmlLang'/>
-     <exports symbol='xmlTextReaderConstLocalName'/>
-     <exports symbol='xmlTextReaderNodeType'/>
-     <exports symbol='xmlTextReaderGetErrorHandler'/>
-     <exports symbol='xmlReaderTypes'/>
-     <exports symbol='XML_READER_TYPE_ENTITY_REFERENCE'/>
-     <exports symbol='XML_READER_TYPE_SIGNIFICANT_WHITESPACE'/>
-     <exports symbol='xmlReaderNewFile'/>
-     <exports symbol='XML_READER_TYPE_DOCUMENT'/>
-     <exports symbol='xmlFreeTextReader'/>
-     <exports symbol='xmlTextReaderIsDefault'/>
-     <exports symbol='xmlTextReaderName'/>
-     <exports symbol='xmlReaderNewFd'/>
-     <exports symbol='xmlTextReaderRead'/>
-     <exports symbol='xmlTextReaderRelaxNGValidate'/>
-     <exports symbol='xmlTextReaderIsEmptyElement'/>
-     <exports symbol='xmlReaderForMemory'/>
-     <exports symbol='xmlTextReader'/>
-     <exports symbol='XML_PARSER_VALIDATE'/>
-     <exports symbol='xmlTextReaderLocatorBaseURI'/>
-     <exports symbol='xmlTextReaderNamespaceUri'/>
-     <exports symbol='XML_PARSER_SEVERITY_VALIDITY_WARNING'/>
-     <exports symbol='xmlTextReaderRelaxNGSetSchema'/>
-     <exports symbol='xmlTextReaderReadAttributeValue'/>
-     <exports symbol='xmlTextReaderHasValue'/>
-     <exports symbol='xmlTextReaderConstBaseUri'/>
+     <exports symbol='XML_READER_TYPE_DOCUMENT_FRAGMENT' type='enum'/>
+     <exports symbol='XML_READER_TYPE_COMMENT' type='enum'/>
+     <exports symbol='XML_PARSER_SEVERITY_ERROR' type='enum'/>
+     <exports symbol='XML_PARSER_LOADDTD' type='enum'/>
+     <exports symbol='XML_READER_TYPE_ENTITY' type='enum'/>
+     <exports symbol='XML_READER_TYPE_SIGNIFICANT_WHITESPACE' type='enum'/>
+     <exports symbol='XML_READER_TYPE_TEXT' type='enum'/>
+     <exports symbol='XML_READER_TYPE_PROCESSING_INSTRUCTION' type='enum'/>
+     <exports symbol='XML_READER_TYPE_END_ENTITY' type='enum'/>
+     <exports symbol='XML_READER_TYPE_XML_DECLARATION' type='enum'/>
+     <exports symbol='XML_PARSER_DEFAULTATTRS' type='enum'/>
+     <exports symbol='XML_READER_TYPE_NONE' type='enum'/>
+     <exports symbol='XML_PARSER_SEVERITY_VALIDITY_ERROR' type='enum'/>
+     <exports symbol='XML_PARSER_VALIDATE' type='enum'/>
+     <exports symbol='XML_PARSER_SEVERITY_WARNING' type='enum'/>
+     <exports symbol='XML_PARSER_SEVERITY_VALIDITY_WARNING' type='enum'/>
+     <exports symbol='XML_READER_TYPE_ATTRIBUTE' type='enum'/>
+     <exports symbol='XML_READER_TYPE_ELEMENT' type='enum'/>
+     <exports symbol='XML_READER_TYPE_DOCUMENT' type='enum'/>
+     <exports symbol='XML_READER_TYPE_DOCUMENT_TYPE' type='enum'/>
+     <exports symbol='XML_READER_TYPE_CDATA' type='enum'/>
+     <exports symbol='XML_READER_TYPE_END_ELEMENT' type='enum'/>
+     <exports symbol='XML_READER_TYPE_WHITESPACE' type='enum'/>
+     <exports symbol='XML_READER_TYPE_NOTATION' type='enum'/>
+     <exports symbol='XML_PARSER_SUBST_ENTITIES' type='enum'/>
+     <exports symbol='XML_READER_TYPE_ENTITY_REFERENCE' type='enum'/>
+     <exports symbol='xmlParserProperties' type='typedef'/>
+     <exports symbol='xmlTextReaderPtr' type='typedef'/>
+     <exports symbol='xmlParserSeverities' type='typedef'/>
+     <exports symbol='xmlTextReader' type='typedef'/>
+     <exports symbol='xmlTextReaderLocatorPtr' type='typedef'/>
+     <exports symbol='xmlReaderTypes' type='typedef'/>
+     <exports symbol='xmlTextReaderBaseUri' type='function'/>
+     <exports symbol='xmlTextReaderValue' type='function'/>
+     <exports symbol='xmlNewTextReaderFilename' type='function'/>
+     <exports symbol='xmlTextReaderRead' type='function'/>
+     <exports symbol='xmlTextReaderReadString' type='function'/>
+     <exports symbol='xmlTextReaderMoveToAttributeNo' type='function'/>
+     <exports symbol='xmlTextReaderDepth' type='function'/>
+     <exports symbol='xmlTextReaderErrorFunc' type='function'/>
+     <exports symbol='xmlTextReaderHasAttributes' type='function'/>
+     <exports symbol='xmlReaderNewWalker' type='function'/>
+     <exports symbol='xmlTextReaderSetErrorHandler' type='function'/>
+     <exports symbol='xmlTextReaderLocatorLineNumber' type='function'/>
+     <exports symbol='xmlTextReaderLookupNamespace' type='function'/>
+     <exports symbol='xmlTextReaderMoveToAttributeNs' type='function'/>
+     <exports symbol='xmlTextReaderNext' type='function'/>
+     <exports symbol='xmlTextReaderReadAttributeValue' type='function'/>
+     <exports symbol='xmlTextReaderIsDefault' type='function'/>
+     <exports symbol='xmlReaderForFile' type='function'/>
+     <exports symbol='xmlTextReaderConstNamespaceUri' type='function'/>
+     <exports symbol='xmlTextReaderMoveToNextAttribute' type='function'/>
+     <exports symbol='xmlTextReaderQuoteChar' type='function'/>
+     <exports symbol='xmlTextReaderReadOuterXml' type='function'/>
+     <exports symbol='xmlTextReaderNamespaceUri' type='function'/>
+     <exports symbol='xmlTextReaderExpand' type='function'/>
+     <exports symbol='xmlReaderNewDoc' type='function'/>
+     <exports symbol='xmlTextReaderXmlLang' type='function'/>
+     <exports symbol='xmlReaderForDoc' type='function'/>
+     <exports symbol='xmlReaderNewIO' type='function'/>
+     <exports symbol='xmlTextReaderMoveToElement' type='function'/>
+     <exports symbol='xmlTextReaderClose' type='function'/>
+     <exports symbol='xmlTextReaderReadInnerXml' type='function'/>
+     <exports symbol='xmlReaderWalker' type='function'/>
+     <exports symbol='xmlReaderForIO' type='function'/>
+     <exports symbol='xmlTextReaderIsValid' type='function'/>
+     <exports symbol='xmlTextReaderConstXmlLang' type='function'/>
+     <exports symbol='xmlTextReaderConstString' type='function'/>
+     <exports symbol='xmlTextReaderNodeType' type='function'/>
+     <exports symbol='xmlTextReaderNormalization' type='function'/>
+     <exports symbol='xmlTextReaderGetErrorHandler' type='function'/>
+     <exports symbol='xmlTextReaderConstPrefix' type='function'/>
+     <exports symbol='xmlTextReaderGetParserProp' type='function'/>
+     <exports symbol='xmlTextReaderGetRemainder' type='function'/>
+     <exports symbol='xmlReaderNewFile' type='function'/>
+     <exports symbol='xmlFreeTextReader' type='function'/>
+     <exports symbol='xmlTextReaderMoveToAttribute' type='function'/>
+     <exports symbol='xmlTextReaderRelaxNGSetSchema' type='function'/>
+     <exports symbol='xmlTextReaderName' type='function'/>
+     <exports symbol='xmlReaderNewFd' type='function'/>
+     <exports symbol='xmlTextReaderNextSibling' type='function'/>
+     <exports symbol='xmlTextReaderRelaxNGValidate' type='function'/>
+     <exports symbol='xmlTextReaderIsEmptyElement' type='function'/>
+     <exports symbol='xmlTextReaderCurrentDoc' type='function'/>
+     <exports symbol='xmlReaderForMemory' type='function'/>
+     <exports symbol='xmlTextReaderConstBaseUri' type='function'/>
+     <exports symbol='xmlReaderForFd' type='function'/>
+     <exports symbol='xmlTextReaderMoveToFirstAttribute' type='function'/>
+     <exports symbol='xmlTextReaderPrefix' type='function'/>
+     <exports symbol='xmlTextReaderLocatorBaseURI' type='function'/>
+     <exports symbol='xmlTextReaderGetAttribute' type='function'/>
+     <exports symbol='xmlReaderNewMemory' type='function'/>
+     <exports symbol='xmlTextReaderConstValue' type='function'/>
+     <exports symbol='xmlNewTextReader' type='function'/>
+     <exports symbol='xmlTextReaderGetAttributeNo' type='function'/>
+     <exports symbol='xmlTextReaderLocalName' type='function'/>
+     <exports symbol='xmlTextReaderGetAttributeNs' type='function'/>
+     <exports symbol='xmlTextReaderConstName' type='function'/>
+     <exports symbol='xmlTextReaderHasValue' type='function'/>
+     <exports symbol='xmlTextReaderPreserve' type='function'/>
+     <exports symbol='xmlTextReaderAttributeCount' type='function'/>
+     <exports symbol='xmlTextReaderReadState' type='function'/>
+     <exports symbol='xmlTextReaderCurrentNode' type='function'/>
+     <exports symbol='xmlTextReaderConstLocalName' type='function'/>
+     <exports symbol='xmlTextReaderSetParserProp' type='function'/>
     </file>
     <file name='xmlregexp'>
      <summary>regular expressions handling</summary>
      <description>basic API for libxml regular expressions handling used for XML Schemas and validation. </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlRegFreeExecCtxt'/>
-     <exports symbol='xmlRegexpExec'/>
-     <exports symbol='xmlRegExecCallbacks'/>
-     <exports symbol='xmlRegExecCtxtPtr'/>
-     <exports symbol='xmlRegExecPushString2'/>
-     <exports symbol='xmlRegFreeRegexp'/>
-     <exports symbol='xmlRegExecCtxt'/>
-     <exports symbol='xmlRegexp'/>
-     <exports symbol='xmlRegexpPtr'/>
-     <exports symbol='xmlRegExecPushString'/>
-     <exports symbol='xmlRegexpIsDeterminist'/>
-     <exports symbol='xmlRegNewExecCtxt'/>
-     <exports symbol='xmlRegexpCompile'/>
-     <exports symbol='xmlRegexpPrint'/>
+     <exports symbol='xmlRegExecCtxtPtr' type='typedef'/>
+     <exports symbol='xmlRegexp' type='typedef'/>
+     <exports symbol='xmlRegexpPtr' type='typedef'/>
+     <exports symbol='xmlRegExecCtxt' type='typedef'/>
+     <exports symbol='xmlRegFreeExecCtxt' type='function'/>
+     <exports symbol='xmlRegexpCompile' type='function'/>
+     <exports symbol='xmlRegExecCallbacks' type='function'/>
+     <exports symbol='xmlRegNewExecCtxt' type='function'/>
+     <exports symbol='xmlRegexpIsDeterminist' type='function'/>
+     <exports symbol='xmlRegExecPushString2' type='function'/>
+     <exports symbol='xmlRegExecPushString' type='function'/>
+     <exports symbol='xmlRegexpExec' type='function'/>
+     <exports symbol='xmlRegFreeRegexp' type='function'/>
+     <exports symbol='xmlRegexpPrint' type='function'/>
     </file>
     <file name='xmlschemas'>
      <summary>incomplete XML Schemas structure implementation</summary>
      <description>interface to the XML Schemas handling and schema validity checking, it is incomplete right now. </description>
      <author>Daniel Veillard </author>
-     <exports symbol='XML_SCHEMAS_ERR_NOTNILLABLE'/>
-     <exports symbol='XML_SCHEMAS_ERR_OK'/>
-     <exports symbol='XML_SCHEMAS_ERR_NOROOT'/>
-     <exports symbol='XML_SCHEMAS_ERR_XXX'/>
-     <exports symbol='xmlSchemaParserCtxt'/>
-     <exports symbol='xmlSchemaNewDocParserCtxt'/>
-     <exports symbol='xmlSchemaFree'/>
-     <exports symbol='xmlSchemaFreeValidCtxt'/>
-     <exports symbol='xmlSchemaValidError'/>
-     <exports symbol='XML_SCHEMAS_ERR_ISABSTRACT'/>
-     <exports symbol='xmlSchemaFreeParserCtxt'/>
-     <exports symbol='XML_SCHEMAS_ERR_ATTRUNKNOWN'/>
-     <exports symbol='XML_SCHEMAS_ERR_WRONGELEM'/>
-     <exports symbol='XML_SCHEMAS_ERR_NOTDETERMINIST'/>
-     <exports symbol='xmlSchemaNewParserCtxt'/>
-     <exports symbol='XML_SCHEMAS_ERR_INTERNAL'/>
-     <exports symbol='XML_SCHEMAS_ERR_MISSING'/>
-     <exports symbol='xmlSchemaValidateStream'/>
-     <exports symbol='XML_SCHEMAS_ERR_INVALIDATTR'/>
-     <exports symbol='xmlSchemaParserCtxtPtr'/>
-     <exports symbol='XML_SCHEMAS_ERR_NOTYPE'/>
-     <exports symbol='XML_SCHEMAS_ERR_CONSTRUCT'/>
-     <exports symbol='XML_SCHEMAS_ERR_FACET'/>
-     <exports symbol='xmlSchemaDump'/>
-     <exports symbol='xmlSchemaSetValidErrors'/>
-     <exports symbol='xmlSchemaValidCtxt'/>
-     <exports symbol='XML_SCHEMAS_ERR_VALUE'/>
-     <exports symbol='XML_SCHEMAS_ERR_NOROLLBACK'/>
-     <exports symbol='XML_SCHEMAS_ERR_NOTTOPLEVEL'/>
-     <exports symbol='XML_SCHEMAS_ERR_NOTEMPTY'/>
-     <exports symbol='xmlSchemaValidateDoc'/>
-     <exports symbol='xmlSchemaValidityErrorFunc'/>
-     <exports symbol='XML_SCHEMAS_ERR_INVALIDELEM'/>
-     <exports symbol='XML_SCHEMAS_ERR_ATTRINVALID'/>
-     <exports symbol='XML_SCHEMAS_ERR_EXTRACONTENT'/>
-     <exports symbol='XML_SCHEMAS_ERR_NOTSIMPLE'/>
-     <exports symbol='xmlSchemaPtr'/>
-     <exports symbol='xmlSchemaSetParserErrors'/>
-     <exports symbol='xmlSchemaParse'/>
-     <exports symbol='xmlSchemaValidityWarningFunc'/>
-     <exports symbol='xmlSchemaNewMemParserCtxt'/>
-     <exports symbol='XML_SCHEMAS_ERR_UNDECLAREDELEM'/>
-     <exports symbol='xmlSchemaValidCtxtPtr'/>
-     <exports symbol='XML_SCHEMAS_ERR_HAVEDEFAULT'/>
-     <exports symbol='xmlSchema'/>
-     <exports symbol='xmlSchemaNewValidCtxt'/>
-     <exports symbol='XML_SCHEMAS_ERR_ELEMCONT'/>
-     <exports symbol='XML_SCHEMAS_ERR_'/>
+     <exports symbol='XML_SCHEMAS_ERR_NOTNILLABLE' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_OK' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_NOROLLBACK' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_XXX' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_VALUE' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_NOTTOPLEVEL' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_NOTEMPTY' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_NOROOT' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_INVALIDELEM' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_ISABSTRACT' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_ATTRINVALID' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_ATTRUNKNOWN' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_EXTRACONTENT' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_NOTDETERMINIST' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_NOTSIMPLE' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_INTERNAL' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_UNDECLAREDELEM' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_WRONGELEM' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_MISSING' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_INVALIDATTR' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_HAVEDEFAULT' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_CONSTRUCT' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_FACET' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_ELEMCONT' type='enum'/>
+     <exports symbol='XML_SCHEMAS_ERR_NOTYPE' type='enum'/>
+     <exports symbol='xmlSchemaPtr' type='typedef'/>
+     <exports symbol='xmlSchemaParserCtxt' type='typedef'/>
+     <exports symbol='xmlSchemaValidCtxtPtr' type='typedef'/>
+     <exports symbol='xmlSchemaParserCtxtPtr' type='typedef'/>
+     <exports symbol='xmlSchema' type='typedef'/>
+     <exports symbol='xmlSchemaValidError' type='typedef'/>
+     <exports symbol='xmlSchemaValidCtxt' type='typedef'/>
+     <exports symbol='xmlSchemaValidateStream' type='function'/>
+     <exports symbol='xmlSchemaSetParserErrors' type='function'/>
+     <exports symbol='xmlSchemaValidityWarningFunc' type='function'/>
+     <exports symbol='xmlSchemaValidateDoc' type='function'/>
+     <exports symbol='xmlSchemaNewDocParserCtxt' type='function'/>
+     <exports symbol='xmlSchemaFree' type='function'/>
+     <exports symbol='xmlSchemaNewParserCtxt' type='function'/>
+     <exports symbol='xmlSchemaParse' type='function'/>
+     <exports symbol='xmlSchemaNewMemParserCtxt' type='function'/>
+     <exports symbol='xmlSchemaFreeParserCtxt' type='function'/>
+     <exports symbol='xmlSchemaFreeValidCtxt' type='function'/>
+     <exports symbol='xmlSchemaNewValidCtxt' type='function'/>
+     <exports symbol='xmlSchemaDump' type='function'/>
+     <exports symbol='xmlSchemaSetValidErrors' type='function'/>
+     <exports symbol='xmlSchemaValidityErrorFunc' type='function'/>
     </file>
     <file name='xmlschemastypes'>
      <summary>implementation of XML Schema Datatypes</summary>
      <description>module providing the XML Schema Datatypes implementation both definition and validity checking </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlSchemaNewFacet'/>
-     <exports symbol='xmlSchemaValPredefTypeNode'/>
-     <exports symbol='xmlSchemaFreeFacet'/>
-     <exports symbol='xmlSchemaValidatePredefinedType'/>
-     <exports symbol='xmlSchemaCompareValues'/>
-     <exports symbol='xmlSchemaValidateFacet'/>
-     <exports symbol='xmlSchemaCleanupTypes'/>
-     <exports symbol='xmlSchemaInitTypes'/>
-     <exports symbol='xmlSchemaFreeValue'/>
-     <exports symbol='xmlSchemaGetPredefinedType'/>
-     <exports symbol='xmlSchemaCheckFacet'/>
+     <exports symbol='xmlSchemaNewFacet' type='function'/>
+     <exports symbol='xmlSchemaValPredefTypeNode' type='function'/>
+     <exports symbol='xmlSchemaFreeFacet' type='function'/>
+     <exports symbol='xmlSchemaValidatePredefinedType' type='function'/>
+     <exports symbol='xmlSchemaCompareValues' type='function'/>
+     <exports symbol='xmlSchemaValidateFacet' type='function'/>
+     <exports symbol='xmlSchemaCleanupTypes' type='function'/>
+     <exports symbol='xmlSchemaInitTypes' type='function'/>
+     <exports symbol='xmlSchemaFreeValue' type='function'/>
+     <exports symbol='xmlSchemaGetPredefinedType' type='function'/>
+     <exports symbol='xmlSchemaCheckFacet' type='function'/>
     </file>
     <file name='xmlunicode'>
      <summary>Unicode character APIs</summary>
      <description>API for the Unicode character APIs  This file is automatically generated from the UCS description files of the Unicode Character Database</description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlUCSIsBlockElements'/>
-     <exports symbol='xmlUCSIsVariationSelectorsSupplement'/>
-     <exports symbol='xmlUCSIsTags'/>
-     <exports symbol='xmlUCSIsEnclosedAlphanumerics'/>
-     <exports symbol='xmlUCSIsBopomofo'/>
-     <exports symbol='xmlUCSIsSinhala'/>
-     <exports symbol='xmlUCSIsDingbats'/>
-     <exports symbol='xmlUCSIsLatinExtendedB'/>
-     <exports symbol='xmlUCSIsCombiningHalfMarks'/>
-     <exports symbol='xmlUCSIsSupplementalArrowsA'/>
-     <exports symbol='xmlUCSIsLatinExtendedA'/>
-     <exports symbol='xmlUCSIsYiRadicals'/>
-     <exports symbol='xmlUCSIsCombiningDiacriticalMarks'/>
-     <exports symbol='xmlUCSIsCombiningMarksforSymbols'/>
-     <exports symbol='xmlUCSIsHalfwidthandFullwidthForms'/>
-     <exports symbol='xmlUCSIsBasicLatin'/>
-     <exports symbol='xmlUCSIsOldItalic'/>
-     <exports symbol='xmlUCSIsLimbu'/>
-     <exports symbol='xmlUCSIsCat'/>
-     <exports symbol='xmlUCSIsCatSo'/>
-     <exports symbol='xmlUCSIsCatLu'/>
-     <exports symbol='xmlUCSIsCatLt'/>
-     <exports symbol='xmlUCSIsYiSyllables'/>
-     <exports symbol='xmlUCSIsCatSk'/>
-     <exports symbol='xmlUCSIsCatLo'/>
-     <exports symbol='xmlUCSIsKhmerSymbols'/>
-     <exports symbol='xmlUCSIsCatLm'/>
-     <exports symbol='xmlUCSIsAlphabeticPresentationForms'/>
-     <exports symbol='xmlUCSIsMiscellaneousTechnical'/>
-     <exports symbol='xmlUCSIsMongolian'/>
-     <exports symbol='xmlUCSIsUgaritic'/>
-     <exports symbol='xmlUCSIsCJKCompatibilityIdeographsSupplement'/>
-     <exports symbol='xmlUCSIsKannada'/>
-     <exports symbol='xmlUCSIsMalayalam'/>
-     <exports symbol='xmlUCSIsCypriotSyllabary'/>
-     <exports symbol='xmlUCSIsTamil'/>
-     <exports symbol='xmlUCSIsCatC'/>
-     <exports symbol='xmlUCSIsUnifiedCanadianAboriginalSyllabics'/>
-     <exports symbol='xmlUCSIsCatN'/>
-     <exports symbol='xmlUCSIsCatLl'/>
-     <exports symbol='xmlUCSIsCatL'/>
-     <exports symbol='xmlUCSIsCatM'/>
-     <exports symbol='xmlUCSIsTelugu'/>
-     <exports symbol='xmlUCSIsMathematicalAlphanumericSymbols'/>
-     <exports symbol='xmlUCSIsLowSurrogates'/>
-     <exports symbol='xmlUCSIsOsmanya'/>
-     <exports symbol='xmlUCSIsGreek'/>
-     <exports symbol='xmlUCSIsEthiopic'/>
-     <exports symbol='xmlUCSIsCatP'/>
-     <exports symbol='xmlUCSIsBoxDrawing'/>
-     <exports symbol='xmlUCSIsGeorgian'/>
-     <exports symbol='xmlUCSIsOgham'/>
-     <exports symbol='xmlUCSIsCatZ'/>
-     <exports symbol='xmlUCSIsGreekandCoptic'/>
-     <exports symbol='xmlUCSIsIPAExtensions'/>
-     <exports symbol='xmlUCSIsByzantineMusicalSymbols'/>
-     <exports symbol='xmlUCSIsKangxiRadicals'/>
-     <exports symbol='xmlUCSIsEnclosedCJKLettersandMonths'/>
-     <exports symbol='xmlUCSIsCJKCompatibilityForms'/>
-     <exports symbol='xmlUCSIsCatCs'/>
-     <exports symbol='xmlUCSIsHanunoo'/>
-     <exports symbol='xmlUCSIsGreekExtended'/>
-     <exports symbol='xmlUCSIsCJKRadicalsSupplement'/>
-     <exports symbol='xmlUCSIsArmenian'/>
-     <exports symbol='xmlUCSIsCatCf'/>
-     <exports symbol='xmlUCSIsSmallFormVariants'/>
-     <exports symbol='xmlUCSIsHangulCompatibilityJamo'/>
-     <exports symbol='xmlUCSIsSupplementaryPrivateUseAreaB'/>
-     <exports symbol='xmlUCSIsCatCc'/>
-     <exports symbol='xmlUCSIsSupplementaryPrivateUseAreaA'/>
-     <exports symbol='xmlUCSIsCatCo'/>
-     <exports symbol='xmlUCSIsCherokee'/>
-     <exports symbol='xmlUCSIsCatPe'/>
-     <exports symbol='xmlUCSIsKatakanaPhoneticExtensions'/>
-     <exports symbol='xmlUCSIsLinearBSyllabary'/>
-     <exports symbol='xmlUCSIsGothic'/>
-     <exports symbol='xmlUCSIsLetterlikeSymbols'/>
-     <exports symbol='xmlUCSIsKhmer'/>
-     <exports symbol='xmlUCSIsCatNd'/>
-     <exports symbol='xmlUCSIsPhoneticExtensions'/>
-     <exports symbol='xmlUCSIsTaiLe'/>
-     <exports symbol='xmlUCSIsArabic'/>
-     <exports symbol='xmlUCSIsHebrew'/>
-     <exports symbol='xmlUCSIsMiscellaneousMathematicalSymbolsB'/>
-     <exports symbol='xmlUCSIsCombiningDiacriticalMarksforSymbols'/>
-     <exports symbol='xmlUCSIsVariationSelectors'/>
-     <exports symbol='xmlUCSIsArabicPresentationFormsA'/>
-     <exports symbol='xmlUCSIsCatZp'/>
-     <exports symbol='xmlUCSIsCatZs'/>
-     <exports symbol='xmlUCSIsArabicPresentationFormsB'/>
-     <exports symbol='xmlUCSIsGeometricShapes'/>
-     <exports symbol='xmlUCSIsCatZl'/>
-     <exports symbol='xmlUCSIsTagalog'/>
-     <exports symbol='xmlUCSIsSpecials'/>
-     <exports symbol='xmlUCSIsGujarati'/>
-     <exports symbol='xmlUCSIsLinearBIdeograms'/>
-     <exports symbol='xmlUCSIsMiscellaneousMathematicalSymbolsA'/>
-     <exports symbol='xmlUCSIsBlock'/>
-     <exports symbol='xmlUCSIsBopomofoExtended'/>
-     <exports symbol='xmlUCSIsThaana'/>
-     <exports symbol='xmlUCSIsIdeographicDescriptionCharacters'/>
-     <exports symbol='xmlUCSIsHangulJamo'/>
-     <exports symbol='xmlUCSIsShavian'/>
-     <exports symbol='xmlUCSIsTagbanwa'/>
-     <exports symbol='xmlUCSIsGeneralPunctuation'/>
-     <exports symbol='xmlUCSIsCyrillic'/>
-     <exports symbol='xmlUCSIsArrows'/>
-     <exports symbol='xmlUCSIsControlPictures'/>
-     <exports symbol='xmlUCSIsYijingHexagramSymbols'/>
-     <exports symbol='xmlUCSIsCJKUnifiedIdeographs'/>
-     <exports symbol='xmlUCSIsCatNl'/>
-     <exports symbol='xmlUCSIsCatNo'/>
-     <exports symbol='xmlUCSIsDeseret'/>
-     <exports symbol='xmlUCSIsCatSm'/>
-     <exports symbol='xmlUCSIsBengali'/>
-     <exports symbol='xmlUCSIsPrivateUse'/>
-     <exports symbol='xmlUCSIsMusicalSymbols'/>
-     <exports symbol='xmlUCSIsBuhid'/>
-     <exports symbol='xmlUCSIsHangulSyllables'/>
-     <exports symbol='xmlUCSIsCJKCompatibility'/>
-     <exports symbol='xmlUCSIsCJKCompatibilityIdeographs'/>
-     <exports symbol='xmlUCSIsOpticalCharacterRecognition'/>
-     <exports symbol='xmlUCSIsLatin1Supplement'/>
-     <exports symbol='xmlUCSIsAegeanNumbers'/>
-     <exports symbol='xmlUCSIsKatakana'/>
-     <exports symbol='xmlUCSIsCJKSymbolsandPunctuation'/>
-     <exports symbol='xmlUCSIsTaiXuanJingSymbols'/>
-     <exports symbol='xmlUCSIsGurmukhi'/>
-     <exports symbol='xmlUCSIsMiscellaneousSymbols'/>
-     <exports symbol='xmlUCSIsDevanagari'/>
-     <exports symbol='xmlUCSIsPrivateUseArea'/>
-     <exports symbol='xmlUCSIsMathematicalOperators'/>
-     <exports symbol='xmlUCSIsMiscellaneousSymbolsandArrows'/>
-     <exports symbol='xmlUCSIsSupplementalArrowsB'/>
-     <exports symbol='xmlUCSIsCurrencySymbols'/>
-     <exports symbol='xmlUCSIsNumberForms'/>
-     <exports symbol='xmlUCSIsTibetan'/>
-     <exports symbol='xmlUCSIsSupplementalMathematicalOperators'/>
-     <exports symbol='xmlUCSIsCJKUnifiedIdeographsExtensionA'/>
-     <exports symbol='xmlUCSIsKanbun'/>
-     <exports symbol='xmlUCSIsCJKUnifiedIdeographsExtensionB'/>
-     <exports symbol='xmlUCSIsThai'/>
-     <exports symbol='xmlUCSIsSpacingModifierLetters'/>
-     <exports symbol='xmlUCSIsRunic'/>
-     <exports symbol='xmlUCSIsCatSc'/>
-     <exports symbol='xmlUCSIsCatPc'/>
-     <exports symbol='xmlUCSIsCatMc'/>
-     <exports symbol='xmlUCSIsCatPf'/>
-     <exports symbol='xmlUCSIsCyrillicSupplement'/>
-     <exports symbol='xmlUCSIsCatPd'/>
-     <exports symbol='xmlUCSIsMyanmar'/>
-     <exports symbol='xmlUCSIsCatPi'/>
-     <exports symbol='xmlUCSIsHiragana'/>
-     <exports symbol='xmlUCSIsCatPo'/>
-     <exports symbol='xmlUCSIsHighPrivateUseSurrogates'/>
-     <exports symbol='xmlUCSIsLatinExtendedAdditional'/>
-     <exports symbol='xmlUCSIsCatPs'/>
-     <exports symbol='xmlUCSIsSyriac'/>
-     <exports symbol='xmlUCSIsSuperscriptsandSubscripts'/>
-     <exports symbol='xmlUCSIsHighSurrogates'/>
-     <exports symbol='xmlUCSIsCatMn'/>
-     <exports symbol='xmlUCSIsLao'/>
-     <exports symbol='xmlUCSIsOriya'/>
-     <exports symbol='xmlUCSIsBraillePatterns'/>
-     <exports symbol='xmlUCSIsCatMe'/>
-     <exports symbol='xmlUCSIsCatS'/>
+     <exports symbol='xmlUCSIsBlockElements' type='function'/>
+     <exports symbol='xmlUCSIsVariationSelectorsSupplement' type='function'/>
+     <exports symbol='xmlUCSIsTags' type='function'/>
+     <exports symbol='xmlUCSIsEnclosedAlphanumerics' type='function'/>
+     <exports symbol='xmlUCSIsBopomofo' type='function'/>
+     <exports symbol='xmlUCSIsSinhala' type='function'/>
+     <exports symbol='xmlUCSIsDingbats' type='function'/>
+     <exports symbol='xmlUCSIsLatinExtendedB' type='function'/>
+     <exports symbol='xmlUCSIsCombiningHalfMarks' type='function'/>
+     <exports symbol='xmlUCSIsSupplementalArrowsA' type='function'/>
+     <exports symbol='xmlUCSIsLatinExtendedA' type='function'/>
+     <exports symbol='xmlUCSIsYiRadicals' type='function'/>
+     <exports symbol='xmlUCSIsCombiningDiacriticalMarks' type='function'/>
+     <exports symbol='xmlUCSIsCombiningMarksforSymbols' type='function'/>
+     <exports symbol='xmlUCSIsHalfwidthandFullwidthForms' type='function'/>
+     <exports symbol='xmlUCSIsBasicLatin' type='function'/>
+     <exports symbol='xmlUCSIsOldItalic' type='function'/>
+     <exports symbol='xmlUCSIsLimbu' type='function'/>
+     <exports symbol='xmlUCSIsCat' type='function'/>
+     <exports symbol='xmlUCSIsCatSo' type='function'/>
+     <exports symbol='xmlUCSIsCatLu' type='function'/>
+     <exports symbol='xmlUCSIsCatLt' type='function'/>
+     <exports symbol='xmlUCSIsYiSyllables' type='function'/>
+     <exports symbol='xmlUCSIsCatSk' type='function'/>
+     <exports symbol='xmlUCSIsCatLo' type='function'/>
+     <exports symbol='xmlUCSIsKhmerSymbols' type='function'/>
+     <exports symbol='xmlUCSIsCatLm' type='function'/>
+     <exports symbol='xmlUCSIsAlphabeticPresentationForms' type='function'/>
+     <exports symbol='xmlUCSIsMiscellaneousTechnical' type='function'/>
+     <exports symbol='xmlUCSIsMongolian' type='function'/>
+     <exports symbol='xmlUCSIsUgaritic' type='function'/>
+     <exports symbol='xmlUCSIsCJKCompatibilityIdeographsSupplement' type='function'/>
+     <exports symbol='xmlUCSIsKannada' type='function'/>
+     <exports symbol='xmlUCSIsMalayalam' type='function'/>
+     <exports symbol='xmlUCSIsCypriotSyllabary' type='function'/>
+     <exports symbol='xmlUCSIsTamil' type='function'/>
+     <exports symbol='xmlUCSIsCatC' type='function'/>
+     <exports symbol='xmlUCSIsUnifiedCanadianAboriginalSyllabics' type='function'/>
+     <exports symbol='xmlUCSIsCatN' type='function'/>
+     <exports symbol='xmlUCSIsCatLl' type='function'/>
+     <exports symbol='xmlUCSIsCatL' type='function'/>
+     <exports symbol='xmlUCSIsCatM' type='function'/>
+     <exports symbol='xmlUCSIsTelugu' type='function'/>
+     <exports symbol='xmlUCSIsMathematicalAlphanumericSymbols' type='function'/>
+     <exports symbol='xmlUCSIsLowSurrogates' type='function'/>
+     <exports symbol='xmlUCSIsOsmanya' type='function'/>
+     <exports symbol='xmlUCSIsGreek' type='function'/>
+     <exports symbol='xmlUCSIsEthiopic' type='function'/>
+     <exports symbol='xmlUCSIsCatP' type='function'/>
+     <exports symbol='xmlUCSIsBoxDrawing' type='function'/>
+     <exports symbol='xmlUCSIsGeorgian' type='function'/>
+     <exports symbol='xmlUCSIsOgham' type='function'/>
+     <exports symbol='xmlUCSIsCatZ' type='function'/>
+     <exports symbol='xmlUCSIsGreekandCoptic' type='function'/>
+     <exports symbol='xmlUCSIsIPAExtensions' type='function'/>
+     <exports symbol='xmlUCSIsByzantineMusicalSymbols' type='function'/>
+     <exports symbol='xmlUCSIsKangxiRadicals' type='function'/>
+     <exports symbol='xmlUCSIsEnclosedCJKLettersandMonths' type='function'/>
+     <exports symbol='xmlUCSIsCJKCompatibilityForms' type='function'/>
+     <exports symbol='xmlUCSIsCatCs' type='function'/>
+     <exports symbol='xmlUCSIsHanunoo' type='function'/>
+     <exports symbol='xmlUCSIsGreekExtended' type='function'/>
+     <exports symbol='xmlUCSIsCJKRadicalsSupplement' type='function'/>
+     <exports symbol='xmlUCSIsArmenian' type='function'/>
+     <exports symbol='xmlUCSIsCatCf' type='function'/>
+     <exports symbol='xmlUCSIsSmallFormVariants' type='function'/>
+     <exports symbol='xmlUCSIsHangulCompatibilityJamo' type='function'/>
+     <exports symbol='xmlUCSIsSupplementaryPrivateUseAreaB' type='function'/>
+     <exports symbol='xmlUCSIsCatCc' type='function'/>
+     <exports symbol='xmlUCSIsSupplementaryPrivateUseAreaA' type='function'/>
+     <exports symbol='xmlUCSIsCatCo' type='function'/>
+     <exports symbol='xmlUCSIsCherokee' type='function'/>
+     <exports symbol='xmlUCSIsCatPe' type='function'/>
+     <exports symbol='xmlUCSIsKatakanaPhoneticExtensions' type='function'/>
+     <exports symbol='xmlUCSIsLinearBSyllabary' type='function'/>
+     <exports symbol='xmlUCSIsGothic' type='function'/>
+     <exports symbol='xmlUCSIsLetterlikeSymbols' type='function'/>
+     <exports symbol='xmlUCSIsKhmer' type='function'/>
+     <exports symbol='xmlUCSIsCatNd' type='function'/>
+     <exports symbol='xmlUCSIsPhoneticExtensions' type='function'/>
+     <exports symbol='xmlUCSIsTaiLe' type='function'/>
+     <exports symbol='xmlUCSIsArabic' type='function'/>
+     <exports symbol='xmlUCSIsHebrew' type='function'/>
+     <exports symbol='xmlUCSIsMiscellaneousMathematicalSymbolsB' type='function'/>
+     <exports symbol='xmlUCSIsCombiningDiacriticalMarksforSymbols' type='function'/>
+     <exports symbol='xmlUCSIsVariationSelectors' type='function'/>
+     <exports symbol='xmlUCSIsArabicPresentationFormsA' type='function'/>
+     <exports symbol='xmlUCSIsCatZp' type='function'/>
+     <exports symbol='xmlUCSIsCatZs' type='function'/>
+     <exports symbol='xmlUCSIsArabicPresentationFormsB' type='function'/>
+     <exports symbol='xmlUCSIsGeometricShapes' type='function'/>
+     <exports symbol='xmlUCSIsCatZl' type='function'/>
+     <exports symbol='xmlUCSIsTagalog' type='function'/>
+     <exports symbol='xmlUCSIsSpecials' type='function'/>
+     <exports symbol='xmlUCSIsGujarati' type='function'/>
+     <exports symbol='xmlUCSIsLinearBIdeograms' type='function'/>
+     <exports symbol='xmlUCSIsMiscellaneousMathematicalSymbolsA' type='function'/>
+     <exports symbol='xmlUCSIsBlock' type='function'/>
+     <exports symbol='xmlUCSIsBopomofoExtended' type='function'/>
+     <exports symbol='xmlUCSIsThaana' type='function'/>
+     <exports symbol='xmlUCSIsIdeographicDescriptionCharacters' type='function'/>
+     <exports symbol='xmlUCSIsHangulJamo' type='function'/>
+     <exports symbol='xmlUCSIsShavian' type='function'/>
+     <exports symbol='xmlUCSIsTagbanwa' type='function'/>
+     <exports symbol='xmlUCSIsGeneralPunctuation' type='function'/>
+     <exports symbol='xmlUCSIsCyrillic' type='function'/>
+     <exports symbol='xmlUCSIsArrows' type='function'/>
+     <exports symbol='xmlUCSIsControlPictures' type='function'/>
+     <exports symbol='xmlUCSIsYijingHexagramSymbols' type='function'/>
+     <exports symbol='xmlUCSIsCJKUnifiedIdeographs' type='function'/>
+     <exports symbol='xmlUCSIsCatNl' type='function'/>
+     <exports symbol='xmlUCSIsCatNo' type='function'/>
+     <exports symbol='xmlUCSIsDeseret' type='function'/>
+     <exports symbol='xmlUCSIsCatSm' type='function'/>
+     <exports symbol='xmlUCSIsBengali' type='function'/>
+     <exports symbol='xmlUCSIsPrivateUse' type='function'/>
+     <exports symbol='xmlUCSIsMusicalSymbols' type='function'/>
+     <exports symbol='xmlUCSIsBuhid' type='function'/>
+     <exports symbol='xmlUCSIsHangulSyllables' type='function'/>
+     <exports symbol='xmlUCSIsCJKCompatibility' type='function'/>
+     <exports symbol='xmlUCSIsCJKCompatibilityIdeographs' type='function'/>
+     <exports symbol='xmlUCSIsOpticalCharacterRecognition' type='function'/>
+     <exports symbol='xmlUCSIsLatin1Supplement' type='function'/>
+     <exports symbol='xmlUCSIsAegeanNumbers' type='function'/>
+     <exports symbol='xmlUCSIsKatakana' type='function'/>
+     <exports symbol='xmlUCSIsCJKSymbolsandPunctuation' type='function'/>
+     <exports symbol='xmlUCSIsTaiXuanJingSymbols' type='function'/>
+     <exports symbol='xmlUCSIsGurmukhi' type='function'/>
+     <exports symbol='xmlUCSIsMiscellaneousSymbols' type='function'/>
+     <exports symbol='xmlUCSIsDevanagari' type='function'/>
+     <exports symbol='xmlUCSIsPrivateUseArea' type='function'/>
+     <exports symbol='xmlUCSIsMathematicalOperators' type='function'/>
+     <exports symbol='xmlUCSIsMiscellaneousSymbolsandArrows' type='function'/>
+     <exports symbol='xmlUCSIsSupplementalArrowsB' type='function'/>
+     <exports symbol='xmlUCSIsCurrencySymbols' type='function'/>
+     <exports symbol='xmlUCSIsNumberForms' type='function'/>
+     <exports symbol='xmlUCSIsTibetan' type='function'/>
+     <exports symbol='xmlUCSIsSupplementalMathematicalOperators' type='function'/>
+     <exports symbol='xmlUCSIsCJKUnifiedIdeographsExtensionA' type='function'/>
+     <exports symbol='xmlUCSIsKanbun' type='function'/>
+     <exports symbol='xmlUCSIsCJKUnifiedIdeographsExtensionB' type='function'/>
+     <exports symbol='xmlUCSIsThai' type='function'/>
+     <exports symbol='xmlUCSIsSpacingModifierLetters' type='function'/>
+     <exports symbol='xmlUCSIsRunic' type='function'/>
+     <exports symbol='xmlUCSIsCatSc' type='function'/>
+     <exports symbol='xmlUCSIsCatPc' type='function'/>
+     <exports symbol='xmlUCSIsCatMc' type='function'/>
+     <exports symbol='xmlUCSIsCatPf' type='function'/>
+     <exports symbol='xmlUCSIsCyrillicSupplement' type='function'/>
+     <exports symbol='xmlUCSIsCatPd' type='function'/>
+     <exports symbol='xmlUCSIsMyanmar' type='function'/>
+     <exports symbol='xmlUCSIsCatPi' type='function'/>
+     <exports symbol='xmlUCSIsHiragana' type='function'/>
+     <exports symbol='xmlUCSIsCatPo' type='function'/>
+     <exports symbol='xmlUCSIsHighPrivateUseSurrogates' type='function'/>
+     <exports symbol='xmlUCSIsLatinExtendedAdditional' type='function'/>
+     <exports symbol='xmlUCSIsCatPs' type='function'/>
+     <exports symbol='xmlUCSIsSyriac' type='function'/>
+     <exports symbol='xmlUCSIsSuperscriptsandSubscripts' type='function'/>
+     <exports symbol='xmlUCSIsHighSurrogates' type='function'/>
+     <exports symbol='xmlUCSIsCatMn' type='function'/>
+     <exports symbol='xmlUCSIsLao' type='function'/>
+     <exports symbol='xmlUCSIsOriya' type='function'/>
+     <exports symbol='xmlUCSIsBraillePatterns' type='function'/>
+     <exports symbol='xmlUCSIsCatMe' type='function'/>
+     <exports symbol='xmlUCSIsCatS' type='function'/>
     </file>
     <file name='xmlversion'>
      <summary>compile-time version informations</summary>
      <description>compile-time version informations for the XML library </description>
      <author>Daniel Veillard </author>
-     <exports symbol='LIBXML_VERSION_STRING'/>
-     <exports symbol='LIBXML_DOCB_ENABLED'/>
-     <exports symbol='LIBXML_CATALOG_ENABLED'/>
-     <exports symbol='LIBXML_LEGACY_ENABLED'/>
-     <exports symbol='xmlCheckVersion'/>
-     <exports symbol='LIBXML_REGEXP_ENABLED'/>
-     <exports symbol='LIBXML_XPTR_ENABLED'/>
-     <exports symbol='LIBXML_READER_ENABLED'/>
-     <exports symbol='LIBXML_ICONV_ENABLED'/>
-     <exports symbol='LIBXML_HTML_ENABLED'/>
-     <exports symbol='LIBXML_DOTTED_VERSION'/>
-     <exports symbol='LIBXML_UNICODE_ENABLED'/>
-     <exports symbol='LIBXML_ISO8859X_ENABLED'/>
-     <exports symbol='LIBXML_DEBUG_ENABLED'/>
-     <exports symbol='LIBXML_XINCLUDE_ENABLED'/>
-     <exports symbol='LIBXML_FTP_ENABLED'/>
-     <exports symbol='LIBXML_AUTOMATA_ENABLED'/>
-     <exports symbol='ATTRIBUTE_UNUSED'/>
-     <exports symbol='LIBXML_PUSH_ENABLED'/>
-     <exports symbol='WITHOUT_TRIO'/>
-     <exports symbol='LIBXML_C14N_ENABLED'/>
-     <exports symbol='LIBXML_SCHEMAS_ENABLED'/>
-     <exports symbol='DEBUG_MEMORY_LOCATION'/>
-     <exports symbol='LIBXML_SAX1_ENABLED'/>
-     <exports symbol='LIBXML_TEST_VERSION'/>
-     <exports symbol='LIBXML_HTTP_ENABLED'/>
-     <exports symbol='LIBXML_OUTPUT_ENABLED'/>
-     <exports symbol='WITH_TRIO'/>
-     <exports symbol='LIBXML_THREAD_ENABLED'/>
-     <exports symbol='LIBXML_XPATH_ENABLED'/>
-     <exports symbol='LIBXML_VERSION'/>
-     <exports symbol='LIBXML_VALID_ENABLED'/>
-     <exports symbol='LIBXML_TREE_ENABLED'/>
-     <exports symbol='LIBXML_WRITER_ENABLED'/>
+     <exports symbol='LIBXML_VERSION_STRING' type='macro'/>
+     <exports symbol='LIBXML_DOCB_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_CATALOG_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_LEGACY_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_REGEXP_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_XPTR_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_READER_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_ICONV_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_HTML_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_DOTTED_VERSION' type='macro'/>
+     <exports symbol='LIBXML_UNICODE_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_ISO8859X_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_DEBUG_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_XINCLUDE_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_FTP_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_AUTOMATA_ENABLED' type='macro'/>
+     <exports symbol='ATTRIBUTE_UNUSED' type='macro'/>
+     <exports symbol='LIBXML_PUSH_ENABLED' type='macro'/>
+     <exports symbol='WITHOUT_TRIO' type='macro'/>
+     <exports symbol='LIBXML_C14N_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_SCHEMAS_ENABLED' type='macro'/>
+     <exports symbol='DEBUG_MEMORY_LOCATION' type='macro'/>
+     <exports symbol='LIBXML_SAX1_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_TEST_VERSION' type='macro'/>
+     <exports symbol='LIBXML_HTTP_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_OUTPUT_ENABLED' type='macro'/>
+     <exports symbol='WITH_TRIO' type='macro'/>
+     <exports symbol='LIBXML_THREAD_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_XPATH_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_VERSION' type='macro'/>
+     <exports symbol='LIBXML_VALID_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_TREE_ENABLED' type='macro'/>
+     <exports symbol='LIBXML_WRITER_ENABLED' type='macro'/>
+     <exports symbol='xmlCheckVersion' type='function'/>
     </file>
     <file name='xmlwriter'>
      <summary>text writing API for XML</summary>
      <description>text writing API for XML </description>
      <author>Alfred Mickautsch &lt;alfred@mickautsch.de&gt; </author>
-     <exports symbol='xmlTextWriterStartDocument'/>
-     <exports symbol='xmlTextWriterEndPI'/>
-     <exports symbol='xmlTextWriterWriteBase64'/>
-     <exports symbol='xmlTextWriterWriteProcessingInstruction'/>
-     <exports symbol='xmlTextWriterStartAttribute'/>
-     <exports symbol='xmlTextWriterWriteComment'/>
-     <exports symbol='xmlTextWriterWriteRawLen'/>
-     <exports symbol='xmlTextWriterWriteVFormatDTD'/>
-     <exports symbol='xmlTextWriterWriteVFormatCDATA'/>
-     <exports symbol='xmlTextWriterStartAttributeNS'/>
-     <exports symbol='xmlTextWriterWriteFormatAttributeNS'/>
-     <exports symbol='xmlTextWriterWriteDTDEntity'/>
-     <exports symbol='xmlTextWriterWriteVFormatPI'/>
-     <exports symbol='xmlTextWriterWriteBinHex'/>
-     <exports symbol='xmlTextWriterEndAttribute'/>
-     <exports symbol='xmlTextWriterWriteVFormatDTDAttlist'/>
-     <exports symbol='xmlTextWriterWriteFormatPI'/>
-     <exports symbol='xmlTextWriterEndDocument'/>
-     <exports symbol='xmlTextWriterWriteDTDAttlist'/>
-     <exports symbol='xmlTextWriterWriteFormatString'/>
-     <exports symbol='xmlTextWriterEndCDATA'/>
-     <exports symbol='xmlTextWriterStartElementNS'/>
-     <exports symbol='xmlTextWriter'/>
-     <exports symbol='xmlNewTextWriter'/>
-     <exports symbol='xmlFreeTextWriter'/>
-     <exports symbol='xmlTextWriterWriteDocType'/>
-     <exports symbol='xmlTextWriterStartPI'/>
-     <exports symbol='xmlTextWriterStartElement'/>
-     <exports symbol='xmlTextWriterWriteDTDExternalEntity'/>
-     <exports symbol='xmlTextWriterWriteFormatRaw'/>
-     <exports symbol='xmlTextWriterWriteCDATA'/>
-     <exports symbol='xmlTextWriterWriteVFormatDTDInternalEntity'/>
-     <exports symbol='xmlTextWriterWriteVFormatAttribute'/>
-     <exports symbol='xmlTextWriterEndDTDElement'/>
-     <exports symbol='xmlTextWriterEndDTD'/>
-     <exports symbol='xmlTextWriterWriteElement'/>
-     <exports symbol='xmlTextWriterEndElement'/>
-     <exports symbol='xmlTextWriterWriteVFormatComment'/>
-     <exports symbol='xmlTextWriterStartCDATA'/>
-     <exports symbol='xmlNewTextWriterFilename'/>
-     <exports symbol='xmlTextWriterWriteVFormatElement'/>
-     <exports symbol='xmlTextWriterWriteFormatComment'/>
-     <exports symbol='xmlTextWriterWriteAttributeNS'/>
-     <exports symbol='xmlTextWriterWritePI'/>
-     <exports symbol='xmlTextWriterWriteVFormatRaw'/>
-     <exports symbol='xmlTextWriterWriteFormatDTDInternalEntity'/>
-     <exports symbol='xmlTextWriterWriteVFormatString'/>
-     <exports symbol='xmlTextWriterWriteDTDInternalEntity'/>
-     <exports symbol='xmlTextWriterWriteVFormatElementNS'/>
-     <exports symbol='xmlTextWriterWriteDTDNotation'/>
-     <exports symbol='xmlTextWriterWriteFormatElement'/>
-     <exports symbol='xmlTextWriterWriteElementNS'/>
-     <exports symbol='xmlTextWriterWriteString'/>
-     <exports symbol='xmlTextWriterWriteRaw'/>
-     <exports symbol='xmlTextWriterFullEndElement'/>
-     <exports symbol='xmlTextWriterWriteVFormatAttributeNS'/>
-     <exports symbol='xmlTextWriterFlush'/>
-     <exports symbol='xmlTextWriterStartDTD'/>
-     <exports symbol='xmlTextWriterWriteAttribute'/>
-     <exports symbol='xmlTextWriterWriteFormatDTDElement'/>
-     <exports symbol='xmlTextWriterEndDTDAttlist'/>
-     <exports symbol='xmlNewTextWriterMemory'/>
-     <exports symbol='xmlTextWriterWriteFormatCDATA'/>
-     <exports symbol='xmlTextWriterStartDTDAttlist'/>
-     <exports symbol='xmlTextWriterStartDTDElement'/>
-     <exports symbol='xmlTextWriterWriteFormatDTD'/>
-     <exports symbol='xmlTextWriterWriteFormatDTDAttlist'/>
-     <exports symbol='xmlTextWriterPtr'/>
-     <exports symbol='xmlTextWriterWriteDTDElement'/>
-     <exports symbol='xmlTextWriterWriteDTD'/>
-     <exports symbol='xmlTextWriterWriteFormatAttribute'/>
-     <exports symbol='xmlTextWriterStartDTDEntity'/>
-     <exports symbol='xmlTextWriterWriteVFormatDTDElement'/>
-     <exports symbol='xmlTextWriterEndDTDEntity'/>
-     <exports symbol='xmlTextWriterWriteFormatElementNS'/>
+     <exports symbol='xmlTextWriterWriteProcessingInstruction' type='macro'/>
+     <exports symbol='xmlTextWriterEndDTDEntity' type='macro'/>
+     <exports symbol='xmlTextWriterEndDTDElement' type='macro'/>
+     <exports symbol='xmlTextWriterEndDTDAttlist' type='macro'/>
+     <exports symbol='xmlTextWriterWriteDocType' type='macro'/>
+     <exports symbol='xmlTextWriter' type='typedef'/>
+     <exports symbol='xmlTextWriterPtr' type='typedef'/>
+     <exports symbol='xmlTextWriterStartDocument' type='function'/>
+     <exports symbol='xmlTextWriterEndDocument' type='function'/>
+     <exports symbol='xmlTextWriterWriteBase64' type='function'/>
+     <exports symbol='xmlTextWriterStartAttribute' type='function'/>
+     <exports symbol='xmlTextWriterWriteComment' type='function'/>
+     <exports symbol='xmlTextWriterWriteRawLen' type='function'/>
+     <exports symbol='xmlTextWriterWriteVFormatDTD' type='function'/>
+     <exports symbol='xmlTextWriterWriteVFormatCDATA' type='function'/>
+     <exports symbol='xmlTextWriterStartAttributeNS' type='function'/>
+     <exports symbol='xmlTextWriterWriteFormatAttributeNS' type='function'/>
+     <exports symbol='xmlTextWriterWriteDTDEntity' type='function'/>
+     <exports symbol='xmlTextWriterWriteVFormatPI' type='function'/>
+     <exports symbol='xmlTextWriterWriteBinHex' type='function'/>
+     <exports symbol='xmlTextWriterEndAttribute' type='function'/>
+     <exports symbol='xmlTextWriterWriteVFormatDTDAttlist' type='function'/>
+     <exports symbol='xmlTextWriterWriteFormatPI' type='function'/>
+     <exports symbol='xmlTextWriterEndPI' type='function'/>
+     <exports symbol='xmlTextWriterWriteDTDAttlist' type='function'/>
+     <exports symbol='xmlTextWriterWriteFormatString' type='function'/>
+     <exports symbol='xmlTextWriterEndCDATA' type='function'/>
+     <exports symbol='xmlTextWriterStartElementNS' type='function'/>
+     <exports symbol='xmlNewTextWriter' type='function'/>
+     <exports symbol='xmlFreeTextWriter' type='function'/>
+     <exports symbol='xmlTextWriterStartPI' type='function'/>
+     <exports symbol='xmlTextWriterStartElement' type='function'/>
+     <exports symbol='xmlTextWriterWriteDTDExternalEntity' type='function'/>
+     <exports symbol='xmlTextWriterWriteFormatRaw' type='function'/>
+     <exports symbol='xmlTextWriterWriteCDATA' type='function'/>
+     <exports symbol='xmlTextWriterWriteVFormatDTDInternalEntity' type='function'/>
+     <exports symbol='xmlTextWriterWriteVFormatAttribute' type='function'/>
+     <exports symbol='xmlTextWriterEndDTD' type='function'/>
+     <exports symbol='xmlTextWriterWriteElement' type='function'/>
+     <exports symbol='xmlTextWriterEndElement' type='function'/>
+     <exports symbol='xmlTextWriterWriteVFormatComment' type='function'/>
+     <exports symbol='xmlTextWriterStartCDATA' type='function'/>
+     <exports symbol='xmlNewTextWriterFilename' type='function'/>
+     <exports symbol='xmlTextWriterWriteVFormatElement' type='function'/>
+     <exports symbol='xmlTextWriterWriteFormatComment' type='function'/>
+     <exports symbol='xmlTextWriterWriteAttributeNS' type='function'/>
+     <exports symbol='xmlTextWriterWritePI' type='function'/>
+     <exports symbol='xmlTextWriterWriteFormatDTDInternalEntity' type='function'/>
+     <exports symbol='xmlTextWriterWriteVFormatString' type='function'/>
+     <exports symbol='xmlTextWriterWriteDTDInternalEntity' type='function'/>
+     <exports symbol='xmlTextWriterWriteVFormatElementNS' type='function'/>
+     <exports symbol='xmlTextWriterWriteDTDNotation' type='function'/>
+     <exports symbol='xmlTextWriterWriteFormatElement' type='function'/>
+     <exports symbol='xmlTextWriterWriteElementNS' type='function'/>
+     <exports symbol='xmlTextWriterWriteString' type='function'/>
+     <exports symbol='xmlTextWriterFullEndElement' type='function'/>
+     <exports symbol='xmlTextWriterWriteVFormatAttributeNS' type='function'/>
+     <exports symbol='xmlTextWriterFlush' type='function'/>
+     <exports symbol='xmlTextWriterStartDTD' type='function'/>
+     <exports symbol='xmlTextWriterWriteAttribute' type='function'/>
+     <exports symbol='xmlTextWriterWriteFormatDTDElement' type='function'/>
+     <exports symbol='xmlNewTextWriterMemory' type='function'/>
+     <exports symbol='xmlTextWriterWriteFormatCDATA' type='function'/>
+     <exports symbol='xmlTextWriterStartDTDAttlist' type='function'/>
+     <exports symbol='xmlTextWriterWriteVFormatRaw' type='function'/>
+     <exports symbol='xmlTextWriterWriteFormatDTD' type='function'/>
+     <exports symbol='xmlTextWriterWriteFormatDTDAttlist' type='function'/>
+     <exports symbol='xmlTextWriterWriteRaw' type='function'/>
+     <exports symbol='xmlTextWriterWriteDTDElement' type='function'/>
+     <exports symbol='xmlTextWriterWriteDTD' type='function'/>
+     <exports symbol='xmlTextWriterWriteFormatAttribute' type='function'/>
+     <exports symbol='xmlTextWriterStartDTDEntity' type='function'/>
+     <exports symbol='xmlTextWriterWriteVFormatDTDElement' type='function'/>
+     <exports symbol='xmlTextWriterStartDTDElement' type='function'/>
+     <exports symbol='xmlTextWriterWriteFormatElementNS' type='function'/>
     </file>
     <file name='xpath'>
      <summary>XML Path Language implementation</summary>
      <description>API for the XML Path Language implementation  XML Path Language implementation XPath is a language for addressing parts of an XML document, designed to be used by both XSLT and XPointer</description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlXPathCastNodeSetToBoolean'/>
-     <exports symbol='_xmlXPathVariable'/>
-     <exports symbol='xmlXPathObjectPtr'/>
-     <exports symbol='xmlXPathIsNaN'/>
-     <exports symbol='xmlXPathConvertString'/>
-     <exports symbol='xmlXPathConvertBoolean'/>
-     <exports symbol='XPATH_UNCLOSED_ERROR'/>
-     <exports symbol='XPATH_INVALID_CHAR_ERROR'/>
-     <exports symbol='xmlXPathNodeSetCreate'/>
-     <exports symbol='xmlXPathCastBooleanToNumber'/>
-     <exports symbol='xmlXPathPINF'/>
-     <exports symbol='xmlXPathAxisFunc'/>
-     <exports symbol='xmlXPathCastToNumber'/>
-     <exports symbol='xmlXPathCastStringToBoolean'/>
-     <exports symbol='XPATH_NODESET'/>
-     <exports symbol='xmlXPathNodeSetItem'/>
-     <exports symbol='xmlXPathFreeObject'/>
-     <exports symbol='xmlNodeSetPtr'/>
-     <exports symbol='XPTR_SYNTAX_ERROR'/>
-     <exports symbol='xmlXPathEvalPredicate'/>
-     <exports symbol='xmlXPathFreeContext'/>
-     <exports symbol='XPATH_NUMBER'/>
-     <exports symbol='xmlXPathFreeNodeSetList'/>
-     <exports symbol='xmlXPathEval'/>
-     <exports symbol='XPATH_USERS'/>
-     <exports symbol='xmlXPathAxisPtr'/>
-     <exports symbol='xmlXPathConvertNumber'/>
-     <exports symbol='xmlXPathCastNodeSetToString'/>
-     <exports symbol='_xmlXPathFunct'/>
-     <exports symbol='_xmlXPathParserContext'/>
-     <exports symbol='xmlXPathEvalExpression'/>
-     <exports symbol='xmlXPathNINF'/>
-     <exports symbol='XPATH_RANGE'/>
-     <exports symbol='xmlXPathVariable'/>
-     <exports symbol='xmlXPathCastToString'/>
-     <exports symbol='xmlXPathObjectCopy'/>
-     <exports symbol='XPATH_STRING'/>
-     <exports symbol='xmlXPathCastBooleanToString'/>
-     <exports symbol='xmlXPathCastNumberToBoolean'/>
-     <exports symbol='XPATH_XSLT_TREE'/>
-     <exports symbol='xmlXPathFreeNodeSet'/>
-     <exports symbol='XPATH_EXPR_ERROR'/>
-     <exports symbol='xmlXPathNewContext'/>
-     <exports symbol='XPATH_INVALID_TYPE'/>
-     <exports symbol='xmlXPathNodeSetIsEmpty'/>
-     <exports symbol='XPATH_INVALID_CTXT_SIZE'/>
-     <exports symbol='xmlXPathNAN'/>
-     <exports symbol='xmlXPathError'/>
-     <exports symbol='XPATH_INVALID_OPERAND'/>
-     <exports symbol='xmlXPathCastToBoolean'/>
-     <exports symbol='xmlXPathVariablePtr'/>
-     <exports symbol='xmlXPathCastNodeToString'/>
-     <exports symbol='XPATH_NUMBER_ERROR'/>
-     <exports symbol='XPATH_BOOLEAN'/>
-     <exports symbol='XPATH_START_LITERAL_ERROR'/>
-     <exports symbol='xmlXPathFunct'/>
-     <exports symbol='xmlXPathCompExprPtr'/>
-     <exports symbol='xmlXPathObject'/>
-     <exports symbol='_xmlXPathContext'/>
-     <exports symbol='xmlXPathOrderDocElems'/>
-     <exports symbol='XPATH_UNDEF_VARIABLE_ERROR'/>
-     <exports symbol='xmlXPathNodeSetGetLength'/>
-     <exports symbol='xmlXPathCastNodeToNumber'/>
-     <exports symbol='xmlXPathCastStringToNumber'/>
-     <exports symbol='_xmlXPathAxis'/>
-     <exports symbol='XPATH_EXPRESSION_OK'/>
-     <exports symbol='xmlXPathContext'/>
-     <exports symbol='XPTR_SUB_RESOURCE_ERROR'/>
-     <exports symbol='xmlXPathParserContext'/>
-     <exports symbol='XPATH_VARIABLE_REF_ERROR'/>
-     <exports symbol='_xmlXPathType'/>
-     <exports symbol='xmlXPathTypePtr'/>
-     <exports symbol='xmlXPathType'/>
-     <exports symbol='XPATH_UNDEFINED'/>
-     <exports symbol='XPATH_ENCODING_ERROR'/>
-     <exports symbol='XPTR_RESOURCE_ERROR'/>
-     <exports symbol='xmlXPathIsInf'/>
-     <exports symbol='XPATH_POINT'/>
-     <exports symbol='xmlXPathAxis'/>
-     <exports symbol='_xmlXPathObject'/>
-     <exports symbol='xmlXPathCompiledEval'/>
-     <exports symbol='xmlNodeSet'/>
-     <exports symbol='XPATH_UNDEF_PREFIX_ERROR'/>
-     <exports symbol='XPATH_UNKNOWN_FUNC_ERROR'/>
-     <exports symbol='xmlXPathFuncPtr'/>
-     <exports symbol='XPATH_LOCATIONSET'/>
-     <exports symbol='xmlXPathConvertFunc'/>
-     <exports symbol='xmlXPathInit'/>
-     <exports symbol='xmlXPathCmpNodes'/>
-     <exports symbol='XPATH_INVALID_ARITY'/>
-     <exports symbol='xmlXPathCastNumberToString'/>
-     <exports symbol='xmlXPathEvalFunc'/>
-     <exports symbol='xmlXPathFunction'/>
-     <exports symbol='XPATH_INVALID_PREDICATE_ERROR'/>
-     <exports symbol='xmlXPathFreeCompExpr'/>
-     <exports symbol='XPATH_MEMORY_ERROR'/>
-     <exports symbol='xmlXPathParserContextPtr'/>
-     <exports symbol='xmlXPathCompExpr'/>
-     <exports symbol='XPATH_INVALID_CTXT_POSITION'/>
-     <exports symbol='xmlXPathContextPtr'/>
-     <exports symbol='xmlXPathCompile'/>
-     <exports symbol='_xmlNodeSet'/>
-     <exports symbol='xmlXPathCastNodeSetToNumber'/>
-     <exports symbol='xmlXPathObjectType'/>
-     <exports symbol='XPATH_UNFINISHED_LITERAL_ERROR'/>
+     <exports symbol='xmlXPathNodeSetGetLength' type='macro'/>
+     <exports symbol='xmlXPathNodeSetIsEmpty' type='macro'/>
+     <exports symbol='xmlXPathNodeSetItem' type='macro'/>
+     <exports symbol='XPATH_NUMBER_ERROR' type='enum'/>
+     <exports symbol='XPATH_UNKNOWN_FUNC_ERROR' type='enum'/>
+     <exports symbol='XPATH_BOOLEAN' type='enum'/>
+     <exports symbol='XPATH_START_LITERAL_ERROR' type='enum'/>
+     <exports symbol='XPATH_RANGE' type='enum'/>
+     <exports symbol='XPTR_SYNTAX_ERROR' type='enum'/>
+     <exports symbol='XPATH_LOCATIONSET' type='enum'/>
+     <exports symbol='XPATH_INVALID_CHAR_ERROR' type='enum'/>
+     <exports symbol='XPATH_UNDEF_VARIABLE_ERROR' type='enum'/>
+     <exports symbol='XPATH_UNCLOSED_ERROR' type='enum'/>
+     <exports symbol='XPATH_POINT' type='enum'/>
+     <exports symbol='XPATH_INVALID_ARITY' type='enum'/>
+     <exports symbol='XPATH_STRING' type='enum'/>
+     <exports symbol='XPATH_EXPRESSION_OK' type='enum'/>
+     <exports symbol='XPATH_NODESET' type='enum'/>
+     <exports symbol='XPTR_SUB_RESOURCE_ERROR' type='enum'/>
+     <exports symbol='XPATH_INVALID_PREDICATE_ERROR' type='enum'/>
+     <exports symbol='XPATH_XSLT_TREE' type='enum'/>
+     <exports symbol='XPATH_EXPR_ERROR' type='enum'/>
+     <exports symbol='XPATH_VARIABLE_REF_ERROR' type='enum'/>
+     <exports symbol='XPATH_INVALID_TYPE' type='enum'/>
+     <exports symbol='XPATH_INVALID_CTXT_SIZE' type='enum'/>
+     <exports symbol='XPATH_INVALID_CTXT_POSITION' type='enum'/>
+     <exports symbol='XPATH_UNDEFINED' type='enum'/>
+     <exports symbol='XPATH_MEMORY_ERROR' type='enum'/>
+     <exports symbol='XPATH_UNFINISHED_LITERAL_ERROR' type='enum'/>
+     <exports symbol='XPATH_NUMBER' type='enum'/>
+     <exports symbol='XPATH_UNDEF_PREFIX_ERROR' type='enum'/>
+     <exports symbol='XPATH_ENCODING_ERROR' type='enum'/>
+     <exports symbol='XPATH_USERS' type='enum'/>
+     <exports symbol='XPATH_INVALID_OPERAND' type='enum'/>
+     <exports symbol='XPTR_RESOURCE_ERROR' type='enum'/>
+     <exports symbol='xmlXPathObjectType' type='typedef'/>
+     <exports symbol='xmlXPathVariablePtr' type='typedef'/>
+     <exports symbol='xmlXPathContext' type='typedef'/>
+     <exports symbol='xmlXPathFuncPtr' type='typedef'/>
+     <exports symbol='xmlXPathObjectPtr' type='typedef'/>
+     <exports symbol='xmlXPathTypePtr' type='typedef'/>
+     <exports symbol='xmlXPathType' type='typedef'/>
+     <exports symbol='xmlXPathAxisPtr' type='typedef'/>
+     <exports symbol='xmlXPathFunct' type='typedef'/>
+     <exports symbol='xmlXPathCompExprPtr' type='typedef'/>
+     <exports symbol='xmlXPathError' type='typedef'/>
+     <exports symbol='xmlXPathObject' type='typedef'/>
+     <exports symbol='xmlXPathCompExpr' type='typedef'/>
+     <exports symbol='xmlXPathContextPtr' type='typedef'/>
+     <exports symbol='xmlXPathParserContextPtr' type='typedef'/>
+     <exports symbol='xmlNodeSet' type='typedef'/>
+     <exports symbol='xmlXPathVariable' type='typedef'/>
+     <exports symbol='xmlXPathAxis' type='typedef'/>
+     <exports symbol='xmlNodeSetPtr' type='typedef'/>
+     <exports symbol='xmlXPathParserContext' type='typedef'/>
+     <exports symbol='_xmlXPathFunct' type='struct'/>
+     <exports symbol='_xmlXPathVariable' type='struct'/>
+     <exports symbol='_xmlXPathObject' type='struct'/>
+     <exports symbol='_xmlXPathParserContext' type='struct'/>
+     <exports symbol='_xmlXPathContext' type='struct'/>
+     <exports symbol='_xmlXPathAxis' type='struct'/>
+     <exports symbol='_xmlXPathType' type='struct'/>
+     <exports symbol='_xmlNodeSet' type='struct'/>
+     <exports symbol='xmlXPathNAN' type='variable'/>
+     <exports symbol='xmlXPathPINF' type='variable'/>
+     <exports symbol='xmlXPathNINF' type='variable'/>
+     <exports symbol='xmlXPathCastNodeSetToString' type='function'/>
+     <exports symbol='xmlXPathCastNodeSetToBoolean' type='function'/>
+     <exports symbol='xmlXPathCompiledEval' type='function'/>
+     <exports symbol='xmlXPathCastNodeToString' type='function'/>
+     <exports symbol='xmlXPathEvalExpression' type='function'/>
+     <exports symbol='xmlXPathConvertString' type='function'/>
+     <exports symbol='xmlXPathConvertBoolean' type='function'/>
+     <exports symbol='xmlXPathInit' type='function'/>
+     <exports symbol='xmlXPathCastStringToBoolean' type='function'/>
+     <exports symbol='xmlXPathConvertFunc' type='function'/>
+     <exports symbol='xmlXPathIsInf' type='function'/>
+     <exports symbol='xmlXPathOrderDocElems' type='function'/>
+     <exports symbol='xmlXPathFunction' type='function'/>
+     <exports symbol='xmlXPathFreeNodeSetList' type='function'/>
+     <exports symbol='xmlXPathCmpNodes' type='function'/>
+     <exports symbol='xmlXPathCastBooleanToNumber' type='function'/>
+     <exports symbol='xmlXPathCastToString' type='function'/>
+     <exports symbol='xmlXPathCastStringToNumber' type='function'/>
+     <exports symbol='xmlXPathAxisFunc' type='function'/>
+     <exports symbol='xmlXPathCastToNumber' type='function'/>
+     <exports symbol='xmlXPathCastBooleanToString' type='function'/>
+     <exports symbol='xmlXPathCastNodeToNumber' type='function'/>
+     <exports symbol='xmlXPathCastNumberToBoolean' type='function'/>
+     <exports symbol='xmlXPathIsNaN' type='function'/>
+     <exports symbol='xmlXPathEvalFunc' type='function'/>
+     <exports symbol='xmlXPathFreeCompExpr' type='function'/>
+     <exports symbol='xmlXPathObjectCopy' type='function'/>
+     <exports symbol='xmlXPathNewContext' type='function'/>
+     <exports symbol='xmlXPathEvalPredicate' type='function'/>
+     <exports symbol='xmlXPathConvertNumber' type='function'/>
+     <exports symbol='xmlXPathCompile' type='function'/>
+     <exports symbol='xmlXPathFreeObject' type='function'/>
+     <exports symbol='xmlXPathNodeSetCreate' type='function'/>
+     <exports symbol='xmlXPathFreeNodeSet' type='function'/>
+     <exports symbol='xmlXPathCastNodeSetToNumber' type='function'/>
+     <exports symbol='xmlXPathFreeContext' type='function'/>
+     <exports symbol='xmlXPathEval' type='function'/>
+     <exports symbol='xmlXPathCastNumberToString' type='function'/>
+     <exports symbol='xmlXPathCastToBoolean' type='function'/>
     </file>
     <file name='xpathInternals'>
      <summary>internal interfaces for XML Path Language implementation</summary>
      <description>internal interfaces for XML Path Language implementation used to build new modules on top of XPath like XPointer and XSLT </description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlXPathNodeSetMerge'/>
-     <exports symbol='xmlXPathRoundFunction'/>
-     <exports symbol='CAST_TO_NUMBER'/>
-     <exports symbol='xmlXPathNumberFunction'/>
-     <exports symbol='xmlXPathNotEqualValues'/>
-     <exports symbol='xmlXPathStackIsNodeSet'/>
-     <exports symbol='xmlXPathNsLookup'/>
-     <exports symbol='xmlXPathCountFunction'/>
-     <exports symbol='xmlXPathParseNCName'/>
-     <exports symbol='xmlXPathNewNodeSet'/>
-     <exports symbol='xmlXPathReturnNumber'/>
-     <exports symbol='xmlXPathVariableLookupNS'/>
-     <exports symbol='xmlXPathNextAncestorOrSelf'/>
-     <exports symbol='xmlXPathNewBoolean'/>
-     <exports symbol='xmlXPathNodeSetRemove'/>
-     <exports symbol='xmlXPathSubValues'/>
-     <exports symbol='xmlXPathNewNodeSetList'/>
-     <exports symbol='xmlXPathPopBoolean'/>
-     <exports symbol='xmlXPathNotFunction'/>
-     <exports symbol='xmlXPathEqualValues'/>
-     <exports symbol='xmlXPathGetContextNode'/>
-     <exports symbol='xmlXPathNewString'/>
-     <exports symbol='xmlXPathTrailingSorted'/>
-     <exports symbol='xmlXPathMultValues'/>
-     <exports symbol='xmlXPathModValues'/>
-     <exports symbol='xmlXPathNodeLeadingSorted'/>
-     <exports symbol='xmlXPathEvaluatePredicateResult'/>
-     <exports symbol='CHECK_ARITY'/>
-     <exports symbol='xmlXPathNextChild'/>
-     <exports symbol='CAST_TO_STRING'/>
-     <exports symbol='xmlXPathReturnExternal'/>
-     <exports symbol='xmlXPathNextFollowingSibling'/>
-     <exports symbol='xmlXPathBooleanFunction'/>
-     <exports symbol='xmlXPathNewParserContext'/>
-     <exports symbol='xmlXPathNamespaceURIFunction'/>
-     <exports symbol='xmlXPathSubstringAfterFunction'/>
-     <exports symbol='xmlXPathRoot'/>
-     <exports symbol='xmlXPathLangFunction'/>
-     <exports symbol='CHECK_TYPE0'/>
-     <exports symbol='xmlXPathCompareValues'/>
-     <exports symbol='xmlXPathPopNodeSet'/>
-     <exports symbol='xmlXPathCheckError'/>
-     <exports symbol='xmlXPathConcatFunction'/>
-     <exports symbol='xmlXPathNodeSetAddNs'/>
-     <exports symbol='xmlXPathRegisterFunc'/>
-     <exports symbol='xmlXPathNodeSetContains'/>
-     <exports symbol='xmlXPathRegisterFuncNS'/>
-     <exports symbol='xmlXPatherror'/>
-     <exports symbol='xmlXPathNextAncestor'/>
-     <exports symbol='xmlXPathNextFollowing'/>
-     <exports symbol='xmlXPathRegisterVariableNS'/>
-     <exports symbol='CAST_TO_BOOLEAN'/>
-     <exports symbol='xmlXPathIsNodeType'/>
-     <exports symbol='xmlXPathPopString'/>
-     <exports symbol='xmlXPathLocalNameFunction'/>
-     <exports symbol='xmlXPathAddValues'/>
-     <exports symbol='xmlXPathDifference'/>
-     <exports symbol='xmlXPathRegisterVariable'/>
-     <exports symbol='valuePop'/>
-     <exports symbol='CHECK_ERROR0'/>
-     <exports symbol='xmlXPathCeilingFunction'/>
-     <exports symbol='xmlXPathIntersection'/>
-     <exports symbol='xmlXPathLeadingSorted'/>
-     <exports symbol='xmlXPathReturnFalse'/>
-     <exports symbol='xmlXPathContainsFunction'/>
-     <exports symbol='xmlXPathNextPrecedingSibling'/>
-     <exports symbol='xmlXPathNodeSetSort'/>
-     <exports symbol='xmlXPathStartsWithFunction'/>
-     <exports symbol='xmlXPathPopExternal'/>
-     <exports symbol='xmlXPathNormalizeFunction'/>
-     <exports symbol='xmlXPathNodeLeading'/>
-     <exports symbol='xmlXPathSumFunction'/>
-     <exports symbol='xmlXPathRegisterVariableLookup'/>
-     <exports symbol='xmlXPathFuncLookupFunc'/>
-     <exports symbol='xmlXPathNodeSetDel'/>
-     <exports symbol='xmlXPathStackIsExternal'/>
-     <exports symbol='xmlXPathReturnEmptyString'/>
-     <exports symbol='XP_ERROR0'/>
-     <exports symbol='xmlXPathNodeTrailingSorted'/>
-     <exports symbol='xmlXPathErr'/>
-     <exports symbol='xmlXPathNextPreceding'/>
-     <exports symbol='xmlXPathFunctionLookupNS'/>
-     <exports symbol='xmlXPathWrapNodeSet'/>
-     <exports symbol='xmlXPathSetTypeError'/>
-     <exports symbol='xmlXPathReturnTrue'/>
-     <exports symbol='xmlXPathRegisteredFuncsCleanup'/>
-     <exports symbol='xmlXPathRegisterAllFunctions'/>
-     <exports symbol='xmlXPathReturnEmptyNodeSet'/>
-     <exports symbol='xmlXPathFunctionLookup'/>
-     <exports symbol='xmlXPathGetDocument'/>
-     <exports symbol='xmlXPathReturnBoolean'/>
-     <exports symbol='xmlXPathPositionFunction'/>
-     <exports symbol='xmlXPathVariableLookupFunc'/>
-     <exports symbol='xmlXPathSubstringBeforeFunction'/>
-     <exports symbol='xmlXPathRegisteredVariablesCleanup'/>
-     <exports symbol='xmlXPathNextDescendant'/>
-     <exports symbol='xmlXPathNextNamespace'/>
-     <exports symbol='xmlXPathWrapCString'/>
-     <exports symbol='xmlXPathNewFloat'/>
-     <exports symbol='xmlXPathRegisterNs'/>
-     <exports symbol='xmlXPathWrapExternal'/>
-     <exports symbol='xmlXPathTranslateFunction'/>
-     <exports symbol='xmlXPathNextParent'/>
-     <exports symbol='xmlXPathNodeSetFreeNs'/>
-     <exports symbol='xmlXPathTrailing'/>
-     <exports symbol='xmlXPathHasSameNodes'/>
-     <exports symbol='xmlXPathDistinctSorted'/>
-     <exports symbol='xmlXPathFreeParserContext'/>
-     <exports symbol='xmlXPathNodeTrailing'/>
-     <exports symbol='xmlXPathNewCString'/>
-     <exports symbol='valuePush'/>
-     <exports symbol='xmlXPathNodeSetAdd'/>
-     <exports symbol='xmlXPathSubstringFunction'/>
-     <exports symbol='xmlXPathStringFunction'/>
-     <exports symbol='xmlXPathFloorFunction'/>
-     <exports symbol='xmlXPathNodeSetAddUnique'/>
-     <exports symbol='xmlXPathNewValueTree'/>
-     <exports symbol='xmlXPathVariableLookup'/>
-     <exports symbol='xmlXPathDistinct'/>
-     <exports symbol='xmlXPathIdFunction'/>
-     <exports symbol='xmlXPathSetError'/>
-     <exports symbol='CHECK_ERROR'/>
-     <exports symbol='CHECK_TYPE'/>
-     <exports symbol='xmlXPathNextDescendantOrSelf'/>
-     <exports symbol='xmlXPathRegisterFuncLookup'/>
-     <exports symbol='xmlXPathNextAttribute'/>
-     <exports symbol='xmlXPathDivValues'/>
-     <exports symbol='xmlXPathStringLengthFunction'/>
-     <exports symbol='xmlXPathLastFunction'/>
-     <exports symbol='xmlXPathSetArityError'/>
-     <exports symbol='xmlXPathNextSelf'/>
-     <exports symbol='xmlXPathDebugDumpCompExpr'/>
-     <exports symbol='xmlXPathEvalExpr'/>
-     <exports symbol='xmlXPathFalseFunction'/>
-     <exports symbol='xmlXPathDebugDumpObject'/>
-     <exports symbol='xmlXPathValueFlipSign'/>
-     <exports symbol='xmlXPathStringEvalNumber'/>
-     <exports symbol='xmlXPathWrapString'/>
-     <exports symbol='xmlXPathEmptyNodeSet'/>
-     <exports symbol='xmlXPathReturnString'/>
-     <exports symbol='xmlXPathGetError'/>
-     <exports symbol='XP_ERROR'/>
-     <exports symbol='xmlXPathLeading'/>
-     <exports symbol='xmlXPathRegisteredNsCleanup'/>
-     <exports symbol='xmlXPathParseName'/>
-     <exports symbol='xmlXPathReturnNodeSet'/>
-     <exports symbol='xmlXPathTrueFunction'/>
-     <exports symbol='xmlXPathPopNumber'/>
+     <exports symbol='xmlXPathStackIsNodeSet' type='macro'/>
+     <exports symbol='xmlXPathStackIsExternal' type='macro'/>
+     <exports symbol='xmlXPathReturnEmptyString' type='macro'/>
+     <exports symbol='XP_ERROR0' type='macro'/>
+     <exports symbol='xmlXPathCheckError' type='macro'/>
+     <exports symbol='xmlXPathSetError' type='macro'/>
+     <exports symbol='CHECK_ERROR' type='macro'/>
+     <exports symbol='xmlXPathSetTypeError' type='macro'/>
+     <exports symbol='xmlXPathReturnEmptyNodeSet' type='macro'/>
+     <exports symbol='xmlXPathReturnString' type='macro'/>
+     <exports symbol='xmlXPathReturnTrue' type='macro'/>
+     <exports symbol='CAST_TO_BOOLEAN' type='macro'/>
+     <exports symbol='xmlXPathSetArityError' type='macro'/>
+     <exports symbol='xmlXPathReturnBoolean' type='macro'/>
+     <exports symbol='CHECK_TYPE' type='macro'/>
+     <exports symbol='xmlXPathGetContextNode' type='macro'/>
+     <exports symbol='xmlXPathReturnFalse' type='macro'/>
+     <exports symbol='xmlXPathReturnNumber' type='macro'/>
+     <exports symbol='CAST_TO_NUMBER' type='macro'/>
+     <exports symbol='CHECK_ERROR0' type='macro'/>
+     <exports symbol='xmlXPathReturnExternal' type='macro'/>
+     <exports symbol='xmlXPathGetDocument' type='macro'/>
+     <exports symbol='xmlXPathGetError' type='macro'/>
+     <exports symbol='XP_ERROR' type='macro'/>
+     <exports symbol='CHECK_ARITY' type='macro'/>
+     <exports symbol='CHECK_TYPE0' type='macro'/>
+     <exports symbol='CAST_TO_STRING' type='macro'/>
+     <exports symbol='xmlXPathEmptyNodeSet' type='macro'/>
+     <exports symbol='xmlXPathReturnNodeSet' type='macro'/>
+     <exports symbol='xmlXPathNodeSetMerge' type='function'/>
+     <exports symbol='xmlXPathRoundFunction' type='function'/>
+     <exports symbol='xmlXPathSubstringAfterFunction' type='function'/>
+     <exports symbol='xmlXPathNumberFunction' type='function'/>
+     <exports symbol='xmlXPathPopNodeSet' type='function'/>
+     <exports symbol='xmlXPathNsLookup' type='function'/>
+     <exports symbol='xmlXPathCountFunction' type='function'/>
+     <exports symbol='xmlXPathParseNCName' type='function'/>
+     <exports symbol='xmlXPathNewNodeSet' type='function'/>
+     <exports symbol='xmlXPathVariableLookupNS' type='function'/>
+     <exports symbol='xmlXPathNextAncestorOrSelf' type='function'/>
+     <exports symbol='xmlXPathNewBoolean' type='function'/>
+     <exports symbol='xmlXPathNodeSetRemove' type='function'/>
+     <exports symbol='xmlXPathSubValues' type='function'/>
+     <exports symbol='xmlXPathNewNodeSetList' type='function'/>
+     <exports symbol='xmlXPathPopBoolean' type='function'/>
+     <exports symbol='xmlXPathEqualValues' type='function'/>
+     <exports symbol='xmlXPathNewString' type='function'/>
+     <exports symbol='xmlXPathTrailingSorted' type='function'/>
+     <exports symbol='xmlXPathMultValues' type='function'/>
+     <exports symbol='xmlXPathModValues' type='function'/>
+     <exports symbol='xmlXPathNodeLeadingSorted' type='function'/>
+     <exports symbol='xmlXPathNextChild' type='function'/>
+     <exports symbol='xmlXPathNextFollowingSibling' type='function'/>
+     <exports symbol='xmlXPathPopString' type='function'/>
+     <exports symbol='xmlXPathNewParserContext' type='function'/>
+     <exports symbol='xmlXPathNamespaceURIFunction' type='function'/>
+     <exports symbol='xmlXPathWrapNodeSet' type='function'/>
+     <exports symbol='xmlXPathRoot' type='function'/>
+     <exports symbol='xmlXPathLangFunction' type='function'/>
+     <exports symbol='xmlXPathRegisterFuncNS' type='function'/>
+     <exports symbol='xmlXPathCompareValues' type='function'/>
+     <exports symbol='xmlXPathIsNodeType' type='function'/>
+     <exports symbol='xmlXPathNodeSetAddNs' type='function'/>
+     <exports symbol='xmlXPathNodeSetContains' type='function'/>
+     <exports symbol='xmlXPatherror' type='function'/>
+     <exports symbol='xmlXPathNextAncestor' type='function'/>
+     <exports symbol='xmlXPathNextFollowing' type='function'/>
+     <exports symbol='xmlXPathRegisterVariableNS' type='function'/>
+     <exports symbol='xmlXPathRegisteredNsCleanup' type='function'/>
+     <exports symbol='xmlXPathConcatFunction' type='function'/>
+     <exports symbol='xmlXPathLocalNameFunction' type='function'/>
+     <exports symbol='xmlXPathAddValues' type='function'/>
+     <exports symbol='xmlXPathDifference' type='function'/>
+     <exports symbol='xmlXPathRegisterVariable' type='function'/>
+     <exports symbol='valuePop' type='function'/>
+     <exports symbol='xmlXPathCeilingFunction' type='function'/>
+     <exports symbol='xmlXPathIntersection' type='function'/>
+     <exports symbol='xmlXPathLeadingSorted' type='function'/>
+     <exports symbol='xmlXPathContainsFunction' type='function'/>
+     <exports symbol='xmlXPathNextPrecedingSibling' type='function'/>
+     <exports symbol='xmlXPathNodeSetSort' type='function'/>
+     <exports symbol='xmlXPathStartsWithFunction' type='function'/>
+     <exports symbol='xmlXPathBooleanFunction' type='function'/>
+     <exports symbol='xmlXPathPopExternal' type='function'/>
+     <exports symbol='xmlXPathNormalizeFunction' type='function'/>
+     <exports symbol='xmlXPathNodeLeading' type='function'/>
+     <exports symbol='xmlXPathSumFunction' type='function'/>
+     <exports symbol='xmlXPathRegisterVariableLookup' type='function'/>
+     <exports symbol='xmlXPathNotEqualValues' type='function'/>
+     <exports symbol='xmlXPathNodeSetDel' type='function'/>
+     <exports symbol='xmlXPathWrapString' type='function'/>
+     <exports symbol='xmlXPathEvaluatePredicateResult' type='function'/>
+     <exports symbol='xmlXPathNodeTrailingSorted' type='function'/>
+     <exports symbol='xmlXPathErr' type='function'/>
+     <exports symbol='xmlXPathNextPreceding' type='function'/>
+     <exports symbol='xmlXPathFunctionLookupNS' type='function'/>
+     <exports symbol='xmlXPathFuncLookupFunc' type='function'/>
+     <exports symbol='xmlXPathRegisteredFuncsCleanup' type='function'/>
+     <exports symbol='xmlXPathRegisterAllFunctions' type='function'/>
+     <exports symbol='xmlXPathNewCString' type='function'/>
+     <exports symbol='xmlXPathRegisterFunc' type='function'/>
+     <exports symbol='xmlXPathPositionFunction' type='function'/>
+     <exports symbol='xmlXPathVariableLookupFunc' type='function'/>
+     <exports symbol='xmlXPathSubstringBeforeFunction' type='function'/>
+     <exports symbol='xmlXPathRegisteredVariablesCleanup' type='function'/>
+     <exports symbol='xmlXPathNextDescendant' type='function'/>
+     <exports symbol='xmlXPathNextNamespace' type='function'/>
+     <exports symbol='xmlXPathWrapCString' type='function'/>
+     <exports symbol='xmlXPathNewFloat' type='function'/>
+     <exports symbol='xmlXPathRegisterNs' type='function'/>
+     <exports symbol='xmlXPathWrapExternal' type='function'/>
+     <exports symbol='xmlXPathNextParent' type='function'/>
+     <exports symbol='xmlXPathNodeSetFreeNs' type='function'/>
+     <exports symbol='xmlXPathTrailing' type='function'/>
+     <exports symbol='xmlXPathHasSameNodes' type='function'/>
+     <exports symbol='xmlXPathDistinctSorted' type='function'/>
+     <exports symbol='xmlXPathFreeParserContext' type='function'/>
+     <exports symbol='xmlXPathNodeTrailing' type='function'/>
+     <exports symbol='xmlXPathFunctionLookup' type='function'/>
+     <exports symbol='valuePush' type='function'/>
+     <exports symbol='xmlXPathNodeSetAdd' type='function'/>
+     <exports symbol='xmlXPathSubstringFunction' type='function'/>
+     <exports symbol='xmlXPathStringFunction' type='function'/>
+     <exports symbol='xmlXPathFloorFunction' type='function'/>
+     <exports symbol='xmlXPathNodeSetAddUnique' type='function'/>
+     <exports symbol='xmlXPathNewValueTree' type='function'/>
+     <exports symbol='xmlXPathDistinct' type='function'/>
+     <exports symbol='xmlXPathIdFunction' type='function'/>
+     <exports symbol='xmlXPathVariableLookup' type='function'/>
+     <exports symbol='xmlXPathNotFunction' type='function'/>
+     <exports symbol='xmlXPathStringEvalNumber' type='function'/>
+     <exports symbol='xmlXPathNextDescendantOrSelf' type='function'/>
+     <exports symbol='xmlXPathRegisterFuncLookup' type='function'/>
+     <exports symbol='xmlXPathNextAttribute' type='function'/>
+     <exports symbol='xmlXPathDivValues' type='function'/>
+     <exports symbol='xmlXPathStringLengthFunction' type='function'/>
+     <exports symbol='xmlXPathLastFunction' type='function'/>
+     <exports symbol='xmlXPathNextSelf' type='function'/>
+     <exports symbol='xmlXPathDebugDumpCompExpr' type='function'/>
+     <exports symbol='xmlXPathEvalExpr' type='function'/>
+     <exports symbol='xmlXPathFalseFunction' type='function'/>
+     <exports symbol='xmlXPathDebugDumpObject' type='function'/>
+     <exports symbol='xmlXPathValueFlipSign' type='function'/>
+     <exports symbol='xmlXPathTranslateFunction' type='function'/>
+     <exports symbol='xmlXPathLeading' type='function'/>
+     <exports symbol='xmlXPathParseName' type='function'/>
+     <exports symbol='xmlXPathTrueFunction' type='function'/>
+     <exports symbol='xmlXPathPopNumber' type='function'/>
     </file>
     <file name='xpointer'>
      <summary>API to handle XML Pointers</summary>
      <description>API to handle XML Pointers Base implementation was made accordingly to W3C Candidate Recommendation 7 June 2000</description>
      <author>Daniel Veillard </author>
-     <exports symbol='xmlXPtrNewRangePoints'/>
-     <exports symbol='xmlLocationSetPtr'/>
-     <exports symbol='xmlXPtrBuildNodeList'/>
-     <exports symbol='xmlXPtrEval'/>
-     <exports symbol='xmlXPtrNewCollapsedRange'/>
-     <exports symbol='xmlLocationSet'/>
-     <exports symbol='xmlXPtrNewLocationSetNodeSet'/>
-     <exports symbol='xmlXPtrNewRangePointNode'/>
-     <exports symbol='xmlXPtrLocationSetMerge'/>
-     <exports symbol='xmlXPtrEvalRangePredicate'/>
-     <exports symbol='xmlXPtrLocationSetDel'/>
-     <exports symbol='xmlXPtrNewRange'/>
-     <exports symbol='xmlXPtrFreeLocationSet'/>
-     <exports symbol='xmlXPtrWrapLocationSet'/>
-     <exports symbol='xmlXPtrNewRangeNodes'/>
-     <exports symbol='xmlXPtrLocationSetCreate'/>
-     <exports symbol='xmlXPtrLocationSetAdd'/>
-     <exports symbol='xmlXPtrRangeToFunction'/>
-     <exports symbol='_xmlLocationSet'/>
-     <exports symbol='xmlXPtrNewLocationSetNodes'/>
-     <exports symbol='xmlXPtrNewContext'/>
-     <exports symbol='xmlXPtrNewRangeNodeObject'/>
-     <exports symbol='xmlXPtrLocationSetRemove'/>
-     <exports symbol='xmlXPtrNewRangeNodePoint'/>
+     <exports symbol='xmlLocationSet' type='typedef'/>
+     <exports symbol='xmlLocationSetPtr' type='typedef'/>
+     <exports symbol='_xmlLocationSet' type='struct'/>
+     <exports symbol='xmlXPtrNewRange' type='function'/>
+     <exports symbol='xmlXPtrFreeLocationSet' type='function'/>
+     <exports symbol='xmlXPtrWrapLocationSet' type='function'/>
+     <exports symbol='xmlXPtrEvalRangePredicate' type='function'/>
+     <exports symbol='xmlXPtrBuildNodeList' type='function'/>
+     <exports symbol='xmlXPtrLocationSetAdd' type='function'/>
+     <exports symbol='xmlXPtrNewRangeNodes' type='function'/>
+     <exports symbol='xmlXPtrEval' type='function'/>
+     <exports symbol='xmlXPtrRangeToFunction' type='function'/>
+     <exports symbol='xmlXPtrNewCollapsedRange' type='function'/>
+     <exports symbol='xmlXPtrNewRangePoints' type='function'/>
+     <exports symbol='xmlXPtrNewLocationSetNodeSet' type='function'/>
+     <exports symbol='xmlXPtrNewRangePointNode' type='function'/>
+     <exports symbol='xmlXPtrNewContext' type='function'/>
+     <exports symbol='xmlXPtrNewRangeNodeObject' type='function'/>
+     <exports symbol='xmlXPtrLocationSetRemove' type='function'/>
+     <exports symbol='xmlXPtrNewRangeNodePoint' type='function'/>
+     <exports symbol='xmlXPtrLocationSetDel' type='function'/>
+     <exports symbol='xmlXPtrLocationSetMerge' type='function'/>
+     <exports symbol='xmlXPtrLocationSetCreate' type='function'/>
+     <exports symbol='xmlXPtrNewLocationSetNodes' type='function'/>
     </file>
   </files>
   <symbols>
diff --git a/doc/newapi.xsl b/doc/newapi.xsl
index f92332c..2748a7b 100644
--- a/doc/newapi.xsl
+++ b/doc/newapi.xsl
@@ -162,9 +162,7 @@
 
   <xsl:template match="macro" mode="toc">
     <pre class="programlisting">
-    <xsl:text>#define </xsl:text><a href="#{@name}"><xsl:value-of select="@name"/></a><xsl:text>
-
-</xsl:text>
+    <xsl:text>#define </xsl:text><a href="#{@name}"><xsl:value-of select="@name"/></a>
     </pre>
   </xsl:template>
 
@@ -189,26 +187,8 @@
     <xsl:choose>
       <xsl:when test="@type = 'enum'">
 	<xsl:text>Enum </xsl:text>
-	<a name="{$name}"><xsl:value-of select="$name"/></a>
-	<xsl:text> {
-</xsl:text>
-        <xsl:for-each select="/api/symbols/enum[@type = $name]">
-	  <xsl:sort select="@value" data-type="number" order="ascending"/>
-	  <xsl:text>    </xsl:text>
-	  <a name="{@name}"><xsl:value-of select="@name"/></a>
-	  <xsl:text> = </xsl:text>
-	  <xsl:value-of select="@value"/>
-	  <xsl:if test="@info != ''">
-	    <xsl:text> : </xsl:text>
-	    <xsl:call-template name="dumptext">
-	      <xsl:with-param name="text" select="@info"/>
-	    </xsl:call-template>
-	  </xsl:if>
-	  <xsl:text>
-</xsl:text>
-	</xsl:for-each>
-	<xsl:text>}
-
+	<a href="#{$name}"><xsl:value-of select="$name"/></a>
+	<xsl:text>
 </xsl:text>
       </xsl:when>
       <xsl:otherwise>
@@ -219,16 +199,56 @@
 	<xsl:text> </xsl:text>
 	<a name="{$name}"><xsl:value-of select="$name"/></a>
 	<xsl:text>
-
 </xsl:text>
       </xsl:otherwise>
     </xsl:choose>
     </pre>
   </xsl:template>
 
+  <xsl:template match="typedef[@type = 'enum']">
+    <xsl:variable name="name" select="string(@name)"/>
+    <h3><a name="{$name}"><xsl:value-of select="$name"/></a></h3>
+    <pre class="programlisting">
+      <xsl:text>Enum </xsl:text>
+      <xsl:value-of select="$name"/>
+      <xsl:text> {
+</xsl:text>
+      <xsl:for-each select="/api/symbols/enum[@type = $name]">
+        <xsl:sort select="@value" data-type="number" order="ascending"/>
+        <xsl:text>    </xsl:text>
+        <a name="{@name}"><xsl:value-of select="@name"/></a>
+        <xsl:text> = </xsl:text>
+        <xsl:value-of select="@value"/>
+        <xsl:if test="@info != ''">
+	  <xsl:text> : </xsl:text>
+	  <xsl:call-template name="dumptext">
+	    <xsl:with-param name="text" select="@info"/>
+	  </xsl:call-template>
+        </xsl:if>
+        <xsl:text>
+</xsl:text>
+      </xsl:for-each>
+      <xsl:text>}
+</xsl:text>
+    </pre>
+  </xsl:template>
+
   <xsl:template match="struct" mode="toc">
     <pre class="programlisting">
-    <xsl:text>Structure </xsl:text><a name="{@name}"><xsl:value-of select="@name"/></a><br/>
+    <xsl:text>Structure </xsl:text><a href="#{@name}"><xsl:value-of select="@name"/></a><br/>
+    <xsl:value-of select="@type"/><xsl:text>
+</xsl:text>
+    <xsl:if test="not(field)">
+      <xsl:text>The content of this structure is not made public by the API.
+</xsl:text>
+    </xsl:if>
+    </pre>
+  </xsl:template>
+
+  <xsl:template match="struct">
+    <h3><a name="{@name}">Structure <xsl:value-of select="@name"/></a></h3>
+    <pre class="programlisting">
+    <xsl:text>Structure </xsl:text><xsl:value-of select="@name"/><br/>
     <xsl:value-of select="@type"/><xsl:text> {
 </xsl:text>
     <xsl:if test="not(field)">
@@ -253,7 +273,6 @@
     </xsl:for-each>
     <xsl:text>}</xsl:text>
     </pre>
-    <br/>
   </xsl:template>
 
   <xsl:template match="macro">
@@ -269,12 +288,22 @@
   </xsl:template>
 
   <xsl:template match="function" mode="toc">
+    <xsl:variable name="name" select="string(@name)"/>
+    <xsl:variable name="nlen" select="string-length($name)"/>
+    <xsl:variable name="tlen" select="string-length(return/@type)"/>
+    <xsl:variable name="blen" select="(($nlen + 8) - (($nlen + 8) mod 8)) + (($tlen + 8) - (($tlen + 8) mod 8))"/>
     <pre class="programlisting">
     <xsl:call-template name="dumptext">
       <xsl:with-param name="text" select="return/@type"/>
     </xsl:call-template>
     <xsl:text>&#9;</xsl:text>
     <a href="#{@name}"><xsl:value-of select="@name"/></a>
+    <xsl:if test="$blen - 40 &lt; -8">
+      <xsl:text>&#9;</xsl:text>
+    </xsl:if>
+    <xsl:if test="$blen - 40 &lt; 0">
+      <xsl:text>&#9;</xsl:text>
+    </xsl:if>
     <xsl:text>&#9;(</xsl:text>
     <xsl:if test="not(arg)">
       <xsl:text>void</xsl:text>
@@ -286,19 +315,81 @@
       <xsl:text> </xsl:text>
       <xsl:value-of select="@name"/>
       <xsl:if test="position() != last()">
-        <xsl:text>, </xsl:text><br/><xsl:text>&#9;&#9;&#9;&#9; </xsl:text>
+        <xsl:text>, </xsl:text><br/>
+	<xsl:if test="$blen - 40 &gt; 8">
+	  <xsl:text>&#9;</xsl:text>
+	</xsl:if>
+	<xsl:if test="$blen - 40 &gt; 0">
+	  <xsl:text>&#9;</xsl:text>
+	</xsl:if>
+	<xsl:text>&#9;&#9;&#9;&#9;&#9; </xsl:text>
       </xsl:if>
     </xsl:for-each>
-    <xsl:text>)</xsl:text><br/>
-    <xsl:text>
+    <xsl:text>)</xsl:text>
+    </pre><xsl:text>
 </xsl:text>
-    </pre>
   </xsl:template>
 
   <xsl:template match="functype" mode="toc">
-    <pre class="programlisting">
     <xsl:variable name="name" select="string(@name)"/>
-    <a name="{$name}"></a>
+    <xsl:variable name="nlen" select="string-length($name)"/>
+    <xsl:variable name="tlen" select="string-length(return/@type)"/>
+    <xsl:variable name="blen" select="(($nlen + 8) - (($nlen + 8) mod 8)) + (($tlen + 8) - (($tlen + 8) mod 8))"/>
+    <pre class="programlisting">
+    <xsl:text>Function type: </xsl:text>
+    <a href="#{$name}"><xsl:value-of select="$name"/></a>
+    <xsl:text>
+</xsl:text>
+    <xsl:call-template name="dumptext">
+      <xsl:with-param name="text" select="return/@type"/>
+    </xsl:call-template>
+    <xsl:text>&#9;</xsl:text>
+    <a href="#{$name}"><xsl:value-of select="$name"/></a>
+    <xsl:if test="$blen - 40 &lt; -8">
+      <xsl:text>&#9;</xsl:text>
+    </xsl:if>
+    <xsl:if test="$blen - 40 &lt; 0">
+      <xsl:text>&#9;</xsl:text>
+    </xsl:if>
+    <xsl:text>&#9;(</xsl:text>
+    <xsl:if test="not(arg)">
+      <xsl:text>void</xsl:text>
+    </xsl:if>
+    <xsl:for-each select="arg">
+      <xsl:call-template name="dumptext">
+        <xsl:with-param name="text" select="@type"/>
+      </xsl:call-template>
+      <xsl:text> </xsl:text>
+      <xsl:value-of select="@name"/>
+      <xsl:if test="position() != last()">
+        <xsl:text>, </xsl:text><br/>
+	<xsl:if test="$blen - 40 &gt; 8">
+	  <xsl:text>&#9;</xsl:text>
+	</xsl:if>
+	<xsl:if test="$blen - 40 &gt; 0">
+	  <xsl:text>&#9;</xsl:text>
+	</xsl:if>
+	<xsl:text>&#9;&#9;&#9;&#9;&#9; </xsl:text>
+      </xsl:if>
+    </xsl:for-each>
+    <xsl:text>)
+</xsl:text>
+    </pre>
+    <xsl:text>
+</xsl:text>
+  </xsl:template>
+
+  <xsl:template match="functype">
+    <xsl:variable name="name" select="string(@name)"/>
+    <xsl:variable name="nlen" select="string-length($name)"/>
+    <xsl:variable name="tlen" select="string-length(return/@type)"/>
+    <xsl:variable name="blen" select="(($nlen + 8) - (($nlen + 8) mod 8)) + (($tlen + 8) - (($tlen + 8) mod 8))"/>
+    <h3>
+      <a name="{$name}"></a>
+      <xsl:text>Function type: </xsl:text>
+      <xsl:value-of select="$name"/>
+    </h3>
+    <pre class="programlisting">
     <xsl:text>Function type: </xsl:text>
     <xsl:value-of select="$name"/>
     <xsl:text>
@@ -308,6 +399,12 @@
     </xsl:call-template>
     <xsl:text>&#9;</xsl:text>
     <xsl:value-of select="@name"/>
+    <xsl:if test="$blen - 40 &lt; -8">
+      <xsl:text>&#9;</xsl:text>
+    </xsl:if>
+    <xsl:if test="$blen - 40 &lt; 0">
+      <xsl:text>&#9;</xsl:text>
+    </xsl:if>
     <xsl:text>&#9;(</xsl:text>
     <xsl:if test="not(arg)">
       <xsl:text>void</xsl:text>
@@ -319,7 +416,14 @@
       <xsl:text> </xsl:text>
       <xsl:value-of select="@name"/>
       <xsl:if test="position() != last()">
-        <xsl:text>, </xsl:text><br/><xsl:text>&#9;&#9;&#9;&#9; </xsl:text>
+        <xsl:text>, </xsl:text><br/>
+	<xsl:if test="$blen - 40 &gt; 8">
+	  <xsl:text>&#9;</xsl:text>
+	</xsl:if>
+	<xsl:if test="$blen - 40 &gt; 0">
+	  <xsl:text>&#9;</xsl:text>
+	</xsl:if>
+	<xsl:text>&#9;&#9;&#9;&#9;&#9; </xsl:text>
       </xsl:if>
     </xsl:for-each>
     <xsl:text>)
@@ -361,6 +465,9 @@
 
   <xsl:template match="function">
     <xsl:variable name="name" select="string(@name)"/>
+    <xsl:variable name="nlen" select="string-length($name)"/>
+    <xsl:variable name="tlen" select="string-length(return/@type)"/>
+    <xsl:variable name="blen" select="(($nlen + 8) - (($nlen + 8) mod 8)) + (($tlen + 8) - (($tlen + 8) mod 8))"/>
     <h3><a name="{$name}"></a>Function: <xsl:value-of select="$name"/></h3>
     <pre class="programlisting">
     <xsl:call-template name="dumptext">
@@ -368,6 +475,12 @@
     </xsl:call-template>
     <xsl:text>&#9;</xsl:text>
     <xsl:value-of select="@name"/>
+    <xsl:if test="$blen - 40 &lt; -8">
+      <xsl:text>&#9;</xsl:text>
+    </xsl:if>
+    <xsl:if test="$blen - 40 &lt; 0">
+      <xsl:text>&#9;</xsl:text>
+    </xsl:if>
     <xsl:text>&#9;(</xsl:text>
     <xsl:if test="not(arg)">
       <xsl:text>void</xsl:text>
@@ -379,7 +492,14 @@
       <xsl:text> </xsl:text>
       <xsl:value-of select="@name"/>
       <xsl:if test="position() != last()">
-        <xsl:text>, </xsl:text><br/><xsl:text>&#9;&#9;&#9;&#9; </xsl:text>
+        <xsl:text>, </xsl:text><br/>
+	<xsl:if test="$blen - 40 &gt; 8">
+	  <xsl:text>&#9;</xsl:text>
+	</xsl:if>
+	<xsl:if test="$blen - 40 &gt; 0">
+	  <xsl:text>&#9;</xsl:text>
+	</xsl:if>
+	<xsl:text>&#9;&#9;&#9;&#9;&#9; </xsl:text>
       </xsl:if>
     </xsl:for-each>
     <xsl:text>)</xsl:text><br/>
@@ -484,7 +604,21 @@
 	      </xsl:when>
 	      <xsl:otherwise>
 		<h2>Table of Contents</h2>
-		<xsl:apply-templates select="exports" mode="toc"/>
+		<xsl:apply-templates select="exports[@type='macro']" mode="toc">
+		  <xsl:sort select='@symbol'/>
+		</xsl:apply-templates>
+		<xsl:apply-templates select="exports[@type='enum']" mode="toc">
+		  <xsl:sort select='@symbol'/>
+		</xsl:apply-templates>
+		<xsl:apply-templates select="exports[@type='typedef']" mode="toc">
+		  <xsl:sort select='@symbol'/>
+		</xsl:apply-templates>
+		<xsl:apply-templates select="exports[@type='struct']" mode="toc">
+		  <xsl:sort select='@symbol'/>
+		</xsl:apply-templates>
+		<xsl:apply-templates select="exports[@type='function']" mode="toc">
+		  <xsl:sort select='@symbol'/>
+		</xsl:apply-templates>
 		<h2>Description</h2>
 		<xsl:text>
 </xsl:text>