1

怎么可能使用选择并在组中设置你必须选择最少 2 个元素,但不能选择相同元素的两倍????

示例代码:

 xs:group name="Ports">
  <xs:sequence>
    <xs:choice minOccurs="2" maxOccurs="2">
    <xs:element name="Port1" minOccurs="0" maxOccurs="1">
            <xs:complexType>
            <xs:sequence>
                <xs:group ref="PortArguments"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element> 

    <xs:element name="Port2">
            <xs:complexType>
            <xs:sequence>
                <xs:group ref="PortArguments"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element> 
    </xs:choice>

另一个问题:是否可以限制组中元素的访问?例如:我要到其他组。组 1 应该只选择端口组的元素 1-3。第 2 组应该只选择元素 1-10 !!我怎么能意识到这一点?

4

1 回答 1

1

在 XSD 1.0 中,对于一般情况,没有您想要的解决方案。您将不得不应用 Schematron 约束或迁移到 XSD 1.1。

于 2013-04-19T16:58:58.447 回答