記事本文
ちょっと待った
W3Cの定める文書型から選定を行う段階では、まずHTMLかXHTMLか?という点を決めなければなりません。 次に、仕様のバージョン。 最近の傾向としては、HTMLの場合は4.01、XHTMLの場合は1.0が主流です。
より古いバージョンのHTMLを使用することもできますが、4.01はHTMLの最新にして最終のバージョンであり、前方互換性の確保という観点では4.01が良いでしょう。 また1.0よりも新しいバージョン(現状では1.1)のXHTMLを使用することもできますが、その場合メディアタイプにtext/htmlを採用できない点に注意する必要があります。 つまり、現状ではHTML 4.01とXHTML1.0のいずれかを選択するのが現実的です(詳しくはXHTMLのバージョンとメディアタイプを参照)。
メディアタイプにtext/htmlを採用できない点に注意する必要があります
って書いてありますが、採用できないわけではありません。
で、引用元から辿れる XHTMLのバージョンとメディアタイプを読んでみると……。
XHTMLは1.0と1.1というバージョンが勧告済みですが、1.1ではメディアタイプに従来HTMLで使用してきたtext/htmlを使用することができません。 application/xhtml+xml、application/xml、text/xmlのいずれかを使用することになります。
ところが、ブラウザシェアのトップを誇るWindows版Internet Explorer(以下WinIE)は、これらのメディアタイプに対応していません。 一方、XHTML 1.0では、推奨こそされてはいないものの、text/htmlを指定することが可能です。 詳細は、W3C NoteのXHTML Media Typesをご覧ください。
XHTML Media Types を参考に例示しておいて何故
1.1ではメディアタイプに従来HTMLで使用してきたtext/htmlを使用することができません
という結論になるのでしょうか……。
Should not? Must not? ( 再掲 )
Another HTML-lint と text/html と XHTML 1.1 - Should not? Must not? で触れましたが、改めてここに書きます。 XHTMLのバージョンとメディアタイプにて、 XHTML 1.1 に text/html を使用できない根拠として XHTML Media Types を提示していますが、そこには次のように書かれています。
The 'text/html' media type [RFC2854] is primarily for HTML, not for XHTML. In general, this media type is NOT suitable for XHTML.
text/html[RFC2854] は元来 HTML のためのメディア型であり、XHTML のためのメディア型ではない。 一般に、このメディア型を XHTML に対して使用するのは適切でない。
適切ではないと否定されているので使用できないという解釈に至ったのかもしれませんが、
既存の HTML UA でのレンダリングを目的とする場合
であれば text/html を使用することも可能ではあります。
XHTML Media Types - 3.5. Summary の表を見れば分かりますが、 MUST NOT とされているのは HTML 4 に対して application/xhtml+xml や application/xml や text/xml を使用することだけです。
どのような表現であれば良かったのか
文書型宣言 | Web標準Blog | ミツエーリンクスでの表現を、 「また 1.0 よりも新しいバージョン ( 現状では 1.1 ) の XHTML を使用することもできますが、 XML として処理されることを期待する場合は、メディアタイプに text/html を採用できない点に注意する必要があります。」 のようにすれば、メディアタイプに text/html を採用できないとしても良かったのではないかと思います。
トラックバック送信先
- 文書型宣言 | Web標準Blog | ミツエーリンクス
-
XML として処理されることを期待する場合は、という断りを付けた上で「 XHTML 1.1 メディアタイプに text/html を採用できない」とするなら正しいのですが、一概に採用できないというのは違うと思います。
修正していただきました
また1.0よりも新しいバージョン(現状では1.1)のXHTMLを使用することもできますが、その場合メディアタイプにtext/htmlを採用すべきではない点に注意する必要があります。 XHTMLデータをXMLデータとしてではなくHTMLデータとして扱うことが一般的な現状においては、HTML 4.01とXHTML 1.0のいずれかを選択するのが現実的です
XHTMLデータをXMLデータとしてではなくHTMLデータとして扱うことが一般的な現状においては
というのは、私の提案した「 XML として処理されることを期待する」よりも上手い言い回しだと思います。
指摘を受け止めて素早い対応をしていただき、どうもありがとうございました。

