<На страницу назад | На страницу вперед >

Урок 3. Синтаксис и семантика IDEF1X (атрибуты, первичные и альтернативные ключи, внешние ключи)

Цель

Рассмотреть семантику (т.е. интерпретацию) графического изображения компонентов IDEF1X-модели (указанных в названии урока) и правила их использования.

Действия

  1. Прочитать подраздел 3.5. "Атрибуты" и на приведенном в электронном учебнике примере разобрать семантику атрибутов.
  2. Используя рис. 3.7. "Синтаксис атрибутов и первичных ключей", уяснить синтаксис атрибутов.

Примечание 1
В практической работе руководствоваться следующими правилами атрибутов:

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

Примечание 2
Для практической работы уясните следующие правила первичных и альтернативных ключей:

  1. Каждая сущность должна обладать первичным ключом.
  2. Каждая сущность может обладать любым числом альтернативных ключей.
  3. Первичный или альтернативный ключ может состоять из одного атрибута или комбинации атрибутов.
  4. Отдельный атрибут может быть частью более чем одного ключа, первичного или альтернативного.
  5. Атрибуты, входящие в первичные или альтернативные ключи сущности, могут быть собственными для сущности или наследоваться через отношения. (см. раздел 3.7. "Внешние ключи").
  6. Первичные и альтернативные ключи должны содержать только необходимые для однозначной идентификации атрибуты, т.е. при исключении из ключа любого атрибута не все экземпляры сущности могут быть однозначно определены (правило наименьшего ключа).
  7. Если первичный ключ состоит более чем из одного атрибута, то значение любого не ключевого атрибута должно функционально зависеть от всего первичного ключа, т.е. если первичный ключ известен, то известно значение каждого не ключевого атрибута и значение не ключевого атрибута не может быть определено с помощью только части первичного ключа (правило полной функциональной зависимости).
  8. Каждый не ключевой атрибут должен функционально зависеть только от первичного и альтернативных ключей, т.е. значение не ключевого атрибута не может определяться значением другого не ключевого атрибута (правило отсутствия транзитивной зависимости).
  1. Прочитать подраздел 3.7. "Внешние ключи" и на приведенных примерах разобрать семантику внешних ключей.
  2. Используя рис. 3.9. "Примеры синтаксиса внешних ключей" и рис. 3.10. "Синтаксис имени роли", уяснить синтаксис внешних ключей.

Примечание 3
В практической работе использовать следующие правила внешних ключей:

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

Вопросы

На основании изложенного в данном разделе материала вашему вниманию предлагается Тест для самоконтроля , прохождение которого говорит о готовности вас к изучению следующего урока.

<На страницу назад | На страницу вперед >