HTML5: W3C против WHATWG. Что дает наиболее авторитетные спецификации?



Я нахожусь на полпути через HTML-парсер и нашел html5, определяющийявно эмпирические правила для разбораплохо сформированного html . (и я привык выводить их из DTDs, вздыхаю)



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



В поисках нужной мне спецификации я получил:




Или




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



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



Будет ли W3C обновляться до версии WHATWG?

Или они будут придерживаться своего нынешнего кандидата, пока он не получит статус официальной рекомендации?



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

579   5  

5 ответов:

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

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

Anne van Kesteren , (член WHATWG, который был основным участником спецификации the до того, как спецификации WHATWG и W3C разошлись, и который остается основным участником спецификации WHATWG) описывает текущую ситуацию между WHATWG и W3C следующим образом в своем блоге :

В консорциума W3C имеет раздвоенный [WHATWG как средство] стандарте HTML для Пй раз. Как всегда, это довольно катастрофические:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Comments

    Ничего не найдено.