設定できる値を指定する
XML文書の整合性を維持するために、要素や属性の内容をあらかじめ定義したいくつかの値だけに制限することができます。
1. カスタム宣言内に(「カスタム単純型を作成する」4.の方法で)<xsd:enumeration と入力します。
2. value="choice"と入力します。
choiceの部分には、要素または属性の内容として設定できる1つの値を入力します。
4. 新しいカスタム型を定義するのに必要な制限(ファセット)を指定します。
4. />と入力して、xsd:enumeration要素を終えます。
5. その要素または属性に設定できる値ごとに1〜3を繰り返します。
XSDコード <xsd:element name="continent" />
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="北区" / >
<xsd:enumeration value="中央区" / >
<xsd:enumeration value="城南区" / >
<xsd:enumeration value="城東区" / >
<xsd:enumeration value="西区" / >
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
cintinent要素には、これらのうち1つの値を設定できます。
XMLコード <cintinent> 中央区 </cintinent>このcintinent要素は、スキーマに対して有効です。
XMLコード <cintinent> 北区 西区</cintinent>
XMLコード <cintinent> 東区 </cintinent>これらの要素はどちらも無効です。上の例では値は1つしか設定できないにも関わらず、値を2つ設定しています。下の要素では、設定d家いる値の一部しか指定していません。(この要素の値のリストには「東区」は用意されておりません)
・xsd:enumerationファセットは、boolian型を除くすべての単純型で使用できます。
・設定できるそれぞれの値は一意でなければなりません。
・設定できる値にはホワイトスペースを含めることができます。