8

次のような XML スキーマを作成する必要があります。

<xs:element name="wrapperElement">
<xs:complexType>
    <xs:sequence>
        <xs:element type="el1">
        <xs:element type="el2">
    </xs:sequence>

    <xs:WhatGoesHere?>
        <xs:element type="el3"> 
        <xs:element type="el4">
        <xs:element type="el5">
    </xs:WhatGoesHere?>

    <xs:sequence>
        <xs:element type="el6">
        <xs:element type="el7">
    </xs:sequence>
</xs:complexType>
</xs:element>

私が必要としているのは、任意の数の el3、el4、および el5 を任意の順序で表示できるように、"WhatGoesHere" を置き換えることです。たとえば、{el3, el3, el5, el3} を含めることができます

これを解決する方法について何か考えはありますか?

4

1 に答える 1

13

xs:choiceオカレンス制約を使用したい場合:

<xs:element name="wrapperElement">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="e11"/>
      <xs:element name="el2"/>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element name="el3"/>
        <xs:element name="el4"/>
        <xs:element name="el5"/>
      </xs:choice>
      <xs:element name="el6"/>
      <xs:element name="el7"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>
于 2008-08-28T08:40:19.400 に答える