我已经创建了一个工具来创建XML文件,但是现在我需要根据SCH(Schematron)文件来验证生成的XML。但是,我尝试过的工具都没有起作用。
作为名称空间,无法访问URI。
有没有可用的工具可用于java或javascript,以针对SCH文件或XSLT文件验证此XML?
任何答案将不胜感激 非常感谢 〜本
答案 0 :(得分:0)
一种常见的方法是使用Schematron网站http://schematron.com/front-page/the-schematron-skeleton-implementation/上描述的基于XSLT的过程。
该过程将Schematron模式转换为XSL文档,然后使用该XSL文档转换您要验证的文档。最终结果是SVRL(Schematron验证报告语言)文档,该文档描述了发现的所有验证问题。
shell脚本过程如下:
要将Schematron模式转换为XSL:
xslt -stylesheet iso_dsdl_include.xsl theSchema.sch > theSchema1.sch
xslt -stylesheet iso_abstract_expand.xsl theSchema1.sch > theSchema2.sch
xslt -stylesheet iso_svrl_for_xsltn.xsl theSchema2.sch > theSchema.xsl
要验证XML文档:
xslt -stylesheet theSchema.xsl myDocument.xml > myResult.xml
可以使用XSLT库在Java中完成该过程。如果您的Schematron架构使用XSLT2 / Xpath 2,那么我建议您使用Saxon XSLT库。