HTML 5 + XML = XHTML 5
(スペイン語でもご覧いただけます。 Traducción de “HTML 5 + XML = XHTML 5″)
私は xhtml 構文が好きだ。これが私が学んできた方法だ私はコードを小文字にして、属性には引用符をつけ、br や img のような要素には終端スラッシュを入れてきた。私にとっては、このほうが気分がいいし心地よい。一杯のオヴァルティンや、テレビで見た 死霊のはらわた みたいに。
でも、あなたはそうではないかもしれない。うざったい大文字のタグを使ったり、終端スラッシュを入れなかったり、属性を短縮するほうが好きかもしれない。
“pave the cowpaths” という原則のおかげで、それは、あなた次第なのだ。何をしようが、何をしたかろうが、何が好きであろうが、あなたの好きにすればいい。
しかし、誰も HTML5 が XML を殺すとはいえない。— XHTML5 があるからだ。
XHTML5 は、HTML5 の XML シリアライゼーションだ。ご想像のとおり、期待通りに厳格なパース規則になる(私のように、あなたが XHTML DOCTYPE とともに成長してきたなら、よく知っているはずだ)。これは、XML MIME タイプで出力することが必須となる。 application/xml や application/xhtml+xml だ(今のところ、Internet Explorer ではレンダリングされない)。そして、整形式としての問題がちょっとでもあれば、いきなり怒り出すだろう。(詳細については、「XHTML に正しい MIME タイプを使う」を見てほしい)
おなじみの XML 規則が適用される: document.write は使えない、DOCTYPE はない、構文とスクリプトの違い、そして、あなたは名前空間を使うことができる。
主な違いは、WHATWG の公式 wiki の Differences Between HTML and XHTML で説明されている。HTML5 では、HTML と XHTML を混合したドキュメントも書けるのだ。それは、ブラウザーによって、使われた MIME タイプに応じて、処理されることができるというものだ。
Magne が Doctor にこんな質問のメールを送ってきた:“XHTML 1.1 doctype のページで HTML5 のタグを使うのは OK ですか?どっちのタグを使うべきですか?今のお勧めはどちらですか?
もし新機能を使いたいなら、HTML5 の DOCTYPE か、XHTML5 を使う必要がある。Internet Explorer は XML を処理できないので、現実的な理由から、Doctor は HTML5 をお勧めする。