web-dev-qa-db-ja.com

HTML5:W3C対WHATWG。最も信頼できる仕様はどれですか?

私はhtmlパーサーの途中にいて、html5が定義されている明示的に構文解析の経験則が正しく形成されたhtml(そして、私はかつてDTDからそれらを推測するために、ため息をつく)

私はその事実を愛していますが、html5がまだ完成していないこと(また、完成するのではないかと思います)であり、W3CではなくWHATWGによって開発されていることを知っています。

提示された必要な仕様を検索すると、

または

セクション番号がなかった場合、それらは単純に同じになるように誘導します。しかし、番号が違うので不思議に思います。 どのバージョンがおそらく最も信頼できるものですか?

WHATWGにはより多くのセクションがあり、W3Cがその推奨候補をアップロードして以来、に追加されたようです

W3CはWHATWGバージョンに更新されますか?
または、公式の推奨ステータスになるまで、現在の候補者に固執しますか?

疑わしいときに、私たちの貧しい悪魔が従うはずのHTML5仕様はどれですか?

53
ZJR

それはあなたが誰に尋ねるかによる。本当に。これの政治は醜いです。さらに悪いことに、仕様はまだ完全に安定していません。 セクション1.1.1 には、解析については記載されていないため、解析セクションでは2つの仕様はほぼ同じであると考えていました。しかし、その後、Webの差分を作成したところ、テキストに微妙な違いがあることがわかりました。仕様を実際に実装している場合は、公開メーリングリストを使用して、仕様間で見られる違いについて関係者と話し合うことになります。とにかく、はっきりと答えられないのが残念です。

25
Gaurav

常にW3Cより[〜#〜] whatwg [〜#〜]を選択してください。例外はありません。

Anne van Kesteren、(WHATWGおよびW3Cバージョンが分岐する前のHTML仕様への主要な貢献者であり、WHATWG仕様への主要な貢献者であり続けるWHATWGメンバー) WHATWGとW3Cの間の現在の状況について、彼の blog で次のように説明しています。

W3C[WHATWG]HTML標準を分岐しましたn回。いつものように、それはかなり悲惨です:

  • ドキュメントのすべてのGit履歴を消去しました。
  • 彼らがどのように文書を変換したかを文書化しなかった。ミスマッチの問題はすでに報告されており、このプロセスに起因するすべてのバグが開かれていないため、明らかになるまでに長い時間がかかる可能性があります。
  • より広いコミュニティと計画について話し合いませんでした。
  • 彼らが分岐していた人々と計画について話し合いませんでした。
  • W3C Webプラットフォームワーキンググループのメンバーと計画について話し合うことさえしませんでした。
  • 謝辞のセクションを削除しました。
  • 著作権とライセンス情報を削除し、独自のものに置き換えました。

2019:いよいよ戦争が終わりました

2019年5月28日、W3CとWHATWGは、HTMLおよびDOM仕様の単一の信頼できるバージョンで協力することで合意に署名しました。

W3Cの声明 によると、両当事者は次の条件に達しています。

  • W3CとWHATWGは、WHATWGリポジトリのHTMLとDOMで連携して、Living Standardと勧告/レビュードラフトスナップショットを作成します
  • WHATWGはHTMLおよびDOM Living Standardsを維持しています
  • W3Cは、WHATWGリポジトリーでのコミュニティー作業を直接促進します(コミュニティーの橋渡し、ユースケースの開発、問題の提出、テストの作成、問題解決の仲介)
  • W3Cは、HTMLとDOMに関連する指定された仕様のリストの独立した公開を停止し、代わりにWHATCレビュードラフトをW3C勧告に移行するように働きます
35
Chiru

WHATWG HTMLの編集者からの偏った回答はこちら。うまくいけば、事実は彼ら自身のために話すことができます。

WHATWG Living Standardは、信頼できると見なされるべきです。すべてのブラウザベンダーを含む、貢献者の大規模なコミュニティによる 絶えず取り組んでいます です。 W3C HTMLに従って実装するブラウザーベンダーはありません。 FirefoxやChrome=などの場合、これは公表されているポリシーの問題です。

WHATWG Living Standardは、常にバグ修正と新機能を受信して​​います。この仕様開発モデルの詳細については、最新のソフトウェア開発手法とより密接に一致している 「Living Standard」の意味は何ですか? を参照してください。

残念ながら、W3Cは時々私たちの仕事を自分のウェブサイトにコピーして貼り付け、それに自分のロゴを入れ、編集者の名前などを変更します。彼らはさまざまな理由でこれを行いますが、その最大の1つは、有料会員企業のための面倒です( これを述べた例 )。さらに悪いことに、彼らは「バージョン」(HTML「5.0」、「5.1」など)をリリースすることを好みます。これは、最新のバグ修正と検索結果ページを詰まらせる機能が欠けている古いバージョンであり、この非常に質問のような混乱を引き起こしています。私たちは現在 これらのフォークによって引き起こされる混乱を追跡しています であり、そのうちHTMLは1つだけです。

their issue tracker または this one などのコミットで、コピーアンドペーストジョブの進捗状況を追跡できます。このコピーアンドペーストジョブを実行しているときに発生するバグを見つけるのは楽しいゲームです。彼らは通常、コピーしているコンテンツを読んだり理解したりしていないため、広範なエラーや不整合を引き起こします。

24
Domenic

わかりました、私は最終的に自分の結論に達しました。それを共有します。

私はW3Cバージョンに従います:盲目的に。

政治的に言えばそれは単純な決定ではありません。説明させてください。

私はw3cに非常に懐疑的で、おそらく全体で彼らの根性を嫌いました[〜#〜] xhtml [〜#〜]議論/大失敗。 [〜#〜] whatwg [〜#〜]の上昇は、実用的な救世主の到来であることがわかりました。HTMLを堅固で厳密なXMLから派生させることができないことを公然と認めた人々言語、一方でインターネット全体nigh悩んでいます。

したがって、この観点からすれば、WHATWG仕様に準拠する必要があるのではないでしょうか。

いいえ。なぜですか。
WHATWGは公式バージョンを確立していません。私は彼らがやったことをちょっと望みますが、そうしません。

彼らは、バージョンが自分たちには堅すぎると感じています...hip態度としましょう。
代わりに、ライブ標準しかありません。 (そして主要なブラウザによる単一の機能の実装ステータスを追跡する)

しかし、私は主要なブラウザではなく、小さな実装者ですライブ標準を参照することはできません
まあ、私がそれに夢中になって、絶え間なくリリースしない限り、明日はないように。
(これは、FirefoxとChromeで起こっていることの一種です)

ですから、終わりのない熱狂を超えて、正気を選ばなければなりません。また、W3Cは仕様の洗練された番号付きバージョンを提供します。 そして、これらのバージョンのいずれかに準拠すると主張できます

6
ZJR

疑問がある場合は、実際のブラウザの動作と一致させるようにしてください。実際に重要なのはそれだけです。

一般に、WHATWGはおそらくW3Cよりも最新ですが、ブラウザーが(まだ)サポートしていないものも含まれている可能性があります。

W3Cは、特定の時点でWHATWGのスナップショットを作成し、それらを安定化させてから、変更することはできないと考えることができます。

  • W3C HTML5は2014年10月28日に完成しました。
  • W3C HTML5.1は2016年11月1日に完成しました。
  • W3C HTML5.2は現在「ワーキングドラフト」にあり、おそらく2019年まで確定されません。
2
Collin Anderson