匿名複雑型の要素を宣言する
1回しか使わない複雑型の場合は、要素宣言内で匿名複雑型を作成すると便利です。
1. <xsd:element と入力して要素宣言を開始します。
2. type="label"> と入力します。
label の部分には、宣言する要素の名前を入力します。XML文書では<label>というっようになります。
3. <xsd:complexType> と入力して匿名複雑型定義を開始します。
4. シーケンス、選択肢セット、順序なしグループ、名前付きグループ定義、名前付きグループへの参照を宣言し、この複雑型に含めることのできる要素を指定します。
5. この型の要素に含める属性または属性グループがある場合は、それを宣言します。
6. </xsd:complexType> と入力して、匿名複雑型定義を終えます。
7. </xsd:element> と入力して、複雑型要素の宣言を終えます。
XSDコード <xsd:element name="characteristics" minOccurs="1" >
<xsd:complexType>
<xsd:sequence>
<xsd:element name="weight" type="string" />
<xsd:element name="length" type="xsd:string" / >
</xsd:sequence>
<xsd:attribute name="kind" type="xsd:string" / >
</xsd:complexType>
</xsd:complexType>この例ではcharacteristics型を匿名方として再定義しています。この複雑型定義はそれを含むcharacteristics要素内でしか使用できません。
XMLコード <characteristics kind="physical" >
<weight>4500g</weight>
<length>90cm</length>
</characteristics>
これはスキーマに対して有効なXML文書です。名前付きと匿名のどちらの複雑型を使用してもXML文書は変わりません。
・名前付き複雑型はさまざまな要素を宣言するために何回でも使用でき、新しい複雑型を作成する際の基盤として使うこともできますが、匿名複雑型はそれを記述した要素を定義するためにしか使用できません。