Комплексное определение для информационного моделирования (IDEF1X), страница 8

Может быть приведено также текстовое описание представления. Это описание может содержать утверждения про связи в представлениях, короткие описания сущностей и атрибутов, а также обсуждения правил или ограничений.

3.3.2. Синтаксис представления

Конструкции, то есть сущности, атрибуты (домены), связи, записи, изображенные в диаграмме представления должны соответствовать синтаксису и правилам, управляющими индивидуальной конструкцией.

3.3.3. Правила представления

а) Каждое представление должно иметь уникальное имя.

б) Авторские решения, адаптированные к модели должны соблюдаться по всей модели.

в) Любое представление, которое включает синтаксис, который противоречит любому стандартному перечню в документе, должен помечаться как «Только для модели» (FEO).

г) Модель может включать представления любых уровней.

3.4. Атрибуты

Домены, связанные с сущностью в представлении, называют атрибуты сущности. В представлении IDEF1X атрибуты связаны с определенными сущностями.

3.4.1. Семантика атрибутов

В представлении IDEF1X атрибуты представляют собой тип характеристики или свойства, связанные с множеством реальных или абстрактных вещей (людей, объектов, мест, событий, идей, комбинаций вещей и т.д.). «Экземпляр атрибута» - это определенная характеристика отдельного члена множества. Экземпляр атрибута включает тип характеристики и его значение, которое называют «значение атрибута». Экземпляр сущности обычно имеет одно значение, связанного с ним атрибута. Например, ИМЯСОТРУДНИКА и ДАТАРОЖДЕНИЯ могут быть атрибутами сущности СОТРУДНИК. Экземпляр сущности может иметь значения «Дженни Линне» и «27 февраля 1953». В одном случае, дата рождения сотрудника может быть неизвестна, когда создан экземпляр сущности. Атрибут может не иметь значений в течение определенного момента времени. В другом случае, атрибут может подходить одному экземпляру, но не подходить к другому. Например, сущность ОКНО может иметь атрибут ЦВЕТ. У одной сущности ЦВЕТ может иметь значение «серый». У другой сущности может и не быть значения (нулевой атрибут), это означает, что окно не имеет цвета (окно прозрачное, более того, атрибут не подходит этому экземпляру).

Сущность должна иметь атрибут или комбинацию атрибутов, которые будут уникально определять каждый экземпляр сущности. Это атрибуты первичного ключа сущности (см. пункт 3.8). Например, атрибут НОМЕРСОТРУДНИКА может быть первичным ключом для сущности СОТРУДНИК, в то время как атрибуты ИМЯСОТРУДНИКА и ДАТАРОЖДЕНИЯ могут быть неключевыми атрибутами.

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

Кроме того, атрибут, принадлежащий одной сущности, может быть представлен в другой сущности благодаря его миграции через специальную связь или через категоризацию отношений (см. пункт 3.9). Например, если каждый сотрудник связан с департаментом, то атрибут НОМЕРДЕПАРТАМЕНТА может быть атрибутом сущности СОТРУДНИК, который мигрирует в сущность СОТРУДНИК из сущности ДЕПАРТАМЕНТ. Сущность ДЕПАРТАМЕНТ может быть владельцем атрибута НОМЕРДЕПАРТАМЕНТА. Только атрибуты первичного ключа могут мигрировать через отношения. Атрибут НАЗВАНИЕДЕПАРТАМЕНТА, например, может не мигрировать в сущность СОТРУДНИК, если этот атрибут не является частью первичного ключа сущности ДЕПАРТАМЕНТ.

3.4.2. Синтаксис атрибутов

Каждый атрибут определен уникальным именем основного домена. Имя представляет собой именное словосочетание, которое описывает характеристику, представленную атрибутом. Именное словосочетание стоит в форме единственного числа. Аббревиатуры и акронимы разрешаются, однако, имя атрибута должно быть содержательным и постоянным для всей модели. Формальное определение и список синонимов или псевдонимов должны быть указаны в глоссарии.

На диаграмме атрибуты представлены в виде списка внутри сущности, которая изображена в виде прямоугольника. Атрибуты, определяющие первичный ключ, расположены на вершине списка и отделяются от остальных атрибутов горизонтальной линией. См. рисунок 3.

Рисунок 3. Синтаксис атрибута и первичного ключа

3.4.3. Правила атрибутов

a)  Атрибут – это преобразование от сущности в представлении до домена. Он должен иметь уникальное имя, соответствующее его значению. Более того, значение не может обозначаться другими именами, пока эти имена являются псевдонимами.

b)  У сущности может быть любое количество атрибутов. В представлении, где указаны все ключи и атрибуты, каждый атрибут принадлежит только одной определенной сущности (правило Одиночного Владения).

c)  Сущность может иметь любое количество мигрированных атрибутов. Однако мигрированные атрибуты должны быть частью первичного ключа родительской или генеральной сущности.

d)  Каждый экземпляр сущности должен содержать значения каждого атрибута первичного ключа.

e)  Ни один экземпляр сущности не может иметь более одного значения атрибута (Правило Не Повторения).

f) Атрибуты, не являющиеся частью первичного ключа, могут иметь нулевое значение (это означает, что значение не существует или оно неизвестно), которое обозначается как символ «(О)» (или О  ) после имени атрибута.