なぜ今また出てきたのか

HTML5が持つ本当の意味

2008/01/25

 ウェブ関連技術の標準化団体「W3C」(World Wide Web Consortium)が「HTML5」の策定に向けて活動を本格化しました。1月22日には「HTML5」の最初の草案を公開。2010年9月に正式な勧告としてリリースする予定だと発表しました。

 普段からウェブ関連技術をウォッチしている方は別として、「なぜ今ごろ?」と、この突然のW3Cの動きに驚かれた方が多いのではないでしょうか。「そもそもW3Cがやる意味があるの?」という疑問の声も聞こえてきそうです。

 標準化団体としてのW3Cのプレゼンスは、近年あまりに高いとは言えません。かつて1990年代後半から2000年ごろにかけて、誰もがW3Cの一挙手一投足に注目していた時期がありました。彼らの出してくる標準技術仕様こそが、インターネットを形成する共通言語だと、多くの人が信じていました。

 ところが、現在広く使われているHTML4が勧告されたのは1997年と、10年以上も前のことです。それに、すでにウェブの世界は単にHTMLだけで語れるような世界でもありません。きわめて複雑、高度に進化していて、それなりにうまく行っているようにも見えます。こうした背景から、開発者やデザイナーの中には、むしろ今さら余計なことをしないでほしいと感じている方もいるようです。

 では、なぜ今ごろになってW3CはHTML5という仕様策定に向けて動き出したのでしょうか?

XHTMLがあるのに、なぜ今さらHTML?

 HTMLをもう1度改訂すると聞いて違和感を感じた方の多くは、なぜXHTMLがあるのに再びHTMLに手を入れるのかと疑問に感じたかもしれません。W3Cや、バーナーズ・リーの描いたシナリオでは、ルースな書き方が許されるHTMLではなく、厳密にパースが可能なXHTMLにシフトするはずでした。W3Cにおいて、1998年にはXMLが、2000年にはXMLをベースにHTMLを定義し直したXHTMLが正式勧告となっています。その後もW3CはXHTMLの改訂を進めてきました。

 ところが、世の中はまったくバーナーズ・リーが想定した方向へは動きませんでした。2006年10月、「Reinventing HTML」(HTMLを再発明する)と題したブログエントリのなかで、バーナーズ・リーは、こう述べています。

 「数年が経過した今となっては、いくつかのことがよりハッキリしてきました。HTMLを徐々に進化させるのは必要です。世の中を一気にXMLにスイッチするという試み――属性値をクオートで囲むだとか、空タグにもスラッシュを付けるだとか、名前空間を使うといったことも含みます――、そうした試みは、まったくうまく行きませんでした。HTMLを作っている多くの人々は、主にWebブラウザが特に不平をいわないからという理由で移行しませんでした」。

 確かにインターネットに軸足を置いた企業や、大手のブログサイト、サービスサイトなどはXHTMLに移行しています。機械処理になじみやすいXMLベースということが、多大なメリットをもたらしもしています。しかし、あちこちのWebサイトでHTMLソースをのぞいてみれば分かるように、Webページのほとんどは、XHTMLではなくHTMLで書かれています。

難しい技術は広く使われない

 CERN(欧州原子核研究機構)に在籍していたバーナーズ・リーが、最初にHTMLの仕様をインターネット上で公開したのは1991年です。インターネット上といっても、まだウェブはありませんから、メーリングリストです。W3CのWebサイトに掲載されている「HTML Tags」と題された歴史的文書を見ると、そのシンプルさに驚きます。TITLE、A、P、H1〜H6など、今日でも使われているタグのほか、使われなくなったタグを含めても、タグの種類はわずかに十数種です。説明書きも含めて、その仕様は1、2分もあれば読める程度のものでしかありません。

 もちろん時代とともにタグの数は増え、複雑になっては行きますが、HTMLが爆発的に普及した背景には、こうしたHTMLのシンプルさがあったということに異論がある人はいないでしょう。特別なツールなしに、誰でも書けて、たとえ間違っていても、Webブラウザはそれなりに表示してくれました。

 2000年前後にバーナーズ・リーが描いた絵は大きいものでした。すなわち、HTMLをXMLへ移行させ、さらにXMLで定義された概念辞書などを使ってメタ情報を扱う。そうすることでウェブは単なる文字や画像の表示装置ではなく、意味論のレベルで有機的に構成されたシステムへと進化するというシナリオです。バーナーズ・リーは、この次世代ウェブを“セマンティックウェブ”と名付けて精力的に売り込みます。2001年には「サイエンティフィック・アメリカン」で取り上げられるなど、セマンティック・ウェブという名前は、一時バズワード的に広がりました。セマンティック・ウェブを実現するための関連仕様も、RDF、OWL、GRDDLと、W3Cは次々とリリースしています。

 こうした仕様が策定されるなかで、セマンティック・ウェブの仕様に沿ったデータを処理するエンジンの実装も出てきました。そうしたエンジンを使ったWebサービスが“セマンティック・アプリケーション”という名称で最近注目を集めています。確かにウェブの世界はセマンティックにはほど遠いけれども、すでに言語仕様があってエンジンがあるんだから使っていこう、というプラクティカルな一派です。今後は、エンタープライズ用途にも普及すると予想している人もいます。

 セマンティック・ウェブ関連技術は再び注目されています。しかし、それはむしろ特定ドメイン内や企業内というインターナル・ユースの話で、ワールドワイドではありません。

 XHTMLへの移行やセマンティック・ウェブの普及がなぜ起こらなかったかといえば、それはHTMLに比べて扱うのが難しすぎたからでしょう。

 記者の私見ですが、こうした例はHTMLとXHTMLに限らず、あちこちで起こっているように思えます。読むのも書くのも人間にとって負担の大きいXMLに対して、シンプルなYAMLが少しずつ広まってきているのが1つの例です。エンタープライズ用途で普及しているSAMLのような認証フレームワークがあるのに、OpenIDというシンプルなものが草の根から出てきて勢いを得ているというのも、同様の例かもしれません。あるいは、初期にXML-RPCやSOAPが多かったWebサービスのAPIは、いつの間にかRESTに押され気味です。ちょっとしたデータの読み出しに10行も20行もXMLのコードが必要なSOAPのような仕様より、URIに必要な指示を埋め込んでしまえるシンプルなRESTが支持を集めています。どうせライブラリがラップして必要なコードは生成してくれるのだからSOAPでも手間は同じようなもの、と考えるのはおそらく現場の開発者ではありません。理論家です。

 現場の開発者は、絵に描いた立派な餅よりも、シンプルで実際に動くものを好む傾向があります。一方、立派な仕様を策定する優秀な人々は、学習コストを無視するか、過小に見積もる傾向があるのではないでしょうか。もっとも、シンプルで、ときにいい加減な仕様では満たせない要件も多いでしょうから、「厳密=シンプル」という軸を巡って綱引きのようなことが頻々として起こっているように思います。

分裂してしまったウェブの世界

 過去数年を振り返ってみると、インターネット上で出てきたウェブ関連の新技術が、W3C発ではないということが増えました。典型的なのはAjaxで使われるXMLHttpRequestやJSONといった仕様がそうです。W3Cでは2004年4月にXMLHttpRequestに似た機能を持つ「Load and Save」という機能を「DOM Level 3」で定義して正式勧告としますが、実装は進まず、利用されてもいません。

 また、HTMLで定義されているFORMを拡張する仕様も、W3CのXFormsのほかに、Webブラウザベンダが集まって作った業界団体「WHAT WG」(Web Hypertext Application Technology Working Group)による「Web Forms」があります。

 現状のHTMLで使えるFORMでは入力文字列のクライアント側でのバリデーションや、相互依存性のあるデータの整合性チェックやリアルタイム更新などができません。こうした機能はJavaScriptで実現していますが、これは非常に不毛な話です。

 さらに2次元ベクターグラフィックを見てみると、W3C勧告のSVGが普及しているとは言い難い状況です。一方、WHAT WGが策定した「Canvas」は有望に見えます。もともとアップルが開発した仕様でSafariに実装されていましたが、その後、MozillaやOperaも実装しています。一方、マイクロソフトはオフィス文書フォーマットOOXMLのなかで、DrawingMLという言語を定義しています。ECMA標準となっていますから独自仕様というわけではありませんが、今のところDrawingMLが読み書きできるのはマイクロソフト製品だけです。ECMAからISOへと提出されたOOXMLの仕様は、ISOでは多くの反対票を集め、その動向が注目されています。このほか、後方互換性のために存在しているだけですが、マイクロソフトは独自のベクターグラフィック言語「VML」も持っています。このように、2次元ベクターグラフィックの仕様は明らかに分裂しています。

 こうした仕様の分裂だけでなく、いわゆるWebアプリケーション開発のためのフレームワークの数を考えると、これはもう絶望的といっていい状況にあるかもしれません。なぜ多数のフレームワークがあるかといえば、HTMLが貧弱だからという側面も大きいのです。

より豊かなWebアプリの世界を目指した「WHAT WG」

 ウェブの世界は分裂の方向にあるばかりでなく、FORMの例にあるように、Webアプリケーション開発者にとっては、あまりに貧弱な枠組みしか提供していません。ところが、W3Cは、Webアプリケーション作成者だけを見て仕様作りをしているわけではありません。むしろ、HTMLの出自はハイパーテキストを実現するドキュメントシステムであってアプリケーションを作ることは想定していませんでしたから、当然といえば当然です。

 こうした状況に業を煮やしたSafari、Moziila、OperaなどのWebブラウザベンダは、2004年6月にWHAT WGという団体を発足します。彼ら自身は同団体の発足声明の中で、WHAT WGを、いわゆる業界団体のようなものではなく、現場の個人個人が集まって構成した非公式な集まりだと説明しています。

 WHAT WGは、すでに説明した「Web Forms 2.0」のほかに、アプリケーション開発向け仕様の「Web Apps 1.0」、UI設計用の「Web Controls 1.0」のマークアップ言語・APIの策定を行います。Level0からLevel3まで、すべてのDOMの仕様策定に7年もかかったW3Cの遅すぎる標準化プロセスに対して批判的な人々というだけあって、仕様策定も実装もハイピッチで進みます。

 しかし、WHAT WGにはウェブの世界を進化させるための最大の要素が欠けていました。それはマイクロソフトのIEによるサポートです。マイクロソフトはWHAT WGへの参加を拒否したのです。

WHAT WGは、W3Cに押し入った「押しかけ女房」

 バーナーズ・リーは先に挙げた2006年10月のブログエントリのなかで、新たにHTML作業部会を発足する意向だと明かします。

 XHTMLへの全面移行というシナリオが無謀だったことを認めたわけです。しかし、移行ができないからといって立ち止まっているわけにもいきません。ウェブの世界は、恐ろしい速度で技術革新を続けています。バーナーズ・リーは、この深刻な状況にあるウェブの世界を憂える心ある開発者たちの声に耳を傾けることを約束します。

 「今回のHTMLの策定には、地に足の付いた現場の開発者に入ってもらうことが非常に重要です。Webブラウザベンダに密接に関わってもらうことも非常に重要です。さらに、そのほかすべてのユーザーやユーザー企業、Web関連製品を持つ企業などのステークホルダーも」。

 こうしたW3C側のスタンスの変化を見たWHAT WGは、2007年4月にW3Cに提案を持ちかけます。それまでWHAT WGで開発してきたWeb FormsやWeb Applicationsといった仕様を、そのままW3CのHTML研究会で出発点として採用して「HTML5」と名付けて開発してはどうかというものでした。すでに提案の1カ月前からW3Cは次期HTMLの開発に取りかかるべく作業部会を立ち上げていましたが、2007年5月にはWHAT WGの提案を受け入れる決定をします。その際の条件としてWHAT WG側は、それまで行ってきた開発との連続性を維持するためにWHAT WG側のイアン・ヒクソンを、HTML 5仕様のとりまとめ役であるエディターに任命することも求めました。

 つまり、2008年1月に出てきたHTML5の草案というのは、W3Cの遅々とした動きに業を煮やして外部で作業していたWHAT WGの人々が、再びW3Cになだれ込んで作業を開始した、いわば押しかけ女房のようなものといえるかもしれません。もちろん、W3C側もあらゆるステークホルダーが意見を述べられる形で、開発現場に近い人たちを中心に作るといってるわけですから、双方の思惑が一致したということでしょうけれど。

HTML5によって、何が変わるのか

 ともあれ、WHAT WGの“私家版HTML5”の策定作業がW3Cに移り、HTML5の本流につながったことは、きわめて喜ばしいことだと記者は思います。この作業部会にはACCESS、AOL、アップル、グーグル、IBM、マイクロソフト、モジラファウンデーション、ノキア、Operaなどの代表者を始め、実に500名にものぼる参加者で構成されています。W3Cは透明性を高くすることも、わざわざ公言しています。

 HTML5には、例えば2人以上の人物の対談用マークアップタグの「dialog」や、写真や映像に説明文を添えるための「figure」などのタグが増えています。そうした文書表現をリッチにするようなものだけでなく、マルチメディアデータを扱うための「audio」「movie」、2次元ベクターグラフィックを扱う「canvas」(これはWHAT WGが提唱していたものと同等で、すでにSafari、Mozilla、Operaで実装されていて、使ってみることもできます)などのAPI群があります。

 Webアプリケーション開発者にとって朗報も多くあります。例えば、ドラッグ&ドロップをサポートする「draggable」という属性はどんな要素にも使えるようになります。日付、時刻、メールアドレス、URLなどフォームで受け取ったデータのバリデーションは、クライアント側で行えるようになります。クライアント側でキーと値の組み合わせを使った永続的なストア手段を提供するSQLデータベースのAPIも提供されます。はたまた、戻るボタンを正しくサポートする苦労から解放してくれるような仕組みも含まれるようです。

 Webアプリケーションを作成しやすくリッチにするだけではなく、より広範囲で利用できるようにするAPIも用意されています。例えば、オフラインでWebアプリケーションをサポートするAPIがありますし、任意のMIMEタイプやプロトコルに対して自身のWebアプリケーションを割り当てるようなAPIまで含まれています。つまり、Webブラウザ上で動くアプリケーションが、また一歩ローカルアプリケーションに近づく仕組みがHTML5には含まれているということです。

 【追記】もちろん、HTML5で定義されるタグセットやAPIは従来の意味でのHTMLとしても書けますし、XMLとして書くこともできるので、そういう意味で、これは何もXHTMLの世界がHTMLにステップバックするというわけでもありません。XHTMLに関しても、XHTML2へ向けた開発作業は引き続き行われます。

再び求心力を発揮するW3C

 HTMLは1つです。ほかの“標準技術”が分裂することがあり得ても、HTMLはインターネットの世界に1つしかありませんし、そうあるべきだと誰もが考えるはずです。このことは重要です。

 標準技術を採用・移行するかしないかは、もちろん個々の企業や開発者の自由です。そうしたとき「W3CのHTML」という名称が持つ力の大きさは、ほかのどんなインターネットの技術に比べても重要な意味を持っているように思います。XHTMLが持ち得なかった求心力を持っています。しかも、今回は業界側からタネを持ち込み、きわめてオープンに議論を展開するというのですから、そこから生まれる「HTML5の正統性」は絶大なものになりそうです。

 激しい議論を展開している関係者のブログを読みあさっていると、HTMLという名前が持つ求心力を利用して一気にWebアプリケーションの世界を「あるべきまともな姿」にしようという意図がひしひしと感じられます。W3Cが次期HTMLに向けて動き出した背後には、そうした多くの現場の人々の絶叫に近い声があります。

 今のところ、まだ本当に標準化プロセスが予定通り進むのかどうか、たとえ進んだとしても実装レベルに違いや非互換性が残るのではないかという危惧は大いにあります。しかし、HTML5というこの存在が、Webに関わる誰にとってもきわめて重大な意味を持つことになるだろうということに関しては、記者はまったく疑いを持ちません。

(@IT 西村賢)

情報をお寄せください:

アイティメディアの提供サービス

キャリアアップ


- PR -
ソリューションFLASH

「ITmedia マーケティング」新着記事

「ECプラットフォーム」 売れ筋TOP10(2024年3月)
今週は、ECプラットフォーム製品(ECサイト構築ツール)の国内売れ筋TOP10を紹介します。

GoogleがZ世代のローカル検索でInstagramやTikTokに敗北 なぜこうなった? これからどうなる?
Googleは依然として人気の検索サイトだが、ことZ世代のローカル検索に関しては、Instagra...

DE&Iに関する実態調査 「公平」と「平等」の違いについて認知度は2割未満
NTTデータ経営研究所がNTTコム オンライン・マーケティング・ソリューションと共同で実施...