[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
a new port of oleg's ssax xml parser to plt
The tests seem to run OK, but I haven't yet used it in my own code.
http://www.neilvandyke.org/ssax-plt/
http://www.neilvandyke.org/ssax-plt/ssax-plt-20020328.tar.gz
Neil
---- Begin Excerpts From doc.txt ----
The `ssax' collection is a version of Oleg Kiselyov's SSAX XML parsing
framework that has been ported to PLT Scheme (MzScheme, DrScheme) version 200
and packaged as PLT modules. This collection is *not* a part of PLT Scheme,
and is installed separately.
[...]
For this port, we have attempted to minimize the changes to both the SSAX
source files and the presented API, but a few changes were necessary, or
seemed especially appropriate for the PLT port.
As a reference to the official SSAX, an unmodified copy of the official
SSAX directory tree is included in this collection under the subdirectory
"official". The CVS/RCS keyword expansions in files under "official" are
verbatim from the official SSAX CVS repository (which is accessible as
":pserver:anonymous@cvs.ssax.sourceforge.net:2401/cvsroot/ssax").
Modified versions of the SSAX source files appear in the top level of the
`ssax' collection directory. The file names of modified files are
lower-case, and use the file name extension ".ss" rather than ".scm".
Modifications are documented within the source files themselves using
comments that begin with the string "[ssax-plt]".
Once the `ssax' collection is installed, SSAX is available as a module that
can be imported with:
(require (lib "ssax.ss" "ssax"))
One change this port makes to the SSAX API is that you should *not* define
the `parser-error' procedure directly. Instead, `parser-error' is defined
as a procedure that applies its arguments to the value of the
`parse-error-param' parameter (see "Parameter Utilities" in "PLT MzScheme:
Language Manual"). The parameter has a default value of a simple
error-reporting procedure, `parse-error-default'.
Similarly, instead of defining `SSAX:warn' directly, you should set the
`SSAX:warn-param' parameter, the default of which is `SSAX:warn-default'.
Future versions of the `ssax' collection will add an `info.ss' file, move
some of the module files to beneath "private/", add units and signatures,
etc.
[...]
SSAX is the work of Oleg Kiselyov. His main Web page on SSAX is
http://pobox.com/~oleg/ftp/Scheme/xml.html , and the SourceForge page for
SSAX is http://ssax.sourceforge.net/ .
This port to PLT Scheme was done by Neil W. Van Dyke <nwv@neilvandyke.org>.
PLEASE REPORT BUGS WITH THIS PORT TO NEIL, rather than to Oleg Kiselyov
(unless you have reproduced your bug with the official SSAX, of course).
The latest version can be found at: http://www.neilvandyke.org/ssax-plt/
SSAX has previously been ported to numerous Scheme dialects by Kirill
Lisovsky <lisovsky@acm.org>. This port in fact uses a definition of
`let-values*' from Lisovsky's earlier port of SSAX to a version of PLT.
Lisovsky's SSAX ports can be found at: http://pair.com/lisovsky/sxml/ssax/
[...]
Note: Release versions of the `ssax' collection are identified by date
rather than by a version number, to avoid confusion with the version
numbers of SSAX.
28-Mar-2002
First release. Quality of the port/packaging should be considered
alpha. Based on the latest SSAX file versions in SourceForge CVS as of
this date, since I could not find labels for the file versions that
made up SSAX release 4.9. Feedback to nwv@neilvandyke.org appreciated.
[...]
---- End Excerpts From doc.txt ----
--
Neil W. Van Dyke
http://www.neilvandyke.org/