【发布时间】:2018-01-13 19:34:09
【问题描述】:
我有一组 XML 以及 XSD/Schematron 文档用于验证。我必须针对 XSD 验证我的 XML(用于数据类型/结构/模式验证),这很简单。具有挑战性的部分是 Schematron 验证,这是客户对业务规则验证等的要求。
如何使用 C# 实现 Schematron 验证,如果可能的话,是否有任何用于 Schematron 验证的良好/活动框架/API。到目前为止,我发现用于 Schematron 验证的过时/非活动项目缺乏文档和 API 完整性。顺便说一句,我成功地使用了几个 XML 编辑器应用程序(Oxygen 等)来针对 Schematron 验证我的文档,但我需要在 C# 中以编程方式执行此操作并将此功能添加到更大的项目中。 提前致谢。
【问题讨论】:
-
生成xml时不能。但是在生成 xml 之后,您可以使用模式读取它,如果它读取正确,那么您已经验证了它。
-
@jdweng 不用说我不是在谈论动态验证(即在生成 xml 时);我说的是生成 xml 后的验证。因此,您建议使用 Schematron 读取的普通 xml(就像 XSD 一样)。我说的对吗?
-
是的。在 xml 生成期间(即时)验证的唯一方法是使用 xml 序列化并在序列化中引用模式。
标签: c# xml validation xsd schematron