HTML5 と WHATWG と Google Chrome。

W3C がHTML5 仕様を昨日勧告しました。それに対する世間の認識とブラウザの中の人の認識に、とーーーてもギャップがあるように感じたので、以下、FAQ。

Q. HTML5仕様が勧告になりました。おめでとうございます。これで、ブラウザ間の互換性がよくなることを期待できますね。

A. そうだとよいのですが、残念ながら効果は限定的かもしれません。なぜなら私も含めて Chrome の中の人はHTML5仕様を「見ていません」。我々が見ているのは W3C の HTML5仕様ではなく WHATWG [1] の HTML Living Standard [2] です。そういう事実があるということを、Web開発者として知っておくと役に立つ時がくるかもしれません。たとえば Chrome の動作についてバグを報告してくださるときなどです。Chrome のバグトラッカー (http://crbug.com/)上での議論で使用・参照されるHTML仕様は WHATWG の HTML Living Standard です。


Q. HTML Living Standard!初耳です! それはいったいなんですか? 「5」がついていないんですけど「5」はどこにいっちゃったんですか?

A. WHATWG の HTML 仕様は、常に最新のHTML仕様をメンテナンスしてそこに準拠することを目指す「Living Standard Model」モデルを採用しています。これは HTML仕様 に限った話ではありません。DOM仕様 [3] も「Living Standard Model」を採用しています。バージョン番号をつけるのはメリットよりもデメリットのほうが多いと過去の経験から学習したのです。
  (Shadow DOM も そういう意味では「Living Standard Model」 です。 常に Editor's Draft を参照してください)


Q. じゃあ HTML5っていったいなんなんですか?ブラウザの中の人が参考にしていないんだったらいったいなんのためにあるんですか?!!

A. ここで WHATWG の HTML Living Standard にはなんと書いてあるかもう一度おさらいしてみましょう。

> https://html.spec.whatwg.org/multipage/introduction.html#is-this-html5?

1.2 Is this HTML5?

This section is non-normative.

In short: Yes.

In more length: The term "HTML5" is widely used as a buzzword to refer to modern Web technologies, many of which (though by no means all) are developed at the WHATWG. This document is one such; others are available from the WHATWG specification index.

Although we have asked them to stop doing so, the W3C also republishes some parts of this specification as separate documents. There are numerous differences between this specification and the W3C forks; some minor, some major. Unfortunately these are not currently accurately documented anywhere, so there is no way to know which are intentional and which are not.


(適当な意訳)

1.2 これ(HTML Living Standard)は HTML5 ですか?

短い答え) ...そーだよ。

長い答え) 「HTML5」ってのはモダンなWeb技術を指すバズワードだっちゅーの。HTML5 の多くは実際は我々WHATWGが策定したものだ。このドキュメント (HTML Living Standard) もそのひとつ。他のものもWHATWG のサイトからダウンロードできる。我々はW3Cにやめるようにお願いしてきたけど、W3Cはこの仕様の一部をコピーして別のドキュメントとして再公開している。このドキュメントとW3Cがメンテナンスしてるコピー版の間には多くの違いがある。残念ながらその違いについてきちんと書かれたドキュメントなんて存在しない。その違いが意図的かどうかなんてわかりっこないさ。


Q. ...私は混乱してきました。世間は「HTML5!HTML5!」ってお祭りなんですよ!「HTML5」をタイトルにつけるだけでページビューや集客がアップするんですよ!「HTML5勉強会」じゃなくて「HTML勉強会」じゃ人は集まらないです!

A. 「HTML勉強会 featuring データサイエンティスト2.0  〜キラキラ女子を添えて〜」ってタイトルがオススメです。

----
[1]: https://whatwg.org/
[2]: https://html.spec.whatwg.org/multipage/
[3]: https://dom.spec.whatwg.org/

(この投稿も Living Standard Model を採用しているため、ちょくちょく更新されます)

参考情報
- Hixie へのインタビュー:  http://www.publickey1.jp/blog/13/hixie_html5hixie.html
- Chromim/Blink のミッション・ステートメント、Webプラットフォームを変更する際のガイドライン、ポリシーなど: http://www.chromium.org/blink
Shared publiclyView activity