23.4.1 Определенный синтаксис
Синтаксис для определения объектов кодирования для классов в категории "цепочка знаков" определяется следующим образом:
#CHARS ::= ENCODING-CLASS {
-- Спецификация предварительного выравнивания и заполнения (см. 22.2)
&encoding-space-pre-alignment-unit Unit (ALL EXCEPT repetitions) DEFAULT bit,
&encoding-space-pre-padding Padding DEFAULT zero,
&encoding-space-pre-pattern Non-Null-Pattern (ALL EXCEPT different:any)
DEFAULT bits:'0'B,
-- Спецификация начального указателя (см. 22.3)
&start-pointer REFERENCE OPTIONAL,
&start-pointer-unit Unit (ALL EXCEPT repetitions) DEFAULT bit,
&Start-pointer-encoder-transforms #TRANSFORM ORDERED OPTIONAL,
-- Кодирование значений знаков
&value-reversal BOOLEAN DEFAULT FALSE,
&Transforms #TRANSFORM ORDERED OPTIONAL,
&Chars-repetition-encodings #CONDITIONAL-REPETITION ORDERED OPTIONAL,
&chars-repetition-encoding #CONDITIONAL-REPETITION OPTIONAL,
-- Спецификация идентификационного описателя (см. 22.9)
&exhibited-handle PrintableString DEFAULT "default-handle",
&Handle-positions INTEGER (0..MAX) OPTIONAL,
&handle-value-set HandleValueSet DEFAULT tag:any
} WITH SYNTAX {
[ALIGNED TO
[NEXT]
[ANY]