Расширение реляционной модели для лучшего отражения семантики


Примеры - часть 2


R2 ← APPLY(PROPERTY, R1).

Здесь R2 – это множество P-отношений, каждое из которых является исчерпывающим P-отношением для одного из relname в R1.

R3 ← APPLY(R2[RATING = excelent]).

R3 – это множество отношений, в точности похожее на R2, за исключением того, что каждое отношение в R3 является ограничением его двойника в R2.

R4 ← APPLY(R3[EMP]).

R4 – это множество отношений, полученных проекцией каждого отношения из R3 на атрибут EMP.

R5 ← (PROPERTY(emp))[EMP, NAME, JOBTYPE]

Здесь исчерпывающее P-отношение для типа сущностей служащие проецируется на его атрибуты – суррогат, имя и должность.

R6 ← UNION/APPLY(R4[EMP = EMP]R5).

Каждое отношение из множества R4 соединяется по сущности служащий с отношением R5. Результат компрессируется путем многократного применения операции объединения для получения R6 – требуемого результата.

Окончательное выражение является примером соединения по сущности, в отличие от соединения по свойству.

Пример C. Пусть некоторая база данных содержит информацию о служащих. Свойства и характеристики, относящиеся ко всем служащим, связываются через посредство PG и CG с типом сущностей служащие. Кроме того, служащие категоризируются по:

  1. должности – инженер, секретарь, техник и т.д.
  2. служебному статусу – постоянный и временный.

В базу данных записывается различные множества свойств и характеристик для всех этих разных специализаций. Граф обобщения UGI показывает типы сущностей инженер, секретарь, техник и т.д. как подчиненные типу сущностей служащие по категории должность, а типы сущностей постоянный и временный – как подчиненные типу сущностей служащие по категории статус.

Требуется получить тернарное отношение R такое, что (E-домен:x, RN-домен:y, PER-домен:z) принадлежит R тогда и только тогда, когда x

является суррогатом некоторого служащего, y – типом сущности x в категории z. Фактически, мы конвертируем информацию категории в новый атрибут отношения на родительском уровне.




Начало  Назад  Вперед



Книжный магазин