Latest web development tutorials

XMLスキーマ拡張要素

XMLスキーマリファレンス 完全なXMLスキーマリファレンス

定義と使用法

拡張のためのsimpleTypeまたはcomplexTypeの要素の拡張要素。

要素情報

  • 親エレメント:simpleContentに、complexContentを

文法

<extension
id=ID
base=QName
any attributes
>

(annotation?,((group|all|choice|sequence)?,
((attribute|attributeGroup)*,anyAttribute?)))

</extension>

(?ログインが0回または1回現れることができる拡張要素で宣言し、*記号は要素が0回以上発生する可能性があることを宣言します。)

プロパティ 説明
イド オプション。 これは、要素の一意のIDを指定します。
ベース 必須。 組み込みの名前は、データ・タイプ、のsimpleTypeまたはcomplexType要素を指定しました。
xml:langの オプション。 これは、コンテンツで使用される言語を定義します。

例1

既存のsimpleTypeを拡張するための属性を追加することによって、次の例:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:simpleType name="size">
<xs:restriction base="xs:string">
<xs:enumeration value="small" />
<xs:enumeration value="medium" />
<xs:enumeration value="large" />
</xs:restriction>
</xs:simpleType>

<xs:complexType name="jeans">
<xs:simpleContent>
<xs:extension base="size">
<xs:attribute name="sex">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="male" />
<xs:enumeration value="female" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>

</xs:schema>

例2

既存のcomplexType要素の拡張機能への三つの要素を追加することで、次の例:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:element name="employee" type="fullpersoninfo"/>

<xs:complexType name="personinfo">
<xs:sequence>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="lastname" type="xs:string"/>
</xs:sequence>
</xs:complexType>

<xs:complexType name="fullpersoninfo">
<xs:complexContent>
<xs:extension base="personinfo">
<xs:sequence>
<xs:element name="address" type="xs:string"/>
<xs:element name="city" type="xs:string"/>
<xs:element name="country" type="xs:string"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>

</xs:schema>


XMLスキーマリファレンス 完全なXMLスキーマリファレンス