我正在使用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?
答案 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