168 lines
5.6 KiB
HTML
168 lines
5.6 KiB
HTML
<?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="cxml.css"/>
|
|
</head>
|
|
<body>
|
|
<div class="sidebar">
|
|
<div class="sidebar-title">
|
|
<a href="README.html">Closure XML</a>
|
|
</div>
|
|
<div class="sidebar-main">
|
|
<ul class="main">
|
|
<li>
|
|
<a href="installation.html">Installing Closure XML</a>
|
|
<ul class="sub">
|
|
<li><a href="installation.html#download"><b>Download</b></a></li>
|
|
<li><a href="installation.html#implementations">Implementation-specific notes</a></li>
|
|
<li><a href="installation.html#compilation">Compilation</a></li>
|
|
<li><a href="installation.html#tests">Tests</a></li>
|
|
</ul>
|
|
</li>
|
|
<li>
|
|
<ul class="hack">
|
|
<li>
|
|
<a href="quickstart.html"><b>Quick-Start Example</b></a>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
<li>
|
|
<a href="using.html">SAX parser</a>
|
|
<ul class="sub">
|
|
<li><a href="using.html#parser">Parsing and Validating</a></li>
|
|
<li><a href="using.html#serialization">Serialization</a></li>
|
|
<li><a href="using.html#misc">Miscellaneous SAX handlers</a></li>
|
|
<li><a href="using.html#rods">Recoders</a></li>
|
|
<li><a href="using.html#dtdcache">Caching of DTD Objects</a></li>
|
|
<li><a href="using.html#catalogs">XML Catalogs</a></li>
|
|
<li><a href="using.html#sax">SAX Interface</a></li>
|
|
</ul>
|
|
</li>
|
|
<li>
|
|
<a href="dom.html">DOM implementation</a>
|
|
<ul class="sub">
|
|
<li><a href="dom.html#parser">Parsing with the DOM builder</a></li>
|
|
<li><a href="dom.html#serialization">Serialization</a></li>
|
|
<li><a href="dom.html#mapping">DOM/Lisp mapping</a></li>
|
|
</ul>
|
|
</li>
|
|
<li>
|
|
<ul class="hack">
|
|
<li><a href="xmls-compat.html">XMLS Builder</a></li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<h1>Installation of Closure XML</h1>
|
|
|
|
<a name="download"/>
|
|
<h2>Download</h2>
|
|
<ul>
|
|
<li>
|
|
<div><a href="http://common-lisp.net/project/cxml/download/">tarballs</a></div>
|
|
</li>
|
|
<li>
|
|
<div>
|
|
Anoncvs (<a href="http://common-lisp.net/cgi-bin/viewcvs.cgi/cxml/?cvsroot=cxml">browse</a>):
|
|
<pre>$ export CVSROOT=:pserver:anonymous@common-lisp.net:/project/cxml/cvsroot
|
|
$ cvs login
|
|
Logging in to :pserver:anonymous@common-lisp.net:2401/project/cxml/cvsroot
|
|
CVS password: anonymous
|
|
$ cvs co cxml</pre>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
|
|
<a name="implementations"/>
|
|
<h2>Implementation-specific notes</h2>
|
|
<p>
|
|
CXML should be portable to all Common Lisp implementations
|
|
supported by <a
|
|
href="http://common-lisp.net/project/cl-plus-ssl/#trivial-gray-streams">trivial-gray-streams</a>.
|
|
</p>
|
|
<ul>
|
|
<li>
|
|
SBCL and CLISP will trip over cxml's non-ASCII source files
|
|
unless run using a suitable locale configuration
|
|
(<tt>LC_CTYPE=en_US.ISO-8859-1</tt> should help).
|
|
</li>
|
|
<li>
|
|
The SBCL port uses 16 bit surrogate characters instead of taking
|
|
advantage of SBCL's full 21 bit character support.
|
|
</li>
|
|
</ul>
|
|
|
|
<a name="compilation"/>
|
|
<h2>Compilation</h2>
|
|
<p>
|
|
<a href="http://www.cliki.net/asdf">ASDF</a> is used for
|
|
compilation. The following instructions assume that ASDF has
|
|
already been loaded.
|
|
</p>
|
|
|
|
<p>
|
|
<b>Prerequisites.</b>
|
|
CXML needs the <a href="http://www.cliki.net/Puri">puri</a> library
|
|
as well as <a href="http://www.common-lisp.net/project/cl-plus-ssl/#trivial-gray-streams">trivial-gray-streams</a>.
|
|
</p>
|
|
|
|
<p>
|
|
<b>Compiling and loading CXML.</b>
|
|
Register the .asd file, e.g. by symlinking it:
|
|
</p>
|
|
<pre>$ ln -sf `pwd`/cxml.asd /path/to/your/registry/</pre>
|
|
<p>Then compile CXML using:</p>
|
|
<pre>* (asdf:operate 'asdf:load-op :cxml)</pre>
|
|
|
|
<p>
|
|
You can then try the <a href="quickstart.html">quick-start example</a>.
|
|
</p>
|
|
|
|
<a name="tests"/>
|
|
<h2>Tests</h2>
|
|
<p>Check out the XML and DOM testsuites:</p>
|
|
<pre>$ export CVSROOT=:pserver:anonymous@dev.w3.org:/sources/public
|
|
$ cvs login # password is "anonymous"
|
|
$ cvs co 2001/XML-Test-Suite/xmlconf
|
|
$ cvs co -D '2005-05-06 23:00' 2001/DOM-Test-Suite
|
|
$ cd 2001/DOM-Test-Suite && ant dom1-dtd dom2-dtd</pre>
|
|
<p>
|
|
Omit <tt>-D</tt> to get the latest version, which may not work
|
|
with cxml yet. The <tt>ant</tt> step is necessary to run the DOM
|
|
tests.
|
|
</p>
|
|
<p>Usage:</p>
|
|
<pre>* (xmlconf:run-all-tests "/path/to/2001/XML-Test-Suite/xmlconf/")
|
|
* (domtest:run-all-tests "/path/to/2001/DOM-Test-Suite/")
|
|
</pre>
|
|
<p>
|
|
To compare your results with known output, refer to the files
|
|
<tt>XMLCONF</tt> and <tt>DOMTEST</tt> in the cxml distribution.
|
|
</p>
|
|
|
|
<p>
|
|
<i>fixme</i>: Add an explanation of xml/sax-tests here.
|
|
</p>
|
|
|
|
<p>
|
|
<b>fixme</b> domtest.lisp does not understand the current
|
|
testsuite driver anymore. To fix this problem, revert the
|
|
affected files manually after check-out:
|
|
</p>
|
|
|
|
<pre>$ cd 2001/XML-Test-Suite/xmlconf/
|
|
xmltest$ patch -p0 -R </path/to/cxml/test/xmlconf-base.diff</pre>
|
|
|
|
<p>
|
|
The log message for the changes reads "<i>Removed unnecessary
|
|
xml:base attribute</i>". If I understand correctly, only
|
|
DOM 3 parsers provide the baseURI attribute necessary for
|
|
understanding <tt>xmlconf.xml</tt> now. We don't have that
|
|
yet.
|
|
</p>
|
|
</body>
|
|
</html>
|