Статус документа
Статус документа

ГОСТ Р ИСО 10303-11-2000 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 11. Методы описания. Справочное руководство по языку EXPRESS

ПРИЛОЖЕНИЕ G
(справочное)

     
Отношения

G.1 Отношения через атрибуты

В языке EXPRESS объявление в типе данных объекта атрибута, областью значения которого является другой тип данных, явно устанавливает отношение между этими двумя типами данных. На это отношение можно ссылаться как на простую связь, устанавливающую связь между экземпляром объявленного объекта и одним из экземпляров представленного типа данных.

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

- фундаментальным основным типом данных неагрегатного типа данных, являющегося самим типом данных;

- фундаментальным основным типом данных агрегатного типа данных, являющегося фундаментальным основным типом данных этого основного типа.

Когда фундаментальным основным типом атрибута А является Т, будем говорить, что А основан на Т.

Следовательно, объявление в типе данных объекта атрибута, областью значений которого является агрегатный тип данных, основанный на фундаментальном основном типе данных, устанавливает два вида отношений:

- коллективное отношение между объявляемым объектом и агрегатным типом данных. Тем самым связывается экземпляр объявленного объекта с множеством экземпляров фундаментального основного типа;

- распределенное отношение между объявляемым объектом и фундаментальным основным типом. Тем самым индивидуально связывается экземпляр объявляемого объекта с одним или несколькими экземплярами фундаментального основного типа.

Примечание - Данный подход отличается от подхода, принятого в некоторых других языках моделирования. Например, в модели объект-отношение (Entity-Relationship - ER) объекты и отношения моделируются различными конструктивами.


Как простое, так и распределенное отношения направлены от объявляемого объекта к некоторому другому типу данных. Такой подход полезен при рассмотрении количества элементов в данных отношениях (с точки зрения объявляемого объекта). Количество элементов будет следующим. Если данным количеством элементов является m : n (где ), каждый экземпляр объявленного объекта связывает не менее m и не более n экземпляров заданного типа данных. Если n имеет неопределенное (?) значение, то максимальное число экземпляров заданного типа данных, с которыми может быть связан экземпляр объявляемого объекта, не ограничено.

Данный подход полезен при рассмотрении инверсного отношения, которое имеет направление, обратное простому или распределенному отношению. Такое отношение неявно существует всегда, и по умолчанию число элементов в нем равно 0 : ?. Оно может быть явно поименованным и необязательно ограниченным инверсным атрибутом (INVERSE), объявленным в представляемом типе данных, если представляемый тип данных является типом данных объекта.

Пример 163 - В этом примере существует простое отношение между типами данных объектов first и second, в котором second играет роль ref. Количество элементов в этом отношении с точки зрения first всегда будет 1 : 1 (то есть каждый экземпляр объекта first связан строго с одним экземпляром объекта second).

Относительно объекта second количество элементов в отношении будет 0 : ?, или неограниченным (то есть один экземпляр объекта second может быть связан с нулем или более экземплярами объекта first), это является количеством элементов в инверсном отношении, принимаемым по умолчанию.

ENTITY first;

     ref : second;

     fattr : STRING;

END_ENTITY;

ENTITY second;

     sattr : STRING;

END_ENTITY;


Если тип данных объекта Е имеет отношение с типом данных Т, установленное через атрибут А, это отношение может быть изображено как:     



при и . Здесь является количеством элементов в прямом отношении от Е к Т, в то время как является количеством элементов в обратном отношении от Т к Е.

Ниже формально описаны три вида отношений и соответствующие им количества элементов.

G.1.1 Простое отношение

Простое отношение - отношение, устанавливаемое атрибутом, представление которого является другим типом данных объекта. Эти отношения устанавливаются между двумя типами данных объектов.

Простое отношение всегда существует между экземпляром объявляемого объекта и не более чем одним экземпляром представляющего объекта. На диаграмме это может быть показано следующим образом: