根据XSD验证对象的多个版本

时间:2017-12-12 15:36:07

标签: xml validation xsd attributes version

我想针对XSD验证对象的多个版本。我正在考虑使用属性来声明版本。

假设我有第一个版本:

<person version="1.0">
  <firstname></firstname>
  <lastname></lastname>
</person>

第二个版本:

<person version="2.0">
  <firstname></firstname>
  <lastname></lastname>
  <birthdate></birthdate>
</person>

我可以这样做吗?在XSD中为这两个对象建模的最佳解决方案是什么?

1 个答案:

答案 0 :(得分:2)

在XSD 1.1中,您可以使用条件类型属性(或“类型替代”),您可以使用XPath谓词基于其中一个属性的值声明元素的类型。

XSD 1.0中没有相应的内容。