Webプラットフォーム

Web プラットフォーム

[1] Web プラットフォーム (the Web platform) は、Webブラウザーによって提供される、 HTMLCSSJavaScriptDOMHTTP などの Web標準技術によって構築されたハイパーテキスト・アプリケーションのためのプラットフォームです。

技術

[15] Webプラットフォームは数多くの技術により構成されています。 具体的にどれとどれが Web の技術であると明確に範囲を定めることは難しいですが、 おおよそ次のようなものが含まれると考えられます。

[57] 文書:

[65] 文書 API:

[56] 転送プロトコル:

[58] 識別子:

[60] Webブラウザー API:

[59] API:

[67] 廃れたものの限定的にまだ使われているもの:

[61] Web 以外で広く用いられているもので、 Web でも組み込まれているもの:

[68] クライアントの構成技術についてはWebブラウザーサーバーの構成技術についてはHTTPサーバーも参照。

特定製品でのみ実装されている技術

失敗した技術

[40] Web ではほとんど利用されなかったもの

[25] 一世を風靡した後廃れたもの:

[41] 廃れて現在では使われていないもの:

[42] 廃れて Web では使われなくなったもの:

まだ仕様化されていないもの

[54] 2004年の WHATWG 設立以来、新旧の Web 技術の多くが仕様書の形で文書化されてきており、 現在ではWebブラウザーに実装されている技術の大部分がいずれかの仕様書で記述されています (その品質と完成度は、まだそれぞれです)。しかし、今なおソースコードや簡単な紹介文書程度にしか記述されていないものもあります。

技術の利用方法や組み合わせ

[27]

技術と利用者との関わり

[26] Web platform の技術は、Webブラウザー利用者インターフェイスを介して利用者に提示されます。

個別の要素については、Webブラウザーを参照。

仕様書

[22] Webプラットフォームはたくさんの技術で構成されているので、 たくさんの仕様書でその部分部分が規定されています。

各技術の項を参照。

[23] 仕様書の探し方は、Web技術の仕様書の探し方を参照してください。

団体

[16] Webプラットフォームの技術を扱う標準化団体は色々あります。 Web を参照してください。

隣接分野

[17] Web の普及により、 Web 技術が Web 以外でも使われることが多くなりました。

[18] 中途半端に標準的な Web 技術との互換性を持たせているために、 開発者に優しいと謳いながら一方で開発者を苦しめていることもあります。 独自の改変のため、 Web の進歩についていけずに破綻することもよくあります。

walled garden も参照。

[19] スマートフォンアプリなどネイティブアプリの機能の一部を Webサーバーの提供する Web API を利用する形で実装したり、 アプリ内ブラウザー (埋め込みブラウザー) でレンダリングしたりすることがあります。 今日では通信機能を持ったスマートフォンアプリのほとんどは HTTP を使っていると思われますから、大多数のスマートフォンアプリは広義の 「Web 技術を流用したもの」に含まれます。

[20] Webプラットフォームという語の対象範囲はあまり明確ではありませんが、 こうした閉鎖的環境に Web 技術を応用していて Web 本体の発展と同期しないことを敢えて選択しているものは範囲外との認識が一般的だと考えられます。

[21] いわゆるイントラネットWeb 系アプリケーションの位置付けは微妙です。 例えば「IE6 専用」のような特定環境を要求した企業内システムは、 他の Webブラウザーの存在などの Webエコシステムを無視したもので相互運用性がそもそも成立しないため、 HTML5 以降の新技術開発におけるWeb互換性の判断では無視されてきました。 しかしだからといって一般に企業内のみの閉鎖的なシステムの互換性がすべて無視されているかというと、そうでもありません。 公開サイトであろうがアクセス制限があろうが、特定の Webブラウザーのみに限定されていなければ、 Webプラットフォーム上のアプリケーションであると主張することはできそうです。 (インターネットと接続しない独自ネットワーク上のアプリケーションでもそのように言えるのかどうかはよくわかりません。 少なくてもWeb互換性の議論の対象には (統計的に) 入らなそうですが...)

[28] ブラウザー上で動作して広義の Webブラウザーを構成し、 利用者に追加の機能を提供するブラウザー拡張や、 プラットフォームから Webブラウザーソフトウェア部品として利用する埋め込みブラウザーのような、 Web を「外側」から扱う技術もあります。

[29] これらは Webブラウザープラットフォームの仕組みやビジネス的な環境に大きく依存する部分でもありますから、 「内側」とは違ってあまり標準化の及ばない領域となっています。 それでも、「内側」と「外側」との関係性の部分である程度の共通化の試みは存在しています。

関連

[6]Web 5.0」は、 Web platform を規定する HTML5 世代の仕様書群の総称として使われることがあります。

[7] Web プラットフォームと同じ意味で「Open Web Platform」という語が使われることもあります。

[8] 最近は W3COpen Web Platform の意味で Web Platform という語を使うことがあって意味が揺らぎつつあります。

歴史

[2] 従来、ソフトウェアとしての「Webブラウザー」、技術の総称としての「DHTML」や 「Ajax」、用途としての「Webサービス」、「Webアプリケーション」といった言葉はありましたが、 プラットフォームとしての Web を指す用語はありませんでした。 (本 Wiki 項目の執筆初期時点でも、普及したものはありませんでした。)

[3] Web platform はこの Web の環境を指す語として (2008年くらいから?) Ian HicksonWHATWG 関係者がよく使っています。

[5] に再登場した Web Applications 1.0 では、 Abstract で

This specification defines a big part of the Web platform, in lots of detail.

... とその位置付けが説明されています。 HTML仕様書における 「Web platform」の初出はこれだと思われます。加えて、その後の改訂で HTML Standard の各章でちらほら使われるようになりました。

[11] バズワードとしての HTML5 は、本項の Webプラットフォームと同義かもしれません。
古い

[4] IRC logs: freenode / #whatwg / 20090827 ( 版) <http://krijnhoetmer.nl/irc-logs/whatwg/20090827>

[9] Relevant spec links · mozilla/servo Wiki ( ( 版)) <https://github.com/mozilla/servo/wiki/Relevant-spec-links>

[10] W3CWeb 関連技術の文書を集めたサイトを WebPlatform と呼んでいます。ただし現状では Web platform のごく一部しかカバーできていません。

[12] W3C WS Package PAS Explanatory Report (Daniel Dardailler 著, 版) <http://www.w3.org/2010/08/ws-pas.html>

[13] >>12 は「other foundational Web and Internet technologies (XML, http, URI)」 のことを「Web Platform」と呼んでいます。図中には更に SMTPTCP も含まれています。

[14] IRC logs: freenode / #whatwg / 20150909 ( 版) <http://krijnhoetmer.nl/irc-logs/whatwg/20150909>

# [15:43] <MikeSmith> so I am going to experiment with using the term "the Web runtime" in conversations instead of "the Web platform"

# [15:44] <MikeSmith> the reason being that I am increasingly running into people who are using "the Web platform" to mean either just "the Web" or else basically whatever they want it to mean such that there pet technology is part of it

# [15:45] <MikeSmith> e.g., claims that EPUB is part of the Web platform

# [15:45] <MikeSmith> or that Linked Data is part of the Web platform

# [15:45] <MikeSmith> etc.

[31] W3CWebApps WG廃止してかわりに設置した WGWeb Platform Working Group と称しています。 しかし Web platform の多くの部分を担当範囲に含めてはいますが、 一般的に Web platform と呼ばれる範囲と比べるとごく一部に限られています。

[24] Web updates () <https://antenna.suikawiki.org/web/>

[30] Writing Procedural Specs () <https://garykac.github.io/procspec/>

[32] Drafts of unspecified behaviors that Servo needs to implement for web compatiblity () <https://servo.github.io/servo-specs/>

[33] servo/servo-specs: Drafts of unspecified behaviors that Servo needs to implement for web compatiblity () <https://github.com/servo/servo-specs>

[34] day-to-day () <https://foolip.github.io/day-to-day/>