1

我们正在处理不同版本的多个 XSD 和 XML 文件。我们希望确保可以使用正确的 XSD 验证 xml 文件。有没有办法做到这一点?到目前为止,我得出了这样的结论:

  • 您可以通过在模式的根元素中设置“版本”属性来对 xsd 进行版本控制(简单:))
  • 要对 xml 执行相同的操作,您可以将其放在注释部分或根元素中的属性中(在导入时和导出后处理后都需要预处理以编写版本) - 非常讨厌;-)

我还应该提到,我们不能确保我们得到的 xml 对任何 XSD 都是正确的,因为它可以被第三方传递。

任何帮助表示赞赏!

4

2 回答 2

1

我会在根元素上放置一个版本号,然后使用 XProc 管道来控制验证,其中 XProc 管道根据它在版本号中看到的内容来决定要验证的架构。

于 2012-11-15T14:50:38.170 回答
1

为了避免预处理,任何解决方案都将是这两者的变体:为每个版本分配唯一的命名空间,或者使用每个版本的不同应用程序端点(例如 URL)来使用您的 xml。

于 2012-11-15T14:52:12.820 回答