選單
GSS 技術部落格
在這個園地裡我們將從技術、專案管理、客戶對談面和大家分享我們多年的經驗,希望大家不管是喜歡或是有意見,都可以回饋給我們,讓我們有機會和大家對話並一起成長!
若有任何問題請來信:gss_crm@gss.com.tw
2 分鐘閱讀時間 (325 個字)

[Data Modeling] 以例子來理解 Party Relationship

ryan-quintal-Rt0fXXXvf4w-unsplash

這篇要談的是在 The Data Model Resource Book Vol 1 裡的 Common Party Relationships 的設計手法,以實例來理解這個設計如何滿足通用性的Party 關係。

圖一、Common Party Relationships (from 原書 figure 2.6a)

Party Relationships 的主要目的是要描述 Party 與 Party 之間的各種關係,既然是Party 與 Party 之間關係,則可以視為是 Peer to Peer 的關係,就可以套用 Recursive Pattern 的概念,因此,在開始之前先回顧一下Recursive Pattern 的Level 3, 如下圖,並分別標示顏色:

之前教過的方式,主要的Entity是Party Role, 所以

將Entity 替換成 Party Role, 

將Entity Type 替換成 Party Role Type 

而Entity Association 則可以替換成 Party Role Association (在下圖中則改為比較貼切的 Party Relationship),

同理,Entity Association Type 則替換成 Party Relationship Type 

對應關係就如圖三所示:

Party Role 記錄了 Party 擔任什麼角色,一個人可以同時擔任多個角色,有哪些角色可以選則是由Party Role Type 決定

Party Relationship Type 則是定義了糸統要處理哪些 Party Relationship 的類別,如指導、聘用、就讀...等關係

Party Relationship 則實際記錄了每個Party Role 和另一個Party Role 之間的關係
如:Andy 指導 Bob 

藉由 Party Relationship type 中的定義,可以知道,兩兩關係中,前者是指導老師的角色,後者是受指導的學生。

未來如果要增加一個角色,可以在 Party Role Type 中增加一個角色,並在 Party Relationship Type 中設定這個角色和其它角色可以有什麼關聯,就可以在不改data model 的情況下完成。

大數據前的資料清理
以 docker 解決網站應用程式複雜的部署問題

相關文章

 

評論

尚無評論
已經注冊了? 這裡登入
Guest
2025/08/22, 週五

Captcha 圖像