2011-06-30 25 views
0

一般來說,我對CoreData變暖,但我目前正在旋轉我的輪子,以瞭解如何爲我的數據模型創建數據模型,這是一個來自XML文件的循環對象圖,是一個簡單的非週期性數據圖。CoreData。如何從XML文件播種我的數據模型?

具體而言,我有這樣的 - 做作 - 週期性圖案在我的數據模型:

抗體---------------->乙
巴----- ----------->甲

A.widgets ------- >>的widget
Widget.a --------->甲

B.widgets ------------- >> Widget
Widget.b --------------> B

我的XML文件與數據模型鬆散相關,所以我需要做一些重新映射/ futzing來解析數據模型中的數據,但這不是我的問題的核心。我正在爲如何處理數據模型圖的週期性而苦苦掙扎。我如何正確,穩健地將實體編織在一起?對象圖沒有「根」,因此顯然的遍歷不明確。

回答

0

我已經解決了這個各種XML和JSON加載需求,但沒有提出一個廣義的解決方案。

  1. 將此循環圖呈現爲具有根的樹。以對您的應用程序有意義的方式選擇根。
  2. 唯一標識將被引用的每個節點。
  3. 通過使用其標識符引用不在當前節點下的每個節點(樹破壞的週期性部分)。將該「軟鏈接」添加到模型中。
  4. 在加載和創建字典時將標識符映射到字典中的對象。
  5. 完全加載初始樹之後,以與xml樹相同的方式遍歷模型以解析軟鏈接。從字典中加載它們引用的對象並將它們分配到模型中。
+0

謝謝彼得。看起來很有希望。乾杯。 – dugla