Типы зависимых сущностей
В зависимости от вида отношений зависимая сущность может быть следующих типов:
1. характеристическая — зависимая дочерняя сущность, которая связана только с одной родительской и по смыслу хранит информацию о характеристиках родительской сущности;
2. ассоциативная —сущность, связанная с несколькими родительскими сущностями; эта сущность хранит информацию о связях сущностей и обычно служит для разрешения отношения "многие ко многим";
3. именующая — частный случай ассоциативной сущности, не имеющей своих собственных атрибутов, т.е. все атрибуты являются внешними ключами, мигрировавшими из родительских сущностей;
4. категориальная —дочерняя сущность в иерархии наследования; понятие категориальной сущности связано с отношением типа "наследование", принципиально отличающимся от отношений "один ко многим" и "многие ко многим"; идея наследования описана ниже.
Связь типа "наследование"
Оригинальное наименование данного типа связи — categorization relationship, поэтому точный перевод — "категориальное отношение", или "классифицирующее отношение". Тем не менее, чаще используется термин "наследование", причиной чему, видимо, является схожесть смысла этой связи с идеей механизма наследования в языках программирования. В дальнейшем будет использоваться понятие "наследование".
Иерархия наследования — тип отношения сущностей, разделяющих общие атрибуты. Если ряд сущностей имеют одинаковые по смыслу атрибуты, то эти атрибуты можно выделить в отдельную обобщенную сущность, или родовую сущность (generic — родовой, общий). Специфические для каждой исходной сущности атрибуты располагаются в сущностях-потомках, или категориальных сущностях (category entity).
Таким образом, с точки зрения наследования сущности делятся на родовые сущности и сущности-потомки (категориальные сущности).
Для каждой иерархии указывается дискриминатор (discriminator) – атрибут родовой сущности, значение которого позволяет отличить одну категориальную сущность от другой.
Наследование часто используется, когда несколько сущностей имеют общие по смыслу отношения с другими сущностями, или когда лишь определенное подмножество сходных сущностей имеет специфические отношения с другими сущностями.
Пример использования наследования для описания различных типов сотрудников организации:
Здесь "Сотрудник" — родовая сущность, "Постоянный сотрудник" и "Совместитель" — категориальные сущности. Дискриминатором является атрибут "Тип". Дискриминатор указан рядом со знаком категориальных отношений, представляющим собой окружность, подчеркнутую линией со стороны категориальных сущностей:
Категориальные сущности образуют иерархию категорий (наследования). В оригинале используется термин "cluster" — "группа", "гроздь".
Иерархии наследования бывают двух типов — полные и неполные. Если могут существовать экземпляры родовой сущности, значению дискриминатора которых не соответствует ни одна категориальная сущность, то такая иерархия является неполной. Иначе, если для каждого значения дискриминатора можно подобрать категориальную сущность, то иерархия полная. Использование неполной категории часто указывает на незавершенность информационной модели или модели данных.
Тип иерархии указывается через вид знака иерархии:
неполная | |
полная |
Свойства наследования:
1. категориальная сущность может иметь только одну родовую сущность;
2. категориальная сущность может быть родовой в другом категориальном отношении;
3. категориальная сущность может быть родовой в нескольких иерархиях (гроздях) категориальных отношений;
4. первичный ключ категориальной сущности должен совпадать с первичным ключом родовой сущности (хотя допускается присваивание ролей);
5. все экземпляры категориальной сущности имеют одинаковое значение дискриминатора; все экземпляры разных категориальных сущностей должны иметь различные значения дискриминатора (если родовая сущность у них одна);
6. в иерархиях наследования не может быть циклов;
7. дискриминатор в полной иерархии не может принимать неопределенное значение;
8. категориальная сущность всегда является зависимой.
Пример вложенных иерархий:
Здесь использована комбинация неполной и полной иерархий. Неполнота иерархии по дискриминатору "Тип" может быть связана, например, с существованием в организации совместителей, получающих определенный процент от суммы прибыли, которую они приносят фирме.
Неопределенная связь (non-specific)
IDEF1X поддерживает неопределенные связи (non-specific) между сущностями, или, в соответствии с более распространенной терминологией, связи типа "многие ко многим". Под определенной связью понимаются отношения типа "один ко многим" и наследование, рассмотренные выше.
Отношение "многие ко многим" задает такое соединение двух сущностей, что, в одной стороны, экземпляру первой сущности может соответствовать ноль, один или более экземпляров второй сущности, и, с другой стороны, экземпляру второй сущности может также соответствовать ноль, один или более экземпляров первой сущности.
Связи "многие ко многим" могут использоваться только на концептуальном уровне модели. На логическом и физическом уровнях все отношения должны быть определенными, т.е. быть либо типа "один ко многим", либо типа наследования.
Использование отношения "многие ко многим" позволяют упростить как концептуальное представление модели, так и ускорить его разработку. Применение данного типа отношений логично вписывается в канву проектирования систем сверху вниз: сначала с помощью набора сущностей и совокупности неопределенных связей формируется целостное представление предметной области, а затем осуществляется постепенная детализация как отношений, так и структур сущностей.
Неопределенная связь показывается как линия с точками на обоих концах. Сущности, соединенные отношением, являются независимыми, если, конечно, они не входят в какое-то определенное (specific) отношение как зависимые дочерние или категориальные.
Пример: если преподаватель может читать группе студентов несколько курсов, и группа студентов может обучаться у нескольких преподавателей, то в этом смысле сущности "преподаватель" и "группа" находятся в отношении "многие ко многим".
На логическом уровне связь "многие ко многим" может быть разрешена следующим образом:
Дата добавления: 2018-11-25; просмотров: 1561;