HTML5ではパーサの動作も仕様に明記。ブラウザ間の互換性が高くなる!

2010年5月18日はてなブックマーク del.icio.us Twitter

HTML5対応パーサがFirefox 4に搭載されることを、先週の記事「Firefox 4.0の計画が発表。Direct2Dで高速描画、マルチタッチ、64ビット対応。来月にはβ版が登場か」で紹介しました。

HTML5パーサとは、単にHTML5として記述されたHTML文書をパースできるという意味ではなく、HTML5の仕様書にあるパーサの動作についての仕様を実装したものです。

そう、HTML5ではパーサの動作についても仕様書の「8.2 Parsing HTML documents」の項目で記述されているのです。これによってどのWebブラウザでも基本的な内部動作が揃うことが期待されています。

相互互換性のためのリバースエンジニアリングも不要に

仕様書では、詳細にわたりHTML5パーサの動作がアルゴリズムのレベルで記述されています。見出しだけをリストアップしてみました。

モジラの開発者向けWebサイトに5月14日付けで掲載された記事「Firefox 4 の HTML5 パーサ – インライン SVG、スピード、などなど」では、このHTML5仕様に対応したHTML5パーサについて解説しています。記事によると、Webブラウザベンダ各社はこれまで相互互換性を実現するために、他社のWebブラウザのリバースエンジニアリングをすることもあったそうです。それがHTML5パーサによって標準化されるとのこと。

HTML5パーサでは何がいままでと違うのか。この記事からの解説を引用します。字句化(Tokenization)はIEに、ツリー構築(Tree Construction)はWebKitの挙動に近いとのこと。メインスレッド外の処理については、おそらくFirefoxにおけるHTML5パーサの挙動についての解説でしょう。

HTML5 の構文解析アルゴリズムは字句化 (tokenization) とツリー構築 (tree building) というふたつのパートから構成されます。字句化はソースストリームをタグやテキスト、コメント、要素中の属性などに分割する処理です。ツリー構築はそれらの情報を受け取り DOM ツリーを構築する処理になります。

HTML5 構文解析アルゴリズムの字句化パートは、これまでの Gecko の挙動よりも Internet Explorer に近いものとなっています。Internet Explorer は大きなマーケットェアを持っているので、Web サイトの多くが IE のトークナイザで壊れないようにテストされていたと言えるのです。一方、ツリー構築の部分は WebKit の挙動に近いものとなっています。ですから、HTML5 以前は WebKit が最も妥当なツリー構築手法を提供していたのです。

さらに、HTML5 パーサはネットワークストリームの構文解析をメインスレッド外で行います。これまで、ブラウザはほとんどのタスクをメインスレッドで行ってきました。このメインスレッド外での構文解析という大きな変更は、古い Gecko の HTML パーサよりもメンテナンス性の高い HTML5 パーサのコードベースによって実現できました。

HTMLパーサのコモディティ化がWebの進歩につながる

HTML5の仕様書にパーサの動作まで記述されたことでWebブラウザ間での互換性が高まることが期待されています。いままでブラウザごとの挙動の違いに悩んでいたWebデザイナー、Webデベロッパーには朗報です。

それだけでなく、誰でも互換性の高いHTML5パーサの開発が可能になることで、既存のWebブラウザベンダー以外にもさまざまなところからアプリケーションが登場してくる可能性が高まります。例えばサーバでのWebページの画面キャプチャやWebページのスクレイピングなどが以前より簡単かつ確実に実現できるようになるでしょう。

Webページを読み取って解析し、情報を抽出するという部分がHTML5ではよりコモディティ化することになります。これによるWebブラウザの進化の促進、Webページを利用したアプリケーションの拡大などで、Webはまた一段の進歩を遂げるのではないでしょうか。


次の記事≫ SAP、米欧同時開催の「SAPPHIRE NOW」でサイベース買収とクラウド戦略を語る
前の記事≪ さくらインターネットもクラウド参入を表明。Amazon EC2に対抗

Loading...

Blogger in Chief

photo of jniino Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。新しいオンラインメディアの可能性を追求しています。
詳しいプロフィール


Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
RSSリーダーで : Feed
≫ 過去の記事を読む




アクセスランキング - 過去7日間

  1. 次の10年、「統計分析」こそテクノロジー分野…
  2. その分析、Hadoopなら速く安くできます …
  3. 米国で求められているクラウドのスキルは? A…
  4. [速報]VMworld 2010、クラウド時…
  5. グーグルが構築した大規模システムの現実、そし…
  6. 経過報告:「SAP」をSocial Appl…
  7. 技術評論社のクラウド技術誌「G-CLOUD …
  8. グーグル、オラクルとの係争を理由に今年のJa…
  9. グーグルが構築した大規模システムの現実、そし…
  10. [速報]VMworld 2010、IT as…
  11. アドビ「iPadでFlashアプリを動かす」…
  12. グーグルが構築した大規模システムの現実、そし…
  13. 呼びかけ:「SAP」をSocial Appl…
  14. グーグルが構築した大規模システムの現実、そし…

アーカイブ  (最新記事10)

バックナンバー

2010年9月
2010年8月
2010年7月
2010年6月
2010年5月
2010年4月
2010年3月
2010年2月
2010年1月
2009年12月
2009年11月
2009年10月
2009年9月
2009年8月
2009年7月
2009年6月
2009年5月
2009年4月
2009年3月
2009年2月






Trackbacks (TrackbackURL:http://www.publickey1.jp/mt/mt-tb.cgi/1100)

  • (トラックバックは承認後に掲載されます)

Comments