- 固定属性 (fixed attribute)
- 指定値 (もしあれば) が省略時値と同じでなければならない属性。 (JIS X 4151‐1992 3. (93) を参照。)
ここで指定値
とは、属性指定によって指定した値のことです。
[2] 例えば <!ATTLIST foo bar CDATA #FIXED "baz">
と定義すると、 foo
要素の bar
属性は、
省略しない場合には必ず baz
という値でなければならないことになります。
[3] ある一つの決まった値しか取れないとすると、 属性として存在する意義が疑わしく思われるかもしれません。 固定属性が使われる主たる用途の一つは、宣言的な属性です。
例えば、ある XML文書で、出現するすべての a
要素は XML名前空間 http://foo.example/
に属しているとします。他の名前空間も混在している場合、
何度か xmlns
属性を指定する必要がありますが、
<!ATTLIST a xmlns %URI.datatype; #FIXED "http://foo.example/">
と文書型定義の内部部分集合に書いておけば、 その手間が省けます。
固定属性はあまり使いどころは多くありませんし、 XML では妥当性を検証しない処理器があるので注意が必要ですが、 正しく使えばマーク付けの効率が上がる・・・かもしれません。