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>
ヒント:拡張/制限要素を使用して、要素の基本単純型を拡張または制限します。
次に、テキストのみを含むXML要素「shoesize」の例を示します。
<shoesize country="france">35</shoesize>
次の例では、complexType、 "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>