AppleがHTML 5に賭ける理由:ウェブの歴史

AppleがHTML 5に賭ける理由:ウェブの歴史

Appleは収益の大部分をハードウェア販売で得ているにもかかわらず、ソフトウェアの未来を形作ることに多額の投資を行っています。その一例が、HTML 5と関連するウェブ標準です。

標準規格はまだ完成していないが、Apple はすでに、iPod touch や iPhone のモバイル ブラウザから Mac や PC の Safari、Dashboard ウィジェットから新しい iTunes LP コンテンツ、MobileMe アプリから最新の iTunes Store に至るまで、同社の戦略において HTML 5 を重要なコンポーネントとして採用している。

批評家たちは、HTML 5は2012年まで完成しないだろうと不満を漏らし、MicrosoftがInternet Explorerでこの新標準をサポートする可能性は低いため、HTML 5の完成はそもそも無意味かもしれないと指摘しています。一方で、Webの基盤となる言語に本当に変更が必要なのか疑問視する声もあります。

しかし実際には、HTML 5の多くの機能は既に広く利用されています。Appleは802.11nの最終ドラフトを待たずに新しいWiFi規格のサポートを実装し、HTML 5の最終ドラフトも待たずに実装しました。MicrosoftもHTML 5規格への公式参加を表明し、Google、Apple、Mozilla、そしてこの仕様を支持する他の企業との協力に真剣な関心を示しています。

しかし、HTML 5 がなぜ重要なのか、そして HTML 5 の導入によって Web やソフトウェア全般の将来がどのように変化するのかを正確に理解するには、業界のライバルたちが Web がどのように機能すべきかについて新たなレベルの合意を得るために取り組む中で、HTML 5 が生み出された論争のドラマを見る必要があります。

HTMLの起源

HTML(ハイパーテキスト・マークアップ言語)は、ティム・バーナーズ=リーが1989年に開発を開始した言語です。当初は、10年前に欧州原子核研究機構(CERN)で開発していたプライベートなハイパーリンク情報データベース「ENQUIRE」の機能を、インターネット上で動作するオープンな分散アプリケーションとして提供する方法として開発が進められていました。NeXT Computerの高度な開発ツールを用いてプロトタイプが作成されたこのシステムは、後にWorld Wide Webとして知られるようになりました。

新しいウェブでは、HTMLはSGML(Standard Generalized Markup Language)の応用として定義されました。SGMLは、異なるシステム間でのファイル転送を容易にするために、マークアップコマンドを用いて文書を構造化する既存のISO標準規格です。SGMLの使用は1960年代にまで遡り、政府、産業界、軍隊が複雑な文書を明確かつ自動化システムによるアクセスと変更が可能な方法で構造化する手段として利用されていました。

文書に埋め込まれた SGML マークアップは、プレゼンテーション機能 (たとえば、テキストを太字にする場所を示す)、手順機能 (PostScript 描画コマンドのラインに沿って処理命令を追加する)、または説明機能 (引用や脚注など、さまざまな目的で複数の方法で解釈できる文書の部分を定義する) に注釈を付ける場合に使用できます。

使用目的に応じて、これらのマークアップ形式は、単純化のために混在させる場合(人間の閲覧専用に設計された Web ページを作成するための基本的な方法になる)、または厳密に区別しておく必要がある場合(人間の基本的な閲覧用にレンダリングされるだけでなく、自動的に更新または視覚障碍者用のスクリーン リーダーによって解釈できる柔軟なドキュメントを可能にする)があります。

プレゼンテーション、手順、説明の間の境界線は、それぞれ異なる目的を念頭に置いたさまざまな視点が衝突し始めたため、HTML に関して激しく議論される主題になりました。

官民協力で立ち上げ

1993年、標準化団体IETF(インターネット技術タスクフォース)への勧告としてHTMLを起草するために、バーナーズ=リーはHTMLの実際の実装例を示す必要がありました。彼は、アメリカのNCSAで開発されていたMosiacブラウザを例に挙げました。NCSAは、政府の戦略的な投資によって市場の力を活用し、高性能コンピューティングと通信技術の発展を促進するという広範な取り組みの一環として、アル・ゴア下院議員の資金提供を受けていました。

HTML の完全にオープンな性質と、重要な実装作業に対する政府の投資によって、バーナーズ=リーの新しい Web は、AOL、CompuServe、GEnie、MSN などのサイロ間でユーザーを分割していた互換性のない独自のインターネット サービスのポケットを完全に覆すことができました。

HTMLがオープンスタンダードとして公開されたことで、誰でもあらゆるプラットフォームのあらゆるウェブブラウザで表示できるウェブページ文書を備えたサーバーを構築できるようになりました。この途方もない可能性が現実味を帯びてくると、マイクロソフトはウェブが自社の独自サービスであるMSNにとって脅威となるだけでなく、企業がWindowsへの依存を減らし、あらゆるベンダーの製品を購入できるようにするためにも利用されるだろうと気づきました。これが実装面におけるNetscapeとの争いの火種となり、ウェブ標準面でも争いが起こりました。

3 ページ中 2 ページ目: HTML 2、3、4。

HTML 2: 誰が責任者ですか?

1994年にHTML草案とHTML+が失効した後、IETFはHTMLワーキンググループを設立し、HTML 2の策定作業を開始しました。同時に、バーナーズ=リーは、Web標準全般の開発を主導するという共通の目的を掲げ、ワールド・ワイド・ウェブ・コンソーシアム(W3C)を設立しました。HTML 2.0 IETF仕様は、様々な変更点を体系化し、将来のWeb開発の基盤となることを目的として、1995年にリリースされました。

1996年、IETFは独自のワーキンググループを閉鎖し、HTMLの管理業務を実質的にW3Cに委譲しました。HTML 2標準の開発作業の多くは、特定の目標を達成するための最適化された、綿密に練られた方法を実際に提示するのではなく、様々なブラウザ開発者が独自に考案した拡張機能を単に認識することに基づいていました。

Mosaicの主任開発者であるマーク・アンドリーセンは、1993年にNCSAを離れ、ウェブブラウザの方向性に関する独自の構想を具体化するためにNetscapeを民間企業として設立しました。Netscapeは、コミュニティ全体と一切議論することなく、独自のHTML拡張機能の開発を開始しました。これは、ウェブそのもののオープンな性質を損なう恐れがありました。

Netscapeは、消費者の注目を集めるウェブページを迅速に提供する方法の開発に主眼を置いていました。そのため、HTMLにページの背景色やテキストのフォントなどを指定するタグを追加し始めました。学術界にとっては、これは文書の構成に関する記述的な意味論のみを示すべき標準に、プレゼンテーションを不適切に混在させていると感じられました。

このままでは、HTMLは様々な目的に解釈できる柔軟な文書フォーマットではなくなり、デスクトップPCで動作するウェブブラウザという単一の目的のために、特定の文書ビューをレンダリングするための不格好な手段になってしまいます。例えば、HTMLで背景色を定義すると、視覚障碍のあるユーザーにとってレンダリングしにくいページデザインになってしまう可能性があります。また、特定のフォントサイズや書体を指定すると、使用しているクライアントデバイスに合わせて文書を適切に拡大または縮小できなくなる可能性があります。

HTML 3: 選べる標準が豊富

1995年、W3CはHTML 3の草案を発表しました。これは、数学や科学文書のニーズへの対応を含む、様々な新しい機能を公式化することを目的としていました。HTML 3に盛り込まれたその他の新機能の一つに、複雑な文書で使用されるデータの表形式に対応してほしいという米海軍の要望に基づいた、表形式のサポートがありました。

HTML 3がほぼすべてのユーザーのニーズに応えるために拡張されるにつれ、リソースが限られたブラウザベンダーは、仕様のどの要素を実装できるか、あるいは実装するかを選別し始めました。その結果、様々なブラウザが「標準」の異なるサブセットをサポートするようになり、同時にそれぞれ独自の非標準機能も追加するようになりました。

一方、ブラウザ市場における Netscape のリーダーシップは Microsoft の挑戦を受けました。Microsoft は 1995 年にオリジナルの Mosiac コードのライセンスを取得し、それを新たな方向に分岐させ始めました。これは、PC オペレーティングシステム市場における Microsoft の支配を打ち破ることに既得権益を持つ企業グループ (主に Netscape と Sun) によって Web が定義されるのを防ぐためでした。

Microsoftに先んじるため、NetscapeはHTMLに独自の拡張機能を追加し続けました。その一例がHTMLフレームの概念です。これは、ブラウザが複数の独立したウェブページを同じ画面内に同時に表示できるようにするものです。NetscapeはNavigatorブラウザにフレームを追加した後、このアイデアをHTML仕様に組み込むよう提案しました。これにより、コミュニティはアイデアやその実装のメリットについて議論することができなくなりました。

1996年末までに、マイクロソフトはわずか1年でInternet Explorerの3回目のメジャーリリースを急いでリリースしました。この猛烈なペースは、Webの未来をWindowsに結びつけることを明らかに意図していました。IE 3.0ではActiveXのサポートが追加されました。ActiveXは、Windowsでのみ動作する複雑なインターフェースコントロールをWebページ内に構築する方法です。Netscapeは独自のActiveX実装とJavaScriptというスクリプト言語を追加しました。IEはこれに対応して、独自のJScriptを開発しました。

NetscapeとMicrosoftが独自の機能で競い合う中、HTMLを相互運用可能な標準としてどのように実装するのが最適かを巡る議論は、氷河期のようなペースで進み、行き詰まり始めました。NetscapeのBLINKタグで行き詰まり、Microsoftもそれに匹敵する愚かなMARQUEEタグを自社で発表しました。どちらもHTMLを本格的なドキュメントプレゼンテーションという目標から引き離し、歓楽街のけばけばしいネオンサインのけばけばしい絶望感をWebで再現することを狙ったのです。

一方、IETFは公式HTML 2仕様の策定作業を継続し、国際文字、表、イメージマップといった機能のサポートを追加しました。最低限の公式標準を策定しつつ、迅速な独立イノベーションと、誰もが合意できる綿密に練られた将来のロードマップの可能性の両方を許容するという課題は、ほぼ不可能に思え始めました。

HTML 4: 同じページにアクセスする

しかし、WC3 は、新しい HTML 編集レビュー委員会に参加するよう招待された Netscape、Microsoft、Sun およびその他の関係者の代表者との間で行われた一連の定期会議の中で、重要な問題について高レベルの合意を仲介することに成功しました。

確立された共通の基盤の中には、BLINK タグと MARQUEE タグを公式 HTML 仕様から除外するという決定と、Web プレゼンテーションを HTML の純粋に説明的な要素から分離する CSS (Cascading Style Sheets) の使用を優先して Netscape のプレゼンテーション マークアップ機能のサポートを廃止するという計画がありました。

CSSを使用することで、ウェブ制作者は画面表示、印刷、スクリーンリーダーによる音声出力など、様々な方法で解釈可能なHTMLドキュメントを作成できるようになりました。しかし、2つの問題がありました。1つ目は、Netscapeのタグによって、既存のほとんどのウェブページで既にプレゼンテーション用のマークアップと説明用のマークアップが混在していたことです。2つ目は、ブラウザがHTMLに加えてCSS仕様への新たなサポートを追加する必要があったことです。

CSS 1は、HTML文書において、特定の表現(「helvetica bold 16 pt」など)ではなく、特定のスタイル(「見出し」など)に従って要素を記述する方法を提供しました。CSSファイルは表現の詳細を提供し、ユーザーやブラウザは必要に応じて、異なる書体の使用や異なる抑揚でのテキストの読み上げなど、それらを置き換えることができます。CSS 1は、テキスト、グラフィック、表の配置にもスタイルを適用できるようになりました。

1997年初頭にリリースされた既存のHTML 3.2仕様からHTML 4をクリーンに発展させるため、新しいHTML 4では、以前の廃止されたタグの慣例を許容する「移行」ページと、説明とプレゼンテーションの詳細を分離するCSSアプローチに準拠した新しい「厳密」ページの両方がサポートされました。HTML 4は1997年末にリリースされ、1999年末にはHTML 4.01の明確化が行われました。

W3CのHTML 4は、記述と表示の分離に加え、ウェブドキュメントの手続き的な側面も規定し、クライアントサイドのインタラクションを実行するためのJavaScript言語と、HTMLで記述されたオブジェクトを表現し、操作するためのDOM(ドキュメントオブジェクトモデル)の両方を標準化しました。その後、「HTML 4.01 strict」仕様は2000年にISO標準として公開されました。

マイクロソフトは、新しいHTML、CSS、JavaScriptのウェブ標準のサポートにおいて、実のところ先駆者でした。これは主に、IEをWindowsにバンドルすることでNetscapeを駆逐したためです。新しいブラウザをゼロから開発するには膨大な作業が必要であり、新規参入者にとって大きな参入障壁となりました。また、IEの普及は、誰も試してみようという市場的なインセンティブを生み出さなかったように思われます。

90 年代を通して急速な発展が続いた後、ほぼ 10 年間 HTML の実用的な進歩はありませんでした。

HTMLタイムライン

XHTML 1: 仕様の完全性の欠如

W3Cは、1998年にXHTML 1.0を皮切りに、HTML 4を新たな方向へ導くことを決定しました。この新しい仕様は、HTMLをSGMLの形式ではなく、XML(拡張マークアップ言語)のより厳密なサブセットに押し込んだため、意味的な変更は比較的軽微なものとなりました。

既存のHTML文書のレンダリングは、HTMLの柔軟かつ曖昧な性質のために極めて複雑になっていました。W3Cは、HTML文書に厳格なXMLフォーマット規則を課すことで、2つの目標を達成しようとしました。1つ目は、XMLツールを使用してHTML文書を作成、変更、レンダリングできるようにすることです。既存のHTMLはあまりにも曖昧で、HTMLの多くの例外に対応する非常に複雑なレンダリングエンジンがなければ、機械が確実に解析することはできませんでした。

XMLへの移行による2つ目のメリットは、特殊なマークアップをモジュール化できる可能性です。これにより、HTML仕様で専門的な数学や科学コンテンツのマークアップ方法を定義する必要がなくなり、MathMLなどの特殊なXML文法を用いて独自に定義できるようになります。XHTML文書は、そのようなコンテンツの特定の部分をマークアップするための外部定義を参照するだけで済みます。

しかし、HTML 4.01からXHTML 1への移行は、ほとんどの人が習得する必要のない新たな複雑さをもたらしました。さらに、Microsoftにとってブラウザ市場に強力な競合相手がいなくなったため、CSS 2などのより実用的な新機能のサポートを追加したり、ActiveXの市場投入を急いだことで生じた深刻なセキュリティ危機を解決したりするよりも、IEをXHTML準拠にすることに投資する理由はほとんどありませんでした。

ほとんどの人が使用していたブラウザがXHTMLをサポートしていなかったため、ほとんどのウェブ開発者が新しい標準に対応するためにサイトをアップグレードする理由はほとんどありませんでした。XHTMLへの移行を試みたところ、実質的なメリットは得られず、複雑な新たな問題が発生することが多かったため、ほとんどのウェブ開発者はHTML 4.01の使用に戻りました。

XHTML 2.0: 誰も知らない標準

IE とそのブラウザ市場の 90% のシェアが XHTML をサポートすることはないだろうという現実に直面して、W3C は 2002 年に、HTML 4 または XHTML 1 との下位互換性の見せかけをすべて排除した新しい XHTML 2.0 仕様の草案の公開を開始することを決定しました。これによりプロジェクトの範囲は大幅に簡素化されましたが、新しい作業は誰にとってもほとんど無関係なものになりました。

W3Cがこの軌道を進むにつれ、競争環境は劇的に変化し始めました。NetscapeはMozillaとして生まれ変わり、その新しいFirefoxブラウザは、2001年のIE 6のリリース後、Microsoftが事実上自社のウェブブラウザを放棄したことに不満を抱く新たなユーザーを獲得し始めました。

2006年末にIE 7がリリースされた頃には、FirefoxはPC上では実用的で人気のある代替ブラウザとなり、Appleの新しいSafariブラウザは、Webに不可欠なMacプラットフォームからIEを完全に駆逐しました。Operaも同様にモバイルブラウザの中でニッチな地位を確立しつつあり、MicrosoftのひどいPocket IEが代替ブラウザにチャンスを与えていました。

Apple、Mozilla、Opera に率いられ、ウェブ上でますます重要になる一団は、当時のウェブ環境に対して、オープンでベンダーに依存しない標準ベースの代替手段をサポートするためにウェブ標準をどのように進化させることができるかを検討し始めました。当時のウェブ環境は、レンダリングに別のプラグインに依存する独自の Flash コンテンツがますます主流になりつつあり、オープン ウェブは事実上、80 年代後半の AOL のように、閉鎖的でバグが多く遅い独自のシステムに戻っていました。

ウェブがXMLへ効果的に移行することは決してないと確信したMozillaとOperaは、W3Cに対し、XHTMLへの取り組みを中止し、リッチウェブアプリに焦点を当てたより実用的な新しい方法でHTML 4を拡張し、XMLの使用をRSSなどの新しい技術に限定するよう提案した。両社は意見表明書の中で、「ウェブアプリケーションは、既存の技術では十分に対応できていない重要な分野であると考えています。共同で開発された仕様よりも先に、単一ベンダーのソリューションでこの問題に対処するという脅威が高まっています」と述べた。W3Cメンバーはこの提案を否決した。

3 ページ中 3 ページ目: HTML 5 と将来。

WHATWGがHTML 5を発表

W3C 内での Web 標準に関する進歩は遅々として進まず、ほとんど意味をなさないものであったため、2004 年に Apple、Mozilla、Opera が協力して独立した WHATWG (Web Hypertext Application Technology Working Group) を設立し、リッチ Web アプリの実行可能なプラットフォームとして機能するように HTML、CSS、DOM、JavaScript の進化に重点を置きました。

WHATWG は、Adobe Flash、Microsoft Silverlight、Sun JavaFX を回避し、Web をオープンなルーツに戻すことを明確に目的として設計されました。この目標を達成するためには、1999 年以来ほとんど進歩していなかった HTML 仕様を最新化する必要がありました。また、DOM を適応させ、API を使用して JavaScript を進化させ、ドラッグ アンド ドロップ、高度な描画、オフライン編集など、デスクトップ アプリケーションに近い豊富な Web アプリ機能を提供するための追加作業も必要でした。

2007年、WHATWGは、XHTML 2.0に代わるウェブの未来の新たな出発点として、HTML 5の仕様をWC3に採用するよう勧告しました。この時、W3Cはこの提案を受け入れ、その後、新しいHTMLワーキンググループが結成されました。2008年1月には、HTML 5の最初の公開ワーキングドラフトが公開されました。

HTML 5の未来

HTML 5の支持者たちは、これまでのHTML仕様の発展を阻んできた一連の問題を解決することを決意しました。ワーキンググループは、後方互換性の実際的な必要性、実装と仕様の整合性の重要性(遵守されない、あるいは遵守されないであろう規則を作ることではなく)、そして個々のベンダーが実際に完全な相互運用性を実現できるよう、仕様が明確かつ明瞭である必要性を強調しました。

HTML 5は、Windows XPからVistaへの移行やIPv4からIPv6への移行のような、大きな飛躍ではないことに注意することが重要です。Googleのマーク・ピルグリム氏によると、HTML 5仕様は、ブラウザがサポートできる詳細な機能実装の集合に過ぎません。実際、一部のブラウザは既に、ジオロケーション、ローカルストレージ、オフラインアプリ、キャンバス、新しいオーディオタグとビデオタグなどの機能をサポートしています。AppleのSafari 4とiPhoneのモバイルSafariは既にサポートしています。

ブラウザ開発者がせっかちに機能を追加し、標準化団体に承認を求めたウェブ黎明期とは異なり、今日のブラウザベンダーは、自社のブラウザでのサポートを完了できるよう、新しい仕様が定義されるのをせっかちに待っています。誰でも実装できる実用的な機能に焦点を当てることで、HTML 5はオープンソースベンダーからMicrosoftまで、ウェブ業界のあらゆる関係者の注目を集めています。

HTML 5のベンダー

ベンダーのHTML 5に対するスタンスは、当然ながら、HTML 5がベンダーにどのような影響を与えるかによって決まります。例えば、MozillaとOperaはどちらもHTML 5の推進に強い意欲を持っています。なぜなら、HTML 5によって、特定のプラットフォーム(Flashなど)でしか動作しない独自仕様のプラグイン開発や、特定のブラウザ向けに特別にコーディングされたウェブページによって締め出されるのではなく、ブラウザ市場において公平な競争が可能になるからです。

Apple は、Web 上のリッチ メディア配信 (Flash と競合)、MobileMe でのリッチ Web アプリの作成、iPhone および Mac プラットフォームでのサードパーティのリッチ Web アプリのサポート、Flash や Silverlight などのサードパーティの Web 代替プラグインに関連する非互換性やセキュリティ問題の影響を軽減できるため、HTML 5 の推進に強い意欲を持っています。

Google が HTML 5 を推進することに強い意欲を持っているのは、デスクトップ版の代替品 (Office など) とより競合できる機能豊富な新しい Web アプリを提供できること、すべての Web ブラウザーに公平な競争の場を設けて競争を促進できること、YouTube 動画を配信するために Flash を使用する必要がなくなること、PC 上の従来のオペレーティング システムに代わる Chrome OS を提供できることなどからです。

HTML 5がOfficeやWindowsに潜在的な脅威をもたらす可能性があるにもかかわらず、Microsoftはブラウザシェアが約65%に低下していることから、HTML 5への参加の必要性を感じている。2009年8月時点で、MicrosoftのIEユーザーの大部分は依然としてIE 6を使用している。つまり、IEはユーザー数では他のブラウザをリードしているものの、新しい標準の設定という点ではもはやリードしていないということだ。現在、Firefox 3の利用者はIE 8を上回っており、どちらも昨年リリースされた。

AdobeのHTML 5に関する取り組み

HTML 5に対する最大の批判者はAdobeです。今夏の決算発表の電話会議で、HTML 5がAdobeにとってどのような機会、あるいは脅威となるのかと問われたAdobe CEOのシャンタヌ・ナラヤン氏は、「HTML 5にとっての課題は、今後もブラウザ間でHTML 5の表示をいかに統一するかということになるでしょう。現在議論されている展開計画を考えると、今後登場する多くのブラウザでHTML 5が標準化されるまでには10年かかるのではないかと懸念されています」と答えました。

しかし実際には、歴史が示すように、HTML標準はほぼ即座に採用されるか、あるいは全く採用されなかったかのどちらかです。MicrosoftがHTML 5機能のサポートに全く手を付けないかもしれないという懸念さえ、同社がHTML 5への関心を表明していること、競争上の必要に迫られた際にWeb仕様を適用しようとしてきた過去の取り組み、そしてサードパーティがIEを拡張してHTML 5の多くの機能をサポートできる能力を考えると、否定するのは難しいでしょう。Google Gearsは基本的にこれを実現しています。

Adobeが、減少するFlashデザイナー集団への対応よりも、HTML 5向けオーサリングツールの販売でより多くの収益を上げられることに気づけば、その展望は劇的に変化するだろう。プラグインのメンテナンスから標準ベースのツール開発への移行により、AdobeはFlash、Flash Lite、AIRランタイムを異なるハードウェアプラットフォームや異なるブラウザに実装しようとするのではなく、コミュニティ(主にMozillaとWebKit)によって構築されたプラットフォームに依存できるようになる。なぜなら、その方法では明らかにうまくいかないからだ。

Snow Leopard サーバー (開発者リファレンス)

Daniel Eran Dilger 氏は、Wiley の新刊『Snow Leopard Server (Developer Reference)』の著者です。現在、Amazon で特別価格で予約注文できます。