2005-11-27 11:55:54 +00:00
2005-03-13 18:02:10 +00:00
2005-11-26 21:48:15 +00:00
2005-11-26 21:48:15 +00:00
2005-11-26 21:48:15 +00:00
2005-11-27 11:55:54 +00:00
2005-03-13 18:02:10 +00:00
2005-11-26 21:48:15 +00:00
2005-03-13 18:02:10 +00:00
2005-11-26 22:55:22 +00:00
2005-03-13 18:02:10 +00:00
2005-04-06 19:25:18 +00:00
2005-03-13 18:02:10 +00:00
2005-11-26 21:48:15 +00:00
2005-03-13 18:02:10 +00:00
2005-11-27 11:55:54 +00:00
2005-03-13 18:02:10 +00:00

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
  <head>
    <title>Closure XML</title>
    <link rel="stylesheet" type="text/css" href="doc/cxml.css"/>
  </head>
  <body>
    <div class="sidebar">
      <p>
	<a href="README.html">CXML Homepage</a>
      </p>
      <ul>
	<li>
          <a href="doc/installation.html">Installing Closure XML</a>
          <ul>
	    <li><a href="doc/installation.html#download"><b>Download</b></a></li>
	    <li><a href="doc/installation.html#implementations">Implementation-specific notes</a></li>
	    <li><a href="doc/installation.html#compilation"><b>Compilation</b></a></li>
	    <li><a href="doc/installation.html#tests">Tests</a></li>
          </ul>
	</li>
	<li>
          <a href="doc/using.html">Using Closure XML</a>
          <ul>
            <li><a href="doc/using.html#quickstart"><b>Quick-Start Example</b></a></li>
            <li><a href="doc/using.html#parser">Parsing and Validating</a></li>
            <li><a href="doc/using.html#serialization">Serialization</a></li>
            <li><a href="doc/using.html#misc">Miscellaneous Utility Functions</a></li>
            <li><a href="doc/using.html#xmls">XMLS Compatibility</a></li>
            <li><a href="doc/using.html#rods">Dealing with Rods</a></li>
            <li><a href="doc/using.html#dtdcache">Caching of DTD Objects</a></li>
            <li><a href="doc/using.html#catalogs">XML Catalogs</a></li>
	    <li><a href="doc/using.html#sax">SAX Interface</a></li>
	    <li><a href="doc/using.html#dom">DOM Notes</a></li>
          </ul>
	</li>
      </ul>
    </div>

    <h1>Closure XML Parser</h1>

    <p>An XML parser written in Common Lisp.</p>

    <p>
      Closure XML was written by <a
      href="http://www.stud.uni-karlsruhe.de/~unk6/">Gilbert Baumann</a>
      (unk6 at rz.uni-karlsruhe.de) as part of the Closure web
      browser.<br/>
      Contributions to the parser by
    </p>
    <ul>
      <li>
        Henrik Motakef (hmot at henrik-motakef.de)<br/>
        (SAX layer; namespace support)
      </li>
      <li>
        <a href="mailto:david@lichteblau.com">David Lichteblau</a> for <a
        href="http://www.knowledgetools.de">knowledgeTools</a>
        (conversion into an independent package; DOM bug fixing; validation)
        and <a href="http://www.headcraft.de/">headcraft</a>
        (most september/october 2004 changes) and privately (changes
        since then).
      </li>
    </ul>

    <p>
      CXML currently implements a namespace-aware, validating SAX-like
      <a href="http://www.w3.org/TR/2000/REC-xml-20001006">XML&nbsp;1.0</a>
      parser as well as the <a
      href="http://www.w3.org/TR/REC-DOM-Level-1/level-one-core.html">DOM&nbsp;Level&nbsp;1&nbsp;Core</a>
      interfaces.
    </p>

    <p>
      CXML is licensed under (L)LGPL.
    </p>

    <p>
      Send bug reports to <a
      href="mailto:cxml-devel@common-lisp.net">cxml-devel@common-lisp.net</a>
      (<a
      href="http://common-lisp.net/cgi-bin/mailman/listinfo/cxml-devel">list
      information</a>).
    </p>

    <a name="changes"/>
    <h2>Recent Changes</h2>
    <p class="nomargin"><tt>rel-2005-xx-yy</tt></p>
    <ul class="nomargin">
      <li>Use trivial-gray-streams.</li>
    </ul>
    <p class="nomargin"><tt>rel-2005-06-25</tt></p>
    <ul class="nomargin">
      <li>Port to OpenMCL (thanks to Rudi Schlatte).</li>
      <li>Port to LispWorks (thanks to Edi Weitz).</li>
      <li>Minor new features: <tt>include-default-values</tt> argument to
      <tt>make-xmls-builder</tt>; <tt>handler</tt> argument
      to <tt>parse-dtd-stream</tt>; SAX proxy class</li>
      <li>Various bugfixes.</li>
    </ul>
    <p class="nomargin"><tt>patch-357</tt> (2004-10-10)</p>
    <ul class="nomargin">
      <li>Auto-detect unicode support for better asdf-installability.</li>
      <li>Use the puri library for Sys-ID handling.</li>
      <li>Semi-automatic caching of DTD instances.</li>
      <li>Support user-defined entity resolvers.</li>
      <li>Support for Oasis XML Catalogs.</li>
      <li>xhtmlgen version of Franz htmlgen.</li>
      <li>Fixes for SBCL's unicode support.</li>
    </ul>
    <p class="nomargin"><tt>patch-306</tt> (2004-09-03)</p>
    <ul class="nomargin">
      <li>Event-based serialization which does not require DOM documents</li>
      <li>XMLS compatiblity</li>
      <li>minor bugfixes (thread safety; should work on clisp again)</li>
    </ul>
    <p class="nomargin"><tt>patch-279</tt> (2004-05-11)</p>
    <ul class="nomargin">
      <li>Validation</li>
      <li>bugfixes; XHTML DTD parses again; corrected SAX entity handling</li>
    </ul>
    <p class="nomargin"><tt>patch-204</tt></p>
    <ul class="nomargin">
      <li>Renamed package <tt>XML</tt> to <tt>CXML</tt>.</li>
      <li>The unparse functions support non-canonical output now.</li>
    </ul>
    <p class="nomargin"><tt>patch-191</tt> (2004-03-18)</p>
    <ul class="nomargin">
      <li>Initial release.</li>
    </ul>

<!--
    <a name="todo"/>
    <h2>To Do</h2>
    <ul>
      <li>
        <strike>David's changes might have affected performance.&nbsp; Some
        benchmarking needs to be done here.</strike> (The actual parser
        seems to be faster than xmls - - good enough for me.)
      </li>
      <li>
        DOM in general is pretty heavyweight.&nbsp; There is/was a
        "simple-dom" which should be faster.&nbsp; This might be worth
        reviving.
      </li>
      <li>
        <strike>For those who don't like DOM at all, it would be a very simple
        exercise to write a SAX handler for "Lisp-XML" output instead of
        DOM.</strike> (done)
      <li>
        <strike>The serializer supports only <a
        href="http://www.w3.org/TR/2001/REC-xml-c14n-20010315">Canonical
        XML</a> right now.</strike>&nbsp; In the future we want support for:
        <strike>Including doctype declarations in the output</strike>
        (done), <strike>ordinary output with less character reference
        noise</strike> (done), <strike>optional indentation</strike>
        (done), user-specified encoding, etc.
      </li>
      <li>
        <strike>There are still thread-safety issues.</strike> (fixed)
      </li>
      <li>
        <strike>Validation!</strike> (done)
      </li>
      <li>
        Upgrade to DOM Level 2 for complete namespace support.
      </li>
      <li>
        Unless <tt>rune-is-character</tt> is enabled, rod hashing
        currently uses <tt>equalp</tt> hash tables, which can be very slow.
        (See <tt>%make-rod-hash-table</tt>.)
      </li>
    </ul>
    <p>
      (Compare also with Gilbert Baumann's older TODO list in
      <tt>xml-parse.lisp</tt>.)
    </p>
-->

  </body>
</html>
Description
CXML with PMSF changes
Readme 632 KiB
Languages
Common Lisp 99.7%
Shell 0.3%