<!doctype book PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
<!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 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>
  <bookinfo>
    <title>Gnome XML Library Reference Manual</title>
    <authorgroup>
      <author>
        <firstname>Daniel</firstname>
        <surname>Veillard</surname>
        <affiliation>
	  <address>
	    <email>Daniel.Veillard@w3.org</email>
	  </address>
        </affiliation>
      </author>
    </authorgroup>
    <copyright>
      <year>1999</year>
      <holder>Daniel Veillard</holder>
    </copyright>	

    <legalnotice>
      <para>Permission is granted to make and distribute verbatim
      copies of this manual provided the copyright notice and this
      permission notice are preserved on all copies.</para>

      <para>Permission is granted to copy and distribute modified
      versions of this manual under the conditions for verbatim
      copying, provided also that the entire resulting derived work is
      distributed under the terms of a permission notice identical to
      this one.</para>

      <para>Permission is granted to copy and distribute translations
      of this manual into another language, under the above conditions
      for modified versions.</para>
    </legalnotice>

    <abstract>
      <para>This manual documents the interfaces of the libxml
      library and has some short notes to help get you up to speed
      with using the library.</para>
    </abstract>
  </bookinfo>

  <chapter id="libxml-notes">
     <title>Libxml Programming Notes</title>

     <para>Libxml is an XML toolkit library, it allows to parse, edit
     search and write XML documents. There is also an HTML parser front-end
     so the same range of tools can be used with HTML input.</para>
  </chapter>
  <chapter id="libxml-lib">
    <title>Libxml Library Reference</title>

    <para>This section contains the API reference for libxml. All
    the public interfaces are documented here. This reference guide is
    build by extracting comments from the code sources. </para>

    &parser;
    &SAX;
    &tree;
    &entities;
    &valid;
    &error;
    &HTMLparser;
    &HTMLtree;
    &xpath;
    &nanohttp;
    &xmlIO;
    &parserInternals;
    &encoding;
    &debugXML;
    &xmlmemory;
  </chapter>
</book>

