在XSD定义中是否可以定义类似的规则 - 在整个XML文件中必须唯一的ID - 与另一个数字相关的数字,即必须大于前一个元素的数字? - 引用,即引用另一个元素的id的值
您如何处理针对XML的此类要求?
示例:
<page id="123">
<name>Charles</>
</page>
<wizard>
<page ref="123">
...
</wizard>
在这种情况下,客户ID必须是唯一的,从订单到客户的引用必须是有效的,即引用XML中存在的客户。
我没有尝试在这里模仿数据库,我有一个复杂的配置文件,我正在寻找一种修复其定义的好方法,并且有一种更安全的编辑/验证方式。< / p>
答案 0 :(得分:0)
在XSD 1.0中,您可以定义简单唯一性和参照完整性约束(必须唯一的值,必须引用其他元素的ID的值) - 阅读xs:unique,xs:key和xs:keyref。
更复杂的约束,例如&#34;必须大于前一个元素的数量&#34;需要XSD 1.1断言。