根据java中其他元素的内容跳过特定元素的XSD验证

问题描述 投票:0回答:1

在xsd我有像下面的元素,它需要城市,拉链不是空的。

<addresses>
    <address>
      <name>abc</name>
      <address>skip</Address>
       ....
      <city/>
      <zip/>
    </address>
</addresses>

但在特定情况下,例如如果地址元素内容被跳过,我不想要城市,zip验证。有什么选择来实现这个java或xsd级别。

java xml xsd xsd-validation
1个回答
1
投票

您可能应该根据跳过验证而不是根据条件要求出现或类型来构建您的要求。通常“跳过验证”由xs:any处理,但这似乎并不像你想要的那样。

XSD 1.0无法表示元素出现依赖于其他元素值的约束。你需要XSD 1.1。有关示例,请参阅Require XML element in XSD when another element has certain value?

© www.soinside.com 2019 - 2024. All rights reserved.