ГОСТ Р ИСО/МЭК 8825-3—2016
j
| EncodingStructureFiold
EncodingStructureDefn
TagClass ::=
DefinedEncodingClass |
TagClassReference
TagValue ::=
"("number")"
16.2.2 «EncodingStructure» определяет класс кодирования на базе структуры с использованием
нотации, описанной ниже. Эта нотация позволяет определять произвольные классы кодирования с по
мощью предопределенных классов кодирования и определенных классов кодирования (которые мо гут
быть генерируемыми структурами кодирования) для битовых полей, конструкторов кодирования и
классов «процедура кодирования» в категории «факультативные возможности». Все классы, которые
определяет «EncodingStructure», относятся к категории «структура кодирования» (примеры назначения
структуры кодирования, иллюстрирующие многие синтаксические структуры, приведены в D.2.8.4, а в
D.2.2.3 приведен пример использования «TAG).
Примечание — Синтаксис препятствует спецификации тегированного класса немедленно после друго
го тегированного класса в определении структуры кодирования, а также такие структуры не могут вырабатываться
с несколькими текстуальными тегами в определении типа АСН.1 [см. перечисление е) 11.3.4.1].
16.2.3 «DefinedEncodingClass» определен в 10.9.1; он должен быть классом в группе категорий
«битовое поле».
16.2.4 «DefinedEncodingClass» в «TagClass» должен быть классом в категории «тег» (см. 16.1.3).
16.2.5 Элемент «number» в «TagValue» указывает номер тега, который связан с классом в катего
рии «тег».
16.2.6 Продукцией «EncodingStructureField» является:
Bounds?
Size?
Size?
Size?
Size?
Bounds?
Bounds?
Size?
EncodingStructureFiold ::=
«NUL
| #BOOL
| #INT
| #BITS
|«OCTETS
| «CHARS
«PAD
«BIT-STRING
«BOOLEAN
«CHARACTER-STRING
«EMBEDDED-PDV
«ENUMERATED
«EXTERNAL
«INTEGER
«NULL
«OBJECT-IDENTIFIER
«OCTET-STRING
«OPEN-TYPE
«REAL
«RELATIVE-OID
«TIME
«DATE
«TIME-OF-DAY
«DATE-TIME
«DURATION
«GenoralizedTime
«UTCTime
«ObjcctDcscriptor
Size?
47