मेटा-ऑब्जेक्ट सुविधा

मेटा-ऑब्जेक्ट सुविधा (एमओएफ) मॉडल-संचालित इंजीनियरिंग के लिए एक ऑब्जेक्ट मैनेजमेंट ग्रुप (ओएमजी) मानक है। इसका उद्देश्य कोरबा आर्किटेक्चर में संस्थाओं के लिए एक प्रकार की प्रणाली और इंटरफेस का एक सेट प्रदान करना है जिसके माध्यम से उन प्रकारों को बनाया और हेरफेर किया जा सकता है। आधिकारिक संदर्भ पृष्ठ ओएमजी की वेबसाइट पर पाया जा सकता है।

अवलोकन
एमओएफ को कोरबा आर्किटेक्चर में उपयोग के लिए एक प्रकार की प्रणाली प्रदान करने के लिए विकसित किया गया था, स्कीमा का एक सेट जिसके द्वारा वस्तुओं की संरचना, अर्थ और व्यवहार को परिभाषित किया जा सकता था, और कोरबा इंटरफेस का एक सेट जिसके माध्यम से इन स्कीमा को बनाया, संग्रहीत और हेरफेर किया जा सकता था। एमओएफ को चार-स्तरीय आर्किटेक्चर के रूप में डिज़ाइन किया गया है। यह शीर्ष परत पर एक मेटा-मेटा मॉडल प्रदान करता है, जिसे एम3 परत कहा जाता है। यह एम3-मॉडल वह भाषा है जिसका उपयोग एमओएफ द्वारा मेटामॉडल बनाने के लिए किया जाता है, जिसे एम2-मॉडल कहा जाता है। परत 2 एमओएफ मॉडल का सबसे प्रमुख उदाहरण यूएमएल मेटामॉडल है, वह मॉडल जो यूएमएल का ही वर्णन करता है। ये एम2-मॉडल एम1-परत के तत्वों और इस प्रकार एम1-मॉडल का वर्णन करते हैं। उदाहरण के लिए, ये यूएमएल में लिखे गए मॉडल होंगे। अंतिम परत एम0-परत या डेटा परत है। इसका उपयोग वास्तविक संसार की वस्तुओं का वर्णन करने के लिए किया जाता है।

एम3-मॉडल से परे, एमओएफ उन परिचालनों का वर्णन करने वाले कॉर्बा इंटरफेस को परिभाषित करके मॉडल और मेटामॉडल बनाने और हेरफेर करने के साधनों का वर्णन करता है। एमओएफ एम3-मॉडल और यूएमएल संरचना मॉडल के बीच समानता के कारण, एमओएफ मेटामॉडल्स को समान्यत: यूएमएल वर्ग आरेख के रूप में तैयार किया जाता है। एमओएफ का एक सहायक मानक एक्सएमएल मेटाडेटा इंटरचेंज है, जो एम3, एम2, या एम1-परत पर मॉडल के लिए एक्सएमएल-आधारित एक्सचेंज प्रारूप को परिभाषित करता है।

मेटामॉडलिंग आर्किटेक्चर
एमओएफ एक बंद मेटामॉडलिंग आर्किटेक्चर है; यह एक एम3-मॉडल को परिभाषित करता है, जो स्वयं के अनुरूप है। एमओएफ एक सख्त मेटा-मॉडलिंग आर्किटेक्चर की अनुमति देता है; प्रत्येक परत पर प्रत्येक मॉडल तत्व ऊपर की परत के एक मॉडल तत्व के साथ सख्ती से मेल खाता है। एमओएफ केवल किसी भाषा या डेटा की संरचना, या एब्स्ट्रेक्ट वाक्यविन्यास को परिभाषित करने का साधन प्रदान करता है। मेटामॉडल को परिभाषित करने के लिए, एमओएफ बिल्कुल वही भूमिका निभाता है जो ईबीएनएफ प्रोग्रामिंग भाषा व्याकरण को परिभाषित करने के लिए निभाता है। एमओएफ एक डोमेन विशिष्ट भाषा (डीएसएल) है जिसका उपयोग मेटामॉडल को परिभाषित करने के लिए किया जाता है, जैसे ईबीएनएफ व्याकरण को परिभाषित करने के लिए एक डीएसएल है। ईबीएनएफ के समान, एमओएफ को एमओएफ में परिभाषित किया जा सकता है।

संक्षेप में, एमओएफ मेटलपरत पर अवधारणाओं (मॉडल तत्वों) को परिभाषित करने के लिए 'एमओएफ::क्लासेस' ('यूएमएल::क्लासेस' के साथ अस्पष्ट न हों) की धारणा का उपयोग करता है, जैसा कि ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग से जाना जाता है। एमओएफ का उपयोग ऑब्जेक्ट-ओरिएंटेड मेटामॉडल (उदाहरण के लिए एकीकृत मॉडलिंग भाषा के रूप में) के साथ-साथ गैर-ऑब्जेक्ट-ओरिएंटेड मेटामॉडल (पेट्री नेट या वेब सेवा मेटामॉडल के रूप में) को परिभाषित करने के लिए किया जा सकता है।

मई 2006 तक, ऑब्जेक्ट मैनेजमेंट ग्रुप ने एमओएफ के लिए दो अनुपालन बिंदु परिभाषित किए हैं:
 * आवश्यक एमओएफ के लिए ईएमओएफ
 * पूर्ण एमओएफ के लिए सीएमओएफ

जून 2006 में, ओएमजी द्वारा तीसरे संस्करण, एसएमओएफ (सिमेंटिक एमओएफ) के लिए प्रस्ताव के लिए अनुरोध जारी किया गया था।

वैरिएंट 'ईकोर' जिसे ' एक्लिप्स मॉडलिंग फ्रेमवर्क ' में परिभाषित किया गया है, कमोबेश ओएमजी के ईएमओएफ पर संरेखित है।

एक अन्य संबंधित मानक ऑब्जेक्ट बाधा भाषा है, जो एक औपचारिक भाषा का वर्णन करता है जिसका उपयोग विधेय तर्क के संदर्भ में मॉडल बाधाओं को परिभाषित करने के लिए किया जा सकता है।

क्यूवीटी, जो एमओएफ-आधारित मॉडलों को क्वेरी करने, देखने और बदलने का साधन प्रस्तुत करता है, एक बहुत ही महत्वपूर्ण मानक है, जिसे 2008 में अनुमोदित किया गया था। अधिक जानकारी के लिए मॉडल परिवर्तन भाषा देखें।

अंतर्राष्ट्रीय मानक
एमओएफ एक अंतरराष्ट्रीय मानक है:
 * एमओएफ 2.4.2
 * मानकीकरण के लिए अंतर्राष्ट्रीय संगठन/अंतर्राष्ट्रीय इलेक्ट्रोटेक्निकल आयोग 19508:2014 सूचना प्रौद्योगिकी ऑब्जेक्ट प्रबंधन समूह मेटा ऑब्जेक्ट सुविधा (एमओएफ) कोर है


 * एमओएफ 1.4
 * अंतर्राष्ट्रीय मानकीकरण संगठन/अंतर्राष्ट्रीय इलेक्ट्रोटेक्निकल आयोग 19502:2005 सूचना प्रौद्योगिकी - मेटा ऑब्जेक्ट सुविधा (एमओएफ)

एमओएफ को मेटामॉडल्स लिखने के लिए एक मानक के रूप में देखा जा सकता है, उदाहरण के लिए डोमेन विशिष्ट भाषाओं के एब्स्ट्रेक्ट वाक्यविन्यास को मॉडल करने के लिए केर्मेटा एमओएफ का एक विस्तार है जो निष्पादन योग्य क्रियाओं को ईएमओएफ मेटा-मॉडल से जोड़ने की अनुमति देता है, जिससे डीएसएल परिचालन शब्दार्थ को मॉडल करना और इसके लिए आसानी से एक दुभाषिया प्राप्त करना संभव हो जाता है।

जावा मेटाडेटा इंटरफ़ेस एमओएफ मॉडल में हेरफेर करने के लिए जावा एपीआई को परिभाषित करता है।

ओएमजी के एमओएफ को सामान्य सूचना मॉडल (सीआईएम) इंफ्रास्ट्रक्चर विशिष्टता, संस्करण 2.5.0 के खंड 6 में वितरित प्रबंधन कार्य बल (डीएमटीएफ) द्वारा परिभाषित प्रबंधित ऑब्जेक्ट प्रारूप (एमओएफ) के साथ अस्पष्ट नहीं किया जाना चाहिए।

यह भी देखें

 * सामान्य वेयरहाउस मेटामॉडल
 * डोमेन-विशिष्ट भाषा
 * केरमेटा
 * किमी3
 * मेटामॉडलिंग
 * मेटा डेटा
 * मॉडल-संचालित वास्तुकला
 * ओजीएमएल
 * प्लेटफ़ॉर्म-स्वतंत्र मॉडल
 * प्लेटफ़ॉर्म-विशिष्ट मॉडल
 * क्यूवीटी
 * एसपीईएम
 * एक्सएमएल मेटाडेटा इंटरचेंज

अग्रिम पठन

 * Official एमओएफ specification from OMG
 * Ralph Sobek, एमओएफ Specifications Documents
 * Johannes Ernst, What is metamodeling?
 * Woody Pidcock, What are the differences between a vocabulary, a taxonomy, a thesaurus, an ontology, and a meta-model?
 * Anna Gerber and Kerry Raymond, एमओएफ to EMF and Back Again.
 * Weaving Executability into Object-Oriented Meta-Languages
 * एमओएफ Support for Semantic Structures RFP Request For Proposal on SMOF

बाहरी संबंध

 * OMG's MetaObject Facility