你好,我有一个像这样的XML:
<xml><fullname>
<name attrib="true"/>
<lastname1 attrib="false"/>
<lastname2 attrib="false"/></fullname></xml>
我需要创建一个模式来进行验证,以便只允许一个属性具有值“true”(其余的必须为false [属性属性被定义为xs:boolean]),因此我在fullname元素中添加了一个唯一性检查,如下所示:
<xs:unique name="attribcheck">
<xs:selector xpath="name|lastname1|lastname2"/>
<xs:field xpath="@attrib"/>
当然,它会检测到有一个重复的"true",但是,它也会检测到一个重复的"false"。有人知道是否有一种方法可以设置限制来应用唯一约束条件吗?意思是我可以确保在任何给定时间只有一个值为"true"。