【问题标题】:XML Validation options other than XSDXSD 以外的 XML 验证选项
【发布时间】:2020-11-21 15:09:55
【问题描述】:

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

【问题讨论】:

  • 回滚原因:以使现有答案无效或严重影响现有答案的方式更改问题是不可接受的。两个答案都已经解决了很难维护,因为我们有多个团队使用相同的 XSD,一个团队对 XSD 进行更改不应该影响其他团队,因此消除了这种担忧答案解决后不应该这样做。

标签: xml xsd dtd xsd-validation xml-validation


【解决方案1】:

其他 XML 验证选项

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

真正的问题

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

一个团队对 XSD 进行更改不应影响其他团队

是否认创建 XML 模式的一个根本原因:通过 XML 词汇和语法设计的协议交流。

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

另见

【讨论】:

    【解决方案2】:

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

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

    您可以模块化您的架构,这样您就不必复制相同的架构片段。

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

    【讨论】:

    • 对,OP 认为改变技术将解决他的组织/社会问题的假设从根本上是错误的。
    • @kjhughes - 不过会很好! ;-) 也为您的出色回答+1。不敢相信我遗漏了 schematron:-/
    猜你喜欢
    • 1970-01-01
    • 2018-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-24
    • 2019-05-18
    • 2019-06-23
    • 1970-01-01
    相关资源
    最近更新 更多