This is the mail archive of the
docbook-apps@lists.oasis-open.org
mailing list .
Re: Saxon and Catalog classes
I tried the naive approach described in the Filters section of the SAX2
docs., but it doesn't seem to work. I subclassed XMLFilterImpl; I called
setParent( new com.icl.saxon.aelfred.SAXDriver() ) in the constructor; I
overrode resolveEntity to dispatch to a CatalogEntityResolver. It dies
with an error message at run time:
doc$ java -Dxml.catalog.files="$SGML_CATALOG_FILES"
com.icl.saxon.StyleSheet -x Driver_jcw foo.xml bar.xsl
...
Loading catalog: d:/util/sgml/docbookx/docbook.cat
Resolved: -//OASIS//DTD DocBook XML V4.1//EN
file:/d:/util/sgml/docbookx/docbookx.dtd
...
Transform
failed: d:\clearcase\win-quality\vobs\auto\doc\ent\iso-amsa.ent (The
system cannot find the path specified)
It's finding "ent/iso-amsa.ent" in docbookx/dbcentx.mod, but the path is wrong.
If I don't set xml.catalog.files, then it works fine, but that means I'm
pulling the DTD from the oasis-open.org. The reason I started looking at
catalogs is because the XSL processor stopped working when the OASIS site
went down.
I'm pretty sure the catalog classes work. I can use the XT wrapper, and I
can call the catalog sample app.:
doc$ java -Dxml.catalog.files="$SGML_CATALOG_FILES" catalog -s public
"ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN"
...
Resolved: file:/d:/util/sgml/entities/8879/ISOamsa
This isn't finding the file I expect. That file is left over from when I
used DocBook SGML and the DSSSL stylesheets. If I take those old catalog
files out of the xml.catalog.files, then I get what I expect:
doc$ java -Dxml.catalog.files="d:/util/sgml/docbookx/docbook.cat"
catalog -s public "ISO 8879:1986//ENTITIES Added Math Symbols: Arrow
Relations//EN"
...
Resolved: file:/d:/util/sgml/docbookx/ent/iso-amsa.ent
Anyhow, I guess I've been wasting my time. I look forward to your classes,
Norm.
At 07:57 PM 11/28/00 -0500, Norman Walsh wrote:
>/ madhu <bmadi_1@yahoo.com> was heard to say:
>| Norman has written a wrapper around xt but if you have to use catalog
>classes
>| you need to write a wrapper around xp or xerces etc or your own SAX2 parser
>
>I have a much more complete set of classes for doing this, but I can't
>publish them just yet. Real Soon Now, I promise.
--
Jon Willeke, Quality Engineer
InterSystems Corp.
One Memorial Drive, Cambridge, MA 02142