2009-09-24 109 views
2

我的確切模型很難解釋,所以說我在Xcode的核心數據建模器中建模水果及其種子。下面是一些「僞核心數據代碼」:核心數據:抽象實體和繼承關係

abstractEntity Fruit 
attribute sweetness 
relationship Seed 

abstractEntity Seed 
attribute shape 

concreteEntity Apple inherits Fruit 
concreteEntity Orange inherits Fruit 

concreteEntity AppleSeed inherits Seed 
concreteEntity OrangeSeed inherits Seed 

我以這種方式建模的原因是,我希望能夠獲取水果的混合,並通過種子的形狀對它們進行排序。鑑於此模型,這裏是我的問題:

在Xcode建模器(即從GUI)中是否有任何直接的方式,使我能夠指定蘋果只能有AppleSeeds和橙子只能有OrangeSeeds?在上面的模型中,具體的果實繼承了抽象的種子關係,我需要它來獲取和分類混合的果實/種子,但我沒有看到任何方式來強制每種具體果實必須具有的確切的種子關係。

我看到很多不同的方法來強制建模GUI外,但只是想確保我不會錯過任何東西。有什麼建議麼?

希望這個例子很有意義!

回答

3

我能想到的唯一方法是從超級中刪除種子關係,並在子實體中放入特定的AppleSeed和OrangeSeed關係。您可能可以覆蓋子實體中的關係,而不必將其從超級中移除,但據我所知,模型編輯器無法執行您所描述的內容。

+0

這是一個恥辱,但又突出了核心數據模型和RDBMS之間的核心差異。 – Daniel 2012-07-22 02:41:23