Xml xs:unique在多个值唯一时匹配它们
就我所见,以下XML应该通过对其下XSD的验证,因为所有“symbolName”值都是唯一的。然而,当我尝试验证它时,我得到了以下错误 标识约束“xxxxxx sdfsdfsdf”的字段“symbolName”在元素“symbols”的范围内匹配了9次。Xml xs:unique在多个值唯一时匹配它们,xml,xsd,Xml,Xsd,就我所见,以下XML应该通过对其下XSD的验证,因为所有“symbolName”值都是唯一的。然而,当我尝试验证它时,我得到了以下错误 标识约束“xxxxxx sdfsdfsdf”的字段“symbolName”在元素“symbols”的范围内匹配了9次。 简单的 字母A 字母B 字母C 字母D 字母E 字母F 信一 字母O 字母U 您显然对xs:unique的含义有些误解。您的声明指出每个symbolName都必须有一个唯一的值,实际上,每个symbolName都有一个唯一的值。将“symbo
简单的
字母A
字母B
字母C
字母D
字母E
字母F
信一
字母O
字母U
您显然对xs:unique的含义有些误解。您的声明指出每个symbolName都必须有一个唯一的值,实际上,每个symbolName都有一个唯一的值。将“symbolName”添加到选择器中,设置字段xpath=“”
我希望symbolName的每个值都是唯一的,但错误消息告诉我我有9个值。您所说的正是我想要实现的,以及我如何理解xs:unique的行为,问题是问题顶部的错误消息-验证告诉我它们不是唯一的
<levelSymbolCollection>
<levelName>Simple</levelName>
<symbols>
<symbolName>Letter-A</symbolName>
<symbolName>Letter-B</symbolName>
<symbolName>Letter-C</symbolName>
<symbolName>Letter-D</symbolName>
<symbolName>Letter-E</symbolName>
<symbolName>Letter-F</symbolName>
<symbolName>Letter-I</symbolName>
<symbolName>Letter-O</symbolName>
<symbolName>Letter-U</symbolName>
</symbols>
</levelSymbolCollection>
<xs:element name="levelSymbolCollection" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="levelName" type="requiredString"/>
<xs:element name="symbols">
<xs:complexType>
<xs:sequence>
<xs:element name="symbolName" type="requiredString" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:unique name="xxxxxxxxsdfsdfsdfsdf">
<xs:selector xpath="symbols"></xs:selector>
<xs:field xpath="symbolName"></xs:field>
</xs:unique>
</xs:element>
<xs:element name="levelSymbolCollection" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="levelName" type="requiredString"/>
<xs:element name="symbols">
<xs:complexType>
<xs:sequence>
<xs:element name="symbolName" type="requiredString" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:unique name="xxxxxxxxsdfsdfsdfsdf">
<xs:selector xpath="symbolName"></xs:selector>
<xs:field xpath="."></xs:field>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>