Хорошие продукты и сервисы
Наш Поиск (введите запрос без опечаток)
Наш Поиск по гостам (введите запрос без опечаток)
Поиск
Поиск
Бизнес гороскоп на текущую неделю c 29.12.2025 по 04.01.2026
Открыть шифр замка из трёх цифр с ограничениями

ГОСТ Р ИСО/МЭК8824.4-2003; Страница 8

или поделиться

Ещё ГОСТы из 41757, используйте поиск в верху страницы ГОСТ Р ИСО/МЭК 8824.3-2002 Информационная технология. Абстрактная синтаксическая нотация версии один (АСН 1). Часть 3 Спецификация ограничения ГОСТ Р ИСО/МЭК 8825-93 Информационная технология. Взаимосвязь открытых систем. Спецификация базовых правил кодирования для абстрактно-синтаксической нотации версии один (АСН. 1) ГОСТ Р ИСО/МЭК 8825-93 Информационная технология. Взаимосвязь открытых систем. Спецификация базовых правил кодирования для абстрактно-синтаксической нотации версии один (АСН. 1) Information technology. Open Systems Interconneсtion. Specification of Basic Encoding Rules for Abstract Syntax Notation One (ASN. 1) (Настоящий стандарт определяет набор базовых правил кодирования, который может служить основой для определения синтаксиса передачи для значений, определенных с помощью нотации ГОСТ Р ИСО/МЭК 8824. Базовые правила кодирования применяют также при декодировании полученного с их помощью синтаксиса передачи для определения значений переданных данных. Описываемые базовые правила кодирования используют во время взаимодействия компонентами, предоставляющими услуги уровня представления, когда это требуется контекстом представления) ГОСТ Р ИСО/МЭК 8825.1-2003 Информационная технология. Правила кодирования АСН 1. Часть 1 Спецификация базовых (BER), канонических (CER) и отличительных (DER) правил кодирования
Страница 8
ГОСТ Р ИСО/МЭК 8824-4-2003

Пример

Рассмотрим следующее присваивание параметризованного класса объектов:

PARAMETERIZED-OBJECT-CLASS {TypeParam, INTEGER: valueParam,

INTEGER: VahieSetParam} : : =

CLASS {

&valueFieldl

&valueField2

&valueField3

&valueSetField

TypeParam,

INTEGER DEFAULT valueParam, INTEGER (ValueSetParam),

INTEGER DEFAULT {ValueSetParam}

Для определения правильного использования пустых ссылок “DummyReference” в контексте “ParameterizedAssignment” и, только для той цели, могут быть рассмотрены “DummyReference” для того, чтобы быть определенными следующим образом:

TypeParam : : = UnspecifieldType

valueParam INTEGER : : = unspecifieldIntegerValue

ValueSetParam INTEGER : : = {UnspecifieldInteger ValueSet}

где:

а)    TypeParam есть пустая ссылка “DummyReference”, которая замещает “Type”. Поэтому TypeParam может быть использован везде, где можно использовать “typereference”, например как “Type” для значения фиксированного типа поля valueFieldl.

б)    ValueParam есть пустая ссылка “DummyReference”, которая замещает значение целочисленного типа. Следовательно, valueParam можно использовать везде, где можно использовать “valueref-erence” для целочисленного значения, например как значение по умолчанию для значения фиксированного-типа поля valueField2.

в)    ValueSetParam есть пустая ссылка “DummyReference”, которая замещает множество значений целочисленного типа. Следовательно, ValueSetParam можно использовать везде, где можно использовать “typereference” для целочисленного значения, например как “Type” в нотации “Con-tainedSubtype” для valueField3 и ValueSetField.

8.6 Каждая пустая ссылка “DummyReference” должна использоваться по крайней мере один раз в пределах своей области действия.

Примечание — Если пустая ссылка “DummyReference” так и не появилась, то соответствующий “ActualParameter” не влияет на определение, мог бы1 быгть просто «отброшен», хотя пользователю могло бы1 казаться, что имеет место некая спецификация.

Присваивания “ParameterizedValueAssignment”, “ParameterizedValueSetTypeAssignment”, “Parameterize-dObjectAssignment” и “ParameterizedObjectSetAssignment”, прямо или косвенно содержащие ссылку на себя, недействительны.

8.7    В определении “ParameterizedType”, “ParameterizedValueSet” или “ParameterizedOb-jectClass” пустая ссылка “DummyReference” не должна передаваться как тегированный тип (как фактический параметр) рекурсивной ссылке на этот “ParameterizedType”, “ParameterizedValueSet” или “ParameterizedObjectClass” (см. А.3).

8.8    В определении “ParameterizedType”, “ParameterizedValueSet” или “ParameterizedObjectClass” не должно быть циклической ссылки на определяемый элемент, если только такая ссылка прямо или косвенно не помечена как OPTIONAL или, в случае “ParameterizedType” и “ParameterizedValueSet”, дана путем ссылки на выборочный тип, по крайней мере одна из альтернатив которого является нециклической в определении.

8.9    Управляющий пустой ссылки “DummyReference” не должен включать в себя ссылку на другую “DummyReference”, если эта другая “DummyReference” также имеет управляющего.

8.10    В параметризованном присваивании правая сторона “: : = ” не должна состоять исключительно из “DummyReference”.

8.11    Управляющий “DummyReference” не должен требовать знания “DummyReference” или определяемого параметризованного имени ссылки.

5