1 <documentation title="CXML Installation">
2 <h1>Installation of Closure XML</h1>
8 <div>Download <a href="http://common-lisp.net/project/cxml/download/">tarballs</a> for both cxml itself and closure-common.</div>
12 Or use anonymous CVS (<a href="http://common-lisp.net/cgi-bin/viewcvs.cgi/cxml/?cvsroot=cxml">browse</a>):
13 <pre>export CVSROOT=:pserver:anonymous:anonymous@common-lisp.net:/project/cxml/cvsroot
15 cvs co closure-common</pre>
20 <a name="implementations"/>
21 <h2>Implementation-specific notes</h2>
23 CXML should be portable to all Common Lisp implementations
25 href="http://common-lisp.net/project/cl-plus-ssl/#trivial-gray-streams">trivial-gray-streams</a>.
28 On Lisps without Unicode support, cxml uses integers instead of
29 characters to represent code points internally. By default,
30 however, the parser will recode all data to strings containing
31 characters representing UTF-8 bytes before passing it to user
35 <a name="compilation"/>
38 <a href="http://www.cliki.net/asdf">ASDF</a> is used for
39 compilation. The following instructions assume that ASDF has
45 CXML needs <a href="http://www.cliki.net/Puri">puri</a> and
46 <a href="http://www.common-lisp.net/project/cl-plus-ssl/#trivial-gray-streams">trivial-gray-streams</a>.
48 <a href="http://www.cliki.net/closure-common">closure-common</a>
49 is required, which is a separate module in cxml CVS (see above for
50 check-out instructions).
54 <b>Compiling and loading CXML.</b>
55 Register the .asd file, e.g. by symlinking it:
57 <pre>$ ln -sf `pwd`/cxml/cxml.asd /path/to/your/registry/
58 $ ln -sf `pwd`/closure-common/closure-common.asd /path/to/your/registry/</pre>
59 <p>Then compile CXML using:</p>
60 <pre>* (asdf:operate 'asdf:load-op :cxml)</pre>
63 You can then try the <a href="quickstart.html">quick-start example</a>.
68 <p>Check out the XML and DOM testsuites:</p>
69 <pre>$ export CVSROOT=:pserver:anonymous@dev.w3.org:/sources/public
70 $ cvs login # password is "anonymous"
71 $ cvs co 2001/XML-Test-Suite/xmlconf
72 $ cvs co -D '2005-05-06 23:00' 2001/DOM-Test-Suite
73 $ cd 2001/DOM-Test-Suite && ant dom1-dtd dom2-dtd</pre>
75 Omit <tt>-D</tt> to get the latest version, which may not work
76 with cxml yet. The <tt>ant</tt> step is necessary to run the DOM
80 <pre>* (xmlconf:run-all-tests "/path/to/2001/XML-Test-Suite/xmlconf/")
81 * (domtest:run-all-tests "/path/to/2001/DOM-Test-Suite/")
84 To compare your results with known output, refer to the files
85 <tt>XMLCONF</tt> and <tt>DOMTEST</tt> in the cxml distribution.
89 <i>fixme</i>: Add an explanation of xml/sax-tests here.
93 <b>fixme</b> domtest.lisp does not understand the current
94 testsuite driver anymore.  To fix this problem, revert the
95 affected files manually after check-out:
98 <pre>$ cd 2001/XML-Test-Suite/xmlconf/
99 xmltest$ patch -p0 -R </path/to/cxml/test/xmlconf-base.diff</pre>
102 The log message for the changes reads "<i>Removed unnecessary
103 xml:base attribute</i>".  If I understand correctly, only
104 DOM 3 parsers provide the baseURI attribute necessary for
105 understanding <tt>xmlconf.xml</tt> now.  We don't have that