unique 元素的使用问题 【深情求教】
我在unique元素的使用过程中,发现验证老是不成功,现将状况描述如下:
xsd 文件:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="a">
<xs:complexType>
<xs:sequence>
<xs:element name="a1" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="id" type="xs:integer" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:unique name="aID">
<xs:selector xpath="a/a1"/>
<xs:field xpath="@id"/>
</xs:unique>
</xs:element>
</xs:schema>
XML文件:
<a xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="D:\MyWork\java\schema\test.xsd">
<a1 id="1"/>
<a1 id="1"/>
</a>
按照我的期望,两个a1元素id属性应该是唯一的,此时应该报错才对,但验证竟然通过了,不知道问题出在什么地方,希望各为高手帮忙指教,一定给分。