我必须验证可能采用以下任何一种形式的XML
<myshape>
<dimension/>
<mycircle>
<radius>2</radius>
</mycircle>
</myshape>
<myshape>
<dimension>
<height>5</height>
</dimension>
<mycircle/>
</myshape>
也就是说,只有一个元素应包含该值,而其他元素则不应包含该值。
我已经尝试了xs:choice
,但问题是,我在xml中有两个元素,但只有一个元素应该包含子元素。我该如何验证?
任何帮助都将不胜感激。
PS:这是遗留代码中的问题,因此我无法切换到XSD1.1
答案 0 :(得分:2)
您不能在XSD 1.0中表示您的约束(元素的内容模型不能基于另一个元素的值。)如果您不能使用XSD 1.1的断言,那么您必须XSD带外强制执行你的约束。