W3C勧告

W3C 勧告

[1] W3C 勧告 (Recommendation) (REC) は、 W3C Process に規定された勧告トラック手続きに従い開発され、 W3C Advisory BoardW3C Director に裁可を経て出版される標準化文書です。 W3C標準化過程で最上位にある文書の状態であって、 他の標準化団体における「標準 (standard) 」に相当します。

W3C 勧告となった仕様

[11] 次の仕様書が W3C勧告となっています。

[46] 同じ「W3C勧告」であっても、その性質は時代により異なっています。 CR 創設前のW3C勧告は、 CR に相当するものです。

[47] CSS 2.0W3C勧告となりましたが、 CSS 2.1 開発当時の CSSWG は、実質的に CR であると説明していました。 CSS 2.0 に含まれていたもののその後実装されなかった (される見込みもない) 機能は、 CSS 2.1 では削除または参考に格下げされています。

[48] つまり90年代や00年代初期の W3C勧告は、実装可能かどうかの検討すら十分に経ていないものです。 例えば HTML 4.01 には実装方法がよくわからずその後の HTML 仕様では削除されることになる機能が色々含まれています。

手続き

[2] REC と出版される前には、 PR または PER として出版される必要があります。

[3] 細かな変更の場合は PER 無しで REC の後に REC が出版されることもあるようです。

[29] W3C Process も参照。

出版後の変更

[4] W3C TR の原則により一度出版されると変更されないことになっていますが、 in-place modification により軽微な変更は適用されることがあります。

[53] 軽微な変更と判断されたものは特別な告知なく行われることがあり、 変更前の版は残されていないので、注意が必要です。

廃止

[67] 廃止 (Obsolete) 制度が創設されるまで、 約20年間 W3C勧告には廃止やそれに相当する制度がなく、 一度 W3C勧告になったものは何があろうとそのまま放置されていました。


[5] 他の仕様書により「supersede」される例 >>6があります。

[7] 「no longer maintained」と宣言された例 >>8 があります。

[9] 市場では事実上廃止状態にある勧告も、廃止されずに放置されていることがよくあります。

[10] HTML 3.2HTML4DOM1廃止されていません。

[50] DOM2 Views には、次のような注意書きがあります。

[49] Document Object Model (DOM) Level 2 Views Specification ( ()) <https://www.w3.org/TR/DOM-Level-2-Views/>

Document Status Update 2011-09-22: This paragraph is informative. The concepts this document defines are obsolete. The 'document' and 'defaultView' attributes are defined in the HTML5 specification with simplified semantics. The Web Applications Working Group encourages implementation of these concepts as defined by HTML5.

[52] 注意書きがあるだけまだましな部類ですが、この注意書きはあくまで参考で、 当該W3C勧告廃止されたとは一言も書いてありません。実際 >>51 には数年経っても現行標準として掲載されています (DOM1廃止されたらしく掲載されていませんが、 DOM2DOM3DOM4 は古いまま掲載されています)。


[69] W3C勧告には撤回 (Rescind) という制度が一応存在していますが、 これは廃止よりも強く、使わないことを求め、特許ポリシーによる取り扱いも停止するというものです。 これまでに適用例はありません。

[70] 類例として、XHTML2 WG が不適切な手法 (W3C Process を無視したごり押し) により XHTML 1.1 2eXHTML Basic 1.1 2eXHTML-Print 2eXHTML 1.0 3e と改定しようと PER を発行し、 撤回 (Rescind) されたことがありました >>71

[73] 撤回された PER には「撤回、使うな」と朱書きされています。 ただし当時の W3C Process >>72 にはW3C勧告以外の TR の撤回の制度がなく (今もありません)、W3C勧告用の撤回手続きが踏まれた形跡も見当たらず、 どのように撤回に至り、撤回されたことがどのような意味を持ったのかは、はっきりしません。 発行が不適切な手法で撤回も不適切な手法、というのでは笑うに笑えませんがw

[74] なおこれらの仕様書は改めて (懲りずに) 手順を踏んで開発が継続されました。 XHTML 1.0 3e 以外は W3C勧告となっています。

[75] W3C Process 改訂で廃止制度が創設されました >>60

[76] どうやらこれまで「supersedes」などと書いてあったのは、 ただそう書いてあるだけで、手続き上は特に意味を持っていないようです。 2e3e のような改訂版の W3C勧告すら、 古い版の W3C勧告を廃止するものではなかったようです (!)。 (そういった見かけ上は廃止されていそうなものも、廃止の提案に含まれています >>65。)

[77] WG が消滅して持ち主のいない W3C勧告は、 TAG廃止するか判断できるようです >>64。 そうでないものは開発元の WG が決めるようですが、 担当 WG が定まっているのか怪しいものもあるので、 どうなるのか注目されます。 例えば WPWGHTML 3.2XHTML Basic 1.1 などの廃止を提案しています >>65 が、HTML 3.2 は遥か昔の HTML ERB が開発したものですし、 XHTML Basic 1.1 は2007年 HTML WG と並立 (対抗) していた XHTML2 WG が開発したものです。どちらも WPWG の系譜に連ならないし、 憲章にも担当とは明記されていません >>78 (W3C はそうした管理的な事項を非公開情報としがちなので、 公にはなっていないものの実は XHTML2 WG 廃止時に引き継がれた、という可能性はありますが...)。

他の標準化団体での出版

[12] W3C勧告が他の標準化団体に提出されて標準として採用されたり、 他の標準化団体と同時に出版されたりすることもあります。

[13] PNGXML暗号化などは IETF でも RFC として出版されているものがあります。

[14] PNGISO/IEC でも国際標準として出版されているものがあります。

[15] WebCGMOASIS でも標準として出版されています。

[16] また一部のW3C勧告は翻訳されて JISJIS TR として出版されています。 ちなみに翻訳の質はお察しなので、公式・半公式の日本語版だとは思わない方が良いです。 JIS としての体裁を整えるための変更が特に断りなく入っているので、 惑わされないように原文を読むべきです。

[17] 出版された後の改訂の同期の状況は様々です。 IETF で出版されたものは出版後放置されているようです。 JISJIS TR で出版されたものは改訂されることもありますが、 年単位で遅れているようです。

実情

[18] W3C勧告であることにはそれなりのネームバリューがあるようですが、 W3C勧告となったからといって普及するとは限りません。

[19] 例えば PICSXML 1.1WebCGMDOM3 ValidationXML EventsXForms など W3C勧告となって数年経っても市場から事実上無視された状態のものは多々あります。

[40] W3C勧告W3C の手続きに従い最終的に W3C Director が承認すれば発行されます。 W3C Member がすべて同意、支持しているとは限りませんし、 積極的に反対していた場合もあります。

[41] Pointer Eventslongdesc は有力企業や主要なWebブラウザーの開発者が反対を表明していましたが、 賛成派が押し切って W3C勧告となっています。

[20] また W3C勧告の仕様書の記述と実装が一致しているとは限りません。

[25] HTML4 はついに完全に実装されることはありませんでした。

[21] CSS 2.0DOM3 Core のように仕様と実装に大きな乖離があり、 後に改訂版が作られることとなったものがいくつもあります。 W3C勧告という“お墨付き”を得た仕様書の存在が却って混乱を招いている場合もあります。

[43] W3C勧告となる前に実装報告が必要ですが (旧 Process における CRPR)、 その判断に客観性はなく、強引にでも体裁を整えれば通過させることができるようです。 従ってW3C勧告であるかどうかと実装可能性には関係はありません。

[44] XHTML Basic 1.1実装報告には、 「XHTML Basic 1.1 には対応していないのでテストを書き換えたら、 テストを通過した」との驚くべき記述があります。

inputmode も参照。

[45] HTML 5.0W3C勧告化の際にはテストが不十分との意見もありましたが、 スケジュール優先で黙殺されました。 (元々 HTML5編集者だった Ian Hicksonテストの整備と実装で10年は必要だと言い続けていましたが、 W3C は無視して短いスケジュールを提示していました。)

[58] 仕様書W3C勧告となるためには W3CACDirector の承認が必要なことになっていますが、まともに読んで中身を評価しているとは思えない形式的 (あるいは政治的) な手続きでしかないようです。

[59] 一度でも通読すれば気づくレベルの重大なミスがいくつも発見される杜撰な HTML 5.1 W3C勧告については HTML 5.1HTML 5.2 を参照。

[22] W3C勧告が最新の仕様書とも限りません。

[23] CSS 2.0 が実態と大きくかけ離れていることから、 CSS 2.1 が開発されましたが、 W3C勧告となるまで数年かかりました。その間 CSS 2.0 が最新のW3C勧告でしたが、最新の CSS 2.1 ではなく CSS 2.0 を参照するのは誤りと考えられていました (が CSS 2.0 を参照して混乱する人が後を絶ちませんでした)。

[28] CSS 2.1 の大部分は既に CSS3 モジュール仕様書群により改訂されていますが、 CSS 2.1 だけを見ても気づかないこと、 CSS3 モジュールの多くが W3C勧告ではないことから、 CSS 2.1 を参照して混乱する人が少なくありません。

[30] その後2014年12月付けで、 CSS 2.1 はメンテナンスされておらず、 より新しい CSS 2.2 ED を参照するべきである旨が CSS 2.1 勧告に追記されています >>31。 (そうはいいつつ正誤表には 2015年7月にも追記がありますが >>32。。。) ちなみに CSS 2.2 は未だ WD すら出版されていない状態であり、長年 CRLC を繰り返しながらも CSS 2.0 勧告を有名無実化させていた CSS 2.1 に続いて CSS 2.2 もまた W3C Process の破綻を象徴する形となっています。

[24] CORSW3C勧告となった時点で既に数ヶ月遅れの古いスナップショットでした。

[33] HTML 5.0W3C勧告となった時点から遡って何年も前の HTML Standard から派生し、 W3C 独自の編集を数多く加えたものでした。 WHATWG のみならず W3C 自身も HTML 5.1WD を発行しており、 HTML 5.0W3C勧告の“スタンプを押す”以外の意味がまったくありません。

[39] W3C勧告Web Notifications は、 WHATWGNotifications Standard の相当古い版です。市場から支持されずに Notifications Standard から削除された機能が、 W3C勧告には残っています。 W3C もその事実は認識していて注記をしていますが、 なぜか削除していません。つまり W3C勧告に従ってその機能を実装すると、 市場の動きと反する製品になってしまいます。 W3C がなぜ相互運用性を損なおうとしているのか理解不能です。

[35] 一般的には W3C勧告W3C Process 上の技術仕様の「完成形」 と思われていますが、未解決の問題が残ったまま W3C勧告となることもあります。

[37] W3C DOM4 は、深刻な未解決問題に関する「警告」が掲載された状態で W3C勧告となっています。

[26] W3C勧告の出版後、開発を担当した WG が解散し、 メンテナンスされなくなることは普通です。正誤表ページが用意されることになっていますが、 開発担当 WG がなくなればその中身は空のまま放置されます。

[27] P3PXML EventsGRDDL などは放置されているようです。 XPointer も実質的には放置されているようです。

[42] HTML 3.2DOM1 は最早誰も使っていませんし、 記載されている内容は現実とも完全に乖離していますが、 正誤表も更新されず廃止もされず放置されています。

翻訳

[54] いくつかのW3C勧告日本語その他の言語翻訳されています。

[55] しかし品質がそれほど高くなかったり、 古い版だけ翻訳されていて最新版が翻訳されていなかったりします。 あるいは、 W3C勧告自体が古い版で、本来はより新しい ED を参照するべきなのに、 W3C勧告しか翻訳されていなかったりします。

[57] ほとんどの翻訳版の読者は、こうした事情を知らないでしょうし、 当然翻訳内でも説明されていません。

メモ

[34] XQuery 1.0 and XPath 2.0 Functions and Operators (Second Edition) ( 版) <http://www.w3.org/TR/xpath-functions/>

Note: This paragraph is informative. This document is currently not maintained. This document remains available on the W3C's Technical Report web page for reference and use by interested parties. Readers are advised that no further maintenance (including correction of reported errors) is planned for this document. Readers interested in the most recent version of the XQuery and XPath Functions and Operators specification are encouraged to refer to http://www.w3.org/TR/xpath-functions-3/.

[62] Steven Pemberton () <http://homepages.cwi.nl/~steven/>

XForms 1.0 is a W3C recommendation; it was the most implementated W3C specification at time of going to recommendation ever!

[63] これは XForms がすごいんじゃなくて、W3C勧告がしょぼいんやで(小声)

[79] RE: Notice of CFC: Make previous versions of HTML and XHTML obsolete (Katie Haritos-Shea GMAIL著, ) <https://lists.w3.org/Archives/Public/public-webapps/2017JulSep/0009.html>

HTML 5.0 is only 3 years old and 5.1 is less than 1.

[80] HTML最新版よりずっと古い HTML 5.2 よりもっと古い HTML 5.1 やそれよりとても古い HTML 5.0廃止されることに、 なんでこんなに反対する人々がいるのか謎だ。「たった3年」 ってドッグイヤー換算しなくても相当に昔だと思うんだけど。。。

[81] Re: Propose "Obsolete" status for CORS spec (Mark Nottingham著, ) <https://lists.w3.org/Archives/Public/public-webappsec/2017Aug/0000.html>

[82] Proposal to Republish Previous Versions of HTML and XHTML as Obsolete Recommendations (Wide Review until 2017-09-07) (Xueyuan著, ) <https://lists.w3.org/Archives/Public/public-review-announce/2017Aug/0004.html>

[83] Proposal to Republish Previous Versions of HTML and XHTML as Obsolete Recommendations | W3C News () <https://www.w3.org/blog/news/archives/6459>

[84] Introducing HTML 3.2 () <https://www.w3.org/MarkUp/Wilbur/>

HTML 3.2 was superseded by HTML 4.0 in December, 1997.

[85] Re: Obsoleting (Michael Champion著, ) <https://lists.w3.org/Archives/Public/public-w3process/2016May/0059.html>

[86] World Wide Web Consortium Process Document () <https://www.w3.org/2018/Process-20180201/#rec-rescind>

A Recommendation can be declared Superseded.