XHTML Media Typesの第二版が公開
XHTML文書とメディア型に関する覚書として、“XHTML Media Types”というノートがあります。このノートが改訂され、“XHTML Media Types - Second Edition”として公開されました。
先ほど日本語訳も公開しましたので、ご覧いただければと思います。
XHTMLのメディア型と拡張性のジレンマ
XHTML Media Typesの第一版は、各メディアタイプの説明と、どの文書型にどのメディア型が利用できるかをまとめた簡単な文書でした。
文書型との関連を示す表によれば、現在XHTML, HTMLを問わず広く使われているtext/html
というメディア型は、HTML 4.01と、HTML互換のXHTML 1.0のみで利用可能とされており、XML志向の強いXHTML 1.1や、それ以降のXHTMLでは非推奨とされていました。
application/xhtml+xml
はXHTMLのために設けられたメディア型ですが、Internet Explorerをはじめとする一部のユーザーエージェントにおいてサポートされていません。このことがXHTML 1.1の普及を妨げる原因となっています。
しかし、XHTML 1.1以降のXHTMLはモジュール化(modularization)というフレームワークの上に成り立ち、拡張性を備えています。新しい要素や属性はモジュールとして提供されるため、これらを利用するためには、現実的にみて使いにくいapplication/xhtml+xml
で文書を提供しなければならないというジレンマがあったのです。
この問題は、ノートが公開された7年後の今日現在においても解決されていません。しかし、role
属性やWAI-ARIA、RDFaといった新しい規格が生まれてきている今、メディア型の制限で拡張性を犠牲にすることが正しいのかという疑問が投げかけられています。このような背景があり、XHTML Media Types 第二版では大幅な改訂が行われました。
覚書から、メディア型を問わず処理できるガイドラインへ
第二版は、第一版のメディア型についての説明と推奨事項は引き継ぎながらも、「どちらのメディア型で処理されても問題ないようなXHTML文書」を作成するための「互換性ガイドライン」を新たに設けました。
このガイドラインは、もともとXHTML 1.0の仕様書にあったものです(近々公開されるXHTML 1.0 Third Editionではガイドラインが削除されます)。HTML UAとの互換性をとるためのガイドラインでしたが、これを移管し、メディア型非依存の文書とするための項目を追加した上で、新しいガイドラインとして整備されました。
このガイドラインに従うことにより、XHTML 1.1文書やXHTML+RDFa文書を、メディア型を問わず公開することができるようになっています。
改めて問われる「XHTMLであること」の意義
XHTML 1.1やRDFaが(条件を満たせば)text/html
でも利用できるようになったことは意義のあることです。しかし、XHTML文書をtext/html
で公開することには、さまざまなリスクが伴います。
一番の問題は、XMLとして処理されることがないため、整形式のエラーが分からないことでしょう。XHTMLを使う理由として「XMLによる将来的な拡張性」や「XSLTによる処理」などがあげられますが、整形式ではない文書では、それらの利点を活かすことができません。
そして、こういったDOCTYPEがXHTMLのものでありながら、XMLとして処理できない「XHTMLくずれ」の文書が、今日のWebには蔓延しています。
これを憂慮してか、第二版では「XMLの機能や拡張機能が必要ない場合は、HTML 4.01の採用も検討すること」という文が新たに設けられました。HTML 4.01であれば整形式のエラーも程度はあるものの許容されますし、語彙については内容的にXHTML 1.0と変わりありません。
あくまで感覚的なものですが、「Web標準ならばXHTML+CSS」といった流れがあるように感じています。しかし、HTML4もWeb標準であることには変わりません。
たとえば、「CMSがinvalidなソースを出力する」や「運用担当者の技術が未熟で、整形式にならない」といったことが予想される場合は、XHTMLの利用が適切であるのかを考えるべきでしょう。状況によって適切な文書型を選択することの方がより「Web標準的」な考え方ではないでしょうか。
新しいXHTML Media Typesは、XHTMLの採用についても考えることを促す文書なのです。