ГОСТ Р ИСО/М ЭК 8824-4-2003
ParameterizedObjectAssignment:: =
object reference
ParameterList
DcfnedObjec tClass
u . .
ObjectClass
ParameterizedObjectSetAssignment:: =
objectsetreference
ParameterList
DefinedObjectClass
“• . з»’
ObjectSet
8.3 Конструкция “ParameterList’*есть список параметров “Parameter”, заключенных в фигур
ные скобки.
ParameterList: : =Parameter+■“)”
Каждый параметр “Parameter” состоит из пустой ссылки “DummyReference” и, возможно, из
параметра управляющего слова “ParamGovernor”.
Parameter: : = ParamGovernorDummyReference | DummyReference
ParamGovernor : : = Governor | Dummy-Governor
Governor: : = Type ] DefinedObjectClass
Dummy-Governor: : = DummyReference
DummyReference :: = Reference
"DummyReference" в “Parameter” может замешаться:
а) “Type” или “DefinedObjectClass”, в том случае, когда не должно быть “ParamGovernor”;
б) “Value" или “ValueSet”; в этом случае должен присутствовать “ParamGovernor”; когда
“ParamGovernor” есть “Governor”, он должен быть "Туре”, когда “ParamGovernor” есть “Dummy-
Governor”, фактическим параметром для “ParamGovernor” должен быть “Туре”;
в) “Object” или “ObjectSet”; в этом случае должен присутствовать “ParamGovernor”; если
“ParamGovernor” есть “Governor”, этодолжен быть “DefinedObjectClass”, если “ParamGovernor” есть
“Dummy-Governor”, го фактическим параметром для “ParamGovernor” должен быть “DefinedOb-
jectClass”;
“Dummy-Governor” должен быть “DummyReference”, который не имеет “Governor”.
8.4 Областью действия “DummyReference”, появляющейся в конструкции “ParameterList”,
является сам “ParameterList” вместе с той частью “ParameterizedAssignment”, которая следует за “:: =”.
“DummyReference” скрывает любую другую ссылку “Reference” с таким же именем в этой области
действия.
8.5 Использование пустой ссылки “DummyReference” в ее области действия должно быть
согласовано с ее синтаксической формой, и (там, где применимо) с управляющим параметром, а
все использования той же самой “DummyReference” должны быть согласованы друг с другом.
П р и м е ч а н и е —Когда синтаксическая форма имени пустой ссылки двусмысленна (например, нс
ясно, используется "objcctclavsreference" или "typcrelercncc"), неоднозначность может быть разрешена при
первом использовании имени пустой ссылки справа от оператора присваивания. После этого характер имени
пустой ссылки становится известным. Однако характер пустой ссылки нс определяется полностью по правой
стороне оператора присваивания, когда он, в свою очередь, используется только как фактический параметр в
параметризованной ссылке; в этом случае характер пустой ссылки должен быть определен при рассмотрении
определения этой параметризованной ссылки. Пользователи нотации должны учитывать, что такая практика
может сделать спецификации ASN.I менее понятными, поэтому рекомендуется предусматривать соответствую
щие комментарии для пояснений.
4