スキーマにカスタムデータ型があるとします。
<xs:element name="Fruit">
<xs:complexType>
<xs:sequence>
<xs:element ref="Name"/>
<xs:element ref="Supplier"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Name" type="xs:NCName"/>
<xs:element name="Supplier" type="xs:string"/>
スキーマの他の場所でFruitの特定のインスタンスを要求したいので、次のXMLファイルのようなものがあります。
<fruits>
<common>
<!-- the common section should always include Fruits with these Names -->
<Fruit>
<Name>apple</Name>
<Supplier>Shady Orchard</Supplier>
</Fruit>
<Fruit>
<Name>orange</Name>
<Supplier>Florida Orange Co.</Supplier>
</Fruit>
<Fruit>
<Name>banana</Name>
<Supplier>Bananaland</Supplier>
</Fruit>
</common>
<exotic>
<Fruit>
<Name>kiwano</Name>
<Supplier>Fancy Fruits</Supplier>
</Fruit>
<Fruit>
<Name>rambutan</Name>
<Supplier>Indonesia Fruit Co.</Supplier>
</Fruit>
<!-- the list goes on... -->
</exotic>
</fruits>
私は自分のファイルで次のようにエキゾチックなセクションを定義できることを知っています:
<xs:element name="exotic">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="Fruit"/>
</xs:sequence>
</xs:complexType>
</xs:element>
しかし、リンゴ、オレンジ、バナナという名前のsが常に必要になるように、共通のセクションをどのように定義すればよいでしょうか。Fruit