А.2.3.1.2.2. Расширенная модель ERM

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

• реинтерпретацию типов отношений в типы сущностей;

• конкретизацию / обобщение сущностей;

• создание сложных объектов из типов сущностей и типов отношений. Более детальная спецификация мощностей путем описания диапазонов значений формирует атрибуты ассоциативного класса РЕБРО и ничего не дает для улучшения информационной модели.

На метауровне, изображенном на рис. 64, реинтерпретация типа отношения в тип сущности требует введения не только общего класса ТИП СУЩНОСТИ, но и конкретизированных классов, представляющих исходный и реинтерпретированный типы сущностей. Таким образом, реинтерпретированные типы прослеживаются дважды. С одной стороны, они являются элементом конкретизации общего класса ТИП СУЩНОСТИ, а с другой — конкретизированной версией ТИПА ОТНОШЕНИЯ. Введение в модель ERM операции обобщения и конкретизации приводит к созданию класса ОБЩ./КОНКР. ПРЕДСТАВЛЕНИЕ. В примере на рис. 63 модель регионального рынка включает тип сущности КЛИЕНТ, разбитый на классы МЕЖДУНАРОДНЫЕ КЛИЕНТЫ и ОТЕЧЕСТВЕННЫЕ КЛИЕНТЫ. Таким образом, региональный рынок является экземпляром класса ОБЩ./КОНКР. ПРЕДСТАВЛЕНИЕ. Одно представление может охватывать множество типов сущностей (МЕЖДУНАРОДНЫЕ КЛИЕНТЫ и ОТЕЧЕСТВЕННЫЕ КЛИЕНТЫ), тогда как один тип сущности должен однозначно принадлежать одному конкретизированному представлению.

Рис. 63. Пример расширенной модели ERM

Рис. 64. Метамодель расширенной ERM

Поскольку на конкретизации переносятся и ключевые атрибуты доминирующей сущности, один ключевой термин оказывается действителен для нескольких типов сущностей (например, один номер клиента действительным как для общего типа сущности КЛИЕНТ, так и для конкретизации МЕЖДУНАРОДНЫЕ КЛИЕНТЫ и ОТЕЧЕСТВЕННЫЕ КЛИЕНТЫ). Таким образом, мощность отношения между КЛЮЧЕВЫМ АТРИБУТОМ и классом ИСХОДНЫЙ ТИП СУЩНОСТИ равна (1..*):(1..1).

Ключевые атрибуты для типов отношений можно формировать путем привязки ребер ключевых атрибутов соответствующих типов сущностей. Однако для наглядности создается отдельный ассоциативный класс АССОЦИАЦИЯ ТИП ОТНОШЕНИЯ-КЛЮЧЕВОЙ АТРИБУТ.

В моделях ERM сложные сценарии разбиваются на простые и понятные структуры, хотя их связь с целой структурой не всегда остается наглядной. Поэтому мы вводим понятие <сложный объект> (ОБЪЕКТ), объединяющее множество типов сущностей и отношений, принадлежащих данному объекту (Dittrick Nachrelationale Dateribanktechnologie; Harder. Relationale Dantenbanksysteme. 1989; Lockemann. Weiterentwicklung relationaler Datenbanken. 1991; Kilger. C.: Objektbanksysteme. 1996).

Сложные объекты включают множество типов сущностей и отношений. Рассмотрим, например, чертеж, отражающий целую геометрическую структуру сборного узла, содержащую множество типов сущностей и отношений (ФОРМА, СЕКТОРЫ, РЕБРА, ТОЧКИ и т.д.), или деловой контракт со сложной структурой данных, содержащей множество вложений.

Заказы, изделия и данные, относящиеся к определенному клиенту, также можно рассматривать как сложные объекты (см. рис. 63). То, что в терминах бизнеса является индивидуальным объектом (ЧЕРТЕЖ, КОНТРАКТ, ЗАКАЗ), на метауровне становится экземпляром класса ОБЪЕКТ. Поскольку объекты могут налагаться друг на друга, мощность связи будет равна (0..*) или (1..*).

В данном определении понятия <объект> подчеркивается переход к понятию МАКРООБЪЕКТ ДАННЫХ. Этой темы мы коснемся при обсуждении спецификации проекта, когда будем рассматривать объектно-ориентированные модели данных.

Таким образом, классы ТИП СУЩНОСТИ, ИСХОДНЫЙ ТИП СУЩНОСТИ, ТИП ОТНОШЕНИЯ и ОБЪЕКТ, которые сами становятся информационными объектами, являются источниками для формирования описательных атрибутов. Атрибуты РЕИНТЕРПРЕТИРОВАННОГО ТИПА СУЩНОСТИ совпадают с атрибутами исходного класса ТИП ОТНОШЕНИЯ и поэтому вторично не присваиваются. В расширенной версии атрибуты следует присваивать таким же образом, как и в простой модели ERM.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: