По двум комментариям к вчерашней статье про второе рождение HTML я понял, что существуют большие опасения, вызванные непониманием, что это за "новый" язык такой.

Опасения выражаются так:

&%$. Зоопарк форматов всё множится и множится…

и так:

т.е. велкам ту “dark ages” - огромные траблы с парсингом и монстроподобные регулярки, досвидания expat & elementree & xpath & xslt &

На самом деле, ничего такого не будет, и этот самый "новый" HTML далеко не такой новый.

Но сначала я напомню, в чем была идея XHTML. У нас есть веб, где после оголтелой конкуренции браузеров царствует странная штука под названием HTML 3.2, которую никто не знает, как парсить. Причем, относительная доля сложностей, сязанных с "мягкостью" синтаксиса не идет ни в какое сравнение со сложностью, возникающей от того, что браузеры пытаются, каждый на свой манер, поправлять синтаксические ошибки верстки. Это важно понимать.

HTML превратился в "tag soup" из-за полностью неопределенных браузерных алгоритмов исправления ошибок верстки.

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

Соответственно появляется XML-вариант синтаксиса, в котором обработка ошибок перенимается из строгих правил XML. Обработка очень простая: любая ошибка синтаксиса фатальна и невосстановима.

К сожалению, эта — очень здравая — идея страдала одним минусом: парсеры — маленькие, быстрые и надежные — не были обратно совместимы с существующим контентом. Поэтому эта идея не сработала.

И на данный конкретный исторический момент у нас как раз и есть тот самый зоопарк из языков и реализаций:

HTML5

Новая идея, с которой в свое время выступила WHAT WG, заключается в том, чтобы главную проблему — неопределенные правила обработки HTML, включая восстановление из синтаксических ошибок — решить по-другому: определить эти правила наконец.

Эта чудовищная по сложности работа была проделана за прошедшие 3 года в WHAT WG. Были детально разобрано и четко описано реальное поведение браузеров относительно синтаксиса, отношения с DOCTYPE'ами, генерации DOM'а и разбора темного леса доDOM'ного javascript'а вроде document.write.

И разработчикам теперь предлагается такой HTML5:

По-моему, это что угодно, но не зоопарк :-)

Комментарии: 45

  1. Dark-Demon

    восстановление из синтаксических ошибок — решить по-другому: определить эти правила наконец.

    они реально надеются предусмотреть вообще все ошибки? желаю удачи....

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

    могу привести аналогию: проектировщик здания нарисовал какую-то хрень (верстальщик), комиссия не смотря приняла (транзитные сервера), рабочие (браузер) начали строить и в процессе строительства начинают перепланировку здания, ибо нарисованное стоять не может, начинают делать подпорки в критических местах, делать двери в глухих комнатах и пр...

  2. Dark-Demon

    предлагаю whatwg пойти дальше и убрать вообще какие-либо ошибки у программ... ОС должна угадывать, что имел ввиду программист, когда писал эту ахинею!

  3. koder

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

    Больше 4 лет пишу коммерческий софт, который
    преобразует web публикации(статьи,таблицы,etc) в
    удобоваримую для просмотра и анализа форму
    (Excel + OO в последнее время).
    Это на счет "никогда не изучавшие вопрос".
    Хотя если камень был в сторону незнания HTML5 то
    это правда - первый раз прочитал здесь.

    На некоторых сайтах безнадежно "умирает" даже
    tidylib - их можно парсить или Explorer-COM или
    ctypes + mozilla engine. Первый вариант
    монстроидный а второй (для Linux решений) похож на кошмар.

    Количество таких сайтов за три года
    под давление XHTML заметно сократилось.
    Теперь, я так понимаю, усе вернется "на круги
    своя". А весь сегодняшний "зоопарк" так и
    останется только к нему еще добавится HTML5.

    референсная библиотека (html5lib) c набором юнит-тестов
    четкие правила обработки старого контента
    детально описанные новые фичи, сильно совместимые с текущими браузерами

    Ну и что? Неужели Вы думаете что все кто
    игнорировали XHTML W3C стандарт теперь обратят
    хоть какое-то внимание на ЭТО?

    Да ни разу. Я имею ввиду что эта html5lib будет
    просто неспособна(IMHO) распарсить то что многие
    "спецы" нагенерят (а особенно то что уже
    нагенерили), что сведет ее применимость к
    применимости expat для парсинга сегодняшнего
    WEB. Либо она будет называтся "С интерфейс к
    MS IE6/7 COM".

    Тесты на HTML-valid давно
    есть и они дают весьма подробный отчет о
    результатах, но их весьма успешно игнорировали.
    И PHP & Co как и раньше будут работать по
    принципу "в IE работает - и гут", ну может
    Mozilla к списку добавят некоторые.

    По поводу того что все W3C игнорировали. B MS и Borland долгое время создавали C++ компиляторы
    так же похожие на ANSI/ISO стандарт как страус
    на орла, но ниче - подергались-подергались и
    успокоились - счас даже в Builder'e можно так-се
    покомпилить тяжелый код. А вот W3C в итоге
    показала свою несостоятельность.

  4. Иван Сагалаев

    Это на счет “никогда не изучавшие вопрос”.

    Нет, то не к Вам было :-). Это собирательный образ, и Вы как раз, мне кажется, к нему не относитесь, комментарии читаю с интересом.

    Количество таких сайтов за три года
    под давление XHTML заметно сократилось.

    Нет, не под давлением XHTML. Это пропагандистская работа сделал свое дело, а XML'ная велл-формедность никогда не работала (из-за IE).

    Теперь, я так понимаю, усе вернется “на круги
    своя”.

    Я не думаю. HTML5 ведь не разрешает ошибки. Напротив, нынешняя замена валидатору (conformance checker) отлавливает даже больше ошибок. И кривая страница с точки зрения HTML5 — это кривая страница и есть. Только теперь он четко говорит, что с ней делать в этом случае.

  5. Tema

    Странно, почему все умалчивают одну деталь:
    HTML5 должен быть обратно совместим с HTML4, это должно выражаться не только в поддержке его тегов, но и в способе его отображения браузерами.

    Получается, что HTML5 будет принимать за стандарт то, как странички показывает IE6/7? Или HTML5 будет устанавливать новые правила отображения и отпадет обратная совместимость?

  6. Иван Сагалаев

    Обратная совместимость HTML5 с HTML4 касается только парсинга текста и создания из него DOM-дерева элементов. С пособ отображения тут вообще не участвует. Это — епархия CSS, и здесь мы пока остаемся со всем набором хаков, который есть сейчас, и котороые научились использовать.

    HTML5 не берется "чинить" веб, это, как показала практика, нереально. Он берется строить новые вещи на четкой базе.

  7. Tema

    Обратная совместимость HTML5 с HTML4 касается
    только парсинга текста и создания из него
    DOM-дерева элементов.
    Собственно в этом и проблема.

    Какое дерево будет построено для куска:

    ...
    

    С учетом того, что форма внутри таблицы это очень распространенная ошибка.

    И как поступать в случае с пропущенными тегами?

    HTML5 не берется “чинить” веб, это, как
    показала практика, нереально. Он берется
    строить новые вещи на четкой базе.
    Не хотелось бы плеваться желчью, но в качестве базы мы как раз и тащим все проблемы, которые накопились за это время.

  8. Maximbo

    HTML5 не берется “чинить” веб, это, как показала
    практика, нереально. Он берется строить новые вещи на
    четкой базе.

    Интересно, как они собираются проталкивать эту чёткую базу в умы программистов того же IE? Если бы не эта маленькая деталь, давно бы уже пользовались чётким XHTML. А броузер сам бы давал по ушам любителям развязности.

    К тому же, XHTML заведомо шустрее своего старшего собрата. Зачем же создавать ещё одного монстрика?

  9. Иван Сагалаев

    Интересно, как они собираются проталкивать эту чёткую базу в умы программистов того же IE?

    А база как раз и строится с учетом его текущего поведения, как самого популярного браузера. Через весь стандарт можно заметить один и тот же паттерн: "это пишется так-то; если оно написано не так, то это ошибка; в этом случае нужно делать как текущие браузеры (то есть как IE); IE делает это так-то".

    Разработчики IE, между тем, в 7-й версии показали, что они хотят исправить браузер. Но также они и заявляли, что "простите, но Microsoft не будет гоняться за разными непонятными стандартами". И вот здесь позиция W3C как раз является залогом того, что у нас будет таки один нормальный стандарт.

  10. Maximbo

    Итоги таковы (поправьте если что не так):

    Плюсы:
    * Открытость разработки;
    * Наличие тестовой реализации;
    * Поддержка производителями броузеров;
    * Совместимость со старым вебом (в отличии от XHTML);
    * Вклад в разработку ресурсов w3c;
    Минусы:
    * Тормознутость любого парсера HTML;
    * Сложность его реализации;
    * Смена "политики партии" вызывает массу недовольства и недоверия (психологический аспект);
    * В отличии от XHTML, HTML не заставит верстальщиков исправлять свои ошибки (работает и ладно);
    * Стандарт более-менее прочно привязан к броузеру компании-монополиста, чем дяди с баксами в глазах не постесняются воспользоваться;

  11. FX Poster

    Я бы задумался над пунктами:

    В отличии от XHTML, HTML не заставит верстальщиков исправлять свои ошибки (работает и ладно);
    Стандарт более-менее прочно привязан к броузеру компании-монополиста, чем дяди с баксами в глазах не постесняются воспользоваться;

    Почему вы считаете это недостатками?

  12. Иван Сагалаев

    В отличии от XHTML, HTML не заставит верстальщиков исправлять свои ошибки (работает и ладно);

    Мне отчего-то кажется, что большинство верстальщиков проверяли ошибки XHTML-сайтов не well-formed парсерами, а W3Cшным валидатором. Поэтому здесь разницы между синтаксисами нет: если есть, чем проверять (а оно есть), то будут проверять. Привыкли :-)

  13. Зверёк Харьковский

    Минусы:
    ...
    * В отличии от XHTML, HTML не заставит верстальщиков исправлять свои ошибки (работает и ладно);

    Вот это мне например, кажется не минусом, а наоборот, плюсом. Собственно, той причиной, по которой любая кухарка может слабать страничку.

    Т.е. принцип максимальной либеральности в отношении входных данных обязан работать (я считаю, к примеру, что одна из причин небыстрого распространения SVG - именно XML-ные драконовские правила обработки ошибок).

  14. [...] дискуссию о верности такого решения, и последующий разъяснительный пост о том насколько это все правильно и во [...]

  15. [...] же склоняюсь к тому что бы несколько перефразировать комментарий [...]

  16. Maximbo

    FX Poster: по первому пункту: это необходимо для создания страниц, облегчающих их машинную обработку. Проще обработать -> проще реализовать -> богаче выбор софта и больше специализированных парсеров -> вкалывают роботы, а не человек :)

    По второму: ни один общественный стандарт не должен зависеть от реализации, тем более коммерческой. Это способствует монополизации, что само по себе очень плохо.

    Иван Сагалаев: я о том, что приятно, когда система сама указывает на жуков, не давая им даже возможности добраться до ничего не подозревающего конечного пользователя.

    Зверёк Харьковский: кто от этого выиграет, кроме кухарки? И кто проиграет?

  17. FX Poster
    • Для машин у нас был, есть и, похоже, будет XML
      • Если страница будет правильная - она будет обрабатываться правильно. Если не правильная - будет обрабатываться, как в IE. Вам лучше, чтобы если страница была немного неправильная - то у вас во всех браузерах было все по разному?
  18. FX Poster

    Да, Иван, а откуда взялся вообще этот валидатор?

  19. Иван Сагалаев

    Его написал Henri Sivonen, один из активных участников WHAT WG.

    Только технически это не валидатор. Термином "валидация" называют проверку документа на соответствие некому декларативному набору правил. Для HTML4 и XHTML1 для этого использовался "язык" DTD, который достаточно убог. А эта штука во-первых проверяет валидность по "языку" Relax NG, который гибчем DTD, а во-вторых, кроме валидности проверяет еще и другие критерии соответствия стандарту, которые в принципе можно проверить машинно. Поэтому она лучше.

  20. Maximbo

    Для машин у нас был, есть и, похоже, будет XML

    Эту страницу я предпочёл отдать на растерзание машине. Вы, скорее всего, тоже. Машина большая, потому что ей приходится поддерживать множество условностей, упрощающих документ для просмотра людскими глазками. Большинство людей голый HTML не читают. И не пишут. И вообще, markdown рулит ;)

    Если страница будет правильная - она будет
    обрабатываться правильно. Если не правильная -
    будет обрабатываться, как в IE. Вам лучше, чтобы
    если страница была немного неправильная - то у
    вас во всех браузерах было все по разному?

    Тот пункт был скорее из разряда FUD :) За неимением более подходящего предложения даже и не думал спорить "лучше/хуже". Как обычно, поживём, увидим, прочувствуем.

  21. Murkt

    они реально надеются предусмотреть вообще все ошибки? желаю удачи…

    Не понимаю, что здесь такого. Браузеры ведь определяют все ошибки, почему стандарт не может этого сделать? Тем более, что как раз этот стандарт делают разработчики браузеров. И его делают уже три года.

    Я имею ввиду что эта html5lib будет просто неспособна(IMHO) распарсить то что многие “спецы” нагенерят (а особенно то что уже нагенерили), что сведет ее применимость к применимости expat для парсинга сегодняшнего WEB.

    Если html5lib не сможет - то и браузеры не смогут. Любой проверит страницу на отображение хотя бы в одном браузере.

    И PHP & Co как и раньше будут работать по принципу “в IE работает - и гут”, ну может Mozilla к списку добавят некоторые.

    Ещё раз обращу внимание, что если в Мозилле проверять будут (а Gecko сейчас удерживает почти 20%, АФАИР), то и стандарт выполнять будут. Да и MS всё-таки сдвинулась с мёртвой точки.

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

  22. Александр Вольф

    А база как раз и строится с учетом его текущего >поведения, как самого популярного браузера. Через >весь стандарт можно заметить один и тот же >паттерн: “это пишется так-то; если оно написано >не так, то это ошибка; в этом случае нужно делать >как текущие браузеры (то есть как IE); IE делает >это так-то”.

    Это очень, очень плохо. Зачем ориентироваться на стандарты прошлого века?

    Разработчики IE, между тем, в 7-й версии >показали, что они хотят исправить браузер. Но >также они и заявляли, что “простите, но >Microsoft не будет гоняться за разными >непонятными стандартами”. И вот здесь позиция >W3C как раз является залогом того, что у нас >будет таки один нормальный стандарт.

    Как-то весьма странно они показали свое желание. У меня лично сложилось такое впечатление:

    "Сунулись в давно забытую поделку, посмотрели
    код, почесали репу - нихрена не понятно. Для
    создания нормальной версии браузера нужно
    полностью переписать код движка, а это ломает.
    И вообще - несолидно Microsoft что-то мелкое переписывать.
    А юзер он быдло - ему и так сойдет - сами под
    нас прогнутся."

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

    P.S. Время от времени так и подмывает забить на этот IE вообще и показывать эго пользователям, что IE unsupported browser. Please use modern browser for surfing.

  23. Иван Сагалаев

    Это очень, очень плохо. Зачем ориентироваться на стандарты прошлого века?

    Что значит "ориентироваться"? Оно служит только как ориентир реакции на ошибки, и это единственный правильный выбор. Но сам стандарт же не призывает делать ошибки, это же нонсенс :-). Напротив, стандарт определяет, как писать HTML (или XHTML) без ошибок. В отличие от старой идеологии, которая HTML объявляла "ошибочным по определению".

  24. Александр Вольф

    Что значит “ориентироваться”? Оно служит только как ориентир реакции на ошибки, и это единственный правильный выбор. Но сам стандарт же не призывает делать ошибки, это же нонсенс :-). Напротив, стандарт определяет, как писать HTML (или XHTML) без ошибок. В отличие от старой идеологии, которая HTML объявляла “ошибочным по определению”.

    А то и значит, что сейчас IE самый распространенный браузер, а через 5 лет про него уже никто и не помнит - переписывать стандарты? По мне так лучше XML-нотация - накосячил, хрен тебе а не показ страницы до тех пор, пока не исправишь таблицы. Вот тут уже привели очень яркий пример во что может вылиться попустительство к написанию кода.

    P.S. Если честно, то я с большим трудом понял, что там толковал Mr... - он человеческих языков-то не знает, а еще в нечеловеческие полез. И писалО оно в редакторе каком-то. Моя личная рекомендация для него: сменить мозги. И таких вот "крутых вебмастеров" еще туева хуча!

  25. Murkt

    Если честно, то я с большим трудом понял, что там толковал Mr… - он человеческих языков-то не знает, а еще в нечеловеческие полез. И писалО оно в редакторе каком-то. Моя личная рекомендация для него: сменить мозги. И таких вот “крутых вебмастеров” еще туева хуча!

    McRuslik вроде. По-моему, как раз о таких беспокоиться не надо (ну разве что о том, что они портят генофонд человечества), всё равно его странички никто ни парсить, ни глазами смотреть не будет: полезного контента он делать точно не может.

  26. Иван Сагалаев

    А то и значит, что сейчас IE самый распространенный браузер, а через 5 лет про него уже никто и не помнит - переписывать стандарты?

    Нет, так не будет. Стандарт не привязывается к развитию IE, он фиксирует текущее статус-кво, а то, что это соответствует IE — просто текущий факт. Но новый контент не будет писаться по этим правилам. Не даст валидатор, не даст пропаганда и не даст общий уровень веб-разработки, который с тех пор вырос. И Microsoft не будет специально делать кривой браузер.

    По мне так лучше XML-нотация - накосячил, хрен тебе а не показ страницы

    Предлагаете еще пяток лет уговаривать себя, что это "вот уже скоро будет"?

    Вот тут уже привели очень яркий пример во что может вылиться попустительство к написанию кода.

    У того комментатора та же ошибка, что и у Вас: вы считаете, что синтаксис языка попустительствует к написанию коду. Это не так, язык не может никого ни к чему принудить, что очень явно показал тот же IE, который спокойно обрабатывает XHTML по HTML'ным правилам.

    Поэтому суть нового стандарта в том, что он хорошо написан, и дает браузерам возможность физически реализовать его правильно, чего не делал XHTML, потому что правильная реализация его убивала рыночные перспективы браузера, и никто на это не пошел. А синтаксис — второстепенный вопрос, это надо понять...

  27. Kirill Mavreshko

    А я вот чего не пойму - почему никто не ноет, что в синтаксисе, скажем, Java, ему приходится ставить запятые между параметрами методов и завершать строки знаком ";". Казалось бы, давайте возмутимся, почему это Java сама за нас не додумывает что мы имели в виду?!! А если кто-то среди программистов начнёт ругать "лесенку" кода и все эти "жуткие неудобства", другие программисты, с разной степенью грубости просто дадут понять: "Парень, ты не ту профессию выбрал!".

    Ни у кого не возникает мысли ругать язык программирования за то, что у него есть строгий синтаксис, но почему-то "Язык гипертекстововой разметки документа", который, естественно, такой же машинный, как и Java, не понравился из-за каких-то надуманных "драконовских правил". Чушь! Ребята, вёрстка - это не "rocket science", и правила эти - ну ни разу не драконовские!

    А если захотелось простоты - то и писать в комментариях давайте тоже начнём в стиле "падонкаф" и без соблюдения пунктуации - ничего, поймут ведь и так!

    Я полностью согласен с теми, кто утверждает, что отказ от строгих правил XHTML - это возврат в средневековье. Даже более, в каменный век.

    Нельзя культуру вёрстки, только-только начавшую подниматься на должный уровень, только признавшую определённые авторитеты и стандарты, вновь отбрасывать назад. И если кухарок, верстающих сайты, станет меньше, надо будет только радоваться. Кухарки сейчас вполне могут сделать сайт конструкторами - благо их теперь немало расплодилось, и качество у многих весьма достойное.

    Лично у меня теперь пропала вера в светлое будущее веба и особенно сильно пошатнулось доверие к W3C. "Не надо прогибать изменчивый мир, пусть лучше он нас сам прогнёт"... :( Отвратительно, коллеги.

  28. Александр Вольф

    У того комментатора та же ошибка, что и у Вас: >вы считаете, что синтаксис языка >попустительствует к написанию коду. Это не так, >язык не может никого ни к чему принудить, что >очень явно показал тот же IE, который спокойно >обрабатывает XHTML по HTML’ным правилам.

    Скажем так, у меня есть весомые основания считать, что как раз к супу в вернемся. Если синтаксис языка строг, то пургу писать ты просто физически не сможешь ибо работать ничего не будет или повезет и будет как-то работать. Если язык позволяет писать абы как, то и будут писать абы как да еще и покрикивать на косяки в работе страниц, что это виноваты кривые руки у разработчиков браузеров, отличных от IE. А оно нам нужно?!

    А что касается IE, то он он сильно много додумывает... ну очень сильно и очень много, а это неправильно!

  29. Maximbo

    но почему-то “Язык гипертекстововой разметки документа”, > который, естественно, такой же машинный, как и Java, не > понравился из-за каких-то надуманных “драконовских
    правил”

    Когда-то он действительно разрабатывался для людей, а не для программистов :) Беда в том, что разросся он до весьма немалых размеров и теперь, никто кроме программистов им напрямую не пользуется. Но прежний груз таки остался.

    отказ от строгих правил XHTML - это возврат в
    средневековье.

    Основная суть в том, что правила эти никогда по-настоящему не работали.

    Нельзя культуру вёрстки, только-только начавшую
    подниматься на должный уровень, только признавшую
    определённые авторитеты и стандарты, вновь
    отбрасывать назад.

    Культура вёрстки — прежде всего "чтобы работало по стандарту", вместо "чтобы просто работало". А тяги общества к этим самым стандартам уже не отнять. XHTML сделал своё дело :)

    Собственно, вся эта байда с w3c как раз и задумывалась для приведения в порядок архаичность HTML4, если я правильно понял.

    К тому же, XMLный синтаксис HTML5 никуда не девается. Просто остаётся необязательным, как и прежде.

  30. Kirill Mavreshko

    Основная суть в том, что правила эти никогда по-настоящему не работали.

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

    Есть и сугубо техническая сторона - неважно, что было в прошлом, сейчас HTML - это в первую очередь машинный язык. Введение вольностей в правила его записи означают, в первую очередь, усложнение его разбора. А это - усложнение написания парсеров, плюс, как следствие, увеличение числа багов в них, чему обрадуются разве что только вломщики. Кроме того, для такого парсера возрастают потребности в вычислительных мощностях, а это большой минус для портативных устройств, вроде сотовых или КПК.

    XHTML позволил универсализировать всё. Несложные правила (это лучше кучи "а можно ещё вот так написать"), позволили использовать один и тот же XML-парсер на все случаи жизни. Добавьте сюда ещё XSLT и получите картину полного вселенского счастья :) Насколько упростилось бы пресловутое "вебдванольное" связывание всех со всеми! Насколько меньше было бы багов! Динозавры всё равно вымерли бы, никуда они не делись. Ясное дело, всё это случилось бы не вот завтра, но произошло бы рано или поздно!

    К тому же, XMLный синтаксис HTML5 никуда не девается. > Просто остаётся необязательным, как и прежде.

    Вот эта необязательность и пугает. Опять приведу аналогии из жизни - есть некоторые "нормы морали" - никто не заставляет вас уступать место бабушке в задних рядах трамвая, но вы это делаете. Потому что знаете, что это по-человечески, что это - правильно. Хотя сами ощутите, что значит старость, ещё очень нескоро. Стандарты очень похоже действуют на людей, как и "нормы морали". И к нормам этим надо подходить очень ответственно, чего я теперь в политике W3C как раз и не вижу.

  31. FX Poster

    А разве не ясно - что парсер будет ОДИН? Т.е. не так, как сейчас - кто как хочет - так и парсит. А просто один парсер, который, в отличии от XHTML будет позволять писать неправильно. И если человек так напишет - все везде будет строится одинаково.
    PS. "вломщики" - это сильно :-D

  32. Kirill Mavreshko

    А разве не ясно - что парсер будет ОДИН?
    Вот к этому, как раз, стандарт и не обязывает. Всегда найдутся те, кому кажется, что на его лужайке "трава зеленее".

    PS. “вломщики” - это сильно :-D
    Не надо сарказма по этому поводу. Например, много софта, даже давно поддерживающего Unicode, всё ещё продолжает благополучно ловиться на уязвимостях, связанных с его поддержкой. Уязвим может быть абсолютно любой код, хоть как-то взаимодействующий с внешним миром, какую бы работу он ни выполнял.

  33. Maximbo

    А разве не ясно - что парсер будет ОДИН?

    Вряд ли один. Скорее, планируется сделать единственным правильный метод парсинга :) В отличии от сегодняшнего положения вещей.

    Вот к этому, как раз, стандарт и не обязывает. Всегда найдутся те, кому кажется, что на его лужайке “трава зеленее”.

    Стандарт вообще ни к чему обязывать не может. Обязывают создатели реализаций (производители броузеров), а они, как раз, обеими лапами За.

    P.S. что-то идея HTML5 всё больше и больше притягивает :)

  34. Zigzag

    A pochemu vot eto http://www.w3.org/html/ sverstano na xhtml strict? imho, ne vyjdet nichego horoshego iz html5.

  35. Maximbo

    A pochemu vot eto http://www.w3.org/html/ sverstano na xhtml strict
    Потому что HTML5 ещё только разрабатывается и внедряется.

    imho, ne vyjdet nichego horoshego iz html5

    Только история может установить, чьё imho было без h ;)

  36. FX Poster

    Zigzag
    А из чего выйдет? :) От XHTML считай что отказались. У нас веб-сайты уйдут в небытие? :D

  37. Murkt

    A pochemu vot eto http://www.w3.org/html/ sverstano na xhtml strict? imho, ne vyjdet nichego horoshego iz html5.

    Чукча не читатель, чукча писатель? HTML5 не отменяет синтаксиса XHTML. В нём есть как SGML синтаксис, так и XML.

  38. FX Poster

    Maximbo
    Ну, имелось ввиду, что будут определены все возможные "неподалидки" и обработка их будет для конечного пользователя одинакова.
    "Полностью одинаковым" он не будет все равно - на разных языках свои реализации. Но результат будет одинаковым.

  39. FX Poster

    Murkt
    Отменяет. Посмотри хотя бы на возможные доктайпы. XHTML 1.0 он ОТМНЯЕТ.

  40. Иван Сагалаев

    Так :-).

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

  41. Иван Сагалаев

    Я так понимаю, обсуждать все-таки хочется :-). Тогда добро пожаловать сюда: http://softwaremaniacs.org/forum/viewtopic.php?id=478

  42. [...] появился ряд статей о Web Applications / HTML5 (например, вот и вот), возникла оживлённая дискуссия о новом стандарте. [...]

  43. uncle.f
  44. Busla

    Любой супервалидный код на стороне сервера делается невалидным на стороне клиента. По той простой причине, что web-content - это поток, а не статичный блок данных. Возможно, он загрузится до конца (и станет валидным). А, возможно, пользователь не захочет ждать полной загрузки всяких баннеров, комментариев, счётчиков (и прочей пурги), а банально нажмёт STOP.

    Так речь о том и идёт - что ни один стандарт не рассматривает web-документ как поток.

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

  45. irium

    Так речь о том и идёт - что ни один стандарт не рассматривает web-документ как поток.

    Наконец-то один человек обратил внимание на то, на что его не обратили другие - хотя мы каждый день это видим на экранах наших браузеров :)

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

Добавить комментарий