Closing bug report #3748, changed global compression flag usage, and
added xmlNewTextChild() and xmlNewDocRawNode(), Daniel
diff --git a/ChangeLog b/ChangeLog
index 5fe0eed..03459b6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Tue Nov 23 11:23:55 CET 1999 Daniel Veillard <Daniel.Veillard@w3.org>
+
+	* tree.[ch]: closing bug 3748, added xmlNewDocRawNode(), 
+	             xmlNewTextChild() and xmlSetCompressMode() behaviour.
+	* tester.c: added --compress option
+	* doc/*: rebuilt the documentation
+
 Fri Nov 19 18:41:28 CET 1999 Daniel Veillard <Daniel.Veillard@w3.org>
 
 	* HTMLparser.c: bugfixing, the damn thing MUST not crash even
diff --git a/doc/html/gnome-xml-entities.html b/doc/html/gnome-xml-entities.html
index 0621785..1ea56d9 100644
--- a/doc/html/gnome-xml-entities.html
+++ b/doc/html/gnome-xml-entities.html
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4236"
+NAME="AEN4332"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4239"
+NAME="AEN4335"
 ></A
 ><H2
 >Synopsis</H2
@@ -344,7 +344,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4296"
+NAME="AEN4392"
 ></A
 ><H2
 >Description</H2
@@ -354,14 +354,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4299"
+NAME="AEN4395"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4301"
+NAME="AEN4397"
 ></A
 ><H3
 ><A
@@ -387,7 +387,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4306"
+NAME="AEN4402"
 ></A
 ><H3
 ><A
@@ -413,7 +413,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4311"
+NAME="AEN4407"
 ></A
 ><H3
 ><A
@@ -439,7 +439,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4316"
+NAME="AEN4412"
 ></A
 ><H3
 ><A
@@ -465,7 +465,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4321"
+NAME="AEN4417"
 ></A
 ><H3
 ><A
@@ -491,7 +491,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4326"
+NAME="AEN4422"
 ></A
 ><H3
 ><A
@@ -517,7 +517,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4331"
+NAME="AEN4427"
 ></A
 ><H3
 ><A
@@ -543,7 +543,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4336"
+NAME="AEN4432"
 ></A
 ><H3
 ><A
@@ -569,7 +569,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4341"
+NAME="AEN4437"
 ></A
 ><H3
 ><A
@@ -595,7 +595,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4346"
+NAME="AEN4442"
 ></A
 ><H3
 ><A
@@ -760,7 +760,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4386"
+NAME="AEN4482"
 ></A
 ><H3
 ><A
@@ -925,7 +925,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4426"
+NAME="AEN4522"
 ></A
 ><H3
 ><A
@@ -1006,7 +1006,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4447"
+NAME="AEN4543"
 ></A
 ><H3
 ><A
@@ -1110,7 +1110,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4473"
+NAME="AEN4569"
 ></A
 ><H3
 ><A
@@ -1213,7 +1213,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4499"
+NAME="AEN4595"
 ></A
 ><H3
 ><A
@@ -1316,7 +1316,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4525"
+NAME="AEN4621"
 ></A
 ><H3
 ><A
@@ -1425,7 +1425,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4553"
+NAME="AEN4649"
 ></A
 ><H3
 ><A
@@ -1533,7 +1533,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4580"
+NAME="AEN4676"
 ></A
 ><H3
 ><A
@@ -1594,7 +1594,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4596"
+NAME="AEN4692"
 ></A
 ><H3
 ><A
@@ -1675,7 +1675,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4617"
+NAME="AEN4713"
 ></A
 ><H3
 ><A
@@ -1738,7 +1738,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4633"
+NAME="AEN4729"
 ></A
 ><H3
 ><A
diff --git a/doc/html/gnome-xml-htmlparser.html b/doc/html/gnome-xml-htmlparser.html
index a0b6373..957face 100644
--- a/doc/html/gnome-xml-htmlparser.html
+++ b/doc/html/gnome-xml-htmlparser.html
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN6306"
+NAME="AEN6402"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN6309"
+NAME="AEN6405"
 ></A
 ><H2
 >Synopsis</H2
@@ -277,7 +277,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6347"
+NAME="AEN6443"
 ></A
 ><H2
 >Description</H2
@@ -287,14 +287,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6350"
+NAME="AEN6446"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6352"
+NAME="AEN6448"
 ></A
 ><H3
 ><A
@@ -320,7 +320,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6357"
+NAME="AEN6453"
 ></A
 ><H3
 ><A
@@ -346,7 +346,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6362"
+NAME="AEN6458"
 ></A
 ><H3
 ><A
@@ -372,7 +372,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6367"
+NAME="AEN6463"
 ></A
 ><H3
 ><A
@@ -398,7 +398,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6372"
+NAME="AEN6468"
 ></A
 ><H3
 ><A
@@ -424,7 +424,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6377"
+NAME="AEN6473"
 ></A
 ><H3
 ><A
@@ -450,7 +450,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6382"
+NAME="AEN6478"
 ></A
 ><H3
 ><A
@@ -476,7 +476,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6387"
+NAME="AEN6483"
 ></A
 ><H3
 ><A
@@ -502,7 +502,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6392"
+NAME="AEN6488"
 ></A
 ><H3
 ><A
@@ -528,7 +528,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6397"
+NAME="AEN6493"
 ></A
 ><H3
 ><A
@@ -609,7 +609,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6418"
+NAME="AEN6514"
 ></A
 ><H3
 ><A
@@ -692,7 +692,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6440"
+NAME="AEN6536"
 ></A
 ><H3
 ><A
@@ -797,7 +797,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6467"
+NAME="AEN6563"
 ></A
 ><H3
 ><A
@@ -881,7 +881,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6489"
+NAME="AEN6585"
 ></A
 ><H3
 ><A
@@ -948,7 +948,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6507"
+NAME="AEN6603"
 ></A
 ><H3
 ><A
@@ -1088,7 +1088,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6541"
+NAME="AEN6637"
 ></A
 ><H3
 ><A
@@ -1187,7 +1187,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6566"
+NAME="AEN6662"
 ></A
 ><H3
 ><A
@@ -1325,7 +1325,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6599"
+NAME="AEN6695"
 ></A
 ><H3
 ><A
diff --git a/doc/html/gnome-xml-htmltree.html b/doc/html/gnome-xml-htmltree.html
index 249e4ac..dcf9ab1 100644
--- a/doc/html/gnome-xml-htmltree.html
+++ b/doc/html/gnome-xml-htmltree.html
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN6628"
+NAME="AEN6724"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN6631"
+NAME="AEN6727"
 ></A
 ><H2
 >Synopsis</H2
@@ -188,7 +188,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6645"
+NAME="AEN6741"
 ></A
 ><H2
 >Description</H2
@@ -198,14 +198,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6648"
+NAME="AEN6744"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6650"
+NAME="AEN6746"
 ></A
 ><H3
 ><A
@@ -231,7 +231,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6655"
+NAME="AEN6751"
 ></A
 ><H3
 ><A
@@ -257,7 +257,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6660"
+NAME="AEN6756"
 ></A
 ><H3
 ><A
@@ -283,7 +283,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6665"
+NAME="AEN6761"
 ></A
 ><H3
 ><A
@@ -386,7 +386,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6690"
+NAME="AEN6786"
 ></A
 ><H3
 ><A
@@ -470,7 +470,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6711"
+NAME="AEN6807"
 ></A
 ><H3
 ><A
diff --git a/doc/html/gnome-xml-nanohttp.html b/doc/html/gnome-xml-nanohttp.html
index b692911..5aedacd 100644
--- a/doc/html/gnome-xml-nanohttp.html
+++ b/doc/html/gnome-xml-nanohttp.html
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN7008"
+NAME="AEN7104"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN7011"
+NAME="AEN7107"
 ></A
 ><H2
 >Synopsis</H2
@@ -183,7 +183,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN7021"
+NAME="AEN7117"
 ></A
 ><H2
 >Description</H2
@@ -193,14 +193,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN7024"
+NAME="AEN7120"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7026"
+NAME="AEN7122"
 ></A
 ><H3
 ><A
@@ -314,7 +314,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7053"
+NAME="AEN7149"
 ></A
 ><H3
 ><A
@@ -453,7 +453,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7085"
+NAME="AEN7181"
 ></A
 ><H3
 ><A
@@ -533,7 +533,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7104"
+NAME="AEN7200"
 ></A
 ><H3
 ><A
@@ -608,7 +608,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7123"
+NAME="AEN7219"
 ></A
 ><H3
 ><A
@@ -731,7 +731,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7152"
+NAME="AEN7248"
 ></A
 ><H3
 ><A
@@ -825,7 +825,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7175"
+NAME="AEN7271"
 ></A
 ><H3
 ><A
diff --git a/doc/html/gnome-xml-parserinternals.html b/doc/html/gnome-xml-parserinternals.html
index 8c73b21..0a30c07 100644
--- a/doc/html/gnome-xml-parserinternals.html
+++ b/doc/html/gnome-xml-parserinternals.html
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN7195"
+NAME="AEN7291"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN7198"
+NAME="AEN7294"
 ></A
 ><H2
 >Synopsis</H2
@@ -886,7 +886,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN7409"
+NAME="AEN7505"
 ></A
 ><H2
 >Description</H2
@@ -896,14 +896,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN7412"
+NAME="AEN7508"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7414"
+NAME="AEN7510"
 ></A
 ><H3
 ><A
@@ -929,7 +929,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7419"
+NAME="AEN7515"
 ></A
 ><H3
 ><A
@@ -942,7 +942,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7423"
+NAME="AEN7519"
 ></A
 ><H3
 ><A
@@ -1000,7 +1000,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7437"
+NAME="AEN7533"
 ></A
 ><H3
 ><A
@@ -1058,7 +1058,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7451"
+NAME="AEN7547"
 ></A
 ><H3
 ><A
@@ -1116,7 +1116,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7465"
+NAME="AEN7561"
 ></A
 ><H3
 ><A
@@ -1174,7 +1174,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7479"
+NAME="AEN7575"
 ></A
 ><H3
 ><A
@@ -1232,7 +1232,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7493"
+NAME="AEN7589"
 ></A
 ><H3
 ><A
@@ -1290,7 +1290,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7507"
+NAME="AEN7603"
 ></A
 ><H3
 ><A
@@ -1348,7 +1348,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7521"
+NAME="AEN7617"
 ></A
 ><H3
 ><A
@@ -1406,7 +1406,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7535"
+NAME="AEN7631"
 ></A
 ><H3
 ><A
@@ -1464,7 +1464,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7549"
+NAME="AEN7645"
 ></A
 ><H3
 ><A
@@ -1522,7 +1522,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7563"
+NAME="AEN7659"
 ></A
 ><H3
 ><A
@@ -1580,7 +1580,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7577"
+NAME="AEN7673"
 ></A
 ><H3
 ><A
@@ -1638,7 +1638,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7591"
+NAME="AEN7687"
 ></A
 ><H3
 ><A
@@ -1696,7 +1696,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7605"
+NAME="AEN7701"
 ></A
 ><H3
 ><A
@@ -1754,7 +1754,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7619"
+NAME="AEN7715"
 ></A
 ><H3
 ><A
@@ -1835,7 +1835,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7640"
+NAME="AEN7736"
 ></A
 ><H3
 ><A
@@ -1915,7 +1915,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7660"
+NAME="AEN7756"
 ></A
 ><H3
 ><A
@@ -2011,7 +2011,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7684"
+NAME="AEN7780"
 ></A
 ><H3
 ><A
@@ -2075,7 +2075,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7700"
+NAME="AEN7796"
 ></A
 ><H3
 ><A
@@ -2136,7 +2136,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7716"
+NAME="AEN7812"
 ></A
 ><H3
 ><A
@@ -2221,7 +2221,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7737"
+NAME="AEN7833"
 ></A
 ><H3
 ><A
@@ -2308,7 +2308,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7759"
+NAME="AEN7855"
 ></A
 ><H3
 ><A
@@ -2410,7 +2410,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7785"
+NAME="AEN7881"
 ></A
 ><H3
 ><A
@@ -2495,7 +2495,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7806"
+NAME="AEN7902"
 ></A
 ><H3
 ><A
@@ -2577,7 +2577,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7827"
+NAME="AEN7923"
 ></A
 ><H3
 ><A
@@ -2640,7 +2640,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7843"
+NAME="AEN7939"
 ></A
 ><H3
 ><A
@@ -2739,7 +2739,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7868"
+NAME="AEN7964"
 ></A
 ><H3
 ><A
@@ -2848,7 +2848,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7897"
+NAME="AEN7993"
 ></A
 ><H3
 ><A
@@ -2934,7 +2934,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7920"
+NAME="AEN8016"
 ></A
 ><H3
 ><A
@@ -3043,7 +3043,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7949"
+NAME="AEN8045"
 ></A
 ><H3
 ><A
@@ -3128,7 +3128,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7972"
+NAME="AEN8068"
 ></A
 ><H3
 ><A
@@ -3210,7 +3210,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN7993"
+NAME="AEN8089"
 ></A
 ><H3
 ><A
@@ -3279,7 +3279,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8011"
+NAME="AEN8107"
 ></A
 ><H3
 ><A
@@ -3368,7 +3368,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8035"
+NAME="AEN8131"
 ></A
 ><H3
 ><A
@@ -3456,7 +3456,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8059"
+NAME="AEN8155"
 ></A
 ><H3
 ><A
@@ -3541,7 +3541,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8082"
+NAME="AEN8178"
 ></A
 ><H3
 ><A
@@ -3646,7 +3646,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8109"
+NAME="AEN8205"
 ></A
 ><H3
 ><A
@@ -3784,7 +3784,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8143"
+NAME="AEN8239"
 ></A
 ><H3
 ><A
@@ -3867,7 +3867,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8165"
+NAME="AEN8261"
 ></A
 ><H3
 ><A
@@ -3950,7 +3950,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8187"
+NAME="AEN8283"
 ></A
 ><H3
 ><A
@@ -4034,7 +4034,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8208"
+NAME="AEN8304"
 ></A
 ><H3
 ><A
@@ -4165,7 +4165,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8241"
+NAME="AEN8337"
 ></A
 ><H3
 ><A
@@ -4232,7 +4232,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8258"
+NAME="AEN8354"
 ></A
 ><H3
 ><A
@@ -4315,7 +4315,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8280"
+NAME="AEN8376"
 ></A
 ><H3
 ><A
@@ -4382,7 +4382,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8298"
+NAME="AEN8394"
 ></A
 ><H3
 ><A
@@ -4457,7 +4457,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8318"
+NAME="AEN8414"
 ></A
 ><H3
 ><A
@@ -4535,7 +4535,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8341"
+NAME="AEN8437"
 ></A
 ><H3
 ><A
@@ -4674,7 +4674,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8378"
+NAME="AEN8474"
 ></A
 ><H3
 ><A
@@ -4763,7 +4763,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8402"
+NAME="AEN8498"
 ></A
 ><H3
 ><A
@@ -4850,7 +4850,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8425"
+NAME="AEN8521"
 ></A
 ><H3
 ><A
@@ -4953,7 +4953,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8452"
+NAME="AEN8548"
 ></A
 ><H3
 ><A
@@ -5097,7 +5097,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8490"
+NAME="AEN8586"
 ></A
 ><H3
 ><A
@@ -5164,7 +5164,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8508"
+NAME="AEN8604"
 ></A
 ><H3
 ><A
@@ -5262,7 +5262,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8534"
+NAME="AEN8630"
 ></A
 ><H3
 ><A
@@ -5365,7 +5365,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8560"
+NAME="AEN8656"
 ></A
 ><H3
 ><A
@@ -5488,7 +5488,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8591"
+NAME="AEN8687"
 ></A
 ><H3
 ><A
@@ -5571,7 +5571,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8613"
+NAME="AEN8709"
 ></A
 ><H3
 ><A
@@ -5650,7 +5650,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8632"
+NAME="AEN8728"
 ></A
 ><H3
 ><A
@@ -5738,7 +5738,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8655"
+NAME="AEN8751"
 ></A
 ><H3
 ><A
@@ -5839,7 +5839,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8679"
+NAME="AEN8775"
 ></A
 ><H3
 ><A
@@ -5913,7 +5913,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8698"
+NAME="AEN8794"
 ></A
 ><H3
 ><A
@@ -5999,7 +5999,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8719"
+NAME="AEN8815"
 ></A
 ><H3
 ><A
@@ -6069,7 +6069,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8737"
+NAME="AEN8833"
 ></A
 ><H3
 ><A
@@ -6194,7 +6194,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8771"
+NAME="AEN8867"
 ></A
 ><H3
 ><A
@@ -6296,7 +6296,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8800"
+NAME="AEN8896"
 ></A
 ><H3
 ><A
@@ -6386,7 +6386,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8824"
+NAME="AEN8920"
 ></A
 ><H3
 ><A
@@ -6457,7 +6457,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8844"
+NAME="AEN8940"
 ></A
 ><H3
 ><A
@@ -6522,7 +6522,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8861"
+NAME="AEN8957"
 ></A
 ><H3
 ><A
@@ -6604,7 +6604,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8880"
+NAME="AEN8976"
 ></A
 ><H3
 ><A
@@ -6687,7 +6687,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8902"
+NAME="AEN8998"
 ></A
 ><H3
 ><A
@@ -6772,7 +6772,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8925"
+NAME="AEN9021"
 ></A
 ><H3
 ><A
@@ -6855,7 +6855,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8947"
+NAME="AEN9043"
 ></A
 ><H3
 ><A
@@ -6940,7 +6940,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8970"
+NAME="AEN9066"
 ></A
 ><H3
 ><A
@@ -7035,7 +7035,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN8992"
+NAME="AEN9088"
 ></A
 ><H3
 ><A
@@ -7100,7 +7100,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9009"
+NAME="AEN9105"
 ></A
 ><H3
 ><A
@@ -7165,7 +7165,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9026"
+NAME="AEN9122"
 ></A
 ><H3
 ><A
@@ -7274,7 +7274,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9054"
+NAME="AEN9150"
 ></A
 ><H3
 ><A
@@ -7300,7 +7300,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9059"
+NAME="AEN9155"
 ></A
 ><H3
 ><A
@@ -7326,7 +7326,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9064"
+NAME="AEN9160"
 ></A
 ><H3
 ><A
@@ -7352,7 +7352,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9069"
+NAME="AEN9165"
 ></A
 ><H3
 ><A
@@ -7378,7 +7378,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9074"
+NAME="AEN9170"
 ></A
 ><H3
 ><A
@@ -7561,7 +7561,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9119"
+NAME="AEN9215"
 ></A
 ><H3
 ><A
@@ -7658,7 +7658,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9143"
+NAME="AEN9239"
 ></A
 ><H3
 ><A
@@ -7737,7 +7737,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9163"
+NAME="AEN9259"
 ></A
 ><H3
 ><A
@@ -7834,7 +7834,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9187"
+NAME="AEN9283"
 ></A
 ><H3
 ><A
diff --git a/doc/html/gnome-xml-tree.html b/doc/html/gnome-xml-tree.html
index 10c8d6a..bc4a762 100644
--- a/doc/html/gnome-xml-tree.html
+++ b/doc/html/gnome-xml-tree.html
@@ -583,6 +583,28 @@
 HREF="gnome-xml-tree.html#XMLNODEPTR"
 >xmlNodePtr</A
 >  <A
+HREF="gnome-xml-tree.html#XMLNEWDOCRAWNODE"
+>xmlNewDocRawNode</A
+>                (<A
+HREF="gnome-xml-tree.html#XMLDOCPTR"
+>xmlDocPtr</A
+> doc,
+                                             <A
+HREF="gnome-xml-tree.html#XMLNSPTR"
+>xmlNsPtr</A
+> ns,
+                                             const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *name,
+                                             const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *content);
+<A
+HREF="gnome-xml-tree.html#XMLNODEPTR"
+>xmlNodePtr</A
+>  <A
 HREF="gnome-xml-tree.html#XMLNEWNODE"
 >xmlNewNode</A
 >                      (<A
@@ -619,6 +641,28 @@
 HREF="gnome-xml-tree.html#XMLNODEPTR"
 >xmlNodePtr</A
 >  <A
+HREF="gnome-xml-tree.html#XMLNEWTEXTCHILD"
+>xmlNewTextChild</A
+>                 (<A
+HREF="gnome-xml-tree.html#XMLNODEPTR"
+>xmlNodePtr</A
+> parent,
+                                             <A
+HREF="gnome-xml-tree.html#XMLNSPTR"
+>xmlNsPtr</A
+> ns,
+                                             const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *name,
+                                             const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *content);
+<A
+HREF="gnome-xml-tree.html#XMLNODEPTR"
+>xmlNodePtr</A
+>  <A
 HREF="gnome-xml-tree.html#XMLNEWDOCTEXT"
 >xmlNewDocText</A
 >                   (<A
@@ -1184,7 +1228,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2219"
+NAME="AEN2231"
 ></A
 ><H2
 >Description</H2
@@ -1194,14 +1238,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2222"
+NAME="AEN2234"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2224"
+NAME="AEN2236"
 ></A
 ><H3
 ><A
@@ -1241,7 +1285,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2229"
+NAME="AEN2241"
 ></A
 ><H3
 ><A
@@ -1254,7 +1298,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2233"
+NAME="AEN2245"
 ></A
 ><H3
 ><A
@@ -1280,7 +1324,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2238"
+NAME="AEN2250"
 ></A
 ><H3
 ><A
@@ -1306,7 +1350,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2243"
+NAME="AEN2255"
 ></A
 ><H3
 ><A
@@ -1332,7 +1376,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2248"
+NAME="AEN2260"
 ></A
 ><H3
 ><A
@@ -1369,7 +1413,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2253"
+NAME="AEN2265"
 ></A
 ><H3
 ><A
@@ -1400,7 +1444,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2258"
+NAME="AEN2270"
 ></A
 ><H3
 ><A
@@ -1426,7 +1470,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2263"
+NAME="AEN2275"
 ></A
 ><H3
 ><A
@@ -1452,7 +1496,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2268"
+NAME="AEN2280"
 ></A
 ><H3
 ><A
@@ -1483,7 +1527,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2273"
+NAME="AEN2285"
 ></A
 ><H3
 ><A
@@ -1514,7 +1558,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2278"
+NAME="AEN2290"
 ></A
 ><H3
 ><A
@@ -1540,7 +1584,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2283"
+NAME="AEN2295"
 ></A
 ><H3
 ><A
@@ -1571,7 +1615,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2288"
+NAME="AEN2300"
 ></A
 ><H3
 ><A
@@ -1597,7 +1641,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2293"
+NAME="AEN2305"
 ></A
 ><H3
 ><A
@@ -1626,7 +1670,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2298"
+NAME="AEN2310"
 ></A
 ><H3
 ><A
@@ -1652,7 +1696,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2303"
+NAME="AEN2315"
 ></A
 ><H3
 ><A
@@ -1678,7 +1722,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2308"
+NAME="AEN2320"
 ></A
 ><H3
 ><A
@@ -1704,7 +1748,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2313"
+NAME="AEN2325"
 ></A
 ><H3
 ><A
@@ -1730,7 +1774,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2318"
+NAME="AEN2330"
 ></A
 ><H3
 ><A
@@ -1756,7 +1800,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2323"
+NAME="AEN2335"
 ></A
 ><H3
 ><A
@@ -1782,7 +1826,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2328"
+NAME="AEN2340"
 ></A
 ><H3
 ><A
@@ -1808,7 +1852,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2333"
+NAME="AEN2345"
 ></A
 ><H3
 ><A
@@ -1834,7 +1878,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2338"
+NAME="AEN2350"
 ></A
 ><H3
 ><A
@@ -1860,7 +1904,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2343"
+NAME="AEN2355"
 ></A
 ><H3
 ><A
@@ -1886,7 +1930,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2348"
+NAME="AEN2360"
 ></A
 ><H3
 ><A
@@ -1912,7 +1956,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2353"
+NAME="AEN2365"
 ></A
 ><H3
 ><A
@@ -1938,7 +1982,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2358"
+NAME="AEN2370"
 ></A
 ><H3
 ><A
@@ -1964,7 +2008,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2363"
+NAME="AEN2375"
 ></A
 ><H3
 ><A
@@ -1990,7 +2034,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2368"
+NAME="AEN2380"
 ></A
 ><H3
 ><A
@@ -2051,7 +2095,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2384"
+NAME="AEN2396"
 ></A
 ><H3
 ><A
@@ -2114,7 +2158,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2400"
+NAME="AEN2412"
 ></A
 ><H3
 ><A
@@ -2213,7 +2257,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2425"
+NAME="AEN2437"
 ></A
 ><H3
 ><A
@@ -2315,7 +2359,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2450"
+NAME="AEN2462"
 ></A
 ><H3
 ><A
@@ -2399,7 +2443,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2471"
+NAME="AEN2483"
 ></A
 ><H3
 ><A
@@ -2480,7 +2524,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2491"
+NAME="AEN2503"
 ></A
 ><H3
 ><A
@@ -2576,7 +2620,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2515"
+NAME="AEN2527"
 ></A
 ><H3
 ><A
@@ -2639,7 +2683,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2531"
+NAME="AEN2543"
 ></A
 ><H3
 ><A
@@ -2783,7 +2827,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2567"
+NAME="AEN2579"
 ></A
 ><H3
 ><A
@@ -2927,7 +2971,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2603"
+NAME="AEN2615"
 ></A
 ><H3
 ><A
@@ -2990,7 +3034,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2619"
+NAME="AEN2631"
 ></A
 ><H3
 ><A
@@ -3113,7 +3157,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2650"
+NAME="AEN2662"
 ></A
 ><H3
 ><A
@@ -3236,7 +3280,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2681"
+NAME="AEN2693"
 ></A
 ><H3
 ><A
@@ -3299,7 +3343,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2697"
+NAME="AEN2709"
 ></A
 ><H3
 ><A
@@ -3380,7 +3424,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2718"
+NAME="AEN2730"
 ></A
 ><H3
 ><A
@@ -3444,7 +3488,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2734"
+NAME="AEN2746"
 ></A
 ><H3
 ><A
@@ -3567,7 +3611,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2765"
+NAME="AEN2777"
 ></A
 ><H3
 ><A
@@ -3690,7 +3734,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2796"
+NAME="AEN2808"
 ></A
 ><H3
 ><A
@@ -3834,7 +3878,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2832"
+NAME="AEN2844"
 ></A
 ><H3
 ><A
@@ -3897,7 +3941,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2848"
+NAME="AEN2860"
 ></A
 ><H3
 ><A
@@ -3960,7 +4004,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2864"
+NAME="AEN2876"
 ></A
 ><H3
 ><A
@@ -4062,7 +4106,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2890"
+NAME="AEN2902"
 ></A
 ><H3
 ><A
@@ -4164,7 +4208,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2916"
+NAME="AEN2928"
 ></A
 ><H3
 ><A
@@ -4245,7 +4289,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2937"
+NAME="AEN2949"
 ></A
 ><H3
 ><A
@@ -4345,7 +4389,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN2962"
+NAME="AEN2974"
 ></A
 ><H3
 ><A
@@ -4395,6 +4439,176 @@
 >content</I
 ></TT
 >
+are optionnal (NULL).
+NOTE: <TT
+CLASS="PARAMETER"
+><I
+>content</I
+></TT
+> is supposed to be a piece of XML CDATA, so it allow entities
+references, but XML special chars need to be escaped first by using
+<A
+HREF="gnome-xml-entities.html#XMLENCODEENTITIESREENTRANT"
+>xmlEncodeEntitiesReentrant</A
+>(). Use <A
+HREF="gnome-xml-tree.html#XMLNEWDOCRAWNODE"
+>xmlNewDocRawNode</A
+>() if you don't
+need entities support.</P
+><P
+></P
+><DIV
+CLASS="INFORMALTABLE"
+><P
+></P
+><TABLE
+BORDER="0"
+WIDTH="100%"
+BGCOLOR="#FFD0D0"
+CELLSPACING="0"
+CELLPADDING="4"
+CLASS="CALSTABLE"
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>doc</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the document</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>ns</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  namespace if any</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>name</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the node name</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>content</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the XML text content if any</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>a pointer to the new node object.</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3015"
+></A
+><H3
+><A
+NAME="XMLNEWDOCRAWNODE"
+></A
+>xmlNewDocRawNode ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+><A
+HREF="gnome-xml-tree.html#XMLNODEPTR"
+>xmlNodePtr</A
+>  xmlNewDocRawNode                (<A
+HREF="gnome-xml-tree.html#XMLDOCPTR"
+>xmlDocPtr</A
+> doc,
+                                             <A
+HREF="gnome-xml-tree.html#XMLNSPTR"
+>xmlNsPtr</A
+> ns,
+                                             const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *name,
+                                             const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *content);</PRE
+></TD
+></TR
+></TABLE
+><P
+>Creation of a new node element within a document. <TT
+CLASS="PARAMETER"
+><I
+>ns</I
+></TT
+> and <TT
+CLASS="PARAMETER"
+><I
+>content</I
+></TT
+>
 are optionnal (NULL).</P
 ><P
 ></P
@@ -4500,7 +4714,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3000"
+NAME="AEN3053"
 ></A
 ><H3
 ><A
@@ -4614,7 +4828,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3028"
+NAME="AEN3081"
 ></A
 ><H3
 ><A
@@ -4670,7 +4884,22 @@
 >content</I
 ></TT
 > parameters are optionnal (NULL). If content is non NULL,
-a child list containing the TEXTs and ENTITY_REFs node will be created.</P
+a child list containing the TEXTs and ENTITY_REFs node will be created.
+NOTE: <TT
+CLASS="PARAMETER"
+><I
+>content</I
+></TT
+> is supposed to be a piece of XML CDATA, so it allow entities
+references, but XML special chars need to be escaped first by using
+<A
+HREF="gnome-xml-entities.html#XMLENCODEENTITIESREENTRANT"
+>xmlEncodeEntitiesReentrant</A
+>(). Use <A
+HREF="gnome-xml-tree.html#XMLNEWTEXTCHILD"
+>xmlNewTextChild</A
+>() if entities
+support is not needed.</P
 ><P
 ></P
 ><DIV
@@ -4750,7 +4979,7 @@
 WIDTH="80%"
 ALIGN="LEFT"
 VALIGN="TOP"
->  the content of the child if any.</TD
+>  the XML content of the child if any.</TD
 ></TR
 ><TR
 ><TD
@@ -4775,7 +5004,168 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3067"
+NAME="AEN3123"
+></A
+><H3
+><A
+NAME="XMLNEWTEXTCHILD"
+></A
+>xmlNewTextChild ()</H3
+><TABLE
+BORDER="0"
+BGCOLOR="#D6E8FF"
+WIDTH="100%"
+CELLPADDING="6"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+><A
+HREF="gnome-xml-tree.html#XMLNODEPTR"
+>xmlNodePtr</A
+>  xmlNewTextChild                 (<A
+HREF="gnome-xml-tree.html#XMLNODEPTR"
+>xmlNodePtr</A
+> parent,
+                                             <A
+HREF="gnome-xml-tree.html#XMLNSPTR"
+>xmlNsPtr</A
+> ns,
+                                             const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *name,
+                                             const <A
+HREF="gnome-xml-tree.html#XMLCHAR"
+>xmlChar</A
+> *content);</PRE
+></TD
+></TR
+></TABLE
+><P
+>Creation of a new child element, added at the end of <TT
+CLASS="PARAMETER"
+><I
+>parent</I
+></TT
+> childs list.
+<TT
+CLASS="PARAMETER"
+><I
+>ns</I
+></TT
+> and <TT
+CLASS="PARAMETER"
+><I
+>content</I
+></TT
+> parameters are optionnal (NULL). If content is non NULL,
+a child TEXT node will be created containing the string content.</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
+>parent</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the parent node</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>ns</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  a namespace if any</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>name</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the name of the child</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><TT
+CLASS="PARAMETER"
+><I
+>content</I
+></TT
+>&nbsp;:</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>  the text content of the child if any.</TD
+></TR
+><TR
+><TD
+WIDTH="20%"
+ALIGN="RIGHT"
+VALIGN="TOP"
+><I
+CLASS="EMPHASIS"
+>Returns</I
+> :</TD
+><TD
+WIDTH="80%"
+ALIGN="LEFT"
+VALIGN="TOP"
+>a pointer to the new node object.</TD
+></TR
+></TABLE
+><P
+></P
+></DIV
+></DIV
+><HR><DIV
+CLASS="REFSECT2"
+><A
+NAME="AEN3162"
 ></A
 ><H3
 ><A
@@ -4877,7 +5267,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3093"
+NAME="AEN3188"
 ></A
 ><H3
 ><A
@@ -4958,7 +5348,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3114"
+NAME="AEN3209"
 ></A
 ><H3
 ><A
@@ -5060,7 +5450,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3140"
+NAME="AEN3235"
 ></A
 ><H3
 ><A
@@ -5181,7 +5571,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3170"
+NAME="AEN3265"
 ></A
 ><H3
 ><A
@@ -5280,7 +5670,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3195"
+NAME="AEN3290"
 ></A
 ><H3
 ><A
@@ -5382,7 +5772,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3221"
+NAME="AEN3316"
 ></A
 ><H3
 ><A
@@ -5463,7 +5853,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3242"
+NAME="AEN3337"
 ></A
 ><H3
 ><A
@@ -5583,7 +5973,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3272"
+NAME="AEN3367"
 ></A
 ><H3
 ><A
@@ -5685,7 +6075,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3298"
+NAME="AEN3393"
 ></A
 ><H3
 ><A
@@ -5784,7 +6174,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3323"
+NAME="AEN3418"
 ></A
 ><H3
 ><A
@@ -5865,7 +6255,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3344"
+NAME="AEN3439"
 ></A
 ><H3
 ><A
@@ -5946,7 +6336,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3365"
+NAME="AEN3460"
 ></A
 ><H3
 ><A
@@ -6024,7 +6414,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3385"
+NAME="AEN3480"
 ></A
 ><H3
 ><A
@@ -6131,7 +6521,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3412"
+NAME="AEN3507"
 ></A
 ><H3
 ><A
@@ -6238,7 +6628,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3439"
+NAME="AEN3534"
 ></A
 ><H3
 ><A
@@ -6301,7 +6691,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3455"
+NAME="AEN3550"
 ></A
 ><H3
 ><A
@@ -6403,7 +6793,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3481"
+NAME="AEN3576"
 ></A
 ><H3
 ><A
@@ -6510,7 +6900,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3507"
+NAME="AEN3602"
 ></A
 ><H3
 ><A
@@ -6574,7 +6964,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3523"
+NAME="AEN3618"
 ></A
 ><H3
 ><A
@@ -6637,7 +7027,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3539"
+NAME="AEN3634"
 ></A
 ><H3
 ><A
@@ -6768,7 +7158,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3571"
+NAME="AEN3666"
 ></A
 ><H3
 ><A
@@ -6892,7 +7282,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3602"
+NAME="AEN3697"
 ></A
 ><H3
 ><A
@@ -6996,7 +7386,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3628"
+NAME="AEN3723"
 ></A
 ><H3
 ><A
@@ -7080,7 +7470,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3649"
+NAME="AEN3744"
 ></A
 ><H3
 ><A
@@ -7161,7 +7551,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3670"
+NAME="AEN3765"
 ></A
 ><H3
 ><A
@@ -7242,7 +7632,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3691"
+NAME="AEN3786"
 ></A
 ><H3
 ><A
@@ -7365,7 +7755,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3722"
+NAME="AEN3817"
 ></A
 ><H3
 ><A
@@ -7468,7 +7858,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3748"
+NAME="AEN3843"
 ></A
 ><H3
 ><A
@@ -7571,7 +7961,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3774"
+NAME="AEN3869"
 ></A
 ><H3
 ><A
@@ -7692,7 +8082,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3804"
+NAME="AEN3899"
 ></A
 ><H3
 ><A
@@ -7813,7 +8203,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3834"
+NAME="AEN3929"
 ></A
 ><H3
 ><A
@@ -7897,7 +8287,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3855"
+NAME="AEN3950"
 ></A
 ><H3
 ><A
@@ -8004,7 +8394,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3881"
+NAME="AEN3976"
 ></A
 ><H3
 ><A
@@ -8088,7 +8478,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3902"
+NAME="AEN3997"
 ></A
 ><H3
 ><A
@@ -8195,7 +8585,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3928"
+NAME="AEN4023"
 ></A
 ><H3
 ><A
@@ -8280,7 +8670,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3949"
+NAME="AEN4044"
 ></A
 ><H3
 ><A
@@ -8362,7 +8752,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3970"
+NAME="AEN4065"
 ></A
 ><H3
 ><A
@@ -8447,7 +8837,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN3991"
+NAME="AEN4086"
 ></A
 ><H3
 ><A
@@ -8523,7 +8913,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4010"
+NAME="AEN4105"
 ></A
 ><H3
 ><A
@@ -8599,7 +8989,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4029"
+NAME="AEN4124"
 ></A
 ><H3
 ><A
@@ -8684,7 +9074,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4050"
+NAME="AEN4145"
 ></A
 ><H3
 ><A
@@ -8766,7 +9156,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4070"
+NAME="AEN4165"
 ></A
 ><H3
 ><A
@@ -8852,7 +9242,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4091"
+NAME="AEN4186"
 ></A
 ><H3
 ><A
@@ -8955,7 +9345,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4116"
+NAME="AEN4211"
 ></A
 ><H3
 ><A
@@ -9039,7 +9429,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4137"
+NAME="AEN4232"
 ></A
 ><H3
 ><A
@@ -9065,7 +9455,13 @@
 ></TABLE
 ><P
 >Dump an XML document to a file. Will use compression if
-compiled in and enabled.</P
+compiled in and enabled. If <TT
+CLASS="PARAMETER"
+><I
+>filename</I
+></TT
+> is "-" the stdout file is
+used.</P
 ><P
 ></P
 ><DIV
@@ -9136,7 +9532,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4161"
+NAME="AEN4257"
 ></A
 ><H3
 ><A
@@ -9214,7 +9610,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4181"
+NAME="AEN4277"
 ></A
 ><H3
 ><A
@@ -9296,7 +9692,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4201"
+NAME="AEN4297"
 ></A
 ><H3
 ><A
@@ -9354,7 +9750,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4216"
+NAME="AEN4312"
 ></A
 ><H3
 ><A
diff --git a/doc/html/gnome-xml-valid.html b/doc/html/gnome-xml-valid.html
index 9e93eae..1945224 100644
--- a/doc/html/gnome-xml-valid.html
+++ b/doc/html/gnome-xml-valid.html
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4659"
+NAME="AEN4755"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4662"
+NAME="AEN4758"
 ></A
 ><H2
 >Synopsis</H2
@@ -809,7 +809,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4845"
+NAME="AEN4941"
 ></A
 ><H2
 >Description</H2
@@ -819,14 +819,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4848"
+NAME="AEN4944"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4850"
+NAME="AEN4946"
 ></A
 ><H3
 ><A
@@ -920,7 +920,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4872"
+NAME="AEN4968"
 ></A
 ><H3
 ><A
@@ -1014,7 +1014,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4894"
+NAME="AEN4990"
 ></A
 ><H3
 ><A
@@ -1040,7 +1040,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4899"
+NAME="AEN4995"
 ></A
 ><H3
 ><A
@@ -1066,7 +1066,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4904"
+NAME="AEN5000"
 ></A
 ><H3
 ><A
@@ -1092,7 +1092,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4909"
+NAME="AEN5005"
 ></A
 ><H3
 ><A
@@ -1118,7 +1118,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4914"
+NAME="AEN5010"
 ></A
 ><H3
 ><A
@@ -1144,7 +1144,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4919"
+NAME="AEN5015"
 ></A
 ><H3
 ><A
@@ -1170,7 +1170,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4924"
+NAME="AEN5020"
 ></A
 ><H3
 ><A
@@ -1196,7 +1196,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4929"
+NAME="AEN5025"
 ></A
 ><H3
 ><A
@@ -1222,7 +1222,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4934"
+NAME="AEN5030"
 ></A
 ><H3
 ><A
@@ -1248,7 +1248,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4939"
+NAME="AEN5035"
 ></A
 ><H3
 ><A
@@ -1274,7 +1274,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4944"
+NAME="AEN5040"
 ></A
 ><H3
 ><A
@@ -1439,7 +1439,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN4985"
+NAME="AEN5081"
 ></A
 ><H3
 ><A
@@ -1520,7 +1520,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5006"
+NAME="AEN5102"
 ></A
 ><H3
 ><A
@@ -1583,7 +1583,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5022"
+NAME="AEN5118"
 ></A
 ><H3
 ><A
@@ -1667,7 +1667,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5043"
+NAME="AEN5139"
 ></A
 ><H3
 ><A
@@ -1769,7 +1769,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5069"
+NAME="AEN5165"
 ></A
 ><H3
 ><A
@@ -1850,7 +1850,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5090"
+NAME="AEN5186"
 ></A
 ><H3
 ><A
@@ -1913,7 +1913,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5106"
+NAME="AEN5202"
 ></A
 ><H3
 ><A
@@ -2078,7 +2078,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5147"
+NAME="AEN5243"
 ></A
 ><H3
 ><A
@@ -2159,7 +2159,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5168"
+NAME="AEN5264"
 ></A
 ><H3
 ><A
@@ -2222,7 +2222,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5184"
+NAME="AEN5280"
 ></A
 ><H3
 ><A
@@ -2306,7 +2306,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5205"
+NAME="AEN5301"
 ></A
 ><H3
 ><A
@@ -2388,7 +2388,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5226"
+NAME="AEN5322"
 ></A
 ><H3
 ><A
@@ -2451,7 +2451,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5242"
+NAME="AEN5338"
 ></A
 ><H3
 ><A
@@ -2533,7 +2533,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5263"
+NAME="AEN5359"
 ></A
 ><H3
 ><A
@@ -2761,7 +2761,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5319"
+NAME="AEN5415"
 ></A
 ><H3
 ><A
@@ -2842,7 +2842,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5340"
+NAME="AEN5436"
 ></A
 ><H3
 ><A
@@ -2905,7 +2905,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5356"
+NAME="AEN5452"
 ></A
 ><H3
 ><A
@@ -2989,7 +2989,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5377"
+NAME="AEN5473"
 ></A
 ><H3
 ><A
@@ -3133,7 +3133,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5413"
+NAME="AEN5509"
 ></A
 ><H3
 ><A
@@ -3212,7 +3212,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5433"
+NAME="AEN5529"
 ></A
 ><H3
 ><A
@@ -3275,7 +3275,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5449"
+NAME="AEN5545"
 ></A
 ><H3
 ><A
@@ -3377,7 +3377,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5475"
+NAME="AEN5571"
 ></A
 ><H3
 ><A
@@ -3499,7 +3499,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5505"
+NAME="AEN5601"
 ></A
 ><H3
 ><A
@@ -3643,7 +3643,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5541"
+NAME="AEN5637"
 ></A
 ><H3
 ><A
@@ -3722,7 +3722,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5561"
+NAME="AEN5657"
 ></A
 ><H3
 ><A
@@ -3785,7 +3785,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5577"
+NAME="AEN5673"
 ></A
 ><H3
 ><A
@@ -3907,7 +3907,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5607"
+NAME="AEN5703"
 ></A
 ><H3
 ><A
@@ -4010,7 +4010,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5632"
+NAME="AEN5728"
 ></A
 ><H3
 ><A
@@ -4135,7 +4135,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5662"
+NAME="AEN5758"
 ></A
 ><H3
 ><A
@@ -4262,7 +4262,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5693"
+NAME="AEN5789"
 ></A
 ><H3
 ><A
@@ -4376,7 +4376,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5722"
+NAME="AEN5818"
 ></A
 ><H3
 ><A
@@ -4500,7 +4500,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5752"
+NAME="AEN5848"
 ></A
 ><H3
 ><A
@@ -4622,7 +4622,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5783"
+NAME="AEN5879"
 ></A
 ><H3
 ><A
@@ -4725,7 +4725,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5809"
+NAME="AEN5905"
 ></A
 ><H3
 ><A
@@ -4845,7 +4845,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5839"
+NAME="AEN5935"
 ></A
 ><H3
 ><A
@@ -4975,7 +4975,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5871"
+NAME="AEN5967"
 ></A
 ><H3
 ><A
@@ -5149,7 +5149,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5912"
+NAME="AEN6008"
 ></A
 ><H3
 ><A
@@ -5251,7 +5251,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5938"
+NAME="AEN6034"
 ></A
 ><H3
 ><A
@@ -5372,7 +5372,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5968"
+NAME="AEN6064"
 ></A
 ><H3
 ><A
@@ -5472,7 +5472,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN5993"
+NAME="AEN6089"
 ></A
 ><H3
 ><A
@@ -5596,7 +5596,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6024"
+NAME="AEN6120"
 ></A
 ><H3
 ><A
@@ -5698,7 +5698,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6050"
+NAME="AEN6146"
 ></A
 ><H3
 ><A
@@ -5800,7 +5800,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6076"
+NAME="AEN6172"
 ></A
 ><H3
 ><A
@@ -5966,7 +5966,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6114"
+NAME="AEN6210"
 ></A
 ><H3
 ><A
diff --git a/doc/html/gnome-xml-xml-error.html b/doc/html/gnome-xml-xml-error.html
index 9440c27..3ce346e 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="AEN6152"
+NAME="AEN6248"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN6155"
+NAME="AEN6251"
 ></A
 ><H2
 >Synopsis</H2
@@ -187,7 +187,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6167"
+NAME="AEN6263"
 ></A
 ><H2
 >Description</H2
@@ -197,14 +197,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6170"
+NAME="AEN6266"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6172"
+NAME="AEN6268"
 ></A
 ><H3
 ><A
@@ -341,7 +341,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6177"
+NAME="AEN6273"
 ></A
 ><H3
 ><A
@@ -438,7 +438,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6200"
+NAME="AEN6296"
 ></A
 ><H3
 ><A
@@ -535,7 +535,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6223"
+NAME="AEN6319"
 ></A
 ><H3
 ><A
@@ -632,7 +632,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6246"
+NAME="AEN6342"
 ></A
 ><H3
 ><A
@@ -729,7 +729,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6269"
+NAME="AEN6365"
 ></A
 ><H3
 ><A
@@ -792,7 +792,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6285"
+NAME="AEN6381"
 ></A
 ><H3
 ><A
diff --git a/doc/html/gnome-xml-xmlmemory.html b/doc/html/gnome-xml-xmlmemory.html
index 24675b5..25180e4 100644
--- a/doc/html/gnome-xml-xmlmemory.html
+++ b/doc/html/gnome-xml-xmlmemory.html
@@ -103,7 +103,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN9212"
+NAME="AEN9308"
 ></A
 ><H2
 >Name</H2
@@ -111,7 +111,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN9215"
+NAME="AEN9311"
 ></A
 ><H2
 >Synopsis</H2
@@ -210,7 +210,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN9236"
+NAME="AEN9332"
 ></A
 ><H2
 >Description</H2
@@ -220,14 +220,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN9239"
+NAME="AEN9335"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9241"
+NAME="AEN9337"
 ></A
 ><H3
 ><A
@@ -253,7 +253,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9246"
+NAME="AEN9342"
 ></A
 ><H3
 ><A
@@ -316,7 +316,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9262"
+NAME="AEN9358"
 ></A
 ><H3
 ><A
@@ -382,7 +382,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9279"
+NAME="AEN9375"
 ></A
 ><H3
 ><A
@@ -466,7 +466,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9300"
+NAME="AEN9396"
 ></A
 ><H3
 ><A
@@ -544,7 +544,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9320"
+NAME="AEN9416"
 ></A
 ><H3
 ><A
@@ -602,7 +602,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9335"
+NAME="AEN9431"
 ></A
 ><H3
 ><A
@@ -660,7 +660,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9350"
+NAME="AEN9446"
 ></A
 ><H3
 ><A
@@ -688,7 +688,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9356"
+NAME="AEN9452"
 ></A
 ><H3
 ><A
@@ -752,7 +752,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9372"
+NAME="AEN9468"
 ></A
 ><H3
 ><A
@@ -778,7 +778,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9377"
+NAME="AEN9473"
 ></A
 ><H3
 ><A
@@ -804,7 +804,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9382"
+NAME="AEN9478"
 ></A
 ><H3
 ><A
@@ -830,7 +830,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9387"
+NAME="AEN9483"
 ></A
 ><H3
 ><A
@@ -935,7 +935,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9412"
+NAME="AEN9508"
 ></A
 ><H3
 ><A
@@ -1052,7 +1052,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN9440"
+NAME="AEN9536"
 ></A
 ><H3
 ><A
diff --git a/doc/html/gnome-xml-xpath.html b/doc/html/gnome-xml-xpath.html
index ffd5aa7..a41504d 100644
--- a/doc/html/gnome-xml-xpath.html
+++ b/doc/html/gnome-xml-xpath.html
@@ -115,7 +115,7 @@
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN6740"
+NAME="AEN6836"
 ></A
 ><H2
 >Name</H2
@@ -123,7 +123,7 @@
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN6743"
+NAME="AEN6839"
 ></A
 ><H2
 >Synopsis</H2
@@ -259,7 +259,7 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6777"
+NAME="AEN6873"
 ></A
 ><H2
 >Description</H2
@@ -269,14 +269,14 @@
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN6780"
+NAME="AEN6876"
 ></A
 ><H2
 >Details</H2
 ><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6782"
+NAME="AEN6878"
 ></A
 ><H3
 ><A
@@ -302,7 +302,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6787"
+NAME="AEN6883"
 ></A
 ><H3
 ><A
@@ -328,7 +328,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6792"
+NAME="AEN6888"
 ></A
 ><H3
 ><A
@@ -354,7 +354,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6797"
+NAME="AEN6893"
 ></A
 ><H3
 ><A
@@ -380,7 +380,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6802"
+NAME="AEN6898"
 ></A
 ><H3
 ><A
@@ -406,7 +406,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6807"
+NAME="AEN6903"
 ></A
 ><H3
 ><A
@@ -432,7 +432,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6812"
+NAME="AEN6908"
 ></A
 ><H3
 ><A
@@ -526,7 +526,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6835"
+NAME="AEN6931"
 ></A
 ><H3
 ><A
@@ -605,7 +605,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6854"
+NAME="AEN6950"
 ></A
 ><H3
 ><A
@@ -705,7 +705,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6879"
+NAME="AEN6975"
 ></A
 ><H3
 ><A
@@ -784,7 +784,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6898"
+NAME="AEN6994"
 ></A
 ><H3
 ><A
@@ -865,7 +865,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6919"
+NAME="AEN7015"
 ></A
 ><H3
 ><A
@@ -928,7 +928,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6935"
+NAME="AEN7031"
 ></A
 ><H3
 ><A
@@ -1031,7 +1031,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6961"
+NAME="AEN7057"
 ></A
 ><H3
 ><A
@@ -1094,7 +1094,7 @@
 ><HR><DIV
 CLASS="REFSECT2"
 ><A
-NAME="AEN6977"
+NAME="AEN7073"
 ></A
 ><H3
 ><A
diff --git a/doc/html/index.sgml b/doc/html/index.sgml
index 9ce9606..9bfff3f 100644
--- a/doc/html/index.sgml
+++ b/doc/html/index.sgml
@@ -140,8 +140,10 @@
 <ANCHOR id ="XMLCOPYDTD" href="gnome-xml/gnome-xml-tree.html#XMLCOPYDTD">
 <ANCHOR id ="XMLCOPYDOC" href="gnome-xml/gnome-xml-tree.html#XMLCOPYDOC">
 <ANCHOR id ="XMLNEWDOCNODE" href="gnome-xml/gnome-xml-tree.html#XMLNEWDOCNODE">
+<ANCHOR id ="XMLNEWDOCRAWNODE" href="gnome-xml/gnome-xml-tree.html#XMLNEWDOCRAWNODE">
 <ANCHOR id ="XMLNEWNODE" href="gnome-xml/gnome-xml-tree.html#XMLNEWNODE">
 <ANCHOR id ="XMLNEWCHILD" href="gnome-xml/gnome-xml-tree.html#XMLNEWCHILD">
+<ANCHOR id ="XMLNEWTEXTCHILD" href="gnome-xml/gnome-xml-tree.html#XMLNEWTEXTCHILD">
 <ANCHOR id ="XMLNEWDOCTEXT" href="gnome-xml/gnome-xml-tree.html#XMLNEWDOCTEXT">
 <ANCHOR id ="XMLNEWTEXT" href="gnome-xml/gnome-xml-tree.html#XMLNEWTEXT">
 <ANCHOR id ="XMLNEWPI" href="gnome-xml/gnome-xml-tree.html#XMLNEWPI">
diff --git a/include/libxml/tree.h b/include/libxml/tree.h
index 6c8ab10..f5fcf57 100644
--- a/include/libxml/tree.h
+++ b/include/libxml/tree.h
@@ -363,12 +363,20 @@
 					 xmlNsPtr ns,
 					 const xmlChar *name,
 					 const xmlChar *content);
+xmlNodePtr	xmlNewDocRawNode	(xmlDocPtr doc,
+					 xmlNsPtr ns,
+					 const xmlChar *name,
+					 const xmlChar *content);
 xmlNodePtr	xmlNewNode		(xmlNsPtr ns,
 					 const xmlChar *name);
 xmlNodePtr	xmlNewChild		(xmlNodePtr parent,
 					 xmlNsPtr ns,
 					 const xmlChar *name,
 					 const xmlChar *content);
+xmlNodePtr	xmlNewTextChild		(xmlNodePtr parent,
+					 xmlNsPtr ns,
+					 const xmlChar *name,
+					 const xmlChar *content);
 xmlNodePtr	xmlNewDocText		(xmlDocPtr doc,
 					 const xmlChar *content);
 xmlNodePtr	xmlNewText		(const xmlChar *content);
diff --git a/parser.c b/parser.c
index f3bd47a..4d84c8d 100644
--- a/parser.c
+++ b/parser.c
@@ -6651,8 +6651,9 @@
  * 
  * Returns 0 in case of success or a error number otherwise
  */
-int xmlSAXUserParseFile(xmlSAXHandlerPtr sax, void *user_data,
-			      const char *filename) {
+int
+xmlSAXUserParseFile(xmlSAXHandlerPtr sax, void *user_data,
+                    const char *filename) {
     int ret = 0;
     xmlParserCtxtPtr ctxt;
     
diff --git a/tester.c b/tester.c
index 7002614..02cf5fb 100644
--- a/tester.c
+++ b/tester.c
@@ -45,6 +45,7 @@
 static int valid = 0;
 static int repeat = 0;
 static int insert = 0;
+static int compress = 0;
 
 extern int xmlDoValidityCheckingDefaultValue;
 
@@ -168,9 +169,12 @@
 	/*
 	 * print it.
 	 */
-	if (!debug)
-	    xmlDocDump(stdout, doc);
-	else
+	if (!debug) {
+	    if (compress)
+		xmlSaveFile("-", doc);
+	    else
+		xmlDocDump(stdout, doc);
+	} else
 	    xmlDebugDumpDocument(stdout, doc);
     }
 
@@ -203,9 +207,12 @@
     /*
      * print it.
      */
-    if (!debug)
-	xmlDocDump(stdout, doc);
-    else
+    if (!debug) {
+        if (compress)
+	    xmlSaveFile("-", doc);
+	else
+	    xmlDocDump(stdout, doc);
+    } else
         xmlDebugDumpDocument(stdout, doc);
 
     /*
@@ -241,6 +248,11 @@
 	else if ((!strcmp(argv[i], "-repeat")) ||
 	         (!strcmp(argv[i], "--repeat")))
 	    repeat++;
+	else if ((!strcmp(argv[i], "-compress")) ||
+	         (!strcmp(argv[i], "--compress"))) {
+	    compress++;
+	    xmlSetCompressMode(9);
+        }
     }
     if (noent != 0) xmlSubstituteEntitiesDefault(1);
     if (valid != 0) xmlDoValidityCheckingDefaultValue = 1;
@@ -266,6 +278,7 @@
 	printf("\t--valid : validate the document in addition to std well-formed check\n");
 	printf("\t--repeat : parse the file 100 times, for timing or profiling\n");
 	printf("\t--insert : test for valid insertions\n");
+	printf("\t--compress : turn on gzip compression of output\n");
     }
     xmlMemoryDump();
 
diff --git a/tree.c b/tree.c
index 23819a1..4945ed1 100644
--- a/tree.c
+++ b/tree.c
@@ -403,7 +403,7 @@
     cur->oldNs = NULL;
     cur->encoding = NULL;
     cur->standalone = -1;
-    cur->compression = xmlCompressMode;
+    cur->compression = -1; /* not initialized */
     cur->ids = NULL;
     cur->refs = NULL;
 #ifndef XML_WITHOUT_CORBA
@@ -1027,15 +1027,20 @@
  * @doc:  the document
  * @ns:  namespace if any
  * @name:  the node name
- * @content:  the text content if any
+ * @content:  the XML text content if any
  *
  * Creation of a new node element within a document. @ns and @content
  * are optionnal (NULL).
+ * NOTE: @content is supposed to be a piece of XML CDATA, so it allow entities
+ *       references, but XML special chars need to be escaped first by using
+ *       xmlEncodeEntitiesReentrant(). Use xmlNewDocRawNode() if you don't
+ *       need entities support.
+ *
  * Returns a pointer to the new node object.
  */
 xmlNodePtr
 xmlNewDocNode(xmlDocPtr doc, xmlNsPtr ns,
-                         const xmlChar *name, const xmlChar *content) {
+              const xmlChar *name, const xmlChar *content) {
     xmlNodePtr cur;
 
     cur = xmlNewNode(ns, name);
@@ -1051,6 +1056,35 @@
 
 
 /**
+ * xmlNewDocRawNode:
+ * @doc:  the document
+ * @ns:  namespace if any
+ * @name:  the node name
+ * @content:  the text content if any
+ *
+ * Creation of a new node element within a document. @ns and @content
+ * are optionnal (NULL).
+ *
+ * Returns a pointer to the new node object.
+ */
+xmlNodePtr
+xmlNewDocRawNode(xmlDocPtr doc, xmlNsPtr ns,
+                 const xmlChar *name, const xmlChar *content) {
+    xmlNodePtr cur;
+
+    cur = xmlNewNode(ns, name);
+    if (cur != NULL) {
+        cur->doc = doc;
+	if (content != NULL) {
+	    cur->childs = xmlNewDocText(doc, content);
+	    UPDATE_LAST_CHILD(cur)
+	}
+    }
+    return(cur);
+}
+
+
+/**
  * xmlNewText:
  * @content:  the text content
  *
@@ -1094,6 +1128,62 @@
 }
 
 /**
+ * xmlNewTextChild:
+ * @parent:  the parent node
+ * @ns:  a namespace if any
+ * @name:  the name of the child
+ * @content:  the text content of the child if any.
+ *
+ * Creation of a new child element, added at the end of @parent childs list.
+ * @ns and @content parameters are optionnal (NULL). If content is non NULL,
+ * a child TEXT node will be created containing the string content.
+ *
+ * Returns a pointer to the new node object.
+ */
+xmlNodePtr
+xmlNewTextChild(xmlNodePtr parent, xmlNsPtr ns,
+            const xmlChar *name, const xmlChar *content) {
+    xmlNodePtr cur, prev;
+
+    if (parent == NULL) {
+        fprintf(stderr, "xmlNewTextChild : parent == NULL\n");
+	return(NULL);
+    }
+
+    if (name == NULL) {
+        fprintf(stderr, "xmlNewTextChild : name == NULL\n");
+	return(NULL);
+    }
+
+    /*
+     * Allocate a new node
+     */
+    if (ns == NULL)
+	cur = xmlNewDocRawNode(parent->doc, parent->ns, name, content);
+    else
+	cur = xmlNewDocRawNode(parent->doc, ns, name, content);
+    if (cur == NULL) return(NULL);
+
+    /*
+     * add the new element at the end of the childs list.
+     */
+    cur->type = XML_ELEMENT_NODE;
+    cur->parent = parent;
+    cur->doc = parent->doc;
+    if (parent->childs == NULL) {
+        parent->childs = cur;
+	parent->last = cur;
+    } else {
+        prev = parent->last;
+	prev->next = cur;
+	cur->prev = prev;
+	parent->last = cur;
+    }
+
+    return(cur);
+}
+
+/**
  * xmlNewReference:
  * @doc: the document
  * @name:  the reference name, or the reference string with & and ;
@@ -1332,22 +1422,27 @@
     return(cur);
 }
 
+
 /**
  * xmlNewChild:
  * @parent:  the parent node
  * @ns:  a namespace if any
  * @name:  the name of the child
- * @content:  the content of the child if any.
+ * @content:  the XML content of the child if any.
  *
- * 
  * Creation of a new child element, added at the end of @parent childs list.
  * @ns and @content parameters are optionnal (NULL). If content is non NULL,
  * a child list containing the TEXTs and ENTITY_REFs node will be created.
+ * NOTE: @content is supposed to be a piece of XML CDATA, so it allow entities
+ *       references, but XML special chars need to be escaped first by using
+ *       xmlEncodeEntitiesReentrant(). Use xmlNewTextChild() if entities
+ *       support is not needed.
+ *
  * Returns a pointer to the new node object.
  */
 xmlNodePtr
 xmlNewChild(xmlNodePtr parent, xmlNsPtr ns,
-                       const xmlChar *name, const xmlChar *content) {
+            const xmlChar *name, const xmlChar *content) {
     xmlNodePtr cur, prev;
 
     if (parent == NULL) {
@@ -1703,7 +1798,7 @@
 }
 
 /*
- * NOTE about the CopyNode operations !
+ * NOTE abeut the CopyNode operations !
  *
  * They are splitted into external and internal parts for one
  * tricky reason: namespaces. Doing a direct copy of a node
@@ -3242,7 +3337,8 @@
  * @cur:  the document
  *
  * Dump an XML document to a file. Will use compression if
- * compiled in and enabled.
+ * compiled in and enabled. If @filename is "-" the stdout file is
+ * used.
  * returns: the number of file written or -1 in case of failure.
  */
 int
@@ -3263,9 +3359,13 @@
     xmlDocContentDump(buf, cur);
 
 #ifdef HAVE_ZLIB_H
+    if (cur->compression < 0) cur->compression = xmlCompressMode;
     if ((cur->compression > 0) && (cur->compression <= 9)) {
         sprintf(mode, "w%d", cur->compression);
-	zoutput = gzopen(filename, mode);
+	if (!strcmp(filename, "-")) 
+	    zoutput = gzdopen(1, mode);
+	else
+	    zoutput = gzopen(filename, mode);
     }
     if (zoutput == NULL) {
 #endif
diff --git a/tree.h b/tree.h
index 6c8ab10..f5fcf57 100644
--- a/tree.h
+++ b/tree.h
@@ -363,12 +363,20 @@
 					 xmlNsPtr ns,
 					 const xmlChar *name,
 					 const xmlChar *content);
+xmlNodePtr	xmlNewDocRawNode	(xmlDocPtr doc,
+					 xmlNsPtr ns,
+					 const xmlChar *name,
+					 const xmlChar *content);
 xmlNodePtr	xmlNewNode		(xmlNsPtr ns,
 					 const xmlChar *name);
 xmlNodePtr	xmlNewChild		(xmlNodePtr parent,
 					 xmlNsPtr ns,
 					 const xmlChar *name,
 					 const xmlChar *content);
+xmlNodePtr	xmlNewTextChild		(xmlNodePtr parent,
+					 xmlNsPtr ns,
+					 const xmlChar *name,
+					 const xmlChar *content);
 xmlNodePtr	xmlNewDocText		(xmlDocPtr doc,
 					 const xmlChar *content);
 xmlNodePtr	xmlNewText		(const xmlChar *content);