2005年10月 1日 対照表と、(R) の多値 >> 目次 (作成日順)
  ● QUESTION   対照表が 「event」 を指示するとき、(R) の多値を、どのように扱えばよいか。
  ▼ ANSWER   VE (みなし entity) を使えばよい。
2010年10月16日 補遺  



 ● 前提

 (1) 社員には、認知番号として、社員番号が付与されている。
 (2) 会議室には、認知番号として、会議室番号が付与されている。

 
 ● 対象的事象

 (1) 社員は、会議室を予約する。
 (2) 予約する際、社員は、以下のいずれか (AND/OR) として登録される。
    - 予約者
    - 開催者
    - 参加者

 
 ● データ 構造 (対照表が 「予約」 を指示している。)

┌─────────┐       ┌─────────┐
│   社員   R│       │   会議室  R│
├────┬────┤       ├────┬────┤
│社員No │    ├───┬───┤会議室No│    │
│    │    │   │   │    │    │
└────┴────┘   │   └────┴────┘
              │
              │
       ┌──────┴──────┐
       │  社員. 会議室. 対照表  │
       ├──────┬──────┤
       │社員No(R)  │開始予定  │
       │会議室No(R) │終了予定  │
       │      │      │
       └──────┴──────┘

 ● 考えかた

 (1) 予約者、開催者、参加者には、なんらかの区分が付与されている状態なら
    (区分 コードが導入されているなら)、

      社員. 会議室. 対照表
      {社員番号(R)、会議室番号(R)、日付}
        |
        = ××区分 コード
        |
        ├ 開催者 {社員番号(R)、会議室番号(R)、開催日}
        |
        ├ 予約者 {社員番号(R)、会議室番号(R)、予約日}
        |
        └ 参加者 {社員番号(R)、会議室番号(R)、参加日}

 
 予約日が開催日と参加日を同時に示しているのであれば、予約日・開催日・参加日は同じ値が入ります。

 
 (2) 区分 コードが導入されていないなら、

   (2)-1. 対照表が 「開催」 という event を指示するなら、
        「予約」 と 「参加」 は、VE になるでしょうね。

      社員. 会議室. 対照表(開催)
      {社員番号(R)、会議室番号(R)、開催日}
      |   |
      |   |
      |   └VE 予約{社員番号(R)、会議室番号(R)、予約日}
      |
      └VE 参加{社員番号(R)、会議室番号(R)、参加日}

 
   (2)-2. もし、会議室を管理することが第一目的であって、「予約」 を重視するのであれば、
        「開催」 と 「参加」 が、VE になるでしょう。

 
 (3) 同じ日に、同じ会議室が、いくども、使われるのであれば、日付として 「年月日+時刻」 を定義して
   おけばよいでしょう。

    開催時間帯は閉区間です。したがって、同じ会議室において、先行開催の終了時刻は、後続開催
   の開始時刻に対して常に先行します。

 



[ 補遺 ] (2010年10月16日)

 取り立てて補遺はいらないでしょう。





  << もどる HOME すすむ >>
  データ解析に関するFAQ