[1]
>
:属性値表記 (attribute value literal):
[[参照]]の置換及び[[機能文字]]を無視する又は変換することによって[[属性値]]として解釈された区切られた[[文字列]]。
([[JIS X 4151]]‐1992 3. (145))
[2]
[Q[解釈された]]ではなく[Q[解釈される]]のような気が激しくしていますが。。。
[3]
[[SGML]] の生成規則的には、[CODE(ABNF)[属性値表記]]は[CODE(ABNF)[[[属性値]]]]の一種です。
意味的には、[[属性値]]の表現方法の一種です。
([[XML]] では唯一の属性値の表現方法です。)
生成規則[CODE(ABNF)[属性値]]は、[CODE(ABNF)[[[属性値指定]]]]の一部として、または[[属性定義]]の[[既定値]]の指定方法の一種として使われます。
([[名無しさん]])
[4]
''×''[[属性]]の[[値]]で[[二重引用符]]の中では
[CODE(char)[>]] は [CODE(XML)@en[&[[gt]];]] と[[逃避]]しなければならない
間違いです。[[属性値表記]]
([[二重引用符]]や[[アポストロフィ]]で囲まれた中)
でも [CODE(charname)@en[[[GREATER-THAN SIGN]]]] をそのまま書いて問題ありません。
正しい例:
[PRE(HTML example code)[
]PRE]
正しい例:
[PRE(HTML example code)[
]PRE]
''△''[[属性]]の[[値]]で[[二重引用符]]の中では
[CODE(char)[<]] は [CODE(SGML)@en[&[[lt]];]] と[[逃避]]しなければならない
[[XML]] ではその通りですが、 [[SGML]] では一般に問題ありません。
[[SGML]] では正しいが、 [[XML]] では正しくない例:
[PRE(HTML example code)[
]PRE]
正しい例:
[PRE(HTML example code)[
]PRE]
([[名無しさん]])
[5]
[[属性定義並び宣言]]に含まれる[[属性値表記]]中で[[一般実体参照]]を使う時は、その[[一般実体]]がその[[属性定義並び宣言]]''より前''で[[宣言]]されていなければなりません
([[実体]]が[[宣言]]されていることという[[整形式制約]]
または[[妥当性制約]]
)。
([[名無しさん]])
[6]
では、
= [[文書要素]]以下に出現しない[[要素型]]の[[属性]]の[[既定値]]
= すべての[[要素]]で[[指定]]されていて使用されない[[既定値]]
= [[属性定義]]が重複していて使用されない[[既定値]]
に含まれる[[一般実体参照]]についてはどうなるのでしょう?
[[XML]]の仕様書を読んだ限りではいずれの場合も制約の対象になりそうです。
([[名無しさん]])
[7]
[[Firefox 1.5]]と[[Opera 9]]はいずれも検出しますが、
[[WinIE 6]]は3つ目の[[誤り]]を検出しないようです。
([[名無しさん]])