Closing #3908 and #3937 and a memory leak in the SAX API
added SAX.h mostly useful for the doc generation
Regenerated all the docs,
Daniel
diff --git a/ChangeLog b/ChangeLog
index 3670ea7..f3ec0f5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+Fri Dec  3 13:46:32 CET 1999 Daniel Veillard <Daniel.Veillard@w3.org>
+
+	* SAX.h, SAX.c, makefile.am: added SAX.h mostly useful for the
+	         doc generation
+	* parser.c: fixed bugs #3908 and #3937 and a memory leak
+	         in the SAX API
+	* doc/*: rebuilt the doc making sure everything appears in the
+	         HTML files
+
 Wed Dec  1 10:27:47 CET 1999 Daniel Veillard <Daniel.Veillard@w3.org>
 
 	* tree.[ch] HTMLtree.c, debugXML.c, configure.in, xml-config.in:
diff --git a/Makefile.am b/Makefile.am
index cb88ae8..54d6228 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -32,14 +32,15 @@
 
 xmlincdir = $(includedir)/gnome-xml
 xmlinc_HEADERS = \
+		SAX.h \
 		entities.h \
 		encoding.h \
 		parser.h \
+		parserInternals.h \
+		xml-error.h \
 		HTMLparser.h \
 		HTMLtree.h \
-		parserInternals.h \
 		debugXML.h \
-		xml-error.h \
 		tree.h \
 		xpath.h \
 		xmlIO.h \
diff --git a/SAX.c b/SAX.c
index cfc23f1..527efc0 100644
--- a/SAX.c
+++ b/SAX.c
@@ -17,6 +17,7 @@
 #include "entities.h"
 #include "xml-error.h"
 #include "debugXML.h"
+#include "SAX.h"
 
 /* #define DEBUG_SAX */
 /* #define DEBUG_SAX_TREE */
diff --git a/SAX.h b/SAX.h
new file mode 100644
index 0000000..8d9f3c7
--- /dev/null
+++ b/SAX.h
@@ -0,0 +1,107 @@
+/*
+ * SAX.c : Default SAX handler interfaces.
+ *
+ * See Copyright for the status of this software.
+ *
+ * Daniel Veillard <Daniel.Veillard@w3.org>
+ */
+
+
+#include <stdio.h>
+#include <stdlib.h>
+#include "parser.h"
+
+#ifndef __XML_SAX_H__
+#define __XML_SAX_H__
+const xmlChar *	getPublicId			(void *ctx);
+const xmlChar *	getSystemId			(void *ctx);
+void	setDocumentLocator			(void *ctx,
+						 xmlSAXLocatorPtr loc);
+    
+int		getLineNumber			(void *ctx);
+int		getColumnNumber			(void *ctx);
+
+int		isStandalone			(void *ctx);
+int		hasInternalSubset		(void *ctx);
+int		hasExternalSubset		(void *ctx);
+
+void		internalSubset			(void *ctx,
+						 const xmlChar *name,
+						 const xmlChar *ExternalID,
+						 const xmlChar *SystemID);
+xmlEntityPtr	getEntity			(void *ctx,
+						 const xmlChar *name);
+xmlEntityPtr	getParameterEntity		(void *ctx,
+						 const xmlChar *name);
+xmlParserInputPtr resolveEntity			(void *ctx,
+						 const xmlChar *publicId,
+						 const xmlChar *systemId);
+
+void		entityDecl			(void *ctx,
+						 const xmlChar *name,
+						 int type,
+						 const xmlChar *publicId,
+						 const xmlChar *systemId,
+						 xmlChar *content);
+void		attributeDecl			(void *ctx,
+						 const xmlChar *elem,
+						 const xmlChar *name,
+						 int type,
+						 int def,
+						 const xmlChar *defaultValue,
+						 xmlEnumerationPtr tree);
+void		elementDecl			(void *ctx,
+						 const xmlChar *name,
+						 int type,
+						 xmlElementContentPtr content);
+void		notationDecl			(void *ctx,
+						 const xmlChar *name,
+						 const xmlChar *publicId,
+						 const xmlChar *systemId);
+void		unparsedEntityDecl		(void *ctx,
+						 const xmlChar *name,
+						 const xmlChar *publicId,
+						 const xmlChar *systemId,
+						 const xmlChar *notationName);
+
+void		startDocument			(void *ctx);
+void		endDocument			(void *ctx);
+void		attribute			(void *ctx,
+						 const xmlChar *fullname,
+						 const xmlChar *value);
+void		startElement			(void *ctx,
+						 const xmlChar *fullname,
+						 const xmlChar **atts);
+void		endElement			(void *ctx,
+						 const xmlChar *name);
+void		reference			(void *ctx,
+						 const xmlChar *name);
+void		characters			(void *ctx,
+						 const xmlChar *ch,
+						 int len);
+void		ignorableWhitespace		(void *ctx,
+						 const xmlChar *ch,
+						 int len);
+void		processingInstruction		(void *ctx,
+						 const xmlChar *target,
+						 const xmlChar *data);
+void		globalNamespace			(void *ctx,
+						 const xmlChar *href,
+						 const xmlChar *prefix);
+void		setNamespace			(void *ctx,
+						 const xmlChar *name);
+xmlNsPtr	getNamespace			(void *ctx);
+int		checkNamespace			(void *ctx,
+						 xmlChar *namespace);
+void		namespaceDecl			(void *ctx,
+						 const xmlChar *href,
+						 const xmlChar *prefix);
+void		comment				(void *ctx,
+						 const xmlChar *value);
+void		cdataBlock			(void *ctx,
+						 const xmlChar *value,
+						 int len);
+
+void		xmlDefaultSAXHandlerInit	(void);
+void		htmlDefaultSAXHandlerInit	(void);
+#endif /* __XML_SAX_H__ */
diff --git a/doc/gnome-xml.sgml b/doc/gnome-xml.sgml
index abcae9b..018ce71 100644
--- a/doc/gnome-xml.sgml
+++ b/doc/gnome-xml.sgml
@@ -1,16 +1,19 @@
 <!doctype book PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
-<!entity parser SYSTEM "sgml/parser.sgml">
-<!entity tree SYSTEM "sgml/tree.sgml">
-<!entity entities SYSTEM "sgml/entities.sgml">
-<!entity error SYSTEM "sgml/xml-error.sgml">
-<!entity valid SYSTEM "sgml/valid.sgml">
-<!entity xpath SYSTEM "sgml/xpath.sgml">
 <!entity SAX SYSTEM "sgml/SAX.sgml">
+<!entity entities SYSTEM "sgml/entities.sgml">
+<!entity encoding SYSTEM "sgml/encoding.sgml">
+<!entity parser SYSTEM "sgml/parser.sgml">
+<!entity parserInternals SYSTEM "sgml/parserInternals.sgml">
+<!entity error SYSTEM "sgml/xml-error.sgml">
 <!entity HTMLparser SYSTEM "sgml/HTMLparser.sgml">
 <!entity HTMLtree SYSTEM "sgml/HTMLtree.sgml">
-<!entity parserInternals SYSTEM "sgml/parserInternals.sgml">
+<!entity debugXML SYSTEM "sgml/debugXML.sgml">
+<!entity tree SYSTEM "sgml/tree.sgml">
+<!entity xpath SYSTEM "sgml/xpath.sgml">
+<!entity xmlIO SYSTEM "sgml/xmlIO.sgml">
 <!entity xmlmemory SYSTEM "sgml/xmlmemory.sgml">
 <!entity nanohttp SYSTEM "sgml/nanohttp.sgml">
+<!entity valid SYSTEM "sgml/valid.sgml">
 ]>
 
 <book>
@@ -79,7 +82,10 @@
     &HTMLtree;
     &xpath;
     &nanohttp;
+    &xmlIO;
     &parserInternals;
+    &encoding;
+    &debugXML;
     &xmlmemory;
   </chapter>
 </book>
diff --git a/doc/html/book1.html b/doc/html/book1.html
index 1e12874..b3e5fdd 100644
--- a/doc/html/book1.html
+++ b/doc/html/book1.html
@@ -118,6 +118,11 @@
 > &#8212; </DT
 ><DT
 ><A
+HREF="gnome-xml-sax.html"
+>SAX</A
+> &#8212; </DT
+><DT
+><A
 HREF="gnome-xml-tree.html"
 >tree</A
 > &#8212; </DT
@@ -158,11 +163,26 @@
 > &#8212; </DT
 ><DT
 ><A
+HREF="gnome-xml-xmlio.html"
+>xmlIO</A
+> &#8212; </DT
+><DT
+><A
 HREF="gnome-xml-parserinternals.html"
 >parserInternals</A
 > &#8212; </DT
 ><DT
 ><A
+HREF="gnome-xml-encoding.html"
+>encoding</A
+> &#8212; </DT
+><DT
+><A
+HREF="gnome-xml-debugxml.html"
+>debugXML</A
+> &#8212; </DT
+><DT
+><A
 HREF="gnome-xml-xmlmemory.html"
 >xmlmemory</A
 > &#8212; </DT
diff --git a/doc/html/gnome-xml-entities.html b/doc/html/gnome-xml-entities.html
index d6ac35b..b0105df 100644
--- a/doc/html/gnome-xml-entities.html
+++ b/doc/html/gnome-xml-entities.html
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4339"
+NAME="AEN5370"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4342"
+NAME="AEN5373"
 ></A
 ><H2
 >Synopsis</H2
@@ -336,7 +336,11 @@
                                              <A
 HREF="gnome-xml-entities.html#XMLENTITIESTABLEPTR"
 >xmlEntitiesTablePtr</A
-> table);</PRE
+> table);
+void        <A
+HREF="gnome-xml-entities.html#XMLCLEANUPPREDEFINEDENTITIES"
+>xmlCleanupPredefinedEntities</A
+>    (void);</PRE
 ></TD
 ></TR
 ></TABLE
@@ -344,7 +348,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4399"
+NAME="AEN5431"
 ></A
 ><H2
 >Description</H2
@@ -354,14 +358,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4402"
+NAME="AEN5434"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4404"
+NAME="AEN5436"
 ></A
 ><H3
 ><A
@@ -387,7 +391,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4409"
+NAME="AEN5441"
 ></A
 ><H3
 ><A
@@ -413,7 +417,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4414"
+NAME="AEN5446"
 ></A
 ><H3
 ><A
@@ -439,7 +443,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4419"
+NAME="AEN5451"
 ></A
 ><H3
 ><A
@@ -465,7 +469,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4424"
+NAME="AEN5456"
 ></A
 ><H3
 ><A
@@ -491,7 +495,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4429"
+NAME="AEN5461"
 ></A
 ><H3
 ><A
@@ -517,7 +521,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4434"
+NAME="AEN5466"
 ></A
 ><H3
 ><A
@@ -543,7 +547,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4439"
+NAME="AEN5471"
 ></A
 ><H3
 ><A
@@ -569,7 +573,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4444"
+NAME="AEN5476"
 ></A
 ><H3
 ><A
@@ -595,7 +599,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4449"
+NAME="AEN5481"
 ></A
 ><H3
 ><A
@@ -760,7 +764,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4489"
+NAME="AEN5521"
 ></A
 ><H3
 ><A
@@ -925,7 +929,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4529"
+NAME="AEN5561"
 ></A
 ><H3
 ><A
@@ -1006,7 +1010,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4550"
+NAME="AEN5582"
 ></A
 ><H3
 ><A
@@ -1110,7 +1114,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4576"
+NAME="AEN5608"
 ></A
 ><H3
 ><A
@@ -1213,7 +1217,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4602"
+NAME="AEN5634"
 ></A
 ><H3
 ><A
@@ -1316,7 +1320,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4628"
+NAME="AEN5660"
 ></A
 ><H3
 ><A
@@ -1425,7 +1429,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4656"
+NAME="AEN5688"
 ></A
 ><H3
 ><A
@@ -1533,7 +1537,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4683"
+NAME="AEN5715"
 ></A
 ><H3
 ><A
@@ -1594,7 +1598,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4699"
+NAME="AEN5731"
 ></A
 ><H3
 ><A
@@ -1675,7 +1679,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4720"
+NAME="AEN5752"
 ></A
 ><H3
 ><A
@@ -1738,7 +1742,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4736"
+NAME="AEN5768"
 ></A
 ><H3
 ><A
@@ -1819,6 +1823,34 @@
 ></P
 ></DIV
 ></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN5789"
+></A
+><H3
+><A
+NAME="XMLCLEANUPPREDEFINEDENTITIES"
+></A
+>xmlCleanupPredefinedEntities ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>void        xmlCleanupPredefinedEntities    (void);</PRE
+></TD
+></TR
+></TABLE
+><P
+>Cleanup up the predefined entities table.</P
+><P
+></P
+></DIV
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
diff --git a/doc/html/gnome-xml-htmlparser.html b/doc/html/gnome-xml-htmlparser.html
index 98ff367..ef6b025 100644
--- a/doc/html/gnome-xml-htmlparser.html
+++ b/doc/html/gnome-xml-htmlparser.html
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN6409"
+NAME="AEN7447"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN6412"
+NAME="AEN7450"
 ></A
 ><H2
 >Synopsis</H2
@@ -277,7 +277,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6450"
+NAME="AEN7488"
 ></A
 ><H2
 >Description</H2
@@ -287,14 +287,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6453"
+NAME="AEN7491"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6455"
+NAME="AEN7493"
 ></A
 ><H3
 ><A
@@ -320,7 +320,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6460"
+NAME="AEN7498"
 ></A
 ><H3
 ><A
@@ -346,7 +346,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6465"
+NAME="AEN7503"
 ></A
 ><H3
 ><A
@@ -372,7 +372,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6470"
+NAME="AEN7508"
 ></A
 ><H3
 ><A
@@ -398,7 +398,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6475"
+NAME="AEN7513"
 ></A
 ><H3
 ><A
@@ -424,7 +424,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6480"
+NAME="AEN7518"
 ></A
 ><H3
 ><A
@@ -450,7 +450,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6485"
+NAME="AEN7523"
 ></A
 ><H3
 ><A
@@ -476,7 +476,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6490"
+NAME="AEN7528"
 ></A
 ><H3
 ><A
@@ -502,7 +502,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6495"
+NAME="AEN7533"
 ></A
 ><H3
 ><A
@@ -528,7 +528,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6500"
+NAME="AEN7538"
 ></A
 ><H3
 ><A
@@ -609,7 +609,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6521"
+NAME="AEN7559"
 ></A
 ><H3
 ><A
@@ -692,7 +692,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6543"
+NAME="AEN7581"
 ></A
 ><H3
 ><A
@@ -797,7 +797,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6570"
+NAME="AEN7608"
 ></A
 ><H3
 ><A
@@ -881,7 +881,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6592"
+NAME="AEN7630"
 ></A
 ><H3
 ><A
@@ -948,7 +948,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6610"
+NAME="AEN7648"
 ></A
 ><H3
 ><A
@@ -1088,7 +1088,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6644"
+NAME="AEN7682"
 ></A
 ><H3
 ><A
@@ -1187,7 +1187,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6669"
+NAME="AEN7707"
 ></A
 ><H3
 ><A
@@ -1325,7 +1325,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6702"
+NAME="AEN7740"
 ></A
 ><H3
 ><A
diff --git a/doc/html/gnome-xml-htmltree.html b/doc/html/gnome-xml-htmltree.html
index 73cc4b8..8293f72 100644
--- a/doc/html/gnome-xml-htmltree.html
+++ b/doc/html/gnome-xml-htmltree.html
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN6731"
+NAME="AEN7769"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN6734"
+NAME="AEN7772"
 ></A
 ><H2
 >Synopsis</H2
@@ -188,7 +188,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6748"
+NAME="AEN7786"
 ></A
 ><H2
 >Description</H2
@@ -198,14 +198,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6751"
+NAME="AEN7789"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6753"
+NAME="AEN7791"
 ></A
 ><H3
 ><A
@@ -231,7 +231,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6758"
+NAME="AEN7796"
 ></A
 ><H3
 ><A
@@ -257,7 +257,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6763"
+NAME="AEN7801"
 ></A
 ><H3
 ><A
@@ -283,7 +283,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6768"
+NAME="AEN7806"
 ></A
 ><H3
 ><A
@@ -386,7 +386,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6793"
+NAME="AEN7831"
 ></A
 ><H3
 ><A
@@ -470,7 +470,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6814"
+NAME="AEN7852"
 ></A
 ><H3
 ><A
diff --git a/doc/html/gnome-xml-nanohttp.html b/doc/html/gnome-xml-nanohttp.html
index 720e7ae..933ac6d 100644
--- a/doc/html/gnome-xml-nanohttp.html
+++ b/doc/html/gnome-xml-nanohttp.html
@@ -15,8 +15,8 @@
 TITLE="xpath"
 HREF="gnome-xml-xpath.html"><LINK
 REL="NEXT"
-TITLE="parserInternals"
-HREF="gnome-xml-parserinternals.html"></HEAD
+TITLE="xmlIO"
+HREF="gnome-xml-xmlio.html"></HEAD
 ><BODY
 BGCOLOR="#FFFFFF"
 TEXT="#000000"
@@ -98,7 +98,7 @@
 BGCOLOR="#C00000"
 ALIGN="right"
 ><A
-HREF="gnome-xml-parserinternals.html"
+HREF="gnome-xml-xmlio.html"
 ><FONT
 COLOR="#FFFFFF"
 SIZE="3"
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN7111"
+NAME="AEN8149"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN7114"
+NAME="AEN8152"
 ></A
 ><H2
 >Synopsis</H2
@@ -183,7 +183,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN7124"
+NAME="AEN8162"
 ></A
 ><H2
 >Description</H2
@@ -193,14 +193,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN7127"
+NAME="AEN8165"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7129"
+NAME="AEN8167"
 ></A
 ><H3
 ><A
@@ -314,7 +314,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7156"
+NAME="AEN8194"
 ></A
 ><H3
 ><A
@@ -453,7 +453,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7188"
+NAME="AEN8226"
 ></A
 ><H3
 ><A
@@ -533,7 +533,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7207"
+NAME="AEN8245"
 ></A
 ><H3
 ><A
@@ -608,7 +608,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7226"
+NAME="AEN8264"
 ></A
 ><H3
 ><A
@@ -731,7 +731,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7255"
+NAME="AEN8293"
 ></A
 ><H3
 ><A
@@ -825,7 +825,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7278"
+NAME="AEN8316"
 ></A
 ><H3
 ><A
@@ -953,7 +953,7 @@
 BGCOLOR="#C00000"
 ALIGN="right"
 ><A
-HREF="gnome-xml-parserinternals.html"
+HREF="gnome-xml-xmlio.html"
 ><FONT
 COLOR="#FFFFFF"
 SIZE="3"
@@ -981,7 +981,7 @@
 COLOR="#FFFFFF"
 SIZE="3"
 ><B
->parserInternals</B
+>xmlIO</B
 ></FONT
 ></TD
 ></TR
diff --git a/doc/html/gnome-xml-parser.html b/doc/html/gnome-xml-parser.html
index 01cccda..9954e0b 100644
--- a/doc/html/gnome-xml-parser.html
+++ b/doc/html/gnome-xml-parser.html
@@ -15,8 +15,8 @@
 TITLE="Libxml Library Reference"
 HREF="libxml-lib.html"><LINK
 REL="NEXT"
-TITLE="tree"
-HREF="gnome-xml-tree.html"></HEAD
+TITLE="SAX"
+HREF="gnome-xml-sax.html"></HEAD
 ><BODY
 BGCOLOR="#FFFFFF"
 TEXT="#000000"
@@ -98,7 +98,7 @@
 BGCOLOR="#C00000"
 ALIGN="right"
 ><A
-HREF="gnome-xml-tree.html"
+HREF="gnome-xml-sax.html"
 ><FONT
 COLOR="#FFFFFF"
 SIZE="3"
@@ -8008,7 +8008,7 @@
 BGCOLOR="#C00000"
 ALIGN="right"
 ><A
-HREF="gnome-xml-tree.html"
+HREF="gnome-xml-sax.html"
 ><FONT
 COLOR="#FFFFFF"
 SIZE="3"
@@ -8036,7 +8036,7 @@
 COLOR="#FFFFFF"
 SIZE="3"
 ><B
->tree</B
+>SAX</B
 ></FONT
 ></TD
 ></TR
diff --git a/doc/html/gnome-xml-parserinternals.html b/doc/html/gnome-xml-parserinternals.html
index deff3d7..1efc34e 100644
--- a/doc/html/gnome-xml-parserinternals.html
+++ b/doc/html/gnome-xml-parserinternals.html
@@ -12,11 +12,11 @@
 TITLE="Libxml Library Reference"
 HREF="libxml-lib.html"><LINK
 REL="PREVIOUS"
-TITLE="nanohttp"
-HREF="gnome-xml-nanohttp.html"><LINK
+TITLE="xmlIO"
+HREF="gnome-xml-xmlio.html"><LINK
 REL="NEXT"
-TITLE="xmlmemory"
-HREF="gnome-xml-xmlmemory.html"></HEAD
+TITLE="encoding"
+HREF="gnome-xml-encoding.html"></HEAD
 ><BODY
 BGCOLOR="#FFFFFF"
 TEXT="#000000"
@@ -44,7 +44,7 @@
 BGCOLOR="#C00000"
 ALIGN="left"
 ><A
-HREF="gnome-xml-nanohttp.html"
+HREF="gnome-xml-xmlio.html"
 ><FONT
 COLOR="#FFFFFF"
 SIZE="3"
@@ -98,7 +98,7 @@
 BGCOLOR="#C00000"
 ALIGN="right"
 ><A
-HREF="gnome-xml-xmlmemory.html"
+HREF="gnome-xml-encoding.html"
 ><FONT
 COLOR="#FFFFFF"
 SIZE="3"
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN7298"
+NAME="AEN8563"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN7301"
+NAME="AEN8566"
 ></A
 ><H2
 >Synopsis</H2
@@ -248,9 +248,9 @@
 HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
 >xmlParserCtxtPtr</A
 > ctxt,
-                                             <GTKDOCLINK
-HREF="XMLCHARENCODING"
->xmlCharEncoding</GTKDOCLINK
+                                             <A
+HREF="gnome-xml-encoding.html#XMLCHARENCODING"
+>xmlCharEncoding</A
 > enc);
 void        <A
 HREF="gnome-xml-parserinternals.html#XMLHANDLEENTITY"
@@ -886,7 +886,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN7512"
+NAME="AEN8777"
 ></A
 ><H2
 >Description</H2
@@ -896,14 +896,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN7515"
+NAME="AEN8780"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7517"
+NAME="AEN8782"
 ></A
 ><H3
 ><A
@@ -929,7 +929,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7522"
+NAME="AEN8787"
 ></A
 ><H3
 ><A
@@ -942,7 +942,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7526"
+NAME="AEN8791"
 ></A
 ><H3
 ><A
@@ -1000,7 +1000,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7540"
+NAME="AEN8805"
 ></A
 ><H3
 ><A
@@ -1058,7 +1058,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7554"
+NAME="AEN8819"
 ></A
 ><H3
 ><A
@@ -1116,7 +1116,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7568"
+NAME="AEN8833"
 ></A
 ><H3
 ><A
@@ -1174,7 +1174,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7582"
+NAME="AEN8847"
 ></A
 ><H3
 ><A
@@ -1232,7 +1232,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7596"
+NAME="AEN8861"
 ></A
 ><H3
 ><A
@@ -1290,7 +1290,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7610"
+NAME="AEN8875"
 ></A
 ><H3
 ><A
@@ -1348,7 +1348,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7624"
+NAME="AEN8889"
 ></A
 ><H3
 ><A
@@ -1406,7 +1406,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7638"
+NAME="AEN8903"
 ></A
 ><H3
 ><A
@@ -1464,7 +1464,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7652"
+NAME="AEN8917"
 ></A
 ><H3
 ><A
@@ -1522,7 +1522,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7666"
+NAME="AEN8931"
 ></A
 ><H3
 ><A
@@ -1580,7 +1580,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7680"
+NAME="AEN8945"
 ></A
 ><H3
 ><A
@@ -1638,7 +1638,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7694"
+NAME="AEN8959"
 ></A
 ><H3
 ><A
@@ -1696,7 +1696,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7708"
+NAME="AEN8973"
 ></A
 ><H3
 ><A
@@ -1754,7 +1754,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7722"
+NAME="AEN8987"
 ></A
 ><H3
 ><A
@@ -1835,7 +1835,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7743"
+NAME="AEN9008"
 ></A
 ><H3
 ><A
@@ -1915,7 +1915,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7763"
+NAME="AEN9028"
 ></A
 ><H3
 ><A
@@ -2011,7 +2011,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7787"
+NAME="AEN9052"
 ></A
 ><H3
 ><A
@@ -2075,7 +2075,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7803"
+NAME="AEN9068"
 ></A
 ><H3
 ><A
@@ -2136,7 +2136,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7819"
+NAME="AEN9084"
 ></A
 ><H3
 ><A
@@ -2156,9 +2156,9 @@
 HREF="gnome-xml-parser.html#XMLPARSERCTXTPTR"
 >xmlParserCtxtPtr</A
 > ctxt,
-                                             <GTKDOCLINK
-HREF="XMLCHARENCODING"
->xmlCharEncoding</GTKDOCLINK
+                                             <A
+HREF="gnome-xml-encoding.html#XMLCHARENCODING"
+>xmlCharEncoding</A
 > enc);</PRE
 ></TD
 ></TR
@@ -2221,7 +2221,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7840"
+NAME="AEN9105"
 ></A
 ><H3
 ><A
@@ -2308,7 +2308,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7862"
+NAME="AEN9127"
 ></A
 ><H3
 ><A
@@ -2410,7 +2410,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7888"
+NAME="AEN9153"
 ></A
 ><H3
 ><A
@@ -2495,7 +2495,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7909"
+NAME="AEN9174"
 ></A
 ><H3
 ><A
@@ -2577,7 +2577,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7930"
+NAME="AEN9195"
 ></A
 ><H3
 ><A
@@ -2640,7 +2640,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7946"
+NAME="AEN9211"
 ></A
 ><H3
 ><A
@@ -2739,7 +2739,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7971"
+NAME="AEN9236"
 ></A
 ><H3
 ><A
@@ -2848,7 +2848,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8000"
+NAME="AEN9265"
 ></A
 ><H3
 ><A
@@ -2934,7 +2934,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8023"
+NAME="AEN9288"
 ></A
 ><H3
 ><A
@@ -3043,7 +3043,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8052"
+NAME="AEN9317"
 ></A
 ><H3
 ><A
@@ -3128,7 +3128,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8075"
+NAME="AEN9340"
 ></A
 ><H3
 ><A
@@ -3210,7 +3210,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8096"
+NAME="AEN9361"
 ></A
 ><H3
 ><A
@@ -3279,7 +3279,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8114"
+NAME="AEN9379"
 ></A
 ><H3
 ><A
@@ -3368,7 +3368,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8138"
+NAME="AEN9403"
 ></A
 ><H3
 ><A
@@ -3456,7 +3456,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8162"
+NAME="AEN9427"
 ></A
 ><H3
 ><A
@@ -3541,7 +3541,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8185"
+NAME="AEN9450"
 ></A
 ><H3
 ><A
@@ -3646,7 +3646,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8212"
+NAME="AEN9477"
 ></A
 ><H3
 ><A
@@ -3784,7 +3784,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8246"
+NAME="AEN9511"
 ></A
 ><H3
 ><A
@@ -3867,7 +3867,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8268"
+NAME="AEN9533"
 ></A
 ><H3
 ><A
@@ -3950,7 +3950,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8290"
+NAME="AEN9555"
 ></A
 ><H3
 ><A
@@ -4034,7 +4034,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8311"
+NAME="AEN9576"
 ></A
 ><H3
 ><A
@@ -4165,7 +4165,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8344"
+NAME="AEN9609"
 ></A
 ><H3
 ><A
@@ -4232,7 +4232,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8361"
+NAME="AEN9626"
 ></A
 ><H3
 ><A
@@ -4315,7 +4315,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8383"
+NAME="AEN9648"
 ></A
 ><H3
 ><A
@@ -4382,7 +4382,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8401"
+NAME="AEN9666"
 ></A
 ><H3
 ><A
@@ -4457,7 +4457,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8421"
+NAME="AEN9686"
 ></A
 ><H3
 ><A
@@ -4535,7 +4535,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8444"
+NAME="AEN9709"
 ></A
 ><H3
 ><A
@@ -4674,7 +4674,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8481"
+NAME="AEN9746"
 ></A
 ><H3
 ><A
@@ -4763,7 +4763,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8505"
+NAME="AEN9770"
 ></A
 ><H3
 ><A
@@ -4850,7 +4850,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8528"
+NAME="AEN9793"
 ></A
 ><H3
 ><A
@@ -4953,7 +4953,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8555"
+NAME="AEN9820"
 ></A
 ><H3
 ><A
@@ -5097,7 +5097,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8593"
+NAME="AEN9858"
 ></A
 ><H3
 ><A
@@ -5164,7 +5164,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8611"
+NAME="AEN9876"
 ></A
 ><H3
 ><A
@@ -5262,7 +5262,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8637"
+NAME="AEN9902"
 ></A
 ><H3
 ><A
@@ -5365,7 +5365,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8663"
+NAME="AEN9928"
 ></A
 ><H3
 ><A
@@ -5488,7 +5488,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8694"
+NAME="AEN9959"
 ></A
 ><H3
 ><A
@@ -5571,7 +5571,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8716"
+NAME="AEN9981"
 ></A
 ><H3
 ><A
@@ -5650,7 +5650,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8735"
+NAME="AEN10000"
 ></A
 ><H3
 ><A
@@ -5738,7 +5738,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8758"
+NAME="AEN10023"
 ></A
 ><H3
 ><A
@@ -5839,7 +5839,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8782"
+NAME="AEN10047"
 ></A
 ><H3
 ><A
@@ -5868,9 +5868,9 @@
 HREF="CHARACTER"
 >character</GTKDOCLINK
 >() if this is a
-CharRef, a predefined entity, if there is no <GTKDOCLINK
-HREF="REFERENCE"
->reference</GTKDOCLINK
+CharRef, a predefined entity, if there is no <A
+HREF="gnome-xml-sax.html#REFERENCE"
+>reference</A
 >() callback.
 or if the parser was asked to switch to that mode.</P
 ><P
@@ -5913,7 +5913,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8801"
+NAME="AEN10066"
 ></A
 ><H3
 ><A
@@ -5999,7 +5999,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8822"
+NAME="AEN10087"
 ></A
 ><H3
 ><A
@@ -6069,7 +6069,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8840"
+NAME="AEN10105"
 ></A
 ><H3
 ><A
@@ -6194,7 +6194,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8874"
+NAME="AEN10139"
 ></A
 ><H3
 ><A
@@ -6296,7 +6296,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8903"
+NAME="AEN10168"
 ></A
 ><H3
 ><A
@@ -6386,7 +6386,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8927"
+NAME="AEN10192"
 ></A
 ><H3
 ><A
@@ -6457,7 +6457,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8947"
+NAME="AEN10212"
 ></A
 ><H3
 ><A
@@ -6522,7 +6522,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8964"
+NAME="AEN10229"
 ></A
 ><H3
 ><A
@@ -6604,7 +6604,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8983"
+NAME="AEN10248"
 ></A
 ><H3
 ><A
@@ -6687,7 +6687,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9005"
+NAME="AEN10270"
 ></A
 ><H3
 ><A
@@ -6772,7 +6772,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9028"
+NAME="AEN10293"
 ></A
 ><H3
 ><A
@@ -6855,7 +6855,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9050"
+NAME="AEN10315"
 ></A
 ><H3
 ><A
@@ -6940,7 +6940,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9073"
+NAME="AEN10338"
 ></A
 ><H3
 ><A
@@ -7035,7 +7035,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9095"
+NAME="AEN10360"
 ></A
 ><H3
 ><A
@@ -7100,7 +7100,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9112"
+NAME="AEN10377"
 ></A
 ><H3
 ><A
@@ -7165,7 +7165,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9129"
+NAME="AEN10394"
 ></A
 ><H3
 ><A
@@ -7274,7 +7274,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9157"
+NAME="AEN10422"
 ></A
 ><H3
 ><A
@@ -7300,7 +7300,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9162"
+NAME="AEN10427"
 ></A
 ><H3
 ><A
@@ -7326,7 +7326,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9167"
+NAME="AEN10432"
 ></A
 ><H3
 ><A
@@ -7352,7 +7352,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9172"
+NAME="AEN10437"
 ></A
 ><H3
 ><A
@@ -7378,7 +7378,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9177"
+NAME="AEN10442"
 ></A
 ><H3
 ><A
@@ -7561,7 +7561,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9222"
+NAME="AEN10487"
 ></A
 ><H3
 ><A
@@ -7658,7 +7658,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9246"
+NAME="AEN10511"
 ></A
 ><H3
 ><A
@@ -7737,7 +7737,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9266"
+NAME="AEN10531"
 ></A
 ><H3
 ><A
@@ -7834,7 +7834,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9290"
+NAME="AEN10555"
 ></A
 ><H3
 ><A
@@ -7926,7 +7926,7 @@
 BGCOLOR="#C00000"
 ALIGN="left"
 ><A
-HREF="gnome-xml-nanohttp.html"
+HREF="gnome-xml-xmlio.html"
 ><FONT
 COLOR="#FFFFFF"
 SIZE="3"
@@ -7980,7 +7980,7 @@
 BGCOLOR="#C00000"
 ALIGN="right"
 ><A
-HREF="gnome-xml-xmlmemory.html"
+HREF="gnome-xml-encoding.html"
 ><FONT
 COLOR="#FFFFFF"
 SIZE="3"
@@ -7998,7 +7998,7 @@
 COLOR="#FFFFFF"
 SIZE="3"
 ><B
->nanohttp</B
+>xmlIO</B
 ></FONT
 ></TD
 ><TD
@@ -8008,7 +8008,7 @@
 COLOR="#FFFFFF"
 SIZE="3"
 ><B
->xmlmemory</B
+>encoding</B
 ></FONT
 ></TD
 ></TR
diff --git a/doc/html/gnome-xml-tree.html b/doc/html/gnome-xml-tree.html
index ae4df8d..4a9b95c 100644
--- a/doc/html/gnome-xml-tree.html
+++ b/doc/html/gnome-xml-tree.html
@@ -12,8 +12,8 @@
 TITLE="Libxml Library Reference"
 HREF="libxml-lib.html"><LINK
 REL="PREVIOUS"
-TITLE="parser"
-HREF="gnome-xml-parser.html"><LINK
+TITLE="SAX"
+HREF="gnome-xml-sax.html"><LINK
 REL="NEXT"
 TITLE="entities"
 HREF="gnome-xml-entities.html"></HEAD
@@ -44,7 +44,7 @@
 BGCOLOR="#C00000"
 ALIGN="left"
 ><A
-HREF="gnome-xml-parser.html"
+HREF="gnome-xml-sax.html"
 ><FONT
 COLOR="#FFFFFF"
 SIZE="3"
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1935"
+NAME="AEN2839"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1938"
+NAME="AEN2842"
 ></A
 ><H2
 >Synopsis</H2
@@ -218,6 +218,18 @@
 HREF="gnome-xml-tree.html#XMLREFPTR"
 >xmlRefPtr</A
 >;
+enum        <A
+HREF="gnome-xml-tree.html#XMLBUFFERALLOCATIONSCHEME"
+>xmlBufferAllocationScheme</A
+>;
+typedef     <A
+HREF="gnome-xml-tree.html#XMLBUFFER"
+>xmlBuffer</A
+>;
+typedef     <A
+HREF="gnome-xml-tree.html#XMLBUFFERPTR"
+>xmlBufferPtr</A
+>;
 typedef     <A
 HREF="gnome-xml-tree.html#XMLNODE"
 >xmlNode</A
@@ -234,14 +246,6 @@
 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
@@ -254,6 +258,10 @@
 HREF="gnome-xml-tree.html#XMLINDENTTREEOUTPUT"
 >xmlIndentTreeOutput</A
 >;
+extern      xmlBufferAllocationScheme <A
+HREF="gnome-xml-tree.html#XMLBUFFERALLOCSCHEME"
+>xmlBufferAllocScheme</A
+>;
 <A
 HREF="gnome-xml-tree.html#XMLBUFFERPTR"
 >xmlBufferPtr</A
@@ -261,6 +269,16 @@
 HREF="gnome-xml-tree.html#XMLBUFFERCREATE"
 >xmlBufferCreate</A
 >                (void);
+<A
+HREF="gnome-xml-tree.html#XMLBUFFERPTR"
+>xmlBufferPtr</A
+> <A
+HREF="gnome-xml-tree.html#XMLBUFFERCREATESIZE"
+>xmlBufferCreateSize</A
+>            (<GTKDOCLINK
+HREF="SIZE-T"
+>size_t</GTKDOCLINK
+> size);
 void        <A
 HREF="gnome-xml-tree.html#XMLBUFFERFREE"
 >xmlBufferFree</A
@@ -325,6 +343,41 @@
 HREF="gnome-xml-tree.html#XMLBUFFERPTR"
 >xmlBufferPtr</A
 > buf);
+const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+>* <A
+HREF="gnome-xml-tree.html#XMLBUFFERCONTENT"
+>xmlBufferContent</A
+>             (const <A
+HREF="gnome-xml-tree.html#XMLBUFFERPTR"
+>xmlBufferPtr</A
+> buf);
+int         <A
+HREF="gnome-xml-tree.html#XMLBUFFERUSE"
+>xmlBufferUse</A
+>                    (const <A
+HREF="gnome-xml-tree.html#XMLBUFFERPTR"
+>xmlBufferPtr</A
+> buf);
+void        <A
+HREF="gnome-xml-tree.html#XMLBUFFERSETALLOCATIONSCHEME"
+>xmlBufferSetAllocationScheme</A
+>    (<A
+HREF="gnome-xml-tree.html#XMLBUFFERPTR"
+>xmlBufferPtr</A
+> buf,
+                                             <A
+HREF="gnome-xml-tree.html#XMLBUFFERALLOCATIONSCHEME"
+>xmlBufferAllocationScheme</A
+> scheme);
+int         <A
+HREF="gnome-xml-tree.html#XMLBUFFERLENGTH"
+>xmlBufferLength</A
+>                 (const <A
+HREF="gnome-xml-tree.html#XMLBUFFERPTR"
+>xmlBufferPtr</A
+> buf);
 <A
 HREF="gnome-xml-tree.html#XMLDTDPTR"
 >xmlDtdPtr</A
@@ -1228,7 +1281,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2238"
+NAME="AEN3157"
 ></A
 ><H2
 >Description</H2
@@ -1238,14 +1291,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2241"
+NAME="AEN3160"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2243"
+NAME="AEN3162"
 ></A
 ><H3
 ><A
@@ -1285,7 +1338,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2248"
+NAME="AEN3167"
 ></A
 ><H3
 ><A
@@ -1298,7 +1351,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2252"
+NAME="AEN3171"
 ></A
 ><H3
 ><A
@@ -1324,7 +1377,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2257"
+NAME="AEN3176"
 ></A
 ><H3
 ><A
@@ -1350,7 +1403,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2262"
+NAME="AEN3181"
 ></A
 ><H3
 ><A
@@ -1376,7 +1429,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2267"
+NAME="AEN3186"
 ></A
 ><H3
 ><A
@@ -1413,7 +1466,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2272"
+NAME="AEN3191"
 ></A
 ><H3
 ><A
@@ -1444,7 +1497,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2277"
+NAME="AEN3196"
 ></A
 ><H3
 ><A
@@ -1470,7 +1523,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2282"
+NAME="AEN3201"
 ></A
 ><H3
 ><A
@@ -1496,7 +1549,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2287"
+NAME="AEN3206"
 ></A
 ><H3
 ><A
@@ -1527,7 +1580,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2292"
+NAME="AEN3211"
 ></A
 ><H3
 ><A
@@ -1558,7 +1611,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2297"
+NAME="AEN3216"
 ></A
 ><H3
 ><A
@@ -1584,7 +1637,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2302"
+NAME="AEN3221"
 ></A
 ><H3
 ><A
@@ -1615,7 +1668,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2307"
+NAME="AEN3226"
 ></A
 ><H3
 ><A
@@ -1641,7 +1694,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2312"
+NAME="AEN3231"
 ></A
 ><H3
 ><A
@@ -1670,7 +1723,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2317"
+NAME="AEN3236"
 ></A
 ><H3
 ><A
@@ -1696,7 +1749,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2322"
+NAME="AEN3241"
 ></A
 ><H3
 ><A
@@ -1722,7 +1775,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2327"
+NAME="AEN3246"
 ></A
 ><H3
 ><A
@@ -1748,7 +1801,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2332"
+NAME="AEN3251"
 ></A
 ><H3
 ><A
@@ -1774,7 +1827,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2337"
+NAME="AEN3256"
 ></A
 ><H3
 ><A
@@ -1800,13 +1853,13 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2342"
+NAME="AEN3261"
 ></A
 ><H3
 ><A
-NAME="XMLNODE"
+NAME="XMLBUFFERALLOCATIONSCHEME"
 ></A
->xmlNode</H3
+>enum xmlBufferAllocationScheme</H3
 ><TABLE
 BORDER="0"
 BGCOLOR="#D6E8FF"
@@ -1816,95 +1869,22 @@
 ><TD
 ><PRE
 CLASS="PROGRAMLISTING"
->typedef _xmlNode xmlNode;</PRE
+>typedef enum {
+    XML_BUFFER_ALLOC_DOUBLEIT,
+    XML_BUFFER_ALLOC_EXACT
+} xmlBufferAllocationScheme;</PRE
 ></TD
 ></TR
 ></TABLE
 ><P
+>Sets the allocation scheme for this buffer</P
+><P
 ></P
 ></DIV
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2347"
-></A
-><H3
-><A
-NAME="XMLNODEPTR"
-></A
->xmlNodePtr</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->typedef _xmlNode *xmlNodePtr;</PRE
-></TD
-></TR
-></TABLE
-><P
-></P
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2352"
-></A
-><H3
-><A
-NAME="XMLDOC"
-></A
->xmlDoc</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->typedef _xmlDoc xmlDoc;</PRE
-></TD
-></TR
-></TABLE
-><P
-></P
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2357"
-></A
-><H3
-><A
-NAME="XMLDOCPTR"
-></A
->xmlDocPtr</H3
-><TABLE
-BORDER="0"
-BGCOLOR="#D6E8FF"
-WIDTH="100%"
-CELLPADDING="6"
-><TR
-><TD
-><PRE
-CLASS="PROGRAMLISTING"
->typedef xmlDoc *xmlDocPtr;</PRE
-></TD
-></TR
-></TABLE
-><P
-></P
-></DIV
-><HR><DIV
-CLASS="REFSECT2"
-><A
-NAME="AEN2362"
+NAME="AEN3267"
 ></A
 ><H3
 ><A
@@ -1930,7 +1910,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2367"
+NAME="AEN3272"
 ></A
 ><H3
 ><A
@@ -1956,7 +1936,111 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2372"
+NAME="AEN3277"
+></A
+><H3
+><A
+NAME="XMLNODE"
+></A
+>xmlNode</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef _xmlNode xmlNode;</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3282"
+></A
+><H3
+><A
+NAME="XMLNODEPTR"
+></A
+>xmlNodePtr</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef _xmlNode *xmlNodePtr;</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3287"
+></A
+><H3
+><A
+NAME="XMLDOC"
+></A
+>xmlDoc</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef _xmlDoc xmlDoc;</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3292"
+></A
+><H3
+><A
+NAME="XMLDOCPTR"
+></A
+>xmlDocPtr</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>typedef xmlDoc *xmlDocPtr;</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3297"
 ></A
 ><H3
 ><A
@@ -1982,7 +2066,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2377"
+NAME="AEN3302"
 ></A
 ><H3
 ><A
@@ -2008,7 +2092,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2382"
+NAME="AEN3307"
 ></A
 ><H3
 ><A
@@ -2034,7 +2118,33 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2387"
+NAME="AEN3312"
+></A
+><H3
+><A
+NAME="XMLBUFFERALLOCSCHEME"
+></A
+>xmlBufferAllocScheme</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>extern xmlBufferAllocationScheme xmlBufferAllocScheme; /* alloc scheme to use */</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3317"
 ></A
 ><H3
 ><A
@@ -2095,7 +2205,88 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2403"
+NAME="AEN3333"
+></A
+><H3
+><A
+NAME="XMLBUFFERCREATESIZE"
+></A
+>xmlBufferCreateSize ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+><A
+HREF="gnome-xml-tree.html#XMLBUFFERPTR"
+>xmlBufferPtr</A
+> xmlBufferCreateSize            (<GTKDOCLINK
+HREF="SIZE-T"
+>size_t</GTKDOCLINK
+> size);</PRE
+></TD
+></TR
+></TABLE
+><P
+>routine to create an XML buffer.</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>size</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+> initial size of buffer</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>the new structure.</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3354"
 ></A
 ><H3
 ><A
@@ -2158,7 +2349,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2419"
+NAME="AEN3370"
 ></A
 ><H3
 ><A
@@ -2257,7 +2448,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2444"
+NAME="AEN3395"
 ></A
 ><H3
 ><A
@@ -2359,7 +2550,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2469"
+NAME="AEN3420"
 ></A
 ><H3
 ><A
@@ -2443,7 +2634,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2490"
+NAME="AEN3441"
 ></A
 ><H3
 ><A
@@ -2524,7 +2715,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2510"
+NAME="AEN3461"
 ></A
 ><H3
 ><A
@@ -2620,7 +2811,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2534"
+NAME="AEN3485"
 ></A
 ><H3
 ><A
@@ -2683,7 +2874,324 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2550"
+NAME="AEN3501"
+></A
+><H3
+><A
+NAME="XMLBUFFERCONTENT"
+></A
+>xmlBufferContent ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+>* xmlBufferContent             (const <A
+HREF="gnome-xml-tree.html#XMLBUFFERPTR"
+>xmlBufferPtr</A
+> buf);</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>buf</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the buffer to resize</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>the internal content</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3522"
+></A
+><H3
+><A
+NAME="XMLBUFFERUSE"
+></A
+>xmlBufferUse ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>int         xmlBufferUse                    (const <A
+HREF="gnome-xml-tree.html#XMLBUFFERPTR"
+>xmlBufferPtr</A
+> buf);</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
+>buf</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="AEN3541"
+></A
+><H3
+><A
+NAME="XMLBUFFERSETALLOCATIONSCHEME"
+></A
+>xmlBufferSetAllocationScheme ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>void        xmlBufferSetAllocationScheme    (<A
+HREF="gnome-xml-tree.html#XMLBUFFERPTR"
+>xmlBufferPtr</A
+> buf,
+                                             <A
+HREF="gnome-xml-tree.html#XMLBUFFERALLOCATIONSCHEME"
+>xmlBufferAllocationScheme</A
+> scheme);</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
+>buf</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
+>scheme</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>&nbsp;</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3561"
+></A
+><H3
+><A
+NAME="XMLBUFFERLENGTH"
+></A
+>xmlBufferLength ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>int         xmlBufferLength                 (const <A
+HREF="gnome-xml-tree.html#XMLBUFFERPTR"
+>xmlBufferPtr</A
+> buf);</PRE
+></TD
+></TR
+></TABLE
+><P
+></P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>buf</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the buffer </TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>the length of data in the internal content</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3581"
 ></A
 ><H3
 ><A
@@ -2827,7 +3335,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2586"
+NAME="AEN3617"
 ></A
 ><H3
 ><A
@@ -2971,7 +3479,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2622"
+NAME="AEN3653"
 ></A
 ><H3
 ><A
@@ -3034,7 +3542,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2638"
+NAME="AEN3669"
 ></A
 ><H3
 ><A
@@ -3157,7 +3665,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2669"
+NAME="AEN3700"
 ></A
 ><H3
 ><A
@@ -3280,7 +3788,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2700"
+NAME="AEN3731"
 ></A
 ><H3
 ><A
@@ -3343,7 +3851,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2716"
+NAME="AEN3747"
 ></A
 ><H3
 ><A
@@ -3424,7 +3932,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2737"
+NAME="AEN3768"
 ></A
 ><H3
 ><A
@@ -3488,7 +3996,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2753"
+NAME="AEN3784"
 ></A
 ><H3
 ><A
@@ -3611,7 +4119,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2784"
+NAME="AEN3815"
 ></A
 ><H3
 ><A
@@ -3734,7 +4242,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2815"
+NAME="AEN3846"
 ></A
 ><H3
 ><A
@@ -3878,7 +4386,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2851"
+NAME="AEN3882"
 ></A
 ><H3
 ><A
@@ -3941,7 +4449,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2867"
+NAME="AEN3898"
 ></A
 ><H3
 ><A
@@ -4004,7 +4512,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2883"
+NAME="AEN3914"
 ></A
 ><H3
 ><A
@@ -4106,7 +4614,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2909"
+NAME="AEN3940"
 ></A
 ><H3
 ><A
@@ -4208,7 +4716,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2935"
+NAME="AEN3966"
 ></A
 ><H3
 ><A
@@ -4289,7 +4797,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2956"
+NAME="AEN3987"
 ></A
 ><H3
 ><A
@@ -4389,7 +4897,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2981"
+NAME="AEN4012"
 ></A
 ><H3
 ><A
@@ -4559,7 +5067,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3022"
+NAME="AEN4053"
 ></A
 ><H3
 ><A
@@ -4714,7 +5222,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3060"
+NAME="AEN4091"
 ></A
 ><H3
 ><A
@@ -4828,7 +5336,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3088"
+NAME="AEN4119"
 ></A
 ><H3
 ><A
@@ -5004,7 +5512,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3130"
+NAME="AEN4161"
 ></A
 ><H3
 ><A
@@ -5165,7 +5673,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3169"
+NAME="AEN4200"
 ></A
 ><H3
 ><A
@@ -5267,7 +5775,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3195"
+NAME="AEN4226"
 ></A
 ><H3
 ><A
@@ -5348,7 +5856,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3216"
+NAME="AEN4247"
 ></A
 ><H3
 ><A
@@ -5450,7 +5958,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3242"
+NAME="AEN4273"
 ></A
 ><H3
 ><A
@@ -5571,7 +6079,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3272"
+NAME="AEN4303"
 ></A
 ><H3
 ><A
@@ -5670,7 +6178,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3297"
+NAME="AEN4328"
 ></A
 ><H3
 ><A
@@ -5772,7 +6280,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3323"
+NAME="AEN4354"
 ></A
 ><H3
 ><A
@@ -5853,7 +6361,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3344"
+NAME="AEN4375"
 ></A
 ><H3
 ><A
@@ -5973,7 +6481,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3374"
+NAME="AEN4405"
 ></A
 ><H3
 ><A
@@ -6075,7 +6583,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3400"
+NAME="AEN4431"
 ></A
 ><H3
 ><A
@@ -6174,7 +6682,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3425"
+NAME="AEN4456"
 ></A
 ><H3
 ><A
@@ -6255,7 +6763,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3446"
+NAME="AEN4477"
 ></A
 ><H3
 ><A
@@ -6336,7 +6844,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3467"
+NAME="AEN4498"
 ></A
 ><H3
 ><A
@@ -6414,7 +6922,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3487"
+NAME="AEN4518"
 ></A
 ><H3
 ><A
@@ -6521,7 +7029,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3514"
+NAME="AEN4545"
 ></A
 ><H3
 ><A
@@ -6628,7 +7136,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3541"
+NAME="AEN4572"
 ></A
 ><H3
 ><A
@@ -6691,7 +7199,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3557"
+NAME="AEN4588"
 ></A
 ><H3
 ><A
@@ -6793,7 +7301,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3583"
+NAME="AEN4614"
 ></A
 ><H3
 ><A
@@ -6900,7 +7408,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3609"
+NAME="AEN4640"
 ></A
 ><H3
 ><A
@@ -6964,7 +7472,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3625"
+NAME="AEN4656"
 ></A
 ><H3
 ><A
@@ -7027,7 +7535,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3641"
+NAME="AEN4672"
 ></A
 ><H3
 ><A
@@ -7158,7 +7666,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3673"
+NAME="AEN4704"
 ></A
 ><H3
 ><A
@@ -7282,7 +7790,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3704"
+NAME="AEN4735"
 ></A
 ><H3
 ><A
@@ -7386,7 +7894,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3730"
+NAME="AEN4761"
 ></A
 ><H3
 ><A
@@ -7470,7 +7978,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3751"
+NAME="AEN4782"
 ></A
 ><H3
 ><A
@@ -7551,7 +8059,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3772"
+NAME="AEN4803"
 ></A
 ><H3
 ><A
@@ -7632,7 +8140,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3793"
+NAME="AEN4824"
 ></A
 ><H3
 ><A
@@ -7755,7 +8263,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3824"
+NAME="AEN4855"
 ></A
 ><H3
 ><A
@@ -7859,7 +8367,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3850"
+NAME="AEN4881"
 ></A
 ><H3
 ><A
@@ -7962,7 +8470,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3876"
+NAME="AEN4907"
 ></A
 ><H3
 ><A
@@ -8083,7 +8591,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3906"
+NAME="AEN4937"
 ></A
 ><H3
 ><A
@@ -8204,7 +8712,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3936"
+NAME="AEN4967"
 ></A
 ><H3
 ><A
@@ -8288,7 +8796,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3957"
+NAME="AEN4988"
 ></A
 ><H3
 ><A
@@ -8395,7 +8903,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3983"
+NAME="AEN5014"
 ></A
 ><H3
 ><A
@@ -8479,7 +8987,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4004"
+NAME="AEN5035"
 ></A
 ><H3
 ><A
@@ -8586,7 +9094,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4030"
+NAME="AEN5061"
 ></A
 ><H3
 ><A
@@ -8671,7 +9179,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4051"
+NAME="AEN5082"
 ></A
 ><H3
 ><A
@@ -8754,7 +9262,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4072"
+NAME="AEN5103"
 ></A
 ><H3
 ><A
@@ -8839,7 +9347,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4093"
+NAME="AEN5124"
 ></A
 ><H3
 ><A
@@ -8915,7 +9423,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4112"
+NAME="AEN5143"
 ></A
 ><H3
 ><A
@@ -8991,7 +9499,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4131"
+NAME="AEN5162"
 ></A
 ><H3
 ><A
@@ -9076,7 +9584,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4152"
+NAME="AEN5183"
 ></A
 ><H3
 ><A
@@ -9158,7 +9666,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4172"
+NAME="AEN5203"
 ></A
 ><H3
 ><A
@@ -9244,7 +9752,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4193"
+NAME="AEN5224"
 ></A
 ><H3
 ><A
@@ -9347,7 +9855,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4218"
+NAME="AEN5249"
 ></A
 ><H3
 ><A
@@ -9431,7 +9939,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4239"
+NAME="AEN5270"
 ></A
 ><H3
 ><A
@@ -9534,7 +10042,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4264"
+NAME="AEN5295"
 ></A
 ><H3
 ><A
@@ -9612,7 +10120,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4284"
+NAME="AEN5315"
 ></A
 ><H3
 ><A
@@ -9694,7 +10202,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4304"
+NAME="AEN5335"
 ></A
 ><H3
 ><A
@@ -9752,7 +10260,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4319"
+NAME="AEN5350"
 ></A
 ><H3
 ><A
@@ -9826,7 +10334,7 @@
 BGCOLOR="#C00000"
 ALIGN="left"
 ><A
-HREF="gnome-xml-parser.html"
+HREF="gnome-xml-sax.html"
 ><FONT
 COLOR="#FFFFFF"
 SIZE="3"
@@ -9898,7 +10406,7 @@
 COLOR="#FFFFFF"
 SIZE="3"
 ><B
->parser</B
+>SAX</B
 ></FONT
 ></TD
 ><TD
diff --git a/doc/html/gnome-xml-valid.html b/doc/html/gnome-xml-valid.html
index 5575efe..7486076 100644
--- a/doc/html/gnome-xml-valid.html
+++ b/doc/html/gnome-xml-valid.html
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4762"
+NAME="AEN5800"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4765"
+NAME="AEN5803"
 ></A
 ><H2
 >Synopsis</H2
@@ -809,7 +809,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4948"
+NAME="AEN5986"
 ></A
 ><H2
 >Description</H2
@@ -819,14 +819,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4951"
+NAME="AEN5989"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4953"
+NAME="AEN5991"
 ></A
 ><H3
 ><A
@@ -920,7 +920,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4975"
+NAME="AEN6013"
 ></A
 ><H3
 ><A
@@ -1014,7 +1014,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4997"
+NAME="AEN6035"
 ></A
 ><H3
 ><A
@@ -1040,7 +1040,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5002"
+NAME="AEN6040"
 ></A
 ><H3
 ><A
@@ -1066,7 +1066,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5007"
+NAME="AEN6045"
 ></A
 ><H3
 ><A
@@ -1092,7 +1092,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5012"
+NAME="AEN6050"
 ></A
 ><H3
 ><A
@@ -1118,7 +1118,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5017"
+NAME="AEN6055"
 ></A
 ><H3
 ><A
@@ -1144,7 +1144,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5022"
+NAME="AEN6060"
 ></A
 ><H3
 ><A
@@ -1170,7 +1170,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5027"
+NAME="AEN6065"
 ></A
 ><H3
 ><A
@@ -1196,7 +1196,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5032"
+NAME="AEN6070"
 ></A
 ><H3
 ><A
@@ -1222,7 +1222,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5037"
+NAME="AEN6075"
 ></A
 ><H3
 ><A
@@ -1248,7 +1248,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5042"
+NAME="AEN6080"
 ></A
 ><H3
 ><A
@@ -1274,7 +1274,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5047"
+NAME="AEN6085"
 ></A
 ><H3
 ><A
@@ -1439,7 +1439,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5088"
+NAME="AEN6126"
 ></A
 ><H3
 ><A
@@ -1520,7 +1520,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5109"
+NAME="AEN6147"
 ></A
 ><H3
 ><A
@@ -1583,7 +1583,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5125"
+NAME="AEN6163"
 ></A
 ><H3
 ><A
@@ -1667,7 +1667,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5146"
+NAME="AEN6184"
 ></A
 ><H3
 ><A
@@ -1769,7 +1769,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5172"
+NAME="AEN6210"
 ></A
 ><H3
 ><A
@@ -1850,7 +1850,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5193"
+NAME="AEN6231"
 ></A
 ><H3
 ><A
@@ -1913,7 +1913,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5209"
+NAME="AEN6247"
 ></A
 ><H3
 ><A
@@ -2078,7 +2078,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5250"
+NAME="AEN6288"
 ></A
 ><H3
 ><A
@@ -2159,7 +2159,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5271"
+NAME="AEN6309"
 ></A
 ><H3
 ><A
@@ -2222,7 +2222,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5287"
+NAME="AEN6325"
 ></A
 ><H3
 ><A
@@ -2306,7 +2306,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5308"
+NAME="AEN6346"
 ></A
 ><H3
 ><A
@@ -2388,7 +2388,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5329"
+NAME="AEN6367"
 ></A
 ><H3
 ><A
@@ -2451,7 +2451,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5345"
+NAME="AEN6383"
 ></A
 ><H3
 ><A
@@ -2533,7 +2533,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5366"
+NAME="AEN6404"
 ></A
 ><H3
 ><A
@@ -2761,7 +2761,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5422"
+NAME="AEN6460"
 ></A
 ><H3
 ><A
@@ -2842,7 +2842,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5443"
+NAME="AEN6481"
 ></A
 ><H3
 ><A
@@ -2905,7 +2905,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5459"
+NAME="AEN6497"
 ></A
 ><H3
 ><A
@@ -2989,7 +2989,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5480"
+NAME="AEN6518"
 ></A
 ><H3
 ><A
@@ -3133,7 +3133,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5516"
+NAME="AEN6554"
 ></A
 ><H3
 ><A
@@ -3212,7 +3212,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5536"
+NAME="AEN6574"
 ></A
 ><H3
 ><A
@@ -3275,7 +3275,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5552"
+NAME="AEN6590"
 ></A
 ><H3
 ><A
@@ -3377,7 +3377,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5578"
+NAME="AEN6616"
 ></A
 ><H3
 ><A
@@ -3499,7 +3499,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5608"
+NAME="AEN6646"
 ></A
 ><H3
 ><A
@@ -3643,7 +3643,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5644"
+NAME="AEN6682"
 ></A
 ><H3
 ><A
@@ -3722,7 +3722,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5664"
+NAME="AEN6702"
 ></A
 ><H3
 ><A
@@ -3785,7 +3785,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5680"
+NAME="AEN6718"
 ></A
 ><H3
 ><A
@@ -3907,7 +3907,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5710"
+NAME="AEN6748"
 ></A
 ><H3
 ><A
@@ -4010,7 +4010,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5735"
+NAME="AEN6773"
 ></A
 ><H3
 ><A
@@ -4135,7 +4135,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5765"
+NAME="AEN6803"
 ></A
 ><H3
 ><A
@@ -4262,7 +4262,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5796"
+NAME="AEN6834"
 ></A
 ><H3
 ><A
@@ -4376,7 +4376,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5825"
+NAME="AEN6863"
 ></A
 ><H3
 ><A
@@ -4500,7 +4500,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5855"
+NAME="AEN6893"
 ></A
 ><H3
 ><A
@@ -4622,7 +4622,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5886"
+NAME="AEN6924"
 ></A
 ><H3
 ><A
@@ -4725,7 +4725,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5912"
+NAME="AEN6950"
 ></A
 ><H3
 ><A
@@ -4845,7 +4845,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5942"
+NAME="AEN6980"
 ></A
 ><H3
 ><A
@@ -4975,7 +4975,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5974"
+NAME="AEN7012"
 ></A
 ><H3
 ><A
@@ -5149,7 +5149,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6015"
+NAME="AEN7053"
 ></A
 ><H3
 ><A
@@ -5251,7 +5251,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6041"
+NAME="AEN7079"
 ></A
 ><H3
 ><A
@@ -5372,7 +5372,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6071"
+NAME="AEN7109"
 ></A
 ><H3
 ><A
@@ -5472,7 +5472,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6096"
+NAME="AEN7134"
 ></A
 ><H3
 ><A
@@ -5596,7 +5596,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6127"
+NAME="AEN7165"
 ></A
 ><H3
 ><A
@@ -5698,7 +5698,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6153"
+NAME="AEN7191"
 ></A
 ><H3
 ><A
@@ -5800,7 +5800,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6179"
+NAME="AEN7217"
 ></A
 ><H3
 ><A
@@ -5966,7 +5966,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6217"
+NAME="AEN7255"
 ></A
 ><H3
 ><A
diff --git a/doc/html/gnome-xml-xml-error.html b/doc/html/gnome-xml-xml-error.html
index 2225deb..d64092c 100644
--- a/doc/html/gnome-xml-xml-error.html
+++ b/doc/html/gnome-xml-xml-error.html
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN6255"
+NAME="AEN7293"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN6258"
+NAME="AEN7296"
 ></A
 ><H2
 >Synopsis</H2
@@ -187,7 +187,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6270"
+NAME="AEN7308"
 ></A
 ><H2
 >Description</H2
@@ -197,14 +197,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6273"
+NAME="AEN7311"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6275"
+NAME="AEN7313"
 ></A
 ><H3
 ><A
@@ -341,7 +341,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6280"
+NAME="AEN7318"
 ></A
 ><H3
 ><A
@@ -438,7 +438,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6303"
+NAME="AEN7341"
 ></A
 ><H3
 ><A
@@ -535,7 +535,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6326"
+NAME="AEN7364"
 ></A
 ><H3
 ><A
@@ -632,7 +632,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6349"
+NAME="AEN7387"
 ></A
 ><H3
 ><A
@@ -729,7 +729,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6372"
+NAME="AEN7410"
 ></A
 ><H3
 ><A
@@ -792,7 +792,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6388"
+NAME="AEN7426"
 ></A
 ><H3
 ><A
diff --git a/doc/html/gnome-xml-xmlmemory.html b/doc/html/gnome-xml-xmlmemory.html
index 226ae4a..3011eda 100644
--- a/doc/html/gnome-xml-xmlmemory.html
+++ b/doc/html/gnome-xml-xmlmemory.html
@@ -12,8 +12,8 @@
 TITLE="Libxml Library Reference"
 HREF="libxml-lib.html"><LINK
 REL="PREVIOUS"
-TITLE="parserInternals"
-HREF="gnome-xml-parserinternals.html"></HEAD
+TITLE="debugXML"
+HREF="gnome-xml-debugxml.html"></HEAD
 ><BODY
 BGCOLOR="#FFFFFF"
 TEXT="#000000"
@@ -41,7 +41,7 @@
 BGCOLOR="#C00000"
 ALIGN="left"
 ><A
-HREF="gnome-xml-parserinternals.html"
+HREF="gnome-xml-debugxml.html"
 ><FONT
 COLOR="#FFFFFF"
 SIZE="3"
@@ -103,7 +103,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN9315"
+NAME="AEN10988"
 ></A
 ><H2
 >Name</H2
@@ -111,7 +111,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN9318"
+NAME="AEN10991"
 ></A
 ><H2
 >Synopsis</H2
@@ -210,7 +210,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN9339"
+NAME="AEN11012"
 ></A
 ><H2
 >Description</H2
@@ -220,14 +220,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN9342"
+NAME="AEN11015"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9344"
+NAME="AEN11017"
 ></A
 ><H3
 ><A
@@ -253,7 +253,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9349"
+NAME="AEN11022"
 ></A
 ><H3
 ><A
@@ -316,7 +316,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9365"
+NAME="AEN11038"
 ></A
 ><H3
 ><A
@@ -382,7 +382,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9382"
+NAME="AEN11055"
 ></A
 ><H3
 ><A
@@ -466,7 +466,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9403"
+NAME="AEN11076"
 ></A
 ><H3
 ><A
@@ -544,7 +544,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9423"
+NAME="AEN11096"
 ></A
 ><H3
 ><A
@@ -602,7 +602,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9438"
+NAME="AEN11111"
 ></A
 ><H3
 ><A
@@ -660,7 +660,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9453"
+NAME="AEN11126"
 ></A
 ><H3
 ><A
@@ -688,7 +688,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9459"
+NAME="AEN11132"
 ></A
 ><H3
 ><A
@@ -752,7 +752,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9475"
+NAME="AEN11148"
 ></A
 ><H3
 ><A
@@ -778,7 +778,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9480"
+NAME="AEN11153"
 ></A
 ><H3
 ><A
@@ -804,7 +804,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9485"
+NAME="AEN11158"
 ></A
 ><H3
 ><A
@@ -830,7 +830,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9490"
+NAME="AEN11163"
 ></A
 ><H3
 ><A
@@ -935,7 +935,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9515"
+NAME="AEN11188"
 ></A
 ><H3
 ><A
@@ -1052,7 +1052,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9543"
+NAME="AEN11216"
 ></A
 ><H3
 ><A
@@ -1179,7 +1179,7 @@
 BGCOLOR="#C00000"
 ALIGN="left"
 ><A
-HREF="gnome-xml-parserinternals.html"
+HREF="gnome-xml-debugxml.html"
 ><FONT
 COLOR="#FFFFFF"
 SIZE="3"
@@ -1242,7 +1242,7 @@
 COLOR="#FFFFFF"
 SIZE="3"
 ><B
->parserInternals</B
+>debugXML</B
 ></FONT
 ></TD
 ><TD
diff --git a/doc/html/gnome-xml-xpath.html b/doc/html/gnome-xml-xpath.html
index 4dd6d13..c43b240 100644
--- a/doc/html/gnome-xml-xpath.html
+++ b/doc/html/gnome-xml-xpath.html
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN6843"
+NAME="AEN7881"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN6846"
+NAME="AEN7884"
 ></A
 ><H2
 >Synopsis</H2
@@ -259,7 +259,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6880"
+NAME="AEN7918"
 ></A
 ><H2
 >Description</H2
@@ -269,14 +269,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6883"
+NAME="AEN7921"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6885"
+NAME="AEN7923"
 ></A
 ><H3
 ><A
@@ -302,7 +302,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6890"
+NAME="AEN7928"
 ></A
 ><H3
 ><A
@@ -328,7 +328,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6895"
+NAME="AEN7933"
 ></A
 ><H3
 ><A
@@ -354,7 +354,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6900"
+NAME="AEN7938"
 ></A
 ><H3
 ><A
@@ -380,7 +380,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6905"
+NAME="AEN7943"
 ></A
 ><H3
 ><A
@@ -406,7 +406,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6910"
+NAME="AEN7948"
 ></A
 ><H3
 ><A
@@ -432,7 +432,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6915"
+NAME="AEN7953"
 ></A
 ><H3
 ><A
@@ -526,7 +526,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6938"
+NAME="AEN7976"
 ></A
 ><H3
 ><A
@@ -605,7 +605,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6957"
+NAME="AEN7995"
 ></A
 ><H3
 ><A
@@ -705,7 +705,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6982"
+NAME="AEN8020"
 ></A
 ><H3
 ><A
@@ -784,7 +784,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7001"
+NAME="AEN8039"
 ></A
 ><H3
 ><A
@@ -865,7 +865,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7022"
+NAME="AEN8060"
 ></A
 ><H3
 ><A
@@ -928,7 +928,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7038"
+NAME="AEN8076"
 ></A
 ><H3
 ><A
@@ -1031,7 +1031,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7064"
+NAME="AEN8102"
 ></A
 ><H3
 ><A
@@ -1094,7 +1094,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7080"
+NAME="AEN8118"
 ></A
 ><H3
 ><A
diff --git a/doc/html/index.sgml b/doc/html/index.sgml
index b8db736..78554cb 100644
--- a/doc/html/index.sgml
+++ b/doc/html/index.sgml
@@ -85,6 +85,42 @@
 <ANCHOR id ="XMLSETEXTERNALENTITYLOADER" href="gnome-xml/gnome-xml-parser.html#XMLSETEXTERNALENTITYLOADER">
 <ANCHOR id ="XMLGETEXTERNALENTITYLOADER" href="gnome-xml/gnome-xml-parser.html#XMLGETEXTERNALENTITYLOADER">
 <ANCHOR id ="XMLLOADEXTERNALENTITY" href="gnome-xml/gnome-xml-parser.html#XMLLOADEXTERNALENTITY">
+<ANCHOR id ="GNOME-XML-SAX" href="gnome-xml/gnome-xml-sax.html">
+<ANCHOR id ="GETPUBLICID" href="gnome-xml/gnome-xml-sax.html#GETPUBLICID">
+<ANCHOR id ="GETSYSTEMID" href="gnome-xml/gnome-xml-sax.html#GETSYSTEMID">
+<ANCHOR id ="SETDOCUMENTLOCATOR" href="gnome-xml/gnome-xml-sax.html#SETDOCUMENTLOCATOR">
+<ANCHOR id ="GETLINENUMBER" href="gnome-xml/gnome-xml-sax.html#GETLINENUMBER">
+<ANCHOR id ="GETCOLUMNNUMBER" href="gnome-xml/gnome-xml-sax.html#GETCOLUMNNUMBER">
+<ANCHOR id ="ISSTANDALONE" href="gnome-xml/gnome-xml-sax.html#ISSTANDALONE">
+<ANCHOR id ="HASINTERNALSUBSET" href="gnome-xml/gnome-xml-sax.html#HASINTERNALSUBSET">
+<ANCHOR id ="HASEXTERNALSUBSET" href="gnome-xml/gnome-xml-sax.html#HASEXTERNALSUBSET">
+<ANCHOR id ="INTERNALSUBSET" href="gnome-xml/gnome-xml-sax.html#INTERNALSUBSET">
+<ANCHOR id ="GETENTITY" href="gnome-xml/gnome-xml-sax.html#GETENTITY">
+<ANCHOR id ="GETPARAMETERENTITY" href="gnome-xml/gnome-xml-sax.html#GETPARAMETERENTITY">
+<ANCHOR id ="RESOLVEENTITY" href="gnome-xml/gnome-xml-sax.html#RESOLVEENTITY">
+<ANCHOR id ="ENTITYDECL" href="gnome-xml/gnome-xml-sax.html#ENTITYDECL">
+<ANCHOR id ="ATTRIBUTEDECL" href="gnome-xml/gnome-xml-sax.html#ATTRIBUTEDECL">
+<ANCHOR id ="ELEMENTDECL" href="gnome-xml/gnome-xml-sax.html#ELEMENTDECL">
+<ANCHOR id ="NOTATIONDECL" href="gnome-xml/gnome-xml-sax.html#NOTATIONDECL">
+<ANCHOR id ="UNPARSEDENTITYDECL" href="gnome-xml/gnome-xml-sax.html#UNPARSEDENTITYDECL">
+<ANCHOR id ="STARTDOCUMENT" href="gnome-xml/gnome-xml-sax.html#STARTDOCUMENT">
+<ANCHOR id ="ENDDOCUMENT" href="gnome-xml/gnome-xml-sax.html#ENDDOCUMENT">
+<ANCHOR id ="ATTRIBUTE" href="gnome-xml/gnome-xml-sax.html#ATTRIBUTE">
+<ANCHOR id ="STARTELEMENT" href="gnome-xml/gnome-xml-sax.html#STARTELEMENT">
+<ANCHOR id ="ENDELEMENT" href="gnome-xml/gnome-xml-sax.html#ENDELEMENT">
+<ANCHOR id ="REFERENCE" href="gnome-xml/gnome-xml-sax.html#REFERENCE">
+<ANCHOR id ="CHARACTERS" href="gnome-xml/gnome-xml-sax.html#CHARACTERS">
+<ANCHOR id ="IGNORABLEWHITESPACE" href="gnome-xml/gnome-xml-sax.html#IGNORABLEWHITESPACE">
+<ANCHOR id ="PROCESSINGINSTRUCTION" href="gnome-xml/gnome-xml-sax.html#PROCESSINGINSTRUCTION">
+<ANCHOR id ="GLOBALNAMESPACE" href="gnome-xml/gnome-xml-sax.html#GLOBALNAMESPACE">
+<ANCHOR id ="SETNAMESPACE" href="gnome-xml/gnome-xml-sax.html#SETNAMESPACE">
+<ANCHOR id ="GETNAMESPACE" href="gnome-xml/gnome-xml-sax.html#GETNAMESPACE">
+<ANCHOR id ="CHECKNAMESPACE" href="gnome-xml/gnome-xml-sax.html#CHECKNAMESPACE">
+<ANCHOR id ="NAMESPACEDECL" href="gnome-xml/gnome-xml-sax.html#NAMESPACEDECL">
+<ANCHOR id ="COMMENT" href="gnome-xml/gnome-xml-sax.html#COMMENT">
+<ANCHOR id ="CDATABLOCK" href="gnome-xml/gnome-xml-sax.html#CDATABLOCK">
+<ANCHOR id ="XMLDEFAULTSAXHANDLERINIT" href="gnome-xml/gnome-xml-sax.html#XMLDEFAULTSAXHANDLERINIT">
+<ANCHOR id ="HTMLDEFAULTSAXHANDLERINIT" href="gnome-xml/gnome-xml-sax.html#HTMLDEFAULTSAXHANDLERINIT">
 <ANCHOR id ="GNOME-XML-TREE" href="gnome-xml/gnome-xml-tree.html">
 <ANCHOR id ="XMLELEMENTTYPE" href="gnome-xml/gnome-xml-tree.html#XMLELEMENTTYPE">
 <ANCHOR id ="XMLCHAR" href="gnome-xml/gnome-xml-tree.html#XMLCHAR">
@@ -106,16 +142,19 @@
 <ANCHOR id ="XMLATTRPTR" href="gnome-xml/gnome-xml-tree.html#XMLATTRPTR">
 <ANCHOR id ="XMLIDPTR" href="gnome-xml/gnome-xml-tree.html#XMLIDPTR">
 <ANCHOR id ="XMLREFPTR" href="gnome-xml/gnome-xml-tree.html#XMLREFPTR">
+<ANCHOR id ="XMLBUFFERALLOCATIONSCHEME" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERALLOCATIONSCHEME">
+<ANCHOR id ="XMLBUFFER" href="gnome-xml/gnome-xml-tree.html#XMLBUFFER">
+<ANCHOR id ="XMLBUFFERPTR" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERPTR">
 <ANCHOR id ="XMLNODE" href="gnome-xml/gnome-xml-tree.html#XMLNODE">
 <ANCHOR id ="XMLNODEPTR" href="gnome-xml/gnome-xml-tree.html#XMLNODEPTR">
 <ANCHOR id ="XMLDOC" href="gnome-xml/gnome-xml-tree.html#XMLDOC">
 <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 ="XMLBUFFERALLOCSCHEME" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERALLOCSCHEME">
 <ANCHOR id ="XMLBUFFERCREATE" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERCREATE">
+<ANCHOR id ="XMLBUFFERCREATESIZE" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERCREATESIZE">
 <ANCHOR id ="XMLBUFFERFREE" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERFREE">
 <ANCHOR id ="XMLBUFFERDUMP" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERDUMP">
 <ANCHOR id ="XMLBUFFERADD" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERADD">
@@ -123,6 +162,10 @@
 <ANCHOR id ="XMLBUFFERCCAT" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERCCAT">
 <ANCHOR id ="XMLBUFFERSHRINK" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERSHRINK">
 <ANCHOR id ="XMLBUFFEREMPTY" href="gnome-xml/gnome-xml-tree.html#XMLBUFFEREMPTY">
+<ANCHOR id ="XMLBUFFERCONTENT" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERCONTENT">
+<ANCHOR id ="XMLBUFFERUSE" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERUSE">
+<ANCHOR id ="XMLBUFFERSETALLOCATIONSCHEME" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERSETALLOCATIONSCHEME">
+<ANCHOR id ="XMLBUFFERLENGTH" href="gnome-xml/gnome-xml-tree.html#XMLBUFFERLENGTH">
 <ANCHOR id ="XMLCREATEINTSUBSET" href="gnome-xml/gnome-xml-tree.html#XMLCREATEINTSUBSET">
 <ANCHOR id ="XMLNEWDTD" href="gnome-xml/gnome-xml-tree.html#XMLNEWDTD">
 <ANCHOR id ="XMLFREEDTD" href="gnome-xml/gnome-xml-tree.html#XMLFREEDTD">
@@ -217,6 +260,7 @@
 <ANCHOR id ="XMLCOPYENTITIESTABLE" href="gnome-xml/gnome-xml-entities.html#XMLCOPYENTITIESTABLE">
 <ANCHOR id ="XMLFREEENTITIESTABLE" href="gnome-xml/gnome-xml-entities.html#XMLFREEENTITIESTABLE">
 <ANCHOR id ="XMLDUMPENTITIESTABLE" href="gnome-xml/gnome-xml-entities.html#XMLDUMPENTITIESTABLE">
+<ANCHOR id ="XMLCLEANUPPREDEFINEDENTITIES" href="gnome-xml/gnome-xml-entities.html#XMLCLEANUPPREDEFINEDENTITIES">
 <ANCHOR id ="GNOME-XML-VALID" href="gnome-xml/gnome-xml-valid.html">
 <ANCHOR id ="XMLVALIDITYERRORFUNC" href="gnome-xml/gnome-xml-valid.html#XMLVALIDITYERRORFUNC">
 <ANCHOR id ="XMLVALIDITYWARNINGFUNC" href="gnome-xml/gnome-xml-valid.html#XMLVALIDITYWARNINGFUNC">
@@ -333,6 +377,16 @@
 <ANCHOR id ="XMLNANOHTTPREAD" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPREAD">
 <ANCHOR id ="XMLNANOHTTPSAVE" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPSAVE">
 <ANCHOR id ="XMLNANOHTTPCLOSE" href="gnome-xml/gnome-xml-nanohttp.html#XMLNANOHTTPCLOSE">
+<ANCHOR id ="GNOME-XML-XMLIO" href="gnome-xml/gnome-xml-xmlio.html">
+<ANCHOR id ="XMLPARSERINPUTBUFFERPTR" href="gnome-xml/gnome-xml-xmlio.html#XMLPARSERINPUTBUFFERPTR">
+<ANCHOR id ="XMLPARSERINPUTBUFFERCREATEFILENAME" href="gnome-xml/gnome-xml-xmlio.html#XMLPARSERINPUTBUFFERCREATEFILENAME">
+<ANCHOR id ="XMLPARSERINPUTBUFFERCREATEFILE" href="gnome-xml/gnome-xml-xmlio.html#XMLPARSERINPUTBUFFERCREATEFILE">
+<ANCHOR id ="XMLPARSERINPUTBUFFERCREATEFD" href="gnome-xml/gnome-xml-xmlio.html#XMLPARSERINPUTBUFFERCREATEFD">
+<ANCHOR id ="XMLPARSERINPUTBUFFERREAD" href="gnome-xml/gnome-xml-xmlio.html#XMLPARSERINPUTBUFFERREAD">
+<ANCHOR id ="XMLPARSERINPUTBUFFERGROW" href="gnome-xml/gnome-xml-xmlio.html#XMLPARSERINPUTBUFFERGROW">
+<ANCHOR id ="XMLPARSERINPUTBUFFERPUSH" href="gnome-xml/gnome-xml-xmlio.html#XMLPARSERINPUTBUFFERPUSH">
+<ANCHOR id ="XMLFREEPARSERINPUTBUFFER" href="gnome-xml/gnome-xml-xmlio.html#XMLFREEPARSERINPUTBUFFER">
+<ANCHOR id ="XMLPARSERGETDIRECTORY" href="gnome-xml/gnome-xml-xmlio.html#XMLPARSERGETDIRECTORY">
 <ANCHOR id ="GNOME-XML-PARSERINTERNALS" href="gnome-xml/gnome-xml-parserinternals.html">
 <ANCHOR id ="XML-MAX-NAMELEN" href="gnome-xml/gnome-xml-parserinternals.html#XML-MAX-NAMELEN">
 <ANCHOR id ="CHARVAL" href="gnome-xml/gnome-xml-parserinternals.html#CHARVAL">
@@ -421,6 +475,26 @@
 <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">
+<ANCHOR id ="GNOME-XML-ENCODING" href="gnome-xml/gnome-xml-encoding.html">
+<ANCHOR id ="XMLCHARENCODING" href="gnome-xml/gnome-xml-encoding.html#XMLCHARENCODING">
+<ANCHOR id ="XMLCHARENCODINGINPUTFUNC" href="gnome-xml/gnome-xml-encoding.html#XMLCHARENCODINGINPUTFUNC">
+<ANCHOR id ="XMLCHARENCODINGOUTPUTFUNC" href="gnome-xml/gnome-xml-encoding.html#XMLCHARENCODINGOUTPUTFUNC">
+<ANCHOR id ="XMLCHARENCODINGHANDLERPTR" href="gnome-xml/gnome-xml-encoding.html#XMLCHARENCODINGHANDLERPTR">
+<ANCHOR id ="XMLINITCHARENCODINGHANDLERS" href="gnome-xml/gnome-xml-encoding.html#XMLINITCHARENCODINGHANDLERS">
+<ANCHOR id ="XMLCLEANUPCHARENCODINGHANDLERS" href="gnome-xml/gnome-xml-encoding.html#XMLCLEANUPCHARENCODINGHANDLERS">
+<ANCHOR id ="XMLREGISTERCHARENCODINGHANDLER" href="gnome-xml/gnome-xml-encoding.html#XMLREGISTERCHARENCODINGHANDLER">
+<ANCHOR id ="XMLDETECTCHARENCODING" href="gnome-xml/gnome-xml-encoding.html#XMLDETECTCHARENCODING">
+<ANCHOR id ="XMLPARSECHARENCODING" href="gnome-xml/gnome-xml-encoding.html#XMLPARSECHARENCODING">
+<ANCHOR id ="XMLGETCHARENCODINGHANDLER" href="gnome-xml/gnome-xml-encoding.html#XMLGETCHARENCODINGHANDLER">
+<ANCHOR id ="XMLFINDCHARENCODINGHANDLER" href="gnome-xml/gnome-xml-encoding.html#XMLFINDCHARENCODINGHANDLER">
+<ANCHOR id ="GNOME-XML-DEBUGXML" href="gnome-xml/gnome-xml-debugxml.html">
+<ANCHOR id ="XMLDEBUGDUMPSTRING" href="gnome-xml/gnome-xml-debugxml.html#XMLDEBUGDUMPSTRING">
+<ANCHOR id ="XMLDEBUGDUMPATTR" href="gnome-xml/gnome-xml-debugxml.html#XMLDEBUGDUMPATTR">
+<ANCHOR id ="XMLDEBUGDUMPATTRLIST" href="gnome-xml/gnome-xml-debugxml.html#XMLDEBUGDUMPATTRLIST">
+<ANCHOR id ="XMLDEBUGDUMPONENODE" href="gnome-xml/gnome-xml-debugxml.html#XMLDEBUGDUMPONENODE">
+<ANCHOR id ="XMLDEBUGDUMPNODE" href="gnome-xml/gnome-xml-debugxml.html#XMLDEBUGDUMPNODE">
+<ANCHOR id ="XMLDEBUGDUMPNODELIST" href="gnome-xml/gnome-xml-debugxml.html#XMLDEBUGDUMPNODELIST">
+<ANCHOR id ="XMLDEBUGDUMPDOCUMENT" href="gnome-xml/gnome-xml-debugxml.html#XMLDEBUGDUMPDOCUMENT">
 <ANCHOR id ="GNOME-XML-XMLMEMORY" href="gnome-xml/gnome-xml-xmlmemory.html">
 <ANCHOR id ="NO-DEBUG-MEMORY" href="gnome-xml/gnome-xml-xmlmemory.html#NO-DEBUG-MEMORY">
 <ANCHOR id ="XMLFREE" href="gnome-xml/gnome-xml-xmlmemory.html#XMLFREE">
diff --git a/include/libxml/SAX.h b/include/libxml/SAX.h
new file mode 100644
index 0000000..8d9f3c7
--- /dev/null
+++ b/include/libxml/SAX.h
@@ -0,0 +1,107 @@
+/*
+ * SAX.c : Default SAX handler interfaces.
+ *
+ * See Copyright for the status of this software.
+ *
+ * Daniel Veillard <Daniel.Veillard@w3.org>
+ */
+
+
+#include <stdio.h>
+#include <stdlib.h>
+#include "parser.h"
+
+#ifndef __XML_SAX_H__
+#define __XML_SAX_H__
+const xmlChar *	getPublicId			(void *ctx);
+const xmlChar *	getSystemId			(void *ctx);
+void	setDocumentLocator			(void *ctx,
+						 xmlSAXLocatorPtr loc);
+    
+int		getLineNumber			(void *ctx);
+int		getColumnNumber			(void *ctx);
+
+int		isStandalone			(void *ctx);
+int		hasInternalSubset		(void *ctx);
+int		hasExternalSubset		(void *ctx);
+
+void		internalSubset			(void *ctx,
+						 const xmlChar *name,
+						 const xmlChar *ExternalID,
+						 const xmlChar *SystemID);
+xmlEntityPtr	getEntity			(void *ctx,
+						 const xmlChar *name);
+xmlEntityPtr	getParameterEntity		(void *ctx,
+						 const xmlChar *name);
+xmlParserInputPtr resolveEntity			(void *ctx,
+						 const xmlChar *publicId,
+						 const xmlChar *systemId);
+
+void		entityDecl			(void *ctx,
+						 const xmlChar *name,
+						 int type,
+						 const xmlChar *publicId,
+						 const xmlChar *systemId,
+						 xmlChar *content);
+void		attributeDecl			(void *ctx,
+						 const xmlChar *elem,
+						 const xmlChar *name,
+						 int type,
+						 int def,
+						 const xmlChar *defaultValue,
+						 xmlEnumerationPtr tree);
+void		elementDecl			(void *ctx,
+						 const xmlChar *name,
+						 int type,
+						 xmlElementContentPtr content);
+void		notationDecl			(void *ctx,
+						 const xmlChar *name,
+						 const xmlChar *publicId,
+						 const xmlChar *systemId);
+void		unparsedEntityDecl		(void *ctx,
+						 const xmlChar *name,
+						 const xmlChar *publicId,
+						 const xmlChar *systemId,
+						 const xmlChar *notationName);
+
+void		startDocument			(void *ctx);
+void		endDocument			(void *ctx);
+void		attribute			(void *ctx,
+						 const xmlChar *fullname,
+						 const xmlChar *value);
+void		startElement			(void *ctx,
+						 const xmlChar *fullname,
+						 const xmlChar **atts);
+void		endElement			(void *ctx,
+						 const xmlChar *name);
+void		reference			(void *ctx,
+						 const xmlChar *name);
+void		characters			(void *ctx,
+						 const xmlChar *ch,
+						 int len);
+void		ignorableWhitespace		(void *ctx,
+						 const xmlChar *ch,
+						 int len);
+void		processingInstruction		(void *ctx,
+						 const xmlChar *target,
+						 const xmlChar *data);
+void		globalNamespace			(void *ctx,
+						 const xmlChar *href,
+						 const xmlChar *prefix);
+void		setNamespace			(void *ctx,
+						 const xmlChar *name);
+xmlNsPtr	getNamespace			(void *ctx);
+int		checkNamespace			(void *ctx,
+						 xmlChar *namespace);
+void		namespaceDecl			(void *ctx,
+						 const xmlChar *href,
+						 const xmlChar *prefix);
+void		comment				(void *ctx,
+						 const xmlChar *value);
+void		cdataBlock			(void *ctx,
+						 const xmlChar *value,
+						 int len);
+
+void		xmlDefaultSAXHandlerInit	(void);
+void		htmlDefaultSAXHandlerInit	(void);
+#endif /* __XML_SAX_H__ */
diff --git a/parser.c b/parser.c
index 5d0ea5f..e543c38 100644
--- a/parser.c
+++ b/parser.c
@@ -582,7 +582,7 @@
     inputStream->base = inputStream->buf->buffer->content;
     inputStream->cur = inputStream->buf->buffer->content;
     if ((ctxt->directory == NULL) && (directory != NULL))
-        ctxt->directory = directory;
+        ctxt->directory = (char *) xmlStrdup((const xmlChar *) directory);
     return(inputStream);
 }
 
@@ -4441,7 +4441,11 @@
     if ((CUR == '<') && (NXT(1) == '?') &&
         (NXT(2) == 'x') && (NXT(3) == 'm') &&
 	(NXT(4) == 'l')) {
-	xmlParseTextDecl(ctxt);
+	xmlChar *decl;
+
+	decl = xmlParseTextDecl(ctxt);
+	if (decl != NULL)
+	    xmlFree(decl);
     }
     if (ctxt->myDoc == NULL) {
         ctxt->myDoc = xmlNewDoc(BAD_CAST "1.0");
@@ -6662,6 +6666,8 @@
     
     ctxt = xmlCreateFileParserCtxt(filename);
     if (ctxt == NULL) return -1;
+    if (ctxt->sax != &xmlDefaultSAXHandler)
+	xmlFree(ctxt->sax);
     ctxt->sax = sax;
     ctxt->userData = user_data;