ProgrammerBook.ru: Обратите внимание, что

  1. данный документ является переводом документа «Understanding HTML and MIME»;
  2. данный документ может содержать неточности, опечатки и ошибки перевода;
  3. официальным документом по данной тематике является оригинальный документ на английском языке, расположенный на сайте W3C.

Понимание HTML и MIME

Я отказался от разделения HTML на последовательность уровней соответствия. Многие люди путают уровни с версиями. Различные уровни также порождают проблемы совместимости! Отказ от разделения позволяет стимулировать полную совместимость с HTML 2.0 или HTML 3.0, а не закреплять поддержку промежуточных уровней.

HTML как Интернет Медиа Тип

Данная спецификация (и следующие, совместимые спецификации) определяют Интернет Медиа Тип (RFC 1590) и MIME Тип Содержимого (RFC 1521), именуемый «text/html». Тип «text/html» принимает следующие параметры:

Версия
Для того чтобы избежать в будущем проблем с совместимостью, данный параметрможет быть использован для указания номера версии спецификации, которой соответствует документ. Номер версии указывается в самом начале этого документа, и в публичном идентификаторе для ОТД SGML. Эта спецификация определяет версию 3.0.
Набор символов
Параметр charset (как определено в разделе 7.1.1 спецификации RFC 1521) может быть использован с типом содержимого text/html для определения кодировки, используемой для репрезентации HTML-документа как последовательности байтов. Как правило, медиа типы text/* определяют US-ASCII в качестве значения по умолчанию для параметра charset. Тем не менее, для text/html, если поток байт содержит данные не в 7-битном наборе US-ASCII, агенту интерпретирующему HTML следует считать ISO-8859-1 кодировкой по умолчанию.

Когда HTML-документ кодируется с помощью US-ASCII, механизмы числовых ссылок на символы и ссылок на сущности символов могут быть использованы для кодирования дополнительных символов из ISO-8859-1. Ссылки на сущности символов необходимы для символов, таких как математические и греческие символы из других неуказанных наборов символов.

Другие значения параметра charset не определены в данной спецификации, но могут быть определены в будущих версиях HTML. Предполагается, что HTML будет использовать параметр charset для обеспечения поддержки нелатинских символов, таких как арабские, иврит, кириллица и японские, а не полагаться для этого на какой-либо SGML-механизм.

Что насчёт Unicode и его разнообразных кодировок? Этот раздел будет извлекать пользу из разъяснения вопросов, связанных с поддержкой нескольких кодировок символов и проблем, возникающих в связи с двунаправленностью.