Процессор XML нормализует различные системные
CARRIAGE RETURN/возврат каретки (
)
LINE FEED/прогон строки (
)
Процессор XML нормализует различные системные коды конца строки в единый символ LINE FEED, который и передаётся приложению.
ПА обязан обрабатывать пробельные символы в данных, полученных от процессора XML, следующим образом:
Все пробелы, окружающие блок элементов, должны быть удалены.
Комментарии полностью удаляются и не влияют на обработку пробелов. Одиночный пробельный символ с любой стороны комментария рассматривается как два пробельных символа.
Если атрибут 'xml:space' установлен в 'preserve', пробельные символы обязаны быть сохранены и последующие символы LINE FEED внутри блока обязаны не быть конвертированы.
Если атрибут 'xml:space' установлен в 'preserve', тогда:
Ведущие и ведомые пробелы внутри элемента блока обязаны быть удалены.
Символы LINE FEED обязаны быть конвертированы в один из следующих символов: SPACE, ZERO WIDTH SPACE (​) или ни в один из символов (т.е. удалены).
Выбор результирующего символа зависит от ПА и обусловлен свойствами письма (языка) символов до и после символа LINE FEED.
Последовательность пробелов без символов LINE FEED обязана быть редуцирована до символа SPACE.
Последовательность пробельных символов с одним или более символом LINE FEED обязана быть редуцирована таким же образом до символа SPACE.
Пробелы в значениях атрибутов обрабатываются в соответствии с .
Примечание (информативное): При определении того, как конвертировать символ LINE FEED, ПА должен рассмотреть следующие случаи, когда вид письма с любой стороны от LINE FEED определяет выбор замены. Символы ОБЩЕГО письма (такие как пунктуация) рассматриваются так же, как и письмо с другой стороны:
Если символы до и после LINE FEED принадлежат письму, в котором символ SPACE используется как разделитель слов, то символ LINE FEED должен быть конвертирован в символ SPACE. Примерами такого письма могут служить латиница, греческое и кириллица.
Если символы до и после LINE FEED принадлежат идеографическому письму или системе письма, в которой нет разделителя слов, то LINE FEED должен быть конвертирован в нулевой (пустой/никакой) символ. Примеры такого письма или системы письма - китайский, японский.Если символы до и после LINE FEED принадлежат неидеографическому письму, в котором нет разделителя слов, LINE FEED должен быть конвертирован в символ ZERO WIDTH SPACE (​) или в нулевой (пустой/никакой) символ. Примеры такого письма -тайский, кхмерский.
Если условия с (1) по (3) неприменимы, то символ LINE FEED должен быть конвертирован в символ SPACE.
Техническое сообщение Unicode TR#24 (Script Names) предоставляет назначения имён скриптов всем символам.
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий