属性を定義する(一意の値を持つ属性)
特殊な属性もいくつかあります。ID属性は、XML文書全体でほかと重複しない値を持つ(つまい、ほかのID属性と同じ値を使用できない)青くせいとして定義されています。ID属性は、キーなどの識別情報(製品コード、患者番号など)に適しています。
1. <!ATTLIST tag と入力します。
tagの部分には、属性を指定するようその名前を入力します。
2. attribute と入力します。
attributeの部分には、そのタグに追加する情報を識別するための名前を入力します。
3. 一意の値、つまりXML文書内で重複していない値を定義したい場合は、ID と入力します。
ほか要素の属性には、この属性と同じ値を指定することができません。
4. "default" と入力します。
これは、その要素内でこの単位を好きな数だけ指定でkることを示します。全く指定しないこともできます。
または、#FIXED "default" と入力します。
defaultの部分に規定値を入力します。この属性には必ずこの値を設定することを示します。
または、#REQUIRED と入力します 。
これはmその属性には何らかの値を指定しなければならないことを示します。
または、#IMPLIED と入力します。
これは、属性に規定値がなく、省略することもできることを示します。
5. 要素に含める核属性ごとに 2.~4.を繰り返します。
6. > と入力して属性の宣言を終えます。
・2つの要素のID型属性の値が同じであるXML文書はDTDに対して有効とは見なされません。
・ID属性の値は、有効なXMLと同じ規則に従って指定します。つまり、文字又はアンダースコアで始まり、その後に文字、数字、アンダースコア、ピリオド、ハイフンを使用します。(従って、ID属性には社会保険番号や電話番号のような数字だけのテキストを指定することはできません。前に文字かアンダースコアをつけなければなりません)
・属性型としてIDを使うのは、一意でなければならないNMTOKENを使うのと似ています。