Что такое "Набор символов документа" для XML и HTML, и как от связан с кодировкой, используемой в тексте документа?
С целью упрощения и следования общепринятой практике, в данной статье ЧАВО Unicode относится к набору символов, определённым совместно Unicode и ISO/IEC 10646.
Набор символов документа или базовый набор символов XML и HTML (версия 4.0) - это универсальный набор символов (стандарт UCS), определённый совместно ISO/IEC 10646 и стандартами Unicode.
Это значит, что логическая модель, описывающая процесс обработки XML и HTML, изложена в рамках набора символов Unicode.
Это не значит, что все документы HTML и XML должны быть закодированы как Unicode; это значит, что все подобные документы могут содержать лишь набор знаков, определённых Unicode. Заметьте, что набор символов и коировка - это разные понятия - например, полный набор символов Unicode может быть закодирован по-разному, как UTF-8, UTF-16 и UTF-32. Любая кодировка может быть использована для вашего документа, если она ясно обозначена и является одной из подклассов Unicode. (Хотя будет довольно тяжело найти кодировку, которая не является подклассом.)
С другой стороны, лучше везде использовать кодировку Unicode, так как Unicode облегчает переход к интернационализации и широко поддерживается прикладными процессами HTML и всеми программами обработки XML.
Важный результат набора смволов документа - это то, что содержание числового знака (как, например, ǵ и ǵ для МАЛОЙ ЛАТИНСКОЙ БУКВЫ G С АКУТОВЫМ УДАРЕНИЕМ) переводятся как знаки Unicode - не важно, какая кодировка используется для вашего документа. Различие понятий часто является причиной ошибки для тех, кому данное различие не понятно.
На практике, не все знаки Unicode могут быть использованы везде в XML и HTML. Например, определённые знаки исключены из имён тега элемента, а определённые управляющие знаки исключены из содержания. При этом заметьте, что XML 1.1 позволяет использовать намного больше знаков, в том числе и для имён тега элемента, чем XML 1.0.
При HTML 2.0 было определено, что все символы в документе HTML должны быть переведены относительно к ISO 8859-1 (также известному как ISO Latin 1), но также было объявлено, что при будущих версиях HTML будет использован расширенный набор, а именно Unicode (или ISO 10646), что значит - будет доступно больше мировых символов.
Дискуссии о правильном использовании Unicode в интернете ( RFC 2130, апрель 1997, иRFC 2070, январь 1997) не были закончены, когда вышла версия HTML 3.2 (январь 1997), поэтому пришлось подождать с включением Unicode в HTML до версии HTML 4.0 (декабрь 1997).
Ссылки по теме, Authoring HTML & CSS
Ссылки по теме, Authoring XML