【问题标题】:Schema Element definition with sub-elements in ANY order具有任意顺序的子元素的架构元素定义
【发布时间】:2009-04-15 00:10:53
【问题描述】:

我正在尝试在架构中创建一个元素,其中它的子类型可以按任何顺序出现,并且可以根据需要多次出现:

    <xs:element name="workflowNodes">
    <xs:complexType>
        <xs:sequence minOccurs="0" maxPO>
            <xs:element ref="nodeType1" />
            <xs:element ref="nodeType2" />
            <xs:element ref="nodeType3" />
            <xs:element ref="nodeType4" />
        </xs:sequence>
    </xs:complexType>
</xs:element>

其中节点 nodeType(n) 可以按任何顺序排列,并且可以根据需要重复。

另外,我试过:

但是当没有nodeType1 时,编译器无法正常工作,抱怨nodeType2 无效。

我在这里缺少什么?

提前致谢。

【问题讨论】:

    标签: schema xsd


    【解决方案1】:

    您应该能够通过这样做获得结果:

    <xs:element name="workflowNodes">
            <xs:complexType>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="nodeType1" />
                            <xs:element ref="nodeType2" />
                            <xs:element ref="nodeType3" />
                            <xs:element ref="nodeType4" />
                    </xs:choice>
            </xs:complexType>
    </xs:element>
    

    让您可以选择其中一个元素,并且让 xs:choice 出现多次可以让您随意选择每个元素。

    马克

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-17
      • 1970-01-01
      • 2020-01-10
      • 1970-01-01
      相关资源
      最近更新 更多