繁体   English   中英

xml模式-具有一个元素的替换组最多出现一次

[英]xml schema - substitutiongroup with one element appear no more than once

我正在尝试创建不同类型的元素的列表,但我需要限制一种类型的出现不超过一次。 这是示例:

<links>
    <linktype1 id="1" />
    <linktype3 id="2" />
    <linktype2 id="3" />
    <linktypespecific id="4" />
    <linktype3 id="5" />
</links>

我想以任意顺序允许任意数量的linktype1,linktype2,linktype3,但是linktypespecific可以出现在链接中的任何位置,但不能超过一次。

目前,我使用替换组实现了所有类型,但不允许限制特定于链接类型的外观的数量。

是否可以使用XML Schema完全实现?

我认为XSD 1.0中不可能。

您可以在XSD 1.1中使用xs:any内容模型来做到这一点,该模型列出了允许的元素,并带有maxOccurs子句来定义每个元素出现的频率。

您不能使用替换组执行此操作-如果元素在替换组中,则它可以与替换组头完全互换。 但是(在XSD 1.1中)您可以使用替换组加一个断言来约束基数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM