Re: [xsl] saxon9-ant.jar and <xmlcatalog/>

Subject: Re: [xsl] saxon9-ant.jar and <xmlcatalog/>
From: Robert Koberg <rob@xxxxxxxxxx>
Date: Sun, 25 Jan 2009 17:21:26 -0500
Hi,

You can run ant -debug to get more info on the resolution being attempted.

catalogs (using both ant catalogs and oasis catalogs) in ant are hairy beasts...

Probably best to use Oasis catalogs (the catalog below is an Ant catalog)... and system rather than public for this case.

Ant says (http://ant.apache.org/manual/CoreTypes/xmlcatalog.html):

"Currently, only <dtd> and <entity> elements may be specified inline; these roughly correspond to OASIS catalog entry types PUBLIC and URI respectively. By contrast, external catalog files may use any of the entry types defined in the +OASIS specification."

does the resolver treat an xsl:import/include as a system ID??

best,
-Rob


On Jan 25, 2009, at 4:52 PM, Michael Kay wrote:



how can I submit an xmlcatalog to saxon9-ant.jar (see http://www.saxonica.com/documentation/using-xsl/xsltfromant.html)?


This question is very product-specific. Product-specific questions are best
raised in a product-specific forum. For Saxon this is the saxon-help mailing
list or forum reachable via the Saxon project on SourceForge.


(If the answer was simple I would give it here anyway, but it isn't - it
will require some investigation, so I would prefer to track the issue in the
proper place.)


Michael Kay
http://www.saxonica.com/


I've tried

<xslt2 in="${src_file}" out="${build}/trash.xml"
style="${lib}/tools/test.xsl" force="true">
   <param name="files_prefix" expression="${files_prefix}"/>
   <xmlcatalog refid="catalog"/>
</xslt2>
		
with

<xmlcatalog id="catalog">
   <entity publicid="http://www.editura.de/docs/test2.xsl";
location="lib/docs/test2.xsl"/>
</xmlcatalog>

and

<taskdef name="xslt2" classname="net.sf.saxon.ant.AntTransform"
classpath="${Saxon9.classpath};${Saxon9-Ant.classpath}"/>

With the <xslt/>-ant-task it works fine, but the above fails with
XTSE0165: java.io.FileNotFoundException.

BTW, the pure Saxon way works also well:

<xslt in="${src_file}" out="${build}/trash.xml"
style="${lib}/tools/test.xsl" force="true">
   <param name="files_prefix" expression="${files_prefix}"/>
   <xmlcatalog refid="catalog"/>
   <classpath location="${Saxon9.classpath}" /> </xslt>
		

Is there any other way to submit a xmlcatalog to saxon9-ant.jar?

Thanks,

Stefan Krause

Current Thread