基于其他属性值的条件存在的属性

时间:2015-09-04 08:55:43

标签: xml xsd

我有一个XML需要使用模式进行非常严格的验证。 问题是某些元素的某些属性仅在"类型"属性具有一定的价值。

例如:

<someElement type="foo" att1="bla" />
<someElement type="bar" att1="blu" />

在我的情况下,type="foo"应该验证正常,但对于type="bar"它不应该是因为&#34; bar&#34;另一个属性att2必须存在。

使用模式甚至可以做到这一点,或者我是否需要声明一个新的complexType而不是<someElement>只能提供我需要的东西?

我尝试了类似的问题&#34;部分,但无法找到具体解决此问题的内容。

1 个答案:

答案 0 :(得分:1)

您所描述的内容与XSD 1.1中的“条件类型分配”机制完全匹配(其中一个属性的值用于决定要对哪几种类型进行验证)。

在XSD 1.0中无法做到这一点。