एक्सप्रेस (डेटा मॉडलिंग भाषा): Difference between revisions
No edit summary |
No edit summary |
||
(10 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
[[File:A 01 Audio compact disc collection.svg|thumb|320px|चित्र 1. एक्सप्रेस-जी | [[File:A 01 Audio compact disc collection.svg|thumb|320px|चित्र 1. एक्सप्रेस-जी टिप्पणी में प्रस्तुत ध्वनि संक्षिप्त डिस्क (सीडी) संग्रह के लिए डेटाबेस की आवश्यकताएं।]]'''एक्सप्रेस''' [[उत्पाद (व्यवसाय)]] डेटा के लिए मानक [[मॉडलिंग की दिनांक|डेटा]] [[मॉडलिंग भाषा]] है। एक्सप्रेस को उत्पाद मॉडल स्टेप ([[ISO 10303|आईएसओ 10303]]) के आदान-प्रदान के लिए आईएसओ मानक में औपचारिक रूप दिया गया है, और आईएसओ 10303-11 के रूप में मानकीकृत किया गया है।<ref>[http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=38047 ISO 10303-11:2004 Industrial automation systems and integration] -- Product data representation and exchange -- Part 11: Description methods: The EXPRESS language reference manual</ref> | ||
== | == अवलोकन == | ||
[[डेटा मॉडल]] औपचारिक रूप से रुचि के डोमेन के लिए [[डेटा वस्तु]] और डेटा | [[डेटा मॉडल]] औपचारिक रूप से रुचि के डोमेन के लिए [[डेटा वस्तु]] और डेटा वस्तु के बीच संबंधों को परिभाषित करते हैं। डेटा मॉडल के कुछ विशिष्ट अनुप्रयोगों में [[डेटाबेस]] के विकास का समर्थन करना और किसी विशेष क्षेत्र के लिए डेटा के आदान-प्रदान को सक्षम करना सम्मिलित है। डेटा मॉडल को डेटा मॉडलिंग भाषा में निर्दिष्ट किया जाता है।<ref name="MRM99">Michael R. McCaleb (1999). [http://nvlpubs.nist.gov/nistpubs/jres/104/4/html/j44mac.htm#apa "A Conceptual Data Model of Datum Systems"]. National Institute of Standards and Technology. August 1999.</ref> एक्सप्रेस आईएसओ 10303-11, एक्सप्रेस भाषा संदर्भ नियमावली में परिभाषित डेटा मॉडलिंग भाषा है।<ref>ISO International Standard 10303-11:1994, Industrial automation systems and integration — Product data representation andexchange — Part 11: Description methods: The EXPRESS language reference manual, International Organization for Standardization, Geneva, Switzerland (1994).</ref> | ||
एक्सप्रेस प्रोग्रामिंग लैंग्वेज जैसे [[पास्कल (प्रोग्रामिंग भाषा)]] के समान है। | एक एक्सप्रेस डेटा मॉडल को टेक्स्ट और आरेखीय रूप से दो प्रकार से परिभाषित किया जा सकता है। औपचारिक सत्यापन के लिए और [[आईएसओ 10303-22]] जैसे उपकरणों के लिए इनपुट के रूप में [[एएससीआईआई]] फ़ाइल के अन्दर टेक्स्टुअल प्रतिनिधित्व सबसे महत्वपूर्ण है। दूसरी ओर ग्राफिकल प्रतिनिधित्व अधिकांश मानव उपयोग के लिए अधिक उपयुक्त होता है जैसे स्पष्टीकरण और ट्यूटोरियल। ग्राफिकल प्रतिनिधित्व, जिसे एक्सप्रेस-जी कहा जाता है, उन सभी विवरणों का प्रतिनिधित्व करने में सक्षम नहीं है जिन्हें पाठ्य रूप में तैयार किया जा सकता है। | ||
एक्सप्रेस प्रोग्रामिंग लैंग्वेज जैसे [[पास्कल (प्रोग्रामिंग भाषा)]] के समान है। स्कीमा के अन्दर विभिन्न समुच्चयप्रकारों को संरचनात्मक बाधाओं और एल्गोरिथम नियमों के साथ परिभाषित किया जा सकता है। एक्सप्रेस की मुख्य विशेषता डेटाप्रकारों की आबादी को औपचारिक रूप से मान्य करने की संभावना है - यह सभी संरचनात्मक और एल्गोरिथम नियमों की जांच करना है। | |||
=== एक्सप्रेस-जी === | === एक्सप्रेस-जी === | ||
एक्सप्रेस-जी [[सूचना मॉडल]] के लिए मानक चित्रमय संकेतन है।<ref>[http://www.steptools.com/support/stdev_docs/devtools/devtools-7.html 4 EXPRESS-G Language Overview] {{Webarchive|url=https://web.archive.org/web/20081109065451/http://www.steptools.com/support/stdev_docs/devtools/devtools-7.html |date=2008-11-09 }}. Accessed 9 Nov 2008.</ref> यह इकाई और प्रकार की परिभाषाएँ, | एक्सप्रेस-जी [[सूचना मॉडल]] के लिए मानक चित्रमय संकेतन है।<ref>[http://www.steptools.com/support/stdev_docs/devtools/devtools-7.html 4 EXPRESS-G Language Overview] {{Webarchive|url=https://web.archive.org/web/20081109065451/http://www.steptools.com/support/stdev_docs/devtools/devtools-7.html |date=2008-11-09 }}. Accessed 9 Nov 2008.</ref> यह इकाई और प्रकार की परिभाषाएँ, संबंधों और प्रमुखता को प्रदर्शित करने के लिए एक्सप्रेस भाषा का साथी है।<ref>For information on the EXPRESS-G notation, consult Annex B of the EXPRESS Language Reference Manual (ISO 10303-11)</ref> यह चित्रमय संकेतन एक्सप्रेस भाषा के उपसमुच्चय का समर्थन करता है। एक्सप्रेस पर एक्सप्रेस-जी का उपयोग करने के लाभों में से यह है कि डेटा मॉडल की संरचना को अधिक समझने योग्य विधि से प्रस्तुत किया जा सकता है। एक्सप्रेस-जी का हानि यह है कि जटिल बाधाओं को औपचारिक रूप से निर्दिष्ट नहीं किया जा सकता है। चित्र 1 उदाहरण है। चित्र में प्रस्तुत डेटा मॉडल का उपयोग ध्वनि संक्षिप्त डिस्क (सीडी) संग्रह के लिए डेटाबेस की आवश्यकताओं को निर्दिष्ट करने के लिए किया जा सकता है।<ref name="MRM99"/> | ||
Line 32: | Line 33: | ||
END_SCHEMA; | END_SCHEMA; | ||
</syntaxhighlight>डेटा मॉडल एक्सप्रेस स्कीमा परिवार के | </syntaxhighlight>डेटा मॉडल एक्सप्रेस स्कीमा परिवार के अन्दर संलग्न है। इसमें दो उपप्रकार पुरुष और महिला के साथ सुपरटाइप इकाई व्यक्ति सम्मिलित है। चूँकि व्यक्ति को अमूर्त घोषित किया गया है, केवल (वनऑफ़) उपप्रकार पुरुष या महिला उपस्थित हो सकते हैं। किसी व्यक्ति की प्रत्येक घटना में अनिवार्य नाम विशेषता होती है और वैकल्पिक रूप से माता और पिता का गुण होता है। कुछ इकाई प्रकार की विशेषताओं के लिए पढ़ने की निश्चित शैली होती है: | ||
* महिला व्यक्ति के लिए माँ की भूमिका निभा सकती है | * महिला व्यक्ति के लिए माँ की भूमिका निभा सकती है | ||
* पुरुष व्यक्ति के लिए पिता की भूमिका निभा सकता है | * पुरुष व्यक्ति के लिए पिता की भूमिका निभा सकता है | ||
== एक्सप्रेस | == एक्सप्रेस निर्माण ब्लॉक्स == | ||
=== डेटा प्रकार === | === डेटा प्रकार === | ||
एक्सप्रेस एक्सप्रेस-जी | एक्सप्रेस एक्सप्रेस-जी टिप्पणी के विशिष्ट डेटा प्रकार प्रतीकों के साथ, समुच्चयप्रकारों की श्रृंखला प्रदान करता है:<ref name="MRM99"/> | ||
[[File:A 02A Data type symbols.svg|center]]* इकाई डेटा प्रकार: यह एक्सप्रेस में सबसे महत्वपूर्ण डेटा प्रकार है। इसे और अधिक विस्तार से नीचे | [[File:A 02A Data type symbols.svg|center]] | ||
* गणना डेटा प्रकार: गणना मान आरजीबी-गणना के लिए लाल, हरा और नीला जैसे सरल तार होते हैं। इस | |||
* परिभाषित डेटा प्रकार: यह आगे अन्य | * इकाई डेटा प्रकार: यह एक्सप्रेस में सबसे महत्वपूर्ण डेटा प्रकार है। इसे और अधिक विस्तार से नीचे समाविष्ट किया गया है। उप-सुपरटाइप पेड़ और/या विशेषताओं द्वारा इकाई डेटाटाइप दो विधियों से संबंधित हो सकते हैं। | ||
* डेटा प्रकार का चयन करें: चयन विभिन्न विकल्पों के बीच विकल्प या विकल्प को परिभाषित करता है। विभिन्न | |||
* गणना डेटा प्रकार: गणना मान आरजीबी-गणना के लिए लाल, हरा और नीला जैसे सरल तार होते हैं। इस स्थिति में कि गणना प्रकार को विस्तरणीय घोषित किया जाता है, इसे अन्य स्कीमाओं में बढ़ाया जा सकता है। | |||
* परिभाषित डेटा प्रकार: यह आगे अन्य समुच्चयप्रकारों को माहिर करता है - उदाहरण के लिए, डेटाटाइप सकारात्मक को परिभाषित करता है जो मान> 0 के साथ पूर्णांक प्रकार का होता है। | |||
* डेटा प्रकार का चयन करें: चयन विभिन्न विकल्पों के बीच विकल्प या विकल्प को परिभाषित करता है। विभिन्न वास्तविकता प्रकारों के बीच सबसे अधिक उपयोग किए जाने वाले चयन हैं। अधिक दुर्लभ ऐसे चयन हैं जिनमें परिभाषित प्रकार सम्मिलित हैं। इस स्थिति में कि गणना प्रकार को विस्तरणीय घोषित किया जाता है, इसे अन्य स्कीमाओं में बढ़ाया जा सकता है। | |||
* सरल डेटा प्रकार | * सरल डेटा प्रकार | ||
** स्ट्रिंग: यह सबसे अधिक | ** स्ट्रिंग: यह सबसे अधिक उपयोग किया जाने वाला सरल प्रकार है। एक्सप्रेस तार किसी भी लम्बाई के हो सकते हैं और इसमें कोई भी वर्ण (आईएसओ 10646 / यूनिकोड) हो सकता है। | ||
** बाइनरी: यह डेटा प्रकार केवल बहुत ही कम उपयोग किया जाता है। इसमें कई बिट्स (बाइट्स नहीं) | ** बाइनरी: यह डेटा प्रकार केवल बहुत ही कम उपयोग किया जाता है। इसमें कई बिट्स (बाइट्स नहीं) सम्मिलित हैं। कुछ कार्यान्वयनों के लिए आकार 32 बिट तक सीमित है। | ||
** लॉजिकल: बूलियन डेटाटाइप के समान लॉजिकल में | ** लॉजिकल: बूलियन डेटाटाइप के समान लॉजिकल में सत्य और असत्य के संभावित मान और इसके अतिरिक्त अज्ञात भी होते हैं। | ||
** बूलियन: बूलियन मान | ** बूलियन: बूलियन मान सत्य और असत्य के साथ। | ||
** संख्या: संख्या डेटा प्रकार पूर्णांक और वास्तविक दोनों का सुपरटाइप है। अधिकांश कार्यान्वयन | ** संख्या: संख्या डेटा प्रकार पूर्णांक और वास्तविक दोनों का सुपरटाइप है। अधिकांश कार्यान्वयन वास्तविक प्रकार का प्रतिनिधित्व करने के लिए दोहरे प्रकार का उपयोग करता है, चाहे वास्तविक मान पूर्णांक हो। | ||
** पूर्णांक: एक्सप्रेस पूर्णांक सिद्धांत रूप में किसी भी लम्बाई के हो सकते हैं, | ** पूर्णांक: एक्सप्रेस पूर्णांक सिद्धांत रूप में किसी भी लम्बाई के हो सकते हैं, किन्तु अधिकांश कार्यान्वयनों ने उन्हें हस्ताक्षरित 32 बिट मान तक सीमित कर दिया। | ||
** वास्तविक: आदर्श रूप से एक्सप्रेस वास्तविक मूल्य | ** वास्तविक: आदर्श रूप से एक्सप्रेस वास्तविक मूल्य शुद्धता और आकार में असीमित है। किन्तु व्यवहार में वास्तविक मूल्य को टाइप डबल के फ्लोटिंग पॉइंट मान द्वारा दर्शाया जाता है। | ||
* एकत्रीकरण डेटा प्रकार: एकत्रीकरण_ प्रकार के संभावित प्रकार | * एकत्रीकरण डेटा प्रकार: एकत्रीकरण_ प्रकार के संभावित प्रकार समुच्चय, बैग, सूची और शृंखला समूह हैं। चूँकि समुच्चय और बैग अनियंत्रित हैं, सूची और शृंखला समूह का आदेश दिया गया है। बैग में से अधिक बार विशेष मान हो सकता है, एसईटी के लिए इसकी अनुमति नहीं है। शृंखला समूह एकमात्र समग्र है जिसमें अनसमुच्चय सदस्य हो सकते हैं। यह समुच्चय, सूची, बैग के लिए संभव नहीं है। समुच्चय के सदस्य किसी अन्य डेटा प्रकार के हो सकते हैं। | ||
समुच्चयप्रकारों के लिए कुछ सामान्य बातों का उल्लेख किया जाना है। | |||
* निर्मित | * निर्मित समुच्चयप्रकारों को एक्सप्रेस स्कीमा के अन्दर परिभाषित किया जा सकता है। वे मुख्य रूप से संस्थाओं को परिभाषित करने और इकाई विशेषताओं और कुल सदस्यों के प्रकार को निर्दिष्ट करने के लिए उपयोग किए जाते हैं। | ||
* डेटा प्रकार का उपयोग पुनरावर्ती | * डेटा प्रकार का उपयोग पुनरावर्ती विधि से अधिक से अधिक जटिल डेटा प्रकार बनाने के लिए किया जा सकता है। उदा. कुछ संस्थाओं या अन्य समुच्चयप्रकारों के चयन की सरणी की सूची को परिभाषित करना संभव है। यदि इस प्रकार के डेटाटाइप को परिभाषित करना समझ में आता है तो यह अलग सवाल है। | ||
* एक्सप्रेस कुछ नियमों को परिभाषित करता है कि कैसे डेटाटाइप को और अधिक विशिष्ट बनाया जा सकता है। यह संस्थाओं की फिर से घोषित विशेषताओं के लिए महत्वपूर्ण है। | * एक्सप्रेस कुछ नियमों को परिभाषित करता है कि कैसे डेटाटाइप को और अधिक विशिष्ट बनाया जा सकता है। यह संस्थाओं की फिर से घोषित विशेषताओं के लिए महत्वपूर्ण है। | ||
* सामान्य डेटा प्रकारों का उपयोग प्रक्रियाओं, कार्यों और अमूर्त संस्थाओं के लिए किया जा सकता है। | * सामान्य डेटा प्रकारों का उपयोग प्रक्रियाओं, कार्यों और अमूर्त संस्थाओं के लिए किया जा सकता है। | ||
=== इकाई-विशेषता === | === इकाई-विशेषता === | ||
Entity विशेषताएँ संस्थाओं में गुण जोड़ने और इकाई को विशिष्ट भूमिका में दूसरे के साथ जोड़ने की अनुमति देती हैं। विशेषता का नाम भूमिका निर्दिष्ट करता है। अधिकांश डेटा प्रकार सीधे विशेषता के प्रकार के रूप में कार्य कर सकते हैं। इसमें एकत्रीकरण भी | Entity विशेषताएँ संस्थाओं में गुण जोड़ने और इकाई को विशिष्ट भूमिका में दूसरे के साथ जोड़ने की अनुमति देती हैं। विशेषता का नाम भूमिका निर्दिष्ट करता है। अधिकांश डेटा प्रकार सीधे विशेषता के प्रकार के रूप में कार्य कर सकते हैं। इसमें एकत्रीकरण भी सम्मिलित है। | ||
गुण तीन प्रकार के होते हैं, स्पष्ट, व्युत्पन्न और प्रतिलोम गुण। और इन सभी को उपप्रकार में पुनः घोषित किया जा सकता है। इसके | गुण तीन प्रकार के होते हैं, स्पष्ट, व्युत्पन्न और प्रतिलोम गुण। और इन सभी को उपप्रकार में पुनः घोषित किया जा सकता है। इसके अतिरिक्त उपप्रकार में व्युत्पन्न के रूप में स्पष्ट विशेषता को फिर से घोषित किया जा सकता है। इस प्रकार के गुणों में कोई अन्य परिवर्तन संभव नहीं है। | ||
* स्पष्ट विशेषताएँ वे हैं जिनका सीधा मान | * स्पष्ट विशेषताएँ वे हैं जिनका सीधा मान स्टेप-फ़ाइल में दिखाई देता है। | ||
* व्युत्पन्न विशेषताएँ अभिव्यक्ति से अपना मान प्राप्त करती हैं। | * व्युत्पन्न विशेषताएँ अभिव्यक्ति से अपना मान प्राप्त करती हैं। अधिकांशतः स्थितियों में अभिव्यक्ति इस उदाहरण के अन्य गुणों को संदर्भित करती है। अभिव्यक्ति एक्सप्रेस कार्यों का भी उपयोग कर सकती है। | ||
* व्युत्क्रम विशेषताएँ किसी इकाई में जानकारी नहीं जोड़ती हैं, | * व्युत्क्रम विशेषताएँ किसी इकाई में जानकारी नहीं जोड़ती हैं, किन्तु केवल दूसरे छोर से इकाई के लिए स्पष्ट विशेषता का नाम और विवश करती हैं। | ||
एक्सप्रेस-जी संकेतन के विशिष्ट विशेषता प्रतीक:<ref name="MRM99"/> | एक्सप्रेस-जी संकेतन के विशिष्ट विशेषता प्रतीक:<ref name="MRM99"/> | ||
Line 73: | Line 77: | ||
=== सुपरटाइप्स और सबटाइप्स === | === सुपरटाइप्स और सबटाइप्स === | ||
इकाई को या कई अन्य संस्थाओं के उपप्रकार के रूप में परिभाषित किया जा सकता है ([[एकाधिक वंशानुक्रम]] की अनुमति है!) सुपरटाइप में कई उपप्रकार हो सकते हैं। बहुत जटिल उप-सुपरटाइप ग्राफ बनाने के लिए | इकाई को या कई अन्य संस्थाओं के उपप्रकार के रूप में परिभाषित किया जा सकता है ([[एकाधिक वंशानुक्रम]] की अनुमति है!) सुपरटाइप में कई उपप्रकार हो सकते हैं। बहुत जटिल उप-सुपरटाइप ग्राफ बनाने के लिए स्टेप में यह बहुत ही सामान्य अभ्यास है। कुछ ग्राफ़ 100 और अधिक संस्थाओं को दूसरे से संबंधित करते हैं। | ||
इकाई उदाहरण या तो इकाई (यदि सार नहीं है) या ऐसे उप-सुपरटाइप ग्राफ में संस्थाओं के जटिल संयोजन के लिए बनाया जा सकता है। बड़े रेखांकन के लिए संभावित संयोजनों की संख्या खगोलीय श्रेणियों में बढ़ने की संभावना है। संभावित संयोजनों को प्रतिबंधित करने के लिए विशेष सुपरटेप बाधाओं को | इकाई उदाहरण या तो इकाई (यदि सार नहीं है) या ऐसे उप-सुपरटाइप ग्राफ में संस्थाओं के जटिल संयोजन के लिए बनाया जा सकता है। बड़े रेखांकन के लिए संभावित संयोजनों की संख्या खगोलीय श्रेणियों में बढ़ने की संभावना है। संभावित संयोजनों को प्रतिबंधित करने के लिए विशेष सुपरटेप बाधाओं को प्रस्तुत किया गया जैसे वनओफ और टोटालोवर। इसके अतिरिक्त, इकाई को प्रायुक्त करने के लिए अमूर्त घोषित किया जा सकता है कि केवल इस इकाई का कोई उदाहरण नहीं बनाया जा सकता है, किन्तु केवल तभी जब इसमें गैर-अमूर्त उप प्रकार हो। | ||
=== एल्गोरिदमिक बाधाएं === | === एल्गोरिदमिक बाधाएं === | ||
संस्थाओं और परिभाषित डेटा प्रकारों को | संस्थाओं और परिभाषित डेटा प्रकारों को {{mono|जहां}} नियमों के साथ और विवश किया जा सकता है। {{mono|जहां}} नियम भी वैश्विक नियमों का हिस्सा हैं। {{mono|जहां}} नियम एक अभिव्यक्ति है, जिसका मूल्यांकन सत्य होना चाहिए, अन्यथा एक एक्सप्रेस स्कीमा की जनसंख्या मान्य नहीं है। व्युत्पन्न विशेषताओं की प्रकार ये अभिव्यक्ति एक्सप्रेस कार्यों को प्रायुक्त कर सकती हैं, जो आगे एक्सप्रेस प्रक्रियाओं को प्रायुक्त कर सकती हैं। कार्य और प्रक्रियाएं स्थानीय चर, पैरामीटर और स्थिरांक के साथ जटिल बयान तैयार करने की अनुमति देती हैं - एक प्रोग्रामिंग भाषा के समान ही। | ||
एक्सप्रेस भाषा स्थानीय और वैश्विक नियमों का वर्णन कर सकती है। | एक्सप्रेस भाषा स्थानीय और वैश्विक नियमों का वर्णन कर सकती है। | ||
Line 96: | Line 100: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
यह उदाहरण बताता है कि | यह उदाहरण बताता है कि क्षेत्र इकाई की लंबाई का वर्ग मान होना चाहिए | ||
और उदाहरण: | इसके लिए विशेषता आयाम लम्बाई_प्रतिनिधि 2 के बराबर होना चाहिए और मूलभूत एसआई इकाइयों के अन्य सभी प्रतिनिधि 0 होने चाहिए। | ||
< | |||
और उदाहरण:<syntaxhighlight lang="d"> | |||
TYPE day_in_week_number = INTEGER; | |||
WR1: (1 <= | WHERE | ||
WR1: (1 <= SELF) AND (SELF <= 7); | |||
</ | END_TYPE; -- day_in_week_number | ||
</syntaxhighlight> | |||
अर्थात, इसका अर्थ है कि सप्ताह का मान 7 से अधिक नहीं हो सकता। | अर्थात, इसका अर्थ है कि सप्ताह का मान 7 से अधिक नहीं हो सकता। | ||
और इसलिए, आप अपनी संस्थाओं को कुछ नियमों का वर्णन कर सकते हैं। दिए गए उदाहरणों पर अधिक विवरण | और इसलिए, आप अपनी संस्थाओं को कुछ नियमों का वर्णन कर सकते हैं। दिए गए उदाहरणों पर अधिक विवरण आईएसओ 10303-41 में पाया जा सकता है | ||
== यह भी देखें == | == यह भी देखें == | ||
{{Commons category|EXPRESS}} आईएसओ संबंधित विषय | {{Commons category|EXPRESS}} आईएसओ संबंधित विषय | ||
* आईएसओ 10303: कंप्यूटर-व्याख्यात्मक प्रतिनिधित्व और औद्योगिक उत्पाद डेटा के आदान-प्रदान के लिए आईएसओ मानक। | * आईएसओ 10303: कंप्यूटर-व्याख्यात्मक प्रतिनिधित्व और औद्योगिक उत्पाद डेटा के आदान-प्रदान के लिए आईएसओ मानक। | ||
* [[ISO 10303-21]]: | * [[ISO 10303-21|आईएसओ 10303-21]]: एएससीआईआई संरचना के साथ स्टेप का डेटा विनिमय रूप | ||
* | * आईएसओ 10303-22: मानक डेटा एक्सेस इंटरफ़ेस, स्टेप के कार्यान्वयन के विधियों का हिस्सा | ||
* [[आईएसओ 10303-28]]: एसटीईपी-एक्सएमएल एक्सप्रेस स्कीमा का प्रतिनिधित्व करने के लिए | * [[आईएसओ 10303-28]]: एसटीईपी-एक्सएमएल एक्सप्रेस स्कीमा का प्रतिनिधित्व करने के लिए विस्तरणीय मार्कअप लैंग्वेज (एक्सएमएल) के उपयोग को निर्दिष्ट करता है | ||
* [[आईएसओ 13584]]-24: पीएलआईबी का तार्किक मॉडल एक्सप्रेस में निर्दिष्ट है | * [[आईएसओ 13584]]-24: पीएलआईबी का तार्किक मॉडल एक्सप्रेस में निर्दिष्ट है | ||
* [[ISO 13399]]: कटिंग टूल डेटा प्रतिनिधित्व और विनिमय के लिए | * [[ISO 13399|आईएसओ 13399]]: कटिंग टूल डेटा प्रतिनिधित्व और विनिमय के लिए आईएसओ मानक | ||
* इंडस्ट्री फाउंडेशन क्लासेस| | * इंडस्ट्री फाउंडेशन क्लासेस|आईएसओ/पीएएस 16739: इंडस्ट्री फाउंडेशन क्लासेस एक्सप्रेस में निर्दिष्ट है | ||
* [[STEP (ISO 10303) भागों की सूची]] | * [[STEP (ISO 10303) भागों की सूची|स्टेप (आईएसओ 10303) भागों की सूची]] | ||
अन्य संबंधित विषय | अन्य संबंधित विषय | ||
Line 127: | Line 131: | ||
* [[सामान्य प्रयोजन मॉडलिंग]] | * [[सामान्य प्रयोजन मॉडलिंग]] | ||
* मॉडलिंग भाषा | * मॉडलिंग भाषा | ||
* [[सिंटैक्स नोटेशन के साथ]] | * [[सिंटैक्स नोटेशन के साथ|सिंटैक्स टिप्पणी के साथ]] | ||
* [[डीओटी (ग्राफ विवरण भाषा)]] | * [[डीओटी (ग्राफ विवरण भाषा)]] | ||
Line 136: | Line 140: | ||
== अग्रिम पठन == | == अग्रिम पठन == | ||
* [[ISO 10303]], the main page for '' | * [[ISO 10303|आईएसओ 10303]], the main page for ''स्टेप, the Standard for the Exchange of Product model data'' | ||
* Douglas A. Schenck and Peter R. Wilson, ''Information Modeling the EXPRESS Way'', Oxford University Press, 1993, {{ISBN|978-0-19-508714-7}} | * Douglas A. Schenck and Peter R. Wilson, ''Information Modeling the EXPRESS Way'', Oxford University Press, 1993, {{ISBN|978-0-19-508714-7}} | ||
Line 142: | Line 146: | ||
{{Authority control}} | {{Authority control}} | ||
{{DEFAULTSORT:Express (Data Modeling Language)}} | {{DEFAULTSORT:Express (Data Modeling Language)}} | ||
[[Category: | [[Category:Collapse templates|Express (Data Modeling Language)]] | ||
[[Category:Created On 16/02/2023]] | [[Category:Commons category link is locally defined|Express (Data Modeling Language)]] | ||
[[Category:Created On 16/02/2023|Express (Data Modeling Language)]] | |||
[[Category:Machine Translated Page|Express (Data Modeling Language)]] | |||
[[Category:Navigational boxes| ]] | |||
[[Category:Navigational boxes without horizontal lists|Express (Data Modeling Language)]] | |||
[[Category:Pages with script errors|Express (Data Modeling Language)]] | |||
[[Category:Sidebars with styles needing conversion|Express (Data Modeling Language)]] | |||
[[Category:Template documentation pages|Documentation/doc]] | |||
[[Category:Templates Vigyan Ready|Express (Data Modeling Language)]] | |||
[[Category:Templates generating microformats|Express (Data Modeling Language)]] | |||
[[Category:Templates that are not mobile friendly|Express (Data Modeling Language)]] | |||
[[Category:Templates using TemplateData|Express (Data Modeling Language)]] | |||
[[Category:Webarchive template wayback links]] | |||
[[Category:Wikipedia articles incorporating text from the National Institute of Standards and Technology|Express (Data Modeling Language)]] | |||
[[Category:Wikipedia metatemplates|Express (Data Modeling Language)]] | |||
[[Category:आईएसओ 10303|Express (Data Modeling Language)]] | |||
[[Category:डेटा मॉडलिंग भाषाएँ|Express (Data Modeling Language)]] | |||
[[Category:मॉडलिंग की दिनांक|Express (Data Modeling Language)]] | |||
[[Category:मॉडलिंग भाषाएँ|Express (Data Modeling Language)]] |
Latest revision as of 18:17, 3 March 2023
एक्सप्रेस उत्पाद (व्यवसाय) डेटा के लिए मानक डेटा मॉडलिंग भाषा है। एक्सप्रेस को उत्पाद मॉडल स्टेप (आईएसओ 10303) के आदान-प्रदान के लिए आईएसओ मानक में औपचारिक रूप दिया गया है, और आईएसओ 10303-11 के रूप में मानकीकृत किया गया है।[1]
अवलोकन
डेटा मॉडल औपचारिक रूप से रुचि के डोमेन के लिए डेटा वस्तु और डेटा वस्तु के बीच संबंधों को परिभाषित करते हैं। डेटा मॉडल के कुछ विशिष्ट अनुप्रयोगों में डेटाबेस के विकास का समर्थन करना और किसी विशेष क्षेत्र के लिए डेटा के आदान-प्रदान को सक्षम करना सम्मिलित है। डेटा मॉडल को डेटा मॉडलिंग भाषा में निर्दिष्ट किया जाता है।[2] एक्सप्रेस आईएसओ 10303-11, एक्सप्रेस भाषा संदर्भ नियमावली में परिभाषित डेटा मॉडलिंग भाषा है।[3]
एक एक्सप्रेस डेटा मॉडल को टेक्स्ट और आरेखीय रूप से दो प्रकार से परिभाषित किया जा सकता है। औपचारिक सत्यापन के लिए और आईएसओ 10303-22 जैसे उपकरणों के लिए इनपुट के रूप में एएससीआईआई फ़ाइल के अन्दर टेक्स्टुअल प्रतिनिधित्व सबसे महत्वपूर्ण है। दूसरी ओर ग्राफिकल प्रतिनिधित्व अधिकांश मानव उपयोग के लिए अधिक उपयुक्त होता है जैसे स्पष्टीकरण और ट्यूटोरियल। ग्राफिकल प्रतिनिधित्व, जिसे एक्सप्रेस-जी कहा जाता है, उन सभी विवरणों का प्रतिनिधित्व करने में सक्षम नहीं है जिन्हें पाठ्य रूप में तैयार किया जा सकता है।
एक्सप्रेस प्रोग्रामिंग लैंग्वेज जैसे पास्कल (प्रोग्रामिंग भाषा) के समान है। स्कीमा के अन्दर विभिन्न समुच्चयप्रकारों को संरचनात्मक बाधाओं और एल्गोरिथम नियमों के साथ परिभाषित किया जा सकता है। एक्सप्रेस की मुख्य विशेषता डेटाप्रकारों की आबादी को औपचारिक रूप से मान्य करने की संभावना है - यह सभी संरचनात्मक और एल्गोरिथम नियमों की जांच करना है।
एक्सप्रेस-जी
एक्सप्रेस-जी सूचना मॉडल के लिए मानक चित्रमय संकेतन है।[4] यह इकाई और प्रकार की परिभाषाएँ, संबंधों और प्रमुखता को प्रदर्शित करने के लिए एक्सप्रेस भाषा का साथी है।[5] यह चित्रमय संकेतन एक्सप्रेस भाषा के उपसमुच्चय का समर्थन करता है। एक्सप्रेस पर एक्सप्रेस-जी का उपयोग करने के लाभों में से यह है कि डेटा मॉडल की संरचना को अधिक समझने योग्य विधि से प्रस्तुत किया जा सकता है। एक्सप्रेस-जी का हानि यह है कि जटिल बाधाओं को औपचारिक रूप से निर्दिष्ट नहीं किया जा सकता है। चित्र 1 उदाहरण है। चित्र में प्रस्तुत डेटा मॉडल का उपयोग ध्वनि संक्षिप्त डिस्क (सीडी) संग्रह के लिए डेटाबेस की आवश्यकताओं को निर्दिष्ट करने के लिए किया जा सकता है।[2]
सरल उदाहरण
साधारण एक्सप्रेस डेटा मॉडल चित्र 2 जैसा दिखता है, और कोड इस प्रकार है:
SCHEMA Family;
ENTITY Person
ABSTRACT SUPERTYPE OF (ONEOF (Male, Female));
name: STRING;
mother: OPTIONAL Female;
father: OPTIONAL Male;
END_ENTITY;
ENTITY Female
SUBTYPE OF (Person);
END_ENTITY;
ENTITY Male
SUBTYPE of (Person);
END_ENTITY;
END_SCHEMA;
डेटा मॉडल एक्सप्रेस स्कीमा परिवार के अन्दर संलग्न है। इसमें दो उपप्रकार पुरुष और महिला के साथ सुपरटाइप इकाई व्यक्ति सम्मिलित है। चूँकि व्यक्ति को अमूर्त घोषित किया गया है, केवल (वनऑफ़) उपप्रकार पुरुष या महिला उपस्थित हो सकते हैं। किसी व्यक्ति की प्रत्येक घटना में अनिवार्य नाम विशेषता होती है और वैकल्पिक रूप से माता और पिता का गुण होता है। कुछ इकाई प्रकार की विशेषताओं के लिए पढ़ने की निश्चित शैली होती है:
- महिला व्यक्ति के लिए माँ की भूमिका निभा सकती है
- पुरुष व्यक्ति के लिए पिता की भूमिका निभा सकता है
एक्सप्रेस निर्माण ब्लॉक्स
डेटा प्रकार
एक्सप्रेस एक्सप्रेस-जी टिप्पणी के विशिष्ट डेटा प्रकार प्रतीकों के साथ, समुच्चयप्रकारों की श्रृंखला प्रदान करता है:[2]
- इकाई डेटा प्रकार: यह एक्सप्रेस में सबसे महत्वपूर्ण डेटा प्रकार है। इसे और अधिक विस्तार से नीचे समाविष्ट किया गया है। उप-सुपरटाइप पेड़ और/या विशेषताओं द्वारा इकाई डेटाटाइप दो विधियों से संबंधित हो सकते हैं।
- गणना डेटा प्रकार: गणना मान आरजीबी-गणना के लिए लाल, हरा और नीला जैसे सरल तार होते हैं। इस स्थिति में कि गणना प्रकार को विस्तरणीय घोषित किया जाता है, इसे अन्य स्कीमाओं में बढ़ाया जा सकता है।
- परिभाषित डेटा प्रकार: यह आगे अन्य समुच्चयप्रकारों को माहिर करता है - उदाहरण के लिए, डेटाटाइप सकारात्मक को परिभाषित करता है जो मान> 0 के साथ पूर्णांक प्रकार का होता है।
- डेटा प्रकार का चयन करें: चयन विभिन्न विकल्पों के बीच विकल्प या विकल्प को परिभाषित करता है। विभिन्न वास्तविकता प्रकारों के बीच सबसे अधिक उपयोग किए जाने वाले चयन हैं। अधिक दुर्लभ ऐसे चयन हैं जिनमें परिभाषित प्रकार सम्मिलित हैं। इस स्थिति में कि गणना प्रकार को विस्तरणीय घोषित किया जाता है, इसे अन्य स्कीमाओं में बढ़ाया जा सकता है।
- सरल डेटा प्रकार
- स्ट्रिंग: यह सबसे अधिक उपयोग किया जाने वाला सरल प्रकार है। एक्सप्रेस तार किसी भी लम्बाई के हो सकते हैं और इसमें कोई भी वर्ण (आईएसओ 10646 / यूनिकोड) हो सकता है।
- बाइनरी: यह डेटा प्रकार केवल बहुत ही कम उपयोग किया जाता है। इसमें कई बिट्स (बाइट्स नहीं) सम्मिलित हैं। कुछ कार्यान्वयनों के लिए आकार 32 बिट तक सीमित है।
- लॉजिकल: बूलियन डेटाटाइप के समान लॉजिकल में सत्य और असत्य के संभावित मान और इसके अतिरिक्त अज्ञात भी होते हैं।
- बूलियन: बूलियन मान सत्य और असत्य के साथ।
- संख्या: संख्या डेटा प्रकार पूर्णांक और वास्तविक दोनों का सुपरटाइप है। अधिकांश कार्यान्वयन वास्तविक प्रकार का प्रतिनिधित्व करने के लिए दोहरे प्रकार का उपयोग करता है, चाहे वास्तविक मान पूर्णांक हो।
- पूर्णांक: एक्सप्रेस पूर्णांक सिद्धांत रूप में किसी भी लम्बाई के हो सकते हैं, किन्तु अधिकांश कार्यान्वयनों ने उन्हें हस्ताक्षरित 32 बिट मान तक सीमित कर दिया।
- वास्तविक: आदर्श रूप से एक्सप्रेस वास्तविक मूल्य शुद्धता और आकार में असीमित है। किन्तु व्यवहार में वास्तविक मूल्य को टाइप डबल के फ्लोटिंग पॉइंट मान द्वारा दर्शाया जाता है।
- एकत्रीकरण डेटा प्रकार: एकत्रीकरण_ प्रकार के संभावित प्रकार समुच्चय, बैग, सूची और शृंखला समूह हैं। चूँकि समुच्चय और बैग अनियंत्रित हैं, सूची और शृंखला समूह का आदेश दिया गया है। बैग में से अधिक बार विशेष मान हो सकता है, एसईटी के लिए इसकी अनुमति नहीं है। शृंखला समूह एकमात्र समग्र है जिसमें अनसमुच्चय सदस्य हो सकते हैं। यह समुच्चय, सूची, बैग के लिए संभव नहीं है। समुच्चय के सदस्य किसी अन्य डेटा प्रकार के हो सकते हैं।
समुच्चयप्रकारों के लिए कुछ सामान्य बातों का उल्लेख किया जाना है।
- निर्मित समुच्चयप्रकारों को एक्सप्रेस स्कीमा के अन्दर परिभाषित किया जा सकता है। वे मुख्य रूप से संस्थाओं को परिभाषित करने और इकाई विशेषताओं और कुल सदस्यों के प्रकार को निर्दिष्ट करने के लिए उपयोग किए जाते हैं।
- डेटा प्रकार का उपयोग पुनरावर्ती विधि से अधिक से अधिक जटिल डेटा प्रकार बनाने के लिए किया जा सकता है। उदा. कुछ संस्थाओं या अन्य समुच्चयप्रकारों के चयन की सरणी की सूची को परिभाषित करना संभव है। यदि इस प्रकार के डेटाटाइप को परिभाषित करना समझ में आता है तो यह अलग सवाल है।
- एक्सप्रेस कुछ नियमों को परिभाषित करता है कि कैसे डेटाटाइप को और अधिक विशिष्ट बनाया जा सकता है। यह संस्थाओं की फिर से घोषित विशेषताओं के लिए महत्वपूर्ण है।
- सामान्य डेटा प्रकारों का उपयोग प्रक्रियाओं, कार्यों और अमूर्त संस्थाओं के लिए किया जा सकता है।
इकाई-विशेषता
Entity विशेषताएँ संस्थाओं में गुण जोड़ने और इकाई को विशिष्ट भूमिका में दूसरे के साथ जोड़ने की अनुमति देती हैं। विशेषता का नाम भूमिका निर्दिष्ट करता है। अधिकांश डेटा प्रकार सीधे विशेषता के प्रकार के रूप में कार्य कर सकते हैं। इसमें एकत्रीकरण भी सम्मिलित है।
गुण तीन प्रकार के होते हैं, स्पष्ट, व्युत्पन्न और प्रतिलोम गुण। और इन सभी को उपप्रकार में पुनः घोषित किया जा सकता है। इसके अतिरिक्त उपप्रकार में व्युत्पन्न के रूप में स्पष्ट विशेषता को फिर से घोषित किया जा सकता है। इस प्रकार के गुणों में कोई अन्य परिवर्तन संभव नहीं है।
- स्पष्ट विशेषताएँ वे हैं जिनका सीधा मान स्टेप-फ़ाइल में दिखाई देता है।
- व्युत्पन्न विशेषताएँ अभिव्यक्ति से अपना मान प्राप्त करती हैं। अधिकांशतः स्थितियों में अभिव्यक्ति इस उदाहरण के अन्य गुणों को संदर्भित करती है। अभिव्यक्ति एक्सप्रेस कार्यों का भी उपयोग कर सकती है।
- व्युत्क्रम विशेषताएँ किसी इकाई में जानकारी नहीं जोड़ती हैं, किन्तु केवल दूसरे छोर से इकाई के लिए स्पष्ट विशेषता का नाम और विवश करती हैं।
एक्सप्रेस-जी संकेतन के विशिष्ट विशेषता प्रतीक:[2]
सुपरटाइप्स और सबटाइप्स
इकाई को या कई अन्य संस्थाओं के उपप्रकार के रूप में परिभाषित किया जा सकता है (एकाधिक वंशानुक्रम की अनुमति है!) सुपरटाइप में कई उपप्रकार हो सकते हैं। बहुत जटिल उप-सुपरटाइप ग्राफ बनाने के लिए स्टेप में यह बहुत ही सामान्य अभ्यास है। कुछ ग्राफ़ 100 और अधिक संस्थाओं को दूसरे से संबंधित करते हैं।
इकाई उदाहरण या तो इकाई (यदि सार नहीं है) या ऐसे उप-सुपरटाइप ग्राफ में संस्थाओं के जटिल संयोजन के लिए बनाया जा सकता है। बड़े रेखांकन के लिए संभावित संयोजनों की संख्या खगोलीय श्रेणियों में बढ़ने की संभावना है। संभावित संयोजनों को प्रतिबंधित करने के लिए विशेष सुपरटेप बाधाओं को प्रस्तुत किया गया जैसे वनओफ और टोटालोवर। इसके अतिरिक्त, इकाई को प्रायुक्त करने के लिए अमूर्त घोषित किया जा सकता है कि केवल इस इकाई का कोई उदाहरण नहीं बनाया जा सकता है, किन्तु केवल तभी जब इसमें गैर-अमूर्त उप प्रकार हो।
एल्गोरिदमिक बाधाएं
संस्थाओं और परिभाषित डेटा प्रकारों को जहां नियमों के साथ और विवश किया जा सकता है। जहां नियम भी वैश्विक नियमों का हिस्सा हैं। जहां नियम एक अभिव्यक्ति है, जिसका मूल्यांकन सत्य होना चाहिए, अन्यथा एक एक्सप्रेस स्कीमा की जनसंख्या मान्य नहीं है। व्युत्पन्न विशेषताओं की प्रकार ये अभिव्यक्ति एक्सप्रेस कार्यों को प्रायुक्त कर सकती हैं, जो आगे एक्सप्रेस प्रक्रियाओं को प्रायुक्त कर सकती हैं। कार्य और प्रक्रियाएं स्थानीय चर, पैरामीटर और स्थिरांक के साथ जटिल बयान तैयार करने की अनुमति देती हैं - एक प्रोग्रामिंग भाषा के समान ही।
एक्सप्रेस भाषा स्थानीय और वैश्विक नियमों का वर्णन कर सकती है।
उदाहरण के लिए:
ENTITY area_unit
SUBTYPE OF (named_unit);
WHERE
WR1: (SELF\named_unit.dimensions.length_exponent = 2) AND
(SELF\named_unit.dimensions.mass_exponent = 0) AND
(SELF\named_unit.dimensions.time_exponent = 0) AND
(SELF\named_unit.dimensions.electric_current_exponent = 0) AND
(SELF\named_unit.dimensions.
thermodynamic_temperature_exponent = 0) AND
(SELF\named_unit.dimensions.amount_of_substance_exponent = 0) AND
(SELF\named_unit.dimensions.luminous_intensity_exponent = 0);
END_ENTITY; -- area_unit
यह उदाहरण बताता है कि क्षेत्र इकाई की लंबाई का वर्ग मान होना चाहिए
इसके लिए विशेषता आयाम लम्बाई_प्रतिनिधि 2 के बराबर होना चाहिए और मूलभूत एसआई इकाइयों के अन्य सभी प्रतिनिधि 0 होने चाहिए।
और उदाहरण:
TYPE day_in_week_number = INTEGER;
WHERE
WR1: (1 <= SELF) AND (SELF <= 7);
END_TYPE; -- day_in_week_number
अर्थात, इसका अर्थ है कि सप्ताह का मान 7 से अधिक नहीं हो सकता।
और इसलिए, आप अपनी संस्थाओं को कुछ नियमों का वर्णन कर सकते हैं। दिए गए उदाहरणों पर अधिक विवरण आईएसओ 10303-41 में पाया जा सकता है
यह भी देखें
आईएसओ संबंधित विषय
- आईएसओ 10303: कंप्यूटर-व्याख्यात्मक प्रतिनिधित्व और औद्योगिक उत्पाद डेटा के आदान-प्रदान के लिए आईएसओ मानक।
- आईएसओ 10303-21: एएससीआईआई संरचना के साथ स्टेप का डेटा विनिमय रूप
- आईएसओ 10303-22: मानक डेटा एक्सेस इंटरफ़ेस, स्टेप के कार्यान्वयन के विधियों का हिस्सा
- आईएसओ 10303-28: एसटीईपी-एक्सएमएल एक्सप्रेस स्कीमा का प्रतिनिधित्व करने के लिए विस्तरणीय मार्कअप लैंग्वेज (एक्सएमएल) के उपयोग को निर्दिष्ट करता है
- आईएसओ 13584-24: पीएलआईबी का तार्किक मॉडल एक्सप्रेस में निर्दिष्ट है
- आईएसओ 13399: कटिंग टूल डेटा प्रतिनिधित्व और विनिमय के लिए आईएसओ मानक
- इंडस्ट्री फाउंडेशन क्लासेस|आईएसओ/पीएएस 16739: इंडस्ट्री फाउंडेशन क्लासेस एक्सप्रेस में निर्दिष्ट है
- स्टेप (आईएसओ 10303) भागों की सूची
अन्य संबंधित विषय
- सीएडी डेटा एक्सचेंज
- इमारत: इलेक्ट्रॉनिक डिजाइन इंटरचेंज फॉर्मेट
- आरेख
- सामान्य प्रयोजन मॉडलिंग
- मॉडलिंग भाषा
- सिंटैक्स टिप्पणी के साथ
- डीओटी (ग्राफ विवरण भाषा)
संदर्भ
This article incorporates public domain material from the National Institute of Standards and Technology.
- ↑ ISO 10303-11:2004 Industrial automation systems and integration -- Product data representation and exchange -- Part 11: Description methods: The EXPRESS language reference manual
- ↑ 2.0 2.1 2.2 2.3 Michael R. McCaleb (1999). "A Conceptual Data Model of Datum Systems". National Institute of Standards and Technology. August 1999.
- ↑ ISO International Standard 10303-11:1994, Industrial automation systems and integration — Product data representation andexchange — Part 11: Description methods: The EXPRESS language reference manual, International Organization for Standardization, Geneva, Switzerland (1994).
- ↑ 4 EXPRESS-G Language Overview Archived 2008-11-09 at the Wayback Machine. Accessed 9 Nov 2008.
- ↑ For information on the EXPRESS-G notation, consult Annex B of the EXPRESS Language Reference Manual (ISO 10303-11)
अग्रिम पठन
- आईएसओ 10303, the main page for स्टेप, the Standard for the Exchange of Product model data
- Douglas A. Schenck and Peter R. Wilson, Information Modeling the EXPRESS Way, Oxford University Press, 1993, ISBN 978-0-19-508714-7