ГОСТ Р ИСО/МЭК 8825-3—2016
RepetitionClass ::=
DcfinodEncodingClass |
RapetitionClassReference
16.4.2 «RepetitionStructure» указывает на наличие при кодировании повторяющихся случаев появле
ния «EncodingStructure» в продукции. Факультативная конструкция «Size» (см. 16.2.9) указывает границы
для числа повторений. Механизм, который определяет, сколько именно повторений «EncodingStructure»
имеется в кодировании, указывается объектом кодирования класса «RepetitionClass». «DofinedEncoding-
Class» должен быть классом из категории «повторение» (см. 16.1.10).
16.4.3 «RepetitionStructure» является конструктором кодирования: когда объект кодирования приме
нен к этой структуре согласно разделу 13.2. кодирование в «RepetitionClass» определяет механизмы для
определения числа повторений, а точка приложения затем переходит к «EncodingStructure» в продукции.
Примечание — Знаки «{» и «}» используются в этой конструкции, но не присутствуют в соответству
ющей конструкции АСН.1 SEQUENCE OF. Это было сделано во избежание синтаксической неоднозначности в
определении структуры.
16.5 Структура кодирования конкатенации
16.5.1 Продукцией «ConcatenationStructure» является:
ConcatenationStructure ::=
ConcatenatlonClass
Т
ConcatComponents
т
ConcatenationClass ::=
DefinedEncodingClass |
ConcatenationClassReference
ConcatComponents ::=
C o n c a tC o m p o n e n t*
ConcatComponent ::=
NamedField
ConcatComponentProsence ?
ConcatComponentPresence ::=
OPTIONAL-ENCODING
OptionalClass
OptionalClass
DefinedEncodingClass |
OptlonalltyClassReference
16.5.2 «ConcatenationStructure» указывает на наличие при кодировании нуля или одного кодиро
вания для каждой из «EncodingStructure» в ее «NamedField». «DefinedEncodingClass» в «Concatena
tionClass» должен быть классом в категории «конкатенация» (см. 16.1.9). a «DefinedEncodingClass» в
«OptionalClass» должен быть классом в категории «факультативные возможности» (см. 16.1.3).
16.5.3 Если «ConcatComponentPresence» отсутствует в «composant». то «EncodingStructure» в
этом именованном поле должна появляться только один раз при кодировании.
16.5.4 Если «ConcatComponentPresence» присутствует, то механизм, который определяет, имеет
ся ли кодирование соответствующей «EncodingStructure», указывается объектом кодирования, который
кодирует «OptionalClass».
16.5.5 Порядок, в котором кодирования каждого «NamedField» появляются в кодировании конка
тенации (и средства для указания, какой «NamedField» представляет кодирование), указывается объ
ектом кодирования класса «ConcatenationClass».
16.5.6 «ConcatenationStructure» является конструктором кодирования: когда объект кодирования
применен к этой структуре согласно разделу 13.2. кодирование в «ConcatenationClass» определяет про
цедуры конкатенации, а точка приложения затем переходит к каждой «EncodingStructure» в ее имено
ванных полях.
50