TMの5つの文法 4.データの周延

エンティティ間の関係を定義した後は、エンティティをサブセットに分割していきます。

サブセットとは、セット(親)に対する部分集合です。区分コードや種別コード等といった名称のアトリビュートの値で親エンティティを区分けします。

複数区分コードがある場合は、サブセットは複数階層構造になる場合もあります。サブセットは以下の点を注意して分割していきます。

  1. セットとサブセットの間には、包摂関係が成立していること
  2. 包摂関係は、「1 対 複数」関係である事
  3. サブセット間には、排他的なOR関係が成立している事

サブセットには同一のサブセット(サブセット間で所属するアトリビュートが同じ)と相違のサブセット(サブセット間で所属するアトリビュートが異なる)があります。

難しい事をたくさん書いてしまいましたが、サブセットも他のエンティティとのリレーションシップを設定しなければ後から変更できますので気軽に挑戦してください。

もしもうまく分割できない場合は、現場でもいろいろ問題を抱えている可能性もありますし、区分(サブセット)ではなく種別(多値:後述します)として分類する可能性もありますので、少しずつ解析していきましょう。

ちなみに

TMD-Makerでは、個体指定子を変更する事ができます。

エンティティ編集画面で他のアトリビュートを選択して「個体指定子へ」ボタンをクリックすると個体指定子と選択したアトリビュートを入れ替える事ができます。

区分コードや種別コード等を個体指定子に設定してしまった場合や、解析した結果として個体指定子として相応しくないとわかった時などに活用してください。

またアトリビュートをドラッグアンドドロップで別エンティティに移動できます。個体指定子やアトリビュートに詳細を設定しても決して無駄にはさせません。

サブセット作成方法

  1. エディタ内のエンティティを右クリックします。
  2. ポップアップメニューから「サブセット」を選択します。
  3. ダイアログでサブセットを編集しOKをクリックすると、サブセットが作成されます。