diff --git a/doc/xml.html b/doc/xml.html
index f3062be..7fd713d 100644
--- a/doc/xml.html
+++ b/doc/xml.html
@@ -3,7 +3,7 @@
 <html>
 <head>
   <title>The XML C library for Gnome</title>
-  <meta name="GENERATOR" content="amaya V5.0">
+  <meta name="GENERATOR" content="amaya 5.1">
   <meta http-equiv="Content-Type" content="text/html">
 </head>
 
@@ -32,8 +32,8 @@
     href="http://www.w3.org/TR/REC-xml-names/">http://www.w3.org/TR/REC-xml-names/</a></li>
   <li>XML Base: <a
     href="http://www.w3.org/TR/xmlbase/">http://www.w3.org/TR/xmlbase/</a></li>
-  <li><a href="http://www.cis.ohio-state.edu/rfc/rfc2396.txt">RFC 2396</a>
-     : Uniform Resource Identifiers <a
+  <li><a href="http://www.cis.ohio-state.edu/rfc/rfc2396.txt">RFC 2396</a> :
+    Uniform Resource Identifiers <a
     href="http://www.ietf.org/rfc/rfc2396.txt">http://www.ietf.org/rfc/rfc2396.txt</a></li>
   <li>XML Path Language (XPath) 1.0: <a
     href="http://www.w3.org/TR/xpath">http://www.w3.org/TR/xpath</a></li>
@@ -64,10 +64,10 @@
     href="http://www.w3.org/TR/DOM-Level-2-Core/">http://www.w3.org/TR/DOM-Level-2-Core/</a>
     it doesn't implement the API itself, gdome2 does this in top of
   libxml2</li>
-  <li><a href="http://www.cis.ohio-state.edu/rfc/rfc959.txt">RFC 959</a>
-     : libxml implements a basic FTP client code</li>
-  <li><a href="http://www.cis.ohio-state.edu/rfc/rfc1945.txt">RFC 1945</a>
-     : HTTP/1.0, again a basic HTTP client code</li>
+  <li><a href="http://www.cis.ohio-state.edu/rfc/rfc959.txt">RFC 959</a> :
+    libxml implements a basic FTP client code</li>
+  <li><a href="http://www.cis.ohio-state.edu/rfc/rfc1945.txt">RFC 1945</a> :
+    HTTP/1.0, again a basic HTTP client code</li>
   <li>SAX: a minimal SAX implementation compatible with early expat
   versions</li>
   <li>DocBook SGML v4: libxml2 includes a hackish parser to transition to
@@ -80,11 +80,10 @@
 
 <p>Separate documents:</p>
 <ul>
-  <li><a href="http://xmlsoft.org/XSLT/">the libxslt page</a>
-     providing an implementation of XSLT 1.0 and extensions on top of
-  libxml2</li>
+  <li><a href="http://xmlsoft.org/XSLT/">the libxslt page</a> providing an
+    implementation of XSLT 1.0 and extensions on top of libxml2</li>
   <li><a href="http://www.cs.unibo.it/~casarini/gdome2/">the gdome2 page</a>
-     : a standard DOM2 implementation based on libxml2</li>
+    : a standard DOM2 implementation based on libxml2</li>
 </ul>
 
 <h2><a name="Introducti">Introduction</a></h2>
@@ -158,8 +157,7 @@
   <li>Unless you are forced to because your application links with a Gnome
     library requiring it,  <strong><span style="background-color: #FF0000">Do
     Not Use libxml1</span></strong>, use libxml2</li>
-  <li><em>Where can I get libxml</em>
-     ?
+  <li><em>Where can I get libxml</em> ?
     <p>The original distribution comes from <a
     href="ftp://rpmfind.net/pub/libxml/">rpmfind.net</a> or <a
     href="ftp://ftp.gnome.org/pub/GNOME/stable/sources/libxml/">gnome.org</a></p>
@@ -228,8 +226,8 @@
     <p>However if found at configuration time libxml will detect and use the
     following libs:</p>
     <ul>
-      <li><a href="http://www.info-zip.org/pub/infozip/zlib/">libz</a>
-         : a highly portable and available widely compression library</li>
+      <li><a href="http://www.info-zip.org/pub/infozip/zlib/">libz</a> : a
+        highly portable and available widely compression library</li>
       <li>iconv: a powerful character encoding conversion library. It's
         included by default on recent glibc libraries, so it doesn't need to
         be installed specifically on linux. It seems it's now <a
@@ -351,9 +349,8 @@
       </li>
       <li><a
         href="http://cvs.gnome.org/bonsai/rview.cgi?cvsroot=/cvs/gnome&amp;dir=gnome-xml">Browse
-        the libxml source</a>
-         , I try to write code as clean and documented as possible, so
-        looking at it may be helpful</li>
+        the libxml source</a> , I try to write code as clean and documented
+        as possible, so looking at it may be helpful</li>
     </ul>
   </li>
   <li>What about C++ ?
@@ -401,8 +398,7 @@
     internationalization support</a></li>
   <li>This page provides a global overview and <a href="example.html">some
     examples</a> on how to use libxml.</li>
-  <li><a href="mailto:james@daa.com.au">James Henstridge</a>
-     wrote <a
+  <li><a href="mailto:james@daa.com.au">James Henstridge</a> wrote <a
     href="http://www.daa.com.au/~james/gnome/xml-sax/xml-sax.html">some nice
     documentation</a> explaining how to use the libxml SAX interface.</li>
   <li>George Lebl wrote <a
@@ -546,12 +542,17 @@
 <p>Items floating around but not actively worked on, get in touch with me if
 you want to test those</p>
 <ul>
-  <li>Implementing <a href="http://xmlsoft.org/XSLT">XSLT</a>, this is done
-    as a separate C library on top of libxml called libxslt</li>
   <li>Finishing up <a href="http://www.w3.org/TR/xptr">XPointer</a> and <a
     href="http://www.w3.org/TR/xinclude">XInclude</a></li>
-  <li>(seeems working but delayed from release) parsing/import of Docbook
-    SGML docs</li>
+</ul>
+
+<h3>2.4.17: Mar 8 2002</h3>
+<ul>
+  <li>a lot of bug fixes, including "namespace nodes have no parents in
+  XPath"</li>
+  <li>fixed/improved the Python wrappers, added more examples and more
+    regression tests, XPath extension functions can now return node-sets</li>
+  <li>added the XML Canonalization support from Aleksey Sanin</li>
 </ul>
 
 <h3>2.4.16: Feb 20 2002</h3>
@@ -1314,8 +1315,8 @@
 order to get updates to this list or to discuss the specific topic of libxml2
 or libxslt wrappers or bindings:</p>
 <ul>
-  <li><a href="mailto:ari@lusis.org">Ari Johnson</a>
-     provides a  C++ wrapper for libxml:<br>
+  <li><a href="mailto:ari@lusis.org">Ari Johnson</a> provides a  C++ wrapper
+    for libxml:<br>
     Website: <a
     href="http://lusis.org/~ari/xml++/">http://lusis.org/~ari/xml++/</a><br>
     Download: <a
@@ -1324,12 +1325,12 @@
     based on the gdome2 </a>bindings maintained by Tobias Peters.</li>
   <li><a
     href="http://mail.gnome.org/archives/xml/2001-March/msg00014.html">Matt
-    Sergeant</a>
-     developped <a href="http://axkit.org/download/">XML::LibXSLT</a>, a perl
-    wrapper for libxml2/libxslt as part of the <a
-    href="http://axkit.com/">AxKit XML application server</a></li>
-  <li><a href="mailto:dkuhlman@cutter.rexx.com">Dave Kuhlman</a>
-     provides and earlier version of the libxml/libxslt <a
+    Sergeant</a> developped <a
+    href="http://axkit.org/download/">XML::LibXSLT</a>, a perl wrapper for
+    libxml2/libxslt as part of the <a href="http://axkit.com/">AxKit XML
+    application server</a></li>
+  <li><a href="mailto:dkuhlman@cutter.rexx.com">Dave Kuhlman</a> provides and
+    earlier version of the libxml/libxslt <a
     href="http://www.rexx.com/~dkuhlman">wrappers for Python</a></li>
   <li>Petr Kozelka provides <a
     href="http://sourceforge.net/projects/libxml2-pas">Pascal units to glue
@@ -1339,31 +1340,33 @@
     libxml2 bindings are also available in Ruby through the <a
     href="http://libgdome-ruby.berlios.de/">libgdome-ruby</a> module
     maintained by Tobias Peters.</li>
-  <li>Steve Ball and contributors maintains
-    <a href="http://tclxml.sourceforge.net/">libxml2 and libxslt bindings for
-    Tcl</a>
-  <li>There is support for libxml2 in the DOM module of PHP.
+  <li>Steve Ball and contributors maintains <a
+    href="http://tclxml.sourceforge.net/">libxml2 and libxslt bindings for
+    Tcl</a></li>
+  <li>There is support for libxml2 in the DOM module of PHP.</li>
 </ul>
 
 <p>The distribution includes a set of Python bindings, which are garanteed to
 be maintained as part of the library in the future, though the Python
 interface have not yet reached the maturity of the C API.</p>
-<p>To install the Python bindings there are 2 options:
+
+<p>To install the Python bindings there are 2 options:</p>
 <ul>
-<li> If you use an RPM based distribution, simply install the
-<a href="http://rpmfind.net/linux/rpm2html/search.php?query=libxml2-python"
->libxml2-python RPM</a> (and if needed the
-<a href="http://rpmfind.net/linux/rpm2html/search.php?query=libxslt-python"
->libxslt-python RPM</a>).
-<li> Otherwise use the <a href="ftp://xmlsoft.org/python/">libxml2-python
-module distribution</a> corresponding to your installed version of libxml2
-and libxslt. Note that to install it you will need both libxml2 and libxslt
-installed and run "python setup.py build install" in the module tree.
+  <li>If you use an RPM based distribution, simply install the <a
+    href="http://rpmfind.net/linux/rpm2html/search.php?query=libxml2-python">libxml2-python
+    RPM</a> (and if needed the <a
+    href="http://rpmfind.net/linux/rpm2html/search.php?query=libxslt-python">libxslt-python
+    RPM</a>).</li>
+  <li>Otherwise use the <a href="ftp://xmlsoft.org/python/">libxml2-python
+    module distribution</a> corresponding to your installed version of
+    libxml2 and libxslt. Note that to install it you will need both libxml2
+    and libxslt installed and run "python setup.py build install" in the
+    module tree.</li>
 </ul>
-<p>The distribution
-includes a set of examples and regression tests for the python bindings in
-the <code>python/tests</code> directory. Here are some excepts from those
-tests:</p>
+
+<p>The distribution includes a set of examples and regression tests for the
+python bindings in the <code>python/tests</code> directory. Here are some
+excepts from those tests:</p>
 
 <h3>tst.py:</h3>
 
@@ -1389,18 +1392,15 @@
 prefix is removed and the casing convention are kept). All node seen at the
 binding level share the same subset of accesors:</p>
 <ul>
-  <li><code>name</code>
-    : returns the node name</li>
-  <li><code>type</code>
-    : returns a string indicating the node typ<code>e</code></li>
-  <li><code>content</code>
-    : returns the content of the node, it is based on xmlNodeGetContent() and
-    hence is recursive.</li>
-  <li><code>parent</code>
-    , <code>children</code>, <code>last</code>, <code>next</code>,
-    <code>prev</code>, <code>doc</code>, <code>properties</code>: pointing to
-    the associated element in the tree, those may return None in case no such
-    link exists.</li>
+  <li><code>name</code> : returns the node name</li>
+  <li><code>type</code> : returns a string indicating the node
+    typ<code>e</code></li>
+  <li><code>content</code> : returns the content of the node, it is based on
+    xmlNodeGetContent() and hence is recursive.</li>
+  <li><code>parent</code> , <code>children</code>, <code>last</code>,
+    <code>next</code>, <code>prev</code>, <code>doc</code>,
+    <code>properties</code>: pointing to the associated element in the tree,
+    those may return None in case no such link exists.</li>
 </ul>
 
 <p>Also note the need to explicitely deallocate documents with freeDoc() .
@@ -1600,8 +1600,7 @@
 
 <p>last but not least, all tests starts with the following prologue:</p>
 <pre>#memory debug specific
-libxml2.debugMemory(1)
-</pre>
+libxml2.debugMemory(1)</pre>
 
 <p>and ends with the following epilogue:</p>
 <pre>#memory debug specific
@@ -1990,11 +1989,11 @@
 debugging, analysis or to implement a specific behaviour on memory management
 (like on embedded systems). Two function calls are available to do so:</p>
 <ul>
-  <li><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemGet ()</a>
-     which return the current set of functions in use by the parser</li>
+  <li><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemGet
+    ()</a> which return the current set of functions in use by the parser</li>
   <li><a
     href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemSetup()</a>
-     which allow to set up a new set of memory allocation functions</li>
+    which allow to set up a new set of memory allocation functions</li>
 </ul>
 
 <p>Of course a call to xmlMemSetup() should probably be done before calling
@@ -2010,15 +2009,13 @@
 reuse the parser immediately:</p>
 <ul>
   <li><a href="http://xmlsoft.org/html/libxml-parser.html">xmlCleanupParser
-    ()</a>
-     is a centralized routine to free the parsing states. Note that it won't
-    deallocate any produced tree if any (use the xmlFreeDoc() and related
-    routines for this).</li>
+    ()</a> is a centralized routine to free the parsing states. Note that it
+    won't deallocate any produced tree if any (use the xmlFreeDoc() and
+    related routines for this).</li>
   <li><a href="http://xmlsoft.org/html/libxml-parser.html">xmlInitParser
-    ()</a>
-     is the dual routine allowing to preallocate the parsing state which can
-    be useful for example to avoid initialization reentrancy problems when
-    using libxml in multithreaded applications</li>
+    ()</a> is the dual routine allowing to preallocate the parsing state
+    which can be useful for example to avoid initialization reentrancy
+    problems when using libxml in multithreaded applications</li>
 </ul>
 
 <p>Generally xmlCleanupParser() is safe, if needed the state will be rebuild
@@ -2035,15 +2032,14 @@
 <ul>
   <li><a
     href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMallocLoc()</a>
-     <a
+    <a
     href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlReallocLoc()</a>
     and <a
     href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemStrdupLoc()</a>
     are the memory debugging replacement allocation routines</li>
   <li><a href="http://xmlsoft.org/html/libxml-xmlmemory.html">xmlMemoryDump
-    ()</a>
-     dumps all the informations about the allocated memory block lefts in the
-    <code>.memdump</code> file</li>
+    ()</a> dumps all the informations about the allocated memory block lefts
+    in the <code>.memdump</code> file</li>
 </ul>
 
 <p>When developping libxml memory debug is enabled, the tests programs call
@@ -2548,6 +2544,7 @@
 
 
 
+
 } </pre>
   </li>
   <li>And then use it to save the document:
@@ -2623,9 +2620,8 @@
     James Clark. This is relatively old and not the preferred mode of
     operation of libxml.</li>
   <li><a href="http://www.oasis-open.org/committees/entity/spec.html">XML
-    Catalogs</a>
-     is far more flexible, more recent, uses an XML syntax and should scale
-    quite better. This is the default option of libxml.</li>
+    Catalogs</a> is far more flexible, more recent, uses an XML syntax and
+    should scale quite better. This is the default option of libxml.</li>
 </ul>
 
 <p></p>
@@ -3674,38 +3670,36 @@
     patches, Gary Pennington worked on the validation API, threading support
     and Solaris port.</li>
   <li>John Fleck helps maintaining the documentation and man pages.</li>
-  <li><a href="mailto:ari@lusis.org">Ari Johnson</a>
-     provides a  C++ wrapper for libxml:<br>
+  <li><a href="mailto:ari@lusis.org">Ari Johnson</a> provides a  C++ wrapper
+    for libxml:<br>
     Website: <a
     href="http://lusis.org/~ari/xml++/">http://lusis.org/~ari/xml++/</a><br>
     Download: <a
     href="http://lusis.org/~ari/xml++/libxml++.tar.gz">http://lusis.org/~ari/xml++/libxml++.tar.gz</a></li>
-  <li><a href="mailto:izlatkovic@daenet.de">Igor  Zlatkovic</a>
-     is now the maintainer of the Windows port, <a
+  <li><a href="mailto:izlatkovic@daenet.de">Igor  Zlatkovic</a> is now the
+    maintainer of the Windows port, <a
     href="http://www.fh-frankfurt.de/~igor/projects/libxml/index.html">he
     provides binaries</a></li>
-  <li><a href="mailto:Gary.Pennington@sun.com">Gary Pennington</a>
-     provides <a href="http://garypennington.net/libxml2/">Solaris
-    binaries</a></li>
+  <li><a href="mailto:Gary.Pennington@sun.com">Gary Pennington</a> provides
+    <a href="http://garypennington.net/libxml2/">Solaris binaries</a></li>
   <li><a
     href="http://mail.gnome.org/archives/xml/2001-March/msg00014.html">Matt
-    Sergeant</a>
-     developped <a href="http://axkit.org/download/">XML::LibXSLT</a>, a perl
-    wrapper for libxml2/libxslt as part of the <a
-    href="http://axkit.com/">AxKit XML application server</a></li>
-  <li><a href="mailto:fnatter@gmx.net">Felix Natter</a>
-     and <a href="mailto:geertk@ai.rug.nl">Geert Kloosterman</a> provide <a
+    Sergeant</a> developped <a
+    href="http://axkit.org/download/">XML::LibXSLT</a>, a perl wrapper for
+    libxml2/libxslt as part of the <a href="http://axkit.com/">AxKit XML
+    application server</a></li>
+  <li><a href="mailto:fnatter@gmx.net">Felix Natter</a> and <a
+    href="mailto:geertk@ai.rug.nl">Geert Kloosterman</a> provide <a
     href="libxml-doc.el">an emacs module</a> to lookup libxml(2) functions
     documentation</li>
-  <li><a href="mailto:sherwin@nlm.nih.gov">Ziying Sherwin</a>
-     provided <a href="http://xmlsoft.org/messages/0488.html">man
-  pages</a></li>
+  <li><a href="mailto:sherwin@nlm.nih.gov">Ziying Sherwin</a> provided <a
+    href="http://xmlsoft.org/messages/0488.html">man pages</a></li>
   <li>there is a module for <a
     href="http://acs-misc.sourceforge.net/nsxml.html">libxml/libxslt support
     in OpenNSD/AOLServer</a></li>
-  <li><a href="mailto:dkuhlman@cutter.rexx.com">Dave Kuhlman</a>
-     provides libxml/libxslt <a href="http://www.rexx.com/~dkuhlman">wrappers
-    for Python</a></li>
+  <li><a href="mailto:dkuhlman@cutter.rexx.com">Dave Kuhlman</a> provides
+    libxml/libxslt <a href="http://www.rexx.com/~dkuhlman">wrappers for
+    Python</a></li>
   <li>Petr Kozelka provides <a
     href="http://sourceforge.net/projects/libxml2-pas">Pascal units to glue
     libxml2</a> with Kylix and Delphi and other Pascal compilers</li>
