XSD:仅当元素没有某个祖先元素时才允许它

时间:2014-07-24 15:15:09

标签: xml xsd

我知道确定元素可以作为直接子元素的元素当然是可能的。然而,我的问题是我有一个不能包含Bar的元素Foo,而在Foo下允许Baz,并且还可以包含Bar。

如何让Foo包含Baz和Baz来包含Bar,同时防止Foo将Bar作为直接或间接的孩子?

我也很乐意接受任何有关优秀XSD教程或参考的链接。我发现大多数参考资料在这个问题上都是不可接近的。

感谢。

1 个答案:

答案 0 :(得分:0)

元素的有效性不能依赖于它的祖先,因此您需要定义祖先元素本身定义的任何约束。但是从你的描述中并不清楚你想要强加什么约束。

为了获得XSD的良好指南,我会推荐Priscilla Walmsley的书。 Eric van der Vlist也很好;它值得同时使你在一个主题上获得多个角度。