16進文字参照 := hero
1*hexdigit 参照終了 ;; WebSGML [62.3]
hexdigit := DIGIT / "A" / "B" / "C" / "D" / "E" / "F" ;; K.4.1 具象構文にかかわらず大文字・小文字を区別しない。
1*hexdigit
は NAMELEN
以下でなければなりません。 (K.4.1 参照)[11] >>4 当時の Webブラウザの対応状況、 mimasa 氏が十六進数文字参照を利用可能になるように ISO-HTML の中の人に頼んだ話題などがあります。
[5] RFC 5137 (BCP 137) は Unicode 文字の escape のための構文として勧められるものを2つ挙げていますが、そのうちの1つが HTML・XML 式の十六進数文字参照です。
構文は次のように定義されています。
EmbeddedUnicodeChar = %x26.23.78 2*6HEXDIG %x3B ; starts with "&#x" and ends with ";"
XML の書式といっていますが、2桁以上6桁未満という制約がついています。 HTML とは違ってセミコロンが必要だとも書かれているのですが (なぜか SHOULD)、 「x」が小文字でなければならない点も違いです。
[6] Editorial: hexademical ➡️ hexadecimal (Yay295著, ) https://github.com/whatwg/html/commit/ede3f6161e574b2ea71b090f512d796f0e893a3a
[7] "Hexademical character reference start state" · Issue #4006 · whatwg/html () https://github.com/whatwg/html/issues/4006
[8] fix #4006 by Yay295 · Pull Request #4012 · whatwg/html () https://github.com/whatwg/html/pull/4012