ホーム HTML CSS XML JAVASCRIPT   PHP SQL MORE...   リファレンス 事例集    

XSD テキストだけの要素

« 前章へ 次章へ »

複合型テキストだけの要素は、テキストと属性を含むことができます。


複合型テキストだけの要素

この型は、簡単な内容(テキストと属性)だけを含んでいますので、内容の周りに simpleContent 要素を追加します。 簡単な内容を使用する時には、次のように、simpleContent 要素内で拡張または制約を定義しなければなりません:

<xs:element name="somename">
  <xs:complexType>
    <xs:simpleContent>
      <xs:extension base="basetype">
        ....
        ....
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
</xs:element>

OR

<xs:element name="somename">
  <xs:complexType>
    <xs:simpleContent>
      <xs:restriction base="basetype">
        ....
        ....
      </xs:restriction>
    </xs:simpleContent>
  </xs:complexType>
</xs:element>

チップ: 要素の基本単純型を拡張、または制限するために、拡張(extension)/制約(restriction)要素を使用します。

次は、テキストのみを含むXML要素、"shoesize" の例です:

<shoesize country="france">35</shoesize>

次の例は、複合型 "shoesize" を宣言しています。内容は整数値として定義され、また "shoesize" 要素は、"country" という名前の属性も含んでいます:

<xs:element name="shoesize">
  <xs:complexType>
    <xs:simpleContent>
      <xs:extension base="xs:integer">
        <xs:attribute name="country" type="xs:string" />
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
</xs:element>

complexType 要素に名前を付けて、"shoesize" 要素に complexType の名前を 参照する type 属性を持たせることもできます (この方法を使用する場合、いくつかの要素が同じ複合型を参照できるようになります):

<xs:element name="shoesize" type="shoetype"/>

<xs:complexType name="shoetype">
  <xs:simpleContent>
    <xs:extension base="xs:integer">
      <xs:attribute name="country" type="xs:string" />
    </xs:extension>
  </xs:simpleContent>
</xs:complexType>

« 前章へ 次章へ »