XML XSD 以外的验证选项

XML Validation options other than XSD

我们有 XSD 文件给我们的客户进行 XML 验证。这是来自不同团队的不同 XML 的通用 XSD 文件。我试图找出除了使用 XSD 之外是否有更好的 XML 验证方法。 很难维护,因为我们有多个团队使用相同的 XSD,并且一个团队对 XSD 进行更改不应影响其他团队

您可以使用 DTD 或 Relax NG 架构,但我认为切换到其中任何一个都无法解决您的问题。

不确定团队如何发挥作用,但对 XSD 模式(或 DTD、Relax NG 模式等)的任何更改 应该 影响任何其他XML 也使用该模式进行验证。如果有 XML 文件不应受到影响,则可能需要通过不同的模式对其进行验证。

您可以模块化您的模式,这样您就不必复制相同的模式部分。

此外,您可能需要考虑更严格地控​​制修改架构的人员和时间。也许有类似变更审查委员会的东西,讨论潜在的变更以及对其他团队、文档类型和数据消费者的影响。

其他XML 验证选项

当然还有 XML 除了 XSD 之外的验证标准:DTD、RelaxNG、Schematron...

真正的问题

但是,寻求技术解决方案来解决描述不准确的组织问题是错误的。 XML 模式(任何类型)是描述和交流 XML 词汇和语法的工具。期待

one team making changes to the XSD shouldn't affect the other teams

是为了否认创建XML模式的根本原因:就XML词汇和语法设计达成一致意见。

首先定义你的组织控制问题。 然后 询问技术解决方案如何支持您的目标结构。将两者混为一谈是无法应对挑战的。

另请参阅

  • How is XML a general data format?
  • What is the purpose of XSD files?
  • What are the best practices for versioning XML schemas?