我有一个XML需要使用模式进行非常严格的验证。 问题是某些元素的某些属性仅在"类型"属性具有一定的价值。
例如:
<someElement type="foo" att1="bla" />
<someElement type="bar" att1="blu" />
在我的情况下,type="foo"
应该验证正常,但对于type="bar"
它不应该是因为&#34; bar&#34;另一个属性att2
必须存在。
使用模式甚至可以做到这一点,或者我是否需要声明一个新的complexType而不是<someElement>
只能提供我需要的东西?
我尝试了类似的问题&#34;部分,但无法找到具体解决此问题的内容。
答案 0 :(得分:1)
您所描述的内容与XSD 1.1中的“条件类型分配”机制完全匹配(其中一个属性的值用于决定要对哪几种类型进行验证)。
在XSD 1.0中无法做到这一点。