हालांकि कोर डेटा Apple के एंटरप्राइज ऑब्जेक्ट फ्रेमवर्क का एक वंशज है , एक ऑब्जेक्ट-रिलेशनल मैपर (ORM) जो / एक कसकर एक रिलेशनल बैकेंड से बंधा हुआ है, कोर डेटा नहीं है एक ओआरएम । यह वास्तव में, एक वस्तु ग्राफ प्रबंधन ढांचा है। यह ऑब्जेक्ट इंस्टेंस के संभावित रूप से बहुत बड़े ग्राफ का प्रबंधन करता है, जिससे एक ऐप को एक ग्राफ के साथ काम करने की अनुमति मिलती है जो आवश्यक रूप से मेमोरी में और बाहर वस्तुओं को गलती से पूरी तरह से मेमोरी में फिट नहीं होगा। कोर डेटा भी गुणों और संबंधों पर बाधाओं का प्रबंधन करता है और संदर्भ अखंडता को बनाए रखता है (उदाहरण के लिए जब वस्तुओं को एक रिश्ते से जोड़ा / हटा दिया जाता है तो आगे और पीछे के लिंक को सुसंगत रखते हुए)। कोर डेटा इस प्रकार MVC आर्किटेक्चर के "मॉडल" घटक के निर्माण के लिए एक आदर्श ढांचा है।
अपने ग्राफ प्रबंधन को लागू करने के लिए, कोर डेटा एक डिस्क स्टोर के रूप में SQLite का उपयोग करने के लिए होता है। इसे एक अलग रिलेशनल डेटाबेस या यहां तक कि एक गैर-रिलेशनल डेटाबेस जैसे कि CouchDB का उपयोग करके लागू किया जा सकता था । जैसा कि अन्य ने बताया है, कोर डेटा भी एक्सएमएल या एक द्विआधारी प्रारूप या बैकएंड के रूप में एक उपयोगकर्ता-लिखित परमाणु प्रारूप का उपयोग कर सकता है (हालांकि इन विकल्पों के लिए आवश्यक है कि संपूर्ण ऑब्जेक्ट ग्राफ मेमोरी में फिट हो)। यदि आप रुचि रखते हैं कि किसी SQLite बैकएंड पर कोर डेटा कैसे लागू किया जाता है, तो आप ओमनीग्रुप के OmniDataObjects ढांचे की जांच कर सकते हैं , जो कोर डेटा एपीआई के सबसेट का एक खुला स्रोत कार्यान्वयन है। BaseTen ढांचा भी PostgreSQL एक बैकेंड के रूप में उपयोग करते हुए कोर डेटा API के एक कार्यान्वयन है।
क्योंकि कोर डेटा SQLite के लिए एक ORM होने का इरादा नहीं है, यह मनमाना SQLite स्कीमा नहीं पढ़ सकता है। इसके विपरीत, आपको कोर डेटा के SQLite डेटा स्टोर को अन्य SQLite टूल के साथ पढ़ने में सक्षम होने पर भरोसा नहीं करना चाहिए; स्कीमा एक कार्यान्वयन विवरण है जो बदल सकता है।
इस प्रकार, सीधे कोर डेटा या SQLite का उपयोग करने के बीच वास्तव में कोई संघर्ष नहीं है। यदि आप एक रिलेशनल डेटाबेस चाहते हैं, तो SQLite (सीधे FMDB जैसे ऑब्जेक्टिव-सी रैपर में से एक के माध्यम से ) या एक रिलेशनल डेटाबेस सर्वर का उपयोग करें। हालाँकि, आप अभी भी ऑब्जेक्ट ग्राफ़ प्रबंधन ढांचे के रूप में उपयोग के लिए कोर डेटा सीखना चाह सकते हैं। Apple के कंट्रोलर क्लासेस और की-वैल्यू बाइंडिंग कम्पेटिबल व्यू विजेट्स के संयोजन में, आप बहुत कम कोड के साथ एक पूर्ण MVC आर्किटेक्चर को लागू कर सकते हैं ।