Installation of Closure XML

Download

Implementation-specific notes

CXML should be portable to all Common Lisp implementations supporting gray streams. Currently supported are ACL, CLISP, CMUCL, LispWorks, OpenMCL, and SBCL.

Compilation

ASDF is used for compilation. The following instructions assume that ASDF has already been loaded.

Prerequisites. CXML needs the puri library.

Compiling and loading CXML. Register the .asd file, e.g. by symlinking it:

$ ln -sf `pwd`/cxml.asd /path/to/your/registry/

Then compile CXML using:

* (asdf:operate 'asdf:load-op :cxml)

You can then try the quick-start example.

Tests

Check out the XML and DOM testsuites:

$ 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

Omit -D to get the latest version, which may not work with cxml yet. The ant step is necessary to run the DOM tests.

Usage and expected output:

* (xmlconf:run-all-tests "/path/to/2001/XML-Test-Suite/xmlconf/")
0/556 tests failed; 1606 tests were skipped
* (domtest:run-all-tests "/path/to/2001/DOM-Test-Suite/")
0/449 tests failed; 71 tests were skipped

fixme: Add an explanation of xml/sax-tests here.

fixme My parser does not understand the current testsuite anymore.  To fix this problem, revert the affected files manually after check-out:

$ cd 2001/XML-Test-Suite/xmlconf/
xmltest$ patch -p0 -R </path/to/cxml/test/xmlconf-base.diff

The log message for the changes reads "Removed unnecessary xml:base attribute".  If I understand correctly, only DOM 3 parsers provide the baseURI attribute necessary for understanding xmlconf.xml now.  We don't have that yet.