[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Catalog support in Saxon-B (Linux)?

Subject: Re: Catalog support in Saxon-B (Linux)?
From: Evan Leibovitch <evan@xxxxxxxxx>
Date: Fri, 27 Aug 2010 15:33:37 -0400
Re:  Catalog support in Saxon-B (Linux)?
Thanks for the quick answer.

On 26 August 2010 18:56, Michael Kay <mike@xxxxxxxxxxxx> wrote:
>
> You can find information on using Saxon with catalogs here:
>
> https://sourceforge.net/apps/mediawiki/saxon/index.php?title=XML_Catalogs
>
> Regrettably, if your source document contains a reference to a DTD, there is
no way to prevent the XML parser from attempting to retrieve the DTD. You can
suppress DTD-based validation, but you can't suppress other things that are
DTD-dependent, like entity definitions and default attribute expansion.
>
> (There's nothing about this problem that's specific to Java, incidentally,
or for that matter to XSLT. It's a pure XML parsing issue.)

I only thought it was a Java issue since I seem to be able to invoke
xsltproc without its downloading the DTD.

In any case, I followed the instructions (I think).

I'm now getting a slew of Java errors when I try to invoke it.

----------
here is the shell file containing `saxonb`

exec java -cp
/usr/share/java/xml-commons-resolver-1.1.jar:/usr/share/java/saxonb.jar
\
        -Dxml.catalog.files=/etc/xml/catalog \
        -Dxml.catalog.verbosity=1 \
        net.sf.saxon.Transform \
        -novw \
        -r org.apache.xml.resolver.tools.CatalogResolver \
        -x org.apache.xml.resolver.tools.ResolvingXMLReader \
        -y org.apache.xml.resolver.tools.ResolvingXMLReader "$@"
----------
Here is the contents of /etc/catalog

<?xml version="1.0"?>
<!DOCTYPE catalog PUBLIC "-//OASIS//DTD XML Catalogs V1.0//EN"
  "file:///usr/share/xml/schema/xml-core/catalog.dtd">
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
<delegateURI
uriStartString="http://scrollkeeper.sourceforge.net/dtds/scrollkeeper-omf-1.0
/"
catalog="file:///etc/xml/rarian-compat.xml"/>
<delegatePublic publicIdStartString="ISO 8879:1986//ENTITIES"
catalog="file:///etc/xml/sgml-data.xml"/>
<delegateSystem systemIdStartString="/usr/share/sgml/dtd/svg"
catalog="file:///etc/xml/sgml-data.xml"/>
<delegateSystem systemIdStartString="http://docbook.org/xml/"
catalog="file:///etc/xml/docbook-xml.xml"/>
<delegatePublic publicIdStartString="-//OASIS//ELEMENTS DocBook"
catalog="file:///etc/xml/docbook-xml.xml"/>
<delegatePublic publicIdStartString="+//IDN faq.org//DTD Frequently
Asked Questions" catalog="file:///etc/xml/sgml-data.xml"/>
<delegatePublic publicIdStartString="-//OASIS//DTD DocBook XML"
catalog="file:///etc/xml/docbook-xml.xml"/>
<delegateSystem
systemIdStartString="http://www.w3.org/Graphics/SVG/1.1/"
catalog="file:///etc/xml/sgml-data.xml"/>
<delegateSystem systemIdStartString="/usr/share/sgml/dtd/qaml-xml.dtd"
catalog="file:///etc/xml/sgml-data.xml"/>
<delegatePublic publicIdStartString="-//GlobalTransCorp//DTD XML
Catalogs V1.0-Based Extension V1.0//EN"
catalog="file:///etc/xml/xml-core.xml"/>
<delegatePublic publicIdStartString="-//Norman Walsh//DTD CALS Table
Model XML" catalog="file:///etc/xml/docbook-xml.xml"/>
<delegatePublic publicIdStartString="-//OASIS//DTD XML Exchange Table
Model 19990315" catalog="file:///etc/xml/docbook-xml.xml"/>
<delegatePublic publicIdStartString="-//Norman Walsh//ELEMENTS DocBk
XML" catalog="file:///etc/xml/docbook-xml.xml"/>
<delegatePublic publicIdStartString="-//OASIS//DTD XML Catalogs
V1.0//EN" catalog="file:///etc/xml/xml-core.xml"/>
<delegateSystem
systemIdStartString="http://globaltranscorp.org/oasis/catalog/xml/tr9401.dtd"
catalog="file:///etc/xml/xml-core.xml"/>
<delegatePublic publicIdStartString="-//W3C//DTD SVG"
catalog="file:///etc/xml/sgml-data.xml"/>
<delegatePublic publicIdStartString="-//Norman Walsh//DTD DocBook XML"
catalog="file:///etc/xml/docbook-xml.xml"/>
<delegateSystem
systemIdStartString="http://www.oasis-open.org/committees/entity/release/1.0/
catalog.dtd"
catalog="file:///etc/xml/xml-core.xml"/>
<delegateSystem
systemIdStartString="http://xml.ascc.net/xml/resource/qaml-xml"
catalog="file:///etc/xml/sgml-data.xml"/>
<delegatePublic publicIdStartString="-//OASIS//ENTITIES DocBook"
catalog="file:///etc/xml/docbook-xml.xml"/>
<delegateSystem
systemIdStartString="http://www.w3.org/TR/2001/REC-SVG-20010904/"
catalog="file:///etc/xml/sgml-data.xml"/>
<delegatePublic publicIdStartString="-//Norman Walsh//ENTITIES DocBk
XML" catalog="file:///etc/xml/docbook-xml.xml"/>
<delegatePublic publicIdStartString="-//Norman Walsh//DTD DocBk XML"
catalog="file:///etc/xml/docbook-xml.xml"/>
<delegatePublic publicIdStartString="-//Normal Walsh//Exchange Table
Model 19960430" catalog="file:///etc/xml/docbook-xml.xml"/>
<delegatePublic publicIdStartString="+//ISBN 82-7640-023//DTD
Frequently Asked Questions//EN"
catalog="file:///etc/xml/sgml-data.xml"/>
<delegateSystem
systemIdStartString="http://www.oasis-open.org/docbook/xml/"
catalog="file:///etc/xml/docbook-xml.xml"/>
<delegatePublic publicIdStartString="-//OASIS//DTD DocBook CALS Table
Model" catalog="file:///etc/xml/docbook-xml.xml"/>
<delegateSystem
systemIdStartString="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
catalog="file:///etc/xml/xhtml1-strict.dtd"/>
<delegatePublic publicIdStartString="-//W3C//DTD XHTML 1.0 Strict//EN"
catalog="file:///etc/xml/xhtml1-strict.dtd"/>
</catalog>

----------
Here is the invokation of the command and the error messages:

$ saxonb -ext:on -o foo.out -s foo.html -xsl:foo.xsl
java.lang.ArrayIndexOutOfBoundsException: 3
        at
org.apache.xml.resolver.readers.TextCatalogReader.nextToken(TextCatalogReader
.java:249)
        at
org.apache.xml.resolver.readers.TR9401CatalogReader.readCatalog(TR9401Catalog
Reader.java:81)
        at org.apache.xml.resolver.Catalog.parseCatalogFile(Catalog.java:861)
        at
org.apache.xml.resolver.Catalog.parsePendingCatalogs(Catalog.java:757)
        at org.apache.xml.resolver.Catalog.parseCatalog(Catalog.java:605)
        at
org.apache.xml.resolver.Catalog.resolveLocalSystem(Catalog.java:1829)
        at org.apache.xml.resolver.Catalog.resolveSystem(Catalog.java:1704)
        at
org.apache.xml.resolver.tools.CatalogResolver.getResolvedEntity(CatalogResolv
er.java:131)
        at
org.apache.xml.resolver.tools.ResolvingXMLFilter.resolveEntity(ResolvingXMLFi
lter.java:173)
        at
com.sun.org.apache.xerces.internal.util.EntityResolverWrapper.resolveEntity(E
ntityResolverWrapper.java:110)
        at
com.sun.org.apache.xerces.internal.impl.XMLEntityManager.resolveEntityAsPerSt
ax(XMLEntityManager.java:995)
        at
com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.disp
atch(XMLDocumentScannerImpl.java:1167)
        at
com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.next
(XMLDocumentScannerImpl.java:1065)
        at
com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.n
ext(XMLDocumentScannerImpl.java:978)
        at
com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocume
ntScannerImpl.java:625)
        at
com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDo
cumentScannerImpl.java:116)
        at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDo
cument(XMLDocumentFragmentScannerImpl.java:488)
        at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Conf
iguration.java:812)
        at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Conf
iguration.java:741)
        at
com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:123
)
        at
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSA
XParser.java:1208)
        at
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAX
ParserImpl.java:525)
        at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:357)
        at
org.apache.xml.resolver.tools.ResolvingXMLFilter.parse(ResolvingXMLFilter.jav
a:141)
        at net.sf.saxon.event.Sender.sendSAXSource(Unknown Source)
        at net.sf.saxon.event.Sender.send(Unknown Source)
        at net.sf.saxon.event.Sender.send(Unknown Source)
        at net.sf.saxon.Controller.transform(Unknown Source)
        at net.sf.saxon.Transform.processFile(Unknown Source)
        at net.sf.saxon.Transform.doTransform(Unknown Source)
        at net.sf.saxon.Transform.main(Unknown Source)
Fatal error during transformation: java.lang.ArrayIndexOutOfBoundsException:
3

The same file, run through xsltproc, generates no errors.

Any suggestions?

- Evan

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2011 All Rights Reserved.