एसजीएमएल एंटिटी

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

इकाई प्रकार
संस्थाओं को सामान्य या पैरामीटर के रूप में वर्गीकृत किया गया है:
 * एक सामान्य इकाई को केवल दस्तावेज़ सामग्री के भीतर ही संदर्भित किया जा सकता है।
 * एक पैरामीटर इकाई को केवल दस्तावेज़ प्रकार की परिभाषा (DTD) के भीतर संदर्भित किया जा सकता है।

संस्थाओं को आगे पार्स या अनपार्स के रूप में वर्गीकृत किया गया है:
 * एक पार्स की गई इकाई में टेक्स्ट होता है, जिसे दस्तावेज़ में शामिल किया जाएगा और यदि इकाई को संदर्भित किया जाता है तो इसे पार्स किया जाएगा। एक पैरामीटर इकाई केवल एक पार्स की गई इकाई हो सकती है।
 * एक अविश्लेषित इकाई में किसी भी प्रकार का डेटा होता है, और इसके संदर्भ में एप्लिकेशन को केवल इकाई की उपस्थिति के बारे में सूचित किया जाएगा; इकाई की सामग्री को पार्स नहीं किया जाएगा, भले ही वह पाठ हो। एक अविश्लेषित इकाई केवल बाहरी हो सकती है।

आंतरिक और बाहरी संस्थाएं
एक आंतरिक इकाई का एक मान होता है जो या तो एक शाब्दिक (कंप्यूटर विज्ञान) स्ट्रिंग है, या एक पार्स की गई स्ट्रिंग जिसमें मार्कअप और एक ही दस्तावेज़ में परिभाषित इकाइयां शामिल हैं (जैसे दस्तावेज़ प्रकार घोषणा या उप-दस्तावेज़)। इसके विपरीत, एक बाहरी संस्था में एक घोषणा (कंप्यूटर विज्ञान) होती है जो एक बाहरी दस्तावेज़ को आमंत्रित करती है, जिससे बाहरी दस्तावेज़ संदर्भ को हल करने के लिए एक इकाई प्रबंधक के हस्तक्षेप की आवश्यकता होती है।

सिस्टम संस्थाएं
एक इकाई घोषणा का शाब्दिक मूल्य हो सकता है, या वैकल्पिक का कुछ संयोजन हो सकता है  पैरामीटर (कंप्यूटर विज्ञान), जो एसजीएमएल पारसर्स को संसाधन पहचानकर्ता के रूप में एक इकाई के स्ट्रिंग संदर्भ को संसाधित करने की अनुमति देता है, और एक वैकल्पिक   पहचानकर्ता, जो किसी विशेष प्रतिनिधित्व से स्वतंत्र इकाई की पहचान करता है। XML में, SGML का एक सबसेट, एक एंटिटी डिक्लेरेशन में नहीं हो सकता है a   बिना पहचानकर्ता   पहचानकर्ता।

एसजीएमएल दस्तावेज़ इकाई
जब एक बाहरी इकाई एक पूर्ण एसजीएमएल दस्तावेज़ का संदर्भ देती है, तो इसे कॉलिंग दस्तावेज़ में एसजीएमएल दस्तावेज़ इकाई के रूप में जाना जाता है। एक SGML दस्तावेज़ SGML प्रस्तावना (यानी, DTD और उप-दस्तावेज़) में परिभाषित SGML मार्कअप वाला एक टेक्स्ट दस्तावेज़ है। एक पूर्ण SGML दस्तावेज़ में न केवल दस्तावेज़ का उदाहरण शामिल होता है, बल्कि प्रस्तावना और, वैकल्पिक रूप से, SGML घोषणा (जो दस्तावेज़ के मार्कअप सिंटैक्स को परिभाषित करती है और अक्षरों को सांकेतिक अक्षरों में बदलना की घोषणा करती है)।

सिंटेक्स
एक इकाई को दस्तावेज़ के दस्तावेज़ प्रकार की परिभाषा (DTD) में एक इकाई घोषणा के माध्यम से परिभाषित किया गया है। उदाहरण के लिए: यह डीटीडी मार्कअप निम्नलिखित की घोषणा करता है:
 * नाम की एक आंतरिक सामान्य इकाई  मौजूद है और इसमें स्ट्रिंग शामिल है.
 * एक बाहरी सामान्य इकाई जिसका नाम है  मौजूद है और इसमें यूनिफॉर्म रिसोर्स पहचानकर्ता द्वारा पहचाने गए संसाधन में पाया गया टेक्स्ट शामिल है.
 * एक आंतरिक पैरामीटर इकाई जिसका नाम है  मौजूद है और इसमें स्ट्रिंग शामिल है.
 * नाम की एक आंतरिक सामान्य इकाई  मौजूद है और इसमें स्ट्रिंग शामिल है.

संस्थाओं के नामों को एसजीएमएल नामों के नियमों का पालन करना चाहिए, और ऐसी सीमाएँ हैं जहाँ संस्थाओं को संदर्भित किया जा सकता है।

पैरामीटर संस्थाओं को इकाई नाम के बीच रखकर संदर्भित किया जाता है  और. पार्स की गई सामान्य संस्थाओं को इकाई नाम के बीच रखकर संदर्भित किया जाता है और. प्रकार ENTITY के रूप में घोषित एट्रिब्यूट के मान में निकाय नाम रखकर अनपार्स किए गए निकायों का संदर्भ दिया जाता है.

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

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

उदाहरण के लिए, HTML#HTML4 वेरिएशंस में 252 बिल्ट-इन चरित्र इकाई संदर्भ जिन्हें स्पष्ट रूप से घोषित करने की आवश्यकता नहीं है, जबकि XML में पांच हैं। XHTML में XML के समान पाँच हैं, लेकिन यदि इसके DTD स्पष्ट रूप से उपयोग किए जाते हैं, तो इसमें 253 ( HTML 4 से परे अतिरिक्त इकाई होने के नाते)।

यह भी देखें

 * घोषणात्मक प्रोग्रामिंग
 * वस्तु (कंप्यूटर विज्ञान)
 * एक्सएमएल और एचटीएमएल चरित्र इकाई संदर्भों की सूची
 * एक्सएमएल बाहरी इकाई हमला

संदर्भ

 * Goldfarb, Charles F. (Ed.). ISO 8879 Review: WG8 N1855. WG8 and Liaisons, 1996.
 * Goldfarb, Charles F., and Yuri Rubinsky (Ed.). The SGML Handbook. Oxford University Press, 1991.

बाहरी संबंध

 * Entity Management in SGML