首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在XMS元素中定义键

在XMS元素中定义键
EN

Stack Overflow用户
提问于 2021-04-30 05:43:28
回答 1查看 26关注 0票数 0

我有这样一段XMS:

代码语言:javascript
复制
<xs:element name="student" maxOccurs="unbounded" minOccurs="0">
   <xs:complexType>
      <xs:sequence>
          <xs:element type="xs:string" name="name"/>
          <xs:element type="xs:int" name="id"/>
      </xs:sequence>
  </xs:complexType>
</xs:element>

我希望定义学生元素中的id元素在所有学生中必须是唯一的。有没有一种方法可以使用xs:key或类似的东西呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-30 06:31:21

您可以使用xs:unique元素,它确保由XPath指定的(子)元素只出现一次。

在您的示例中,可能如下所示:

代码语言:javascript
复制
<xs:element name="root">
    <xs:complexType>
        <xs:sequence>
            <xs:element name="student" maxOccurs="unbounded" minOccurs="0">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element type="xs:string" name="name"/>
                        <xs:element type="xs:int" name="id"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
    <xs:unique name="theID">
        <xs:selector xpath="student/id"/>
        <xs:field xpath="."/>
    </xs:unique>
</xs:element>

这确保了student元素的所有id的值都是唯一的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67325443

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档