2014-09-23 58 views
0

我正在使用jar saxon9he.jar创建一些xsl文件。这是我正在使用的命令行。如何通过命令行向撒克逊人提供xsl lib?

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

mystylesheet.xslt有这一行里面:

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

我怎么能提供这种额外的XSL文件的罐子?

回答

1

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

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

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

,并且这里所描述的目录格式:

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

+0

谢谢你,它的工作。 – 2014-09-23 19:31:55