Big changes, seems that 1.2.0 wasn't commited, here is 1.3.0, Daniel
diff --git a/ChangeLog b/ChangeLog
index 050af7e..61c1263 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+Tue Jun 22 23:46:32 CEST 1999 Daniel Veillard <Daniel.Veillard@w3.org>
+
+	* released 1.3.0 with xmlEncodeEntities restoring old behaviour
+	  and xmlEncodeEntitiesReentrant with the correct one :-\
+
+Mon Jun 21 14:07:53 CEST 1999 Daniel Veillard <Daniel.Veillard@w3.org>
+
+	* commit of my internal XML base changes, quite a lot of
+	  changes, cleanups, better entities support, framework for
+	  new I/O and charset detection and handling
+	* Fixed the configure/Makefile stuff to generate shared libs
+	  with the proper version info, so we jumped on rev from
+	  0.0.0 to 1.2.0 ! The binary interfaces have been broken,
+	  xmlEncodeEntities() result need to be freed now, and a string
+	  xmlParserVersion provide the current library version.
+
 Tue Jun 15 14:24:19 1999  Raph Levien  <raph@acm.org>
 
 	* parser.c: fixed a buffer overrun for when you have a very long
diff --git a/Makefile.am b/Makefile.am
index 75e7534..ed6baaa 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -2,7 +2,9 @@
 
 SUBDIRS = doc
 
-INCLUDES = -I@srcdir@ @CORBA_CFLAGS@
+INCLUDES = -I@srcdir@ @CORBA_CFLAGS@ $(VERSION_FLAGS)
+
+VERSION_FLAGS = -DLIBXML_VERSION=\"@LIBXML_VERSION@\"
 
 noinst_PROGRAMS=tester testSAX
 
@@ -10,6 +12,8 @@
 
 lib_LTLIBRARIES = libxml.la
 
+libxml_la_LDFLAGS = -version-info @LIBXML_VERSION_INFO@
+
 libxml_la_SOURCES = \
 		SAX.c \
 		entities.c \
@@ -29,6 +33,7 @@
 		debugXML.h \
 		xml-error.h \
 		tree.h \
+		xmlIO.h \
 		valid.h
 
 DEPS = $(top_builddir)/libxml.la
diff --git a/SAX.c b/SAX.c
index bd0caf5..d1897a4 100644
--- a/SAX.c
+++ b/SAX.c
@@ -808,10 +808,13 @@
 comment(void *ctx, const CHAR *value)
 {
     xmlParserCtxtPtr ctxt = (xmlParserCtxtPtr) ctx;
+    xmlNodePtr ret;
+
 #ifdef DEBUG_SAX
     fprintf(stderr, "SAX.comment(%s)\n", value);
 #endif
-    xmlNewDocComment(ctxt->myDoc, value);
+    ret = xmlNewDocComment(ctxt->myDoc, value);
+    xmlAddChild(ctxt->node, ret);
 }
 
 xmlSAXHandler xmlDefaultSAXHandler = {
diff --git a/configure.in b/configure.in
index 59e2d58..67eeaf0 100644
--- a/configure.in
+++ b/configure.in
@@ -2,7 +2,22 @@
 AC_PREREQ(2.2)
 AC_INIT(entities.h)
 AM_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE(libxml, 1.1.0)
+
+LIBXML_MAJOR_VERSION=1
+LIBXML_MINOR_VERSION=3
+LIBXML_MICRO_VERSION=0
+LIBXML_VERSION=$LIBXML_MAJOR_VERSION.$LIBXML_MINOR_VERSION.$LIBXML_MICRO_VERSION
+LIBXML_VERSION_INFO=`expr $LIBXML_MAJOR_VERSION + $LIBXML_MINOR_VERSION`:$LIBXML_MICRO_VERSION:$LIBXML_MINOR_VERSION
+
+AC_SUBST(LIBXML_MAJOR_VERSION)
+AC_SUBST(LIBXML_MINOR_VERSION)
+AC_SUBST(LIBXML_MICRO_VERSION)
+AC_SUBST(LIBXML_VERSION)
+AC_SUBST(LIBXML_VERSION_INFO)
+
+VERSION=$LIBXML_VERSION
+
+AM_INIT_AUTOMAKE(libxml, $VERSION)
 
 AC_ARG_WITH(html-dir, [  --with-html-dir=PATH path to installed docs ])
 
diff --git a/doc/html/book1.html b/doc/html/book1.html
index d3b9d00..8f8a608 100644
--- a/doc/html/book1.html
+++ b/doc/html/book1.html
@@ -15,13 +15,30 @@
 CLASS="BOOK"
 ><DIV
 CLASS="TITLEPAGE"
-><H1
+><TABLE
+WIDTH="100%"
+BORDER="0"
+BGCOLOR="#000000"
+CELLPADDING="1"
+CELLSPACING="0"
+><TR
+><TH
+ALIGN="center"
+VALIGN="center"
+><FONT
+COLOR="#FFFFFF"
+SIZE="7"
+><P
 CLASS="TITLE"
 ><A
 NAME="AEN2"
 >Gnome XML Library Reference Manual</A
-></H1
-><HR></DIV
+></P
+></FONT
+></TH
+></TR
+></TABLE
+></DIV
 ><DIV
 CLASS="TOC"
 ><DL
@@ -30,7 +47,7 @@
 >Table of Contents</B
 ></DT
 ><DT
->1. <A
+><A
 HREF="libxml.html"
 >Gnome XML Library</A
 ></DT
@@ -40,32 +57,32 @@
 ><A
 HREF="gnome-xml-parser.html"
 >parser</A
-> &#8212; one line description goes here.</DT
+> &#8212; </DT
 ><DT
 ><A
 HREF="gnome-xml-tree.html"
 >tree</A
-> &#8212; one line description goes here.</DT
+> &#8212; </DT
 ><DT
 ><A
 HREF="gnome-xml-entities.html"
 >entities</A
-> &#8212; one line description goes here.</DT
+> &#8212; </DT
 ><DT
 ><A
 HREF="gnome-xml-valid.html"
 >valid</A
-> &#8212; one line description goes here.</DT
+> &#8212; </DT
 ><DT
 ><A
 HREF="gnome-xml-xml-error.html"
 >xml-error</A
-> &#8212; one line description goes here.</DT
+> &#8212; </DT
 ><DT
 ><A
 HREF="gnome-xml-parserinternals.html"
 >parserInternals</A
-> &#8212; one line description goes here.</DT
+> &#8212; </DT
 ></DL
 ></DD
 ></DL
@@ -73,49 +90,70 @@
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
-><HR
-ALIGN="LEFT"
-WIDTH="100%"><TABLE
+><BR><BR><TABLE
 WIDTH="100%"
 BORDER="0"
-CELLPADDING="0"
+BGCOLOR="#000000"
+CELLPADDING="1"
 CELLSPACING="0"
 ><TR
 ><TD
-WIDTH="33%"
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="left"
-VALIGN="top"
 >&nbsp;</TD
 ><TD
-WIDTH="34%"
+WIDTH="25%"
+BGCOLOR="#0000C0"
 ALIGN="center"
-VALIGN="top"
->&nbsp;</TD
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&nbsp;</B
+></FONT
+></TD
 ><TD
-WIDTH="33%"
+WIDTH="25%"
+BGCOLOR="#00C000"
+ALIGN="center"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&nbsp;</B
+></FONT
+></TD
+><TD
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="right"
-VALIGN="top"
 ><A
 HREF="libxml.html"
->Next</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Next Page &#62;&#62;&#62;</B
+></FONT
+></A
 ></TD
 ></TR
 ><TR
 ><TD
-WIDTH="33%"
+COLSPAN="2"
 ALIGN="left"
-VALIGN="top"
 >&nbsp;</TD
 ><TD
-WIDTH="34%"
-ALIGN="center"
-VALIGN="top"
->&nbsp;</TD
-><TD
-WIDTH="33%"
+COLSPAN="2"
 ALIGN="right"
-VALIGN="top"
->Gnome XML Library</TD
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Gnome XML Library</B
+></FONT
+></TD
 ></TR
 ></TABLE
 ></DIV
diff --git a/doc/html/gnome-xml-entities.html b/doc/html/gnome-xml-entities.html
index 5f326a1..a8dc09c 100644
--- a/doc/html/gnome-xml-entities.html
+++ b/doc/html/gnome-xml-entities.html
@@ -25,61 +25,111 @@
 ><TABLE
 WIDTH="100%"
 BORDER="0"
-CELLPADDING="0"
+BGCOLOR="#000000"
+CELLPADDING="1"
 CELLSPACING="0"
 ><TR
 ><TH
-COLSPAN="3"
+COLSPAN="4"
 ALIGN="center"
->Gnome XML Library Reference Manual</TH
+><FONT
+COLOR="#FFFFFF"
+SIZE="5"
+>Gnome XML Library Reference Manual</FONT
+></TH
 ></TR
 ><TR
 ><TD
-WIDTH="10%"
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="left"
-VALIGN="bottom"
 ><A
 HREF="gnome-xml-tree.html"
->Prev</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&#60;&#60;&#60; Previous Page</B
+></FONT
+></A
 ></TD
 ><TD
-WIDTH="80%"
+WIDTH="25%"
+BGCOLOR="#0000C0"
 ALIGN="center"
-VALIGN="bottom"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="book1.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Home</B
+></FONT
+></A
+></B
+></FONT
 ></TD
 ><TD
-WIDTH="10%"
+WIDTH="25%"
+BGCOLOR="#00C000"
+ALIGN="center"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="libxml.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Up</B
+></FONT
+></A
+></B
+></FONT
+></TD
+><TD
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="right"
-VALIGN="bottom"
 ><A
 HREF="gnome-xml-valid.html"
->Next</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Next Page &#62;&#62;&#62;</B
+></FONT
+></A
 ></TD
 ></TR
 ></TABLE
-><HR
-ALIGN="LEFT"
-WIDTH="100%"></DIV
+></DIV
 ><H1
 >entities</H1
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3492"
+NAME="AEN3522"
 ></A
 ><H2
 >Name</H2
->entities &#8212; one line description goes here.</DIV
+>entities &#8212; </DIV
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3495"
+NAME="AEN3525"
 ></A
 ><H2
 >Synopsis</H2
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -115,7 +165,7 @@
 typedef     <A
 HREF="gnome-xml-entities.html#XMLENTITYPTR"
 >xmlEntityPtr</A
->
+>;
 #define     <A
 HREF="gnome-xml-entities.html#XML-MIN-ENTITIES-TABLE"
 >XML_MIN_ENTITIES_TABLE</A
@@ -123,7 +173,7 @@
 typedef     <A
 HREF="gnome-xml-entities.html#XMLENTITIESTABLEPTR"
 >xmlEntitiesTablePtr</A
->
+>;
 void        <A
 HREF="gnome-xml-entities.html#XMLADDDOCENTITY"
 >xmlAddDocEntity</A
@@ -266,7 +316,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3544"
+NAME="AEN3574"
 ></A
 ><H2
 >Description</H2
@@ -276,14 +326,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3547"
+NAME="AEN3577"
 ></A
 ><H2
 >Details</H2
-><HR><DIV
+><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3549"
+NAME="AEN3579"
 ></A
 ><H3
 ><A
@@ -292,7 +342,7 @@
 >XML_INTERNAL_GENERAL_ENTITY</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -309,7 +359,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3554"
+NAME="AEN3584"
 ></A
 ><H3
 ><A
@@ -318,7 +368,7 @@
 >XML_EXTERNAL_GENERAL_PARSED_ENTITY</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -335,7 +385,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3559"
+NAME="AEN3589"
 ></A
 ><H3
 ><A
@@ -344,7 +394,7 @@
 >XML_EXTERNAL_GENERAL_UNPARSED_ENTITY</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -361,7 +411,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3564"
+NAME="AEN3594"
 ></A
 ><H3
 ><A
@@ -370,7 +420,7 @@
 >XML_INTERNAL_PARAMETER_ENTITY</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -387,7 +437,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3569"
+NAME="AEN3599"
 ></A
 ><H3
 ><A
@@ -396,7 +446,7 @@
 >XML_EXTERNAL_PARAMETER_ENTITY</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -413,7 +463,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3574"
+NAME="AEN3604"
 ></A
 ><H3
 ><A
@@ -422,7 +472,7 @@
 >XML_INTERNAL_PREDEFINED_ENTITY</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -439,7 +489,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3579"
+NAME="AEN3609"
 ></A
 ><H3
 ><A
@@ -448,7 +498,7 @@
 >xmlEntityPtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -465,7 +515,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3584"
+NAME="AEN3614"
 ></A
 ><H3
 ><A
@@ -474,7 +524,7 @@
 >XML_MIN_ENTITIES_TABLE</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -491,7 +541,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3589"
+NAME="AEN3619"
 ></A
 ><H3
 ><A
@@ -500,7 +550,7 @@
 >xmlEntitiesTablePtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -517,16 +567,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3594"
+NAME="AEN3624"
 ></A
 ><H3
 ><A
 NAME="XMLADDDOCENTITY"
 ></A
->xmlAddDocEntity()</H3
+>xmlAddDocEntity ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -568,7 +618,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -682,16 +732,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3634"
+NAME="AEN3664"
 ></A
 ><H3
 ><A
 NAME="XMLADDDTDENTITY"
 ></A
->xmlAddDtdEntity()</H3
+>xmlAddDtdEntity ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -733,7 +783,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -847,16 +897,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3674"
+NAME="AEN3704"
 ></A
 ><H3
 ><A
 NAME="XMLGETPREDEFINEDENTITY"
 ></A
->xmlGetPredefinedEntity()</H3
+>xmlGetPredefinedEntity ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -884,7 +934,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -928,16 +978,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3695"
+NAME="AEN3725"
 ></A
 ><H3
 ><A
 NAME="XMLGETDOCENTITY"
 ></A
->xmlGetDocEntity()</H3
+>xmlGetDocEntity ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -971,7 +1021,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1032,16 +1082,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3721"
+NAME="AEN3751"
 ></A
 ><H3
 ><A
 NAME="XMLGETDTDENTITY"
 ></A
->xmlGetDtdEntity()</H3
+>xmlGetDtdEntity ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1074,7 +1124,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1135,16 +1185,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3747"
+NAME="AEN3777"
 ></A
 ><H3
 ><A
 NAME="XMLENCODEENTITIES"
 ></A
->xmlEncodeEntities()</H3
+>xmlEncodeEntities ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1180,7 +1230,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1241,16 +1291,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3774"
+NAME="AEN3804"
 ></A
 ><H3
 ><A
 NAME="XMLCREATEENTITIESTABLE"
 ></A
->xmlCreateEntitiesTable()</H3
+>xmlCreateEntitiesTable ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1275,7 +1325,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1302,16 +1352,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3790"
+NAME="AEN3820"
 ></A
 ><H3
 ><A
 NAME="XMLCOPYENTITIESTABLE"
 ></A
->xmlCopyEntitiesTable()</H3
+>xmlCopyEntitiesTable ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1339,7 +1389,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1383,16 +1433,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3811"
+NAME="AEN3841"
 ></A
 ><H3
 ><A
 NAME="XMLFREEENTITIESTABLE"
 ></A
->xmlFreeEntitiesTable()</H3
+>xmlFreeEntitiesTable ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1417,7 +1467,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1446,16 +1496,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3827"
+NAME="AEN3857"
 ></A
 ><H3
 ><A
 NAME="XMLDUMPENTITIESTABLE"
 ></A
->xmlDumpEntitiesTable()</H3
+>xmlDumpEntitiesTable ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1484,7 +1534,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1530,58 +1580,103 @@
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
-><HR
-ALIGN="LEFT"
-WIDTH="100%"><TABLE
+><BR><BR><TABLE
 WIDTH="100%"
 BORDER="0"
-CELLPADDING="0"
+BGCOLOR="#000000"
+CELLPADDING="1"
 CELLSPACING="0"
 ><TR
 ><TD
-WIDTH="33%"
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="left"
-VALIGN="top"
 ><A
 HREF="gnome-xml-tree.html"
->Prev</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&#60;&#60;&#60; Previous Page</B
+></FONT
+></A
 ></TD
 ><TD
-WIDTH="34%"
+WIDTH="25%"
+BGCOLOR="#0000C0"
 ALIGN="center"
-VALIGN="top"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
 ><A
 HREF="book1.html"
->Home</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Home</B
+></FONT
+></A
+></B
+></FONT
 ></TD
 ><TD
-WIDTH="33%"
+WIDTH="25%"
+BGCOLOR="#00C000"
+ALIGN="center"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="libxml.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Up</B
+></FONT
+></A
+></B
+></FONT
+></TD
+><TD
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="right"
-VALIGN="top"
 ><A
 HREF="gnome-xml-valid.html"
->Next</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Next Page &#62;&#62;&#62;</B
+></FONT
+></A
 ></TD
 ></TR
 ><TR
 ><TD
-WIDTH="33%"
+COLSPAN="2"
 ALIGN="left"
-VALIGN="top"
->tree</TD
-><TD
-WIDTH="34%"
-ALIGN="center"
-VALIGN="top"
-><A
-HREF="libxml.html"
->Up</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>tree</B
+></FONT
 ></TD
 ><TD
-WIDTH="33%"
+COLSPAN="2"
 ALIGN="right"
-VALIGN="top"
->valid</TD
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>valid</B
+></FONT
+></TD
 ></TR
 ></TABLE
 ></DIV
diff --git a/doc/html/gnome-xml-parser.html b/doc/html/gnome-xml-parser.html
index 9424c0e..696b3fd 100644
--- a/doc/html/gnome-xml-parser.html
+++ b/doc/html/gnome-xml-parser.html
@@ -25,41 +25,91 @@
 ><TABLE
 WIDTH="100%"
 BORDER="0"
-CELLPADDING="0"
+BGCOLOR="#000000"
+CELLPADDING="1"
 CELLSPACING="0"
 ><TR
 ><TH
-COLSPAN="3"
+COLSPAN="4"
 ALIGN="center"
->Gnome XML Library Reference Manual</TH
+><FONT
+COLOR="#FFFFFF"
+SIZE="5"
+>Gnome XML Library Reference Manual</FONT
+></TH
 ></TR
 ><TR
 ><TD
-WIDTH="10%"
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="left"
-VALIGN="bottom"
 ><A
 HREF="libxml.html"
->Prev</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&#60;&#60;&#60; Previous Page</B
+></FONT
+></A
 ></TD
 ><TD
-WIDTH="80%"
+WIDTH="25%"
+BGCOLOR="#0000C0"
 ALIGN="center"
-VALIGN="bottom"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="book1.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Home</B
+></FONT
+></A
+></B
+></FONT
 ></TD
 ><TD
-WIDTH="10%"
+WIDTH="25%"
+BGCOLOR="#00C000"
+ALIGN="center"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="libxml.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Up</B
+></FONT
+></A
+></B
+></FONT
+></TD
+><TD
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="right"
-VALIGN="bottom"
 ><A
 HREF="gnome-xml-tree.html"
->Next</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Next Page &#62;&#62;&#62;</B
+></FONT
+></A
 ></TD
 ></TR
 ></TABLE
-><HR
-ALIGN="LEFT"
-WIDTH="100%"></DIV
+></DIV
 ><H1
 >parser</H1
 ><DIV
@@ -69,7 +119,7 @@
 ></A
 ><H2
 >Name</H2
->parser &#8212; one line description goes here.</DIV
+>parser &#8212; </DIV
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
@@ -79,7 +129,7 @@
 >Synopsis</H2
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -102,35 +152,35 @@
 typedef     <A
 HREF="gnome-xml-parser.html#XMLPARSERINPUTPTR"
 >xmlParserInputPtr</A
->
+>;
 typedef     <A
 HREF="gnome-xml-parser.html#XMLPARSERNODEINFO"
 >xmlParserNodeInfo</A
->
+>;
 typedef     <A
 HREF="gnome-xml-parser.html#XMLPARSERNODEINFOSEQ"
 >xmlParserNodeInfoSeq</A
->
+>;
 typedef     <A
 HREF="gnome-xml-parser.html#XMLPARSERNODEINFOSEQPTR"
 >xmlParserNodeInfoSeqPtr</A
->
+>;
 typedef     <A
 HREF="gnome-xml-parser.html#XMLPARSERCTXT"
 >xmlParserCtxt</A
->
+>;
 typedef     <A
 HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
 >xmlParserCtxtPtr</A
->
+>;
 typedef     <A
 HREF="gnome-xml-parser.html#XMLSAXLOCATOR"
 >xmlSAXLocator</A
->
+>;
 typedef     <A
 HREF="gnome-xml-parser.html#XMLSAXLOCATORPTR"
 >xmlSAXLocatorPtr</A
->
+>;
 <A
 HREF="gnome-xml-parser.html#XMLPARSERINPUTPTR"
 >xmlParserInputPtr</A
@@ -392,7 +442,15 @@
 typedef     <A
 HREF="gnome-xml-parser.html#XMLSAXHANDLERPTR"
 >xmlSAXHandlerPtr</A
->
+>;
+extern      xmlSAXLocator <A
+HREF="gnome-xml-parser.html#XMLDEFAULTSAXLOCATOR"
+>xmlDefaultSAXLocator</A
+>;
+extern      xmlSAXHandler <A
+HREF="gnome-xml-parser.html#XMLDEFAULTSAXHANDLER"
+>xmlDefaultSAXHandler</A
+>;
 <A
 HREF="gnome-xml-tree.html#CHAR"
 >CHAR</A
@@ -711,7 +769,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN176"
+NAME="AEN178"
 ></A
 ><H2
 >Description</H2
@@ -721,14 +779,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN179"
+NAME="AEN181"
 ></A
 ><H2
 >Details</H2
-><HR><DIV
+><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN181"
+NAME="AEN183"
 ></A
 ><H3
 ><A
@@ -737,7 +795,7 @@
 >XML_DEFAULT_VERSION</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -754,16 +812,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN186"
+NAME="AEN188"
 ></A
 ><H3
 ><A
 NAME="XMLPARSERINPUTDEALLOCATE"
 ></A
->xmlParserInputDeallocate()</H3
+>xmlParserInputDeallocate ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -786,7 +844,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -815,7 +873,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN201"
+NAME="AEN203"
 ></A
 ><H3
 ><A
@@ -824,7 +882,7 @@
 >xmlParserInputPtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -841,7 +899,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN206"
+NAME="AEN208"
 ></A
 ><H3
 ><A
@@ -850,7 +908,7 @@
 >xmlParserNodeInfo</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -867,7 +925,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN211"
+NAME="AEN213"
 ></A
 ><H3
 ><A
@@ -876,7 +934,7 @@
 >xmlParserNodeInfoSeq</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -893,7 +951,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN216"
+NAME="AEN218"
 ></A
 ><H3
 ><A
@@ -902,7 +960,7 @@
 >xmlParserNodeInfoSeqPtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -919,7 +977,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN221"
+NAME="AEN223"
 ></A
 ><H3
 ><A
@@ -928,7 +986,7 @@
 >xmlParserCtxt</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -945,7 +1003,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN226"
+NAME="AEN228"
 ></A
 ><H3
 ><A
@@ -954,7 +1012,7 @@
 >xmlParserCtxtPtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -971,7 +1029,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN231"
+NAME="AEN233"
 ></A
 ><H3
 ><A
@@ -980,7 +1038,7 @@
 >xmlSAXLocator</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -997,7 +1055,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN236"
+NAME="AEN238"
 ></A
 ><H3
 ><A
@@ -1006,7 +1064,7 @@
 >xmlSAXLocatorPtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1023,16 +1081,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN241"
+NAME="AEN243"
 ></A
 ><H3
 ><A
 NAME="RESOLVEENTITYSAXFUNC"
 ></A
->resolveEntitySAXFunc()</H3
+>resolveEntitySAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1063,7 +1121,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1141,16 +1199,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN270"
+NAME="AEN272"
 ></A
 ><H3
 ><A
 NAME="INTERNALSUBSETSAXFUNC"
 ></A
->internalSubsetSAXFunc()</H3
+>internalSubsetSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1182,7 +1240,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1262,16 +1320,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN299"
+NAME="AEN301"
 ></A
 ><H3
 ><A
 NAME="GETENTITYSAXFUNC"
 ></A
->getEntitySAXFunc()</H3
+>getEntitySAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1298,7 +1356,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1359,16 +1417,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN323"
+NAME="AEN325"
 ></A
 ><H3
 ><A
 NAME="ENTITYDECLSAXFUNC"
 ></A
->entityDeclSAXFunc()</H3
+>entityDeclSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1405,7 +1463,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1519,16 +1577,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN361"
+NAME="AEN363"
 ></A
 ><H3
 ><A
 NAME="NOTATIONDECLSAXFUNC"
 ></A
->notationDeclSAXFunc()</H3
+>notationDeclSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1560,7 +1618,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1640,16 +1698,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN390"
+NAME="AEN392"
 ></A
 ><H3
 ><A
 NAME="ATTRIBUTEDECLSAXFUNC"
 ></A
->attributeDeclSAXFunc()</H3
+>attributeDeclSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1687,7 +1745,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1818,16 +1876,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN432"
+NAME="AEN434"
 ></A
 ><H3
 ><A
 NAME="ELEMENTDECLSAXFUNC"
 ></A
->elementDeclSAXFunc()</H3
+>elementDeclSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1856,7 +1914,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1936,16 +1994,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN460"
+NAME="AEN462"
 ></A
 ><H3
 ><A
 NAME="UNPARSEDENTITYDECLSAXFUNC"
 ></A
->unparsedEntityDeclSAXFunc()</H3
+>unparsedEntityDeclSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1981,7 +2039,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2078,16 +2136,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN494"
+NAME="AEN496"
 ></A
 ><H3
 ><A
 NAME="SETDOCUMENTLOCATORSAXFUNC"
 ></A
->setDocumentLocatorSAXFunc()</H3
+>setDocumentLocatorSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2111,7 +2169,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2157,16 +2215,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN513"
+NAME="AEN515"
 ></A
 ><H3
 ><A
 NAME="STARTDOCUMENTSAXFUNC"
 ></A
->startDocumentSAXFunc()</H3
+>startDocumentSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2186,7 +2244,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2215,16 +2273,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN527"
+NAME="AEN529"
 ></A
 ><H3
 ><A
 NAME="ENDDOCUMENTSAXFUNC"
 ></A
->endDocumentSAXFunc()</H3
+>endDocumentSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2244,7 +2302,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2273,16 +2331,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN541"
+NAME="AEN543"
 ></A
 ><H3
 ><A
 NAME="STARTELEMENTSAXFUNC"
 ></A
->startElementSAXFunc()</H3
+>startElementSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2310,7 +2368,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2373,16 +2431,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN565"
+NAME="AEN567"
 ></A
 ><H3
 ><A
 NAME="ENDELEMENTSAXFUNC"
 ></A
->endElementSAXFunc()</H3
+>endElementSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2406,7 +2464,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2452,16 +2510,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN584"
+NAME="AEN586"
 ></A
 ><H3
 ><A
 NAME="ATTRIBUTESAXFUNC"
 ></A
->attributeSAXFunc()</H3
+>attributeSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2489,7 +2547,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2552,16 +2610,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN608"
+NAME="AEN610"
 ></A
 ><H3
 ><A
 NAME="REFERENCESAXFUNC"
 ></A
->referenceSAXFunc()</H3
+>referenceSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2585,7 +2643,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2631,16 +2689,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN627"
+NAME="AEN629"
 ></A
 ><H3
 ><A
 NAME="CHARACTERSSAXFUNC"
 ></A
->charactersSAXFunc()</H3
+>charactersSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2665,7 +2723,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2728,16 +2786,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN650"
+NAME="AEN652"
 ></A
 ><H3
 ><A
 NAME="IGNORABLEWHITESPACESAXFUNC"
 ></A
->ignorableWhitespaceSAXFunc()</H3
+>ignorableWhitespaceSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2762,7 +2820,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2825,16 +2883,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN673"
+NAME="AEN675"
 ></A
 ><H3
 ><A
 NAME="PROCESSINGINSTRUCTIONSAXFUNC"
 ></A
->processingInstructionSAXFunc()</H3
+>processingInstructionSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2862,7 +2920,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2925,16 +2983,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN697"
+NAME="AEN699"
 ></A
 ><H3
 ><A
 NAME="COMMENTSAXFUNC"
 ></A
->commentSAXFunc()</H3
+>commentSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2958,7 +3016,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3004,16 +3062,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN716"
+NAME="AEN718"
 ></A
 ><H3
 ><A
 NAME="WARNINGSAXFUNC"
 ></A
->warningSAXFunc()</H3
+>warningSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3035,7 +3093,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3098,16 +3156,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN738"
+NAME="AEN740"
 ></A
 ><H3
 ><A
 NAME="ERRORSAXFUNC"
 ></A
->errorSAXFunc()</H3
+>errorSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3129,7 +3187,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3192,16 +3250,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN760"
+NAME="AEN762"
 ></A
 ><H3
 ><A
 NAME="FATALERRORSAXFUNC"
 ></A
->fatalErrorSAXFunc()</H3
+>fatalErrorSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3223,7 +3281,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3286,16 +3344,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN782"
+NAME="AEN784"
 ></A
 ><H3
 ><A
 NAME="ISSTANDALONESAXFUNC"
 ></A
->isStandaloneSAXFunc()</H3
+>isStandaloneSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3315,7 +3373,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3359,16 +3417,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN800"
+NAME="AEN802"
 ></A
 ><H3
 ><A
 NAME="HASINTERNALSUBSETSAXFUNC"
 ></A
->hasInternalSubsetSAXFunc()</H3
+>hasInternalSubsetSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3388,7 +3446,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3432,16 +3490,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN818"
+NAME="AEN820"
 ></A
 ><H3
 ><A
 NAME="HASEXTERNALSUBSETSAXFUNC"
 ></A
->hasExternalSubsetSAXFunc()</H3
+>hasExternalSubsetSAXFunc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3461,7 +3519,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3505,7 +3563,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN836"
+NAME="AEN838"
 ></A
 ><H3
 ><A
@@ -3514,7 +3572,7 @@
 >xmlSAXHandlerPtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3531,16 +3589,68 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN841"
+NAME="AEN843"
+></A
+><H3
+><A
+NAME="XMLDEFAULTSAXLOCATOR"
+></A
+>xmlDefaultSAXLocator</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>extern xmlSAXLocator xmlDefaultSAXLocator;</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN848"
+></A
+><H3
+><A
+NAME="XMLDEFAULTSAXHANDLER"
+></A
+>xmlDefaultSAXHandler</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>extern xmlSAXHandler xmlDefaultSAXHandler;</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN853"
 ></A
 ><H3
 ><A
 NAME="XMLSTRDUP"
 ></A
->xmlStrdup()</H3
+>xmlStrdup ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3568,7 +3678,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3612,16 +3722,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN862"
+NAME="AEN874"
 ></A
 ><H3
 ><A
 NAME="XMLSTRNDUP"
 ></A
->xmlStrndup()</H3
+>xmlStrndup ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3650,7 +3760,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3716,16 +3826,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN888"
+NAME="AEN900"
 ></A
 ><H3
 ><A
 NAME="XMLSTRCHR"
 ></A
->xmlStrchr()</H3
+>xmlStrchr ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3757,7 +3867,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3818,16 +3928,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN914"
+NAME="AEN926"
 ></A
 ><H3
 ><A
 NAME="XMLSTRCMP"
 ></A
->xmlStrcmp()</H3
+>xmlStrcmp ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3856,7 +3966,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3917,16 +4027,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN939"
+NAME="AEN951"
 ></A
 ><H3
 ><A
 NAME="XMLSTRNCMP"
 ></A
->xmlStrncmp()</H3
+>xmlStrncmp ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3956,7 +4066,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4034,16 +4144,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN968"
+NAME="AEN980"
 ></A
 ><H3
 ><A
 NAME="XMLSTRLEN"
 ></A
->xmlStrlen()</H3
+>xmlStrlen ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4068,7 +4178,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4112,16 +4222,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN988"
+NAME="AEN1000"
 ></A
 ><H3
 ><A
 NAME="XMLSTRCAT"
 ></A
->xmlStrcat()</H3
+>xmlStrcat ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4153,7 +4263,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4214,16 +4324,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1014"
+NAME="AEN1026"
 ></A
 ><H3
 ><A
 NAME="XMLSTRNCAT"
 ></A
->xmlStrncat()</H3
+>xmlStrncat ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4256,7 +4366,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4339,16 +4449,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1045"
+NAME="AEN1057"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEDOC"
 ></A
->xmlParseDoc()</H3
+>xmlParseDoc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4376,7 +4486,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4420,16 +4530,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1066"
+NAME="AEN1078"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEMEMORY"
 ></A
->xmlParseMemory()</H3
+>xmlParseMemory ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4455,7 +4565,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4516,16 +4626,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1090"
+NAME="AEN1102"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEFILE"
 ></A
->xmlParseFile()</H3
+>xmlParseFile ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4551,7 +4661,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4595,16 +4705,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1110"
+NAME="AEN1122"
 ></A
 ><H3
 ><A
 NAME="XMLSUBSTITUTEENTITIESDEFAULT"
 ></A
->xmlSubstituteEntitiesDefault()</H3
+>xmlSubstituteEntitiesDefault ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4634,7 +4744,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4678,16 +4788,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1130"
+NAME="AEN1142"
 ></A
 ><H3
 ><A
 NAME="XMLRECOVERDOC"
 ></A
->xmlRecoverDoc()</H3
+>xmlRecoverDoc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4716,7 +4826,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4760,16 +4870,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1151"
+NAME="AEN1163"
 ></A
 ><H3
 ><A
 NAME="XMLRECOVERMEMORY"
 ></A
->xmlRecoverMemory()</H3
+>xmlRecoverMemory ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4796,7 +4906,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4857,16 +4967,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1175"
+NAME="AEN1187"
 ></A
 ><H3
 ><A
 NAME="XMLRECOVERFILE"
 ></A
->xmlRecoverFile()</H3
+>xmlRecoverFile ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4893,7 +5003,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4937,16 +5047,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1195"
+NAME="AEN1207"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEDOCUMENT"
 ></A
->xmlParseDocument()</H3
+>xmlParseDocument ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4976,7 +5086,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5021,16 +5131,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1217"
+NAME="AEN1229"
 ></A
 ><H3
 ><A
 NAME="XMLSAXPARSEDOC"
 ></A
->xmlSAXParseDoc()</H3
+>xmlSAXParseDoc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5065,7 +5175,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5144,16 +5254,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1247"
+NAME="AEN1259"
 ></A
 ><H3
 ><A
 NAME="XMLSAXPARSEMEMORY"
 ></A
->xmlSAXParseMemory()</H3
+>xmlSAXParseMemory ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5186,7 +5296,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5282,16 +5392,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1280"
+NAME="AEN1292"
 ></A
 ><H3
 ><A
 NAME="XMLSAXPARSEFILE"
 ></A
->xmlSAXParseFile()</H3
+>xmlSAXParseFile ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5324,7 +5434,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5403,16 +5513,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1309"
+NAME="AEN1321"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEDTD"
 ></A
->xmlParseDTD()</H3
+>xmlParseDTD ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5444,7 +5554,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5505,16 +5615,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1335"
+NAME="AEN1347"
 ></A
 ><H3
 ><A
 NAME="XMLSAXPARSEDTD"
 ></A
->xmlSAXParseDTD()</H3
+>xmlSAXParseDTD ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5550,7 +5660,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5628,16 +5738,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1366"
+NAME="AEN1378"
 ></A
 ><H3
 ><A
 NAME="XMLINITPARSERCTXT"
 ></A
->xmlInitParserCtxt()</H3
+>xmlInitParserCtxt ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5662,7 +5772,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5691,16 +5801,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1382"
+NAME="AEN1394"
 ></A
 ><H3
 ><A
 NAME="XMLCLEARPARSERCTXT"
 ></A
->xmlClearParserCtxt()</H3
+>xmlClearParserCtxt ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5725,7 +5835,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5754,16 +5864,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1398"
+NAME="AEN1410"
 ></A
 ><H3
 ><A
 NAME="XMLSETUPPARSERFORBUFFER"
 ></A
->xmlSetupParserForBuffer()</H3
+>xmlSetupParserForBuffer ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5795,7 +5905,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5858,16 +5968,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1423"
+NAME="AEN1435"
 ></A
 ><H3
 ><A
 NAME="XMLPARSERFINDNODEINFO"
 ></A
->xmlParserFindNodeInfo()</H3
+>xmlParserFindNodeInfo ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5900,7 +6010,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5961,16 +6071,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1449"
+NAME="AEN1461"
 ></A
 ><H3
 ><A
 NAME="XMLINITNODEINFOSEQ"
 ></A
->xmlInitNodeInfoSeq()</H3
+>xmlInitNodeInfoSeq ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5995,7 +6105,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6024,16 +6134,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1465"
+NAME="AEN1477"
 ></A
 ><H3
 ><A
 NAME="XMLCLEARNODEINFOSEQ"
 ></A
->xmlClearNodeInfoSeq()</H3
+>xmlClearNodeInfoSeq ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6059,7 +6169,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6088,16 +6198,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1481"
+NAME="AEN1493"
 ></A
 ><H3
 ><A
 NAME="XMLPARSERFINDNODEINFOINDEX"
 ></A
->xmlParserFindNodeInfoIndex()</H3
+>xmlParserFindNodeInfoIndex ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6130,7 +6240,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6191,16 +6301,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1507"
+NAME="AEN1519"
 ></A
 ><H3
 ><A
 NAME="XMLPARSERADDNODEINFO"
 ></A
->xmlParserAddNodeInfo()</H3
+>xmlParserAddNodeInfo ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6229,7 +6339,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6275,16 +6385,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1528"
+NAME="AEN1540"
 ></A
 ><H3
 ><A
 NAME="XMLDEFAULTSAXHANDLERINIT"
 ></A
->xmlDefaultSAXHandlerInit()</H3
+>xmlDefaultSAXHandlerInit ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6303,58 +6413,103 @@
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
-><HR
-ALIGN="LEFT"
-WIDTH="100%"><TABLE
+><BR><BR><TABLE
 WIDTH="100%"
 BORDER="0"
-CELLPADDING="0"
+BGCOLOR="#000000"
+CELLPADDING="1"
 CELLSPACING="0"
 ><TR
 ><TD
-WIDTH="33%"
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="left"
-VALIGN="top"
 ><A
 HREF="libxml.html"
->Prev</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&#60;&#60;&#60; Previous Page</B
+></FONT
+></A
 ></TD
 ><TD
-WIDTH="34%"
+WIDTH="25%"
+BGCOLOR="#0000C0"
 ALIGN="center"
-VALIGN="top"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
 ><A
 HREF="book1.html"
->Home</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Home</B
+></FONT
+></A
+></B
+></FONT
 ></TD
 ><TD
-WIDTH="33%"
+WIDTH="25%"
+BGCOLOR="#00C000"
+ALIGN="center"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="libxml.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Up</B
+></FONT
+></A
+></B
+></FONT
+></TD
+><TD
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="right"
-VALIGN="top"
 ><A
 HREF="gnome-xml-tree.html"
->Next</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Next Page &#62;&#62;&#62;</B
+></FONT
+></A
 ></TD
 ></TR
 ><TR
 ><TD
-WIDTH="33%"
+COLSPAN="2"
 ALIGN="left"
-VALIGN="top"
->Gnome XML Library</TD
-><TD
-WIDTH="34%"
-ALIGN="center"
-VALIGN="top"
-><A
-HREF="libxml.html"
->Up</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Gnome XML Library</B
+></FONT
 ></TD
 ><TD
-WIDTH="33%"
+COLSPAN="2"
 ALIGN="right"
-VALIGN="top"
->tree</TD
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>tree</B
+></FONT
+></TD
 ></TR
 ></TABLE
 ></DIV
diff --git a/doc/html/gnome-xml-parserinternals.html b/doc/html/gnome-xml-parserinternals.html
index 7612d3b..f4a3361 100644
--- a/doc/html/gnome-xml-parserinternals.html
+++ b/doc/html/gnome-xml-parserinternals.html
@@ -22,58 +22,102 @@
 ><TABLE
 WIDTH="100%"
 BORDER="0"
-CELLPADDING="0"
+BGCOLOR="#000000"
+CELLPADDING="1"
 CELLSPACING="0"
 ><TR
 ><TH
-COLSPAN="3"
+COLSPAN="4"
 ALIGN="center"
->Gnome XML Library Reference Manual</TH
+><FONT
+COLOR="#FFFFFF"
+SIZE="5"
+>Gnome XML Library Reference Manual</FONT
+></TH
 ></TR
 ><TR
 ><TD
-WIDTH="10%"
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="left"
-VALIGN="bottom"
 ><A
 HREF="gnome-xml-xml-error.html"
->Prev</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&#60;&#60;&#60; Previous Page</B
+></FONT
+></A
 ></TD
 ><TD
-WIDTH="80%"
+WIDTH="25%"
+BGCOLOR="#0000C0"
 ALIGN="center"
-VALIGN="bottom"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="book1.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Home</B
+></FONT
+></A
+></B
+></FONT
 ></TD
 ><TD
-WIDTH="10%"
+WIDTH="25%"
+BGCOLOR="#00C000"
+ALIGN="center"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="libxml.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Up</B
+></FONT
+></A
+></B
+></FONT
+></TD
+><TD
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="right"
-VALIGN="bottom"
 >&nbsp;</TD
 ></TR
 ></TABLE
-><HR
-ALIGN="LEFT"
-WIDTH="100%"></DIV
+></DIV
 ><H1
 >parserInternals</H1
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4441"
+NAME="AEN4471"
 ></A
 ><H2
 >Name</H2
->parserInternals &#8212; one line description goes here.</DIV
+>parserInternals &#8212; </DIV
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4444"
+NAME="AEN4474"
 ></A
 ><H2
 >Synopsis</H2
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -580,7 +624,10 @@
 HREF="gnome-xml-tree.html#CHAR"
 >CHAR</A
 > **value);
-void        <A
+<A
+HREF="gnome-xml-tree.html#CHAR"
+>CHAR</A
+>*       <A
 HREF="gnome-xml-parserinternals.html#XMLPARSESTARTTAG"
 >xmlParseStartTag</A
 >                (<A
@@ -593,7 +640,11 @@
 >                  (<A
 HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
 >xmlParserCtxtPtr</A
-> ctxt);
+> ctxt,
+                                             <A
+HREF="gnome-xml-tree.html#CHAR"
+>CHAR</A
+> *tagname);
 void        <A
 HREF="gnome-xml-parserinternals.html#XMLPARSECDSECT"
 >xmlParseCDSect</A
@@ -715,7 +766,49 @@
                                              <A
 HREF="gnome-xml-tree.html#CHAR"
 >CHAR</A
-> end3);</PRE
+> end3);
+int         <A
+HREF="gnome-xml-parserinternals.html#NODEPUSH"
+>nodePush</A
+>                        (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt,
+                                             <A
+HREF="gnome-xml-tree.html#XMLNODEPTR"
+>xmlNodePtr</A
+> value);
+<A
+HREF="gnome-xml-tree.html#XMLNODEPTR"
+>xmlNodePtr</A
+>  <A
+HREF="gnome-xml-parserinternals.html#NODEPOP"
+>nodePop</A
+>                         (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt);
+int         <A
+HREF="gnome-xml-parserinternals.html#INPUTPUSH"
+>inputPush</A
+>                       (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt,
+                                             <A
+HREF="gnome-xml-parser.html#XMLPARSERINPUTPTR"
+>xmlParserInputPtr</A
+> value);
+<A
+HREF="gnome-xml-parser.html#XMLPARSERINPUTPTR"
+>xmlParserInputPtr</A
+> <A
+HREF="gnome-xml-parserinternals.html#INPUTPOP"
+>inputPop</A
+>                  (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt);</PRE
 ></TD
 ></TR
 ></TABLE
@@ -723,7 +816,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4625"
+NAME="AEN4669"
 ></A
 ><H2
 >Description</H2
@@ -733,14 +826,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4628"
+NAME="AEN4672"
 ></A
 ><H2
 >Details</H2
-><HR><DIV
+><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4630"
+NAME="AEN4674"
 ></A
 ><H3
 ><A
@@ -749,7 +842,7 @@
 >IS_CHAR()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -769,7 +862,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -798,7 +891,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4644"
+NAME="AEN4688"
 ></A
 ><H3
 ><A
@@ -807,7 +900,7 @@
 >IS_BLANK()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -827,7 +920,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -856,7 +949,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4658"
+NAME="AEN4702"
 ></A
 ><H3
 ><A
@@ -865,7 +958,7 @@
 >IS_BASECHAR()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -885,7 +978,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -914,7 +1007,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4672"
+NAME="AEN4716"
 ></A
 ><H3
 ><A
@@ -923,7 +1016,7 @@
 >IS_DIGIT()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -943,7 +1036,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -972,7 +1065,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4686"
+NAME="AEN4730"
 ></A
 ><H3
 ><A
@@ -981,7 +1074,7 @@
 >IS_COMBINING()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1001,7 +1094,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1030,7 +1123,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4700"
+NAME="AEN4744"
 ></A
 ><H3
 ><A
@@ -1039,7 +1132,7 @@
 >IS_EXTENDER()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1059,7 +1152,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1088,7 +1181,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4714"
+NAME="AEN4758"
 ></A
 ><H3
 ><A
@@ -1097,18 +1190,14 @@
 >IS_IDEOGRAPHIC()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
 ><TD
 ><PRE
 CLASS="PROGRAMLISTING"
->#define IS_IDEOGRAPHIC(c)						\
-    ((((c) &gt;= 0x4e00) &amp;&amp; ((c) &lt;= 0x9fa5)) ||				\
-     (((c) &gt;= 0xf900) &amp;&amp; ((c) &lt;= 0xfa2d)) ||				\
-     (((c) &gt;= 0x3021) &amp;&amp; ((c) &lt;= 0x3029)) ||				\
-      ((c) == 0x3007))</PRE
+>#define     IS_IDEOGRAPHIC(c)</PRE
 ></TD
 ></TR
 ></TABLE
@@ -1121,7 +1210,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1150,7 +1239,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4728"
+NAME="AEN4772"
 ></A
 ><H3
 ><A
@@ -1159,7 +1248,7 @@
 >IS_LETTER()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1179,7 +1268,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1208,7 +1297,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4742"
+NAME="AEN4786"
 ></A
 ><H3
 ><A
@@ -1217,23 +1306,14 @@
 >IS_PUBIDCHAR()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
 ><TD
 ><PRE
 CLASS="PROGRAMLISTING"
->#define IS_PUBIDCHAR(c)							\
-    (((c) == 0x20) || ((c) == 0x0D) || ((c) == 0x0A) ||			\
-     (((c) &gt;= 'a') &amp;&amp; ((c) &lt;= 'z')) ||					\
-     (((c) &gt;= 'A') &amp;&amp; ((c) &lt;= 'Z')) ||					\
-     (((c) &gt;= '0') &amp;&amp; ((c) &lt;= '9')) ||					\
-     ((c) == '-') || ((c) == '\'') || ((c) == '(') || ((c) == ')') ||	\
-     ((c) == '+') || ((c) == ',') || ((c) == '.') || ((c) == '/') ||	\
-     ((c) == ':') || ((c) == '=') || ((c) == '?') || ((c) == ';') ||	\
-     ((c) == '!') || ((c) == '*') || ((c) == '#') || ((c) == '@') ||	\
-     ((c) == '$') || ((c) == '_') || ((c) == '%'))</PRE
+>#define     IS_PUBIDCHAR(c)</PRE
 ></TD
 ></TR
 ></TABLE
@@ -1246,7 +1326,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1275,7 +1355,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4756"
+NAME="AEN4800"
 ></A
 ><H3
 ><A
@@ -1284,16 +1364,14 @@
 >SKIP_EOL()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
 ><TD
 ><PRE
 CLASS="PROGRAMLISTING"
->#define SKIP_EOL(p) 							\
-    if (*(p) == 0x13) { p++ ; if (*(p) == 0x10) p++; }			\
-    if (*(p) == 0x10) { p++ ; if (*(p) == 0x13) p++; }</PRE
+>#define     SKIP_EOL(p)</PRE
 ></TD
 ></TR
 ></TABLE
@@ -1306,7 +1384,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1335,7 +1413,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4770"
+NAME="AEN4814"
 ></A
 ><H3
 ><A
@@ -1344,15 +1422,14 @@
 >MOVETO_ENDTAG()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
 ><TD
 ><PRE
 CLASS="PROGRAMLISTING"
->#define MOVETO_ENDTAG(p)						\
-    while (IS_CHAR(*p) &amp;&amp; (*(p) != '&gt;')) (p)++</PRE
+>#define     MOVETO_ENDTAG(p)</PRE
 ></TD
 ></TR
 ></TABLE
@@ -1365,7 +1442,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1394,7 +1471,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4784"
+NAME="AEN4828"
 ></A
 ><H3
 ><A
@@ -1403,15 +1480,14 @@
 >MOVETO_STARTTAG()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
 ><TD
 ><PRE
 CLASS="PROGRAMLISTING"
->#define MOVETO_STARTTAG(p)						\
-    while (IS_CHAR(*p) &amp;&amp; (*(p) != '&lt;')) (p)++</PRE
+>#define     MOVETO_STARTTAG(p)</PRE
 ></TD
 ></TR
 ></TABLE
@@ -1424,7 +1500,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1453,16 +1529,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4798"
+NAME="AEN4842"
 ></A
 ><H3
 ><A
 NAME="XMLCREATEDOCPARSERCTXT"
 ></A
->xmlCreateDocParserCtxt()</H3
+>xmlCreateDocParserCtxt ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1488,7 +1564,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1532,16 +1608,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4818"
+NAME="AEN4862"
 ></A
 ><H3
 ><A
 NAME="XMLCREATEFILEPARSERCTXT"
 ></A
->xmlCreateFileParserCtxt()</H3
+>xmlCreateFileParserCtxt ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1568,7 +1644,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1612,16 +1688,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4838"
+NAME="AEN4882"
 ></A
 ><H3
 ><A
 NAME="XMLCREATEMEMORYPARSERCTXT"
 ></A
->xmlCreateMemoryParserCtxt()</H3
+>xmlCreateMemoryParserCtxt ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1647,7 +1723,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1708,16 +1784,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4862"
+NAME="AEN4906"
 ></A
 ><H3
 ><A
 NAME="XMLFREEPARSERCTXT"
 ></A
->xmlFreeParserCtxt()</H3
+>xmlFreeParserCtxt ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1743,7 +1819,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1772,16 +1848,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4878"
+NAME="AEN4922"
 ></A
 ><H3
 ><A
 NAME="XMLHANDLEENTITY"
 ></A
->xmlHandleEntity()</H3
+>xmlHandleEntity ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1812,7 +1888,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1858,16 +1934,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4899"
+NAME="AEN4943"
 ></A
 ><H3
 ><A
 NAME="XMLNEWENTITYINPUTSTREAM"
 ></A
->xmlNewEntityInputStream()</H3
+>xmlNewEntityInputStream ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1899,7 +1975,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1960,16 +2036,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4925"
+NAME="AEN4969"
 ></A
 ><H3
 ><A
 NAME="XMLPUSHINPUT"
 ></A
->xmlPushInput()</H3
+>xmlPushInput ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1999,7 +2075,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2045,16 +2121,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4946"
+NAME="AEN4990"
 ></A
 ><H3
 ><A
 NAME="XMLPOPINPUT"
 ></A
->xmlPopInput()</H3
+>xmlPopInput ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2085,7 +2161,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2129,16 +2205,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4968"
+NAME="AEN5012"
 ></A
 ><H3
 ><A
 NAME="XMLFREEINPUTSTREAM"
 ></A
->xmlFreeInputStream()</H3
+>xmlFreeInputStream ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2163,7 +2239,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2192,16 +2268,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4984"
+NAME="AEN5028"
 ></A
 ><H3
 ><A
 NAME="XMLNEWINPUTFROMFILE"
 ></A
->xmlNewInputFromFile()</H3
+>xmlNewInputFromFile ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2230,7 +2306,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2291,16 +2367,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5009"
+NAME="AEN5053"
 ></A
 ><H3
 ><A
 NAME="XMLSPLITQNAME"
 ></A
->xmlSplitQName()</H3
+>xmlSplitQName ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2338,7 +2414,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2400,16 +2476,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5038"
+NAME="AEN5082"
 ></A
 ><H3
 ><A
 NAME="XMLNAMESPACEPARSENCNAME"
 ></A
->xmlNamespaceParseNCName()</H3
+>xmlNamespaceParseNCName ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2442,7 +2518,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2486,16 +2562,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5061"
+NAME="AEN5105"
 ></A
 ><H3
 ><A
 NAME="XMLNAMESPACEPARSEQNAME"
 ></A
->xmlNamespaceParseQName()</H3
+>xmlNamespaceParseQName ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2533,7 +2609,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2595,16 +2671,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5090"
+NAME="AEN5134"
 ></A
 ><H3
 ><A
 NAME="XMLNAMESPACEPARSENSDEF"
 ></A
->xmlNamespaceParseNSDef()</H3
+>xmlNamespaceParseNSDef ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2636,7 +2712,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2680,16 +2756,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5113"
+NAME="AEN5157"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEQUOTEDSTRING"
 ></A
->xmlParseQuotedString()</H3
+>xmlParseQuotedString ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2717,7 +2793,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2761,16 +2837,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5134"
+NAME="AEN5178"
 ></A
 ><H3
 ><A
 NAME="XMLPARSENAMESPACE"
 ></A
->xmlParseNamespace()</H3
+>xmlParseNamespace ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2799,7 +2875,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2828,16 +2904,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5151"
+NAME="AEN5195"
 ></A
 ><H3
 ><A
 NAME="XMLPARSENAME"
 ></A
->xmlParseName()</H3
+>xmlParseName ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2872,7 +2948,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2916,16 +2992,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5175"
+NAME="AEN5219"
 ></A
 ><H3
 ><A
 NAME="XMLPARSENMTOKEN"
 ></A
->xmlParseNmtoken()</H3
+>xmlParseNmtoken ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2957,7 +3033,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3001,16 +3077,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5198"
+NAME="AEN5242"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEENTITYVALUE"
 ></A
->xmlParseEntityValue()</H3
+>xmlParseEntityValue ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3045,7 +3121,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3106,16 +3182,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5225"
+NAME="AEN5269"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEATTVALUE"
 ></A
->xmlParseAttValue()</H3
+>xmlParseAttValue ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3149,7 +3225,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3193,16 +3269,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5247"
+NAME="AEN5291"
 ></A
 ><H3
 ><A
 NAME="XMLPARSESYSTEMLITERAL"
 ></A
->xmlParseSystemLiteral()</H3
+>xmlParseSystemLiteral ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3232,7 +3308,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3276,16 +3352,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5269"
+NAME="AEN5313"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEPUBIDLITERAL"
 ></A
->xmlParsePubidLiteral()</H3
+>xmlParsePubidLiteral ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3315,7 +3391,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3359,16 +3435,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5291"
+NAME="AEN5335"
 ></A
 ><H3
 ><A
 NAME="XMLPARSECHARDATA"
 ></A
->xmlParseCharData()</H3
+>xmlParseCharData ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3397,7 +3473,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3443,16 +3519,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5312"
+NAME="AEN5356"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEEXTERNALID"
 ></A
->xmlParseExternalID()</H3
+>xmlParseExternalID ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3493,7 +3569,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3574,16 +3650,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5345"
+NAME="AEN5389"
 ></A
 ><H3
 ><A
 NAME="XMLPARSECOMMENT"
 ></A
->xmlParseComment()</H3
+>xmlParseComment ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3614,7 +3690,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3660,16 +3736,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5366"
+NAME="AEN5410"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEPITARGET"
 ></A
->xmlParsePITarget()</H3
+>xmlParsePITarget ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3699,7 +3775,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3743,16 +3819,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5388"
+NAME="AEN5432"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEPI"
 ></A
->xmlParsePI()</H3
+>xmlParsePI ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3781,7 +3857,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3810,16 +3886,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5406"
+NAME="AEN5450"
 ></A
 ><H3
 ><A
 NAME="XMLPARSENOTATIONDECL"
 ></A
->xmlParseNotationDecl()</H3
+>xmlParseNotationDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3856,7 +3932,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3885,16 +3961,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5426"
+NAME="AEN5470"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEENTITYDECL"
 ></A
->xmlParseEntityDecl()</H3
+>xmlParseEntityDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3931,7 +4007,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3960,16 +4036,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5448"
+NAME="AEN5492"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEDEFAULTDECL"
 ></A
->xmlParseDefaultDecl()</H3
+>xmlParseDefaultDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4009,7 +4085,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4071,16 +4147,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5477"
+NAME="AEN5521"
 ></A
 ><H3
 ><A
 NAME="XMLPARSENOTATIONTYPE"
 ></A
->xmlParseNotationType()</H3
+>xmlParseNotationType ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4112,7 +4188,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4156,16 +4232,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5500"
+NAME="AEN5544"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEENUMERATIONTYPE"
 ></A
->xmlParseEnumerationType()</H3
+>xmlParseEnumerationType ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4195,7 +4271,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4239,16 +4315,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5522"
+NAME="AEN5566"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEENUMERATEDTYPE"
 ></A
->xmlParseEnumeratedType()</H3
+>xmlParseEnumeratedType ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4281,7 +4357,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4342,16 +4418,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5549"
+NAME="AEN5593"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEATTRIBUTETYPE"
 ></A
->xmlParseAttributeType()</H3
+>xmlParseAttributeType ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4387,7 +4463,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4448,16 +4524,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5577"
+NAME="AEN5621"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEATTRIBUTELISTDECL"
 ></A
->xmlParseAttributeListDecl()</H3
+>xmlParseAttributeListDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4486,7 +4562,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4515,16 +4591,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5595"
+NAME="AEN5639"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEELEMENTMIXEDCONTENTDECL"
 ></A
->xmlParseElementMixedContentDecl()</H3
+>xmlParseElementMixedContentDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4563,7 +4639,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4607,16 +4683,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5619"
+NAME="AEN5663"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEELEMENTCHILDRENCONTENTDECL"
 ></A
->xmlParseElementChildrenContentDecl()</H3
+>xmlParseElementChildrenContentDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4654,7 +4730,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4699,16 +4775,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5644"
+NAME="AEN5688"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEELEMENTCONTENTDECL"
 ></A
->xmlParseElementContentDecl()</H3
+>xmlParseElementContentDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4744,7 +4820,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4822,16 +4898,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5675"
+NAME="AEN5719"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEELEMENTDECL"
 ></A
->xmlParseElementDecl()</H3
+>xmlParseElementDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4860,7 +4936,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4904,16 +4980,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5697"
+NAME="AEN5741"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEMARKUPDECL"
 ></A
->xmlParseMarkupDecl()</H3
+>xmlParseMarkupDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4943,7 +5019,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4972,16 +5048,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5715"
+NAME="AEN5759"
 ></A
 ><H3
 ><A
 NAME="XMLPARSECHARREF"
 ></A
->xmlParseCharRef()</H3
+>xmlParseCharRef ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5012,7 +5088,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5056,16 +5132,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5737"
+NAME="AEN5781"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEENTITYREF"
 ></A
->xmlParseEntityRef()</H3
+>xmlParseEntityRef ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5095,7 +5171,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5139,16 +5215,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5759"
+NAME="AEN5803"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEREFERENCE"
 ></A
->xmlParseReference()</H3
+>xmlParseReference ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5184,7 +5260,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5213,16 +5289,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5778"
+NAME="AEN5822"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEPEREFERENCE"
 ></A
->xmlParsePEReference()</H3
+>xmlParsePEReference ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5251,7 +5327,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5280,16 +5356,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5795"
+NAME="AEN5839"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEDOCTYPEDECL"
 ></A
->xmlParseDocTypeDecl()</H3
+>xmlParseDocTypeDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5317,7 +5393,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5346,16 +5422,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5812"
+NAME="AEN5856"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEATTRIBUTE"
 ></A
->xmlParseAttribute()</H3
+>xmlParseAttribute ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5398,7 +5474,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5459,23 +5535,26 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5843"
+NAME="AEN5887"
 ></A
 ><H3
 ><A
 NAME="XMLPARSESTARTTAG"
 ></A
->xmlParseStartTag()</H3
+>xmlParseStartTag ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
 ><TD
 ><PRE
 CLASS="PROGRAMLISTING"
->void        xmlParseStartTag                (<A
+><A
+HREF="gnome-xml-tree.html#CHAR"
+>CHAR</A
+>*       xmlParseStartTag                (<A
 HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
 >xmlParserCtxtPtr</A
 > ctxt);</PRE
@@ -5504,7 +5583,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5525,6 +5604,21 @@
 VALIGN="TOP"
 >  an XML parser context</TD
 ></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>the element name parsed</TD
+></TR
 ></TABLE
 ><P
 ></P
@@ -5533,16 +5627,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5864"
+NAME="AEN5913"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEENDTAG"
 ></A
->xmlParseEndTag()</H3
+>xmlParseEndTag ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5552,7 +5646,11 @@
 >void        xmlParseEndTag                  (<A
 HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
 >xmlParserCtxtPtr</A
-> ctxt);</PRE
+> ctxt,
+                                             <A
+HREF="gnome-xml-tree.html#CHAR"
+>CHAR</A
+> *tagname);</PRE
 ></TD
 ></TR
 ></TABLE
@@ -5573,7 +5671,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5594,6 +5692,23 @@
 VALIGN="TOP"
 >  an XML parser context</TD
 ></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>tagname</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the tag name as parsed in the opening tag.</TD
+></TR
 ></TABLE
 ><P
 ></P
@@ -5602,16 +5717,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5883"
+NAME="AEN5937"
 ></A
 ><H3
 ><A
 NAME="XMLPARSECDSECT"
 ></A
->xmlParseCDSect()</H3
+>xmlParseCDSect ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5644,7 +5759,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5673,16 +5788,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5903"
+NAME="AEN5957"
 ></A
 ><H3
 ><A
 NAME="XMLPARSECONTENT"
 ></A
->xmlParseContent()</H3
+>xmlParseContent ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5709,7 +5824,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5738,16 +5853,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5920"
+NAME="AEN5974"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEELEMENT"
 ></A
->xmlParseElement()</H3
+>xmlParseElement ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5776,7 +5891,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5805,16 +5920,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5938"
+NAME="AEN5992"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEVERSIONNUM"
 ></A
->xmlParseVersionNum()</H3
+>xmlParseVersionNum ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5844,7 +5959,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5888,16 +6003,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5960"
+NAME="AEN6014"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEVERSIONINFO"
 ></A
->xmlParseVersionInfo()</H3
+>xmlParseVersionInfo ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5929,7 +6044,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5973,16 +6088,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5983"
+NAME="AEN6037"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEENCNAME"
 ></A
->xmlParseEncName()</H3
+>xmlParseEncName ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6012,7 +6127,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6056,16 +6171,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6005"
+NAME="AEN6059"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEENCODINGDECL"
 ></A
->xmlParseEncodingDecl()</H3
+>xmlParseEncodingDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6097,7 +6212,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6141,16 +6256,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6028"
+NAME="AEN6082"
 ></A
 ><H3
 ><A
 NAME="XMLPARSESDDECL"
 ></A
->xmlParseSDDecl()</H3
+>xmlParseSDDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6178,7 +6293,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6222,16 +6337,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6049"
+NAME="AEN6103"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEXMLDECL"
 ></A
->xmlParseXMLDecl()</H3
+>xmlParseXMLDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6258,7 +6373,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6287,16 +6402,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6066"
+NAME="AEN6120"
 ></A
 ><H3
 ><A
 NAME="XMLPARSEMISC"
 ></A
->xmlParseMisc()</H3
+>xmlParseMisc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6323,7 +6438,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6352,7 +6467,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6083"
+NAME="AEN6137"
 ></A
 ><H3
 ><A
@@ -6361,7 +6476,7 @@
 >XML_SUBSTITUTE_NONE</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6378,7 +6493,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6088"
+NAME="AEN6142"
 ></A
 ><H3
 ><A
@@ -6387,7 +6502,7 @@
 >XML_SUBSTITUTE_REF</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6404,7 +6519,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6093"
+NAME="AEN6147"
 ></A
 ><H3
 ><A
@@ -6413,7 +6528,7 @@
 >XML_SUBSTITUTE_PEREF</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6430,7 +6545,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6098"
+NAME="AEN6152"
 ></A
 ><H3
 ><A
@@ -6439,7 +6554,7 @@
 >XML_SUBSTITUTE_BOTH</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6456,16 +6571,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6103"
+NAME="AEN6157"
 ></A
 ><H3
 ><A
 NAME="XMLDECODEENTITIES"
 ></A
->xmlDecodeEntities()</H3
+>xmlDecodeEntities ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6509,7 +6624,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6636,57 +6751,442 @@
 ></P
 ></DIV
 ></DIV
-></DIV
-><DIV
-CLASS="NAVFOOTER"
-><HR
-ALIGN="LEFT"
-WIDTH="100%"><TABLE
-WIDTH="100%"
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN6202"
+></A
+><H3
+><A
+NAME="NODEPUSH"
+></A
+>nodePush ()</H3
+><TABLE
 BORDER="0"
-CELLPADDING="0"
-CELLSPACING="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
 ><TR
 ><TD
-WIDTH="33%"
-ALIGN="left"
-VALIGN="top"
-><A
-HREF="gnome-xml-xml-error.html"
->Prev</A
+><PRE
+CLASS="PROGRAMLISTING"
+>int         nodePush                        (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt,
+                                             <A
+HREF="gnome-xml-tree.html#XMLNODEPTR"
+>xmlNodePtr</A
+> value);</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="34%"
-ALIGN="center"
-VALIGN="top"
-><A
-HREF="book1.html"
->Home</A
-></TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>ctxt</I
+></TT
+>&nbsp;:</TD
 ><TD
-WIDTH="33%"
-ALIGN="right"
-VALIGN="top"
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
 >&nbsp;</TD
 ></TR
 ><TR
 ><TD
-WIDTH="33%"
-ALIGN="left"
-VALIGN="top"
->xml-error</TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>value</I
+></TT
+>&nbsp;:</TD
 ><TD
-WIDTH="34%"
-ALIGN="center"
-VALIGN="top"
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>&nbsp;</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>&nbsp;</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
 ><A
-HREF="libxml.html"
->Up</A
+NAME="AEN6226"
+></A
+><H3
+><A
+NAME="NODEPOP"
+></A
+>nodePop ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+><A
+HREF="gnome-xml-tree.html#XMLNODEPTR"
+>xmlNodePtr</A
+>  nodePop                         (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt);</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
+>ctxt</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>&nbsp;</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>&nbsp;</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN6246"
+></A
+><H3
+><A
+NAME="INPUTPUSH"
+></A
+>inputPush ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>int         inputPush                       (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt,
+                                             <A
+HREF="gnome-xml-parser.html#XMLPARSERINPUTPTR"
+>xmlParserInputPtr</A
+> value);</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
+>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
+>value</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>&nbsp;</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>&nbsp;</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN6270"
+></A
+><H3
+><A
+NAME="INPUTPOP"
+></A
+>inputPop ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+><A
+HREF="gnome-xml-parser.html#XMLPARSERINPUTPTR"
+>xmlParserInputPtr</A
+> inputPop                  (<A
+HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
+>xmlParserCtxtPtr</A
+> ctxt);</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
+>ctxt</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>&nbsp;</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>&nbsp;</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><BR><BR><TABLE
+WIDTH="100%"
+BORDER="0"
+BGCOLOR="#000000"
+CELLPADDING="1"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="25%"
+BGCOLOR="#C00000"
+ALIGN="left"
+><A
+HREF="gnome-xml-xml-error.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&#60;&#60;&#60; Previous Page</B
+></FONT
+></A
 ></TD
 ><TD
-WIDTH="33%"
+WIDTH="25%"
+BGCOLOR="#0000C0"
+ALIGN="center"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="book1.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Home</B
+></FONT
+></A
+></B
+></FONT
+></TD
+><TD
+WIDTH="25%"
+BGCOLOR="#00C000"
+ALIGN="center"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="libxml.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Up</B
+></FONT
+></A
+></B
+></FONT
+></TD
+><TD
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="right"
-VALIGN="top"
+>&nbsp;</TD
+></TR
+><TR
+><TD
+COLSPAN="2"
+ALIGN="left"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>xml-error</B
+></FONT
+></TD
+><TD
+COLSPAN="2"
+ALIGN="right"
 >&nbsp;</TD
 ></TR
 ></TABLE
diff --git a/doc/html/gnome-xml-tree.html b/doc/html/gnome-xml-tree.html
index eedec7f..197b89b 100644
--- a/doc/html/gnome-xml-tree.html
+++ b/doc/html/gnome-xml-tree.html
@@ -25,61 +25,111 @@
 ><TABLE
 WIDTH="100%"
 BORDER="0"
-CELLPADDING="0"
+BGCOLOR="#000000"
+CELLPADDING="1"
 CELLSPACING="0"
 ><TR
 ><TH
-COLSPAN="3"
+COLSPAN="4"
 ALIGN="center"
->Gnome XML Library Reference Manual</TH
+><FONT
+COLOR="#FFFFFF"
+SIZE="5"
+>Gnome XML Library Reference Manual</FONT
+></TH
 ></TR
 ><TR
 ><TD
-WIDTH="10%"
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="left"
-VALIGN="bottom"
 ><A
 HREF="gnome-xml-parser.html"
->Prev</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&#60;&#60;&#60; Previous Page</B
+></FONT
+></A
 ></TD
 ><TD
-WIDTH="80%"
+WIDTH="25%"
+BGCOLOR="#0000C0"
 ALIGN="center"
-VALIGN="bottom"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="book1.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Home</B
+></FONT
+></A
+></B
+></FONT
 ></TD
 ><TD
-WIDTH="10%"
+WIDTH="25%"
+BGCOLOR="#00C000"
+ALIGN="center"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="libxml.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Up</B
+></FONT
+></A
+></B
+></FONT
+></TD
+><TD
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="right"
-VALIGN="bottom"
 ><A
 HREF="gnome-xml-entities.html"
->Next</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Next Page &#62;&#62;&#62;</B
+></FONT
+></A
 ></TD
 ></TR
 ></TABLE
-><HR
-ALIGN="LEFT"
-WIDTH="100%"></DIV
+></DIV
 ><H1
 >tree</H1
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1539"
+NAME="AEN1551"
 ></A
 ><H2
 >Name</H2
->tree &#8212; one line description goes here.</DIV
+>tree &#8212; </DIV
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1542"
+NAME="AEN1554"
 ></A
 ><H2
 >Synopsis</H2
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -91,91 +141,103 @@
 enum        <A
 HREF="gnome-xml-tree.html#XMLELEMENTTYPE"
 >xmlElementType</A
->
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#CHAR"
 >CHAR</A
->
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#XMLNOTATIONPTR"
 >xmlNotationPtr</A
->
+>;
 enum        <A
 HREF="gnome-xml-tree.html#XMLATTRIBUTETYPE"
 >xmlAttributeType</A
->
+>;
 enum        <A
 HREF="gnome-xml-tree.html#XMLATTRIBUTEDEFAULT"
 >xmlAttributeDefault</A
->
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#XMLENUMERATIONPTR"
 >xmlEnumerationPtr</A
->
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#XMLATTRIBUTEPTR"
 >xmlAttributePtr</A
->
+>;
 enum        <A
 HREF="gnome-xml-tree.html#XMLELEMENTCONTENTTYPE"
 >xmlElementContentType</A
->
+>;
 enum        <A
 HREF="gnome-xml-tree.html#XMLELEMENTCONTENTOCCUR"
 >xmlElementContentOccur</A
->
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#XMLELEMENTCONTENTPTR"
 >xmlElementContentPtr</A
->
+>;
 enum        <A
 HREF="gnome-xml-tree.html#XMLELEMENTTYPEVAL"
 >xmlElementTypeVal</A
->
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#XMLELEMENTPTR"
 >xmlElementPtr</A
->
+>;
 enum        <A
 HREF="gnome-xml-tree.html#XMLNSTYPE"
 >xmlNsType</A
->
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#XMLNSPTR"
 >xmlNsPtr</A
->
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#XMLDTDPTR"
 >xmlDtdPtr</A
->
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#XMLATTRPTR"
 >xmlAttrPtr</A
->
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#XMLNODE"
 >xmlNode</A
->
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#XMLNODEPTR"
 >xmlNodePtr</A
->
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#XMLDOC"
 >xmlDoc</A
->
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#XMLDOCPTR"
 >xmlDocPtr</A
->
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#XMLBUFFER"
 >xmlBuffer</A
->
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#XMLBUFFERPTR"
 >xmlBufferPtr</A
->
+>;
+extern      xmlNsPtr <A
+HREF="gnome-xml-tree.html#BASEDTD"
+>baseDTD</A
+>;
+extern      int <A
+HREF="gnome-xml-tree.html#OLDXMLWDCOMPATIBILITY"
+>oldXMLWDcompatibility</A
+>;
+extern      int <A
+HREF="gnome-xml-tree.html#XMLINDENTTREEOUTPUT"
+>xmlIndentTreeOutput</A
+>;
 <A
 HREF="gnome-xml-tree.html#XMLBUFFERPTR"
 >xmlBufferPtr</A
@@ -969,7 +1031,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1785"
+NAME="AEN1800"
 ></A
 ><H2
 >Description</H2
@@ -979,23 +1041,23 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1788"
+NAME="AEN1803"
 ></A
 ><H2
 >Details</H2
-><HR><DIV
+><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1790"
+NAME="AEN1805"
 ></A
 ><H3
 ><A
 NAME="XMLELEMENTTYPE"
 ></A
->xmlElementType</H3
+>enum xmlElementType</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1025,7 +1087,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1795"
+NAME="AEN1810"
 ></A
 ><H3
 ><A
@@ -1038,7 +1100,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1799"
+NAME="AEN1814"
 ></A
 ><H3
 ><A
@@ -1047,7 +1109,7 @@
 >xmlNotationPtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1064,16 +1126,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1804"
+NAME="AEN1819"
 ></A
 ><H3
 ><A
 NAME="XMLATTRIBUTETYPE"
 ></A
->xmlAttributeType</H3
+>enum xmlAttributeType</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1101,16 +1163,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1809"
+NAME="AEN1824"
 ></A
 ><H3
 ><A
 NAME="XMLATTRIBUTEDEFAULT"
 ></A
->xmlAttributeDefault</H3
+>enum xmlAttributeDefault</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1132,7 +1194,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1814"
+NAME="AEN1829"
 ></A
 ><H3
 ><A
@@ -1141,7 +1203,7 @@
 >xmlEnumerationPtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1158,7 +1220,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1819"
+NAME="AEN1834"
 ></A
 ><H3
 ><A
@@ -1167,7 +1229,7 @@
 >xmlAttributePtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1184,16 +1246,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1824"
+NAME="AEN1839"
 ></A
 ><H3
 ><A
 NAME="XMLELEMENTCONTENTTYPE"
 ></A
->xmlElementContentType</H3
+>enum xmlElementContentType</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1215,16 +1277,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1829"
+NAME="AEN1844"
 ></A
 ><H3
 ><A
 NAME="XMLELEMENTCONTENTOCCUR"
 ></A
->xmlElementContentOccur</H3
+>enum xmlElementContentOccur</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1246,7 +1308,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1834"
+NAME="AEN1849"
 ></A
 ><H3
 ><A
@@ -1255,7 +1317,7 @@
 >xmlElementContentPtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1272,16 +1334,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1839"
+NAME="AEN1854"
 ></A
 ><H3
 ><A
 NAME="XMLELEMENTTYPEVAL"
 ></A
->xmlElementTypeVal</H3
+>enum xmlElementTypeVal</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1303,7 +1365,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1844"
+NAME="AEN1859"
 ></A
 ><H3
 ><A
@@ -1312,7 +1374,7 @@
 >xmlElementPtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1329,16 +1391,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1849"
+NAME="AEN1864"
 ></A
 ><H3
 ><A
 NAME="XMLNSTYPE"
 ></A
->xmlNsType</H3
+>enum xmlNsType</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1358,7 +1420,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1854"
+NAME="AEN1869"
 ></A
 ><H3
 ><A
@@ -1367,7 +1429,7 @@
 >xmlNsPtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1384,7 +1446,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1859"
+NAME="AEN1874"
 ></A
 ><H3
 ><A
@@ -1393,7 +1455,7 @@
 >xmlDtdPtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1410,7 +1472,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1864"
+NAME="AEN1879"
 ></A
 ><H3
 ><A
@@ -1419,7 +1481,7 @@
 >xmlAttrPtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1436,7 +1498,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1869"
+NAME="AEN1884"
 ></A
 ><H3
 ><A
@@ -1445,7 +1507,7 @@
 >xmlNode</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1462,7 +1524,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1874"
+NAME="AEN1889"
 ></A
 ><H3
 ><A
@@ -1471,7 +1533,7 @@
 >xmlNodePtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1488,7 +1550,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1879"
+NAME="AEN1894"
 ></A
 ><H3
 ><A
@@ -1497,7 +1559,7 @@
 >xmlDoc</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1514,7 +1576,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1884"
+NAME="AEN1899"
 ></A
 ><H3
 ><A
@@ -1523,7 +1585,7 @@
 >xmlDocPtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1540,7 +1602,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1889"
+NAME="AEN1904"
 ></A
 ><H3
 ><A
@@ -1549,7 +1611,7 @@
 >xmlBuffer</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1566,7 +1628,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1894"
+NAME="AEN1909"
 ></A
 ><H3
 ><A
@@ -1575,7 +1637,7 @@
 >xmlBufferPtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1592,16 +1654,94 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1899"
+NAME="AEN1914"
+></A
+><H3
+><A
+NAME="BASEDTD"
+></A
+>baseDTD</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>extern xmlNsPtr baseDTD;</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN1919"
+></A
+><H3
+><A
+NAME="OLDXMLWDCOMPATIBILITY"
+></A
+>oldXMLWDcompatibility</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>extern int oldXMLWDcompatibility;/* maintain compatibility with old WD */</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN1924"
+></A
+><H3
+><A
+NAME="XMLINDENTTREEOUTPUT"
+></A
+>xmlIndentTreeOutput</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>extern int xmlIndentTreeOutput;  /* try to indent the tree dumps */</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN1929"
 ></A
 ><H3
 ><A
 NAME="XMLBUFFERCREATE"
 ></A
->xmlBufferCreate()</H3
+>xmlBufferCreate ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1626,7 +1766,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1653,16 +1793,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1915"
+NAME="AEN1945"
 ></A
 ><H3
 ><A
 NAME="XMLBUFFERFREE"
 ></A
->xmlBufferFree()</H3
+>xmlBufferFree ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1687,7 +1827,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1716,16 +1856,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1931"
+NAME="AEN1961"
 ></A
 ><H3
 ><A
 NAME="XMLBUFFERDUMP"
 ></A
->xmlBufferDump()</H3
+>xmlBufferDump ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1754,7 +1894,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1815,16 +1955,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1956"
+NAME="AEN1986"
 ></A
 ><H3
 ><A
 NAME="XMLBUFFERADD"
 ></A
->xmlBufferAdd()</H3
+>xmlBufferAdd ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1854,7 +1994,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1917,16 +2057,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN1981"
+NAME="AEN2011"
 ></A
 ><H3
 ><A
 NAME="XMLBUFFERCAT"
 ></A
->xmlBufferCat()</H3
+>xmlBufferCat ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1955,7 +2095,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2001,16 +2141,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2002"
+NAME="AEN2032"
 ></A
 ><H3
 ><A
 NAME="XMLBUFFERCCAT"
 ></A
->xmlBufferCCat()</H3
+>xmlBufferCCat ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2036,7 +2176,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2082,16 +2222,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2022"
+NAME="AEN2052"
 ></A
 ><H3
 ><A
 NAME="XMLCREATEINTSUBSET"
 ></A
->xmlCreateIntSubset()</H3
+>xmlCreateIntSubset ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2131,7 +2271,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2226,16 +2366,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2058"
+NAME="AEN2088"
 ></A
 ><H3
 ><A
 NAME="XMLNEWDTD"
 ></A
->xmlNewDtd()</H3
+>xmlNewDtd ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2275,7 +2415,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2370,16 +2510,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2094"
+NAME="AEN2124"
 ></A
 ><H3
 ><A
 NAME="XMLFREEDTD"
 ></A
->xmlFreeDtd()</H3
+>xmlFreeDtd ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2404,7 +2544,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2433,16 +2573,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2110"
+NAME="AEN2140"
 ></A
 ><H3
 ><A
 NAME="XMLNEWGLOBALNS"
 ></A
->xmlNewGlobalNs()</H3
+>xmlNewGlobalNs ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2478,7 +2618,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2556,16 +2696,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2141"
+NAME="AEN2171"
 ></A
 ><H3
 ><A
 NAME="XMLNEWNS"
 ></A
->xmlNewNs()</H3
+>xmlNewNs ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2601,7 +2741,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2679,16 +2819,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2172"
+NAME="AEN2202"
 ></A
 ><H3
 ><A
 NAME="XMLFREENS"
 ></A
->xmlFreeNs()</H3
+>xmlFreeNs ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2713,7 +2853,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2742,16 +2882,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2188"
+NAME="AEN2218"
 ></A
 ><H3
 ><A
 NAME="XMLNEWDOC"
 ></A
->xmlNewDoc()</H3
+>xmlNewDoc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2779,7 +2919,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2823,16 +2963,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2209"
+NAME="AEN2239"
 ></A
 ><H3
 ><A
 NAME="XMLFREEDOC"
 ></A
->xmlFreeDoc()</H3
+>xmlFreeDoc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2857,7 +2997,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2887,16 +3027,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2225"
+NAME="AEN2255"
 ></A
 ><H3
 ><A
 NAME="XMLNEWDOCPROP"
 ></A
->xmlNewDocProp()</H3
+>xmlNewDocProp ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2932,7 +3072,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3010,16 +3150,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2256"
+NAME="AEN2286"
 ></A
 ><H3
 ><A
 NAME="XMLNEWPROP"
 ></A
->xmlNewProp()</H3
+>xmlNewProp ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3055,7 +3195,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3133,16 +3273,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2287"
+NAME="AEN2317"
 ></A
 ><H3
 ><A
 NAME="XMLFREEPROPLIST"
 ></A
->xmlFreePropList()</H3
+>xmlFreePropList ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3167,7 +3307,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3196,16 +3336,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2303"
+NAME="AEN2333"
 ></A
 ><H3
 ><A
 NAME="XMLFREEPROP"
 ></A
->xmlFreeProp()</H3
+>xmlFreeProp ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3230,7 +3370,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3259,16 +3399,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2319"
+NAME="AEN2349"
 ></A
 ><H3
 ><A
 NAME="XMLCOPYPROP"
 ></A
->xmlCopyProp()</H3
+>xmlCopyProp ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3296,7 +3436,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3340,16 +3480,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2340"
+NAME="AEN2370"
 ></A
 ><H3
 ><A
 NAME="XMLCOPYPROPLIST"
 ></A
->xmlCopyPropList()</H3
+>xmlCopyPropList ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3377,7 +3517,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3421,16 +3561,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2361"
+NAME="AEN2391"
 ></A
 ><H3
 ><A
 NAME="XMLCOPYDTD"
 ></A
->xmlCopyDtd()</H3
+>xmlCopyDtd ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3458,7 +3598,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3502,16 +3642,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2382"
+NAME="AEN2412"
 ></A
 ><H3
 ><A
 NAME="XMLCOPYDOC"
 ></A
->xmlCopyDoc()</H3
+>xmlCopyDoc ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3541,7 +3681,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3602,16 +3742,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2407"
+NAME="AEN2437"
 ></A
 ><H3
 ><A
 NAME="XMLNEWDOCNODE"
 ></A
->xmlNewDocNode()</H3
+>xmlNewDocNode ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3662,7 +3802,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3757,16 +3897,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2445"
+NAME="AEN2475"
 ></A
 ><H3
 ><A
 NAME="XMLNEWNODE"
 ></A
->xmlNewNode()</H3
+>xmlNewNode ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3810,7 +3950,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -3871,16 +4011,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2473"
+NAME="AEN2503"
 ></A
 ><H3
 ><A
 NAME="XMLNEWCHILD"
 ></A
->xmlNewChild()</H3
+>xmlNewChild ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -3937,7 +4077,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4032,16 +4172,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2512"
+NAME="AEN2542"
 ></A
 ><H3
 ><A
 NAME="XMLNEWDOCTEXT"
 ></A
->xmlNewDocText()</H3
+>xmlNewDocText ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4073,7 +4213,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4134,16 +4274,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2538"
+NAME="AEN2568"
 ></A
 ><H3
 ><A
 NAME="XMLNEWTEXT"
 ></A
->xmlNewText()</H3
+>xmlNewText ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4171,7 +4311,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4215,16 +4355,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2559"
+NAME="AEN2589"
 ></A
 ><H3
 ><A
 NAME="XMLNEWDOCTEXTLEN"
 ></A
->xmlNewDocTextLen()</H3
+>xmlNewDocTextLen ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4258,7 +4398,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4336,16 +4476,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2589"
+NAME="AEN2619"
 ></A
 ><H3
 ><A
 NAME="XMLNEWTEXTLEN"
 ></A
->xmlNewTextLen()</H3
+>xmlNewTextLen ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4374,7 +4514,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4435,16 +4575,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2614"
+NAME="AEN2644"
 ></A
 ><H3
 ><A
 NAME="XMLNEWDOCCOMMENT"
 ></A
->xmlNewDocComment()</H3
+>xmlNewDocComment ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4476,7 +4616,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4537,16 +4677,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2640"
+NAME="AEN2670"
 ></A
 ><H3
 ><A
 NAME="XMLNEWCOMMENT"
 ></A
->xmlNewComment()</H3
+>xmlNewComment ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4574,7 +4714,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4618,16 +4758,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2661"
+NAME="AEN2691"
 ></A
 ><H3
 ><A
 NAME="XMLNEWREFERENCE"
 ></A
->xmlNewReference()</H3
+>xmlNewReference ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4659,7 +4799,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4720,16 +4860,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2687"
+NAME="AEN2717"
 ></A
 ><H3
 ><A
 NAME="XMLCOPYNODE"
 ></A
->xmlCopyNode()</H3
+>xmlCopyNode ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4758,7 +4898,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4819,16 +4959,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2712"
+NAME="AEN2742"
 ></A
 ><H3
 ><A
 NAME="XMLCOPYNODELIST"
 ></A
->xmlCopyNodeList()</H3
+>xmlCopyNodeList ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4856,7 +4996,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4900,16 +5040,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2733"
+NAME="AEN2763"
 ></A
 ><H3
 ><A
 NAME="XMLGETLASTCHILD"
 ></A
->xmlGetLastChild()</H3
+>xmlGetLastChild ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -4937,7 +5077,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -4981,16 +5121,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2754"
+NAME="AEN2784"
 ></A
 ><H3
 ><A
 NAME="XMLNODEISTEXT"
 ></A
->xmlNodeIsText()</H3
+>xmlNodeIsText ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5015,7 +5155,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5059,16 +5199,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2774"
+NAME="AEN2804"
 ></A
 ><H3
 ><A
 NAME="XMLADDCHILD"
 ></A
->xmlAddChild()</H3
+>xmlAddChild ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5105,7 +5245,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5166,16 +5306,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2801"
+NAME="AEN2831"
 ></A
 ><H3
 ><A
 NAME="XMLUNLINKNODE"
 ></A
->xmlUnlinkNode()</H3
+>xmlUnlinkNode ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5200,7 +5340,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5229,16 +5369,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2817"
+NAME="AEN2847"
 ></A
 ><H3
 ><A
 NAME="XMLTEXTMERGE"
 ></A
->xmlTextMerge()</H3
+>xmlTextMerge ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5270,7 +5410,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5331,16 +5471,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2843"
+NAME="AEN2873"
 ></A
 ><H3
 ><A
 NAME="XMLTEXTCONCAT"
 ></A
->xmlTextConcat()</H3
+>xmlTextConcat ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5370,7 +5510,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5438,16 +5578,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2869"
+NAME="AEN2899"
 ></A
 ><H3
 ><A
 NAME="XMLFREENODELIST"
 ></A
->xmlFreeNodeList()</H3
+>xmlFreeNodeList ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5473,7 +5613,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5502,16 +5642,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2885"
+NAME="AEN2915"
 ></A
 ><H3
 ><A
 NAME="XMLFREENODE"
 ></A
->xmlFreeNode()</H3
+>xmlFreeNode ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5536,7 +5676,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5565,16 +5705,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2901"
+NAME="AEN2931"
 ></A
 ><H3
 ><A
 NAME="XMLSEARCHNS"
 ></A
->xmlSearchNs()</H3
+>xmlSearchNs ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5618,7 +5758,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5696,16 +5836,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2933"
+NAME="AEN2963"
 ></A
 ><H3
 ><A
 NAME="XMLSEARCHNSBYHREF"
 ></A
->xmlSearchNsByHref()</H3
+>xmlSearchNsByHref ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5742,7 +5882,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5820,16 +5960,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2964"
+NAME="AEN2994"
 ></A
 ><H3
 ><A
 NAME="XMLSETNS"
 ></A
->xmlSetNs()</H3
+>xmlSetNs ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5858,7 +5998,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5904,16 +6044,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2985"
+NAME="AEN3015"
 ></A
 ><H3
 ><A
 NAME="XMLCOPYNAMESPACE"
 ></A
->xmlCopyNamespace()</H3
+>xmlCopyNamespace ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -5941,7 +6081,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -5985,16 +6125,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3006"
+NAME="AEN3036"
 ></A
 ><H3
 ><A
 NAME="XMLCOPYNAMESPACELIST"
 ></A
->xmlCopyNamespaceList()</H3
+>xmlCopyNamespaceList ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6022,7 +6162,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6066,16 +6206,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3027"
+NAME="AEN3057"
 ></A
 ><H3
 ><A
 NAME="XMLSETPROP"
 ></A
->xmlSetProp()</H3
+>xmlSetProp ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6111,7 +6251,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6189,16 +6329,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3058"
+NAME="AEN3088"
 ></A
 ><H3
 ><A
 NAME="XMLGETPROP"
 ></A
->xmlGetProp()</H3
+>xmlGetProp ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6231,7 +6371,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6292,16 +6432,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3084"
+NAME="AEN3114"
 ></A
 ><H3
 ><A
 NAME="XMLSTRINGGETNODELIST"
 ></A
->xmlStringGetNodeList()</H3
+>xmlStringGetNodeList ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6334,7 +6474,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6395,16 +6535,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3110"
+NAME="AEN3140"
 ></A
 ><H3
 ><A
 NAME="XMLSTRINGLENGETNODELIST"
 ></A
->xmlStringLenGetNodeList()</H3
+>xmlStringLenGetNodeList ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6438,7 +6578,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6516,16 +6656,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3140"
+NAME="AEN3170"
 ></A
 ><H3
 ><A
 NAME="XMLNODELISTGETSTRING"
 ></A
->xmlNodeListGetString()</H3
+>xmlNodeListGetString ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6559,7 +6699,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6637,16 +6777,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3170"
+NAME="AEN3200"
 ></A
 ><H3
 ><A
 NAME="XMLNODESETCONTENT"
 ></A
->xmlNodeSetContent()</H3
+>xmlNodeSetContent ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6675,7 +6815,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6721,16 +6861,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3191"
+NAME="AEN3221"
 ></A
 ><H3
 ><A
 NAME="XMLNODESETCONTENTLEN"
 ></A
->xmlNodeSetContentLen()</H3
+>xmlNodeSetContentLen ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6760,7 +6900,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6828,16 +6968,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3217"
+NAME="AEN3247"
 ></A
 ><H3
 ><A
 NAME="XMLNODEADDCONTENT"
 ></A
->xmlNodeAddContent()</H3
+>xmlNodeAddContent ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6866,7 +7006,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -6912,16 +7052,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3238"
+NAME="AEN3268"
 ></A
 ><H3
 ><A
 NAME="XMLNODEADDCONTENTLEN"
 ></A
->xmlNodeAddContentLen()</H3
+>xmlNodeAddContentLen ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -6951,7 +7091,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -7019,16 +7159,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3264"
+NAME="AEN3294"
 ></A
 ><H3
 ><A
 NAME="XMLNODEGETCONTENT"
 ></A
->xmlNodeGetContent()</H3
+>xmlNodeGetContent ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -7059,7 +7199,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -7104,16 +7244,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3285"
+NAME="AEN3315"
 ></A
 ><H3
 ><A
 NAME="XMLBUFFERWRITECHAR"
 ></A
->xmlBufferWriteCHAR()</H3
+>xmlBufferWriteCHAR ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -7143,7 +7283,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -7189,16 +7329,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3306"
+NAME="AEN3336"
 ></A
 ><H3
 ><A
 NAME="XMLBUFFERWRITECHAR"
 ></A
->xmlBufferWriteChar()</H3
+>xmlBufferWriteChar ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -7225,7 +7365,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -7271,16 +7411,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3326"
+NAME="AEN3356"
 ></A
 ><H3
 ><A
 NAME="XMLBUFFERWRITEQUOTEDSTRING"
 ></A
->xmlBufferWriteQuotedString()</H3
+>xmlBufferWriteQuotedString ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -7311,7 +7451,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -7357,16 +7497,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3347"
+NAME="AEN3377"
 ></A
 ><H3
 ><A
 NAME="XMLDOCDUMPMEMORY"
 ></A
->xmlDocDumpMemory()</H3
+>xmlDocDumpMemory ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -7397,7 +7537,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -7460,16 +7600,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3372"
+NAME="AEN3402"
 ></A
 ><H3
 ><A
 NAME="XMLDOCDUMP"
 ></A
->xmlDocDump()</H3
+>xmlDocDump ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -7498,7 +7638,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -7544,16 +7684,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3393"
+NAME="AEN3423"
 ></A
 ><H3
 ><A
 NAME="XMLSAVEFILE"
 ></A
->xmlSaveFile()</H3
+>xmlSaveFile ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -7580,7 +7720,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -7641,16 +7781,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3417"
+NAME="AEN3447"
 ></A
 ><H3
 ><A
 NAME="XMLGETDOCCOMPRESSMODE"
 ></A
->xmlGetDocCompressMode()</H3
+>xmlGetDocCompressMode ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -7675,7 +7815,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -7719,16 +7859,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3437"
+NAME="AEN3467"
 ></A
 ><H3
 ><A
 NAME="XMLSETDOCCOMPRESSMODE"
 ></A
->xmlSetDocCompressMode()</H3
+>xmlSetDocCompressMode ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -7755,7 +7895,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -7801,16 +7941,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3457"
+NAME="AEN3487"
 ></A
 ><H3
 ><A
 NAME="XMLGETCOMPRESSMODE"
 ></A
->xmlGetCompressMode()</H3
+>xmlGetCompressMode ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -7832,7 +7972,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -7859,16 +7999,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3472"
+NAME="AEN3502"
 ></A
 ><H3
 ><A
 NAME="XMLSETCOMPRESSMODE"
 ></A
->xmlSetCompressMode()</H3
+>xmlSetCompressMode ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -7891,7 +8031,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -7920,58 +8060,103 @@
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
-><HR
-ALIGN="LEFT"
-WIDTH="100%"><TABLE
+><BR><BR><TABLE
 WIDTH="100%"
 BORDER="0"
-CELLPADDING="0"
+BGCOLOR="#000000"
+CELLPADDING="1"
 CELLSPACING="0"
 ><TR
 ><TD
-WIDTH="33%"
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="left"
-VALIGN="top"
 ><A
 HREF="gnome-xml-parser.html"
->Prev</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&#60;&#60;&#60; Previous Page</B
+></FONT
+></A
 ></TD
 ><TD
-WIDTH="34%"
+WIDTH="25%"
+BGCOLOR="#0000C0"
 ALIGN="center"
-VALIGN="top"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
 ><A
 HREF="book1.html"
->Home</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Home</B
+></FONT
+></A
+></B
+></FONT
 ></TD
 ><TD
-WIDTH="33%"
+WIDTH="25%"
+BGCOLOR="#00C000"
+ALIGN="center"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="libxml.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Up</B
+></FONT
+></A
+></B
+></FONT
+></TD
+><TD
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="right"
-VALIGN="top"
 ><A
 HREF="gnome-xml-entities.html"
->Next</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Next Page &#62;&#62;&#62;</B
+></FONT
+></A
 ></TD
 ></TR
 ><TR
 ><TD
-WIDTH="33%"
+COLSPAN="2"
 ALIGN="left"
-VALIGN="top"
->parser</TD
-><TD
-WIDTH="34%"
-ALIGN="center"
-VALIGN="top"
-><A
-HREF="libxml.html"
->Up</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>parser</B
+></FONT
 ></TD
 ><TD
-WIDTH="33%"
+COLSPAN="2"
 ALIGN="right"
-VALIGN="top"
->entities</TD
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>entities</B
+></FONT
+></TD
 ></TR
 ></TABLE
 ></DIV
diff --git a/doc/html/gnome-xml-valid.html b/doc/html/gnome-xml-valid.html
index 7b7cc67..8aba6ef 100644
--- a/doc/html/gnome-xml-valid.html
+++ b/doc/html/gnome-xml-valid.html
@@ -25,61 +25,111 @@
 ><TABLE
 WIDTH="100%"
 BORDER="0"
-CELLPADDING="0"
+BGCOLOR="#000000"
+CELLPADDING="1"
 CELLSPACING="0"
 ><TR
 ><TH
-COLSPAN="3"
+COLSPAN="4"
 ALIGN="center"
->Gnome XML Library Reference Manual</TH
+><FONT
+COLOR="#FFFFFF"
+SIZE="5"
+>Gnome XML Library Reference Manual</FONT
+></TH
 ></TR
 ><TR
 ><TD
-WIDTH="10%"
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="left"
-VALIGN="bottom"
 ><A
 HREF="gnome-xml-entities.html"
->Prev</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&#60;&#60;&#60; Previous Page</B
+></FONT
+></A
 ></TD
 ><TD
-WIDTH="80%"
+WIDTH="25%"
+BGCOLOR="#0000C0"
 ALIGN="center"
-VALIGN="bottom"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="book1.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Home</B
+></FONT
+></A
+></B
+></FONT
 ></TD
 ><TD
-WIDTH="10%"
+WIDTH="25%"
+BGCOLOR="#00C000"
+ALIGN="center"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="libxml.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Up</B
+></FONT
+></A
+></B
+></FONT
+></TD
+><TD
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="right"
-VALIGN="bottom"
 ><A
 HREF="gnome-xml-xml-error.html"
->Next</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Next Page &#62;&#62;&#62;</B
+></FONT
+></A
 ></TD
 ></TR
 ></TABLE
-><HR
-ALIGN="LEFT"
-WIDTH="100%"></DIV
+></DIV
 ><H1
 >valid</H1
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3853"
+NAME="AEN3883"
 ></A
 ><H2
 >Name</H2
->valid &#8212; one line description goes here.</DIV
+>valid &#8212; </DIV
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3856"
+NAME="AEN3886"
 ></A
 ><H2
 >Synopsis</H2
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -95,7 +145,7 @@
 typedef     <A
 HREF="gnome-xml-valid.html#XMLNOTATIONTABLEPTR"
 >xmlNotationTablePtr</A
->
+>;
 #define     <A
 HREF="gnome-xml-valid.html#XML-MIN-ELEMENT-TABLE"
 >XML_MIN_ELEMENT_TABLE</A
@@ -103,7 +153,7 @@
 typedef     <A
 HREF="gnome-xml-valid.html#XMLELEMENTTABLEPTR"
 >xmlElementTablePtr</A
->
+>;
 #define     <A
 HREF="gnome-xml-valid.html#XML-MIN-ATTRIBUTE-TABLE"
 >XML_MIN_ATTRIBUTE_TABLE</A
@@ -111,7 +161,7 @@
 typedef     <A
 HREF="gnome-xml-valid.html#XMLATTRIBUTETABLEPTR"
 >xmlAttributeTablePtr</A
->
+>;
 <A
 HREF="gnome-xml-tree.html#XMLNOTATIONPTR"
 >xmlNotationPtr</A
@@ -327,7 +377,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3923"
+NAME="AEN3953"
 ></A
 ><H2
 >Description</H2
@@ -337,14 +387,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3926"
+NAME="AEN3956"
 ></A
 ><H2
 >Details</H2
-><HR><DIV
+><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3928"
+NAME="AEN3958"
 ></A
 ><H3
 ><A
@@ -353,7 +403,7 @@
 >XML_MIN_NOTATION_TABLE</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -370,7 +420,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3933"
+NAME="AEN3963"
 ></A
 ><H3
 ><A
@@ -379,7 +429,7 @@
 >xmlNotationTablePtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -396,7 +446,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3938"
+NAME="AEN3968"
 ></A
 ><H3
 ><A
@@ -405,7 +455,7 @@
 >XML_MIN_ELEMENT_TABLE</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -422,7 +472,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3943"
+NAME="AEN3973"
 ></A
 ><H3
 ><A
@@ -431,7 +481,7 @@
 >xmlElementTablePtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -448,7 +498,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3948"
+NAME="AEN3978"
 ></A
 ><H3
 ><A
@@ -457,7 +507,7 @@
 >XML_MIN_ATTRIBUTE_TABLE</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -474,7 +524,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3953"
+NAME="AEN3983"
 ></A
 ><H3
 ><A
@@ -483,7 +533,7 @@
 >xmlAttributeTablePtr</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -500,16 +550,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3958"
+NAME="AEN3988"
 ></A
 ><H3
 ><A
 NAME="XMLADDNOTATIONDECL"
 ></A
->xmlAddNotationDecl()</H3
+>xmlAddNotationDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -549,7 +599,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -644,16 +694,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3994"
+NAME="AEN4024"
 ></A
 ><H3
 ><A
 NAME="XMLCOPYNOTATIONTABLE"
 ></A
->xmlCopyNotationTable()</H3
+>xmlCopyNotationTable ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -681,7 +731,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -725,16 +775,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4015"
+NAME="AEN4045"
 ></A
 ><H3
 ><A
 NAME="XMLFREENOTATIONTABLE"
 ></A
->xmlFreeNotationTable()</H3
+>xmlFreeNotationTable ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -759,7 +809,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -788,16 +838,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4031"
+NAME="AEN4061"
 ></A
 ><H3
 ><A
 NAME="XMLDUMPNOTATIONTABLE"
 ></A
->xmlDumpNotationTable()</H3
+>xmlDumpNotationTable ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -826,7 +876,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -872,16 +922,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4052"
+NAME="AEN4082"
 ></A
 ><H3
 ><A
 NAME="XMLNEWELEMENTCONTENT"
 ></A
->xmlNewElementContent()</H3
+>xmlNewElementContent ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -910,7 +960,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -971,16 +1021,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4077"
+NAME="AEN4107"
 ></A
 ><H3
 ><A
 NAME="XMLCOPYELEMENTCONTENT"
 ></A
->xmlCopyElementContent()</H3
+>xmlCopyElementContent ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1008,7 +1058,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1052,16 +1102,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4098"
+NAME="AEN4128"
 ></A
 ><H3
 ><A
 NAME="XMLFREEELEMENTCONTENT"
 ></A
->xmlFreeElementContent()</H3
+>xmlFreeElementContent ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1086,7 +1136,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1115,16 +1165,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4114"
+NAME="AEN4144"
 ></A
 ><H3
 ><A
 NAME="XMLADDELEMENTDECL"
 ></A
->xmlAddElementDecl()</H3
+>xmlAddElementDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1161,7 +1211,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1256,16 +1306,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4149"
+NAME="AEN4179"
 ></A
 ><H3
 ><A
 NAME="XMLCOPYELEMENTTABLE"
 ></A
->xmlCopyElementTable()</H3
+>xmlCopyElementTable ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1293,7 +1343,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1337,16 +1387,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4170"
+NAME="AEN4200"
 ></A
 ><H3
 ><A
 NAME="XMLFREEELEMENTTABLE"
 ></A
->xmlFreeElementTable()</H3
+>xmlFreeElementTable ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1371,7 +1421,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1400,16 +1450,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4186"
+NAME="AEN4216"
 ></A
 ><H3
 ><A
 NAME="XMLDUMPELEMENTTABLE"
 ></A
->xmlDumpElementTable()</H3
+>xmlDumpElementTable ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1438,7 +1488,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1484,16 +1534,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4207"
+NAME="AEN4237"
 ></A
 ><H3
 ><A
 NAME="XMLCREATEENUMERATION"
 ></A
->xmlCreateEnumeration()</H3
+>xmlCreateEnumeration ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1521,7 +1571,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1566,16 +1616,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4228"
+NAME="AEN4258"
 ></A
 ><H3
 ><A
 NAME="XMLFREEENUMERATION"
 ></A
->xmlFreeEnumeration()</H3
+>xmlFreeEnumeration ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1600,7 +1650,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1629,16 +1679,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4244"
+NAME="AEN4274"
 ></A
 ><H3
 ><A
 NAME="XMLCOPYENUMERATION"
 ></A
->xmlCopyEnumeration()</H3
+>xmlCopyEnumeration ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1666,7 +1716,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1711,16 +1761,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4265"
+NAME="AEN4295"
 ></A
 ><H3
 ><A
 NAME="XMLADDATTRIBUTEDECL"
 ></A
->xmlAddAttributeDecl()</H3
+>xmlAddAttributeDecl ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1766,7 +1816,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1912,16 +1962,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4314"
+NAME="AEN4344"
 ></A
 ><H3
 ><A
 NAME="XMLCOPYATTRIBUTETABLE"
 ></A
->xmlCopyAttributeTable()</H3
+>xmlCopyAttributeTable ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -1949,7 +1999,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -1993,16 +2043,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4335"
+NAME="AEN4365"
 ></A
 ><H3
 ><A
 NAME="XMLFREEATTRIBUTETABLE"
 ></A
->xmlFreeAttributeTable()</H3
+>xmlFreeAttributeTable ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2027,7 +2077,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2056,16 +2106,16 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4351"
+NAME="AEN4381"
 ></A
 ><H3
 ><A
 NAME="XMLDUMPATTRIBUTETABLE"
 ></A
->xmlDumpAttributeTable()</H3
+>xmlDumpAttributeTable ()</H3
 ><TABLE
 BORDER="0"
-BGCOLOR="#E8E8F8"
+BGCOLOR="#D6E8FF"
 WIDTH="100%"
 CELLPADDING="6"
 ><TR
@@ -2094,7 +2144,7 @@
 ><TABLE
 BORDER="0"
 WIDTH="100%"
-BGCOLOR="#FFE0E0"
+BGCOLOR="#FFD0D0"
 CELLSPACING="0"
 CELLPADDING="4"
 CLASS="CALSTABLE"
@@ -2140,58 +2190,103 @@
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
-><HR
-ALIGN="LEFT"
-WIDTH="100%"><TABLE
+><BR><BR><TABLE
 WIDTH="100%"
 BORDER="0"
-CELLPADDING="0"
+BGCOLOR="#000000"
+CELLPADDING="1"
 CELLSPACING="0"
 ><TR
 ><TD
-WIDTH="33%"
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="left"
-VALIGN="top"
 ><A
 HREF="gnome-xml-entities.html"
->Prev</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&#60;&#60;&#60; Previous Page</B
+></FONT
+></A
 ></TD
 ><TD
-WIDTH="34%"
+WIDTH="25%"
+BGCOLOR="#0000C0"
 ALIGN="center"
-VALIGN="top"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
 ><A
 HREF="book1.html"
->Home</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Home</B
+></FONT
+></A
+></B
+></FONT
 ></TD
 ><TD
-WIDTH="33%"
+WIDTH="25%"
+BGCOLOR="#00C000"
+ALIGN="center"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="libxml.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Up</B
+></FONT
+></A
+></B
+></FONT
+></TD
+><TD
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="right"
-VALIGN="top"
 ><A
 HREF="gnome-xml-xml-error.html"
->Next</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Next Page &#62;&#62;&#62;</B
+></FONT
+></A
 ></TD
 ></TR
 ><TR
 ><TD
-WIDTH="33%"
+COLSPAN="2"
 ALIGN="left"
-VALIGN="top"
->entities</TD
-><TD
-WIDTH="34%"
-ALIGN="center"
-VALIGN="top"
-><A
-HREF="libxml.html"
->Up</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>entities</B
+></FONT
 ></TD
 ><TD
-WIDTH="33%"
+COLSPAN="2"
 ALIGN="right"
-VALIGN="top"
->xml-error</TD
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>xml-error</B
+></FONT
+></TD
 ></TR
 ></TABLE
 ></DIV
diff --git a/doc/html/index.sgml b/doc/html/index.sgml
index 0d09d3a..a0bdb07 100644
--- a/doc/html/index.sgml
+++ b/doc/html/index.sgml
@@ -35,6 +35,8 @@
 <ANCHOR id ="HASINTERNALSUBSETSAXFUNC" href="gnome-xml/gnome-xml-parser.html#HASINTERNALSUBSETSAXFUNC">
 <ANCHOR id ="HASEXTERNALSUBSETSAXFUNC" href="gnome-xml/gnome-xml-parser.html#HASEXTERNALSUBSETSAXFUNC">
 <ANCHOR id ="XMLSAXHANDLERPTR" href="gnome-xml/gnome-xml-parser.html#XMLSAXHANDLERPTR">
+<ANCHOR id ="XMLDEFAULTSAXLOCATOR" href="gnome-xml/gnome-xml-parser.html#XMLDEFAULTSAXLOCATOR">
+<ANCHOR id ="XMLDEFAULTSAXHANDLER" href="gnome-xml/gnome-xml-parser.html#XMLDEFAULTSAXHANDLER">
 <ANCHOR id ="XMLSTRDUP" href="gnome-xml/gnome-xml-parser.html#XMLSTRDUP">
 <ANCHOR id ="XMLSTRNDUP" href="gnome-xml/gnome-xml-parser.html#XMLSTRNDUP">
 <ANCHOR id ="XMLSTRCHR" href="gnome-xml/gnome-xml-parser.html#XMLSTRCHR">
@@ -88,6 +90,9 @@
 <ANCHOR id ="XMLDOCPTR" href="gnome-xml/gnome-xml-tree.html#XMLDOCPTR">
 <ANCHOR id ="XMLBUFFER" href="gnome-xml/gnome-xml-tree.html#XMLBUFFER">
 <ANCHOR id ="XMLBUFFERPTR" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERPTR">
+<ANCHOR id ="BASEDTD" href="gnome-xml/gnome-xml-tree.html#BASEDTD">
+<ANCHOR id ="OLDXMLWDCOMPATIBILITY" href="gnome-xml/gnome-xml-tree.html#OLDXMLWDCOMPATIBILITY">
+<ANCHOR id ="XMLINDENTTREEOUTPUT" href="gnome-xml/gnome-xml-tree.html#XMLINDENTTREEOUTPUT">
 <ANCHOR id ="XMLBUFFERCREATE" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERCREATE">
 <ANCHOR id ="XMLBUFFERFREE" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERFREE">
 <ANCHOR id ="XMLBUFFERDUMP" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERDUMP">
@@ -279,3 +284,7 @@
 <ANCHOR id ="XML-SUBSTITUTE-PEREF" href="gnome-xml/gnome-xml-parserinternals.html#XML-SUBSTITUTE-PEREF">
 <ANCHOR id ="XML-SUBSTITUTE-BOTH" href="gnome-xml/gnome-xml-parserinternals.html#XML-SUBSTITUTE-BOTH">
 <ANCHOR id ="XMLDECODEENTITIES" href="gnome-xml/gnome-xml-parserinternals.html#XMLDECODEENTITIES">
+<ANCHOR id ="NODEPUSH" href="gnome-xml/gnome-xml-parserinternals.html#NODEPUSH">
+<ANCHOR id ="NODEPOP" href="gnome-xml/gnome-xml-parserinternals.html#NODEPOP">
+<ANCHOR id ="INPUTPUSH" href="gnome-xml/gnome-xml-parserinternals.html#INPUTPUSH">
+<ANCHOR id ="INPUTPOP" href="gnome-xml/gnome-xml-parserinternals.html#INPUTPOP">
diff --git a/doc/html/libxml.html b/doc/html/libxml.html
index fade2b1..8abd792 100644
--- a/doc/html/libxml.html
+++ b/doc/html/libxml.html
@@ -22,87 +22,89 @@
 ><TABLE
 WIDTH="100%"
 BORDER="0"
-CELLPADDING="0"
+BGCOLOR="#000000"
+CELLPADDING="1"
 CELLSPACING="0"
 ><TR
 ><TH
-COLSPAN="3"
+COLSPAN="4"
 ALIGN="center"
->Gnome XML Library Reference Manual</TH
+><FONT
+COLOR="#FFFFFF"
+SIZE="5"
+>Gnome XML Library Reference Manual</FONT
+></TH
 ></TR
 ><TR
 ><TD
-WIDTH="10%"
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="left"
-VALIGN="bottom"
 ><A
 HREF="book1.html"
->Prev</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&#60;&#60;&#60; Previous Page</B
+></FONT
+></A
 ></TD
 ><TD
-WIDTH="80%"
+WIDTH="25%"
+BGCOLOR="#0000C0"
 ALIGN="center"
-VALIGN="bottom"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+><A
+HREF="book1.html"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Home</B
+></FONT
+></A
+></B
+></FONT
 ></TD
 ><TD
-WIDTH="10%"
+WIDTH="25%"
+BGCOLOR="#00C000"
+ALIGN="center"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&nbsp;</B
+></FONT
+></TD
+><TD
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="right"
-VALIGN="bottom"
 ><A
 HREF="gnome-xml-parser.html"
->Next</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Next Page &#62;&#62;&#62;</B
+></FONT
+></A
 ></TD
 ></TR
 ></TABLE
-><HR
-ALIGN="LEFT"
-WIDTH="100%"></DIV
+></DIV
 ><DIV
 CLASS="CHAPTER"
 ><H1
 ><A
 NAME="LIBXML"
->Chapter 1. Gnome XML Library</A
+>Gnome XML Library</A
 ></H1
-><DIV
-CLASS="TOC"
-><DL
-><DT
-><B
->Table of Contents</B
-></DT
-><DT
-><A
-HREF="gnome-xml-parser.html"
->parser</A
-> &#8212; one line description goes here.</DT
-><DT
-><A
-HREF="gnome-xml-tree.html"
->tree</A
-> &#8212; one line description goes here.</DT
-><DT
-><A
-HREF="gnome-xml-entities.html"
->entities</A
-> &#8212; one line description goes here.</DT
-><DT
-><A
-HREF="gnome-xml-valid.html"
->valid</A
-> &#8212; one line description goes here.</DT
-><DT
-><A
-HREF="gnome-xml-xml-error.html"
->xml-error</A
-> &#8212; one line description goes here.</DT
-><DT
-><A
-HREF="gnome-xml-parserinternals.html"
->parserInternals</A
-> &#8212; one line description goes here.</DT
-></DL
-></DIV
 >The parser general interfaces
     Manipulation the tree generated by the parser
     Routines for handling entities
@@ -112,55 +114,94 @@
   </DIV
 ><DIV
 CLASS="NAVFOOTER"
-><HR
-ALIGN="LEFT"
-WIDTH="100%"><TABLE
+><BR><BR><TABLE
 WIDTH="100%"
 BORDER="0"
-CELLPADDING="0"
+BGCOLOR="#000000"
+CELLPADDING="1"
 CELLSPACING="0"
 ><TR
 ><TD
-WIDTH="33%"
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="left"
-VALIGN="top"
 ><A
 HREF="book1.html"
->Prev</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&#60;&#60;&#60; Previous Page</B
+></FONT
+></A
 ></TD
 ><TD
-WIDTH="34%"
+WIDTH="25%"
+BGCOLOR="#0000C0"
 ALIGN="center"
-VALIGN="top"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
 ><A
 HREF="book1.html"
->Home</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Home</B
+></FONT
+></A
+></B
+></FONT
 ></TD
 ><TD
-WIDTH="33%"
+WIDTH="25%"
+BGCOLOR="#00C000"
+ALIGN="center"
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>&nbsp;</B
+></FONT
+></TD
+><TD
+WIDTH="25%"
+BGCOLOR="#C00000"
 ALIGN="right"
-VALIGN="top"
 ><A
 HREF="gnome-xml-parser.html"
->Next</A
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Next Page &#62;&#62;&#62;</B
+></FONT
+></A
 ></TD
 ></TR
 ><TR
 ><TD
-WIDTH="33%"
+COLSPAN="2"
 ALIGN="left"
-VALIGN="top"
->Gnome XML Library Reference Manual</TD
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>Gnome XML Library Reference Manual</B
+></FONT
+></TD
 ><TD
-WIDTH="34%"
-ALIGN="center"
-VALIGN="top"
->&nbsp;</TD
-><TD
-WIDTH="33%"
+COLSPAN="2"
 ALIGN="right"
-VALIGN="top"
->parser</TD
+><FONT
+COLOR="#FFFFFF"
+SIZE="3"
+><B
+>parser</B
+></FONT
+></TD
 ></TR
 ></TABLE
 ></DIV
diff --git a/doc/structure.fig b/doc/structure.fig
index 34f6237..4e7f087 100644
--- a/doc/structure.fig
+++ b/doc/structure.fig
@@ -227,9 +227,6 @@
 2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 1 0 2
 	1 1 1.00 60.00 120.00
 	 2325 2775 1725 3375
-2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 1 0 2
-	1 1 1.00 60.00 120.00
-	 2250 3600 3000 3600
 2 4 0 1 0 7 0 0 -1 0.000 0 0 7 0 0 5
 	 11250 4725 11250 4050 10275 4050 10275 4725 11250 4725
 2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 1 0 2
@@ -282,6 +279,9 @@
 2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 1 0 2
 	1 1 1.00 60.00 120.00
 	 3000 4875 2625 4875
+2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 1 0 2
+	1 1 1.00 60.00 120.00
+	 5100 2775 3525 3375
 4 0 0 0 0 0 16 0.0000 4 150 420 3000 2250 next\001
 4 0 0 0 0 0 16 0.0000 4 180 450 3975 2775 prev\001
 4 0 0 0 0 0 16 0.0000 4 210 630 5100 2025 parent\001
diff --git a/doc/xml.html b/doc/xml.html
index 5500349..03abc15 100644
--- a/doc/xml.html
+++ b/doc/xml.html
@@ -20,7 +20,7 @@
 XML is a standard for markup based structured documents, here is <a
 name="example">an example</a>:</p>
 <pre>&lt;?xml version="1.0"?>
-&lt;EXAMPLE prop1="gnome is great" prop2="&amp;linux; too">
+&lt;EXAMPLE prop1="gnome is great" prop2="&amp;amp; linux too">
   &lt;head>
    &lt;title>Welcome to Gnome&lt;/title>
   &lt;/head>
@@ -36,7 +36,7 @@
 about it's encoding. Then the document is a text format whose structure is
 specified by tags between brackets. <strong>Each tag opened have to be
 closed</strong> XML is pedantic about this, not that for example the image
-tage has no content (just an attribute) and is closed by ending up the tag
+tag has no content (just an attribute) and is closed by ending up the tag
 with <code>/></code>.</p>
 
 <h2>The tree output</h2>
@@ -285,7 +285,213 @@
 <p>
 This should help greatly doing things like modifying a gnumeric spreadsheet
 embedded in a GWP document for example.</p>
+
+<h3><a name="Example">A real example</a></h3>
 <p>
+Here is a real size example, where the actual content of the application data
+is not kept in the DOM tree but uses internal structures. It is based on
+a proposal to keep a database of jobs related to Gnome, with an XML based
+storage structure. Here is an <a href="gjobs.xml">XML encoded jobs base</a>:
+<pre>
+&lt;?xml version="1.0"?>
+&lt;gjob:Helping xmlns:gjob="http://www.gnome.org/some-location">
+  &lt;gjob:Jobs>
+
+    &lt;gjob:Job>
+      &lt;gjob:Project ID="3"/>
+      &lt;gjob:Application>GBackup&lt;/gjob:Application>
+      &lt;gjob:Category>Development&lt;/gjob:Category>
+
+      &lt;gjob:Update>
+	&lt;gjob:Status>Open&lt;/gjob:Status>
+	&lt;gjob:Modified>Mon, 07 Jun 1999 20:27:45 -0400 MET DST&lt;/gjob:Modified>
+        &lt;gjob:Salary>USD 0.00&lt;/gjob:Salary>
+      &lt;/gjob:Update>
+
+      &lt;gjob:Developers>
+        &lt;gjob:Developer>
+        &lt;/gjob:Developer>
+      &lt;/gjob:Developers>
+
+      &lt;gjob:Contact>
+        &lt;gjob:Person>Nathan Clemons&lt;/gjob:Person>
+	&lt;gjob:Email>nathan@windsofstorm.net&lt;/gjob:Email>
+        &lt;gjob:Company>
+	&lt;/gjob:Company>
+        &lt;gjob:Organisation>
+	&lt;/gjob:Organisation>
+        &lt;gjob:Webpage>
+	&lt;/gjob:Webpage>
+	&lt;gjob:Snailmail>
+	&lt;/gjob:Snailmail>
+	&lt;gjob:Phone>
+	&lt;/gjob:Phone>
+      &lt;/gjob:Contact>
+
+      &lt;gjob:Requirements>
+      The program should be released as free software, under the GPL.
+      &lt;/gjob:Requirements>
+
+      &lt;gjob:Skills>
+      &lt;/gjob:Skills>
+
+      &lt;gjob:Details>
+      A GNOME based system that will allow a superuser to configure 
+      compressed and uncompressed files and/or file systems to be backed 
+      up with a supported media in the system.  This should be able to 
+      perform via find commands generating a list of files that are passed 
+      to tar, dd, cpio, cp, gzip, etc., to be directed to the tape machine 
+      or via operations performed on the filesystem itself. Email 
+      notification and GUI status display very important.
+      &lt;/gjob:Details>
+
+    &lt;/gjob:Job>
+
+  &lt;/gjob:Jobs>
+&lt;/gjob:Helping>
+
+</pre>
+<p>
+While loading the XML file into an internal DOM tree is a matter of calling
+only a couple of functions, browsing the tree to gather the informations
+and generate the internals structures is harder, and more error prone. 
 </p>
+<p>
+The suggested principle is to be tolerant with respect to the input
+structure. For example the ordering of the attributes is not significant,
+Cthe XML specification is clear about it. It's also usually a good idea
+to not be dependant of the orders of the childs of a given node, unless it
+really makes things harder. Here is some code to parse the informations
+for a person:
+</p>
+<pre>
+/*
+ * A person record
+ */
+typedef struct person {
+    char *name;
+    char *email;
+    char *company;
+    char *organisation;
+    char *smail;
+    char *webPage;
+    char *phone;
+} person, *personPtr;
+
+/*
+ * And the code needed to parse it
+ */
+personPtr parsePerson(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur) {
+    personPtr ret = NULL;
+
+DEBUG("parsePerson\n");
+    /*
+     * allocate the struct
+     */
+    ret = (personPtr) malloc(sizeof(person));
+    if (ret == NULL) {
+        fprintf(stderr,"out of memory\n");
+	return(NULL);
+    }
+    memset(ret, 0, sizeof(person));
+
+    /* We don't care what the top level element name is */
+    cur = cur->childs;
+    while (cur != NULL) {
+        if ((!strcmp(cur->name, "Person")) &amp;&amp; (cur->ns == ns))
+	    ret->name = xmlNodeListGetString(doc, cur->childs, 1);
+        if ((!strcmp(cur->name, "Email")) &amp;&amp; (cur->ns == ns))
+	    ret->email = xmlNodeListGetString(doc, cur->childs, 1);
+	cur = cur->next;
+    }
+
+    return(ret);
+}
+</pre>
+<p>
+Here is a couple of things to notice:</p>
+<ul>
+<li> Usually a recursive parsing style is the more convenient one,
+XML data being by nature subject to repetitive constructs and usualy exibit
+highly stuctured patterns.
+<li> The two arguments of type <em>xmlDocPtr</em> and <em>xmlNsPtr</em>, i.e.
+the pointer to the global XML document and the namespace reserved to the
+application. Document wide information are needed for example to decode
+entities and it's a good coding practice to define a namespace for your
+application set of data and test that the element and attributes you're
+analyzing actually pertains to your application space. This is done by a simple
+equality test (cur->ns == ns).
+<li> To retrieve text and attributes value, it is suggested to use
+the function <em>xmlNodeListGetString</em> to gather all the text and
+entity reference nodes generated by the DOM output and produce an
+single text string.
+</ul>
+<p>
+Here is another piece of code used to parse another level of the structure:
+</p>
+<pre>
+/*
+ * a Description for a Job
+ */
+typedef struct job {
+    char *projectID;
+    char *application;
+    char *category;
+    personPtr contact;
+    int nbDevelopers;
+    personPtr developers[100]; /* using dynamic alloc is left as an exercise */
+} job, *jobPtr;
+
+/*
+ * And the code needed to parse it
+ */
+jobPtr parseJob(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur) {
+    jobPtr ret = NULL;
+
+DEBUG("parseJob\n");
+    /*
+     * allocate the struct
+     */
+    ret = (jobPtr) malloc(sizeof(job));
+    if (ret == NULL) {
+        fprintf(stderr,"out of memory\n");
+	return(NULL);
+    }
+    memset(ret, 0, sizeof(job));
+
+    /* We don't care what the top level element name is */
+    cur = cur->childs;
+    while (cur != NULL) {
+        
+        if ((!strcmp(cur->name, "Project")) &amp;&amp; (cur->ns == ns)) {
+	    ret->projectID = xmlGetProp(cur, "ID");
+	    if (ret->projectID == NULL) {
+		fprintf(stderr, "Project has no ID\n");
+	    }
+	}
+        if ((!strcmp(cur->name, "Application")) &amp;&amp; (cur->ns == ns))
+	    ret->application = xmlNodeListGetString(doc, cur->childs, 1);
+        if ((!strcmp(cur->name, "Category")) &amp;&amp; (cur->ns == ns))
+	    ret->category = xmlNodeListGetString(doc, cur->childs, 1);
+        if ((!strcmp(cur->name, "Contact")) &amp;&amp; (cur->ns == ns))
+	    ret->contact = parsePerson(doc, ns, cur);
+	cur = cur->next;
+    }
+
+    return(ret);
+}
+</pre>
+<p>
+One can notice that once used to it, writing this kind of code
+is quite simple, but boring. Ultimately, it could be possble to write
+stubbers taking either C data structure definitions, a set of XML examples
+or an XML DTD and produce the code needed to import and export the
+content between C data and XML storage. This is left as an exercise to
+the reader :-)</p>
+<p>
+Feel free to use <a href="gjobread.c">the code for the full C parsing
+example</a> as a template,
+
+<a href="mailto:Daniel.Veillard@w3.org">Daniel Veillard</a>
 </body>
 </html>
diff --git a/encoding.c b/encoding.c
index a9a5fa7..2184f61 100644
--- a/encoding.c
+++ b/encoding.c
@@ -12,7 +12,7 @@
  * [US-ASCII]     Coded Character Set--7-bit American Standard Code for
  *                Information Interchange, ANSI X3.4-1986.
  *
- * Original code from "Martin J. Duerst" <duerst@w3.org>
+ * Original code for IsoLatin1 and UTF-16 by "Martin J. Duerst" <duerst@w3.org>
  *
  * See Copyright for the status of this software.
  *
@@ -20,6 +20,8 @@
  */
 
 #include <ctype.h>
+#include <string.h>
+#include <stdio.h>
 #include "encoding.h"
 
 /*
@@ -311,3 +313,168 @@
     if (!strcmp(upper, "EUC-JP")) return(XML_CHAR_ENCODING_EUC_JP);
     return(XML_CHAR_ENCODING_ERROR);
 }
+
+/****************************************************************
+ *								*
+ *		Char encoding handlers				*
+ *								*
+ ****************************************************************/
+
+/* the size should be growable, but it's not a big deal ... */
+#define MAX_ENCODING_HANDLERS 50
+static xmlCharEncodingHandlerPtr *handlers = NULL;
+static int nbCharEncodingHandler = 0;
+
+/*
+ * The default is UTF-8 for XML, that's also the default used for the
+ * parser internals, so the default encoding handler is NULL
+ */
+
+static xmlCharEncodingHandlerPtr xmlDefaultCharEncodingHandler = NULL;
+
+/**
+ * xmlNewCharEncodingHandler:
+ * @name:  the encoding name, in UTF-8 format (ASCCI actually)
+ * @input:  the xmlCharEncodingInputFunc to read that encoding
+ * @output:  the xmlCharEncodingOutputFunc to write that encoding
+ *
+ * Create and registers an xmlCharEncodingHandler.
+ * Returns the xmlCharEncodingHandlerPtr created (or NULL in case of error).
+ */
+xmlCharEncodingHandlerPtr
+xmlNewCharEncodingHandler(const char *name, xmlCharEncodingInputFunc input,
+                          xmlCharEncodingOutputFunc output) {
+    xmlCharEncodingHandlerPtr handler;
+    char upper[500];
+    int i;
+    char *up = 0;
+
+    /*
+     * Keep only the uppercase version of the encoding.
+     */
+    if (name == NULL) {
+        fprintf(stderr, "xmlNewCharEncodingHandler : no name !\n");
+	return(NULL);
+    }
+    for (i = 0;i < 499;i++) {
+        upper[i] = toupper(name[i]);
+	if (upper[i] == 0) break;
+    }
+    upper[i] = 0;
+    up = strdup(upper);
+    if (up == NULL) {
+        fprintf(stderr, "xmlNewCharEncodingHandler : out of memory !\n");
+	return(NULL);
+    }
+
+    /*
+     * allocate and fill-up an handler block.
+     */
+    handler = (xmlCharEncodingHandlerPtr)
+              malloc(sizeof(xmlCharEncodingHandler));
+    if (handler == NULL) {
+        fprintf(stderr, "xmlNewCharEncodingHandler : out of memory !\n");
+	return(NULL);
+    }
+    handler->input = input;
+    handler->output = output;
+    handler->name = up;
+
+    /*
+     * registers and returns the handler.
+     */
+    xmlRegisterCharEncodingHandler(handler);
+    return(handler);
+}
+
+/**
+ * xmlInitCharEncodingHandlers:
+ *
+ * Initialize the char encoding support, it registers the default
+ * encoding supported.
+ * NOTE: while public theis function usually don't need to be called
+ *       in normal processing.
+ */
+void
+xmlInitCharEncodingHandlers(void) {
+    if (handlers != NULL) return;
+
+    handlers = (xmlCharEncodingHandlerPtr *)
+        malloc(MAX_ENCODING_HANDLERS * sizeof(xmlCharEncodingHandlerPtr));
+
+    if (handlers == NULL) {
+        fprintf(stderr, "xmlInitCharEncodingHandlers : out of memory !\n");
+	return;
+    }
+    xmlNewCharEncodingHandler("UTF-8", NULL, NULL);
+    xmlNewCharEncodingHandler("UTF-16", UTF16ToUTF8, UTF8ToUTF16);
+    xmlNewCharEncodingHandler("ISO-8859-1", isolat1ToUTF8, UTF8Toisolat1);
+}
+
+/**
+ * xmlRegisterCharEncodingHandler:
+ * @handler:  the xmlCharEncodingHandlerPtr handler block
+ *
+ * Register the char encoding handler, surprizing, isn't it ?
+ */
+void
+xmlRegisterCharEncodingHandler(xmlCharEncodingHandlerPtr handler) {
+    if (handlers == NULL) xmlInitCharEncodingHandlers();
+    if (handler == NULL) {
+        fprintf(stderr, "xmlRegisterCharEncodingHandler: NULL handler !\n");
+	return;
+    }
+
+    if (nbCharEncodingHandler >= MAX_ENCODING_HANDLERS) {
+        fprintf(stderr, 
+	"xmlRegisterCharEncodingHandler: Too many handler registered\n");
+        fprintf(stderr, "\tincrease MAX_ENCODING_HANDLERS : %s\n", __FILE__);
+	return;
+    }
+    handlers[nbCharEncodingHandler++] = handler;
+}
+
+/**
+ * xmlGetCharEncodingHandler:
+ * @enc:  an xmlCharEncoding value.
+ *
+ * Search in the registrered set the handler able to read/write that encoding.
+ *
+ * Returns the handler or NULL if not found
+ */
+xmlCharEncodingHandlerPtr
+xmlGetCharEncodingHandler(xmlCharEncoding enc) {
+    if (handlers == NULL) xmlInitCharEncodingHandlers();
+    return(NULL);
+}
+
+/**
+ * xmlGetCharEncodingHandler:
+ * @enc:  a string describing the char encoding.
+ *
+ * Search in the registrered set the handler able to read/write that encoding.
+ *
+ * Returns the handler or NULL if not found
+ */
+xmlCharEncodingHandlerPtr
+xmlFindCharEncodingHandler(const char *name) {
+    char upper[500];
+    int i;
+
+    if (handlers == NULL) xmlInitCharEncodingHandlers();
+    if (name == NULL) return(xmlDefaultCharEncodingHandler);
+    if (name[0] == 0) return(xmlDefaultCharEncodingHandler);
+
+    for (i = 0;i < 499;i++) {
+        upper[i] = toupper(name[i]);
+	if (upper[i] == 0) break;
+    }
+    upper[i] = 0;
+
+    for (i = 0;i < nbCharEncodingHandler; i++)
+        if (!strcmp(name, handlers[i]->name))
+	    return(handlers[i]);
+
+    return(NULL);
+}
+
diff --git a/encoding.h b/encoding.h
index 3c5cee0..227abaf 100644
--- a/encoding.h
+++ b/encoding.h
@@ -25,6 +25,9 @@
 extern "C" {
 #endif
 
+/**
+ * Predefined values for some standard encodings
+ */
 typedef enum {
     XML_CHAR_ENCODING_ERROR=   -1, /* No char encoding detected */
     XML_CHAR_ENCODING_NONE=	0, /* No char encoding detected */
@@ -51,8 +54,57 @@
     XML_CHAR_ENCODING_EUC_JP=   21,/* EUC-JP */
 } xmlCharEncoding;
 
-extern xmlCharEncoding xmlDetectCharEncoding(const unsigned char* in);
-extern xmlCharEncoding xmlParseCharEncoding(const char* name);
+/**
+ * xmlCharEncodingInputFunc:
+ * @out:  a pointer ot an array of bytes to store the UTF-8 result
+ * @outlen:  the lenght of @out
+ * @in:  a pointer ot an array of chars in the original encoding
+ * @inlen:  the lenght of @in
+ *
+ * Take a block of chars in the original encoding and try to convert
+ * it to an UTF-8 block of chars out.
+ *
+ * Returns the number of byte written, or -1 by lack of space.
+ */
+typedef int (* xmlCharEncodingInputFunc)(unsigned char* out, int outlen,
+                                         unsigned char* in, int inlen);
+
+
+/**
+ * xmlCharEncodingInputFunc:
+ * @out:  a pointer ot an array of bytes to store the result
+ * @outlen:  the lenght of @out
+ * @in:  a pointer ot an array of UTF-8 chars
+ * @inlen:  the lenght of @in
+ *
+ * Take a block of UTF-8 chars in and try to convert it to an other
+ * encoding.
+ *
+ * Returns the number of byte written, or -1 by lack of space, or -2
+ *     if the transcoding failed.
+ */
+typedef int (* xmlCharEncodingOutputFunc)(unsigned char* out, int outlen,
+                                          unsigned char* in, int inlen);
+
+/*
+ * Block defining the handlers for non UTF-8 encodings.
+ */
+
+typedef struct xmlCharEncodingHandler {
+    char                       *name;
+    xmlCharEncodingInputFunc   input;
+    xmlCharEncodingOutputFunc output;
+} xmlCharEncodingHandler;
+typedef xmlCharEncodingHandler *xmlCharEncodingHandlerPtr;
+
+void xmlRegisterCharEncodingHandler(xmlCharEncodingHandlerPtr handler);
+xmlCharEncodingHandlerPtr xmlGetCharEncodingHandler(xmlCharEncoding enc);
+xmlCharEncodingHandlerPtr xmlFindCharEncodingHandler(const char *name);
+
+xmlCharEncoding xmlDetectCharEncoding(const unsigned char* in);
+xmlCharEncoding xmlParseCharEncoding(const char* name);
+
+void xmlInitCharEncodingHandlers(void);
 
 #ifdef __cplusplus
 }
diff --git a/entities.c b/entities.c
index c61f81d..15d9c71 100644
--- a/entities.c
+++ b/entities.c
@@ -30,19 +30,6 @@
 xmlEntitiesTablePtr xmlPredefinedEntities = NULL;
 
 /*
- * Macro used to grow the current buffer.
- */
-#define growBuffer() {							\
-    buffer_size *= 2;							\
-    buffer = (CHAR *) realloc(buffer, buffer_size * sizeof(CHAR));	\
-    if (buffer == NULL) {						\
-	perror("realloc failed");					\
-	exit(1);							\
-    }									\
-}
-
-
-/*
  * xmlFreeEntity : clean-up an entity record.
  */
 void xmlFreeEntity(xmlEntityPtr entity) {
@@ -301,6 +288,25 @@
     (((c) == 0x09) || ((c) == 0x0a) || ((c) == 0x0d) ||			\
      (((c) >= 0x20) && ((c) != 0xFFFE) && ((c) != 0xFFFF)))
 
+/*
+ * A buffer used for converting entities to their equivalent and back.
+ *
+ * TODO: remove this, this helps performances but forbid reentrancy in a 
+ *       stupid way.
+ */
+static int buffer_size = 0;
+static CHAR *buffer = NULL;
+
+void growBuffer(void) {
+    buffer_size *= 2;
+    buffer = (CHAR *) realloc(buffer, buffer_size * sizeof(CHAR));
+    if (buffer == NULL) {
+        perror("realloc failed");
+        exit(1);
+    }
+}
+
+
 /**
  * xmlEncodeEntities:
  * @doc:  the document containing the string
@@ -312,10 +318,142 @@
  * TODO !!!! Once moved to UTF-8 internal encoding, the encoding of non-ascii
  *           get erroneous.
  *
+ * TODO This routine is not reentrant, the interface
+ *      should not be modified though.
+ *
+ * People must migrate their code to xmlEncodeEntitiesReentrant !
+ * 
+ * Returns A newly allocated string with the substitution done.
+ */
+const CHAR *
+xmlEncodeEntities(xmlDocPtr doc, const CHAR *input) {
+    const CHAR *cur = input;
+    CHAR *out = buffer;
+
+    if (input == NULL) return(NULL);
+    if (buffer == NULL) {
+        buffer_size = 1000;
+        buffer = (CHAR *) malloc(buffer_size * sizeof(CHAR));
+	if (buffer == NULL) {
+	    perror("malloc failed");
+            exit(1);
+	}
+	out = buffer;
+    }
+    while (*cur != '\0') {
+        if (out - buffer > buffer_size - 100) {
+	    int index = out - buffer;
+
+	    growBuffer();
+	    out = &buffer[index];
+	}
+
+	/*
+	 * By default one have to encode at least '<', '>', '"' and '&' !
+	 */
+	if (*cur == '<') {
+	    *out++ = '&';
+	    *out++ = 'l';
+	    *out++ = 't';
+	    *out++ = ';';
+	} else if (*cur == '>') {
+	    *out++ = '&';
+	    *out++ = 'g';
+	    *out++ = 't';
+	    *out++ = ';';
+	} else if (*cur == '&') {
+	    *out++ = '&';
+	    *out++ = 'a';
+	    *out++ = 'm';
+	    *out++ = 'p';
+	    *out++ = ';';
+	} else if (*cur == '"') {
+	    *out++ = '&';
+	    *out++ = 'q';
+	    *out++ = 'u';
+	    *out++ = 'o';
+	    *out++ = 't';
+	    *out++ = ';';
+	} else if (*cur == '\'') {
+	    *out++ = '&';
+	    *out++ = 'a';
+	    *out++ = 'p';
+	    *out++ = 'o';
+	    *out++ = 's';
+	    *out++ = ';';
+	} else if (((*cur >= 0x20) && (*cur < 0x80)) ||
+	    (*cur == '\n') || (*cur == '\r') || (*cur == '\t')) {
+	    /*
+	     * default case, just copy !
+	     */
+	    *out++ = *cur;
+#ifndef USE_UTF_8
+	} else if ((sizeof(CHAR) == 1) && (*cur >= 0x80)) {
+	    char buf[10], *ptr;
+#ifdef HAVE_SNPRINTF
+	    snprintf(buf, 9, "&#%d;", *cur);
+#else
+	    sprintf(buf, "&#%d;", *cur);
+#endif
+            ptr = buf;
+	    while (*ptr != 0) *out++ = *ptr++;
+#endif
+	} else if (IS_CHAR(*cur)) {
+	    char buf[10], *ptr;
+
+#ifdef HAVE_SNPRINTF
+	    snprintf(buf, 9, "&#%d;", *cur);
+#else
+	    sprintf(buf, "&#%d;", *cur);
+#endif
+            ptr = buf;
+	    while (*ptr != 0) *out++ = *ptr++;
+	}
+#if 0
+	else {
+	    /*
+	     * default case, this is not a valid char !
+	     * Skip it...
+	     */
+	    fprintf(stderr, "xmlEncodeEntities: invalid char %d\n", (int) *cur);
+	}
+#endif
+	cur++;
+    }
+    *out++ = 0;
+    return(buffer);
+}
+
+/*
+ * Macro used to grow the current buffer.
+ */
+#define growBufferReentrant() {						\
+    buffer_size *= 2;							\
+    buffer = (CHAR *) realloc(buffer, buffer_size * sizeof(CHAR));	\
+    if (buffer == NULL) {						\
+	perror("realloc failed");					\
+	exit(1);							\
+    }									\
+}
+
+
+/**
+ * xmlEncodeEntitiesReentrant:
+ * @doc:  the document containing the string
+ * @input:  A string to convert to XML.
+ *
+ * Do a global encoding of a string, replacing the predefined entities
+ * and non ASCII values with their entities and CharRef counterparts.
+ * Contrary to xmlEncodeEntities, this routine is reentrant, and result
+ * must be deallocated.
+ *
+ * TODO !!!! Once moved to UTF-8 internal encoding, the encoding of non-ascii
+ *           get erroneous.
+ *
  * Returns A newly allocated string with the substitution done.
  */
 CHAR *
-xmlEncodeEntities(xmlDocPtr doc, const CHAR *input) {
+xmlEncodeEntitiesReentrant(xmlDocPtr doc, const CHAR *input) {
     const CHAR *cur = input;
     CHAR *buffer = NULL;
     CHAR *out = NULL;
@@ -338,7 +476,7 @@
         if (out - buffer > buffer_size - 100) {
 	    int index = out - buffer;
 
-	    growBuffer();
+	    growBufferReentrant();
 	    out = &buffer[index];
 	}
 
diff --git a/entities.h b/entities.h
index b653542..8604057 100644
--- a/entities.h
+++ b/entities.h
@@ -66,7 +66,8 @@
 xmlEntityPtr xmlGetPredefinedEntity(const CHAR *name);
 xmlEntityPtr xmlGetDocEntity(xmlDocPtr doc, const CHAR *name);
 xmlEntityPtr xmlGetDtdEntity(xmlDocPtr doc, const CHAR *name);
-CHAR *xmlEncodeEntities(xmlDocPtr doc, const CHAR *input);
+const CHAR *xmlEncodeEntities(xmlDocPtr doc, const CHAR *input);
+CHAR *xmlEncodeEntitiesReentrant(xmlDocPtr doc, const CHAR *input);
 xmlEntitiesTablePtr xmlCreateEntitiesTable(void);
 xmlEntitiesTablePtr xmlCopyEntitiesTable(xmlEntitiesTablePtr table);
 void xmlFreeEntitiesTable(xmlEntitiesTablePtr table);
diff --git a/include/libxml/encoding.h b/include/libxml/encoding.h
index 3c5cee0..227abaf 100644
--- a/include/libxml/encoding.h
+++ b/include/libxml/encoding.h
@@ -25,6 +25,9 @@
 extern "C" {
 #endif
 
+/**
+ * Predefined values for some standard encodings
+ */
 typedef enum {
     XML_CHAR_ENCODING_ERROR=   -1, /* No char encoding detected */
     XML_CHAR_ENCODING_NONE=	0, /* No char encoding detected */
@@ -51,8 +54,57 @@
     XML_CHAR_ENCODING_EUC_JP=   21,/* EUC-JP */
 } xmlCharEncoding;
 
-extern xmlCharEncoding xmlDetectCharEncoding(const unsigned char* in);
-extern xmlCharEncoding xmlParseCharEncoding(const char* name);
+/**
+ * xmlCharEncodingInputFunc:
+ * @out:  a pointer ot an array of bytes to store the UTF-8 result
+ * @outlen:  the lenght of @out
+ * @in:  a pointer ot an array of chars in the original encoding
+ * @inlen:  the lenght of @in
+ *
+ * Take a block of chars in the original encoding and try to convert
+ * it to an UTF-8 block of chars out.
+ *
+ * Returns the number of byte written, or -1 by lack of space.
+ */
+typedef int (* xmlCharEncodingInputFunc)(unsigned char* out, int outlen,
+                                         unsigned char* in, int inlen);
+
+
+/**
+ * xmlCharEncodingInputFunc:
+ * @out:  a pointer ot an array of bytes to store the result
+ * @outlen:  the lenght of @out
+ * @in:  a pointer ot an array of UTF-8 chars
+ * @inlen:  the lenght of @in
+ *
+ * Take a block of UTF-8 chars in and try to convert it to an other
+ * encoding.
+ *
+ * Returns the number of byte written, or -1 by lack of space, or -2
+ *     if the transcoding failed.
+ */
+typedef int (* xmlCharEncodingOutputFunc)(unsigned char* out, int outlen,
+                                          unsigned char* in, int inlen);
+
+/*
+ * Block defining the handlers for non UTF-8 encodings.
+ */
+
+typedef struct xmlCharEncodingHandler {
+    char                       *name;
+    xmlCharEncodingInputFunc   input;
+    xmlCharEncodingOutputFunc output;
+} xmlCharEncodingHandler;
+typedef xmlCharEncodingHandler *xmlCharEncodingHandlerPtr;
+
+void xmlRegisterCharEncodingHandler(xmlCharEncodingHandlerPtr handler);
+xmlCharEncodingHandlerPtr xmlGetCharEncodingHandler(xmlCharEncoding enc);
+xmlCharEncodingHandlerPtr xmlFindCharEncodingHandler(const char *name);
+
+xmlCharEncoding xmlDetectCharEncoding(const unsigned char* in);
+xmlCharEncoding xmlParseCharEncoding(const char* name);
+
+void xmlInitCharEncodingHandlers(void);
 
 #ifdef __cplusplus
 }
diff --git a/include/libxml/entities.h b/include/libxml/entities.h
index b653542..8604057 100644
--- a/include/libxml/entities.h
+++ b/include/libxml/entities.h
@@ -66,7 +66,8 @@
 xmlEntityPtr xmlGetPredefinedEntity(const CHAR *name);
 xmlEntityPtr xmlGetDocEntity(xmlDocPtr doc, const CHAR *name);
 xmlEntityPtr xmlGetDtdEntity(xmlDocPtr doc, const CHAR *name);
-CHAR *xmlEncodeEntities(xmlDocPtr doc, const CHAR *input);
+const CHAR *xmlEncodeEntities(xmlDocPtr doc, const CHAR *input);
+CHAR *xmlEncodeEntitiesReentrant(xmlDocPtr doc, const CHAR *input);
 xmlEntitiesTablePtr xmlCreateEntitiesTable(void);
 xmlEntitiesTablePtr xmlCopyEntitiesTable(xmlEntitiesTablePtr table);
 void xmlFreeEntitiesTable(xmlEntitiesTablePtr table);
diff --git a/include/libxml/parser.h b/include/libxml/parser.h
index aaab58c..0b8d22f 100644
--- a/include/libxml/parser.h
+++ b/include/libxml/parser.h
@@ -10,6 +10,7 @@
 #define __XML_PARSER_H__
 
 #include "tree.h"
+#include "xmlIO.h"
 
 #ifdef __cplusplus
 extern "C" {
@@ -22,6 +23,9 @@
 
 typedef void (* xmlParserInputDeallocate)(CHAR *);
 typedef struct xmlParserInput {
+    /* Input buffer */
+    xmlParserInputBufferPtr buf;      /* UTF-8 encoded buffer */
+
     const char *filename;             /* The file analyzed, if any */
     const CHAR *base;                 /* Base of the array to parse */
     const CHAR *cur;                  /* Current char being parsed */
@@ -169,8 +173,10 @@
 
 /*
  * Global variables: just the SAX interface tables we are looking for full
- *      reentrancy of the code !
+ *      reentrancy of the code and version infos.
  */
+extern const char *xmlParserVersion;
+
 extern xmlSAXLocator xmlDefaultSAXLocator;
 extern xmlSAXHandler xmlDefaultSAXHandler;
 
diff --git a/include/libxml/parserInternals.h b/include/libxml/parserInternals.h
index 6a31c51..b107718 100644
--- a/include/libxml/parserInternals.h
+++ b/include/libxml/parserInternals.h
@@ -614,10 +614,10 @@
 xmlParseDocTypeDecl(xmlParserCtxtPtr ctxt);
 CHAR *
 xmlParseAttribute(xmlParserCtxtPtr ctxt, CHAR **value);
-void
+CHAR *
 xmlParseStartTag(xmlParserCtxtPtr ctxt);
 void
-xmlParseEndTag(xmlParserCtxtPtr ctxt);
+xmlParseEndTag(xmlParserCtxtPtr ctxt, CHAR *tagname);
 void
 xmlParseCDSect(xmlParserCtxtPtr ctxt);
 void
diff --git a/include/libxml/xmlIO.h b/include/libxml/xmlIO.h
new file mode 100644
index 0000000..d6edcae
--- /dev/null
+++ b/include/libxml/xmlIO.h
@@ -0,0 +1,40 @@
+/*
+ * xmlIO.h : interface for the I/O interfaces used by the parser
+ *
+ * See Copyright for the status of this software.
+ *
+ * Daniel.Veillard@w3.org
+ */
+
+#ifndef __XML_IO_H__
+#define __XML_IO_H__
+
+#include <stdio.h>
+#include "tree.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct xmlParserInputBuffer {
+    /* Inputs */
+    FILE          *file;    /* Input on file handler */
+    int              fd;    /* Input on a file descriptor */
+/**********
+#ifdef HAVE_ZLIB_H
+    gzFile       gzfile;     Input on a compressed stream
+#endif
+ */
+    
+    
+    xmlBufferPtr buffer;    /* Local buffer encoded in  UTF-8 */
+
+} xmlParserInputBuffer;
+
+typedef xmlParserInputBuffer *xmlParserInputBufferPtr;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __XML_IO_H__ */
diff --git a/parser.c b/parser.c
index 7a627ed..e551b05 100644
--- a/parser.c
+++ b/parser.c
@@ -34,6 +34,8 @@
 #include "valid.h"
 #include "parserInternals.h"
 
+const char *xmlParserVersion = LIBXML_VERSION;
+
 /************************************************************************
  *									*
  * 		Parser stacks related functions and macros		*
@@ -2845,6 +2847,9 @@
 	        ctxt->sax->elementDecl(ctxt->userData, name, ret,
 		                       content);
 	}
+	if (content != NULL) {
+	    xmlFreeElementContent(content);
+	}
 	if (name != NULL) {
 	    free(name);
 	}
@@ -3162,7 +3167,7 @@
  */
 xmlEntityPtr
 xmlParseEntityRef(xmlParserCtxtPtr ctxt) {
-    const CHAR *q;
+    const CHAR *q; /* !!!!!!!!!!! Unused !!!!!!!!!! */
     CHAR *name;
     xmlEntityPtr ent = NULL;
 
@@ -3482,9 +3487,11 @@
  * [NS 8] STag ::= '<' QName (S Attribute)* S? '>'
  *
  * [NS 10] EmptyElement ::= '<' QName (S Attribute)* S? '/>'
+ *
+ * Returns the element name parsed
  */
 
-void
+CHAR *
 xmlParseStartTag(xmlParserCtxtPtr ctxt) {
     CHAR *name;
     CHAR *attname;
@@ -3494,7 +3501,7 @@
     int maxatts = 0;
     int i;
 
-    if (CUR != '<') return;
+    if (CUR != '<') return(NULL);
     NEXT;
 
     name = xmlParseName(ctxt);
@@ -3503,7 +3510,7 @@
 	    ctxt->sax->error(ctxt->userData, 
 	     "xmlParseStartTag: invalid element name\n");
 	ctxt->wellFormed = 0;
-        return;
+        return(NULL);
     }
 
     /*
@@ -3543,7 +3550,7 @@
 		if (atts == NULL) {
 		    fprintf(stderr, "malloc of %d byte failed\n",
 			    maxatts * sizeof(CHAR *));
-		    return;
+		    return(NULL);
 		}
 	    } else if (nbatts + 2 < maxatts) {
 	        maxatts *= 2;
@@ -3551,7 +3558,7 @@
 		if (atts == NULL) {
 		    fprintf(stderr, "realloc of %d byte failed\n",
 			    maxatts * sizeof(CHAR *));
-		    return;
+		    return(NULL);
 		}
 	    }
 	    atts[nbatts++] = attname;
@@ -3576,16 +3583,17 @@
     if ((ctxt->sax != NULL) && (ctxt->sax->startElement != NULL))
         ctxt->sax->startElement(ctxt->userData, name, atts);
 
-    free(name);
     if (atts != NULL) {
         for (i = 0;i < nbatts;i++) free((CHAR *) atts[i]);
 	free(atts);
     }
+    return(name);
 }
 
 /**
  * xmlParseEndTag:
  * @ctxt:  an XML parser context
+ * @tagname:  the tag name as parsed in the opening tag.
  *
  * parse an end of tag
  *
@@ -3597,7 +3605,7 @@
  */
 
 void
-xmlParseEndTag(xmlParserCtxtPtr ctxt) {
+xmlParseEndTag(xmlParserCtxtPtr ctxt, CHAR *tagname) {
     CHAR *name;
 
     if ((CUR != '<') || (NXT(1) != '/')) {
@@ -3622,6 +3630,16 @@
 	NEXT;
 
     /*
+     * Well formedness constraints, opening and closing must match.
+     */
+    if (xmlStrcmp(name, tagname)) {
+	if ((ctxt->sax != NULL) && (ctxt->sax->error != NULL))
+	    ctxt->sax->error(ctxt->userData,
+	     "Opening and ending tag mismatch: %s and %s\n", tagname, name);
+	ctxt->wellFormed = 0;
+    }
+
+    /*
      * SAX: End of Tag
      */
     if ((ctxt->sax != NULL) && (ctxt->sax->endElement != NULL))
@@ -3792,13 +3810,17 @@
 void
 xmlParseElement(xmlParserCtxtPtr ctxt) {
     const CHAR *openTag = CUR_PTR;
+    CHAR *name;
     xmlParserNodeInfo node_info;
 
     /* Capture start position */
     node_info.begin_pos = CUR_PTR - ctxt->input->base;
     node_info.begin_line = ctxt->input->line;
 
-    xmlParseStartTag(ctxt);
+    name = xmlParseStartTag(ctxt);
+    if (name == NULL) {
+        return;
+    }
 
     /*
      * Check for an Empty Element.
@@ -3806,7 +3828,8 @@
     if ((CUR == '/') && (NXT(1) == '>')) {
         SKIP(2);
 	if ((ctxt->sax != NULL) && (ctxt->sax->endElement != NULL))
-	    ctxt->sax->endElement(ctxt->userData, NULL);
+	    ctxt->sax->endElement(ctxt->userData, name);
+	free(name);
 	return;
     }
     if (CUR == '>') NEXT;
@@ -3818,10 +3841,9 @@
 
 	/*
 	 * end of parsing of this node.
-	 * TODO !!!!!!!! check the macro in case of non DOM parsing
 	 */
 	nodePop(ctxt);
-
+	free(name);
 	return;
     }
 
@@ -3837,17 +3859,17 @@
 
 	/*
 	 * end of parsing of this node.
-	 * TODO !!!!!!!! check the macro in case of non DOM parsing
 	 */
 	nodePop(ctxt);
-
+	free(name);
 	return;
     }
 
     /*
      * parse the end of tag: '</' should be here.
      */
-    xmlParseEndTag(ctxt);
+    xmlParseEndTag(ctxt, name);
+    free(name);
 }
 
 /**
@@ -4451,7 +4473,7 @@
                           const CHAR *SystemID) {
     xmlDtdPtr ret = NULL;
     xmlParserCtxtPtr ctxt;
-    xmlParserInputPtr input;
+    xmlParserInputPtr input = NULL;
     xmlCharEncoding enc;
 
     if ((ExternalID == NULL) && (SystemID == NULL)) return(NULL);
@@ -4462,12 +4484,6 @@
 	return(NULL);
     }
     xmlInitParserCtxt(ctxt);
-    input = (xmlParserInputPtr) malloc(sizeof(xmlParserInput));
-    if (input == NULL) {
-        perror("malloc");
-	free(ctxt);
-	return(NULL);
-    }
 
     /*
      * Set-up the SAX context
@@ -4641,7 +4657,7 @@
     close(input);
 #endif
 
-    buffer[buf.st_size] = '\0';
+    buffer[res] = '\0';
 
     ctxt = (xmlParserCtxtPtr) malloc(sizeof(xmlParserCtxt));
     if (ctxt == NULL) {
diff --git a/parser.h b/parser.h
index aaab58c..0b8d22f 100644
--- a/parser.h
+++ b/parser.h
@@ -10,6 +10,7 @@
 #define __XML_PARSER_H__
 
 #include "tree.h"
+#include "xmlIO.h"
 
 #ifdef __cplusplus
 extern "C" {
@@ -22,6 +23,9 @@
 
 typedef void (* xmlParserInputDeallocate)(CHAR *);
 typedef struct xmlParserInput {
+    /* Input buffer */
+    xmlParserInputBufferPtr buf;      /* UTF-8 encoded buffer */
+
     const char *filename;             /* The file analyzed, if any */
     const CHAR *base;                 /* Base of the array to parse */
     const CHAR *cur;                  /* Current char being parsed */
@@ -169,8 +173,10 @@
 
 /*
  * Global variables: just the SAX interface tables we are looking for full
- *      reentrancy of the code !
+ *      reentrancy of the code and version infos.
  */
+extern const char *xmlParserVersion;
+
 extern xmlSAXLocator xmlDefaultSAXLocator;
 extern xmlSAXHandler xmlDefaultSAXHandler;
 
diff --git a/parserInternals.h b/parserInternals.h
index 6a31c51..b107718 100644
--- a/parserInternals.h
+++ b/parserInternals.h
@@ -614,10 +614,10 @@
 xmlParseDocTypeDecl(xmlParserCtxtPtr ctxt);
 CHAR *
 xmlParseAttribute(xmlParserCtxtPtr ctxt, CHAR **value);
-void
+CHAR *
 xmlParseStartTag(xmlParserCtxtPtr ctxt);
 void
-xmlParseEndTag(xmlParserCtxtPtr ctxt);
+xmlParseEndTag(xmlParserCtxtPtr ctxt, CHAR *tagname);
 void
 xmlParseCDSect(xmlParserCtxtPtr ctxt);
 void
diff --git a/result/SVG/bike.xml b/result/SVG/bike.xml
index f74034b..9c5e0c6 100644
--- a/result/SVG/bike.xml
+++ b/result/SVG/bike.xml
@@ -12,26 +12,27 @@
     <defs>
       <symbol id="spoke">
         <desc>14/12 gauge double butted spoke</desc>
-      </symbol>
+<!-- the path data goes here -->      </symbol>
       <symbol id="hub">
         <desc>black anodised low torsion hub</desc>
-      </symbol>
+<!--the path data goes here -->      </symbol>
       <symbol id="rim">
         <desc>twin wall, eyeletted rim</desc>
-      </symbol>
+<!-- the path data goes here-->      </symbol>
       <symbol id="cogs">
         <desc>8 speed, wide ratio gearing</desc>
-      </symbol>
+<!--the path data goes here -->      </symbol>
       <symbol id="lacing">
         <desc>double cross lacing of 32 spokes</desc>
       </symbol>
     </defs>
-    <g id="frontwheel">
+<!-- the overall bike drawing goes here -->    <g id="frontwheel">
       <title>Front wheel</title>
       <desc>The front wheel provides grip, steering and some shock absorption</desc>
       <use href="id(lacing)" style="rotation: 20deg; fillcolor: black"/>
     </g>
     <g id="backwheel"/>
-    <g id="frame"/>
+    <g id="frame">
+<!-- and so on -->    </g>
   </g>
 </svg>
diff --git a/result/SVG/defs.xml b/result/SVG/defs.xml
index ba48572..0ceee0b 100644
--- a/result/SVG/defs.xml
+++ b/result/SVG/defs.xml
@@ -9,4 +9,5 @@
   </defs>
   <desc>Defining things for later use

   </desc>
-</svg>
+<!-- SVG elements in here would reference/use 

+       the elements defined in the <defs> --></svg>
diff --git a/result/SVG/desc.xml b/result/SVG/desc.xml
index ed598b9..7f65d2a 100644
--- a/result/SVG/desc.xml
+++ b/result/SVG/desc.xml
@@ -9,5 +9,5 @@
     This is a bar chart which shows 

     company sales by region.

   </desc>
-  </g>
+<!-- Bar chart defined as vector data -->  </g>
 </svg>
diff --git a/result/SVG/gradient.xml b/result/SVG/gradient.xml
index 1905b60..63f97f7 100644
--- a/result/SVG/gradient.xml
+++ b/result/SVG/gradient.xml
@@ -6,7 +6,7 @@
   <g>
     <defs>
       <lineargradient id="MyGradient">
-        <gradientstop offset="0%" color="#F60"/>
+<!-- Define linear gradient here -->        <gradientstop offset="0%" color="#F60"/>
         <gradientstop offset="70%" color="#FF6"/>
       </lineargradient>
     </defs>
diff --git a/result/SVG/marker.xml b/result/SVG/marker.xml
index 013c5cd..f99b977 100644
--- a/result/SVG/marker.xml
+++ b/result/SVG/marker.xml
@@ -9,11 +9,12 @@
   <desc>An double-headed arrow example using markers

   </desc>
   <path d="M0 0">
-    <marker href="#Triangle" width="200" height="200" style="text-transform: rotate(180)"/>
+<!-- Place an arrowhead rotated 180 degrees at the 

+         beginning of the path -->    <marker href="#Triangle" width="200" height="200" style="text-transform: rotate(180)"/>
     <data d="M 2000 2000"/>
-    <marker href=""/>
+<!-- Turn off markers in the middle of the path -->    <marker href=""/>
     <data d="L 4000 2000 L 4000 4000"/>
-    <marker href="#Triangle" width="200" height="200"/>
+<!-- Place an arrowhead at the end of the path-->    <marker href="#Triangle" width="200" height="200"/>
     <data d="L 6000 4000"/>
   </path>
 </svg>
diff --git a/result/SVG/mathswitch.xml b/result/SVG/mathswitch.xml
index 8f4e539..f7a95eb 100644
--- a/result/SVG/mathswitch.xml
+++ b/result/SVG/mathswitch.xml
@@ -4,10 +4,17 @@
   fallback graphical representation of an equation, if 

   MathML is not supported.

   </desc>
-  <switch>
-    <foreignobject system-required="http://www.w3.org/TR/REC-MathML-19980407" width="100" height="50"/>
-    <g>
-      <rect style="fill: red"/>
+<!-- The <switch> element will process the first child element

+       whose testing attributes evaluate to true.-->  <switch>
+<!-- Process the MathML if the system-required attribute

+         evaluates to true (i.e., the user agent supports MathML

+         embedded within SVG). -->    <foreignobject system-required="http://www.w3.org/TR/REC-MathML-19980407" width="100" height="50">
+<!-- MathML content goes here -->    </foreignobject>
+<!-- Else, process the following alternate SVG.

+         Note that there are no testing attributes on the <g> element.

+         If no testing attributes are provided, it is as if there

+         were testing attributes and they evaluated to true.-->    <g>
+<!-- Draw a red rectangle with a text string on top. -->      <rect style="fill: red"/>
       <text>Formula goes here</text>
     </g>
   </switch>
diff --git a/result/SVG/parentns.xml b/result/SVG/parentns.xml
index b204637..0b8ecdc 100644
--- a/result/SVG/parentns.xml
+++ b/result/SVG/parentns.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <ABC xmlns="http://parent.name.space" xmlns:svg="http://www.w3.org/Graphics/SVG/1.0">
-  <svg:svg width="40%" height="40%">
+<!-- document in the parent namespace -->  <svg:svg width="40%" height="40%">
     <svg:rectangle width="43.6" height="31.5"/>
-  </svg:svg>
-</ABC>
+<!-- svg graphic continues -->  </svg:svg>
+<!-- document in parent namespace continues --></ABC>
diff --git a/result/SVG/patternfill.xml b/result/SVG/patternfill.xml
index 425b361..0a425fd 100644
--- a/result/SVG/patternfill.xml
+++ b/result/SVG/patternfill.xml
@@ -2,7 +2,9 @@
 <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG April 1999//EN" "http://www.w3.org/Graphics/SVG/svg-19990412.dtd">
 <svg width="4in" height="3in">
   <defs>
-    <symbol id="fourstar"/>
+    <symbol id="fourstar">
+<!-- Define the pattern using standard graphics elements

+           such as paths, images, text and shapes -->    </symbol>
   </defs>
   <ellipse style="fill: url(#fourstar)" major="40" minor="27"/>
 </svg>
diff --git a/result/SVG/private.xml b/result/SVG/private.xml
index e69fc46..e492a25 100644
--- a/result/SVG/private.xml
+++ b/result/SVG/private.xml
@@ -7,9 +7,10 @@
         <myapp:piece label="Eastern Region" value="2.53"/>
         <myapp:piece label="Southern Region" value="3.89"/>
         <myapp:piece label="Western Region" value="2.04"/>
-      </myapp:piechart>
+<!-- Other private data goes here -->      </myapp:piechart>
     </private>
   </defs>
   <desc>This chart includes private data in another namespace

   </desc>
-</svg>
+<!-- In here would be the actual graphics elements which

+       draw the pie chart --></svg>
diff --git a/result/SVG/richdesc.xml b/result/SVG/richdesc.xml
index e2a15d9..eee8fa3 100644
--- a/result/SVG/richdesc.xml
+++ b/result/SVG/richdesc.xml
@@ -7,5 +7,6 @@
       <mydoc:emph>mydoc</mydoc:emph>
  namespace.    </mydoc:para>
   </desc>
-  <g/>
+  <g>
+<!-- the picture goes here -->  </g>
 </svg>
diff --git a/result/SVG/structure01.xml b/result/SVG/structure01.xml
index a60174a..bdac742 100644
--- a/result/SVG/structure01.xml
+++ b/result/SVG/structure01.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" standalone="yes"?>
 <parent xmlns="http://someplace.org" xmlns:svg="http://www.w3.org/Graphics/SVG/svg-19990412.dtd">
-  <svg:svg width="5cm" height="8cm">
+<!-- parent stuff here -->  <svg:svg width="5cm" height="8cm">
     <svg:ellipse major="200" minor="130"/>
   </svg:svg>
-</parent>
+<!-- ... --></parent>
diff --git a/result/SVG/switch.xml b/result/SVG/switch.xml
index 383a47f..124e613 100644
--- a/result/SVG/switch.xml
+++ b/result/SVG/switch.xml
@@ -1,9 +1,13 @@
 <?xml version="1.0" standalone="yes"?>
 <smil>
   <body>
-    <switch>
-      <ref system-required="http://www.w3.org/Graphics/SVG/svg-19990412.dtd" type="image/svg" src="drawing.svg"/>
-      <img src="alternate_image.jpg"/>
+<!-- The SMIL <switch> element will process the

+         first child element which tests true and skip

+         past all others. -->    <switch>
+<!-- The system-required attribute tests to see if

+           the user agent supports SVG. If true, then

+           render the file drawing.svg. -->      <ref system-required="http://www.w3.org/Graphics/SVG/svg-19990412.dtd" type="image/svg" src="drawing.svg"/>
+<!-- Else, render the alternate image. -->      <img src="alternate_image.jpg"/>
     </switch>
   </body>
 </smil>
diff --git a/result/SVG/symbol-use.xml b/result/SVG/symbol-use.xml
index 9265a66..f6e97a7 100644
--- a/result/SVG/symbol-use.xml
+++ b/result/SVG/symbol-use.xml
@@ -2,13 +2,15 @@
 <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG April 1999//EN" "http://www.w3.org/Graphics/SVG/svg-19990412.dtd">
 <svg width="4in" height="3in">
   <defs>
-    <symbol id="TemplateObject01"/>
+    <symbol id="TemplateObject01">
+<!-- symbol definition here -->    </symbol>
   </defs>
   <desc>Examples of inline and referenced content

   </desc>
-  <g/>
-  <use href="#TemplateObject01"/>
-  <g>
+<!-- <g> with inline content -->  <g>
+<!-- Inline content goes here -->  </g>
+<!-- referenced content -->  <use href="#TemplateObject01"/>
+<!-- <g> with both referenced and inline content -->  <g>
     <use href="#TemplateObject01"/>
-  </g>
+<!-- Inline content goes here -->  </g>
 </svg>
diff --git a/result/SVG/transform.xml b/result/SVG/transform.xml
index 65712ac..0f45642 100644
--- a/result/SVG/transform.xml
+++ b/result/SVG/transform.xml
@@ -3,10 +3,14 @@
 <svg width="4in" height="3in">
   <desc>Demonstration of coordinate transforms

   </desc>
-  <text style="font-size: 12">This prints 12 pixels high.</text>
+<!-- The following two text elements will both draw with a 

+        font height of 12 pixels -->  <text style="font-size: 12">This prints 12 pixels high.</text>
   <text style="font-size: 12px">This prints 12 pixels high.</text>
-  <g style="transform: scale(2)">
-    <text style="font-size: 12">This prints 24 pixels high.</text>
-    <text style="font-size: 12px">This prints 12 pixels high.</text>
+<!-- Now scale the coordinate system by 2. -->  <g style="transform: scale(2)">
+<!-- The following text will actually draw 24 pixels high

+           because each unit in the new coordinate system equals

+           2 units in the previous coordinate system. -->    <text style="font-size: 12">This prints 24 pixels high.</text>
+<!-- The following text will actually still draw 12 pixels high

+           because the CSS unit specifier has been provided. -->    <text style="font-size: 12px">This prints 12 pixels high.</text>
   </g>
 </svg>
diff --git a/result/SVG/trivial.xml b/result/SVG/trivial.xml
index 2ff9a37..558c7bf 100644
--- a/result/SVG/trivial.xml
+++ b/result/SVG/trivial.xml
@@ -1,2 +1,3 @@
 <?xml version="1.0" standalone="yes"?>
-<svg xmlns="http://www.w3.org/Graphics/SVG/svg-19990412.dtd" width="4in" height="3in"/>
+<svg xmlns="http://www.w3.org/Graphics/SVG/svg-19990412.dtd" width="4in" height="3in">
+<!-- Insert drawing elements here --></svg>
diff --git a/result/SVG/viewport-nest.xml b/result/SVG/viewport-nest.xml
index c742635..7ce61a9 100644
--- a/result/SVG/viewport-nest.xml
+++ b/result/SVG/viewport-nest.xml
@@ -4,5 +4,7 @@
   <desc>This SVG drawing embeds another one,

     thus establishing a new viewport

   </desc>
-  <svg style="left: 25%; top: 25%" width="50%" height="50%"/>
+<!-- The following statement establishing a new viewport

+       and renders SVG drawing B into that viewport -->  <svg style="left: 25%; top: 25%" width="50%" height="50%">
+<!-- drawing B goes here -->  </svg>
 </svg>
diff --git a/result/SVG/viewport-transform.xml b/result/SVG/viewport-transform.xml
index 5acbc4c..f1c1465 100644
--- a/result/SVG/viewport-transform.xml
+++ b/result/SVG/viewport-transform.xml
@@ -3,15 +3,26 @@
 <svg width="300px" height="3oopx">
   <desc>Transformation with establishment of a new viewport

   </desc>
-  <text style="font-size: 12">This prints 12 pixels high.</text>
+<!-- The following two text elements will both draw with a 

+        font height of 12 pixels -->  <text style="font-size: 12">This prints 12 pixels high.</text>
   <text style="font-size: 12px">This prints 12 pixels high.</text>
-  <g style="transform: scale(2)">
-    <text style="font-size: 12">This prints 24 pixels high.</text>
-    <text style="font-size: 12px">This prints 12 pixels high.</text>
+<!-- Now scale the coordinate system by 2. -->  <g style="transform: scale(2)">
+<!-- The following text will actually draw 24 pixels high

+           because each unit in the new coordinate system equals

+           2 units in the previous coordinate system. -->    <text style="font-size: 12">This prints 24 pixels high.</text>
+<!-- The following text will actually still draw 12 pixels high

+           because the CSS unit specifier has been provided. -->    <text style="font-size: 12px">This prints 12 pixels high.</text>
   </g>
-  <g style="transform: scale(3)">
-    <svg style="left:0; top:0; right:100; bottom:100" width="100%" height="100%">
-      <text style="font-size: 12">This prints 36 pixels high.</text>
+<!-- This time, scale the coordinate system by 3. -->  <g style="transform: scale(3)">
+<!-- Establish a new viewport and thus change the meaning of

+           some CSS unit specifiers. -->    <svg style="left:0; top:0; right:100; bottom:100" width="100%" height="100%">
+<!-- The following two text elements will both draw with a 

+              font height of 36 screen pixels. The first text element

+              defines its height in user coordinates, which have been

+              scaled by 3. The second text element defines its height

+              in CSS px units, which have been redefined to be three times

+              as big as screen pixels due the <svg> element establishing

+              a new viewport. -->      <text style="font-size: 12">This prints 36 pixels high.</text>
       <text style="font-size: 12px">This prints 36 pixels high.</text>
     </svg>
   </g>
diff --git a/result/SVG/viewport.xml b/result/SVG/viewport.xml
index 26bb86c..2847a2f 100644
--- a/result/SVG/viewport.xml
+++ b/result/SVG/viewport.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" standalone="yes"?>
 <parent xmlns="http://some.url">
-  <svg xmlns="http://www.w3.org/Graphics/SVG/svg-19990412.dtd" width="100px" height="200px">
+<!-- SVG graphic -->  <svg xmlns="http://www.w3.org/Graphics/SVG/svg-19990412.dtd" width="100px" height="200px">
     <path d="M100,100 Q200,400,300,100"/>
-  </svg>
+<!-- rest of SVG graphic would go here -->  </svg>
 </parent>
diff --git a/testSAX.c b/testSAX.c
index 8d64691..1e7acb1 100644
--- a/testSAX.c
+++ b/testSAX.c
@@ -177,8 +177,16 @@
 xmlParserInputPtr
 resolveEntityDebug(xmlParserCtxtPtr ctxt, const CHAR *publicId, const CHAR *systemId)
 {
-    fprintf(stdout, "SAX.resolveEntity(%s, %s)\n",
-            (char *)publicId, (char *)systemId);
+    
+    fprintf(stdout, "SAX.resolveEntity(");
+    if (publicId != NULL)
+	fprintf(stdout, "%s", (char *)publicId);
+    else
+	fprintf(stdout, " ");
+    if (systemId != NULL)
+	fprintf(stdout, ", %s)\n", (char *)systemId);
+    else
+	fprintf(stdout, ", )\n");
     if (systemId != NULL) {
         return(xmlNewInputFromFile(ctxt, systemId));
     }
diff --git a/tester.c b/tester.c
index f2a7cf1..5836fc6 100644
--- a/tester.c
+++ b/tester.c
@@ -197,10 +197,13 @@
 	}
     }
     if (files == 0) {
-	printf("\nFirst test for the parser, with errors\n");
-        parseAndPrintBuffer(buffer);
-	printf("\nBuilding a tree from scratch and printing it\n");
-	treeTest();
+	printf("Usage : %s [--debug] [--copy] [--recover] [--noent] XMLfiles ...\n",
+	       argv[0]);
+	printf("\tParse the XML files and output the result of the parsing\n");
+	printf("\t--debug : dump a debug tree of the in-memory document\n");
+	printf("\t--copy : used to test the internal copy implementation\n");
+	printf("\t--recover : output what is parsable on broken XmL documents\n");
+	printf("\t--noent : substitute entity references by their value\n");
     }
 
     return(0);
diff --git a/tree.c b/tree.c
index 617264c..7442f0a 100644
--- a/tree.c
+++ b/tree.c
@@ -673,8 +673,15 @@
         if (node->type == XML_TEXT_NODE) {
 	    if (inLine)
 		ret = xmlStrcat(ret, node->content);
-	    else
-		ret = xmlStrcat(ret, xmlEncodeEntities(doc, node->content));
+	    else {
+	        CHAR *buffer;
+
+		buffer = xmlEncodeEntitiesReentrant(doc, node->content);
+		if (buffer != NULL) {
+		    ret = xmlStrcat(ret, buffer);
+		    free(buffer);
+		}
+            }
 	} else if (node->type == XML_ENTITY_REF_NODE) {
 	    if (inLine) {
 		ent = xmlGetDocEntity(doc, node->name);
@@ -2566,8 +2573,15 @@
 	return;
     }
     if (cur->type == XML_TEXT_NODE) {
-	if (cur->content != NULL)
-	    xmlBufferWriteCHAR(buf, xmlEncodeEntities(doc, cur->content));
+	if (cur->content != NULL) {
+            CHAR *buffer;
+
+            buffer = xmlEncodeEntitiesReentrant(doc, cur->content);
+	    if (buffer != NULL) {
+		xmlBufferWriteCHAR(buf, buffer);
+		free(buffer);
+	    }
+	}
 	return;
     }
     if (cur->type == XML_COMMENT_NODE) {
@@ -2605,8 +2619,15 @@
 	return;
     }
     xmlBufferWriteChar(buf, ">");
-    if (cur->content != NULL)
-	xmlBufferWriteCHAR(buf, xmlEncodeEntities(doc, cur->content));
+    if (cur->content != NULL) {
+	CHAR *buffer;
+
+	buffer = xmlEncodeEntitiesReentrant(doc, cur->content);
+	if (buffer != NULL) {
+	    xmlBufferWriteCHAR(buf, buffer);
+	    free(buffer);
+	}
+    }
     if (cur->childs != NULL) {
 	xmlNodeListDump(buf, doc, cur->childs, level + 1);
     }
diff --git a/valid.c b/valid.c
index 2165537..0a62b7e 100644
--- a/valid.c
+++ b/valid.c
@@ -78,8 +78,13 @@
 
     if (cur == NULL) return(NULL);
     ret = xmlNewElementContent((CHAR *) cur->name, cur->type);
-    if (cur->c1 != NULL) cur->c1 = xmlCopyElementContent(cur->c1);
-    if (cur->c2 != NULL) cur->c2 = xmlCopyElementContent(cur->c2);
+    if (ret == NULL) {
+        fprintf(stderr, "xmlCopyElementContent : out of memory\n");
+	return(NULL);
+    }
+    ret->ocur = cur->ocur;
+    if (cur->c1 != NULL) ret->c1 = xmlCopyElementContent(cur->c1);
+    if (cur->c2 != NULL) ret->c2 = xmlCopyElementContent(cur->c2);
     return(ret);
 }
 
@@ -311,7 +316,7 @@
      */
     ret->type = type;
     ret->name = xmlStrdup(name);
-    ret->content = content;
+    ret->content = xmlCopyElementContent(content);
     table->nb_elements++;
 
     return(ret);
diff --git a/xmlIO.h b/xmlIO.h
new file mode 100644
index 0000000..d6edcae
--- /dev/null
+++ b/xmlIO.h
@@ -0,0 +1,40 @@
+/*
+ * xmlIO.h : interface for the I/O interfaces used by the parser
+ *
+ * See Copyright for the status of this software.
+ *
+ * Daniel.Veillard@w3.org
+ */
+
+#ifndef __XML_IO_H__
+#define __XML_IO_H__
+
+#include <stdio.h>
+#include "tree.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct xmlParserInputBuffer {
+    /* Inputs */
+    FILE          *file;    /* Input on file handler */
+    int              fd;    /* Input on a file descriptor */
+/**********
+#ifdef HAVE_ZLIB_H
+    gzFile       gzfile;     Input on a compressed stream
+#endif
+ */
+    
+    
+    xmlBufferPtr buffer;    /* Local buffer encoded in  UTF-8 */
+
+} xmlParserInputBuffer;
+
+typedef xmlParserInputBuffer *xmlParserInputBufferPtr;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __XML_IO_H__ */