- Lektsia - бесплатные рефераты, доклады, курсовые работы, контрольные и дипломы для студентов - https://lektsia.info -

Семантика неспецифических отношений



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

Неспецифическое отношение, называемое также отношением многого_ко_многому, - это связь между двумя сущностями, при которой каждый экземпляр первой сущности связан с произвольным (в том числе нулевым) количеством экземпляров второй сущности, а каждый экземпляр второй сущности связан с произвольным (в том числе нулевым) количеством экземпляров первой сущности. Например, если служащий может быть занят во многих проектах, а в проекте может быть занято много служащих, то отношение между сущностями СЛУЖАЩИЙ и ПРОЕКТ является неспецифическим отношением. При дальнейшей разработке модели неспецифическое отношение может быть заменено на специфическое отношение посредством введения третьей сущности, такой, как ИСПОЛНИТЕЛЬ_ПРОЕКТА, являющейся общей сущностью-потомком в определенных отношениях связи с сущностями СЛУЖАЩИЙ и ПРОЕКТ. Новые отношения будут определять, что служащий занят в произвольном количестве (в том числе нулевом) проектов и что проект обладает произвольным (в том числе нулевым) количеством исполнителей. Каждый исполнитель проекта существует только для одного служащего и только для одного проекта. Сущности, введенные для разрешения неспецифического отношения, называются иногда сущностями пересечения или ассоциативными сущностями.

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

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

Заметим, что если на любом из концов отношения имеется мощность "ровно один", то отношение является специфическим.

Синтаксис неспецифических отношений

Неспецифическое отношение изображается линией, соединяющей две связанные сущности и имеющей точки на обоих концах (см. рис.3-6). Мощность может указываться на обоих концах отношения, согласно тому, как показано на рис. 3-2. Рядом с точкой помещается буква Р (positive), указывающая на то, что для каждого экземпляра сущности с другого конца отношения существует один или несколько экземпляров сущности на конце с буквой Р. Рядом с точкой помещается буква Z для указания того, что для любого экземпляра сущности на другом конце отношения имеется ноль или один из экземпляров сущности на конце с буквой Z. Аналогично для указанного значения мощности рядом с точкой может размещаться положительное целое число или диапазон таких чисел. Установкой по умолчанию для мощности является "ноль, один или много".

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

Порядок имен отношений зависит от относительных позиций сущностей. Первое имя выражает отношение либо от левой сущности к правой (если сущности расположены горизонтально), либо от верхней сущности к нижней (если сущности расположены вертикально). Второе имя выражает отношение в противоположном направлении, т.е. в зависимости от ориентации, либо от правой сущности к левой, либо от нижней сущности к верхней. Отношение называется таким образом, чтобы при соединении имен сущности с именами отношения получались предложения. Например, из неспецифического отношения с меткой "имеет/занят" между сущностями ПРОЕКТ и ИСПОЛНИТЕЛЬ могут быть сформулированы утверждения "Проект имеет ноль, один или много служащих" и "Служащий занят ни в одном, в одном, или во многих проектах". (Эта последовательность предполагает, что сущность ПРОЕКТ появляется выше или левее сущности ИСПОЛНИТЕЛЬ.)

Рис. 3-6. Синтаксис неспецифических отношений

Правила неспецифических отношений

  1. Неспецифическое отношение имеет место только между двумя сущностями.
  2. Экземпляр одной из сущностей может быть связан с произвольным (в том числе нулевым) количеством экземпляров другой сущности в зависимости от указанной мощности.
  3. Для полной разработки модели неспецифические отношения должны быть заменены специфическими.

 

Атрибуты

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

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

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

Например, первичным ключем сущности СЛУЖАЩИЙ может быть атрибут НОМЕР_СЛУЖАЩЕГО, тогда как атрибуты ФАМИЛИЯ_СЛУЖАЩЕГО и ДАТА_РОЖДЕНИЯ будут другими атрибутами.

В IDEF1-модели каждый атрибут принадлежит только одной сущности, а каждый экземпляр сущности должен содержать значения каждого атрибута, ассоциированного с этой сущностью, т.е. атрибут должен быть использован каждым элементом множества предметов, представляемого сущностью. Например, атрибут МЕСЯЧНЫЙ_ОКЛАД применим к некоторым экземплярам сущности СЛУЖАЩИЙ, но, возможно, не ко всем. Поэтому для установления принадлежности атрибута МЕСЯЧНЫИ-ОКЛАД может быть определена отдельная, но родственная сущность, называемая ШТАТНЫЙ_СЛУЖАЩИЙ. Поскольку реальный штатный служащий будет экземпляром сущностей СЛУЖАЩИЙ и ШТАТНЫЙ_СЛУЖАЩИИ, общие для всех служащих атрибуты, такие как ФАМИЛИЯ_СЛУЖАЩЕГО и ДАТА_РОЖДЕНИЯ, не обязаны быть, атрибутами сущности ШТАТНЫЙ_СЛУЖАЩИЙ.

В дополнение к "собственным" атрибутам сущности, являющимся основными характеристиками представляемых сущностью предметов, атрибут может "наследоваться" сущностью через специфическое отношение или отношение категоризации, в котором сущность является сущностью-потомком (см. раздел 3.7). Например, если каждый служащий приписан к какому-нибудь отделу, то атрибут НОМЕР_ОТАЕЛА может быть атрибутом сущности СЛУЖАЩИЙ, наследуемым через отношение сущности СЛУЖАЩИЙ к сущности ОТДЕЛ. Сущность ОТДЕЛ будет собственником атрибута НОМЕР_ОТДЕЛА. Через отношение могут наследоваться только атрибуты первичных ключей. Например, атрибут НАЗВАНИЕ_ОТДЕЛА не может быть наследуемым атрибутом сущности СЛУЖАЩИЙ, если этот атрибут не является частью первичного ключа для сущности ОТДЕЛ.

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

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

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

Рис. 3-7. Синтаксис атрибутов и первичных ключей

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

  1. Каждый атрибут должен иметь уникальное имя, а одному и тому же имени должно соответствовать одно и то же значение. Кроме того, одно и то же значение не может соответствовать различным именам, если только имена не являются псевдонимами.
  2. Сущность может обладать любым количеством атрибутов. Каждый атрибут принадлежит в точности одной сущности.
  3. Сущность может обладать любым количеством наследуемых атрибутов, но наследуемый атрибут должен быть частью первичного ключа соответствующей сущности-родителя или общей сущности.
  4. Каждый экземпляр сущности должен иметь значение для каждого атрибута (правило необращения в ноль).
  5. Ни один из экземпляров сущности не может обладать более чем одним значением для связанного с сущностью атрибута (правилом неповторяемости).