मानक सामान्यीकृत मार्कअप भाषा

मानक सामान्यीकृत मार्कअप भाषा (एसजीएमएल; मानकीकरण के लिए अंतर्राष्ट्रीय संगठन 8879:1986) दस्तावेजों के लिए सामान्यीकृत मार्कअप भाषाओं को परिभाषित करने के लिए मानक है। आईएसओ 8879 अनुलग्नक ए.1 बताता है कि सामान्यीकृत मार्कअप दो अभिधारणाओं पर आधारित है:

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

डॉकबुक एसजीएमएल और लिनक्स डॉक ऐसे उदाहरण हैं जो एसजीएमएल उपकरण का उपयोग करते हैं।

मानक संस्करण
एसजीएमएल मानकीकरण मानक के लिए अंतर्राष्ट्रीय संगठन है: आईएसओ 8879:1986 सूचना प्रसंस्करण - पाठ और कार्यालय प्रणाली - मानक सामान्यीकृत मार्कअप लैंग्वेज (एसजीएमएल), जिसके तीन संस्करण हैं:


 * मूल एसजीएमएल, जिसे अक्टूबर 1986 में स्वीकार किया गया था, उसके बाद मामूली तकनीकी शुद्धिपत्र दिया गया।
 * एसजीएमएल (ईएनआर), 1996 में, मनमाना-भाषा और -स्क्रिप्ट मार्कअप की अनुमति देने वाले विस्तारित नामकरण नियमों को जोड़ने के लिए तकनीकी शुद्धिपत्र के परिणामस्वरूप हुआ।
 * एसजीएमएल (ईएनआर+डब्लूडब्लूडब्लू या वेबएसजीएमएल), 1998 में, तकनीकी शुद्धिपत्र के परिणामस्वरूप एक्सएमएल और डब्लूडब्लूडब्लू आवश्यकताओं का उत्तम समर्थन करने के लिए.

एसजीएमएल आईएसओ/आईईसी जेटीसी 1/एससी 34 द्वारा विकसित इलेक्ट्रॉनिक दस्तावेज़ के लिए आईएसओ मानकों को सक्षम करने की तिकड़ी का भाग है (आईएसओ/आईईसी संयुक्त तकनीकी समिति 1, उपसमिति 34 -दस्तावेज़ विवरण और प्रसंस्करण भाषाएँ):


 * एसजीएमएल (आईएसओ 8879) - सामान्यीकृत मार्कअप भाषा
 * एसजीएमएल को 1998 में एक्सएमएल, एसजीएमएल की सफल प्रोफ़ाइल_(इंजीनियरिंग) में फिर से काम किया गया था। पूर्ण एसजीएमएल संभवतः ही कभी नई परियोजनाओं में पाया जाता है या उपयोग किया जाता है।
 * डीएसएसएसएल (आईएसओ/आईईसी 10179) - योजना (प्रोग्रामिंग भाषा) पर आधारित दस्तावेज़ प्रोसेसिंग और स्टाइलिंग भाषा।
 * डीएसएसएसएल में फिर से काम किया गया डब्ल्यू3सी एक्सएसएलटी और एक्सएसएल-एफओ जो एक्सएमएल सिंटैक्स का उपयोग करते हैं। आजकल, लिनक्स प्रलेखन के अतिरिक्त डीएसएसएसएल का संभवतः ही कभी नई परियोजनाओं में उपयोग किया जाता है।
 * हाइटाइम - सामान्यीकृत हाइपरटेक्स्ट और शेड्यूलिंग।
 * हाईटाइम को डब्ल्यू3सी एक्सलिंक में आंशिक रूप से फिर से काम में लाया गया। हाईटाइम का उपयोग संभवतः कभी नई परियोजनाओं में किया जाता है।

एसजीएमएल विशेष रूप से विभिन्न तकनीकी रिपोर्टों द्वारा समर्थित है


 * आईएसओ/आईईसी टीआर 9573 - सूचना प्रसंस्करण - एसजीएमएल समर्थन सुविधाएं - एसजीएमएल का उपयोग करने की तकनीकें
 * भाग 13: गणित और विज्ञान के लिए सार्वजनिक इकाई सेट
 * 2007 में, डब्ल्यू3सी मैथएमएल कार्य समूह इन इकाई सेटों के रखरखाव का कार्यभार संभालने के लिए सहमत हुआ।

इतिहास
एसजीएमएल अंतर्राष्ट्रीय व्यवसाय तंत्र के IBM सामान्यीकृत मार्कअप लैंग्वेज (GML) से निकला है, जिसे चार्ल्स गोल्डफर्ब, एडवर्ड मोशेर और रेमंड लॉरी ने 1960 के दशक में विकसित किया था। गोल्डफार्ब, अंतर्राष्ट्रीय मानक के संपादक, ने अपने उपनाम आद्याक्षर का उपयोग करते हुए GML शब्द गढ़ा। Goldfarb ने एसजीएमएल हैंडबुक में एसजीएमएल सिंटैक्स पर निश्चित कार्य भी लिखा। एसजीएमएल का सिंटैक्स COCOA (डिजिटल मानविकी) प्रारूप के करीब है। दस्तावेज़ मार्कअप भाषा के रूप में, एसजीएमएल को मूल रूप से सरकार, कानून और उद्योग में मशीन-पठनीय डेटा|मशीन-पठनीय बड़े-परियोजना दस्तावेज़ों के साझाकरण को सक्षम करने के लिए डिज़ाइन किया गया था। ऐसे कई दस्तावेज़ों को कई दशकों तक पढ़ा जाना चाहिए- सूचना प्रौद्योगिकी क्षेत्र में लंबा समय। एसजीएमएल को व्यापक रूप से सेना, और एयरोस्पेस, तकनीकी संदर्भ और औद्योगिक प्रकाशन उद्योगों द्वारा लागू किया गया था। एक्सएमएल प्रोफाइल के आगमन ने एसजीएमएल को छोटे पैमाने पर, सामान्य प्रयोजन के उपयोग के लिए व्यापक अनुप्रयोग के लिए उपयुक्त बना दिया है।

दस्तावेज़ वैधता
एसजीएमएल (ईएनआर+WWW) दो प्रकार की वैधता को परिभाषित करता है। आईएसओ 8879 की संशोधित शर्तों और परिभाषाओं के अनुसार (सार्वजनिक मसौदे से ):

 एक अनुरूप एसजीएमएल दस्तावेज़ या तो प्रकार-वैध एसजीएमएल दस्तावेज़, टैग-वैध एसजीएमएल दस्तावेज़, या दोनों होना चाहिए। नोट: उपयोगकर्ता किसी दस्तावेज़ पर अतिरिक्त बाधाओं को लागू करना चाह सकता है, जैसे कि दस्तावेज़ का उदाहरण एकीकृत रूप से संग्रहीत है या इकाई संदर्भों से मुक्त है। 

एक प्रकार-वैध एसजीएमएल दस्तावेज़ को मानक के रूप में परिभाषित किया गया है

 एक एसजीएमएल दस्तावेज़ जिसमें, प्रत्येक दस्तावेज़ उदाहरण के लिए, संबद्ध दस्तावेज़ प्रकार घोषणा (डीटीडी) है, जिसके डीटीडी उदाहरण के अनुरूप है। 

एक टैग-वैध एसजीएमएल दस्तावेज़ को मानक के रूप में परिभाषित किया गया है

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

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

वैधता पर एसजीएमएल जोर सामान्यीकृत मार्कअप की आवश्यकता का समर्थन करता है कि मार्कअप कठोर होना चाहिए। (आईएसओ 8879 ए.1)

सिंटेक्स
एक एसजीएमएल दस्तावेज़ के तीन भाग हो सकते हैं:
 * 1) एसजीएमएल घोषणा,
 * 2) प्रस्तावना, जिसमें विभिन्न मार्कअप घोषणाओं के साथ DOCTYPE घोषणा शामिल है जो साथ दस्तावेज़ प्रकार परिभाषा (DTD) बनाती है, और
 * 3) स्वयं उदाहरण, जिसमें शीर्षतम तत्व और उसकी सामग्री शामिल है।

एक एसजीएमएल दस्तावेज़ कई एसजीएमएल इकाई (पाठ के असतत टुकड़े) से बना हो सकता है। एसजीएमएल में, दस्तावेज़ में उपयोग की जाने वाली संस्थाओं और तत्व प्रकारों को DTD के साथ निर्दिष्ट किया जा सकता है, दस्तावेज़ के ठोस सिंटैक्स को बनाने के लिए एसजीएमएल घोषणा में विभिन्न वर्ण सेट, सुविधाएँ, सीमांकक सेट और कीवर्ड निर्दिष्ट किए गए हैं।

हालांकि पूर्ण एसजीएमएल निहित मार्कअप और कुछ अन्य प्रकार के टैग की अनुमति देता है, एक्सएमएल विनिर्देश (s4.3.1) कहता है:

"Each XML document has both a logical and a physical structure. Physically, the document is composed of units called entities. An entity may refer to other entities to cause their inclusion in the document. A document begins in a "root" or document entity. Logically, the document is composed of declarations, elements, comments, character references, and processing instructions, all of which are indicated in the document by explicit markup."

बुनियादी, आधुनिक एसजीएमएल सिंटैक्स पर परिचयात्मक जानकारी के लिए, एक्सएमएल देखें। निम्नलिखित सामग्री एक्सएमएल में नहीं सुविधाओं पर केंद्रित है और एसजीएमएल सिंटैक्स का व्यापक सारांश नहीं है।

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

कई एसजीएमएल विशेषताएँ न्यूनतम मार्कअप से संबंधित हैं। अन्य विशेषताएँ समवर्ती मार्कअप | समवर्ती (समानांतर) मार्कअप (CONCUR), लिंकिंग प्रोसेसिंग एट्रिब्यूट्स (LINK) और एसजीएमएल दस्तावेज़ों (SUBDOC) के भीतर एसजीएमएल दस्तावेज़ों को एम्बेड करने से संबंधित हैं।

अनुकूलन सुविधाओं की धारणा वेब उपयोग के लिए उपयुक्त नहीं थी, इसलिए एक्सएमएल का लक्ष्य वैकल्पिक सुविधाओं को कम करना था। हालाँकि, एक्सएमएल के सुव्यवस्थित नियम विकी जैसी भाषाओं का समर्थन नहीं कर सकते हैं, जिससे उन्हें गैर-पाठ सूचना प्रणाली के साथ एकीकृत करना मुश्किल हो जाता है।

ठोस और सार सिंटैक्स
सामान्य (डिफ़ॉल्ट) एसजीएमएल कंक्रीट सिंटैक्स इस उदाहरण के समान है, जो कि डिफ़ॉल्ट HTML कंक्रीट सिंटैक्स है:

एसजीएमएल सार सिंटैक्स प्रदान करता है जिसे कई अलग-अलग प्रकार के कंक्रीट सिंटैक्स में लागू किया जा सकता है। हालांकि मार्कअप मानदंड ब्रैकेट का उपयोग एसजीएमएल दस्तावेज़ (मानक-परिभाषित संदर्भ कंक्रीट सिंटैक्स के अनुसार) में स्टार्ट- और एंड-टैग सीमांकक के रूप में कर रहा है, अन्य वर्णों का उपयोग करना संभव है - बशर्ते उपयुक्त ठोस सिंटैक्स दस्तावेज़ के एसजीएमएल घोषणा में परिभाषित किया गया हो. उदाहरण के लिए, एसजीएमएल दुभाषिया को GML को पार्स करने के लिए प्रोग्राम किया जा सकता है, जिसमें टैग्स को बाएँ कोलन (विराम चिह्न) और दाएँ पूर्ण विराम के साथ सीमांकित किया जाता है, और  उपसर्ग अंतिम टैग को दर्शाता है:. संदर्भ सिंटैक्स के अनुसार, अक्षर केस (अपर- या लोअर-केस) टैग नामों में प्रतिष्ठित नहीं है, इसलिए तीन टैग,  , और   समकक्ष हैं। (एक ठोस सिंटैक्स इस नियम को NAMECASE NAMING घोषणाओं के माध्यम से बदल सकता है।)

न्यूनतम मार्कअप
एसजीएमएल में दस्तावेज़ को चिह्नित करने के लिए आवश्यक वर्णों की संख्या को कम करने की विशेषताएं हैं, जिन्हें एसजीएमएल घोषणा में सक्षम होना चाहिए। एसजीएमएल प्रोसेसर को हर उपलब्ध सुविधा का समर्थन करने की आवश्यकता नहीं है, इस प्रकार एप्लिकेशन को कई प्रकार के अनजाने मार्कअप चूक को सहन करने की अनुमति मिलती है; हालाँकि, एसजीएमएल सिस्टम आमतौर पर अमान्य संरचनाओं के प्रति असहिष्णु होते हैं। एक्सएमएल सिंटैक्स चूक के असहिष्णु है, और अच्छी तरह से गठित की जाँच के लिए DTD की आवश्यकता नहीं है।

ओमिटटैग
प्रारंभ टैग और अंत टैग दोनों को दस्तावेज़ उदाहरण से छोड़ा जा सकता है, बशर्ते:
 * 1) एसजीएमएल घोषणा में OMITTAG सुविधा सक्षम है,
 * 2) डीटीडी इंगित करता है कि टैग को छोड़ने की अनुमति है,
 * 3) (प्रारंभ टैग के लिए) तत्व की कोई संबद्ध आवश्यकता नहीं है  विशेषताएँ, और
 * 4) टैग को संदर्भ द्वारा स्पष्ट रूप से अनुमान लगाया जा सकता है।

उदाहरण के लिए, यदि OMITTAG YES को एसजीएमएल घोषणा (OMITTAG सुविधा को सक्षम करने) में निर्दिष्ट किया गया है, और DTD में निम्नलिखित घोषणाएँ शामिल हैं: फिर यह अंश:

जो दो छोड़ देता है टैग और दो  टैग, मान्य मार्कअप का प्रतिनिधित्व करेंगे।

टैग छोड़ना वैकल्पिक है – उसी अंश को इस तरह टैग किया जा सकता है:

और अभी भी मान्य मार्कअप का प्रतिनिधित्व करेगा।

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

शॉर्टरेफ
लघु मार्कअप के लिए SHORTREF सुविधा के माध्यम से टैग्स को सीमांकक स्ट्रिंग्स से बदला जा सकता है। यह मार्कअप शैली अब विकी मार्कअप से जुड़ी हुई है, उदा। जिसमें लाइन की शुरुआत में दो बराबर-चिन्ह (==), हेडिंग स्टार्ट-टैग होते हैं, और उसके बाद दो बराबर-चिन्ह (==) हेडिंग एंड-टैग होते हैं।

शार्टटैग
एसजीएमएल मार्कअप भाषाएँ जिनके ठोस सिंटैक्स SHORTTAG VALUE सुविधा को सक्षम करती हैं, उन्हें उद्धरण चिह्नों के भीतर संलग्न करने के लिए केवल अल्फ़ान्यूमेरिक वर्णों वाले विशेषता मानों की आवश्यकता नहीं होती है - या तो डबल  (LIT) या सिंगल   (लिटा)—ताकि पिछला मार्कअप उदाहरण लिखा जा सके:

एसजीएमएल मार्कअप भाषाओं की विशेषता प्रकल्पित खाली टैगिंग है, जैसे कि खाली अंत टैग  में   इसका मान निकटतम पिछले पूर्ण प्रारंभ टैग से इनहेरिट करता है, जो इस उदाहरण में है   (दूसरे शब्दों में, यह हाल ही में खोले गए आइटम को बंद कर देता है)। अभिव्यक्ति इस प्रकार के बराबर है.

नेट
एक अन्य विशेषता नेट (नल एंड टैग) निर्माण है:, जो संरचनात्मक रूप से समतुल्य है.

अन्य विशेषताएं
इसके अतिरिक्त, SHORTTAG NETENABL IMMEDNET सुविधा खाली पाठ मान के आसपास के टैग को छोटा करने की अनुमति देती है, लेकिन पूरे टैग को छोटा करने से मना करती है:

रूप में लिखा जा सकता है

<उद्धरण // जिसमें पहला स्लैश (विराम चिह्न) ( / ) नेट-सक्षम स्टार्ट-टैग क्लोज (एनईएसटीसी) के लिए है, और दूसरा स्लैश नेट के लिए है। नोट: एक्सएमएल NESTC को /, और NET को > (कोणीय ब्रैकेट) के साथ परिभाषित करता है - इसलिए एक्सएमएल में संबंधित निर्माण  के रूप में दिखाई देता है।

तीसरी विशेषता 'समान पंक्ति पर पाठ' है, जिससे मार्कअप आइटम को लाइन-एंड के साथ समाप्त किया जा सकता है; शीर्षकों के लिए विशेष रूप से उपयोगी और ऐसे, जिनमें शॉर्टरेफ या डेटाटैग न्यूनीकरण का उपयोग करने की आवश्यकता होती है। उदाहरण के लिए, यदि DTD में निम्नलिखित घोषणाएँ शामिल हैं:

(और &#RE;&#RS; कंक्रीट सिंटैक्स में लघु-संदर्भ सीमांकक है), फिर:

के बराबर है:

औपचारिक लक्षण वर्णन
एसजीएमएल में कई विशेषताएं हैं जो लोकप्रिय औपचारिक ऑटोमेटा सिद्धांत और 1980 और 1990 के दशक की समकालीन पदच्छेद तकनीक के साथ सुविधाजनक विवरण को परिभाषित करती हैं। मानक अनुलग्नक एच में चेतावनी देता है:

"The SGML model group notation was deliberately designed to resemble the regular expression notation of automata theory, because automata theory provides a theoretical foundation for some aspects of the notion of conformance to a content model. No assumption should be made about the general applicability of automata to content models."

बुनियादी एसजीएमएल, एम्स्टर्डम एसजीएमएल पार्सर के लिए एक पार्सर के प्रारंभिक कार्यान्वयन पर एक रिपोर्ट, टिप्पणियाँ "the DTD-grammar in SGML must conform to a notion of unambiguity which closely resembles the LL(1) conditions" और विभिन्न अंतरों को निर्दिष्ट करता है।

ऐसा प्रतीत होता है कि औपचारिक व्याकरण के ज्ञात वर्ग के विरुद्ध पूर्ण एसजीएमएल का कोई निश्चित वर्गीकरण नहीं है। प्रशंसनीय कक्षाओं में पेड़ से सटे व्याकरण और अनुकूली व्याकरण शामिल हो सकते हैं।

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

"The class of documents that conform to a given SGML document grammar forms an LL(1) language. ... The SGML document grammars by themselves are, however, not LL(1) grammars."

एसजीएमएल मानक एसजीएमएल को औपचारिक डेटा संरचनाओं जैसे पार्स ट्री के साथ परिभाषित नहीं करता है; हालाँकि, एसजीएमएल दस्तावेज़ भौतिक भंडारण इकाइयों के निर्देशित ग्राफ (RDAG) से बना होता है जिसे एसजीएमएल इकाई के रूप में जाना जाता है, जिसे तत्वों के रूप में ज्ञात संरचनात्मक इकाइयों के RDAG में पार्स किया जाता है। भौतिक ग्राफ को इकाई वृक्ष के रूप में शिथिल रूप से चित्रित किया गया है, लेकिन संस्थाएँ कई बार दिखाई दे सकती हैं। इसके अलावा, संरचना ग्राफ को भी तत्व वृक्ष के रूप में देखा जाता है, लेकिन आईडी / आईडीआरईएफ मार्कअप मनमाना चापों की अनुमति देता है।

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

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

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

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

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

एक्सएमएल
डब्ल्यू3सी एक्सएमएल (एक्सटेंसिबल मार्कअप लैंग्वेज) एसजीएमएल का प्रोफाइल (सबसेट) है जिसे मुख्य रूप से वर्ल्ड वाइड वेब पर उपयोग के लिए पूर्ण एसजीएमएल पार्सर की तुलना में पार्सर के कार्यान्वयन को आसान बनाने के लिए डिज़ाइन किया गया है। संदर्भ सिंटैक्स में मौजूद कई एसजीएमएल विकल्पों को अक्षम करने के अतिरिक्त (जैसे कि टैग और नेस्टेड उप-दस्तावेजों को छोड़ना) एक्सएमएल, एसजीएमएल सिंटैक्स के प्रकारों पर कई अतिरिक्त प्रतिबंध जोड़ता है। उदाहरण के लिए, एसजीएमएल शॉर्ट टैग फॉर्म को सक्षम करने के बावजूद, एक्सएमएल अनक्लोज्ड स्टार्ट या एंड टैग की अनुमति नहीं देता है। यहवेबएसजीएमएल अनुलग्नक द्वारा किए गए कई परिवर्धन पर भी निर्भर करता है। एक्सएमएल वर्तमान में पूर्ण एसजीएमएल की तुलना में अधिक व्यापक रूप से उपयोग किया जाता है। एक्सएमएल में यूनिकोड पर आधारित हल्का अंतर्राष्ट्रीयकरण है। एक्सएमएल के अनुप्रयोगों में XHTML, XQuery, XSLT, XForms, XPointer, JavaServer पेज, स्केलेबल वेक्टर ग्राफिक्स, RSS (फ़ाइल स्वरूप), एटम (मानक), एक्सएमएल-RPC, RDF/एक्सएमएल और सरल ऑब्जेक्ट एक्सेस प्रोटोकॉल शामिल हैं।

एचटीएमएल
जबकि HTML (हाइपर टेक्स्ट मार्कअप लैंग्वेज) को आंशिक रूप से स्वतंत्र रूप से और एसजीएमएल के समानांतर विकसित किया गया था, इसके निर्माता टिक बैरनर्स - ली ने इसे एसजीएमएल का अनुप्रयोग बनाने का इरादा किया था। HTML का डिज़ाइन इसलिए एसजीएमएल टैगिंग से प्रेरित था, लेकिन चूंकि कोई स्पष्ट विस्तार और पार्सिंग दिशानिर्देश स्थापित नहीं किए गए थे, अधिकांश वास्तविक HTML दस्तावेज़ मान्य एसजीएमएल दस्तावेज़ नहीं हैं। बाद में, HTML को एसजीएमएल अनुप्रयोग के रूप में पुन:निर्मित किया गया (संस्करण 2.0); हालाँकि, HTML मार्कअप भाषा में कई विरासत- और अपवाद-हैंडलिंग सुविधाएँ हैं जो एसजीएमएल की आवश्यकताओं से भिन्न हैं। HTML 4 एसजीएमएल एप्लिकेशन है जो पूरी तरह से आईएसओ 8879 - एसजीएमएल के अनुरूप है। विश्वव्यापी वेब संकाय HTML वर्किंग ग्रुप के 2006 के पुनरुद्धार के लिए चार्टर कहता है, समूह यह नहीं मानेगा कि 'क्लासिक HTML' के लिए एसजीएमएल पार्सर का उपयोग किया जाता है। हालाँकि HTML सिंटैक्स डिफ़ॉल्ट संदर्भ ठोस वाक्य रचना के साथ एसजीएमएल सिंटैक्स के समान है, HTML5 HTML को एसजीएमएल एप्लिकेशन के रूप में परिभाषित करने के किसी भी प्रयास को छोड़ देता है, स्पष्ट रूप से अपने स्वयं के पार्सिंग नियमों को परिभाषित करता है, जो मौजूदा कार्यान्वयन और दस्तावेजों से अधिक निकटता से मेल खाते हैं। हालाँकि, यह वैकल्पिक XHTML क्रमांकन को परिभाषित करता है, जो एक्सएमएल के अनुरूप है और इसलिए एसजीएमएल के लिए भी।

आयु
ऑक्सफोर्ड इंग्लिश डिक्शनरी (OED) का दूसरा संस्करण पूरी तरह से LEXX (टेक्स्ट एडिटर) टेक्स्ट एडिटर का उपयोग करके एसजीएमएल-आधारित मार्कअप भाषा के साथ चिह्नित है। तीसरे संस्करण को एक्सएमएल के रूप में चिह्नित किया गया है।

अन्य
अन्य दस्तावेज़ मार्कअप भाषाएँ आंशिक रूप से एसजीएमएल और एक्सएमएल से संबंधित हैं, लेकिन—क्योंकि उन्हें मानक एसजीएमएल और एक्सएमएल उपकरण का उपयोग करके पार्स या मान्य या अन्यथा संसाधित नहीं किया जा सकता है—उन्हें एसजीएमएल या एक्सएमएल भाषा नहीं माना जाता है; टाइपसेटिंग और प्रलेखन के लिए Z प्रारूप मार्कअप भाषा उदाहरण है।

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

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


 * पाठ एन्कोडिंग पहल (टीईआई) अकादमिक कंसोर्टियम है जो डिजिटल-प्रारूप टेक्स्टुअल प्रतिनिधित्व अनुप्रयोगों के लिए तकनीकी मानकों को डिजाइन, रखरखाव और विकसित करता है।
 * DocBook मूल रूप से एसजीएमएल एप्लिकेशन के रूप में बनाई गई मार्कअप भाषा है, जिसे तकनीकी दस्तावेज़ीकरण के लिए डिज़ाइन किया गया है; डॉकबुक वर्तमान में एक्सएमएल एप्लीकेशन है।
 * CALS (DOD) (निरंतर अधिग्रहण और जीवन-चक्र समर्थन) अमेरिकी रक्षा विभाग (DoD) की पहल है जो सैन्य दस्तावेजों को इलेक्ट्रॉनिक रूप से कैप्चर करने और संबंधित डेटा और सूचनाओं को जोड़ने के लिए है।
 * हाइटाइम हाइपरटेक्स्ट-उन्मुख तत्व प्रकारों के सेट को परिभाषित करता है जो एसजीएमएल दस्तावेज़ लेखकों को हाइपरटेक्स्ट और मल्टीमीडिया प्रस्तुतियों का निर्माण करने की अनुमति देता है।
 * ईडीजीएआर (इलेक्ट्रॉनिक डेटा-एकत्रीकरण, विश्लेषण और पुनर्प्राप्ति) सिस्टम स्वचालित संग्रह, सत्यापन, अनुक्रमण, स्वीकृति, और कंपनियों और अन्य लोगों द्वारा सबमिशन को अग्रेषित करता है, जिन्हें यूएस सिक्योरिटीज और एक्सचेंज के साथ डेटा और सूचना फॉर्म फाइल करने के लिए कानूनी रूप से आवश्यक है। आयोग (एसईसी)।
 * लिनक्स डॉक। Linux संकुल के लिए प्रलेखन में LinuxDoc एसजीएमएल DTD और Docbook एक्सएमएल DTD का उपयोग किया गया है।
 * AAP DTD विज्ञान दस्तावेज़ों के लिए दस्तावेज़ प्रकार की परिभाषा है, जिसे एसोसिएशन ऑफ अमेरिकन पब्लिशर्स द्वारा परिभाषित किया गया है।
 * आईएसओ 12083, AAP DTP का उत्तराधिकारी, लेखकों और प्रकाशकों के बीच दस्तावेज़ आदान-प्रदान के लिए अंतर्राष्ट्रीय एसजीएमएल मानक है।
 * एसजीएमएलguid CERN में बनाई, विकसित और उपयोग की गई प्रारंभिक एसजीएमएल दस्तावेज़ प्रकार की परिभाषा थी।

ओपन-सोर्स कार्यान्वयन
महत्वपूर्ण खुला स्रोत सॉफ्टवेयर | एसजीएमएल के ओपन सोर्स कार्यान्वयन में शामिल हैं:
 * ASP-एसजीएमएल
 * ARC-एसजीएमएल, Standard Generalized Markup Language User', 1991, C द्वारा भाषा
 * एसजीएमएलS, जेम्स क्लार्क द्वारा, 1993, सी भाषा
 * प्रोजेक्ट YAO, युआन-जे इंस्टीट्यूट ऑफ टेक्नोलॉजी, ताइवान द्वारा चार्ल्स गोल्डफार्ब के साथ, 1994.
 * एसपी और जेड जेम्स क्लार्क द्वारा, सी++ भाषा

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

यह भी देखें

 * OASIS (संगठन) | संरचित सूचना मानकों की उन्नति के लिए संगठन (OASIS)
 * एस-अभिव्यक्ति
 * DSSSL – एक्स्टेंसिबल स्टाइलशीट लैंग्वेज के समान एक योजना प्रोग्रामिंग भाषा प्रोसेसिंग लैंग्वेज
 * कंडोम
 * सामान्य प्रयोजन मार्कअप भाषाओं की सूची
 * पाठ के प्रस्तुतिकरण के लिए प्रयुक्त भाषा
 * एसजीएमएल इकाई
 * हाइटाइम
 * टैग चूक
 * एक्सएमएल

बाहरी संबंध

 * Overview of एसजीएमएल Resources at W3C'sवेबsite.
 * Introduction and Examples of Software Documentation in एसजीएमएल
 * SC34 Committee Records, Charles Babbage Institute – Collection on the development of एसजीएमएल and other standards influential in the development of current एक्सएमएल tools; documents include early drafts of एसजीएमएल administrative materials, documentation, working group papers, and standards for computer languages.
 * एसजीएमएल Syntax Summary by Charles Goldfarb
 * एसजीएमएल document introducing you to एसजीएमएल; Some reasons why एसजीएमएल is important
 * The एसजीएमएल Declaration, in एसजीएमएल and HTML Explained, Martin Bryan (1997) (the original URL is broken at http://www.is-thought.co.uk/book/एसजीएमएल-4.htm#Fig4-2)
 * एसजीएमएल Declarations Wayne Wohler, IBM Corporation, 1994.
 * आईएसओ 9069:1988 – Information processing – एसजीएमएल support facilities – एसजीएमएल Document Interchange Format (SDIF)
 * आईएसओ/आईईसी 9070:1991 – Information technology – एसजीएमएल support facilities – Registration procedures for public text owner identifiers