よはくのところ。のXHTML でない理由(Strict ののろい)にて、XHTMLに移行しない理由として(HTMLにおけるid属性問題について、今更ながらを参照しつつ)「id属性を大文字にしている」ことを理由に挙げられていたのですが、結論から言えばXHTMLでid属性を大文字で書くのは全然問題ないです。
根拠を仕様から求めるのは少々ややこしいですが……
という風にに定義を次々と辿っていくと、BaseCharの定義の辺りで途方に暮れそうになってしまいますが、要は生成規則Nameには大文字(
はAからZのこと)もちゃんと含まれているので大丈夫、ということになります。[#x0041-#x005A]
※ 実のところ、XHTMLならid属性に漢字も使えたりします(HTML4では不可)。 → サンプル
また、HTMLにおけるid属性問題について、今更ながらで取り上げていた問題というのは、かいつまんで言うと以下のようなことです。
<a id="foo">
)<a href="#FOO">
)つまり参照先がHTML4かISO-HTMLの場合に関係のある問題なので、id属性が大文字で書かれたHTMLをXHTMLに移行する分には、外からのリンクが切れることを気にする必要はないです。(追記: 小文字の場合についての考察を、id属性値が小文字のHTML4をXHTMLへ移行する場合に記しました)
HTMLにおけるid属性問題について、今更ながらで参照していたページがリンク切れになっていたため、修正しました。