XHTML モバイル・プロファイル 1.0の文書型宣言 (平成19年 7月 7日)
旧型機での閲覧性について (平成19年 1月 2日 更新)
KDDIの現行機やソフトバンクの現行機はWAP 2.0と呼ばれる規格を採用しております。
WAP 2.0規格において、コンテンツ記述言語として推奨されているのがXHTML ベーシックとXHTML モバイル・プロファイル 1.0です。
XHTML ベーシックはW3CがXHTMLの本当に最低限必要な要素だけを集めて作った規格です。
しかし、XHTML ベーシックは本当に最小限の規格の為、それだけでは不満足な部分がありました。そこで携帯電話のウェブ規格を策定するWAP フォーラム(携帯電話向けのインターネット技術を策定するOMAの下位組織)が、XHTML ベーシックに少し要素や属性を加えた規格・XHTML モバイル・プロファイル 1.0を策定したのです。
勿論、PC同様XHTML 1.0 ストリクトでも全く問題はありません。しかし、XHTML 1.0 ストリクトで実装されていても携帯電話では実装されていない要素も少なくありません。その意味でXHTML モバイル・プロファイル 1.0は次世代携帯電話には"ジャストサイズ"の仕様と言えます。
尚、現在ではXHTML モバイル・プロファイルには1.0と1.1の二つのヴァージョンがあり、1.2も事前勧告となっておりますが、日本国内での利用を考えるのであれば 1.0 を使うのが良いでしょう。
この文書でも、XHTML モバイル・プロファイルと書いた場合、それは XHTML モバイル・プロファイル 1.0 を表すものとします。
XHTML モバイル・プロファイル 1.0は上述の通りWAP フォーラムが策定しておりますが、EZウェブ端末などにウェブブラウザを供給しているオープンウェーヴ社も独自にXHTML モバイル・プロファイル 1.0を導入しております。
オープンウェーヴ社の仕様はWAP フォーラムの定めた仕様に独自に属性を加えたものです。
通常はWAP フォーラムの仕様に従うべきですが、EZウェブ独自の仕様の一つといえる絵文字を記述する場合などにはオープンウェーヴ社の仕様に従う事となります。
XHTML モバイル・プロファイル 1.0では、以下の要素が利用出来ます。
XHTML モバイル・プロファイル 1.0は、XHTML ベーシックを拡張したものなので、以下のXHTML ベーシックで定められている要素は全て利用出来ます。
XHTML モバイル・プロファイル 1.0には、以下の要素・属性が追加されております。
尚、以上はWAPフォーラムが策定したXHTML モバイル・プロファイル 1.0の仕様に於けるもので、オープンウェーヴ社が導入しているXHTML モバイル・プロファイルでは更に幾つかの属性が追加されております。
逆に、XHTML 1.0などと較べると、主に以下の要素が省略されております。
実際に省略されているのは、携帯電話向けコンテンツでは殆ど使わないものばかりと言えます。
また、XHTML 1.0 トランジッショナルと較べた場合は、上記の要素に加えてCSSの代りに用いる物理要素・属性の全てが排除されております。
また、<a>要素からはname属性が削除され、このため旧型機にはid属性に依る終点アンカーを認識しない端末もあります。(平成19年 1月 2日)
XHTML モバイル・プロファイル 1.0の文書型宣言には、
の二つがあります。
通常は前者の公式な文書型宣言を使うべきですが、EZウェブ向けに絵文字を記述したい場合は前者では文法違反になるため、後者のオープンウェーヴ社独自の文書型宣言を用いなければなりません。
WAP フォーラムが定めたXHTML モバイル・プロファイル 1.0の文書型宣言は以下のようになります。
<?xml version="1.0" encoding="shift_jis"?><!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja"><head>(文書のヘッダ)<title>文書の題名</title></head><body>(文書の本体)</body></html>
一方、オープンウェーヴ社が定めたXHTML モバイル・プロファイルの文書型宣言は以下の様になります。
<?xml version="1.0" encoding="shift_jis"?><!DOCTYPE html PUBLIC "-//OPENWAVE//DTD XHTML Mobile 1.0//EN" "http://www.openwave.com/dtd/xhtml-mobile10.dtd">
現状からすれば、KDDI/沖縄セルラーとソフトバンクでは、全く問題はありません。
XHTML モバイル・プロファイル 1.0は、XHTML 1.0に完全に含まれます。従って、XHTML モバイル・プロファイル 1.0で書かれたコンテンツは、PCでも問題無く閲覧できます。
旧型機に関しては、以下の二点に注意して下さい。
旧型の旧型機では、id属性を認識せず、このため終点アンカーを実現するには<a>要素にname属性を与えなければなりません。
しかしながら、XHTML モバイル・プロファイル 1.0では<a>要素のname属性を定義しておりません。
このため、XHTML モバイル・プロファイル 1.0に完全に従った場合、ページ内の終点アンカーはid属性を用いなければならず、その結果旧型機では終点アンカーにフォーカスが移動しない恐れもあります。
ただ、現行のiモード端末やソフトバンクのパケット旧型機にはXHTML対応ブラウザが採用されているので、id属性だけでも終点アンカーとして機能させる事は可能である筈です。
これらの問題を解決するため、XHTML 1.0を利用せざるを得ないかも知れません。
勿論、ページ内の終点アンカーを利用せずにコンテンツを作ると言う選択肢もあります。
XHTML モバイル・プロファイル 1.0では物理要素・属性は一部を除いて使えない事になっております。
従って、XHTML モバイル・プロファイル 1.0を用いた場合は、旧型機ではプレーンな表示となりますが、文書情報は問題無く伝わります。