ГОСТ Р ИСО/МЭК 8824-3-2002
2 В данном разделе описано применение табличного ограничения, использующего множество информа
ционных объектов, которое идеш ифиниронано в главной нотации, определяющей порождающий тип; другими
словами, определено и идентифицировано разработчиком протокола. Оно не удовлетворяет требованиям для
фактического множества информационных объектов, которое должно быть использовано как ограничение
в конкретном абстрактном синтаксисе, гак как может- изменяться от синтаксиса к синтаксису. ИСО/МЭК 8824-4
обеспечивает нотацию, которая, кроме всего прочего, позволяет множеству информационных объектов, ис
пользуемому в этом ограничении, быть параметром, значение которого подставляется позже различными
группами пользователей.
Прн мер
Для иллюстрации текста настоящего раздела использован следующий пример. Тип ErrorReiurn
представляет категорию ошибки errorCategory и один или несколько кодов ошибок erroiCodes с
соответствующей информацией errorinfo для этой категории. Это представление обеспечивается
классом информационных объектов ERROR-CLASS со специфическим множеством объектов, оп
ределенных в множестве информационных объектов ErrorSet, которое используется для ограничения
полей ErrorReiurn.
Имеем
ERROR-CLASS :: = CLASS
{
•Sicategorv PrintableString (SIZE (I)),
&code INTEGER.
&Tvpe
}
WITH SYNTAX {&catcgorv &code &Type)
ErrorSet ERROR-CLASS ; : =
{
{«A* I INTEGER} |
{-A* 2 REAL} |
(«В» I CARACTER STRING} |
{«В» 2 GeneralSiring)
}
ErrorReiurn :: = SEQUENCE
l
errorCategorv ERROR-CLASS.&category ((ErrorSet}) OPTIONAL,
errorsSEQUENCE OF SEQUENCE
(
errorCode ERROR-CLASS.&code
({ErrorSet}{0errorCategory}),
errorinfo ERROR-CLASS.&Type
({ErrorSet}{©errorCategory, @errorCode))
}OPTIONAL
}
Ассоциированная таблица множества ошибок ErrorSet может быть изображена следующим
образом.
Acatcgory
AcodeЛ Туре
*А»
«А»
•В»
»В»
1IN T EG ER
2
REAL
I
CH ARA CTER ST R IN G
2GeneralSiring
10.1 Табличное ограничение может быть применено только к типу «ObjectClassFieldType* или
«InstanceOfType». Первый случай определяется в последующих частях данного раздела, второй —в
приложении А.
10.2 Тип «ObjeciClassFieldType* идентифицирует класс информационных объектов и одно из
допустимых имен полей «FieldName» этого класса. Табличное ограничение идентифицирует мно
жество информационных объектов, ассоциированная таблица которых определяет множество огра
ниченных значений, как установлено в ГОСТ Р ИСО/МЭК 8824-2. раздел 13.
4