根据属性的值验证元素

时间:2014-07-10 04:26:31

标签: xml xsd schema

我的XML中有以下元素

<xs:MigrationUpgradeRequisitesSection ovf:required="false"> <Info>Files necessary for migration-based upgrade.</Info> <xs:Requisite xs:purpose="requirements" ovf:fileRef="xxxxx"/> </xs:MigrationUpgradeRequisitesSection>

如果ovf:required=false,我想在不做任何验证的情况下允许该元素。否则应该验证。

如何为此编写xml架构?我的xml版本是1.0

1 个答案:

答案 0 :(得分:2)

据我所知,直接不可能,您的案例可能会有解决方法,如本文所述:

Restricting XML Elements Based on Another Element via XSD

第一个答案,很好地解释了为什么不可能,以及如何通过在通过XSD验证之前应用转换来实现。在XSD验证之前,您可以使用“ovf:required = false”将元素转换为null元素。