ГОСТ Р ИСО/МЭК 8825-4 — 2009
П р и м е ч а н и е — Рекомендуется, чтобы ограничение типов набор-из или последовательность-из
выражалось как:
(CONSTRAINED BY
{/* Каждая UTF&String должна соответствовать "AnyAttributeFormat". определенному в ИСО/МЭК 8825-4,
18. V»
17.2.4 Не должно быть окончательной команды кодирования UNTAGGED. применяемой к типу, кото
рый имеет эту окончательную команду кодирования или к включающему типу.
17.2.5 Каждый "URIList"должен содержать не более одного появления ABSENT и не должен содер
жатьдвух идентичных "QuotedURI".
17.2.6 Формат каждой UTF8String должен соответствовать продукционному правилу
"AnyAttributeFormat":
AnyAttributeFomiat::=
URI?
NCName & "=’ & xmlcstring
17.2.7 Для определения продукционного правила "URI" см. 28.1.4. для определения продукционного
правила "NCName” см. 28.1.7. Лексическая единица "xmlcstring" определена в ИСО/МЭК8824-1.11.15.
17.2.8 Если имеется "NamespaceRestriction" команды кодирования FROM,то "URI" в "AnyAttributeFormat*
должен быть "URI* a ’QuotedURI" в "URIList" и может отсутствовать, только если ключевое слово a ABSENT
встречается в "URIList”.
17.2.9 Если имеется "NamespaceRestriction" команды кодирования EXCEPT, то "URI" в
"AnyAttributeFormat” недолжен быть "URI" в "QuotedURI" в "URIList" и не можетотсутствовать, если ключе
вое слово ABSENT встречается в "URIList".
17.2.10 "Xmlcstring* должно бытьсинтаксичесхи правильным значением XML атрибута (определенным
в W3C XML. раздел 3), которому предшествует и после которого следует или единственный символ
APOSTROPHE (см. раздел 38), или единственный символ QUOTATION MARK (см. раздел 34).
17.2.11 Применение этой команды кодирования и команды кодирования ATTRIBUTE к различным
компонентам включающего типа не будет нарушать условий, приведенных в 19.3.11.
17.2.12 Эта команда кодирования не должна быть назначена, если нет команды кодирования
GLOBAL-DEFAULTS MODIFIED-ENCODINGS в разделе управления кодированием.
17.2.13 Тип с этой окончательной командой кодирования не должен иметь ни одной из перечислен
ных окончательных команд кодирования: LIST. PI-OR-COMMENT или UNTAGGED.
П р и м е ч а н и е — Нижеперечисленные окончательные команды кодирования никогда не могут
появляться вместе с этой окончательной командой кодирования потому, что их применение к этому типу
запрещено: ANY-ELEMENT. ATTRIBUTE. BASE64, DECIMAL. DEFAULT-FOR-EMPTY. EMBED-VALUES, TEXT.
USE-NIL. USE-NUMBER. USE-ORDER. USE-QNAME. USE-TYPE. USE-UNION. WHITESPACE.
17.2.14 В "TargetList" недолжно быть никакой уточняющей информации.
17.3 Действие на результат кодирования
17.3.1 Если тип кодируется как тип верхнего уровня, эта команда кодирования должна игнориро
ваться.
17.3.2 "ExtendedXMLNamedValue"дляэтогокомпонентанедолжнавключаться в
"ExtendedXMLSequenceValue" или "ExtondedXMLSetValue" типа включающей последовательности или
набора. Вместо этого значение включающего типа должно кодироваться с использованием значения каж
дой UTF8String какатрибута "Attribute" (см. 19) включающего элемента, специфицированного ниже.
17.3.3 Кодер должен:
а) обрабатывать каждый "URI". который присутствует в UTF8String. как требующий, чтобы следую
щий "NCName" (имя атрибута)был пространством имен ограниченного применения с пространством имен,
определенным "URI". и рассматривать отсутствие "URI" в UTF8String как признак того, что следующий
"NCName" недолжен быть пространством имен ограниченного применения и должен тогда удалить "URI" из
UTF8String;
б) вставить в результат кодирования любые необходимые декларации пространства имен с масшта
бами охвата, которые включают вставляемые атрибуты для обеспечения того, чтобы необходимые уточне
ния пространства имен ’NCName”. идентифицированные в (а), былидостигнуты;
в) вставить каждый UTF8String (после удаления "URI")как атрибут в включающем элементе, включая
префиксы пространства имен как обязательные перед каждым "NCName" для обеспечения того, чтобы
требования, приведенные в (а) были удовлетворены.
37