Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 如何调试Schematron规则?_Xml_Schematron - Fatal编程技术网

Xml 如何调试Schematron规则?

Xml 如何调试Schematron规则?,xml,schematron,Xml,Schematron,我有一个包含各种嵌入式Schematron规则的XSD模式。我还有一个应该是有效的XML,但它不是,所以我需要修正规则 如何有效地调试每个断言的计算方式 (我目前使用的是Oxygen,但任何能够完成这项工作的工具都对我有好处。)通常,Schematron是使用标准实现作为XSLT样式表进行验证的。这意味着实际的验证是应用从Schematron模式(分几个步骤)生成的最终样式表。如果您有用于验证实例文档的样式表,则可以通过任何XSLT调试器运行它。我所知道的唯一一个可以将验证样式表保存为单独文件的

我有一个包含各种嵌入式Schematron规则的XSD模式。我还有一个应该是有效的XML,但它不是,所以我需要修正规则

如何有效地调试每个断言的计算方式


(我目前使用的是Oxygen,但任何能够完成这项工作的工具都对我有好处。)

通常,Schematron是使用标准实现作为XSLT样式表进行验证的。这意味着实际的验证是应用从Schematron模式(分几个步骤)生成的最终样式表。如果您有用于验证实例文档的样式表,则可以通过任何XSLT调试器运行它。我所知道的唯一一个可以将验证样式表保存为单独文件的工具是。也许这有帮助


(注意:根据请求将注释作为答案复制)

您还可以在本机schematron引擎中使用逐步调试。您没有提到您的开发堆栈,但当我想做您所说的事情时,我在调试器中运行schematron引擎,并使用断点检查相关规则/模式/断言的状态——为上下文节点提供了什么?断言xpath在监视窗口中返回什么?等等等


这是一个C#schematron引擎。

嗨,通常schematron是使用标准实现作为XSLT样式表进行验证的。这意味着实际的验证是应用从Schematron模式(分几个步骤)生成的最终样式表。如果您有用于验证实例文档的样式表,则可以通过任何XSLT调试器运行它。我所知道的唯一一个可以将验证样式表保存为单独文件的工具是XML ValidatorBuddy。也许这会有帮助。@Clemens谢谢,这是个好主意。如果你把它抄下来作为答案,我可以投上一票:)当然,我总是喜欢投上一票;)