如何通过命令行向saxon提供xsl lib?

时间:2014-09-23 16:33:50

标签: xslt jar saxon

我正在使用jar saxon9he.jar来创建一些xsl文件。这是我正在使用的命令行。

java -jar saxon9he.jar -o:output.xml -s:input.xml -xsl:mystylesheet.xslt

mystylesheet.xslt里面有这一行:

<xsl:import href="datetime_lib.xsl"/>

如何将这个额外的xsl文件提供给jar?

1 个答案:

答案 0 :(得分:1)

您不需要在命令行中提及此额外的样式表模块。 URI datetime_lib.xsl被解释为相对URI,并且被视为相对于包含样式表模块mystylesheet.xslt的基URI。在实践中,如果两个模块位于同一目录中,则表示一切正常(如果不是,则可以使用相对位置,如href="../lib/other.xsl")。

如果你想以某种其他方式解决datetime_lib.xsl(也许它在某个地方完全不相关),那么实现这一目标的正常方法是使用目录解析器。在Saxon的最新版本中,您可以使用选项-catalog:catalog.xml指向目录,该目录是特定格式的XML文档,可将URI重定向到其他位置。您可以在此处阅读有关使用Saxon目录的更多信息:

http://www.saxonica.com/documentation/#!sourcedocs/xml-catalogs

,目录格式如下:

http://xerces.apache.org/xml-commons/components/resolver/resolver-article.html