HTML5: W3C против WHATWG.Что дает наиболее авторитетную спецификацию? - PullRequest
47 голосов
/ 26 июля 2011

Я на полпути через анализатор html и обнаружил, что html5 определил явно практические правила для разбора плохо сформированный html . (И я использовал их для вывода из DTD, вздох)

Мне нравится этот факт, но я хорошо знаю, что html5 еще не завершен (также мне интересно, будет ли он когда-либо) ичто он разработан не W3C, а WHATWG.

В поисках нужной мне спецификации мне представлен:

или

Если бы не номера разделов, я бы предположил, что они просто одинаковы.Но другая нумерация заставляет меня задуматься. Какая версия, предположительно, самая авторитетная?

У WHATWG, похоже, больше разделов, и она была добавлена ​​к с тех пор, как W3C загрузил свою рекомендацию кандидата.

Будет ли W3C обновляться до версии WHATWG?
Или они будут придерживаться своего текущего кандидата, пока он не достигнет официального статуса рекомендации?

Какие спецификации html5 мы, бедные дьяволы, должныследите, если сомневаетесь?

Ответы [ 5 ]

34 голосов
/ 25 января 2016

Всегда выбирайте WHATWG над W3C, без исключений.

Анн ван Кестерен , (член WHATWG, который до этого внес основной вклад в HTML-спецификациюверсии WHATWG и W3C расходятся, и кто остается основным вкладчиком в спецификацию WHATWG) описывает текущую ситуацию между WHATWG и W3C следующим образом в своем блоге :

W3C разветвляется [WHATWG] Стандарт HTML в n -й раз.Как всегда, это довольно катастрофично:

  • Стерли всю историю Git документа.
  • Не документировали, как они преобразовали документ.О несоответствиях уже сообщалось, и, вероятно, пройдет много времени, если вообще когда-нибудь, прежде чем будут обнаружены все ошибки, связанные с этим процессом, поскольку он не был открыт.
  • Не обсуждал планы с более широким сообществом.
  • Не обсуждал планы с людьми, от которых они забирались.
  • Даже не обсуждал планы с членами Рабочей группы W3C по веб-платформе.
  • Стерли раздел благодарностей.
  • Стерли информацию об авторских правах и лицензировании и заменили ее собственной.

2019: Война наконец-то окончена

28 мая 2019 г.W3C и WHATWG подписали соглашение о сотрудничестве по единой, авторитетной версии спецификаций HTML и DOM.

Согласно заявлению W3C , обе стороны пришли к следующим условиям:

  • W3C и WHATWG совместно работают над HTML и DOM, в репозиториях WHATWG, чтобы создать Живой Стандарт и Рекомендацию/ Просмотрите черновые снимки
  • WHATWG поддерживает стандарты жизни HTML и DOM
  • W3C облегчает работу сообщества непосредственно в репозиториях WHATWG (объединение сообществ, разработка сценариев использования, регистрация проблем, написание тестов, проблема посредничестваразрешение)
  • W3C прекращает независимую публикацию указанного списка спецификаций, связанных с HTML и DOM, и вместо этого будет работать над передачей черновиков WHATWG в Рекомендации W3C
25 голосов
/ 26 июля 2011

Это зависит от того, кого вы спрашиваете.В самом деле.Политика этого безобразна.И что еще хуже, спецификации еще не полностью стабильны.Я бы подумал, что эти две спецификации будут в значительной степени одинаковыми в своих разделах синтаксического анализа, поскольку раздел 1.1.1 , в котором перечислены различия, не упоминает синтаксический анализ.Но затем я сделал веб-различие и увидел, что в тексте есть тонкие различия.Я бы сказал, что если вы на самом деле реализуете спецификацию, чтобы поговорить с заинтересованными игроками о любых различиях между спецификациями, используя публичные списки рассылки.Во всяком случае, извините, я не могу дать вам четкий ответ.

24 голосов
/ 29 марта 2017

Пристрастный ответ от редактора WHATWG HTML здесь. Надеюсь, что факты могут говорить сами за себя.

Уровень жизни WHATWG следует считать авторитетным. Он постоянно работает над большим сообществом участников, включая всех поставщиков браузеров. Нет поставщиков браузеров, реализующих в соответствии с W3C HTML; для некоторых, таких как Firefox и Chrome, это вопрос публично заявленной политики.

WHATWG Living Standard постоянно получает исправления ошибок и новые функции. Для получения дополнительной информации об этой модели разработки спецификаций, которая более точно соответствует современным практикам разработки программного обеспечения, см. Что означает «Уровень жизни»? .

К сожалению, W3C иногда копирует и вставляет нашу работу на свой собственный веб-сайт, размещает на ней собственный логотип и меняет имена редакторов и тому подобное. Они делают это по разным причинам, одна из крупнейших из которых - спасение лица ради компаний, которые их платят ( пример того, как они заявляют ). Что еще хуже, им нравится выпускать «версии» (например, HTML «5.0», «5.1» и т. Д.), Которые являются просто устаревшими версиями, в которых отсутствуют современные исправления ошибок и функции, которые забивают страницы результатов поиска, вызывая путаницу, как этот вопрос. В настоящее время мы отслеживаем путаницу, вызванную этими вилками , из которых только один HTML.

Вы можете отслеживать их прогресс в задании копирования и вставки в их системе отслеживания проблем или в таких коммитах, как в этом . Это забавная игра, позволяющая обнаруживать ошибки, которые они вносят при выполнении задания копирования и вставки, поскольку они, как правило, не читают и не понимают содержимое, которое копируют, что приводит к распространенным ошибкам и несоответствиям.

6 голосов
/ 26 июля 2011

Хорошо, я в конце концов пришел к своему собственному выводу, и я поделюсь им.

Я буду следить за версией W3C: вслепую.

С политической точки зрения это не простое решение. Позвольте мне объяснить.

Я очень скептически относился к w3c, и, возможно, даже ненавидел их кишки в течение всего XHTML дебаты / поражения. Я видел подъем WHATWG как приход наших прагматических спасителей: людей, которые открыто признал, что HTML нельзя превратить в жесткий, строгий, основанный на XML язык, в то время как весь интернет беспокоит почти об этом.

Итак, учитывая эту точку зрения, я должен использовать спецификацию WHATWG, не так ли?

Нет. Почему?
WHATWG не устанавливает официальные версии . Я бы хотел, чтобы они это сделали, но они этого не делают.

Они чувствуют, что версии слишком жесткие для их ... скажем, бедра отношения.
Вместо этого они имеют только живой стандарт . (и отслеживать состояние реализации любой отдельной функции в основных браузерах)

Но я не крупный браузер, я маленький разработчик, Я не могу сослаться на живой стандарт .
Ну, нет, если я не схожу с ума по этому поводу и не выпускаю постоянно , как будто завтра нет.
(это то, что происходит с Firefox и Chrome)

Так что из-за бесконечного безумного безумия я должен выбрать здравомыслие. И W3C предлагает полированные и пронумерованные версии спецификации. И я могу претендовать на соответствие одной из этих версий .

2 голосов
/ 10 сентября 2016

Если сомневаетесь, попытайтесь соответствовать поведению реальных браузеров. Это все, что на самом деле имеет значение.

В целом, WHATWG, вероятно, более актуален, чем W3C, хотя он может включать в себя больше вещей, которые браузеры не поддерживают (пока).

Вы можете думать о W3C как о том, что вы делаете снимки WHATWG в определенные моменты времени, стабилизируете их, а затем укрепляете их, никогда не меняя.

  • W3C HTML5 был завершен 28 октября 2014 года.
  • W3C HTML5.1 был завершен 1 ноября 2016 года.
  • W3C HTML5.2 в настоящее время находится в "рабочем проекте" и, вероятно, не будет завершен до 2019 года.
...