ГОСТ Р ИСО/МЭК 8825-4 — 2009
30.2.4 В отсутствие команды кодирования GLOBAL-DEFAULTS MODIFIED-ENCODINGS набор окон
чательных команд кодирования TEXT для типа недолжен производить кодирования текста для некото
рых абстрактных значений и кодирования пустых элементов для других абстрактных значений.
П р и м е ч а н и е — Если есть команда кодирования GLOBAL-DEFAULTS MODIFIED-ENCODINGS. то все
кодирования — кодирования текста.
30.2.5 Если команда кодирования TEXT применена к типу строка битов с поименованными битами
и "NewName" используется. "NewName" недолжно содержать "пробел с переходом" (см. 7.1.5) и не будет
начинаться с "0" (DIGIT ZERO) или "Г (DIGIT ONE).
30.2.6 Тип с этой окончательной командой кодирования не должен иметь окончательной команды
кодирования USE-NUMBER.
П р и м е ч а н и е — Нижеперечисленные окончательные команды кодирования не должны сочетаться
с этойокончательнойкомандой кодированияпотому, что их применение кэтому типу запрещено: ANY-ATTRIBUTES,
ANY-ELEMENT. BASE64, DECIMAL. EMBED-VALUES. LIST. USE-NIL. USEORDER. USE-QNAME. USE-
TYPE. USE-UNION. WHITESPACE.
30.2.7 "Qualifyinglnformation" должна всегда присутствовать.
30.3 Действие на результат кодирования
30.3.1 Один из следующих пяти подразделов (30.3.2 — 30.3.6) применяется.
30.3.2 Если тип — не строка битов с поименованными битами и "TextToBeUsed" отсутствует,
результатом кодирования "ExtendedXMLValue" каждого значения, на которую ссылается уточняющая
информация для этой команды, должна быть строка символов, содержащая символы идентификатора
(или будет true или false в случае булевских типов). Для целочисленных типов с поименованными
значениями должны быть использованы идентификаторы или соответствующие значения (как выбор
кодера).
30.3.3 Если тип — строка битов с поименованными битами и ’TextToBeUsed" отсутствует, строка сим
волов. идентичная идентификатору бита должна представлять бит, когда это установлено. Каждое
абстрактное значениедолжно быть закодировано как сцепление (возможно пустое) этих строк символов
для всех битов, которые установлены и разделены "пробелом с переходом" (см. 7.1.5).
30.3.4 Если тип — не строка битов с поименованными битами и "TextToBeUsed" присутствует, то сле
дующие подразделы применяются (ноем. 30.3.5).
30.3.4.1 Если применяется альтернатива "NewName”. строка символов использованная для
кодирования значения, идентифицированного "Qualifyinglnformation*.— "NesvName". Каждое появление сим
волов "<’ ,*>” ив "NewName"будет замененоодной изуправляющих последовательностей ’ <", ">",
и "&" соответственно, или управляющей последовательностью формы "&#п;" или "&#хп;", определен
ной в ИСО/МЭК 8824-1.11.15.8.
30.3.4.2 Если применяется альтернатива "Keyword”,строка символов, использованная для кодирова
ния значений типа, — имя идентификатора, модифицированное, какопределено ниже.
30.3.4.3 Если "Keyword" — CAPITALIZED, то первый символ имени заменяется заглавным эквивален
том. иначе имя не меняется.
30.3.4.4 Если "Keyword" — UNCAPITALIZED, то имя неизменно.
30.3.4.5 Если "Keyword" — UPPERCASED. то все символы имени, которые являются строчными бук
вами. заменяются их прописными эквивалентами. Другие символы неизменны.
30.3.4.6 Если "Keyword" — LOWERCASED, то все символы имени, которые являются прописными
буквами, заменяются их строчными эквивалентами. Другие символы неизменны.
30.3.5 Если тип — целочисленный тип с поименованными значениями, строки символов, созданные с
применением подразделов 30.3.4.1 —•30.3.4.6, будут использоваться вместо идентификаторов. Строки
символов или соответствующие значения должны использоваться (как выбор кодера).
30.3.6 Если тип— строка битов с поименованными битами и "TextToBeUsed" присутствует, подразде
лы 30.3.4.1 — 30.3.4.6 будут применены к каждому идентификатору бита, чтобы создать строку символов,
которая представляет бит. когда он установлен. Значение строки битов должно быть закодировано как
сцепление (возможно пустое) этих строк символов для всех битов, которыеустановлены и разделены "про
белом с переходом" (см. 7.1.5).
55