iモードブラウザ2.0の登場でCHTMLとXHTMLが統合

5/22(金)にdocomoから2009年夏モデル端末が発売された。夏モデルからiモードブラウザが大幅に機能UPするとの噂があったんで、うちの会社でも発売日に即日購入!

使ってみると、想像以上のブラウザスペック・・・。この端末、只者ではないようだ。

N-06A

PCブラウザとほとんど同じ!

新機種で導入された機能は次の通り。

  • Cookie
  • Referer
  • JavaScript
  • フレーム
  • 外部CSS
  • WMV/Flashビデオ再生
  • キャッシュ上限500KB

ここまで来たら、ホントにPCブラウザと変わらない!iモードブラウザがPCブラウザに置き換わったような、まさにそんな感じ。XMLHttpRequestも使えるから、Ajaxも夢じゃない。

キャッシュ上限が若干厳しいように見えるけど、Yahoo!のTOPページの容量が350KB程度であることを考えると、通常のPCサイト閲覧なら問題なさそう。

そして何と言ってもありがたいのがCookieとReferer!docomoはいつから使えるようになるんだろう??と不安になってたけど、遂に対応してくれた。アクセス解析にSEOに・・・と活躍の場は無限。大歓迎する開発者も多いのでは?

タグや属性の変更点

新端末では機能UPに伴って、いろんなタグや属性が追加されている。iモードXHTML2.3からの変更点は、以下の通り。

カテゴリ タグもしくは属性
JavaScript ・scriptタグ
・noscriptタグ
・onclick属性
・onload属性
・onunload属性
フレーム ・baseタグのtarget属性
・aタグのtarget属性
・framesetタグ
・frameタグ
・iframeタグ
CSS ・linkタグ
フォーム ・buttonタグ
その他 ・hrタグのnoshade属性
・olタグのstart、type属性
・aタグのib属性(iモードブラウザで開くURLの指定)
・embedタグ(WindowsMediaファイルの埋め込み)

新しく追加されたタグや属性は、PCサイト向けのHTMLでもよく見かけるタグや属性がほとんど。

あとは、どのタグでもstyle属性が使用できるようになった(これまではpとかspanとか、一部のタグでのみ、style属性が使用可能だった)。

CHTMLとiモードXHTMLの関係に変化あり

iモードブラウザ2.0から変化したことがもう一つあった。それは、マークアップ言語の垣根がなくなったということ。

これまでのdocomoは、マークアップ言語が「CHTML」と「iモードXHTML」の2種類あって、使用可能なタグ・属性やContent-Typeヘッダが明確に区別されていた。たとえば、次のような感じだ。

  • CHTMLではfontタグが使えるが、XHTMLではfontタグが使えない。
  • XHTMLではstyle属性が使えるが、CHTMLではstyle属性が使えない。
  • CHTMLのContent-Typeヘッダは、「text/html」でなければならない。
  • XHTMLのContent-Typeヘッダは、「application/xhtml+xml」でなければならない。

言語仕様だから仕方ないとは思っていたけど、普段よく使うタグや属性に互換性がなかったから、実際、ものすごい不便だった!

そう思っていたら、今回のバージョンアップでは、遂にマークアップ言語の垣根が完全に取り払われた。先ほどの制約は次のように変わった。

  • HTMLでもXHTMLでもfontタグが使える。
  • HTMLでもXHTMLでもstyle属性が使える。
  • HTMLのContent-Typeヘッダは、「text/html」「application/xhtml+xml」のどちらでもよい
  • XHTMLのContent-Typeヘッダは、「text/html」「application/xhtml+xml」のどちらでもよい

HTML形式でもXHTML形式でも同じタグ・属性が使用できるようになって、利便性が劇的にUP!これまではどちらかと言えば厳格な仕様だったが、幅広い書式をサポートする柔軟な仕様に改良されたのだ。

絵文字には要注意!

一方、iモード絵文字の書式の1つである「Shift_JIS10進テキスト形式」は、廃止される運命に・・・。

「Shift_JIS10進テキスト形式」は、「」のような書式で、iモード絵文字をShift_JISで表現したときのビットパターンを10進数で表したもの。 が、HTML4.0の仕様によると「&#」の後にはUnicodeのコード値を10進数で表したものを記述することになっていて、国際標準と仕様に食い違いがあった。今回のバージョンアップで、国際標準に合わせるため、一旦廃止したようだ。

5年位前からずっと「非推奨」って書いてあったけど、影響を受けるサイトが多いのかも。

ちなみに、「」のような「Unicode16進テキスト形式」は、HTML4.0の仕様に合致しているから継続して使用可能。

最後に

docomoがマークアップ言語の垣根を取り払い、国際標準に合わせることにしたのは、今後の機能拡張に備えているためなのかもしれない。「CHTML」と「iモードXHTML」とを両立しながら仕様をバージョンアップし続けることは、既に限界に達しつつあったのだろう。このタイミングで言語仕様をスッキリ整理して、過去のしがらみを断ち切ったのは正解かも。

今後追加されていく機能も、HTMLとXHTMLの両方で使用可能になりそうだ。

(参考サイト)

Page Top