我正在使用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文件的罐子?
我正在使用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文件的罐子?
您不必在命令行中提及這個額外的樣式表模塊。 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
謝謝你,它的工作。 – 2014-09-23 19:31:55