属性を宣言する
属性はほかの要素も属しえも含まないので常に単純型ですが、複雑型要素内に指定します。ここでは属性の作成方法を説明します。
1. 複雑型の定義内に <xsd:attribute と入力します。
2. name="label" と入力します。
label の部分には、XML文書で属性を設定する際に使う名前を入力します。
3. type="simple" と入力します。
simple の部分には、属性が所属する単純型を入力します。(単純型の詳細については「単純型の要素を宣言する」を参照してください)
または ref="label" と入力します。
label の部分には、既にグローバルに宣言してある属性定義の名前を入力します。4. > と入力して、開始タグを終えます。
5. 必要であれば、ファセット(制限)を入力します。
6. </xsd:attribute> と入力します。
XSDコード <xsd:element name="source">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="xsd:anyType" />
<xsd:attribute name="sectionid" type="xsd:string" / >
<xsd:attribute name="topicid" type="xsd:string" / >
</xsd:extension>
</xsd:complexContent >
</xsd:complexType>
</xsd:element>属性宣言は、見た目は単純型要素の宣言と同じです。
XMLコード <source sectionid="010100" topicid="21" / >
属性は、必ず要素の開始タグ内に指定します。
・ファセットがない場合は、4〜6を省略し、変わりに /> と入力します。
・属性だけのための標準単純型もいくつかあります、。これらはすべて http://www.w3.org/TR/xmlschema-2 で確認できます。
・匿名単純型の属性を定義することもできます。
・属性は、所属する複雑型の最後に宣言しなければなりません。つまり、複雑型のすべてのコンポーネントを宣言した後に宣言します。