ГОСТ 1» НСО/М ЭК 8824-1-2001
F.1.7 Следует учитывать, что в некоторых случаях волком типе имеются значения (например 7—20 в А.
см. F.1.I), которые имеют отображения в значения в другом типе (например 7—20 в Е. см. F.J.1). а другие
значения (например равные или больше 21 в А. см. F. 1.1) таких отображений нс имеют. Ссылка на такое
значение в А нс даст допустимой ссылки на значение в Е. (В данном примере весь тип Е имеет отображение
значений в подмножество А. В общем случае, в обоих типах могут быть подмножества значений, имеющих
отображения, и подмножества значении без отображений).
F.1.8 В стандартах ACH.I используется текст на естественном языке для спецификации допустимости в
приведенных выше и аналогичныхслучаях. В F.6 даны точные требования для допустимости, к которым следует
обращаться при затруднениях со сложными конструкциями.
П р и м е ч а и и е —То обстоятельство, что определено отображение значений между двумя конструк
циями “Туре*, позволяет использовать ссылки на значения, установленные с использованием одной конструк
ции Type", для идентификации значений в другой конструкции "Туре", которая достаточно похожа на первую.
Эго позволяет типизировать пустые н фактические параметры, используя текстуально разные конструкции
"Туре" без нарушения правил совместимости пустых и фактических параметров. Кроме того, это позволяет
специфицировать поля классов информационных объектов, используя одну конструкцию Туре", а соответ
ствующие значения в информационном объекте —используя другую конструкцию "Туре", которая достаточно
похожа на первую. (Эти примеры не натяютси исчерпывающими). Рекомендуется, чтобы преимущества, ттрсдо-
стаатяемые этой свободой, использовались в таких простых случаях, как "SEQUENCE OF INTEGER" или
"CHOICE (ml INTEGER, id OBJECT IDENTIFIER!", а нс в более сложных конструкциях "Type".
F.2 Отображения значений
F.2.1 Лежащей в основе моделью являются типы, такие как непсрскрываюшиеся контейнеры, в которых
находятся значения, и конструкция АСН.1 "Туре", каждое нояатснис которой определяет новый, отличный от
других, тип (см. рисунки F.I и F.2). В настоящем приложении устанавливается, когда между такими типами
существует отображение значений, позволяющее использовать ссылку на значение одного типа, когда нужна
ссылка на значение некоторого другого.
П р и м е р . Рассмотрим
X :: - INTEGER
Y : : INTEGER
где X и Y — имена ссылок на два разных типа (указатели), но между этими типами существует отображение
значений, так что любая ссылка на значение X может использоваться там. где управляет Y (например после
DEFAULT).
F.2.2 На множестве всех возможных значений АСН.1 отображение значений относится к парс значений.
Все множество отображений значений является математическим отношением. Это отношение обладает следу
ющими свойствами: оно рефлексивно (каждое значение АСН.1 отображается само на себя),
симметрично (если, по определению, существует отображение значения х! в значение х2. то существует
и отображение значения х2 в xl) и транзитвно (если существуют отображения значения х1 в х2 и х2 в хЗ,
то существует и отображение значения xl в хЗ).
F.2.3 Для любых двух данных типов XI и Х2. рассматриваемых как множества значений, множество
отображений значений из XI в Х2 является отношением один к одному, т. е. для всех значений xl из XI и х2 из Х2.
если существует отображение значения xl в х2, то:
а) нет отображения значения xl в значение из Х2, отличное от х2. и
б) ист отображения значения из XI (отличного от xl) в значение х2.
F.2.4 Когда существует отображение значений между значениями xl и х2. ссылка на любое из этих
значений автоматически может использоваться для ссылки на другое значение, если это требуется некоторым
управляющим типом.
П р и м е ч а н и е — Определение отображений между значениями некоторых конструкций Туре"
предназначено только для обеспечения гибкости при использовании нотации АСН.1. Существование таких
отображений нс имеет никакого отношения к тому, что эти два типа несут одну и ту же прикладную семанти ку.
но рекомендуется, чтобы конструкции АСН.1. которые были бы недопустимы без отображения значений,
использовались только в тех случаях, когда соответствующие типы действительно выражают одну и ту же
прикладную семантику. Часто отображения значения будут существовать в больших спецификациях между
типами, которые являются идентичными конструкциями АСН.1, но несут совершенно разную прикладную
семантику, и существование таких отображений никогда нс должно использоваться при определении допусти
мости всей спецификации.
F.3 Определения идентичных типов
Г.3.1 Понятие "определения идентичных типов" используется для того, чтобы было возможно определить
отображения значений между двумя экземплярами Туре", которые либо идентичны, либо достаточно похожи
дтя использования в качестве взаимозаменяемых. Дтя определения точного смысла выражения "достаточно
90