Finally - found the problem with the page generation (XMLPUBFUN not

* doc/html/*.html: Finally - found the problem with the
  page generation (XMLPUBFUN not recognized by gtkdoc).
  Re-created the pages using a temporary version of
  include/libxml/*.h.
* testOOMlib.c,include/libxml/encoding.h,
  include/libxml/schemasInternals.h,include/libxml/valid.h,
  include/libxml/xlink.h,include/libxml/xmlwin32version.h,
  include/libxml/xmlwin32version.h.in,
  include/libxml/xpathInternals.h: minor edit of comments
  to help automatic documentation generation
* doc/docdescr.doc: small elaboration
* doc/examples/test1.c,doc/examples/Makefile.am: re-commit
  (messed up on last try)
* xmlreader.c: minor change to clear warning.
diff --git a/doc/html/libxml-HTMLparser.html b/doc/html/libxml-HTMLparser.html
index ed97915..35f63e3 100644
--- a/doc/html/libxml-HTMLparser.html
+++ b/doc/html/libxml-HTMLparser.html
@@ -28,7 +28,7 @@
         .navigation .title {
             font-size: 200%;
         }
-      </style><link rel="home" href="index.html" title="Gnome XML Library Reference Manual "><link rel="up" href="ch01.html" title="Libxml Programming Notes"><link rel="previous" href="libxml-entities.html" title="entities"><link rel="next" href="libxml-valid.html" title="valid"></head><body text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><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><td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td><td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td><th width="100%" align="center">Gnome XML Library Reference Manual </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><div class="refentry"><a name="libxml-HTMLparser"></a><div class="titlepage"></div><div class="refnamediv"><h2>HTMLparser</h2><p>HTMLparser &#8212; </p></div><div class="refsynopsisdiv"><h2><h1 class="title"><a name="id2684037"></a>Synopsis</h1></h2><pre class="synopsis">
+      </style><link rel="home" href="index.html" title="Gnome XML Library Reference Manual"><link rel="up" href="ch01.html" title="Libxml Programming Notes"><link rel="previous" href="libxml-entities.html" title="entities"><link rel="next" href="libxml-valid.html" title="valid"></head><body text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><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><td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td><td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td><th width="100%" align="center">Gnome XML Library Reference Manual</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><div class="refentry"><a name="libxml-HTMLparser"></a><div class="titlepage"></div><div class="refnamediv"><h2>HTMLparser</h2><p>HTMLparser &#8212; </p></div><div class="refsynopsisdiv"><h2><h1 class="title"><a name="id2762484"></a>Synopsis</h1></h2><pre class="synopsis">
 
 
 
@@ -45,7 +45,109 @@
 typedef     <a href="libxml-HTMLparser.html#htmlElemDescPtr">htmlElemDescPtr</a>;
 struct      <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a>;
 typedef     <a href="libxml-HTMLparser.html#htmlEntityDescPtr">htmlEntityDescPtr</a>;
+const <a href="libxml-HTMLparser.html#htmlElemDesc">htmlElemDesc</a>* <a href="libxml-HTMLparser.html#htmlTagLookup">htmlTagLookup</a>           (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *tag);
+const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a>* <a href="libxml-HTMLparser.html#htmlEntityLookup">htmlEntityLookup</a>      (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
+const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a>* <a href="libxml-HTMLparser.html#htmlEntityValueLookup">htmlEntityValueLookup</a> (unsigned int value);
+int         <a href="libxml-HTMLparser.html#htmlIsAutoClosed">htmlIsAutoClosed</a>                (<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc,
+                                             <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> elem);
+int         <a href="libxml-HTMLparser.html#htmlAutoCloseTag">htmlAutoCloseTag</a>                (<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc,
+                                             const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
+                                             <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> elem);
+const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a>* <a href="libxml-HTMLparser.html#htmlParseEntityRef">htmlParseEntityRef</a>    (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt,
+                                             const <a href="libxml-tree.html#xmlChar">xmlChar</a> **str);
+int         <a href="libxml-HTMLparser.html#htmlParseCharRef">htmlParseCharRef</a>                (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt);
+void        <a href="libxml-HTMLparser.html#htmlParseElement">htmlParseElement</a>                (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt);
+<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> <a href="libxml-HTMLparser.html#htmlCreateMemoryParserCtxt">htmlCreateMemoryParserCtxt</a>
+                                            (const char *buffer,
+                                             int size);
+int         <a href="libxml-HTMLparser.html#htmlParseDocument">htmlParseDocument</a>               (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt);
+<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  <a href="libxml-HTMLparser.html#htmlSAXParseDoc">htmlSAXParseDoc</a>                 (<a href="libxml-tree.html#xmlChar">xmlChar</a> *cur,
+                                             const char *encoding,
+                                             <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax,
+                                             void *userData);
+<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  <a href="libxml-HTMLparser.html#htmlParseDoc">htmlParseDoc</a>                    (<a href="libxml-tree.html#xmlChar">xmlChar</a> *cur,
+                                             const char *encoding);
+<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  <a href="libxml-HTMLparser.html#htmlSAXParseFile">htmlSAXParseFile</a>                (const char *filename,
+                                             const char *encoding,
+                                             <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax,
+                                             void *userData);
+<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  <a href="libxml-HTMLparser.html#htmlParseFile">htmlParseFile</a>                   (const char *filename,
+                                             const char *encoding);
+int         <a href="libxml-HTMLparser.html#UTF8ToHtml">UTF8ToHtml</a>                      (unsigned char *out,
+                                             int *outlen,
+                                             unsigned char *in,
+                                             int *inlen);
+int         <a href="libxml-HTMLparser.html#htmlEncodeEntities">htmlEncodeEntities</a>              (unsigned char *out,
+                                             int *outlen,
+                                             unsigned char *in,
+                                             int *inlen,
+                                             int quoteChar);
+int         <a href="libxml-HTMLparser.html#htmlIsScriptAttribute">htmlIsScriptAttribute</a>           (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
+int         <a href="libxml-HTMLparser.html#htmlHandleOmittedElem">htmlHandleOmittedElem</a>           (int val);
+<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> <a href="libxml-HTMLparser.html#htmlCreatePushParserCtxt">htmlCreatePushParserCtxt</a>  (<a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax,
+                                             void *user_data,
+                                             const char *chunk,
+                                             int size,
+                                             const char *filename,
+                                             <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc);
+int         <a href="libxml-HTMLparser.html#htmlParseChunk">htmlParseChunk</a>                  (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt,
+                                             const char *chunk,
+                                             int size,
+                                             int terminate);
+void        <a href="libxml-HTMLparser.html#htmlFreeParserCtxt">htmlFreeParserCtxt</a>              (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt);
 enum        <a href="libxml-HTMLparser.html#htmlParserOption">htmlParserOption</a>;
+void        <a href="libxml-HTMLparser.html#htmlCtxtReset">htmlCtxtReset</a>                   (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt);
+int         <a href="libxml-HTMLparser.html#htmlCtxtUseOptions">htmlCtxtUseOptions</a>              (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt,
+                                             int options);
+<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  <a href="libxml-HTMLparser.html#htmlReadDoc">htmlReadDoc</a>                     (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *cur,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);
+<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  <a href="libxml-HTMLparser.html#htmlReadFile">htmlReadFile</a>                    (const char *URL,
+                                             const char *encoding,
+                                             int options);
+<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  <a href="libxml-HTMLparser.html#htmlReadMemory">htmlReadMemory</a>                  (const char *buffer,
+                                             int size,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);
+<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  <a href="libxml-HTMLparser.html#htmlReadFd">htmlReadFd</a>                      (int fd,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);
+<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  <a href="libxml-HTMLparser.html#htmlReadIO">htmlReadIO</a>                      (<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread,
+                                             <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose,
+                                             void *ioctx,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);
+<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  <a href="libxml-HTMLparser.html#htmlCtxtReadDoc">htmlCtxtReadDoc</a>                 (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
+                                             const <a href="libxml-tree.html#xmlChar">xmlChar</a> *cur,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);
+<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  <a href="libxml-HTMLparser.html#htmlCtxtReadFile">htmlCtxtReadFile</a>                (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
+                                             const char *filename,
+                                             const char *encoding,
+                                             int options);
+<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  <a href="libxml-HTMLparser.html#htmlCtxtReadMemory">htmlCtxtReadMemory</a>              (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
+                                             const char *buffer,
+                                             int size,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);
+<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  <a href="libxml-HTMLparser.html#htmlCtxtReadFd">htmlCtxtReadFd</a>                  (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
+                                             int fd,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);
+<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  <a href="libxml-HTMLparser.html#htmlCtxtReadIO">htmlCtxtReadIO</a>                  (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
+                                             <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread,
+                                             <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose,
+                                             void *ioctx,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);
 </pre></div><div class="refsect1"><h2>Description</h2><p>
 
 </p></div><div class="refsect1"><h2>Details</h2><div class="refsect2"><h3><a name="htmlParserCtxt"></a>htmlParserCtxt</h3><pre class="programlisting">typedef xmlParserCtxt htmlParserCtxt;
@@ -120,7 +222,207 @@
 </p></div><hr><div class="refsect2"><h3><a name="htmlEntityDescPtr"></a>htmlEntityDescPtr</h3><pre class="programlisting">typedef htmlEntityDesc *htmlEntityDescPtr;
 </pre><p>
 
-</p></div><hr><div class="refsect2"><h3><a name="htmlParserOption"></a>enum htmlParserOption</h3><pre class="programlisting">typedef enum {
+</p></div><hr><div class="refsect2"><h3><a name="htmlTagLookup"></a>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);</pre><p>
+Lookup the HTML tag in the ElementTable</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the related htmlElemDescPtr or NULL if not found.
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlEntityLookup"></a>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);</pre><p>
+Lookup the given entity in EntitiesTable
+</p><p>
+TODO: the linear scan is really ugly, an hash table is really needed.</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the associated htmlEntityDescPtr if found, NULL otherwise.
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlEntityValueLookup"></a>htmlEntityValueLookup ()</h3><pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a>* htmlEntityValueLookup (unsigned int value);</pre><p>
+Lookup the given entity in EntitiesTable
+</p><p>
+TODO: the linear scan is really ugly, an hash table is really needed.</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the associated htmlEntityDescPtr if found, NULL otherwise.
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlIsAutoClosed"></a>htmlIsAutoClosed ()</h3><pre class="programlisting">int         htmlIsAutoClosed                (<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc,
+                                             <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> elem);</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><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>1 if autoclosed, 0 otherwise
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlAutoCloseTag"></a>htmlAutoCloseTag ()</h3><pre class="programlisting">int         htmlAutoCloseTag                (<a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc,
+                                             const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
+                                             <a href="libxml-HTMLparser.html#htmlNodePtr">htmlNodePtr</a> elem);</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><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>1 if autoclose, 0 otherwise
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlParseEntityRef"></a>htmlParseEntityRef ()</h3><pre class="programlisting">const <a href="libxml-HTMLparser.html#htmlEntityDesc">htmlEntityDesc</a>* htmlParseEntityRef    (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt,
+                                             const <a href="libxml-tree.html#xmlChar">xmlChar</a> **str);</pre><p>
+parse an HTML ENTITY references
+</p><p>
+[68] EntityRef ::= '&amp;' Name ';'</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the associated htmlEntityDescPtr if found, or NULL otherwise,
+        if non-NULL *str will have to be freed by the caller.
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlParseCharRef"></a>htmlParseCharRef ()</h3><pre class="programlisting">int         htmlParseCharRef                (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt);</pre><p>
+parse Reference declarations
+</p><p>
+[66] CharRef ::= '&amp;#' [0-9]+ ';' |
+                 '&amp;<GTKDOCLINK HREF="x">x</GTKDOCLINK>' [0-9a-fA-F]+ ';'</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the value parsed (as an int)
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlParseElement"></a>htmlParseElement ()</h3><pre class="programlisting">void        htmlParseElement                (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt);</pre><p>
+parse an HTML element, this is highly recursive
+</p><p>
+[39] element ::= EmptyElemTag | STag content ETag
+</p><p>
+[41] Attribute ::= Name Eq AttValue</p><p>
+
+</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></div><hr><div class="refsect2"><h3><a name="htmlCreateMemoryParserCtxt"></a>htmlCreateMemoryParserCtxt ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> htmlCreateMemoryParserCtxt
+                                            (const char *buffer,
+                                             int size);</pre><p>
+Create a parser context for an HTML in-memory document.</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the new parser context or NULL
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlParseDocument"></a>htmlParseDocument ()</h3><pre class="programlisting">int         htmlParseDocument               (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt);</pre><p>
+parse an HTML document (and build a tree if using the standard SAX
+interface).</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</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></div><hr><div class="refsect2"><h3><a name="htmlSAXParseDoc"></a>htmlSAXParseDoc ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  htmlSAXParseDoc                 (<a href="libxml-tree.html#xmlChar">xmlChar</a> *cur,
+                                             const char *encoding,
+                                             <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax,
+                                             void *userData);</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><p>
+
+</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 xmlChar
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the resulting document tree unless SAX is NULL or the document is
+    not well formed.
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlParseDoc"></a>htmlParseDoc ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  htmlParseDoc                    (<a href="libxml-tree.html#xmlChar">xmlChar</a> *cur,
+                                             const char *encoding);</pre><p>
+parse an HTML in-memory document and build a tree.</p><p>
+
+</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 xmlChar
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the resulting document tree
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlSAXParseFile"></a>htmlSAXParseFile ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  htmlSAXParseFile                (const char *filename,
+                                             const char *encoding,
+                                             <a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax,
+                                             void *userData);</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><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the resulting document tree unless SAX is NULL or the document is
+    not well formed.
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlParseFile"></a>htmlParseFile ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  htmlParseFile                   (const char *filename,
+                                             const char *encoding);</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><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the resulting document tree
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="UTF8ToHtml"></a>UTF8ToHtml ()</h3><pre class="programlisting">int         UTF8ToHtml                      (unsigned char *out,
+                                             int *outlen,
+                                             unsigned char *in,
+                                             int *inlen);</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><p>
+
+</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 <i><tt>out</tt></i>
+</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 <i><tt>in</tt></i>
+</td></tr><tr><td><span class="term"><span class="emphasis"><i>Returns</i></span> :</span></td><td>0 if success, -2 if the transcoding fails, or -1 otherwise
+The value of <i><tt>inlen</tt></i> after return is the number of octets consumed
+    as the return value is positive, else unpredictable.
+The value of <i><tt>outlen</tt></i> after return is the number of octets consumed.
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlEncodeEntities"></a>htmlEncodeEntities ()</h3><pre class="programlisting">int         htmlEncodeEntities              (unsigned char *out,
+                                             int *outlen,
+                                             unsigned char *in,
+                                             int *inlen,
+                                             int quoteChar);</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><p>
+
+</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 <i><tt>out</tt></i>
+</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 <i><tt>in</tt></i>
+</td></tr><tr><td><span class="term"><i><tt>quoteChar</tt></i>:</span></td><td> the quote character to escape (' or ") or zero.
+</td></tr><tr><td><span class="term"><span class="emphasis"><i>Returns</i></span> :</span></td><td>0 if success, -2 if the transcoding fails, or -1 otherwise
+The value of <i><tt>inlen</tt></i> after return is the number of octets consumed
+    as the return value is positive, else unpredictable.
+The value of <i><tt>outlen</tt></i> after return is the number of octets consumed.
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlIsScriptAttribute"></a>htmlIsScriptAttribute ()</h3><pre class="programlisting">int         htmlIsScriptAttribute           (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
+Check if an attribute is of content type Script</p><p>
+
+</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 attribute name
+</td></tr><tr><td><span class="term"><span class="emphasis"><i>Returns</i></span> :</span></td><td>1 is the attribute is a script 0 otherwise
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlHandleOmittedElem"></a>htmlHandleOmittedElem ()</h3><pre class="programlisting">int         htmlHandleOmittedElem           (int val);</pre><p>
+Set and return the previous value for handling HTML omitted tags.</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the last value for 0 for no handling, 1 for auto insertion.
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlCreatePushParserCtxt"></a>htmlCreatePushParserCtxt ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> htmlCreatePushParserCtxt  (<a href="libxml-HTMLparser.html#htmlSAXHandlerPtr">htmlSAXHandlerPtr</a> sax,
+                                             void *user_data,
+                                             const char *chunk,
+                                             int size,
+                                             const char *filename,
+                                             <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc);</pre><p>
+Create a parser context for using the HTML parser in push mode
+The value of <i><tt>filename</tt></i> is used for fetching external entities
+and error/warning reports.</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the new parser context or NULL
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlParseChunk"></a>htmlParseChunk ()</h3><pre class="programlisting">int         htmlParseChunk                  (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt,
+                                             const char *chunk,
+                                             int size,
+                                             int terminate);</pre><p>
+Parse a Chunk of memory</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>zero if no error, the xmlParserErrors otherwise.
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlFreeParserCtxt"></a>htmlFreeParserCtxt ()</h3><pre class="programlisting">void        htmlFreeParserCtxt              (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt);</pre><p>
+Free all the memory used by a parser context. However the parsed
+document in ctxt-&gt;myDoc is not freed.</p><p>
+
+</p><div class="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></div><hr><div class="refsect2"><h3><a name="htmlParserOption"></a>enum htmlParserOption</h3><pre class="programlisting">typedef enum {
     HTML_PARSE_NOERROR	= 1&lt;&lt;5,	/* suppress error reports */
     HTML_PARSE_NOWARNING= 1&lt;&lt;6,	/* suppress warning reports */
     HTML_PARSE_PEDANTIC	= 1&lt;&lt;7,	/* pedantic error reporting */
@@ -129,4 +431,149 @@
 } htmlParserOption;
 </pre><p>
 
-</p></div></div></div><table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="0"><tr valign="middle"><td align="left"><a accesskey="p" href="libxml-entities.html"><b>&lt;&lt; entities</b></a></td><td align="right"><a accesskey="n" href="libxml-valid.html"><b>valid &gt;&gt;</b></a></td></tr></table></body></html>
+</p></div><hr><div class="refsect2"><h3><a name="htmlCtxtReset"></a>htmlCtxtReset ()</h3><pre class="programlisting">void        htmlCtxtReset                   (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt);</pre><p>
+Reset a parser context</p><p>
+
+</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></div><hr><div class="refsect2"><h3><a name="htmlCtxtUseOptions"></a>htmlCtxtUseOptions ()</h3><pre class="programlisting">int         htmlCtxtUseOptions              (<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> ctxt,
+                                             int options);</pre><p>
+Applies the options to the parser context</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>0 in case of success, the set of unknown or unimplemented options
+        in case of error.
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlReadDoc"></a>htmlReadDoc ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  htmlReadDoc                     (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *cur,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);</pre><p>
+parse an XML in-memory document and build a tree.</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the resulting document tree
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlReadFile"></a>htmlReadFile ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  htmlReadFile                    (const char *URL,
+                                             const char *encoding,
+                                             int options);</pre><p>
+parse an XML file from the filesystem or the network.</p><p>
+
+</p><div class="variablelist"><table border="0"><col align="left"><tbody><tr><td><span class="term"><i><tt>URL</tt></i>:</span></td><td>
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the resulting document tree
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlReadMemory"></a>htmlReadMemory ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  htmlReadMemory                  (const char *buffer,
+                                             int size,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);</pre><p>
+parse an XML in-memory document and build a tree.</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the resulting document tree
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlReadFd"></a>htmlReadFd ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  htmlReadFd                      (int fd,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);</pre><p>
+parse an XML from a file descriptor and build a tree.</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the resulting document tree
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlReadIO"></a>htmlReadIO ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  htmlReadIO                      (<a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread,
+                                             <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose,
+                                             void *ioctx,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);</pre><p>
+parse an HTML document from I/O functions and source and build a tree.</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the resulting document tree
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlCtxtReadDoc"></a>htmlCtxtReadDoc ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  htmlCtxtReadDoc                 (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
+                                             const <a href="libxml-tree.html#xmlChar">xmlChar</a> *cur,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);</pre><p>
+parse an XML in-memory document and build a tree.
+This reuses the existing <i><tt>ctxt</tt></i> parser context</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the resulting document tree
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlCtxtReadFile"></a>htmlCtxtReadFile ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  htmlCtxtReadFile                (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
+                                             const char *filename,
+                                             const char *encoding,
+                                             int options);</pre><p>
+parse an XML file from the filesystem or the network.
+This reuses the existing <i><tt>ctxt</tt></i> parser context</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the resulting document tree
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlCtxtReadMemory"></a>htmlCtxtReadMemory ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  htmlCtxtReadMemory              (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
+                                             const char *buffer,
+                                             int size,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);</pre><p>
+parse an XML in-memory document and build a tree.
+This reuses the existing <i><tt>ctxt</tt></i> parser context</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the resulting document tree
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlCtxtReadFd"></a>htmlCtxtReadFd ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  htmlCtxtReadFd                  (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
+                                             int fd,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);</pre><p>
+parse an XML from a file descriptor and build a tree.
+This reuses the existing <i><tt>ctxt</tt></i> parser context</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the resulting document tree
+</td></tr></tbody></table></div></div><hr><div class="refsect2"><h3><a name="htmlCtxtReadIO"></a>htmlCtxtReadIO ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>  htmlCtxtReadIO                  (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
+                                             <a href="libxml-xmlIO.html#xmlInputReadCallback">xmlInputReadCallback</a> ioread,
+                                             <a href="libxml-xmlIO.html#xmlInputCloseCallback">xmlInputCloseCallback</a> ioclose,
+                                             void *ioctx,
+                                             const char *URL,
+                                             const char *encoding,
+                                             int options);</pre><p>
+parse an HTML document from I/O functions and source and build a tree.
+This reuses the existing <i><tt>ctxt</tt></i> parser context</p><p>
+
+</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"><span class="emphasis"><i>Returns</i></span> :</span></td><td>the resulting document tree
+</td></tr></tbody></table></div></div></div></div><table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="0"><tr valign="middle"><td align="left"><a accesskey="p" href="libxml-entities.html"><b>&lt;&lt; entities</b></a></td><td align="right"><a accesskey="n" href="libxml-valid.html"><b>valid &gt;&gt;</b></a></td></tr></table></body></html>