webspace hosting reseller hosting|             | blog| forum| dating| free hosting| openhost| report abuse
Internet Fax To Email - Unlimited

Unlimited Faxes, No Fees, Dedicated Phone Number

Free Website Templates
 
 
 
На главную

В этой главе обсуждается, как документы в формате HTML представляются на компьютере и в Интернет.

Раздел набор символов документа относится к вопросу об абстрактных символах, которые могут входить в состав документа в формате HTML. В число этих символов входят латинская буква "A", кириллическая буква "I", китайский иероглиф "вода" и т.д.

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

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

5.1 Набор символов документа

Для обеспечения возможность взаимодействия сетей SGML требует от каждого приложения (включая HTML) указания набора символов документа. Документ включает:

  • Репертуар: Набор абстрактных символов,, таких как латинская буква "A", кириллическая буква "I", китайский иероглиф "вода" и т.д.
  • Коды: Набор целочисленных ссылок на символы репертуара.

Каждый документ SGML (включая каждый документ HTML) - это последовательность символов из репертуара. Компьютерные системы идентифицируют каждый символ по его коду; например, в наборе символов ASCII коды 65, 66 и 67 означают символы 'A', 'B' и 'C' соответственно.

Набора символов ASCII недостаточно для такой глобальной информационной системы, как Web, поэтому HTML использует более полный набор символов, называемый Универсальным набором символов (Universal Character Set - UCS), и определенный в [ISO10646]. Этот стандарт определяет репертуар тысяч символов, используемых во всем мире.

Набор символов, определенный в [ISO10646] - это посимвольный эквивалент Unicode 2.0 ([UNICODE]). Оба эти стандарта время от времени обновляются, пополняются новыми символами, об изменениях следует узнавать на соответствующих серверах Web. В этой спецификации ISO/IEC-10646 или Unicode означают этот самый набор символов. Однако в спецификации HTML Unicode также упоминается при обсуждении других вопросов, таких как алгоритм двунаправленного текста.

Набора символов документа, однако, недостаточно, чтобы агенты пользователей могли корректно интерпретировать документы HTML при типичном обмене - закодированные как последовательность байт в файле или во время передачи по сети. Агенты пользователя должны также знать кодировки символов, которые использовались для преобразования потока символов документа в поток байт.

5.2 Кодировки символов

Кодировки символов в этой спецификации имеют другие названия в других спецификациях (что может вызвать некоторую путаницу). Однако это понятие в Интернет означает примерно одно и то же. Одно и то же имя -- "charset - набор символов" - используется в заголовках протоколов, атрибутах и параметрах, ссылающихся на символы и использующих одни и те же значения из [IANA] реестра (полный список см. в разделе [CHARSETS]).

Параметр "charset" идентифицирует кодировку символов, которая является способом преобразования последовательности байт в последовательность символов. Это преобразование естественно вписывается в схему деятельности Web: серверы отправляют документы HTML агентам пользователей в виде потока байт; агенты пользователей интерпретируют их как последовательность символов. Способы преобразования могут меняться от простого соответствия один к одному до сложных схем или алгоритмов переключения.

Простой техники кодировки "один байт - один символ" недостаточно для текстовых строк с таким широким репертуаром символов, как [ISO10646]. Кроме кодировок всего набора символов (например, UCS-4), имеются некоторые другие кодировки частей [ISO10646].