| 目的 |
子の要素("choice"パーティクル)は、要素の複合型定義において選択を表します。 要素を含んでいるインスタンスに出現することが許されるのはそのスコープに含まれるパーティクルのうちの1つだけです。1つのパーティクルがリストから選択できる回数は、 |
| 親要素 | xs:choice, xs:complexType, xs:extension, xs:group, xs:sequence |
| 子要素 | xs:any, xs:choice, xs:element, xs:group, xs:sequence |
| 属性 | minOccurs, maxOccurs |
| 名前 | 型 | 説明 |
|---|---|---|
minOccurs |
xs:nonNegativeInteger |
この属性は、下に説明されているmaxOccurs属性と共に、TSD4(およびXML Schema)の記述において、要素定義に含まれる選択要素内の出現回数を表します。xs:choice宣言内のminOccurs属性の値はxs:choiceの出現最小回数を決定します。minOccurs属性の値は、正の整数でなければなりません。minOccursのデフォルト値は、1です。 |
maxOccurs |
xs:nonNegativeIntegerまたは"unbounded" |
この属性は、上に説明されているminOccurs属性と共に、TSD4(およびXML Schema)の記述において、要素定義に含まれる選択要素内の出現回数を表します。xs:choice宣言内のmaxOccurs属性の値は、xs:choiceの出現最大回数を決定します。maxOccurs属性の値は、正の整数または"unbounded"でなければなりません。maxOccursのデフォルト値は、1です。 |
上の例は、customer要素またはsupplier要素またはemployee要素のどれか1つを含む必要があるpartnerという要素を定義しています。
<xs:element name="partner">
<xs:complexType>
<xs:choice>
<xs:element name="customer" type="t_customer"/>
<xs:element name="supplier" type="t_supplier"/>
<xs:element name="employee" type="t_employee"/>
</xs:choice>
</xs:complexType>
</xs:element>
上の例は、customer要素またはsupplier要素またはemployee要素のどれか1つを含む可能性があるpartnerという要素を定義しています。
<xs:element name="partner">
<xs:complexType>
<xs:choice minOccurs="0">
<xs:element name="customer" type="t_customer"/>
<xs:element name="supplier" type="t_supplier"/>
<xs:element name="employee" type="t_employee"/>
</xs:choice>
</xs:complexType>
</xs:element>