「HTML XHTML 違い」でGoogle検索したら、何故か4年前の自分の記事(HTMLのDTDとXHTMLのDTDの違い (agenda))が引っかかってなんだ? と思ったら、HTML4.01とXHTML1.0 Transitionalの違いが書いてあった。
address要素がp要素を子に持てるとか。わらい。
<!ELEMENT address (#PCDATA | %inline; | %misc.inline; | p)*>
引っかかった他の「解説」記事に比べて、何とも浮世離れしているな。
XHTMLへのHTML - WordPress*リファレンスは自動翻訳だよな。
HTMLには互換性という明らかなメリットがある。
HTML4.01を今更プッシュしてどうすると思われる人もあるだろうが、XHTMLを応用できる人がHTML4.01をプッシュされてはいそうですかこれからはやっぱりHTML4.01ですねと納得するわけがないし、そもそも文書インスタンス制作者がXHTMLを知る必要などないよ。逆に訳もわからず無闇にXHTMLをプッシュなどすると手書きされた糞XMLが蔓延する結果になるだけ。
「平成二十年八月九日」の闇黒日記にそもそも「正しいHTML」で書くメリット自體がよくわからないんだよな。
と書いてあって、改めて糞真面目に考えてみた。とりあえず「正しいHTML」を「スキーマに対して妥当でかつ仕様書に沿って要素を的確にマークアップしているHTML文書」と定義したとする。このとき「スキーマに対して妥当ではない、かつ/あるいは要素を詐称してマークアップしているHTML文書」が「正しくないHTML」だ。
閲覧者としてみると、自宅では良いけど出先でハンドヘルドPCのブラウザがきちんと表示してくれないかも知れないとか、きちんと読み上げてもらえないかもしれない等々「正しくないHTML」には不安が付きまとう。「正しくないHTML」にはデメリットがありすぎるというか予測不可能だ。基本的には自分の所有する製品(ソフトウェア)の責任にすることができない。
ただ、そういったデメリットが発生しないよううまくごまかして「正しくないHTML」を書くのはアリだろうな。Googleみたいに。その場合、個人サイトでは不可能なくらいの初期コストをかけて検証する必要があるので普通の人は勘違いしないほうがいいだろう。その手間をかけられる場合、運営上正しい正しくないは関係なくなるのだが。
そういえば7月終わりごろにGoogleの検索結果のソースがほんのちょっとだけ正しくなった。確か表関係の開始タグをformタグが挟んでいたとかそういうレベルの間違い。おかげでユーザースクリプトを少し修正させられる羽目になったのだけど、公開するのを忘れていた。