ГОСТ Р ИСО/МЭК 8825-2-2003
8 Соответствие
8.1 Динамическое соответствие устанавливается в разделе 9.
8.2 Статическое соответствие устанавливается теми стандартами, которые определяют применение настоящих правил уплотненного кодирования.
Примечание — В приложении С настоящего стандарта дано руководство по статическому соответствию относительно обеспечения двух вариантов двух алгоритмов правил кодирования. Это руководство предназначено для обеспечения взаимодействия при использовании для некоторых приложений преимуществ кодирований, не являющихся ни надежно передающими, ни каноническими.
8.3 Правила в настоящем стандарте специфицированы в терминах процедуры кодирования. Реализации не обязаны зеркально отображать указанную процедуру при условии, что для применяемого синтаксиса передачи битовая строка, созданная как полное кодирование значения абстрактного синтаксиса, идентична одной из строк, определенных в настоящем стандарте.
8.4 Требуется, чтобы реализации, выполняющие декодирование, создавали значение абстрактного синтаксиса, соответствующее любой полученной битовой строке, которая могла бы быть создана отправителем согласно правилам кодирования, идентифицированным в связанном с декодируемыми данными синтаксисе передачи.
Примечания
1 Вообще говоря, нет альтернативных кодирований для определенного в настоящем стандарте BASIC-PER. BASIC-PER становится каноническим, если в других стандартах определить надежно передающую операцию и ограничиться некоторыми из альтернатив кодирования. CANONICAL-PER представляет альтернативу для правил различающего и канонического кодирования (см. ГОСТ Р ИСО/МЭК 8825-1), когда требуется каноническое и надежно передающее кодирование.
2 Когда для обеспечения канонического кодирования используется CANONICAL-PER, рекомендуется, чтобы каждое полученное из него хеш-кодирование было связано идентификатором алгоритма, который идентифицирует CANONICAL-PER как преобразование из значения абстрактного синтаксиса в исходную битовую строку (которая затем была хеширована).
9 Подход к кодированию, используемый PER
9.1 Применение нотации типа
9.1.1 Настоящие правила кодирования используют нотацию типа АСН. 1 и могут быть применены только для кодирования значений одного типа АСН. 1, определенного с использованием этой нотации.
9.1.2 В частности, но не исключительно, они зависят от следующей информации, находящейся в модели типа и значения АСН. 1, лежащей в основе использования нотации:
а) вложенность выборочных типов внутри выборочных типов;
б) теги, установленные в компонентах типа «множество», альтернативах выборочного типа и перечислимых значениях;
в) являются ли компоненты типа «множество» или «последовательность» факультативными или нет?
г) имеют ли компоненты типа «множество» или «последовательность» значение DEFAULT или нет?
д) ограниченный диапазон значений типа, который возникает вследствие применения видимых (только) для PER ограничений;
е) является ли компонент открытым типом?
ж) присутствует ли маркер расширения?
9.2 Использование тегов для обеспечения канонического порядка
Настоящий стандарт требует, чтобы компоненты типа «множество» и выборочного типа были канонически упорядочены независимо от текстуального порядка компонентов. Канонический порядок устанавливается путем сортировки тегов компонентов, как определено в ГОСТ Р ИСО/МЭК 8824-1, 8.4.
9.3 Видимые для PER ограничения
Примечание — То обстоятельство, что некоторые ограничения АСН. 1 могут быть невидимыми для PER в отношении целей кодирования и декодирования, не влияет на использование ограничений при обработке ошибок, обнаруженных во время декодирования, и не подразумевает, что значения, нарушающие такие ограничения, являются допустимыми для передачи соответствующим отправителем.
7