【发布时间】:2019-06-03 21:54:33
【问题描述】:
父元素的子元素必须有一个元素(组外)后跟另一个特定元素。
<xsd:element name="elementContainer">
<xsd:element name="element1">
<xsd:element name="element2">
<xsd:element name="element3">
<xsd:element name="element4">
<xsd:element name="element5">
<xsd:element name="element6">
<xsd:element name="proceedingElement">
</xsd:element>
我想修改上面的 XSD 以便必须有一个元素 (1-6) 后跟进行中的元素。
我尝试在元素 1 到 6 周围添加一个选项,但验证没有选择。
<xsd:element name="elementContainer">
<xsd:choice minOccurs="1">
<xsd:element name="element1">
<xsd:element name="element2">
<xsd:element name="element3">
<xsd:element name="element4">
<xsd:element name="element5">
<xsd:element name="element6">
</xsd:choice>
<xsd:element name="proceedingElement">
</xsd:element>
对于以下两个示例,我希望第一个通过验证,第二个失败。
<elementContainer>
<element2/>
<proceedingElement/>
</elementContainer>
<elementContainer>
<proceedingElement/>
</elementContainer>
如果有帮助,甚至可以忽略存在进行中的元素这一事实,因此只需确保六个元素中至少有一个元素存在即可。
【问题讨论】:
标签: xml xsd xsd-validation xml-validation