ГОСУДАРСТВЕННЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
Информационная технология
АБСТРАКТНАЯ СИНТАКСИЧЕСКАЯ НОТАЦИЯ ВЕРСИИ ОДИН (АСН. 1)
Часть 2
Спецификация информационного объекта
Нзланно официальное
ГОССТАНДАРТ РОССИИ
Предисловие
1 РАЗРАБОТАН Государственным научно-исследовательским и конструкторско-технологическим институтом «ТЕСТ* Министерства Российской Федерации по связи и информатизации
ВНЕСЕН Министерством Российской Федерации по связи и информатизации
2 ПРИНЯТ И ВВЕДЕН В ДЕЙСТВИЕ Постановлением Госстандарта России от 6 сентября 2001 г. № 375-е г
3 Настоящий стандарт содержит полный аутентичный текст международного стандарта ИСО/МЭК 8824-2—98 «Информационная технология. Абстрактная синтаксическая нотация версии один (АСН. I). Часть 2. Спецификация информационного объекта» с Дополнением № 1 (1999 г.)
4 ВВЕДЕН ВПЕРВЫЕ
© ИПК Издательство стандартов. 2001
Настоящий стандарт не может быть полностью иди частично воспроизведен, тиражирован и распространен в качестве официального издания без разрешения Госстандарта России
ГОСТ Р ИСО/МЭК 8824-2-2001
Содержание
1 Облает», применения.................
2 Нормативные ссылки................
3 Определения.......................
3.1 Спецификация битовой нотации.....
3.2 Спецификация ограничения........
3.3 Параметризация спецификации АСН.1
3.4 Дополнительные определения.......
4 Сокращения............................................................. 3
5 Соглашение.............................................................. 3
6 Нотация................................................................ 3
6.1 Присвоения.......................................................... 3
6.2 Типы................................................................ 3
6.3 Значения............................................................. 3
6.4 Элементы............................................................ 4
7 Элементы ACH.I.......................................................... 4
7.1 Ссылки на класс информационных объектов................................. 4
7.2 Ссылки на информационный объект........................................ 4
7.3 Ссылки на множество информационных объектов............................. 4
7.4 Ссылки на поле типа.................................................... 4
7.5 Ссылки на поле значения................................................ 4
7.6 Ссылки на поле множества значений....................................... 4
7.7 Ссылки на поле объекта................................................. 4
7.8 Ссылки на поле множества объектов........................................ 4
7.9 Слово............................................................... 5
7.10 Дополнительные ключевые слова......................................... 5
8 Определения ссылок....................................................... 5
9 Определение и присвоение класса информационных объектов....................... 6
10 Список синтаксисов....................................................... 9
11 Определение и присвоение информационного объекта.............................12
12 Определение и присвоение множества информационных объектов....................13
13 Ассоциированные таблицы..................................................15
14 Нотация для типа «поле класса объектов».......................................16
15 Информация из объектов...................................................17
Приложение А Класс информационных объектов TYPE-IDENTIFIER...................19
Приложение В Определения абстрактных синтаксисов...............................20
Приложение С Тип «экземпляр-из*..............................................21
Приложение D Примеры......................................................22
D.1 Пример использования упрошенного класса OPERATION.........................22
D.2 Пример использования «ObjcctClassFicldTypc*...................................23
D.3 Пример использования объектов »» множества объектов...........................23
Приложение Е Руководство по модели АСН.1 расширения множества объектов............24
Приложение F Сводка нотации.................................................25
III
ГОСТ Р ИСО/МЭК 8824-2-2001 Г О С У Д Л Р с; Т В Е н н ы й с тлнд л р т рос с и й с к о й ф е д е р л ц и II
Информационная технология АБСТРАКТНАЯ СИНТАКСИЧЕСКАЯ НОТАЦИЯ ВЕРСИИ ОДИН (АС Н. I)
Часть 2
Спецификация информационного объекта
Information technology. Abstract Syntax Notation One (ASN. I). Information object specification
Дата введения 2002—07—01
1 Область применения
Настоящий стандарт является частью абстрактной синтаксической нотации версии 1 (АСН. I) и устанавливает нотацию для спецификации классов информационных объектов, информационных объектов и множеств информационных объектов.
2 Нормативные ссылки
В настоящем стандарте использованы ссылки на следующие стандарты:
ГОСТ Р ИСО/МЭК 8824-1—2001. Информационная технология. Абстрактная синтаксическая нотация версии один (АСН. I). Часть I. Спецификация основной нотации |Рекомендация МККТТ X.6S0 (|‘)07)|
ИСО/МЭК 8824-3—98 Информационная технология. Абстрактная синтаксическая нотация версии один (АСН. I). Часть 2. Спецификация ограничения |Рекомендация МККТТ Х.682 (1997)|
ИСО/МЭК 8824-4—95 Информационная технология. Абстрактная синтаксическая нотация версии один (АСН. I). Часть 4. Параметризация спецификации АСН. I |Рекомендация МККГГ Х.683 (Ю07)|
3 Определения
3.1 Спецификация базовой нотации
II настоящем стандарте используют термины, определенные в ГОСТ Р ИСО/МЭК 8824-1.
3.2 Спецификация ограничения
II настоящем стандарте используют термин, определенный в ИСО/МЭК 8824-3: табличное ограничение
3.3 Параметризация спецификации АСН. I
В настоящем стандарте используют термины, определенные в ИСО/МЭК 8824-4:
а) параметризованный тип;
б) параметризованное значение.
3.4 Дополнительные онрелеления
3.4.1 ассоциированная таблица (для некоторого информационного объекта или множества информаиконных объектов): Абстрактная таблица, получаемая из объекта или множества объектов путем выравнивания иерархической структуры, полученной из-за присутствия полей связи (см. 3.4.13).
Примечание — Ассоциированная таблица может быть использована для опрслслсния точной природы некоторого ограничения (см. ИСО/МЭК 8824-3). которое было определено с использованием множества объектов.
IIманне официальное
3.4.2 синтаксис по умолчанию: Нотация, которая должна использоваться для определения информационных объектов тех классов, авторы определения которых не предоставляют определенный синтаксис (см. пример 11.9).
3.4.3 определяемый синтаксис: Нотация, предоставленная автором определения класса, которая позволяет определять информационные объекш этого класса дружественным пользователю образом.
Приме ч а мне — Например определяемый синтаксис для класса OPERATION может позволить определять экземпляры класса с помощью слова ARGUMENT с последующим &ArgumcntTypc. далее — RESULT с последующим &RcsuliType и CODE с последующим &operationCodc (см. пример 11.10).
3.4.4 расширяемое множество объектов: Множество объектов с маркером расширения.
3.4.5 ноле: Компонент класса информационных объектов. Каждое поле есть поле типа, поле значения фнксированного-тнпа. поле значения переменного-типа. поле множества значений фиксированного-гнил. поле множества значений переменного-'типа, поле информационного объекта или поле множества информационных объектов.
3.4.6 имя ноля: Имя. которое идентифицирует поле некоторого класса: либо класса, который специфицирует поле непосредственно, и в этом случае имя является примитивным именем поля, либо класса, который имеет цепочку полей связи к тому, в котором поле фактически определено (см. 9.13 и 9.14).
3.4.7 поле идентификатора: Поле класса значений фиксированного-типа, выбранное для обеспечения однозначной идентификации информационных объектов данного класса. Значения поля идентификатора, если они применяются, лолжны быть недвусмысленными в пределах любого множества информационных объектов, которое определяется для данного класса. Они могут, но нс обязаны служить для недвусмысленной идентификации информационных объектов данного класса в некоторой широкой области.
II ри мечам ия
1 Пазе идентификатора имеет фиксированный гип ACM. I. но значения этого типа могут быть введены в протокол для идентификации информационных объектов в классе.
2 Область, в которой идентификатор является недвусмысленным, является множеством информационных объектов. Однако она может быть также недвусмысленной в пределах данного абстрактного синтаксиса или в пределах целого прикладного контекста, или даже может быть глобальной для всех классов и всех прикладных контекстов при использовании типа «идентификатор объекта» для поля идентификатора.
3.4.8 информационный объект: Экземпляр некоторого класса информационных объектов, сформированный из множества полей, которые соответствуют спецификациям полей этого класса.
Г1 римсчанне — Например одним конкретным экземпляром информационного объекта класса OPERATION (упоминаемого в 3.4.9) может быть invert Matrix, который имеет пазе AArgumcntTypc, содержащее тип Matrix, поде &ResultType, содержащее также тип Matrix, и поле &opcnuionCode. содержащее значение 7 (см. пример в 10.13).
3.4.9 класс информационного объекта (класс): Множество полей, ((нормирующее игаблон язя определения 1юзможно неограниченной совокупности информштонных объектов (экземпляров класса).
При м е ч а и и е — Например класс информационного объекта OPERATION может быть определен гак. чтобы соответствовать понятию операции «operation* язя удаленных операций. Каждая спецификация ра «личных поименованных полей будет соответствовать некоторому аспекту, который может изменяться от одного экземпляра операции к другому. Таким образом, в ней могут быть поля &ArgumcntTypc. &RcsultTypc и &opcrationCodc. из которых дна первых поля определяют тип. а третье — поле значения.
3.4.10 поле информационного объекта: Поле, которое содержит информационный объект некоторого заданного класса.
3.4.11 множество информационных объектов: Непустое множество информационных объектов, вес из которых одного и того же класса информационных объектов.
Примечание — Например одно множество информационных объектов. MatrixOperations. класса OPERATION (использованного в примере 3.4.9) может содержать inven.Matrix (упомянутую в 3.4.8) вместе с другими связанными операциями, такими как add Matrices, multiply Matrices, и т.л. Такое множество объектов может использоваться при определении абстрактного синтаксиса, который обеспечивает вызов з« возврат результата всех этих операций (см. пример в 12.7).
3.4.12 поле множества з1нформа1шон11ых объектов: Поле, которое содержит множество информационных объектов некоторого заданного класса.
3.4.13 тип «экэемпляр-из*: Тип, определяемый указанием класса информационных объектов, который связывает илентикагоры объектов с типами.
2
ГОС Т Р ИСО/МЭК 8824-2-2001
3.4.14 пале связи: Поле объекта или множества объектов.
3.4.15 тип поле класса объектов: Тип. задаваемый путем указания некоторого поля класса информационных объектов. В ИСО/МЭК 8824-3 определена нотация, обеспечивающая возможность ограничения этого типа путем указания множества информационных объектов данного класса.
3.4.16 примитивное имя поля: Имя. заданное непосредственно определением класса информационных объектов без использования поля связи.
3.4.16 bis рекурсивное определение (класса информационных объектов): Набор определений АСН. I. который не может быть переупорядочен таким образом, что все классы информационных объектов, использованные в конструкции, определены до определения конструкции.
II р имея а н и с — Рекурсивные определения классов информационных объектов допустимы и АСН. I. Рекурсивные определения информационных объектов и множеств информационных объектов недопустимы.
3.4.17 поле типа: Поле, которое содержит произвольный тип.
3.4.18 нате значения: Поле, которое содержит значение. Такое поле может быть либо фиксированного-. либо иеременного-типа. В первом случае тип значения зафиксирован спецификацией поля. Во втором случае тип значения содержится в некотором (заданном) поле типа того же самого информационного объекта.
3.4.19 поле множества значений: Поле, которое содержит непустое множество значений некоторого типа. Такое поле может быть либо фиксированного-, либо псрсмснного-типа. В первом случае тип значений зафиксирован спецификацией поля. Во втором случае тип значений содержится в некотором (заданном) поле типа того же самого информационного объекта.
П ри мсчан нс — Множество значений в поле множества значений лля информационного объекта образует подтип заданного типа.
4 Сокращения
В настоящем стандарте используют следующие сокращения:
АСН. 1 — абстрактная синтаксическая нотация версии 1:
БНФ — Бскуса—Науэра форма.
5 Соглашение
В настоящем стандарте используют соглашения, приведенные в ГОСТ Р ИСО/МЭК 8824-1, раздел 5.
6 Нотация
В настоящем разделе приводят сводку нотаций, определенных в настоящем стандарте.
6.1 Присвоения
В настоящем стандарте определены следующие нотации, которые могут использоваться как атьтернатнвы лля «Assignment» (см. ГОСТ Р ИСО/МЭК 8824-1. раздел 12):
- ObjcctClaxsAssignmcnt (см. 9.1);
- Object Assign ment (см. 11.1);
- ObjcciSctAssignmcnt (см. 12.1);
6.2 Типы
6.2.1 В настоящем стандарте определены следующие нотации, которые могут использоваться как атьтернатнвы для встроенного типа «BuiltinType» (см. ГОСТ Р ИСО МЭК 8824-1. 16.2):
- ObjectClassField Туре (см. 14.1):
- InstanccOfTypc (ем. приложение С).
6.2.2 В настоящем стандарте определены следующие нотации, которые мот исподьзоваться как атьтернатнвы для указываемого типа *RcfcrcnccdTypc» (см. ГОСТ Р ИСО/МЭК 8824-1. 16.3):
- TypcFromObject (см. раздел 15);
- ValucSct From Object (см. раздел 15).
6.3 Значения
6.3.1 В настоящем стандарте определены следующие нотации, которые могут использоваться как альтернативы для встроенного значения «BuiltinValuc* (см. ГОСТ Р ИСО/МЭК 8824-1. 16.8):
- ObjcctClaxsFicldVaiuc (см. 14.6):
- InstanceOfValue (см. приложение С).
3
6.3.2 В настоящем стандарте определена следующая нотация, которая может использоваться как альтернатива дли указываемого значения «RcfcrcnccdValuc» (см. ГОСТ Р ИСО/МЭК 8824-1. 16.9):
- ValueFromObjcci (см. раздел 15):
6.4 Элементы
В настоящем стандарте определена следующая нотация, которая может использоваться как альтернатива для элементов «Elements» (см. ГОСТ Р ИСО/МЭК 8824-1. 46.3):
- ObjcctSetElements (см. 12.3).
7 Элементы АСН. 1
Дополнительно к элементам АСН. I. определенным в ГОСТ Р ИСО/МЭК 8824-1. раздел 11. в настоящем стандарте используют элементы АСН. I. определенные в последующих подразделах. Общие правила, применяемые к этим элементам, тс же самые, что и определенные в ГОСТ Р ИСО/МЭК 8824-1. 11.1. Эти новые элементы АСН. I используют набор символов АСН. I. определенный в ГОСТ Р ИСО/МЭК 8824-1. раздел 10. и дополнительно знак амперсанд («&•).
Примечанне — Примечание в ГОСТ Р ИСО/МЭК 8824-1. 10.1 также применяется к элементам, специфицированным в 7.1 — 7.9.
7.1 Ссылки на класс информационных объектов
Имя элемента — objcctclassrcfcrcncc
Ссылка на класс информационных объектов «objcctclassrcfcrcncc* должна состоять из последовательности символов, определенной в ГОСТ Р ИСО/МЭК 8824-1. 11.2 для «typcrcfercncc*. за исключением того, что в нее не должны включаться буквы нижнего регистра.
7.2 Ссылки на информационный объект
Имя элемента — objcctclassrcfcrcncc
Ссылка на информационный объект «objcctrefcrencc* должна состоять из последовательности символов, определенной в ГОСТ Р ИСО/МЭК 8824-1. 11.4 для «valucrcfcrcncc*.
7.3 Ссылки на множество информационных объектов
Имя элемента — objcctclassrcfcrcncc
Ссылка на множество информационных объектов «objcctsctrcfcrcncc* должна состоять из последовательности символов, определенной в ГОСТ Р ИСО/МЭК 8824-1. 11.2 для «typcrcfercncc».
7.4 Ссылки на поле типа
Имя элемента — typcficldrcfcrcncc
Ссылка на поле типа «typcficldrcfcrcncc* должна состоять из амперсанда («&»). за которым непосредственно следует последовательность символов, определенная в ГОСТ Р ИСО/МЭК 8824-1. 11.2 для «typcrcfercncc*.
7.5 Ссылки на ноле шачения
Имя элемента — valucficldrcfercncc
Ссылка на поле значения «valucficldrcfercncc» должна состоять из амперсанда («&»). за которым непосредственно следует последовательность символов, определенная в ГОСТ Р ИСО/МЭК 8824-1. 11.4 для «valucrcfcrcncc».
7.6 Ссылки на поле множества шачений
Имя элемента — valucsctficldrcfcrcncc
Ссылка на поле множеств;! значений «valucsctficldrcfcrcncc» должна состоять из амперсанда (*&»). за которым непосредственно следует последовательность символов, определенная в ГОСТ Р ИСО/МЭК 8824-1. 11.2 для «typcrcfercncc*.
7.7 Ссылки на ноле объекта
Имя элемента — objcctficldrcfcrcncc
Ссылка на поле объекта «objcctficldrcfcrcncc* должна состоять из амперсанда (•&•). непосредственно за которым следует последовательность символов, определенная в 7.2 для «objectreference*.
7.8 Ссылки на поле множества объектов
Имя элемента — objcctsctficldrefcrcncc
Ссылка на поле множества объектов «objcctsctficldrefcrcncc* должна состоять из амперсанда (•&»). непосредственно за которым следует последовательность символов, определенная в 7.3 для «objcctsct rcfcrc псе».
4
ГОСТ Р ИСО/МЭК 8824-2—2001
7.9 Слово
Имя элемента — word
Слово «word* должно состоять из последовательности символов, определенной в ГОСТ I* ИСО/МЭК 8824-1. 11.2 язя «typereference», за исключением того, что в нее не должны включаться буквы или цифры нижнего регистра.
7.10 Дополнительные ключевые елова
Имена CLASS. INSTANCE. SINTAX и UNIQUE приведены в ГОСТ Р ИСО/МЭК 8824-1. 11.18 как зарезервированные слова.
8 Определения ссылок
8.1 Конструкции
DcfmedOhjectCTass: : =
ExtcmalObjcctClassRcfercncc I objcctclassrefcrencc |
UscfulObjcctClassRcfercncc DcfincdObject : : =
ExtcrnalObjcct Reference I object reference DcfincdObjcctSct :: =
ExternalObjectSct Reference | object sctrcfcrcncc
используются .ъзя ссылок на определения класса. информационного объекта и множества информационных объектов соответственно.
8.2 За исключением, определенным в ГОСТ Р ИСО/МЭК 8824-1. 12.15. альтернативы •objcctclassrefcrencc». «objcctrefcrencc* и •objcctsctreference* должны использоваться только в том модуле, в котором класс, информационный обьскт или множество информационных объектов (см. 9.1, 11.1 и 12.1) присвоены этой ссылке.
Альтернативы «ExtcmalObjcctClassRcfercncc». •ExtcrnalObjcct Reference» и « ExternalObjectSct -Reference* определяются следующим образом:
ExtcmalObjcctClassRcfercncc :: = modulcrcfcrcncc
objectclassrcfcrence ExtcrnalObjcct Reference : : = modulcrcfcrcncc «.*
object reference ExternalObjectSct Reference : : = modulcrcfcrcncc
object sctrefcrcncc
Эти альтернативы должны использоваться только в том случае, если соответствующим «оЬ-jcctclassrefercncc». •objcctrefcrencc* или «objcctsctrcfcrcncc* были присвоены класс, информационный обьскт или множество информационных объектов соответственно (см. 9.1. 11.1 и 12.1) в модуле (отличном от ссылающегося модуля), идентифицированном соответствующей ссылкой «module-reference*. Это и есть именно тс. соответственно, класс, информационный объект или множество информационных объектов, которые указываются.
8.3 Альтернатива «UscfulObjcctClassRcfercncc* для «DcfincdObjcctClass* определяется следующим образом:
UscfulObjcctClassRcfercncc : : - TYPE—IDENTIFIER | ABSTRACT—SYNTAX, где первая альтернатива определена в приложении А. а вторая — в приложении В.
Примечание — Имена TYPE—IDENTIFIER и ABSTRACT—SYNTAX приведены в ГОСТ Р ИСО/МЭК 8824-1. 11.18 как зарезервированные слова.
5
9 Определение и присвоение класса информационных объектов
9.1 Конструкция «ObjcctClassAssignmcnt* используется для присвоения класса информационных объектов имени ссылки («objcctclass reference*). Эта конструкция является одной из альтернатив для «Assignment* в ГОСТ I* ИСО/МЭК 8824-1. раздел 12 и определяется следующим образом:
ObjectClassAssignmcnt : : = objcctclass reference
ObjectClass
9.2 Класс информационного объекта — тот. который определяется конструкцией «ObjectClass*.
ObjectClass : : =
DefincdObjectClass |
ObjectClassDefn |
Paramctri/.cdObjcctClass если «ObjectClass* есть:
а) «DefincdObjectClass*. то определение класса — то же самое, как определение указываемого класса;
б) «ObjcctClasDcfn», то класс определяется как описано в 9.3;
в) «ParameterizedObjcctClass*. то класс определяется как описано в ИСО/МЭК 8824-4. 9.2.
9.3 Каждый класс, в конечном счете, определяется «ObjectClassDefn»:
ObjectClassDefn : : =
CLASS
•I* FicldSpec «.» + «)»
WithSyntaxSpcc?
WithSyniaxSpcc : : = WITH SYNTAX SyntaxList
Эта нотация позволяет разработчику класса предоставить спецификации поименованных полей, каждая из которых является «FicldSpec*. как определено в 9.4. Факультативно автор определения может предоставить синтаксис определения информационных об!,ектов («SyntaxList»), как указано в 10.5. Автор определения класса может также специфицировать семантику, связанную с определением класса.
9.4 Каждая альтернатива «FicldSpec* специфицирует и называет одно из полей, которое будет или может быть связано с экземплярами класса.
FicldSpec : ; =
Type FicldSpec |
Fixed Гурс Value FicldSpec |
VariablcTypc Value FicldSpec FixedType ValueSet FicldSpec |
VariablcType ValueSet FicldSpec |
Object FicldSpec Object Set FicldSpec
Различные альтернативы для «FicldSpec* определяются в последующих пунктах.
9.5 Азьтернагива • TypeFildSpec* определяет, что поле является полем типа (см. 3.4.17).
TypcRIdSpcc:: =
typcficld reference Т ypeOpt ionalitySpcc?
TypcOptionalitySpcc : : = OPTIONAL | DEFAULT Type
Имя поля есть «typcficldrcfcrcncc*. Если продукция -TypcOptionalitySpcc* отсутствует, то все определения информационных объектов этого класса обязательно должны включать в себя спецификацию типа для этого поля. Если присутствует «OPTIONAL*, то поле может быть оставлено неопределенным. Если присутствует «DEFAULT*, то последующий «Туре* обеспечивает установку умолчания для поля, сети оно опущено в определении.
9.6 Продукция «FixedType Value FicldSpec* определяет, что ноле является полем значения фиксированного-типа (см. 3.4.18).
FixedTypeValueFicldSpec : : = valucficldrcfcrencc Type
UNIQUE?
ГОСТ Р ИСО/МЭК 8824-2-2001
ValucOptionalitySpcc?
ValucOptionalitySpcc :: = OPTIONAL | DEFAULT Value
Имя поля есть «valucficldrcfciencc*. Конструкция «Туре* специфицирует тип значения, содержащегося в поле. Продукция «ValucOptionalitySpcc*. если присутствует, специфицирует, что значение может быть опушено в определении информационного объекта или. в случае «DEFAULT*, это опускание порождает последующее значение «Value*, которое должно быть того же самого типа. Присутствие ключевого слова «UNIQUE* специфицирует, что это поле является полем идентификатора. Если присутствует ключевое слово, то продукция «ValucOptionalitySpcc* нс должна быть альтернативой «DEFAULT Value*.
9.7 Когда полю идентификатора присваивается значение, то требуется, чтобы это значение было недвусмысленным в определенном множестве информационных объектов.
9.8 Продукция «VariableTypcValucFicldSpcc* определяет, что ноле является нолем значения переменного-типа (см. 3.4.18).
VariableTypcValucFicldSpcc : : = value ficldrcfcrcncc FicldName
ValucOptionalitySpcc?
Имя поля есть «valucfieldrcfercncc*. Продукция «FicldName* (см. 9.14), которая относится к определяемому классу, должна быть полем типа; поле типа, которое либо находится в том же информационном объекте как поле значения, либо связывается цепочкой полей объектов, ссылки на которые появляются в «FicldName*. должно содержать тин значения. (Все поля связи, ссылки на которые появляются в «FicldName*. должны быть полями объектов). Продукция «ValucOptionalitySpcc». если присутствует, специфицирует, что значение может быть опушено в определении информационного объекта или, в случае «DEFAULT*, эго опускание порождает последующее значение «Value*. Продукция «ValucOptionalitySpcc* должна быть такой, что:
а) если поле типа, обозначенное «FicldName*. имеет продукцию «TypcOptionalitySpcc* «OPTIONAL*. то «ValucOptionalitySpcc* должна также быть «OPTIONAL®, и
б) если продукция «ValucOptionalitySpcc* есть «DEFAULT Value*, то поле типа, обозначенное «FicldName*. должно иметь продукцию «TypcOptionalitySpcc* «DEFAULT Туре*, и значение «Value-должно быть значением этого типа.
9.9 Продукция «FixcdTypeValucSctFicldSpcc* определяет, что поле является полем множества значений фиксированного-типа (см. 3.4.19):
FixcdTypeValucSctFicldSpcc : : = valuesctficld reference Type
Value SctOptionalitySpcc?
ValucSciOptionalitySpcc : : = OPTIONAL | DEFAULT ValucSct
Примечание — Продукция «ValucSct* определяется в ГОСТ Р ИСО/МЭК 8824-1. 15.4. 15.5 и позво-дяст явно перечислять (в фигурных скобках) множество значений или испольюнать ссылку «typereference* для подтипа «Туре*.
Имя поля есть «valucsctficldrefcrcncc*. Конструкция «Туре* специфицирует тип значений, содержащихся в поле. Продукция «ValucSciOptionalitySpcc». если присутствует, указывает, что поле в определении информационного объекта может быть нсспснифицированным или, в случае «DEFAULT*. это опускание порождает последующее множество значений «ValucSct*. которое должно быть подтипом этого типа.
9.10 Продукция «VariablcTypcValucSctFicldSpcc* определяет, что поле является полем множества значений неременного-гнпа (см. 3.4.19).
VariablcTypcValucSctFicldSpcc : : = valucsctficldrefcrcncc FicldName
ValucSciOptionalitySpcc?
Имя поля есть «valucsctficldrefcrcncc*. Продукция «FicldName* (см. 9.14), которая относится к определяемому классу, должна быть полем типа: пазе типа, которое либо находится в том же информационном объекте как поле множества значений, либо связывается цепочкой полей объектов. ссылки на которые появляются в «FeidIName*. должно содержать тип значений. (Все поля связи, ссылки на которые появляются в «FicldName*. должны быть полями объектов). Продукция «Valuc-SctOptionalitySpec*. если присутствует, специфицирует, что множество значений может быть опу-