Я уже несколько дней пытаюсь заставить работать проверку XML в командной строке Linux по схеме 1.1 / XSD. (Меня особо не волнует этот инструмент, поскольку это бесплатный инструмент для Linux, поддерживающий операторы xsd 1.1, такие как "assert")
Пока что я нашел / попробовал:
xmllint (кажется, он не поддерживает схему XSD 1.1?) (Я очень успешно использовал xmllint в прошлом для xsd 1.0)
Последняя версия Saxon поддерживает только проверку XSD с Enterprise Edition (EE), которой у меня нет.
многочисленные потоки здесь, в stackoverflow, включая инструмент, который один из них предоставил
Якобы это так же просто, как позвонить
java com.saxonica.Validate [options] source.xml...
Я должен использовать
-xsdversion:1.1
при вызове валидатораМногие утверждают, что он работает с Saxon-B, но нет конкретного примера.
Я загрузил исходный код Saxon-B / saxon 9.1.0.8 из SF, но безрезультатно нашел класс 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
(«Не удалось найти основной класс») (Очевидно, мне нужно предоставить больше параметров для проверки на соответствие схеме, но поскольку класс не может быть найден, ...)
Запуск Java 1.7 build 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)
У кого-нибудь есть рабочий пример инструмента (желательно saxon-B), где я могу проверить XML на XSD 1.1 в командной строке Linux?
Спасибо,
e