XSD テキストのみ


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


テキストのみの複合要素

この型は単純なコンテンツ(テキストと属性)のみを含むため、このコンテンツに simpleContent 要素を追加する必要があります。単純なコンテンツを使用する場合、simpleContent 要素内で拡張または制限を定義する必要があります。次のようになります:

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

または:

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

ヒント:extension または restriction 要素を使用して、要素の基本の単純型を拡張または制限してください。ここに XML 要素の例「shoesize」があります。これにはテキストのみが含まれます:

35

次の例では、コンテンツが整数値として定義された複合型を宣言し、「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」要素の 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>
その他の拡張