1対1関係のなかの汎化関係とは、1対1関係にある下位エンティティをグループ化して管理したい場合に使います。
”取引先”というスーパータイプエンティティに対して、”得意先”、”請求先”、”仕入先”、”法人取引先”、”個人取引先”というサブタイプエンティティが存在したとします。
しかし、”得意先”、”請求先”、”仕入先”というエンティティは取引区分によってそれぞれ分類され、”法人取引先”、”個人取引先”というのは法人か個人かという区分で分類されるという場合も、拡張関係で定義してしまうと、以下の図のように全てのエンティティが並列の関係になってしまいます。
(図1)全てのエンティティが並列の関係
そこで、汎化グループを使用して下位エンティティをグループ化します。このグループ化の関係を汎化関係と呼びます。
(図2)汎化グループ
また、汎化グループには”排他”と”包含”という関係があります。
(図3)排他と包含の関係
排他の関係とは、”法人取引先”であればその取引先は”個人取引先”ではありえないという関係を表します。包含の関係とは、ある取引先は”得意先”でもあり、”請求先”でもあるというように両方のエンティティにレコードが存在する場合があることを意味します。
”取引先”というスーパータイプエンティティに対して、”得意先”、”請求先”、”仕入先”、”法人取引先”、”個人取引先”というサブタイプエンティティが存在したとします。
しかし、”得意先”、”請求先”、”仕入先”というエンティティは取引区分によってそれぞれ分類され、”法人取引先”、”個人取引先”というのは法人か個人かという区分で分類されるという場合も、拡張関係で定義してしまうと、以下の図のように全てのエンティティが並列の関係になってしまいます。
(図1)全てのエンティティが並列の関係
そこで、汎化グループを使用して下位エンティティをグループ化します。このグループ化の関係を汎化関係と呼びます。
(図2)汎化グループ
また、汎化グループには”排他”と”包含”という関係があります。
(図3)排他と包含の関係
排他の関係とは、”法人取引先”であればその取引先は”個人取引先”ではありえないという関係を表します。包含の関係とは、ある取引先は”得意先”でもあり、”請求先”でもあるというように両方のエンティティにレコードが存在する場合があることを意味します。
※コメント投稿者のブログIDはブログ作成者のみに通知されます