Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Категории и категоризация



Все суперкласс/подкласс связи, как мы видели, имеют единственный суперкласс. Даже распределенный подкласс как ИНЖЕНЕР_УПРАВЛЕ-НЕЦ в решетке на рис.21 является подклассом трех различныхсупер-класс/подкласс связей, но каждая из этих трех связей имеет общий суперкласс. В некоторых случаях мы вынуждены смоделировать единственную суперкласс/подкласс связь с более чем одним суперклассом, где суперклассы представляют различные типы объектов. В этом случае подкласс мы называем категорией (category).

Например, предположим, мы имеем три типа объекта: ЛИЦО, БАНК, КОМПАНИЯ. Каждый из этих объектов может быть собственником средства передвижения. Нам необходимо образовать класс, включающий экземпляры всех трех типов объектов, играющих роль собственника средства передвижения. С этой целью создадим категорию СОБСТВЕННИК как подкласс, объединяющий (union) три класса.

Мы изображаем категории на EER диаграмме, как показано на рис.23. Суперклассы ЛИЦО, БАНК и КОМПАНИЯ соединены с кругом типа U, который означает операцию объединения множеств. Дуга со знаком подмножества связывает круг с (подклассом) категорией СОБСТВЕННИК. Если необходим определяющий предикат, он изображается рядом с линией от суперкласса, к которому предикат относится. На рис.23 мы имеем две категории: СОБСТВЕННИК и СРЕДСТВО_ПЕРЕДВИЖЕНИЯ, который является подклассом объединения АВТОБУС и ГРУЗОВИК. Категория имеет два и более суперклассов, которые могут представлять различные типы объектов, в то время как другие суперкласс/подкласс связи всегда имеют единственный суперкласс. Сравним категорию, такую как СОБСТВЕННИК на рис.23, с распределенным подклассом ИНЖЕНЕР-УПРАВЛЕНЕЦ на рис.21 Последний есть подкласс каждого из трех суперклассов ИНЖЕНЕР, УПРАВЛЕНЕЦ и НА_ОКЛАДЕ, так что объект должен быть членом всех трех типов. Это представляет то ограничение, что ИНЖЕНЕР- УПРАВЛЕНЕЦ - подмножество пересечения трех суперклассов.

С другой стороны, категория - подмножество объединения суперклассов. Следовательно, объект, являющийся членом категории СОБСТВЕННИК, должен существовать, по крайней мере, в одном из суперклассов, но не обязан быть членом всех из них. Это означает то ограничение, что СОБСТВЕННИК может быть либо КОМПАНИЕЙ, либо БАНКОМ либо ЛИЦОМ. Каждый экземпляр объекта СОБСТВЕННИК наследует атрибуты либо КОМПАНИИ, либо ЛИЦА, либо БАНКА в зависимости от суперкласса, к которому данный объект принадлежит. Это называется выборочной наследственностью (selective inheritance). С другой стороны, распределенные подклассы, такие как ИНЖЕНЕР-УПРАВЛЕНЕЦ (рис.21) наследуют все атрибуты своих суперклассов.

Интересно отметить различие между категорией СРЕДСТВО-ПЕРЕДВИЖЕНИЯ (рис.23) и обобщенным суперклассом АВТОМОБИЛЬ (рис.18). На рис. 18 каждый АВТОБУС и каждый ГРУЗОВИК является АВТОМОБИЛЕМ, в то время как на рис.23 СРЕДСТВО-ПЕРЕДВИЖЕНИЯ как категория включает некоторые из АВТОБУСОВ и ГРУЗОВИКОВ, но не обязательно все из них (некоторые могут быть не зарегистрированы). Также, вообще, специализация или обобщение, если оно частично, не включает, например, велосипеды. Однако категория включает только АВТОБУСЫ или ГРУЗОВИКИ, но не другие типы объектов.

Категория может быть полной или частичной. Например, ВКЛАДЧИК - предикатно-определенная частичная категория на рис.24, где C1 и C2 - предикаты, специализирующие, какие экземпляры объектов КОМПАНИЯ и ЛИЦО соответственно являются членами типа объекта ВКЛАДЧИК. Однако, категория СОБСТВЕННОСТЬ на рис.25 является полной, так как каждое строение и участок должны быть его членами (двойная линия).

Суперклассы подкласса объединения могут иметь различные ключи, как СОБСТВЕННИК на рис.23, или одинаковые, как СРЕДСТВО-ПЕРЕДВИЖЕНИЯ на том же рисунке.

Заметим, что в случае полной категории (не частичной) она может быть представлена как специализация или обобщение (рис.25), а выбор формы представления субъективен. Если два класса представляют один и тот же тип объекта с общими многочисленными атрибутами, включая общие ключи, предпочтитетльнее обобщение; в противном случае - категоризация.





Дата публикования: 2015-09-17; Прочитано: 276 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.008 с)...