6 Основные типы данных HTML
Данный раздел спецификации описывает основные
типы данных, которые могут быть использованы в
содержании элементов или значениях атрибутов.
Вводную информацию относительно чтения HTML DTD,
можно получить в "Учебнике по
SGML".
Каждое описание атрибута включает информацию
относительно того, чувствительно к
регистру его значение или нет. Информация о
регистре представлена следующими ключами:
- CS
- Означает, что значение чувствительно к регистру
(то есть: средства просмотра интерпретируют
"а" и "А" по-разному).
- CI
- Означает, что значение не чувствительно к
регистру (то есть: средства просмотра
воспринимают "а" и "А" как один и тот же
символ).
- CN
- Означает, что значение не подразумевает смены
регистров (например, потому, что это число или
символ из алфавита документа).
- CA
- Означает, что описание элемента или атрибута
само дает информацию о регистре.
- CT
- Означает, что необходимо проконсультироваться
в описании типа с целью получения более
детальной информации относительно
чувствительности к регистру.
Если значением атрибута является список, ключи
применяются к каждому значению в списке, если не
указано иное.
6.2 Основные типы SGML
"Декларация типа документа"
определяет синтаксис содержания элемента и
значения атрибута HTML, используя лексемы SGML
(например: PCDATA, CDATA, NAME, ID, и т.п.). Их полное описание
смотрите в [ISO8879]. Ниже приведена обобщенная
информация о ключах:
 | CDATA
-- это последовательность символов из алфавита
документа и она может включать символьные
объекты. Средства просмотра должны
интерпретировать значение атрибута как
следующее:
 | Заменить символьный объект символом, |
 | Игнорировать символы перевода строки, |
 | Заменить каждый символ возврата каретки или
табуляции одним символом пробела. |
Средства просмотра могут игнорировать
директивы и оставлять пустое пространство в
значении атрибута CDATA (например:
" myval " может быть
интерпретировано как "myval"). Авторам не
следует объявлять значения атрибутов с
директивами или оставленным пустым
пространством.
Для некоторых атрибутов HTML 4.0 со значением
атрибута CDATA, спецификация налагает дальнейшее
принуждение на установку правильных значений
для атрибута, которое не может быть выражено при
помощи DTD.
Несмотря на то, что элементы STYLE
и SCRIPT
используют CDATA для их моделей данных, для этих
элементов атрибут CDATA должен по-разному обрабатываться
средствами просмотра. Разметка и объекты должны
обрабатываться, как простой текст и передаваться
приложению "как есть". Первое расположение
последовательности символов "</"
(разделитель, открывающий заключительный тег)
обрабатывается как ограничивающий содержание
атрибута. В реальных документах это будет
завершающим тегом для элемента.
|
 | Лексемы ID
и NAME
должны начинаться с любой буквы ([A-Z, a-z]) и могут
продолжаться любым числом букв, цифр ([0-9]),
символов тире ("-"), символов подчеркивания
("_"), знаков двоеточия (":") и точек
("."). |
 | IDREF
и IDREFS
ссылаются на лексемы ID, определенные другими
атрибутами. IDREF -- отдельная лексема, а IDREFS --
список лексем, разделенных пробелами. |
 | Лексема NUMBER должна содержать по
крайней мере, одну цифру ([0-9]). |
Нумерация атрибутов ( %Text; в DTD), делает текст более
"читабельным для человека". Вводную
информацию относительно атрибутов можно найти в "Обучающем обсуждении
атрибутов".
Данная спецификация использует термин URI, как
он описан в [URI]
(также смотрите [RFC1630]).
Заметьте, что URI-ли включают в себя и URL-ли (как
они описаны в [RFC1738] и [RFC1808]).
Относительные URI-ли переводятся в полные URI-ли
при помощи базовых URI-лей. Раздел 3 в [RFC1808] определяет
нормативный алгоритм для этого процесса.
Дополнительную информацию о базовых URI-лях можно
найти в разделе "Базовые
URI-ли" в главе "Связи".
URI-ли представляются в DTD параметерной
сущностью "%URI;".
URI-ли, как правило, чувствительны
к регистру. Могут существовать URI-ли, или их
части, где регистр не имеет значения (например
имена машин), но идентифицировать это не всегда
легко. Пользователям следует всегда считать, что
URI-ли чувствительны к регистру (на всякий случай).
Информацию о "не-ASCII
символах" в значениях атрибутов URI смотрите
в Приложениях.
Тип значения атрибута "color" (цвет, %Color;),
ссылается на определение цвета, как описано в [SRGB].
Значение цвета может быть как шестнадцатеричным
числом (предваряемым знаком "#"), так и одним
из нижеприведенных шестнадцати имен цветов.
Имена цветов нечувствительны к
регистру.
Имена
цветов и значений sRGB
 |
Black (Черный) = "#000000" |
 |
Green (Зеленый) = "#008000"
|
 |
Silver (Серебряный)= "#C0C0C0" |
 |
Lime (Светло-зеленый) = "#00FF00"
|
 |
Gray (Серый) = "#808080" |
 |
Olive (Оливковый) = "#808000"
|
 |
White (Белый) = "#FFFFFF" |
 |
Yellow (Желтый) = "#FFFF00"
|
 |
Maroon (Коричневый) = "#800000" |
 |
Navy (Темно-синий) = "#000080"
|
 |
Red (Красный) = "#FF0000" |
 |
Blue (Синий) = "#0000FF"
|
 |
Purple (Темно-сиреневый) = "#800080" |
 |
Teal (Петроль) = "#008080"
|
 |
Fuchsia (Сиреневый) = "#FF00FF" |
 |
Aqua (Голубой) = "#00FFFF"
|
Таким образом, значение цвета "#800080" и
"Purple" оба ссылаются на темно-сиреневый цвет.
6.5.1 Примечание об использовании
цветов.
Не смотря на то, что цвета могут добавить
значительную часть информации документа и
сделать его более читабельным, пожалуйста,
учитывайте следующие моменты, при использовании
цветов в Ваших документах:
 | Использование элементов и атрибутов HTML для
задания цветов отменено.
Вместо этого предлагается использовать таблицы стилей. |
 | Не используйте комбинации цветов, которые могут
вызвать проблемы у людей, с цветовой слепотой в
ее различных проявлениях. |
 | Если Вы используете фоновое изображение или
определяете фоновый цвет, также установите
соответствующий цвет текста. |
 | Цвета, определенные при помощи элементов BODY и FONT
а также "bgcolor" в таблицах, выглядят
различно на различных платформах (например:
Рабочих Станциях (workstations), Макинтошах (Macs), в среде
Windows и на LCD- панелях в отличие от кинескопов
обычных мониторов), таким образом, Вам не следует
полностью полагаться на специфические эффекты. В
будущем, поддержка цветовой модели [SRGB] вместе с
цветовыми контурами ICC должна смягчить подобные
проблемы. |
 | На практике, выбирать общие условности с целью
минимизации недопонимания пользователем. |
HTML определяет три типа значений длин для
атрибутов:
- Пикселы (pixel): (%Pixels; в DTD)
Значение является целым числом, которое
представляет число пикселов холста (экрана,
бумаги). Таким образом, значение "50" означает
50 пикселов. Нормативную информацию относительно
определения "Пиксел",
смотрите в [CSS1].
- Длина (Length): ( %Length; в DTD) Значением может
быть либо "%Pixel;" либо процентное отношение
доступного горизонтального или вертикального
пространства. Таким образом, значение "50%"
означает половину доступного пространства.
- Множественная Длина (MultiLength):
(%MultiLength;
в DTD) Значением может быть или "%Length;" или "Относительная
длина". Относительная длина имеет
форму "i*", где "i" -- целое число. При
распределении пространства, между элементами,
соревнующимися за это пространство, средство
просмотра сначала распределяет пикселы и
процентные длины, а затем разделяет оставшееся
доступное пространство между относительными
длинами. Каждая относительная длина получает
часть доступного пространства, пропорционально
целому числу, стоящему перед знаком "*".
Значение "*" эквивалентно записи "1*".
Таким образом, если после распределения
доступного пространства между пикселами и
процентными длинами, осталось 60 пикселов
доступного пространства, а также если
соревнующиеся относительные имеют значения
"1*", "2*" и "3*", то "1*"
соответственно получит 10 пикселов, "2*"
получит 20 пикселов и "3*" -- 30 пикселов.
Значения длин нейтральны к регистру.
Примечание. "Тип среды" (media type)
(описанный в [RFC2045] и [RFC2046]) определяет природу связанного
ресурса. Данная спецификация использует термин
"тип содержания" (content type) а не "тип
среды" (media type) в соответствии с текущим
использованием. Более того, в данной
спецификации "тип среды" может ссылаться на среду, в которой средство
просмотра отображает документ.
Данный тип представляется в DTD посредством "%ContentType;".
Типы содержания нечувствительны к
регистру.
Примеры типов содержания включают: "text/html",
"image/png", "image/gif", "video/mpeg",
"audio/basic", "text/tcl", "text/javascript" и
"text/vbscript". Список зарегистрированных на
данный момент типов MIME можно найти в [MIMETYPES].
Примечание. Тип содержания "text/css"
пока не зарегистрирован в IANA, он должен
использоваться в случаях, когда связанным
ресурсом является таблица стилей [CSS1].
Значение атрибутов, чьим типом является
языковой код (%LanguageCode в DTD), ссылается
на языковой код, как описанный в разделе 2 из [RFC1766].
Информацию относительно определяющих языковых
кодов в HTML смотрите в разделе "языковые коды".
Пустое пространство не допустимо в пределах
языкового кода.
Языковые коды нечувствительны к
регистру.
Атрибуты "charset" (%Charset в DTD) ссылаются на символьную
кодировку, как описано в разделе "Символьные кодировки".
Значения должны быть строками (например
"euc-jp") из реестра IANA (полный список смотрите
в [CHARSETS]).
Имена символьных кодировок нечувствительны
к регистру.
Средство просмотра должно следовать шагам,
установленным в разделе "Определение
символьных кодировок" для того, чтобы
детерминировать символьную кодировку внешнего
ресурса.
Некоторые атрибуты используются для
одиночного символа из набора
символов документа. Эти атрибуты используют
тип %Character из
DTD.
Одиночные символы могут быть определены при
помощи символьных ссылок
(например "&").
[ISO8601]
допускает много выборов и вариантов при
представлении даты и времени. Данная
спецификация использует один из форматов,
описанных в [DATETIME] для определения корректных
строк даты/времени (%Datetime в DTD).
Формат:
ГГГГ-ММ-ДДTчч:мм:ссTZD
где:
ГГГГ = четырехзначный год
ММ = двухзначный месяц (01=Январь и т.п.)
ДД = двухзначный день месяца (от 01 до 31)
чч = двухзначный час (от 00 до 23) (до/после полуночи НЕ допустимо)
мм = двухзначная минута (от 00 до 59)
сс = двухзначная секунда (от 00 до 59)
TZD = определитель временной зоны (time zone designator)
Определитель временной зоны может быть одним
из:
- Z
- указывает на Универсальное координированное
время (UTC, Coordinated Universal Time). "Z" должно быть в
верхнем регистре.
- +чч:мм
- указывает на то, что время является местным
временем, равным чч часам и мм
минутам впереди UTC.
- -чч:мм
- указывает на то, что время является местным
временем, равным чч часам и мм
минутам позади UTC.
Должны присутствовать именно показанные здесь
компоненты и именно с указанной пунктуацией.
Заметьте, что "T" появляется
буквально в строке (оно должно быть в верхнем
регистре), для указания начала элемента времени,
как описано в [ISO8601].
Если генерирующее приложение не распознает
время с секундами, оно должно использовать
значение "00" для секунд (а также минут и
часов, если это необходимо).
Примечание. [DATETIME] не
рассматривает вопрос "прыжков" секунд.
Авторы могут использовать следующие
распознаваемые типы
связей, приведенных здесь с их
общепринятой интерпретацией. В DTD %LinkTypes ссылается на список
разделенных пробелом типов связей. Символы
пустого пространства не допустимы в пределах
типов связей.
Эти типы связей нечувствительны к регистру,
то есть "Alternate" и "alternate" -- одно и то же.
Средства просмотра, поисковые машины и т.п.
могут интерпретировать эти типы связей
различными способами. Например, средства
просмотра могут предоставлять доступ к
связанным документам при помощи навигационной
полосы.
- Alternate
- Назначает замену версий для документа, в
котором встречается связь. Если используется
вместе с атрибутом lang, то это подразумевает
переведенную версию документа. Если
используется вместе с атрибутом media,
то это подразумевает версию, разработанную для
другого носителя (или среды).
- Stylesheet
- Ссылается на внешнюю таблицу стилей. Смотрите
раздел "внешние
таблицы стилей". Этот тип связи используется
вместе с типом связи "Alternate" для поддержки
"выбираемой пользователем" альтернативной
таблицы стилей.
- Start
- Ссылается на первый документ в коллекции
документов. Этот тип связи подсказывает
поисковым машинам, какой документ создан автором
как начальная точка коллекции.
- Next
- Ссылается на следующий документ в линейной
последовательности документов. Средства
просмотра могут пре-загружать следующий
("next") документ с целью уменьшить
воспринимаемое время загрузки документов.
- Prev
- Ссылается на предыдущий документ в порядковой
серии документов. Некоторые средства просмотра
также поддерживают синоним "Previous".
- Contents
- Ссылается на документ, служащий
"СОДЕРЖАНИЕМ". Некоторые средства просмотра
также поддерживают синоним ToC (от "Table of
Contents" -- дословно: "Таблица Содержания").
- Index
- Ссылается на документ являющийся индексом для
текущего документа.
- Glossary
- Ссылается на документ, являющийся
"Глоссарием терминов", применяемых в
текущем документе.
- Copyright
- Ссылается на положение об Авторском праве для
данного документа.
- Chapter
- Ссылается на документ, выражающий общую
тематику коллекции документов.
- Section
- Ссылается на документ, служащий в качестве
секции в коллекции документов.
- Subsection
- Ссылается на документ, служащий в качестве
подсекции в коллекции документов.
- Appendix
- Ссылается на документ, служащий в качестве
приложения в коллекции документов.
- Help
- Ссылается на документ, предлагающий помощь
(больше информации, ссылки на другие источники
информации и т.п.).
- Bookmark
- Ссылается на закладки. Закладка -- это ссылка на
ключевую входную точку во внешнем документе.
Атрибут title
может быть использован, например, как метка для
закладки. Следует заметить, что в каждом
документе может быть определено несколько
закладок.
Авторы могут пожелать определить дополнительные
типы связей, не описанных в данной
спецификации. Если они сделают это, им следует
использовать "profile"
для цитирования соглашений, используемых для
описания типов связей. Смотрите дополнительную
информацию об атрибуте "profile" элемента HEAD.
Дальнейшее обсуждение типов связей, можно
найти в разделе "Связи в
документах HTML".
Ниже приведен список распознаваемых
описателей среды (%MediaDesc в DTD).
- screen
- Главным образом предназначено для не-
страничных компьютерных экранов.
- tty
- Предназначено для сред, использующих сетку
символов фиксированной высоты, таких как
телетайпы, терминалы или портативные устройства
с ограниченными возможностями отображения.
- tv
- Предназначено для устройств телевизионного
типа (низкое разрешение, цвет, ограниченая
прокручиваемость).
- projection
- Предназначено для проекторов.
- handheld
- Предназначено для ручных устройств (маленький
экран, монохромный режим, "bitmap" графика,
ограниченая "bandwidth").
- print
- Предназначено для страничных, непрозрачных
материалов и для документов, отображаемых на
экране в режиме "пред-печатного просмотра".
- braille
- Предназначено для устройств тактильной
обратной связи по азбуке Брайля.
- aural
- Предназначено для синтезаторов речи.
- all
- Применимо для всех устройств.
Будущие версии HTML могут представлять новые
значения и могут позволять параметризованные
значения. Для облегчения введения этих
расширений, согласующиеся средства просмотра
должны быть способными делать
грамматический разбор значений атрибута media
следующим образом:
- Значение является списком вхождений,
разделенных запятыми. Например:
media="screen, 3d-glasses, print and resolution > 90dpi"
отображается в:
"screen"
"3d-glasses"
"print and resolution > 90dpi"
- Каждое вхождение усекается только перед первым
символом, который не является символом из набора
US ASCII -- буква [a-z, A-Z] (десятичные коды 5-90, 97-122 из
Unicode), цифра [0-9] (шестнадцатеричные коды 30-39 из
Unicode) или точка (45). В нашем примере это будет:
"screen"
"3d-glasses"
"print"
- Существует чувствительное к регистру
соответствие, когда сделано с набором типов
среды, описанных выше. Средства просмотра могут
игнорировать не соответствующие вхождения. В
примере мы исключили screen и print.
Примечание. Таблицы стилей могут
включать зависимые от среды варианты (то есть
составлять CSS @media). В таком случае это может
соответствовать использованию "media=all".
Данные сценария (%Script; в DTD)
могут быть содержанием элемента SCRIPT
и значением атрибутов
внутренних событий. Средства просмотра не
должны рассматривать данные сценариев как
разметку HTML, они должны передавать их средству
обработки сценариев как данные.
Чувствительность
к регистру данных сценариев зависит от
языка сценария.
Пожалуйста, заметьте, что данные сценариев,
являющиеся содержанием элемента не могут
содержать символьные ссылки,
в то же время, данные сценариев, являющиеся
значением атрибута -- могут. Приложения
предоставляют дополнительную информацию об "определении не-HTML
данных".
Данные таблиц стилей (%StyleSheet;
в DTD) могут быть содержанием
элемента STYLE и значением атрибута style.
Средства просмотра не должны обрабатывать
данные стилей как разметку HTML.
Чувствительность
к регистру данных стилей зависит от языка
таблиц стилей.
Пожалуйста, заметьте, что данные таблиц стилей,
которые являются содержанием элемента не могут
содержать символьные ссылки,
в то же время, данные таблиц стилей, которые
являются содержанием значения атрибута -- могут.
Приложения предоставляют дополнительную
информацию об "определении
не-HTML данных".
За исключением зарезервированных слов,
приведенных ниже, целевые имена фреймов (%FrameTarget;
в DTD) должны начинаться с алфавитного символа (a-z,
A-Z). Средства просмотра должны игнорировать все
другие целевые имена.
Эти целевые имена
зарезервированы и имеют особое значение:
- _blank
- Средство просмотра должно загрузить документ
назначения в новое безымянное окно.
- _self
- Средство просмотра должно загрузить документ в
то же окно, что и элемент, ссылающийся на данную
цель.
- _parent
- Средство просмотра должно загрузить документ в
непосредственного FRAMESET предка текущего
фрейма. Это значение эквивалентно _self, если
текущий фрейм не имеет предков.
- _top
- Средство просмотра должно загрузить документ в
полноразмерное, оригинальное окно (тем самым,
отменяя все другие фреймы). Это значение
эквивалентно _self, если текущий фрейм не
имеет предков.
Last modified: Tue Jan 27 14:14:37 1998
|