- win32config.h.in: updated
- xmlversion.h.in: crap forgot to update this, this mean 2.1.0
lacks iconv support :-( need to release 2.1.1
- configure.in: release 2.1.1
- HTMLparser: fixed bug #14784
- xpath.c HTMLparser.c encoding.c parser.c: fix warning raised
by Windows compiler
- HTMLparser.c SAX.c HTMLtree.h tree.h: create HTML document in
the SAX startDocument() callback.
- TODO: updated
- rebuild doc
Daniel
diff --git a/doc/html/gnome-xml-htmlparser.html b/doc/html/gnome-xml-htmlparser.html
index 77f49b9..351920a 100644
--- a/doc/html/gnome-xml-htmlparser.html
+++ b/doc/html/gnome-xml-htmlparser.html
@@ -4,7 +4,7 @@
>HTMLparser</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.44"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.33"><LINK
REL="HOME"
TITLE="Gnome XML Library Reference Manual"
HREF="book1.html"><LINK
@@ -20,9 +20,6 @@
><BODY
BGCOLOR="#FFFFFF"
TEXT="#000000"
-LINK="#0000FF"
-VLINK="#840084"
-ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
@@ -114,22 +111,19 @@
></TABLE
></DIV
><H1
-><A
-NAME="GNOME-XML-HTMLPARSER"
->HTMLparser</A
-></H1
+>HTMLparser</H1
><DIV
CLASS="REFNAMEDIV"
><A
-NAME="AEN7286"
+NAME="AEN9061"
></A
><H2
>Name</H2
->HTMLparser -- </DIV
+>HTMLparser — </DIV
><DIV
CLASS="REFSYNOPSISDIV"
><A
-NAME="AEN7289"
+NAME="AEN9064"
></A
><H2
>Synopsis</H2
@@ -180,9 +174,25 @@
HREF="gnome-xml-htmlparser.html#HTMLNODEPTR"
>htmlNodePtr</A
>;
-<GTKDOCLINK
-HREF="HTMLELEMDESCPTR"
->htmlElemDescPtr</GTKDOCLINK
+struct <A
+HREF="gnome-xml-htmlparser.html#HTMLELEMDESC"
+>htmlElemDesc</A
+>;
+typedef <A
+HREF="gnome-xml-htmlparser.html#HTMLELEMDESCPTR"
+>htmlElemDescPtr</A
+>;
+struct <A
+HREF="gnome-xml-htmlparser.html#HTMLENTITYDESC"
+>htmlEntityDesc</A
+>;
+typedef <A
+HREF="gnome-xml-htmlparser.html#HTMLENTITYDESCPTR"
+>htmlEntityDescPtr</A
+>;
+<A
+HREF="gnome-xml-htmlparser.html#HTMLELEMDESCPTR"
+>htmlElemDescPtr</A
> <A
HREF="gnome-xml-htmlparser.html#HTMLTAGLOOKUP"
>htmlTagLookup</A
@@ -190,9 +200,9 @@
HREF="gnome-xml-tree.html#XMLCHAR"
>xmlChar</A
> *tag);
-<GTKDOCLINK
-HREF="HTMLENTITYDESCPTR"
->htmlEntityDescPtr</GTKDOCLINK
+<A
+HREF="gnome-xml-htmlparser.html#HTMLENTITYDESCPTR"
+>htmlEntityDescPtr</A
> <A
HREF="gnome-xml-htmlparser.html#HTMLENTITYLOOKUP"
>htmlEntityLookup</A
@@ -200,9 +210,35 @@
HREF="gnome-xml-tree.html#XMLCHAR"
>xmlChar</A
> *name);
-<GTKDOCLINK
-HREF="HTMLENTITYDESCPTR"
->htmlEntityDescPtr</GTKDOCLINK
+int <A
+HREF="gnome-xml-htmlparser.html#HTMLISAUTOCLOSED"
+>htmlIsAutoClosed</A
+> (<A
+HREF="gnome-xml-htmlparser.html#HTMLDOCPTR"
+>htmlDocPtr</A
+> doc,
+ <A
+HREF="gnome-xml-htmlparser.html#HTMLNODEPTR"
+>htmlNodePtr</A
+> elem);
+int <A
+HREF="gnome-xml-htmlparser.html#HTMLAUTOCLOSETAG"
+>htmlAutoCloseTag</A
+> (<A
+HREF="gnome-xml-htmlparser.html#HTMLDOCPTR"
+>htmlDocPtr</A
+> doc,
+ const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *name,
+ <A
+HREF="gnome-xml-htmlparser.html#HTMLNODEPTR"
+>htmlNodePtr</A
+> elem);
+<A
+HREF="gnome-xml-htmlparser.html#HTMLENTITYDESCPTR"
+>htmlEntityDescPtr</A
> <A
HREF="gnome-xml-htmlparser.html#HTMLPARSEENTITYREF"
>htmlParseEntityRef</A
@@ -275,7 +311,42 @@
HREF="gnome-xml-htmlparser.html#HTMLPARSEFILE"
>htmlParseFile</A
> (const char *filename,
- const char *encoding);</PRE
+ const char *encoding);
+void <A
+HREF="gnome-xml-htmlparser.html#HTMLFREEPARSERCTXT"
+>htmlFreeParserCtxt</A
+> (<A
+HREF="gnome-xml-htmlparser.html#HTMLPARSERCTXTPTR"
+>htmlParserCtxtPtr</A
+> ctxt);
+<A
+HREF="gnome-xml-htmlparser.html#HTMLPARSERCTXTPTR"
+>htmlParserCtxtPtr</A
+> <A
+HREF="gnome-xml-htmlparser.html#HTMLCREATEPUSHPARSERCTXT"
+>htmlCreatePushParserCtxt</A
+> (<A
+HREF="gnome-xml-htmlparser.html#HTMLSAXHANDLERPTR"
+>htmlSAXHandlerPtr</A
+> sax,
+ void *user_data,
+ const char *chunk,
+ int size,
+ const char *filename,
+ <A
+HREF="gnome-xml-encoding.html#XMLCHARENCODING"
+>xmlCharEncoding</A
+> enc);
+int <A
+HREF="gnome-xml-htmlparser.html#HTMLPARSECHUNK"
+>htmlParseChunk</A
+> (<A
+HREF="gnome-xml-htmlparser.html#HTMLPARSERCTXTPTR"
+>htmlParserCtxtPtr</A
+> ctxt,
+ const char *chunk,
+ int size,
+ int terminate);</PRE
></TD
></TR
></TABLE
@@ -283,7 +354,7 @@
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN7327"
+NAME="AEN9121"
></A
><H2
>Description</H2
@@ -293,131 +364,364 @@
><DIV
CLASS="REFSECT1"
><A
-NAME="AEN7330"
+NAME="AEN9124"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7332"
+NAME="AEN9126"
></A
><H3
><A
NAME="HTMLPARSERCTXT"
></A
>htmlParserCtxt</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef xmlParserCtxt htmlParserCtxt;</PRE
+></TD
+></TR
+></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7336"
+NAME="AEN9131"
></A
><H3
><A
NAME="HTMLPARSERCTXTPTR"
></A
>htmlParserCtxtPtr</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef xmlParserCtxtPtr htmlParserCtxtPtr;</PRE
+></TD
+></TR
+></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7340"
+NAME="AEN9136"
></A
><H3
><A
NAME="HTMLPARSERNODEINFO"
></A
>htmlParserNodeInfo</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef xmlParserNodeInfo htmlParserNodeInfo;</PRE
+></TD
+></TR
+></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7344"
+NAME="AEN9141"
></A
><H3
><A
NAME="HTMLSAXHANDLER"
></A
>htmlSAXHandler</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef xmlSAXHandler htmlSAXHandler;</PRE
+></TD
+></TR
+></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7348"
+NAME="AEN9146"
></A
><H3
><A
NAME="HTMLSAXHANDLERPTR"
></A
>htmlSAXHandlerPtr</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef xmlSAXHandlerPtr htmlSAXHandlerPtr;</PRE
+></TD
+></TR
+></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7352"
+NAME="AEN9151"
></A
><H3
><A
NAME="HTMLPARSERINPUT"
></A
>htmlParserInput</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef xmlParserInput htmlParserInput;</PRE
+></TD
+></TR
+></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7356"
+NAME="AEN9156"
></A
><H3
><A
NAME="HTMLPARSERINPUTPTR"
></A
>htmlParserInputPtr</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef xmlParserInputPtr htmlParserInputPtr;</PRE
+></TD
+></TR
+></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7360"
+NAME="AEN9161"
></A
><H3
><A
NAME="HTMLDOCPTR"
></A
>htmlDocPtr</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef xmlDocPtr htmlDocPtr;</PRE
+></TD
+></TR
+></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7364"
+NAME="AEN9166"
></A
><H3
><A
NAME="HTMLNODEPTR"
></A
>htmlNodePtr</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef xmlNodePtr htmlNodePtr;</PRE
+></TD
+></TR
+></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7368"
+NAME="AEN9171"
+></A
+><H3
+><A
+NAME="HTMLELEMDESC"
+></A
+>struct htmlElemDesc</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>struct htmlElemDesc {
+ const char *name; /* The tag name */
+ int startTag; /* Whether the start tag can be implied */
+ int endTag; /* Whether the end tag can be implied */
+ int empty; /* Is this an empty element ? */
+ int depr; /* Is this a deprecated element ? */
+ int dtd; /* 1: only in Loose DTD, 2: only Frameset one */
+ const char *desc; /* the description */
+};</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN9176"
+></A
+><H3
+><A
+NAME="HTMLELEMDESCPTR"
+></A
+>htmlElemDescPtr</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef htmlElemDesc *htmlElemDescPtr;</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN9181"
+></A
+><H3
+><A
+NAME="HTMLENTITYDESC"
+></A
+>struct htmlEntityDesc</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>struct htmlEntityDesc {
+ int value; /* the UNICODE value for the character */
+ const char *name; /* The entity name */
+ const char *desc; /* the description */
+};</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN9186"
+></A
+><H3
+><A
+NAME="HTMLENTITYDESCPTR"
+></A
+>htmlEntityDescPtr</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef htmlEntityDesc *htmlEntityDescPtr;</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN9191"
></A
><H3
><A
@@ -433,9 +737,9 @@
><TD
><PRE
CLASS="PROGRAMLISTING"
-><GTKDOCLINK
-HREF="HTMLELEMDESCPTR"
->htmlElemDescPtr</GTKDOCLINK
+><A
+HREF="gnome-xml-htmlparser.html#HTMLELEMDESCPTR"
+>htmlElemDescPtr</A
> htmlTagLookup (const <A
HREF="gnome-xml-tree.html#XMLCHAR"
>xmlChar</A
@@ -473,7 +777,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> The tag name</TD
></TR
><TR
><TD
@@ -488,7 +792,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+>the related htmlElemDescPtr or NULL if not found.</TD
></TR
></TABLE
><P
@@ -498,7 +802,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7389"
+NAME="AEN9212"
></A
><H3
><A
@@ -514,9 +818,9 @@
><TD
><PRE
CLASS="PROGRAMLISTING"
-><GTKDOCLINK
-HREF="HTMLENTITYDESCPTR"
->htmlEntityDescPtr</GTKDOCLINK
+><A
+HREF="gnome-xml-htmlparser.html#HTMLENTITYDESCPTR"
+>htmlEntityDescPtr</A
> htmlEntityLookup (const <A
HREF="gnome-xml-tree.html#XMLCHAR"
>xmlChar</A
@@ -556,7 +860,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> the entity name</TD
></TR
><TR
><TD
@@ -571,7 +875,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+>the associated htmlEntityDescPtr if found, NULL otherwise.</TD
></TR
></TABLE
><P
@@ -581,7 +885,231 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7411"
+NAME="AEN9234"
+></A
+><H3
+><A
+NAME="HTMLISAUTOCLOSED"
+></A
+>htmlIsAutoClosed ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>int htmlIsAutoClosed (<A
+HREF="gnome-xml-htmlparser.html#HTMLDOCPTR"
+>htmlDocPtr</A
+> doc,
+ <A
+HREF="gnome-xml-htmlparser.html#HTMLNODEPTR"
+>htmlNodePtr</A
+> elem);</PRE
+></TD
+></TR
+></TABLE
+><P
+>The HTmL DtD allows a tag to implicitely 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="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>doc</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> the HTML document</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>elem</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> the HTML element</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>1 if autoclosed, 0 otherwise</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN9259"
+></A
+><H3
+><A
+NAME="HTMLAUTOCLOSETAG"
+></A
+>htmlAutoCloseTag ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>int htmlAutoCloseTag (<A
+HREF="gnome-xml-htmlparser.html#HTMLDOCPTR"
+>htmlDocPtr</A
+> doc,
+ const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *name,
+ <A
+HREF="gnome-xml-htmlparser.html#HTMLNODEPTR"
+>htmlNodePtr</A
+> elem);</PRE
+></TD
+></TR
+></TABLE
+><P
+>The HTmL DtD allows a tag to implicitely 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="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>doc</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> the HTML document</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>name</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> The tag name</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>elem</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> the HTML element</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>1 if autoclose, 0 otherwise</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN9289"
></A
><H3
><A
@@ -597,9 +1125,9 @@
><TD
><PRE
CLASS="PROGRAMLISTING"
-><GTKDOCLINK
-HREF="HTMLENTITYDESCPTR"
->htmlEntityDescPtr</GTKDOCLINK
+><A
+HREF="gnome-xml-htmlparser.html#HTMLENTITYDESCPTR"
+>htmlEntityDescPtr</A
> htmlParseEntityRef (<A
HREF="gnome-xml-htmlparser.html#HTMLPARSERCTXTPTR"
>htmlParserCtxtPtr</A
@@ -643,7 +1171,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> an HTML parser context</TD
></TR
><TR
><TD
@@ -660,7 +1188,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> location to store the entity name</TD
></TR
><TR
><TD
@@ -675,7 +1203,8 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+>the associated htmlEntityDescPtr if found, or NULL otherwise,
+if non-NULL *str will have to be freed by the caller.</TD
></TR
></TABLE
><P
@@ -685,7 +1214,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7438"
+NAME="AEN9316"
></A
><H3
><A
@@ -744,7 +1273,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> an HTML parser context</TD
></TR
><TR
><TD
@@ -759,7 +1288,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+>the value parsed (as an int)</TD
></TR
></TABLE
><P
@@ -769,7 +1298,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7460"
+NAME="AEN9338"
></A
><H3
><A
@@ -826,7 +1355,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> an HTML parser context</TD
></TR
></TABLE
><P
@@ -836,7 +1365,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7478"
+NAME="AEN9356"
></A
><H3
><A
@@ -900,7 +1429,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> a pointer to an array of xmlChar</TD
></TR
><TR
><TD
@@ -917,7 +1446,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> a free form C string describing the HTML document encoding, or NULL</TD
></TR
><TR
><TD
@@ -934,7 +1463,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> the SAX handler block</TD
></TR
><TR
><TD
@@ -951,7 +1480,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> if using SAX, this pointer will be provided on callbacks. </TD
></TR
><TR
><TD
@@ -966,7 +1495,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+>the resulting document tree</TD
></TR
></TABLE
><P
@@ -976,7 +1505,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7512"
+NAME="AEN9390"
></A
><H3
><A
@@ -1033,7 +1562,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> a pointer to an array of xmlChar</TD
></TR
><TR
><TD
@@ -1050,7 +1579,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> a free form C string describing the HTML document encoding, or NULL</TD
></TR
><TR
><TD
@@ -1065,7 +1594,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+>the resulting document tree</TD
></TR
></TABLE
><P
@@ -1075,7 +1604,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7537"
+NAME="AEN9415"
></A
><H3
><A
@@ -1137,7 +1666,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> the filename</TD
></TR
><TR
><TD
@@ -1154,7 +1683,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> a free form C string describing the HTML document encoding, or NULL</TD
></TR
><TR
><TD
@@ -1171,7 +1700,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> the SAX handler block</TD
></TR
><TR
><TD
@@ -1188,7 +1717,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> if using SAX, this pointer will be provided on callbacks. </TD
></TR
><TR
><TD
@@ -1203,7 +1732,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+>the resulting document tree</TD
></TR
></TABLE
><P
@@ -1213,7 +1742,7 @@
><HR><DIV
CLASS="REFSECT2"
><A
-NAME="AEN7570"
+NAME="AEN9448"
></A
><H3
><A
@@ -1268,7 +1797,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> the filename</TD
></TR
><TR
><TD
@@ -1285,7 +1814,7 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+> a free form C string describing the HTML document encoding, or NULL</TD
></TR
><TR
><TD
@@ -1300,7 +1829,390 @@
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
-> </TD
+>the resulting document tree</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN9472"
+></A
+><H3
+><A
+NAME="HTMLFREEPARSERCTXT"
+></A
+>htmlFreeParserCtxt ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>void htmlFreeParserCtxt (<A
+HREF="gnome-xml-htmlparser.html#HTMLPARSERCTXTPTR"
+>htmlParserCtxtPtr</A
+> ctxt);</PRE
+></TD
+></TR
+></TABLE
+><P
+>Free all the memory used by a parser context. However the parsed
+document in ctxt->myDoc is not freed.</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> an HTML parser context</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN9488"
+></A
+><H3
+><A
+NAME="HTMLCREATEPUSHPARSERCTXT"
+></A
+>htmlCreatePushParserCtxt ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+><A
+HREF="gnome-xml-htmlparser.html#HTMLPARSERCTXTPTR"
+>htmlParserCtxtPtr</A
+> htmlCreatePushParserCtxt (<A
+HREF="gnome-xml-htmlparser.html#HTMLSAXHANDLERPTR"
+>htmlSAXHandlerPtr</A
+> sax,
+ void *user_data,
+ const char *chunk,
+ int size,
+ const char *filename,
+ <A
+HREF="gnome-xml-encoding.html#XMLCHARENCODING"
+>xmlCharEncoding</A
+> enc);</PRE
+></TD
+></TR
+></TABLE
+><P
+>Create a parser context for using the HTML parser in push mode
+To allow content encoding detection, <TT
+CLASS="PARAMETER"
+><I
+>size</I
+></TT
+> should be >= 4
+The value of <TT
+CLASS="PARAMETER"
+><I
+>filename</I
+></TT
+> is used for fetching external entities
+and error/warning reports.</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>sax</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> a SAX handler</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>user_data</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> The user data returned on SAX callbacks</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>chunk</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> a pointer to an array of chars</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>size</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> number of chars in the array</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>filename</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> an optional file name or URI</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>enc</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> an optional encoding</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>the new parser context or NULL</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN9532"
+></A
+><H3
+><A
+NAME="HTMLPARSECHUNK"
+></A
+>htmlParseChunk ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>int htmlParseChunk (<A
+HREF="gnome-xml-htmlparser.html#HTMLPARSERCTXTPTR"
+>htmlParserCtxtPtr</A
+> ctxt,
+ const char *chunk,
+ int size,
+ int terminate);</PRE
+></TD
+></TR
+></TABLE
+><P
+>Parse a Chunk of memory</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> an XML parser context</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>chunk</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> an char array</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>size</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> the size in byte of the chunk</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>terminate</I
+></TT
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> last chunk indicator</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>zero if no error, the xmlParserErrors otherwise.</TD
></TR
></TABLE
><P