2016-04-26 43 views
0

我一直在嘗試幾天,以獲得針對1.1 Schema/XSD工作。 (我真的不關心的工具,只要是它是一個免費的Linux工具,支持XSD 1.1之類的語句「斷言」)在命令行(Linux)上針對XSD 1.1 schema/XSD(使用Saxon-B/saxon 9.1.0.8)驗證XML

到目前爲止,我已經找到/嘗試:

  • xmllint( )(我以前用xmllint for xsd 1.0非常成功)

  • 最新版本的Saxon只支持使用Enterprise Edition(EE)進行XSD驗證 - 我沒有這個功能。這裏

  • 多個線程上的計算器,包括工具,其中一人提供

  • 按說我必須使用-xsdversion:1.1調用驗證程序時,它就像調用java com.saxonica.Validate [options] source.xml...

  • 容易

  • 許多人聲稱它可以與撒克遜-B一起使用,但沒有具體的例子

  • 我有下載從SF獲得Saxon-B/saxon 9.1.0.8的源代碼,但無法找到「com.saxonica.Validate」類(不應該是net.sf.saxon。 ...)

  • 調用例如:

./java -cp "<path to saxon libs>/lib/saxon-9.1.0.8.jar" com.saxonica.Validate /home/<myuser>/test.xml Fehler: Hauptklasse com.saxonica.Validate konnte nicht gefunden oder geladen werden

( 「主類找不到」) (Oviously我需要提供更多的選擇來驗證架構,但由於該類無法找到,...)

運行Java 1.7構建71

bin$ ./java -version java version "1.7.0_71" Java(TM) SE Runtime Environment (build 1.7.0_71-b14) Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)

有沒有人有一個工具的示例(最好是薩克森-B),我可以在Linux命令行上驗證XML對XSD 1.1?

謝謝

Ë

回答

0

要使用撒克遜模式驗證,則需要撒克遜企業版;所需的最低許可證是EEV,其價格爲90英鎊。您可以從www.saxonica.com獲得免費的30天評估許可。 Schema處理在Saxon(Saxon-B,Saxon-HE)的開源版本中不可用,並且從未如此。

有一個支持XSD 1.1的Apache Xerces版本,但我不能給你任何幫助,恐怕。 Altova還有一個商業XSD 1.1實現。

+0

謝謝Michael,我目前正在評估Saxon-EE,目前爲止看起來不錯。現在我只需要將XPATH-2.0表達式轉換爲我想要的功能即可...... – eee