- •Содержание
- •Правила для неопределенных отношений 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. Примеры информационных моделей.
5.8. Ролевое имя.
В некоторых случаях сущность-потомок может иметь несколько отношений связи с одной и той же сущностью-родителем. Тогда для каждого отношения к сущности-потомку должен мигрировать первичный ключ сущности-родителя. Однако для одного экземпляра сущности-потомка значение мигрирующих атрибутов для каждого отношения может быть различным, т.е. эти атрибуты могут относиться к двум различным экземплярам сущности- родителя. Например, при регистрации в журнале материалов и полуфабрикатов, поступивших на предприятие, контролер БВП делает отметки (ставит свою подпись) в четырех графах: отметку о приемке, роспись за соответствие внешнего осмотра материалов, роспись за соответствие сертификата, роспись за соответствие результатов лабораторных исследований требованиям НТД. Следовательно, сущность-потомок
РЕГИСТРАЦИОННАЯ_ЗАПИСЬ находится в четырех отношениях связи с сущностью-родителем КОНТРОЛЕР_БВП. Если КОД-СОТРУДНИКА – первичный ключ сущности КОНТРОЛЕР_БВП, то КОД-СОТРУДНИКА должен четыре раза появиться в сущности РЕГИСТРАЦИОННАЯ_ЗАПИСЬ, как мигрирующий атрибут. Однако сущность может иметь только один атрибут с данным именем. Для решения проблемы вводятся ролевые имена.
Ролевое имя присваивается каждому появлению одного и того же атрибута в сущности:
- для различения каждого случая миграции атрибута в сущности-потомке, когда атрибут мигрирует к сущности посредством более одного отношения,
- если экземпляр сущности имеет одно значения для одного случая появления атрибута и другое значение - для другого.
С другой стороны, если каждый экземпляр сущности имеет одно и то же значение для двух и более появлений атрибута, эти появления атрибута должны все иметь одно и то же имя.
Ролевые имена обозначаются именами существительными. Ролевое имя пишется перед именем мигрирующего атрибута и отделяется точкой. В предыдущем примере, для различения четырех случаев миграции атрибута КОД-СОТРУДНИКА им присваиваются ролевые имена ПРИЕМКА.КОД-СОТРУДНИКА, СООТВЕТСТВИЕ-СЕРТИФИКАТУ.КОД- СОТРУДНИКА, СООТВЕТСТВИЕ-ОСМОТРУ.КОД-СОТРУДНИКА и СООТВЕТСТВИЕ- ИССЛЕДОВАНИЮ.КОД-СОТРУДНИКА. Хотя это и необязательно, ролевое имя может также использоваться при единичном случае появления мигрирующего атрибута для более точной характеристики его значения в контексте сущности-потомка. Например, при миграции первичного ключа общей сущности СОТРУДНИК к сущностям-категориям РАБОТНИК_СКЛАДА, РАБОТНИК_ЛАБОРАТОРИИ, КОНТРОЛЕР_БВП, удобно присвоить мигрирующему ключу ролевые имена. При миграции атрибута КОД- СОТРУДНИКА к сущности РАБОТНИК_СКЛАДА – имя КЛАДОВЩИК.КОД_СОТРУДНИКА, при миграции к сущности РАБОТНИК_ЛАБОРАТОРИИ – имя ЛАБОРАНТ.КОД-СОТРУДНИКА, при миграции к сущности КОНТРОЛЕР_БВП – имя КОНТРОЛЕР.КОД-СОТРУДНИКА.
Рис. V 5. Пример ролевых имен
Тогда при появлении отношений связи, в которых сущности-категории РАБОТНИК_СКЛАДА, РАБОТНИК_ЛАБОРАТОРИИ и КОНТРОЛЕР_БВП будут участвовать как сущности-родители, дальнейшая миграция первичного ключа (атрибута с ролевым именем) будет касаться только ролевого имени, т. е. для приведенных выше четырех отношений связи между сущностью-родителем КОНТРОЛЕР_БВП и сущностью-потомком РЕГИСТРАЦИОННАЯ_ЗАПИСЬ мигрирующий атрибут КОНТРОЛЕР.КОД-СОТРУДНИКА в сущности РЕГИСТРАЦИОННАЯ_ЗАПИСЬ появится четыре раза как: ПРИЕМКА.КОНТРОЛЕР, СООТВЕТСТВИЕ-ОСМОТРУ.КОНТРОЛЕР, СООТВЕТСТВИЕ-СЕРТИФИКАТУ.КОНТРОЛЕР и СООТВЕТСТВИЕ-ИССЛЕДОВАНИЮ.КОНТРОЛЕР. Таким образом, введение ролевого имени позволяет уточнить специальность сотрудника, выполняющего работу.