- 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-parserinternals.html b/doc/html/gnome-xml-parserinternals.html
index 9bd27f6..13053eb 100644
--- a/doc/html/gnome-xml-parserinternals.html
+++ b/doc/html/gnome-xml-parserinternals.html
@@ -4,7 +4,7 @@
 >parserInternals</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-PARSERINTERNALS"
->parserInternals</A
-></H1
+>parserInternals</H1
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN8929"
+NAME="AEN11751"
 ></A
 ><H2
 >Name</H2
->parserInternals&nbsp;--&nbsp;</DIV
+>parserInternals &#8212; </DIV
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN8932"
+NAME="AEN11754"
 ></A
 ><H2
 >Synopsis</H2
@@ -148,18 +142,6 @@
 HREF="gnome-xml-parserinternals.html#XML-MAX-NAMELEN"
 >XML_MAX_NAMELEN</A
 >
-typedef     <A
-HREF="gnome-xml-parserinternals.html#CHARVAL"
->CHARVAL</A
->;
-#define     <A
-HREF="gnome-xml-parserinternals.html#NEXTCHARVAL"
->NEXTCHARVAL</A
->                     (p)
-#define     <A
-HREF="gnome-xml-parserinternals.html#SKIPCHARVAL"
->SKIPCHARVAL</A
->                     (p)
 #define     <A
 HREF="gnome-xml-parserinternals.html#IS-CHAR"
 >IS_CHAR</A
@@ -212,7 +194,7 @@
 HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
 >xmlParserCtxtPtr</A
 > <A
-HREF="gnome-xml-parserinternals.html#XMLCREATEDOCPARSERCTXT"
+HREF="gnome-xml-parser.html#XMLCREATEDOCPARSERCTXT"
 >xmlCreateDocParserCtxt</A
 >     (<A
 HREF="gnome-xml-tree.html#XMLCHAR"
@@ -233,13 +215,6 @@
 >xmlCreateMemoryParserCtxt</A
 >  (char *buffer,
                                              int size);
-void        <A
-HREF="gnome-xml-parserinternals.html#XMLFREEPARSERCTXT"
->xmlFreeParserCtxt</A
->               (<A
-HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> ctxt);
 <A
 HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
 >xmlParserCtxtPtr</A
@@ -247,7 +222,25 @@
 HREF="gnome-xml-parserinternals.html#XMLNEWPARSERCTXT"
 >xmlNewParserCtxt</A
 >           (void);
-void        <A
+<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> <A
+HREF="gnome-xml-parserinternals.html#XMLCREATEENTITYPARSERCTXT"
+>xmlCreateEntityParserCtxt</A
+>  (const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *URL,
+                                             const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *ID,
+                                             const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *base);
+int         <A
 HREF="gnome-xml-parserinternals.html#XMLSWITCHENCODING"
 >xmlSwitchEncoding</A
 >               (<A
@@ -258,6 +251,24 @@
 HREF="gnome-xml-encoding.html#XMLCHARENCODING"
 >xmlCharEncoding</A
 > enc);
+int         <A
+HREF="gnome-xml-parserinternals.html#XMLSWITCHTOENCODING"
+>xmlSwitchToEncoding</A
+>             (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt,
+                                             <A
+HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLERPTR"
+>xmlCharEncodingHandlerPtr</A
+> handler);
+void        <A
+HREF="gnome-xml-parser.html#XMLFREEPARSERCTXT"
+>xmlFreeParserCtxt</A
+>               (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt);
 void        <A
 HREF="gnome-xml-parserinternals.html#XMLHANDLEENTITY"
 >xmlHandleEntity</A
@@ -782,6 +793,13 @@
 >xmlParserCtxtPtr</A
 > ctxt);
 void        <A
+HREF="gnome-xml-parserinternals.html#XMLPARSETEXTDECL"
+>xmlParseTextDecl</A
+>                (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt);
+void        <A
 HREF="gnome-xml-parserinternals.html#XMLPARSEMISC"
 >xmlParseMisc</A
 >                    (<A
@@ -843,6 +861,33 @@
 HREF="gnome-xml-tree.html#XMLCHAR"
 >xmlChar</A
 > end3);
+<A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+>*    <A
+HREF="gnome-xml-parserinternals.html#XMLSTRINGDECODEENTITIES"
+>xmlStringDecodeEntities</A
+>         (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt,
+                                             const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *str,
+                                             int what,
+                                             <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> end,
+                                             <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> end2,
+                                             <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> end3);
 int         <A
 HREF="gnome-xml-parserinternals.html#NODEPUSH"
 >nodePush</A
@@ -892,7 +937,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN9143"
+NAME="AEN11979"
 ></A
 ><H2
 >Description</H2
@@ -902,14 +947,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN9146"
+NAME="AEN11982"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9148"
+NAME="AEN11984"
 ></A
 ><H3
 ><A
@@ -925,7 +970,7 @@
 ><TD
 ><PRE
 CLASS="PROGRAMLISTING"
->#define     XML_MAX_NAMELEN</PRE
+>#define XML_MAX_NAMELEN 1000</PRE
 ></TD
 ></TR
 ></TABLE
@@ -935,136 +980,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9153"
-></A
-><H3
-><A
-NAME="CHARVAL"
-></A
->CHARVAL</H3
-><P
-></P
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN9157"
-></A
-><H3
-><A
-NAME="NEXTCHARVAL"
-></A
->NEXTCHARVAL()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->#define     NEXTCHARVAL(p)</PRE
-></TD
-></TR
-></TABLE
-><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
->p</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->&nbsp;</TD
-></TR
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN9171"
-></A
-><H3
-><A
-NAME="SKIPCHARVAL"
-></A
->SKIPCHARVAL()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->#define SKIPCHARVAL(p) (p)++;</PRE
-></TD
-></TR
-></TABLE
-><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
->p</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->&nbsp;</TD
-></TR
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN9185"
+NAME="AEN11989"
 ></A
 ><H3
 ><A
@@ -1122,7 +1038,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9199"
+NAME="AEN12003"
 ></A
 ><H3
 ><A
@@ -1180,7 +1096,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9213"
+NAME="AEN12017"
 ></A
 ><H3
 ><A
@@ -1238,7 +1154,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9227"
+NAME="AEN12031"
 ></A
 ><H3
 ><A
@@ -1296,7 +1212,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9241"
+NAME="AEN12045"
 ></A
 ><H3
 ><A
@@ -1354,7 +1270,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9255"
+NAME="AEN12059"
 ></A
 ><H3
 ><A
@@ -1412,7 +1328,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9269"
+NAME="AEN12073"
 ></A
 ><H3
 ><A
@@ -1470,7 +1386,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9283"
+NAME="AEN12087"
 ></A
 ><H3
 ><A
@@ -1486,7 +1402,7 @@
 ><TD
 ><PRE
 CLASS="PROGRAMLISTING"
->#define     IS_LETTER(c)</PRE
+>#define IS_LETTER(c) (IS_BASECHAR(c) || IS_IDEOGRAPHIC(c))</PRE
 ></TD
 ></TR
 ></TABLE
@@ -1528,7 +1444,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9297"
+NAME="AEN12101"
 ></A
 ><H3
 ><A
@@ -1586,7 +1502,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9311"
+NAME="AEN12115"
 ></A
 ><H3
 ><A
@@ -1644,7 +1560,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9325"
+NAME="AEN12129"
 ></A
 ><H3
 ><A
@@ -1702,7 +1618,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9339"
+NAME="AEN12143"
 ></A
 ><H3
 ><A
@@ -1760,7 +1676,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9353"
+NAME="AEN12157"
 ></A
 ><H3
 ><A
@@ -1787,7 +1703,7 @@
 ></TR
 ></TABLE
 ><P
->Create a parser context for an XML in-memory document.</P
+>Creates a parser context for an XML in-memory document.</P
 ><P
 ></P
 ><DIV
@@ -1841,7 +1757,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9374"
+NAME="AEN12178"
 ></A
 ><H3
 ><A
@@ -1896,7 +1812,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  the filename</TD
 ></TR
 ><TR
 ><TD
@@ -1911,7 +1827,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the new parser context or NULL</TD
 ></TR
 ></TABLE
 ><P
@@ -1921,7 +1837,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9394"
+NAME="AEN12198"
 ></A
 ><H3
 ><A
@@ -1975,7 +1891,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  a pointer to a zero terminated char array</TD
 ></TR
 ><TR
 ><TD
@@ -1992,7 +1908,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  the size of the array (without the trailing 0)</TD
 ></TR
 ><TR
 ><TD
@@ -2007,7 +1923,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the new parser context or NULL</TD
 ></TR
 ></TABLE
 ><P
@@ -2017,7 +1933,393 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9418"
+NAME="AEN12222"
+></A
+><H3
+><A
+NAME="XMLNEWPARSERCTXT"
+></A
+>xmlNewParserCtxt ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+><A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> xmlNewParserCtxt           (void);</PRE
+></TD
+></TR
+></TABLE
+><P
+>Allocate and initialize a new parser context.</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"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>the xmlParserCtxtPtr or NULL</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN12238"
+></A
+><H3
+><A
+NAME="XMLCREATEENTITYPARSERCTXT"
+></A
+>xmlCreateEntityParserCtxt ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+><A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> xmlCreateEntityParserCtxt  (const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *URL,
+                                             const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *ID,
+                                             const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *base);</PRE
+></TD
+></TR
+></TABLE
+><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
+><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
+>URL</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the entity URL</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>ID</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the entity PUBLIC ID</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>base</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  a posible base for the target URI</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>the new parser context or NULL</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN12269"
+></A
+><H3
+><A
+NAME="XMLSWITCHENCODING"
+></A
+>xmlSwitchEncoding ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>int         xmlSwitchEncoding               (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt,
+                                             <A
+HREF="gnome-xml-encoding.html#XMLCHARENCODING"
+>xmlCharEncoding</A
+> enc);</PRE
+></TD
+></TR
+></TABLE
+><P
+>change the input functions when discovering the character encoding
+of a given entity.</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
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the parser context</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>enc</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the encoding value (number)</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>0 in case of success, -1 otherwise</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN12294"
+></A
+><H3
+><A
+NAME="XMLSWITCHTOENCODING"
+></A
+>xmlSwitchToEncoding ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>int         xmlSwitchToEncoding             (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt,
+                                             <A
+HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLERPTR"
+>xmlCharEncodingHandlerPtr</A
+> handler);</PRE
+></TD
+></TR
+></TABLE
+><P
+>change the input functions when discovering the character encoding
+of a given entity.</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
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the parser context</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>handler</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the encoding handler</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>0 in case of success, -1 otherwise</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN12319"
 ></A
 ><H3
 ><A
@@ -2081,153 +2383,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9434"
-></A
-><H3
-><A
-NAME="XMLNEWPARSERCTXT"
-></A
->xmlNewParserCtxt ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
-><A
-HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> xmlNewParserCtxt           (void);</PRE
-></TD
-></TR
-></TABLE
-><P
->Allocate and initialize a new parser context.</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"
-><I
-CLASS="EMPHASIS"
->Returns</I
-> :</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->&nbsp;</TD
-></TR
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN9450"
-></A
-><H3
-><A
-NAME="XMLSWITCHENCODING"
-></A
->xmlSwitchEncoding ()</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->void        xmlSwitchEncoding               (<A
-HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
->xmlParserCtxtPtr</A
-> ctxt,
-                                             <A
-HREF="gnome-xml-encoding.html#XMLCHARENCODING"
->xmlCharEncoding</A
-> enc);</PRE
-></TD
-></TR
-></TABLE
-><P
->change the input functions when discovering the character encoding
-of a given entity.</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
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->&nbsp;</TD
-></TR
-><TR
-><TD
-WIDTH="20%"
-ALIGN="RIGHT"
-VALIGN="TOP"
-><TT
-CLASS="PARAMETER"
-><I
->enc</I
-></TT
->&nbsp;:</TD
-><TD
-WIDTH="80%"
-ALIGN="LEFT"
-VALIGN="TOP"
->&nbsp;</TD
-></TR
-></TABLE
-><P
-></P
-></DIV
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN9471"
+NAME="AEN12335"
 ></A
 ><H3
 ><A
@@ -2287,7 +2443,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -2304,7 +2460,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML entity pointer.</TD
 ></TR
 ></TABLE
 ><P
@@ -2314,7 +2470,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9493"
+NAME="AEN12357"
 ></A
 ><H3
 ><A
@@ -2374,7 +2530,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -2391,7 +2547,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an Entity pointer</TD
 ></TR
 ><TR
 ><TD
@@ -2406,7 +2562,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the new input stream or NULL</TD
 ></TR
 ></TABLE
 ><P
@@ -2416,7 +2572,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9519"
+NAME="AEN12383"
 ></A
 ><H3
 ><A
@@ -2474,7 +2630,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -2491,7 +2647,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser input fragment (entity, XML fragment ...).</TD
 ></TR
 ></TABLE
 ><P
@@ -2501,7 +2657,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9540"
+NAME="AEN12404"
 ></A
 ><H3
 ><A
@@ -2558,7 +2714,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -2573,7 +2729,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the current xmlChar in the parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -2583,7 +2739,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9561"
+NAME="AEN12425"
 ></A
 ><H3
 ><A
@@ -2636,7 +2792,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an xmlParserInputPtr</TD
 ></TR
 ></TABLE
 ><P
@@ -2646,7 +2802,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9577"
+NAME="AEN12441"
 ></A
 ><H3
 ><A
@@ -2703,7 +2859,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -2720,7 +2876,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  the filename to use as entity</TD
 ></TR
 ><TR
 ><TD
@@ -2735,7 +2891,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the new input stream or NULL in case of error</TD
 ></TR
 ></TABLE
 ><P
@@ -2745,7 +2901,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9602"
+NAME="AEN12466"
 ></A
 ><H3
 ><A
@@ -2815,7 +2971,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -2832,7 +2988,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -2849,7 +3005,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  a xmlChar ** </TD
 ></TR
 ><TR
 ><TD
@@ -2864,7 +3020,8 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the local part, and prefix is updated
+to get the Prefix if any.</TD
 ></TR
 ></TABLE
 ><P
@@ -2874,7 +3031,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9636"
+NAME="AEN12500"
 ></A
 ><H3
 ><A
@@ -2935,7 +3092,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -2950,7 +3107,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the namespace name or NULL</TD
 ></TR
 ></TABLE
 ><P
@@ -2960,7 +3117,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9659"
+NAME="AEN12523"
 ></A
 ><H3
 ><A
@@ -3026,7 +3183,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -3043,7 +3200,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  a xmlChar ** </TD
 ></TR
 ><TR
 ><TD
@@ -3058,7 +3215,8 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the local part, and prefix is updated
+to get the Prefix if any.</TD
 ></TR
 ></TABLE
 ><P
@@ -3068,7 +3226,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9688"
+NAME="AEN12552"
 ></A
 ><H3
 ><A
@@ -3128,7 +3286,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -3143,7 +3301,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the namespace name</TD
 ></TR
 ></TABLE
 ><P
@@ -3153,7 +3311,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9711"
+NAME="AEN12575"
 ></A
 ><H3
 ><A
@@ -3210,7 +3368,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -3225,7 +3383,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the string parser or NULL.</TD
 ></TR
 ></TABLE
 ><P
@@ -3235,7 +3393,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9732"
+NAME="AEN12596"
 ></A
 ><H3
 ><A
@@ -3263,7 +3421,7 @@
 ><P
 >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 ot was declared on the root of the Tree:-(</P
+if it was declared on the root of the Tree:-(</P
 ><P
 >To be removed at next drop of binary compatibility</P
 ><P
@@ -3294,7 +3452,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -3304,7 +3462,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9750"
+NAME="AEN12614"
 ></A
 ><H3
 ><A
@@ -3368,7 +3526,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -3383,7 +3541,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the Name parsed or NULL</TD
 ></TR
 ></TABLE
 ><P
@@ -3393,7 +3551,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9774"
+NAME="AEN12638"
 ></A
 ><H3
 ><A
@@ -3456,7 +3614,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -3471,7 +3629,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the Name parsed or NULL</TD
 ></TR
 ></TABLE
 ><P
@@ -3481,7 +3639,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9798"
+NAME="AEN12662"
 ></A
 ><H3
 ><A
@@ -3541,7 +3699,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -3556,7 +3714,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the Nmtoken parsed or NULL</TD
 ></TR
 ></TABLE
 ><P
@@ -3566,7 +3724,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9821"
+NAME="AEN12685"
 ></A
 ><H3
 ><A
@@ -3629,7 +3787,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -3646,7 +3804,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  if non-NULL store a copy of the original entity value</TD
 ></TR
 ><TR
 ><TD
@@ -3661,7 +3819,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the EntityValue parsed with reference substitued or NULL</TD
 ></TR
 ></TABLE
 ><P
@@ -3671,7 +3829,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9848"
+NAME="AEN12712"
 ></A
 ><H3
 ><A
@@ -3705,6 +3863,58 @@
 >[10] AttValue ::= '"' ([^&lt;&amp;"] | Reference)* '"' |
 "'" ([^&lt;&amp;'] | Reference)* "'"</P
 ><P
+>3.3.3 Attribute-Value Normalization:
+Before the value of an attribute is passed to the application or
+checked for validity, the XML processor must normalize it as follows: 
+- a character reference is processed by appending the referenced
+character to the attribute value
+- an entity reference is processed by recursively processing the
+replacement text of the entity 
+- a whitespace character (<GTKDOCLINK
+HREF="X20"
+>x20</GTKDOCLINK
+>, <GTKDOCLINK
+HREF="XD"
+>xD</GTKDOCLINK
+>, <GTKDOCLINK
+HREF="XA"
+>xA</GTKDOCLINK
+>, <GTKDOCLINK
+HREF="X9"
+>x9</GTKDOCLINK
+>) is processed by
+appending <GTKDOCLINK
+HREF="X20"
+>x20</GTKDOCLINK
+> to the normalized value, except that only a single
+<GTKDOCLINK
+HREF="X20"
+>x20</GTKDOCLINK
+> is appended for a "<GTKDOCLINK
+HREF="XD"
+>xD</GTKDOCLINK
+><GTKDOCLINK
+HREF="XA"
+>xA</GTKDOCLINK
+>" sequence that is part of an external
+parsed entity or the literal entity value of an internal parsed entity 
+- other characters 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 attribute value by discarding any leading and
+trailing space (<GTKDOCLINK
+HREF="X20"
+>x20</GTKDOCLINK
+>) characters, and by replacing sequences of space
+(<GTKDOCLINK
+HREF="X20"
+>x20</GTKDOCLINK
+>) characters by a single space (<GTKDOCLINK
+HREF="X20"
+>x20</GTKDOCLINK
+>) character.  
+All attributes for which no declaration has been read should be treated
+by a non-validating parser as if declared CDATA.</P
+><P
 ></P
 ><DIV
 CLASS="INFORMALTABLE"
@@ -3732,7 +3942,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -3747,7 +3957,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the AttValue parsed or NULL. The value has to be freed by the caller.</TD
 ></TR
 ></TABLE
 ><P
@@ -3757,7 +3967,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9870"
+NAME="AEN12746"
 ></A
 ><H3
 ><A
@@ -3815,7 +4025,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -3830,7 +4040,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the SystemLiteral parsed or NULL</TD
 ></TR
 ></TABLE
 ><P
@@ -3840,7 +4050,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9892"
+NAME="AEN12768"
 ></A
 ><H3
 ><A
@@ -3898,7 +4108,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -3913,7 +4123,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the PubidLiteral parsed or NULL.</TD
 ></TR
 ></TABLE
 ><P
@@ -3923,7 +4133,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9914"
+NAME="AEN12790"
 ></A
 ><H3
 ><A
@@ -3951,6 +4161,11 @@
 >parse a CharData section.
 if we are within a CDATA section ']]&gt;' marks an end of section.</P
 ><P
+>The right angle bracket (&gt;) may be represented using the string "&amp;gt;",
+and must, for compatibility, be escaped using "&amp;gt;" or a character
+reference when it appears in the string "]]&gt;" in content, when that
+string is not marking the end of a CDATA section. </P
+><P
 >[14] CharData ::= [^&lt;&amp;]* - ([^&lt;&amp;]* ']]&gt;' [^&lt;&amp;]*)</P
 ><P
 ></P
@@ -3980,7 +4195,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -3997,7 +4212,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  int indicating whether we are within a CDATA section</TD
 ></TR
 ></TABLE
 ><P
@@ -4007,7 +4222,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9935"
+NAME="AEN12812"
 ></A
 ><H3
 ><A
@@ -4076,7 +4291,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -4093,7 +4308,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  a xmlChar** receiving PubidLiteral</TD
 ></TR
 ><TR
 ><TD
@@ -4110,7 +4325,8 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+> indicate whether we should restrict parsing to only
+production [75], see NOTE below</TD
 ></TR
 ><TR
 ><TD
@@ -4125,7 +4341,9 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</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
 ></TABLE
 ><P
@@ -4135,7 +4353,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9968"
+NAME="AEN12845"
 ></A
 ><H3
 ><A
@@ -4192,7 +4410,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -4202,7 +4420,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9985"
+NAME="AEN12862"
 ></A
 ><H3
 ><A
@@ -4260,7 +4478,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -4275,7 +4493,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the PITarget name or NULL</TD
 ></TR
 ></TABLE
 ><P
@@ -4285,7 +4503,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10007"
+NAME="AEN12884"
 ></A
 ><H3
 ><A
@@ -4342,7 +4560,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -4352,7 +4570,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10025"
+NAME="AEN12902"
 ></A
 ><H3
 ><A
@@ -4417,7 +4635,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -4427,7 +4645,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10045"
+NAME="AEN12922"
 ></A
 ><H3
 ><A
@@ -4495,7 +4713,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -4505,7 +4723,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10068"
+NAME="AEN12945"
 ></A
 ><H3
 ><A
@@ -4601,7 +4819,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -4618,7 +4836,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  Receive a possible fixed default value for the attribute</TD
 ></TR
 ><TR
 ><TD
@@ -4633,7 +4851,8 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+> XML_ATTRIBUTE_NONE, XML_ATTRIBUTE_REQUIRED, XML_ATTRIBUTE_IMPLIED
+or XML_ATTRIBUTE_FIXED. </TD
 ></TR
 ></TABLE
 ><P
@@ -4643,7 +4862,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10105"
+NAME="AEN12982"
 ></A
 ><H3
 ><A
@@ -4707,7 +4926,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -4722,7 +4941,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+> the notation attribute tree built while parsing</TD
 ></TR
 ></TABLE
 ><P
@@ -4732,7 +4951,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10129"
+NAME="AEN13006"
 ></A
 ><H3
 ><A
@@ -4794,7 +5013,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -4809,7 +5028,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+> the enumeration attribute tree built while parsing</TD
 ></TR
 ></TABLE
 ><P
@@ -4819,7 +5038,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10152"
+NAME="AEN13029"
 ></A
 ><H3
 ><A
@@ -4880,7 +5099,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -4897,7 +5116,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  the enumeration tree built while parsing</TD
 ></TR
 ><TR
 ><TD
@@ -4912,7 +5131,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+> XML_ATTRIBUTE_ENUMERATION or XML_ATTRIBUTE_NOTATION</TD
 ></TR
 ></TABLE
 ><P
@@ -4922,7 +5141,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10179"
+NAME="AEN13056"
 ></A
 ><H3
 ><A
@@ -4984,13 +5203,13 @@
 ><P
 >[ VC: IDREF ]
 Values of type IDREF must match the Name production, and values
-of type IDREFS must match Names; TODO each IDREF Name must match the value
+of type IDREFS must match Names; each IDREF Name must match the value
 of an ID attribute on some element in the XML document; i.e. IDREF
 values must match the value of some ID attribute.</P
 ><P
 >[ VC: Entity Name ]
 Values of type ENTITY must match the Name production, values
-of type ENTITIES must match Names; TODO each Entity Name must match the
+of type ENTITIES must match Names; each Entity Name must match the
 name of an unparsed entity declared in the DTD.  </P
 ><P
 >[ VC: Name Token ]
@@ -5024,7 +5243,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -5041,7 +5260,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  the enumeration tree built while parsing</TD
 ></TR
 ><TR
 ><TD
@@ -5056,7 +5275,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the attribute type</TD
 ></TR
 ></TABLE
 ><P
@@ -5066,7 +5285,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10217"
+NAME="AEN13094"
 ></A
 ><H3
 ><A
@@ -5123,7 +5342,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -5133,7 +5352,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10235"
+NAME="AEN13112"
 ></A
 ><H3
 ><A
@@ -5206,7 +5425,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -5221,7 +5440,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+> the list of the xmlElementContentPtr describing the element choices</TD
 ></TR
 ></TABLE
 ><P
@@ -5231,7 +5450,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10261"
+NAME="AEN13138"
 ></A
 ><H3
 ><A
@@ -5308,7 +5527,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -5323,7 +5542,8 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+> the tree of xmlElementContentPtr describing the element 
+hierarchy.</TD
 ></TR
 ></TABLE
 ><P
@@ -5333,7 +5553,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10287"
+NAME="AEN13164"
 ></A
 ><H3
 ><A
@@ -5397,7 +5617,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -5414,7 +5634,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  the name of the element being defined.</TD
 ></TR
 ><TR
 ><TD
@@ -5431,7 +5651,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  the Element Content pointer will be stored here if any</TD
 ></TR
 ><TR
 ><TD
@@ -5446,7 +5666,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+> the type of element content XML_ELEMENT_TYPE_xxx</TD
 ></TR
 ></TABLE
 ><P
@@ -5456,7 +5676,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10318"
+NAME="AEN13195"
 ></A
 ><H3
 ><A
@@ -5514,7 +5734,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -5529,7 +5749,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the type of the element, or -1 in case of error</TD
 ></TR
 ></TABLE
 ><P
@@ -5539,7 +5759,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10340"
+NAME="AEN13217"
 ></A
 ><H3
 ><A
@@ -5608,7 +5828,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -5618,7 +5838,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10359"
+NAME="AEN13236"
 ></A
 ><H3
 ><A
@@ -5681,7 +5901,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -5696,7 +5916,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the value parsed (as an int), 0 in case of error</TD
 ></TR
 ></TABLE
 ><P
@@ -5706,7 +5926,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10382"
+NAME="AEN13259"
 ></A
 ><H3
 ><A
@@ -5782,7 +6002,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -5797,7 +6017,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the xmlEntityPtr if found, or NULL otherwise.</TD
 ></TR
 ></TABLE
 ><P
@@ -5807,7 +6027,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10406"
+NAME="AEN13283"
 ></A
 ><H3
 ><A
@@ -5871,7 +6091,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -5881,7 +6101,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10425"
+NAME="AEN13302"
 ></A
 ><H3
 ><A
@@ -5957,7 +6177,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -5967,7 +6187,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10446"
+NAME="AEN13323"
 ></A
 ><H3
 ><A
@@ -6027,7 +6247,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -6037,7 +6257,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10464"
+NAME="AEN13341"
 ></A
 ><H3
 ><A
@@ -6120,7 +6340,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -6137,7 +6357,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  a xmlChar ** used to store the value of the attribute</TD
 ></TR
 ><TR
 ><TD
@@ -6152,7 +6372,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the attribute name, and the value in *value.</TD
 ></TR
 ></TABLE
 ><P
@@ -6162,7 +6382,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10498"
+NAME="AEN13375"
 ></A
 ><H3
 ><A
@@ -6237,7 +6457,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -6252,7 +6472,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the element name parsed</TD
 ></TR
 ></TABLE
 ><P
@@ -6262,7 +6482,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10526"
+NAME="AEN13403"
 ></A
 ><H3
 ><A
@@ -6321,7 +6541,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -6331,7 +6551,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10545"
+NAME="AEN13422"
 ></A
 ><H3
 ><A
@@ -6392,7 +6612,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -6402,7 +6622,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10565"
+NAME="AEN13442"
 ></A
 ><H3
 ><A
@@ -6457,7 +6677,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -6467,7 +6687,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10582"
+NAME="AEN13459"
 ></A
 ><H3
 ><A
@@ -6539,7 +6759,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -6549,7 +6769,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10601"
+NAME="AEN13478"
 ></A
 ><H3
 ><A
@@ -6607,7 +6827,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -6622,7 +6842,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the string giving the XML version number, or NULL</TD
 ></TR
 ></TABLE
 ><P
@@ -6632,7 +6852,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10623"
+NAME="AEN13500"
 ></A
 ><H3
 ><A
@@ -6692,7 +6912,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -6707,7 +6927,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the version string, e.g. "1.0"</TD
 ></TR
 ></TABLE
 ><P
@@ -6717,7 +6937,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10646"
+NAME="AEN13523"
 ></A
 ><H3
 ><A
@@ -6775,7 +6995,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -6790,7 +7010,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the encoding name value or NULL</TD
 ></TR
 ></TABLE
 ><P
@@ -6800,7 +7020,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10668"
+NAME="AEN13545"
 ></A
 ><H3
 ><A
@@ -6860,7 +7080,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -6875,7 +7095,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>the encoding value or NULL</TD
 ></TR
 ></TABLE
 ><P
@@ -6885,7 +7105,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10691"
+NAME="AEN13568"
 ></A
 ><H3
 ><A
@@ -6955,7 +7175,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -6970,7 +7190,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>1 if standalone, 0 otherwise</TD
 ></TR
 ></TABLE
 ><P
@@ -6980,7 +7200,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10713"
+NAME="AEN13590"
 ></A
 ><H3
 ><A
@@ -7035,7 +7255,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -7045,7 +7265,74 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10730"
+NAME="AEN13607"
+></A
+><H3
+><A
+NAME="XMLPARSETEXTDECL"
+></A
+>xmlParseTextDecl ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>void        xmlParseTextDecl                (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt);</PRE
+></TD
+></TR
+></TABLE
+><P
+>parse an XML declaration header for external entities</P
+><P
+>[77] TextDecl ::= '&lt;?xml' VersionInfo? EncodingDecl S? '?&gt;'</P
+><P
+>Question: Seems that EncodingDecl is mandatory ? Is that a typo ?</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
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  an XML parser context</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN13625"
 ></A
 ><H3
 ><A
@@ -7100,7 +7387,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ></TABLE
 ><P
@@ -7110,7 +7397,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10747"
+NAME="AEN13642"
 ></A
 ><H3
 ><A
@@ -7175,7 +7462,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an XML parser context</TD
 ></TR
 ><TR
 ><TD
@@ -7192,7 +7479,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+> the external identifier</TD
 ></TR
 ><TR
 ><TD
@@ -7209,7 +7496,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+> the system identifier (or URL)</TD
 ></TR
 ></TABLE
 ><P
@@ -7219,7 +7506,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10775"
+NAME="AEN13670"
 ></A
 ><H3
 ><A
@@ -7235,7 +7522,7 @@
 ><TD
 ><PRE
 CLASS="PROGRAMLISTING"
->#define     XML_SUBSTITUTE_NONE</PRE
+>#define XML_SUBSTITUTE_NONE	0</PRE
 ></TD
 ></TR
 ></TABLE
@@ -7245,7 +7532,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10780"
+NAME="AEN13675"
 ></A
 ><H3
 ><A
@@ -7261,7 +7548,7 @@
 ><TD
 ><PRE
 CLASS="PROGRAMLISTING"
->#define     XML_SUBSTITUTE_REF</PRE
+>#define XML_SUBSTITUTE_REF	1</PRE
 ></TD
 ></TR
 ></TABLE
@@ -7271,7 +7558,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10785"
+NAME="AEN13680"
 ></A
 ><H3
 ><A
@@ -7287,7 +7574,7 @@
 ><TD
 ><PRE
 CLASS="PROGRAMLISTING"
->#define     XML_SUBSTITUTE_PEREF</PRE
+>#define XML_SUBSTITUTE_PEREF	2</PRE
 ></TD
 ></TR
 ></TABLE
@@ -7297,7 +7584,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10790"
+NAME="AEN13685"
 ></A
 ><H3
 ><A
@@ -7313,7 +7600,7 @@
 ><TD
 ><PRE
 CLASS="PROGRAMLISTING"
->#define     XML_SUBSTITUTE_BOTH</PRE
+>#define XML_SUBSTITUTE_BOTH 	3</PRE
 ></TD
 ></TR
 ></TABLE
@@ -7323,7 +7610,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10795"
+NAME="AEN13690"
 ></A
 ><H3
 ><A
@@ -7395,7 +7682,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  the parser context</TD
 ></TR
 ><TR
 ><TD
@@ -7412,7 +7699,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  the len to decode (in bytes !), -1 for no size limit</TD
 ></TR
 ><TR
 ><TD
@@ -7429,7 +7716,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  combination of XML_SUBSTITUTE_REF and XML_SUBSTITUTE_PEREF</TD
 ></TR
 ><TR
 ><TD
@@ -7446,7 +7733,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an end marker xmlChar, 0 if none</TD
 ></TR
 ><TR
 ><TD
@@ -7463,7 +7750,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an end marker xmlChar, 0 if none</TD
 ></TR
 ><TR
 ><TD
@@ -7480,7 +7767,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>  an end marker xmlChar, 0 if none</TD
 ></TR
 ><TR
 ><TD
@@ -7495,7 +7782,8 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->&nbsp;</TD
+>A newly allocated string with the substitution done. The caller
+must deallocate it !</TD
 ></TR
 ></TABLE
 ><P
@@ -7505,7 +7793,193 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10840"
+NAME="AEN13735"
+></A
+><H3
+><A
+NAME="XMLSTRINGDECODEENTITIES"
+></A
+>xmlStringDecodeEntities ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+><A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+>*    xmlStringDecodeEntities         (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt,
+                                             const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *str,
+                                             int what,
+                                             <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> end,
+                                             <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> end2,
+                                             <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> end3);</PRE
+></TD
+></TR
+></TABLE
+><P
+>[67] Reference ::= EntityRef | CharRef</P
+><P
+>[69] PEReference ::= '%' Name ';'</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
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the parser context</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>str</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the input string</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>what</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  combination of XML_SUBSTITUTE_REF and XML_SUBSTITUTE_PEREF</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>end</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  an end marker xmlChar, 0 if none</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>end2</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  an end marker xmlChar, 0 if none</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>end3</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  an end marker xmlChar, 0 if none</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>A newly allocated string with the substitution done. The caller
+must deallocate it !</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN13781"
 ></A
 ><H3
 ><A
@@ -7602,7 +8076,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10864"
+NAME="AEN13805"
 ></A
 ><H3
 ><A
@@ -7681,7 +8155,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10884"
+NAME="AEN13825"
 ></A
 ><H3
 ><A
@@ -7778,7 +8252,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN10908"
+NAME="AEN13849"
 ></A
 ><H3
 ><A