Перейти к первому, предыдущему, следующему, последнему разделу, оглавлению.


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

  1. данный документ является переводом документа «Hypertext Markup Language - 2.0 - HTML as an Internet Media Type»;
  2. данный документ может содержать неточности, опечатки и ошибки перевода;
  3. официальным документом по данной тематике является оригинальный документ на английском языке, расположенный на сайте W3C.

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

HTML агент пользователя позволяет пользователям взаимодействовать с ресурсами, которые имеют HTML репрезентации. Как минимум, он должен позволить пользователям исследовать и перемещаться по содержимому HTML документов 1-го уровня. HTML агентам пользователей следует быть в состоянии сохранять все различия форматирования, репрезентированные в HTML документе, и быть в состоянии одновременно представлять ресурсы, на которые ссылаются IMG элементы (они могут игнорировать некоторые различия форматирования или IMG ресурсов по просьбе пользователя). HTML агентам пользователей 2 уровня следует поддерживать заполнение формы и её отправку.

Медиа тип text/html

Данная спецификация определяет Интернет Медиа Тип [IMEDIA] (ранее известный как Тип Содержимого [MIME]), обозначаемый `text/html'. Следующий будет зарегистрирован с [IANA].

Имя Медиа Типа
text
Имя медиа подтипа
html
Обязательные параметры
отсутствуют
Дополнительные параметры
уровень, кодировка
Вопросы кодирования
разрешено любое кодирование
Вопросы безопасности
смотрим раздел Вопросы Безопасности

Дополнительные параметры определяются следующим образом:

Уровень
Параметр уровня определяет набор функций, используемых в документе. Уровень представляет собой целое число, подразумевающее, что в документе могут присутствовать какие-либо функции документа того же или более низкого уровня. 1-му уровню соответствуют все функции, определённые в данной спецификации, за исключением тех, которые требуют элемента FORM. 2-ой Уровень включает в себя обработку формы. Уровнем по умолчанию является 2-ой уровень.
Кодировка
Параметр кодировки (как определено в разделе 7.1.1 в RFC 1521 [MIME]) может быть задан для того, чтобы указать схему кодирования символов, используемую для репрезентации HTML документа в виде последовательности октетов. Значение по умолчанию выходит за рамки данной спецификации; но, например, по умолчанию может использоваться `US-ASCII' в контексте MIME почты, и `ISO-8859-1' в контексте HTTP протокола [HTTP].

Репрезентация HTML Документа

Сущность сообщения с типом содержимого `text/html' репрезентирует HTML документ, состоящий из одной текстовой сущности. Параметр `charset' (скрыто или явно) определяет схему кодирования символов. Текстовая сущность состоит из символов, определённых данной схемой кодирования символов и октетов тела сущности сообщения.

Не объявленная Обработка Ошибок Разметки

Для того, чтобы облегчить экспериментирование и совместимость между реализациями различных версий HTML, установленная база HTML агентов пользователей поддерживает надмножество языка HTML 2.0, сведя её к HTML 2.0: разметка в виде начального или конечного тега, чей общий идентификатор не объявлен, ни как не отображается во время лексического анализа. Не объявленные атрибуты рассматриваются аналогичным образом. Все указанные атрибуты являющиеся неизвестными атрибутами (т.е. неизвестным атрибутом и его значением, если таковое имеется) следует игнорировать. С другой стороны, ссылки на необъявленные сущности следует рассматривать как символы данных.

Например:

<div class=chapter><h1>foo</h1><p>...</div>
  => <H1>,"foo",</H1>,<P>,"..."
xxx <P ID=z23> yyy
  => "xxx ",<P>," yyy
Пусть &alpha; &amp; &beta; будут конечными множествами.
  => "Пусть &alpha; & &beta; будут конечными множествами."

Рекомендуется поддержка уведомлений пользователя о таких ошибках.

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

Традиционная Репрезентация Строк

SGML указывает, что текстовая сущность представляет собой последовательность записей, каждая из которых начинается с символа начала записи и заканчивается символом конца записи (позиции кода 10 и 13 соответственно) (раздел 7.6.1, «Границы Записи» в [SGML]).

[MIME] указывает, что тело типа `text/*' представляет собой последовательность строк, каждая из которых завершается CRLF, то есть октетами 13, 10.

На практике, HTML документы часто репрезентируются и передаются с помощью условного конца строки, который зависит от условий исходного документа; зачастую эта репрезентация состоит либо только из CR, либо только из LF, либо из последовательности CR LF. Поэтому декодирование октетов часто приводит к текстовой сущности с некоторыми недостающими символами начала и конца записи.

Поскольку не существует никакой двусмысленности, HTML агентам пользователей рекомендуется выводить недостающие символы начала и конца записи.

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


Перейти к первому, предыдущему, следующему, последнему разделу, оглавлению.