Marie Steinberg wrote:
The DTD name is the name of the DTD file, for
example: 'foo.dtd'. is it the system identifier ?
This is the system identifier.
I used the following solution but it isn't run with fop:
************** foo.xsl *********************
<?xml version="1.0" ?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
You need MSXML to run it.
If you are runing your stuff from the command line, try
to get the file name elswhere and pass it as a parameter
to the style sheet:
Xalan -in foo.xml -xsl foo-transform.xsl -out foo.fo -param dtdname "'foo.dtd'"
In the style sheet
<xsl:param name="dtdname"/>
Alternatively you can write your own wrapper, retrieving
the system identifer from the DOM using JAXP. I have the
code somewhere else, will post it tomorrow.
J.Pietschmann