XSD 混合内容を含む組み合タイプ

混合の複合タイプは属性、要素およびテキストを含むことができます。

混合内容を持つ複合タイプ

XML要素、"letter"はテキストおよび他の要素を含んでいます:

<letter>
Dear Mr.<name>John Smith</name>.
Your order <orderid>1032</orderid>
shipdate>2001-07-13</shipdate>に発送されます。
</letter>

以下のschemaはこの"letter"要素を宣言しています:

<xs:element name="letter">
  <xs:complexType mixed="true">
    <xs:sequence>
      <xs:element name="name" type="xs:string"/>
      <xs:element name="orderid" type="xs:positiveInteger"/>
      <xs:element name="shipdate" type="xs:date"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>

注記:文字データが"letter"の子要素の間に表示されるようにするためには、mixed属性が"true"に設定される必要があります。<xs:sequence>タグ(name、orderidおよびshipdate)は、定義された要素が"letter"要素内に順に表示されることを意味します。

complexType要素に対して名前を設定することができ、"letter"要素のtype属性がこのcomplexTypeの名前を参照するようにすることができます(この方法で、多くの要素が同じ複合タイプを参照することができます):

<xs:element name="letter" type="lettertype"/>
<xs:complexType name="lettertype" mixed="true">
  <xs:sequence>
    <xs:element name="name" type="xs:string"/>
    <xs:element name="orderid" type="xs:positiveInteger"/>
    <xs:element name="shipdate" type="xs:date"/>
  </xs:sequence>
</xs:complexType>