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

Название – это уникальное имя, определенное в соответствии с лексикой IDEF1X. Название должно быть четким, ясным и наглядным. Аббревиатуры и сокращения не допустимы.

Описание

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

Псевдоним

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

Дополнительная информация

Может быть представлена дополнительная информация о представлении, сущности или домене (атрибуте), как, например, автор, дата создания, дата последних изменений и т.д. Для представления дополнительная информация может включать уровень (ER, KB, FA модели и т.д.), статус завершения или исправления и т.д. Для домена (атрибута) эта информация включает тип данных, правило домена или описание суперкласса.

3.13 Записи в модели

Общие и индивидуальные записи являются неотъемлемой частью модели. Эти записи могут использоваться в диаграммах представлений.

Общие записи изображаются на диаграммах с помощью символа «(n)», расположенного рядом с объектом (сущностью, отношением, атрибутом или названием представления). «n» – это номер записи.

Записи, которые описывают четкие ограничения, изображаются в диаграммах символом «(n)», расположенного рядом с объектом (сущностью, отношением, атрибутом или названием представления). «n» – это номер записи.

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

Если никакие пути не включаются в неидентифицирующие отношения, то первичный ключ родительской сущности будет переходить полностью к дочерней сущности по всем путям, что в результате приводит к сложной структуре активностей с переходящим атрибутом в дочерней сущности. Поэтому функциональные имена могут понадобиться при связи с утверждением пути. Их можно использовать в следующих ситуациях:

а) Родительские сущности всегда одни и те же. Это означает, что дочерняя сущность должна зависеть от одной родительской сущности через все пути. В таком случае, либо не устанавливаются функциональные имена, либо устанавливаются одинаковые функциональные имена для всех активностей, содержащих переходящий атрибут в дочерней сущности. Для моделирования утверждения пути достаточно дать одинаковые функциональные имена всем активностям, поэтому записи ограничений не требуются.

б) Сущности-предки всегда различны. Это означает, что экземпляр дочерней сущности должен зависеть от различных экземпляров родительской сущности через каждый путь. В этом случае назначают различные функциональные имена каждой активности, содержащей переходящий атрибут в дочерней сущности, и добавляют утверждение пути, устанавливающее, что значения должны быть различными.

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

г) Некоторые сущности-предки могут быть одинаковыми, либо различными, а другие должны быть одинаковыми, либо различными. В этом случае назначают сложное утверждение пути, по одному для каждой из ситуаций, описанных выше в пунктах а), б) и в).

Утверждения, которые нельзя сделать, использую функциональные имена, назначаются в записях. Другой вид утверждения может определять логическое ограничение между двумя или более отношениями. Например, «исключающее ИЛИ» может утверждать, что для данного экземпляра родительской сущности, если существует один тип дочерней сущности, то второго типа дочерней сущности не может существовать. Однако, если обе сущности, родительская и дочерняя, принадлежат к одному и тому же явлению действительности, существует возможность существования отношений категоризации. (См. Раздел 3.6). Логические ограничения, не включающиеся в отношения категоризации, записываются рядом с диаграммой.