ГОСТ Р ИСО/МЭК 8825-3—2016
22.4.3.8Если «DETERMINED BY» равен «field-to-be-used», то кодер проверяет, что значение в
ссылке «USING» при преобразовании с помощью «DECODER-TRANSFORMS» {если он есть) равно «s».
Применение будет ошибочным, когда это условие не удовлетворяется, а кодирование не продолжается.
22.4.4 Действия декодера
22.4.4.1 Если «SIZE» является положительным значением, то декодер определяет пространство
кодирования как кратное единицам «MULTIPLE OF».
22.4.4.2 Если «SIZE» равен «fixod-to-max» или «self-delimitlng-values». то декодер определя
ет конец пространства кодирования согласно спецификации кодирования значения. Это определение
описано в разделах о спецификации кодирования значения.
22.4.4.3 Если «SIZE» равен «variable-with-determinant», a «DETERMINED BY» установлен в
«container», то декодер использует конец контейнера, указанного в «USING», в качестве конца про
странства кодирования.
22.4.4.4 Если «SIZE» равен «variable-with-determinant». a «DETERMINED BY» установлен (воз
можно. по умолчанию) в «field-to-be-set», то декодер восстанавливает значение «s» путем применения
реверсирования «ENCODERTRANSFORMS» (если он имеется) к значению ссылки «USING».
22.4.4.5 Если «DETERMINED BY» равен «fiold-to-be-used», то декодер восстанавливает значе
ние «s» путем применения «DECODER-TRANSFORMS» (если он имеется) к значению этого поля.
22.5Определение факультативных возможностей
22.5.1 Признаки кодирования, синтаксис и цель
22.5.1.1 При определении факультативных возможностей используются следующие признаки ко
дирования:
&optionality-determination
&optionality-referonce
&Encoder-transforms
&Decodor-transforms
&handle-id
Optionality Determination
DEFAULT fiold-to-bo-set,
REFERENCE OPTIONAL,
«TRANSFORM ORDERED OPTIONAL,
«TRANSFORM ORDERED OPTIONAL,
PrintableString
DEFAULT "default-handle"
22.5.1.2Для определения факультативных возможностей должен использоваться следующий
синтаксис:
PRESENCE
[DETERMINED BY Aoptionality-dotormination
[HANDLE &handle-id]]
[USING &optionality-reference
[ENCODER-TRANSFORMS &Encodor-transforms]
[DECODER-TRANSFORMS &Decoder-transformsj]
22.5.1.3 Определением типов, используемых в описании факультативных возможностей, является:
OptionalityDetorminationENUMERATED
{field-to-be-set, fiold-to-be-used. container, handle, pointer} -- (см. 21.5)
22.5.1.4 Цель этой спецификации — описать правила, обеспечивающие декодеру возможность
правильно определить, что кодер закодировал значение факультативного компонента. Когда для опре
деления факультативной возможности используется какой-либо указатель, необходима также специфи
кация предварительного выравнивания и начального указателя.
22.5.1.5 Кодер будет кодировать значение факультативного компонента, если этого требует при
ложение. при условии, что такое кодирование не нарушит правил, руководящих присутствием факуль
тативных компонентов.
П р и м е ч а н и е — Примером нарушения такого правипа будет случай, когда наличие (отсутствие) фа
культативного компонента было определено концом контейнера, а приложение позже запросило, чтобы в том же
контейнере были кодированы факультативные компоненты.
89