我一直在寻找能够让我的技术:
换句话说,像 Schematron (允许自定义错误消息,可读等等),但对于复杂的结构检查仍然很优雅(对于诸如订单检查之类的事情,XPath是低效的)
是否有一些适合我所描述的需求的合适技术?我可以使用Schematron和(过时的)工具,比如 XSD2SCH ,虽然使用这些工具的结果似乎真的很古怪。
由于
答案 0 :(得分:0)
您可以尝试混合使用XSD和Schematron。利用XSD的排序,标签计数,tage数据类型功能。然后,对于其他复杂的验证,您可以使用Schematron。
XSD给出的错误信息对于人类来说有点困难,但它非常强大。
您可以尝试查看是否存在了解XSD 1.1语义的库。我们尝试的时候没有找到支持。所以我们采用了XSD和Schematron的组合