- •Содержание
- •Правила для неопределенных отношений 79
- •1. Занятие I. Общее знакомство с idef1x. Термины.
- •1.1. Концепции метода idef1x.
- •1.2. Цель создания информационной модели.
- •1.3. Предпосылки к появлению методологии idef1x.
- •1.4. Основные термины и определения методологии idef1x.
- •1.5. Графическое представление модели.
- •1.6. Правила для диаграмм
- •1.7. Примечания
- •2. Занятие II. Этапы создания информационной модели.
- •2.5. Принятие авторских соглашений по моделированию.
- •3.2. Зависимая и независимая сущности.
- •3.3. Графическое изображение сущностей на диаграммах.
- •3.3.1. Сущность, независимая от идентификатора
- •3.3.2. Сущность, зависимая от идентификатора
- •3.4. Составление списка естественных сущностей.
- •4.3. Отношение связи. Определенное отношение связи.
- •4.3.1. Правила для определенных отношений связи.
- •4.4. Отношение категоризации.
- •4.4.1. Правила для отношений категоризации.
- •4.5. Неопределенное отношение.
- •4.5.1. Правила для неопределенных отношений
- •Графическое изображение отношений на диаграмме.
- •4.8. Диаграмма сущностей.
- •4.9. Контрольные вопросы и задания:
- •5.2. Преобразование неопределенных отношений.
- •5.3. Что такое атрибут?
- •Обозначение альтернативных ключей
- •5.5. Внешние ключи.
- •5.8. Ролевое имя.
- •5.9. Идентификация ключевых атрибутов.
- •5.10. Правила назначения ключей.
- •5.11. Таблица «сущность/атрибут».
- •5.12. Представление результатов в виде диаграммы.
- •5.13. Контрольные вопросы и задания:
- •6.3. Определение принадлежности атрибутов. Описание атрибутов.
- •6.4. Правила назначения не ключевых атрибутов.
- •6.5. Представление результатов этапа.
- •6.6. Контрольные вопросы:
- •8. Приложение 1. Определения
- •Idef1x диаграмма: См. Диаграмма представления.
- •9.1. Имена диаграмм, сущностей, и атрибутов
- •9.2. Метки сущности
- •9.3. Метки ролевого имени атрибута
- •9.4. Метки имен отношений
- •9.5. Примечания к модели
- •9.6. Отображения меток на нескольких строках
- •10. Приложение 3. Правила.
- •10.1. Правила для атрибутов
- •10.2. Правила для диаграмм
- •10.3. Правила для ключей
- •10.3.1. Правила для внешних ключей
- •10.3.2. Правила для первичных и альтернативных ключей
- •10.4. Правила для отношений.
- •10.4.1. Правила для неопределенных отношений
- •10.4.2. Правила для определенных отношений связи
- •10.4.3. Правила для отношений категоризации
- •10.5. Правила для примечаний
- •10.6. Правила для сущностей
- •10.7. Правила для уровней представления
- •11. Приложение 4. Примеры информационных моделей.
Обозначение альтернативных ключей
ИМЯ-АТРИБУТА (АКn)[(AKm)…]
Или ИМЯ-АТРИБУТА (АКn [, AKm…])
где n, m и т. д. однозначно идентифицируют каждый альтернативный ключ, который включает данный атрибут, и где альтернативный ключ состоит из всех атрибутов с одинаковым идентификатором.
Правила для первичных и альтернативных ключей см. в Приложении 3.
5.5. Внешние ключи.
Атрибуты, которые образуют первичный и альтернативные ключи сущности, могут как принадлежать этой сущности (быть собственными атрибутами сущности), так и мигрировать посредством отношения. Если между двумя сущностями существует определенное отношение связи или категоризации, то атрибуты, формирующие первичный ключ родительской или общей сущности мигрируют к сущности-потомку или сущности-категории. Эти мигрирующие атрибуты называются «внешними ключами». Например, если существует отношение связи между сущностью-родителем НАПРАВЛЕНИЕ и сущностью-
потомком ЗАПИСЬ_НАПРАВЛЕНИЯ, то атрибуты первичного ключа сущности НАПРАВЛЕНИЕ будут мигрирующими атрибутами для сущности
ЗАПИСЬ_НАПРАВЛЕНИЯ. Например, если атрибут КОД-НАПРАВЛЕНИЯ является первичным ключом сущности НАПРАВЛЕНИЕ, то КОД-НАПРАВЛЕНИЯ будет мигрирующим атрибутом или внешним ключом сущности ЗАПИСЬ_НАПРАВЛЕНИЯ.
Внешний ключ выделяется путем помещения имен мигрирующих атрибутов внутрь блока сущности и записи в скобках после каждого имени атрибута внешнего ключа букв FK, т е. (FK).
Мигрирующий атрибут может быть использован как первичный ключ или как часть первичного ключа, альтернативного ключа или как не ключевой атрибут сущности. Если все атрибуты первичного ключа сущности-родителя мигрируют как часть первичного ключа сущности-потомка, тогда отношение, благодаря которому мигрируют атрибуты, является идентифицирующим. Если какие-либо из мигрирующих атрибутов не являются частью первичного ключа сущности-потомка, то такое отношение называется не идентифицирующим. Например, если задачи однозначно пронумерованы только внутри проекта, то первичным ключом сущности ЗАДАЧА будет комбинация мигрирующего атрибута КОД-ПРОЕКТА и собственного атрибута КОД-ЗАДАЧИ. Сущность ПРОЕКТ будет находиться в идентифицирующем отношении с сущностью ЗАДАЧА. С другой стороны, если атрибут КОД-ЗАДАЧИ уникален и однозначно определяет задачу среди всех проектов, то мигрирующий атрибут КОД-ПРОЕКТА будет не ключевым атрибутом сущности ЗАДАЧА. В этом случае сущность ПРОЕКТ будет находиться в не идентифицирующем отношении с сущностью ЗАДАЧА.
Если все мигрирующие атрибуты принадлежат первичному ключу сущности-потомка, каждый из них помещается над горизонтальной чертой и блок сущности изображается с закругленными углами, для того чтобы показать, что идентификатор (первичный ключ)
сущности зависит от мигрирующих атрибутов. Если какой-нибудь мигрирующий атрибут не принадлежит первичному ключу сущности-потомка, этот атрибут помещается в блоке сущности под горизонтальной чертой и углы блока сущности могут быть как прямыми, так и скругленными, в зависимости от того, существует ли другое идентифицирующее отношение.
Рис. V 4. Пример мигрирующих атрибутов.
Если одна часть мигрирующего первичного ключа сущности-родителя становится частью первичного ключа сущности-потомка, а другая часть первичного ключа сущности-родителя становится не ключевым атрибутом (атрибутами) сущности-потомка, распределенный внешний ключ называется разбитым ключом. Если ключ разбит, отношение не идентифицирующее. Мигрирующие атрибуты могут также быть частью альтернативного ключа.
В отношении категоризации и общая сущность и сущности-категории представляют одни и те же предметы реального мира. Поэтому, для всех сущностей-категорий первичный
ключ образуется путем миграции первичного ключа общей сущности. Например, если СОТРУДНИК_МУЖЧИНА и СОТРУДНИК_ЖЕНЩИНА – сущности-категории, а СОТРУДНИК – общая сущность, то атрибут КОД_СОТРУДНИКА, являющийся первичным ключом сущности СОТРУДНИК будет также первичным ключом для сущностей СОТРУДНИК_МУЖЧИНА и СОТРУДНИК_ЖЕНЩИНА. Правила для внешних ключей см. в Приложении 3.