SGML, XML, HTML और XHTML के बीच संबंध और मतभेद


16
  1. मैं सोच रहा था कि विकिपीडिया में "प्रोफ़ाइल" का क्या अर्थ है :

    XML एक ISO मानक SGML का प्रोफाइल है, और अधिकांश XML SGML से अपरिवर्तित होता है।

  2. Http://xml-tips.assistprogramming.com/sgml-xml-html-xhtml-all-show.html के अनुसार :

    HTML SGML का सबसेट है।

    एक्सएमएल एसजीएमएल का एक अत्यधिक कार्यात्मक सबसेट है।

    एक्सएचटीएमएल का विस्तार और एचटीएमएल सब्मिट होता है।

    क्या "एक दूसरे का उपसमूह" होने का मतलब यह है कि पहले में कोड भी वाक्यविन्यास रूप से सही है और शब्दार्थ दूसरे में भी है?

    प्राथमिक सेट सिद्धांत के अर्थ में,

    • क्या HTML, XML और XHTML सभी SGML के अलग-अलग उपसमूह हैं?
    • XML और HTML लगभग एक-दूसरे को नहीं काटते हैं?
    • क्या XHTML, XML और HTML दोनों का सुपरसेट है?
  3. क्या मैं उपरोक्त लिंक की तुलना में चार और / या कब उपयोग करने के लिए मतभेदों के कुछ और संक्षिप्त और स्पष्ट योग की उम्मीद कर सकता हूं? मैं उनके इच्छित उद्देश्यों के बीच स्पष्ट रेखा के बारे में वास्तव में भ्रमित हूं।
  4. Http://xml-tips.assistprogramming.com/sgml-xml-html-xhtml-all-show.html के अनुसार :

    XML एक एकल मार्कअप भाषा नहीं है। यह उपयोगकर्ताओं को अपनी स्वयं की मार्कअप भाषा को डिजाइन करने के लिए एक धातु भाषा है।

    मैं सोच रहा था कि XML और HTML दोनों SGML के सबसेट कैसे हैं, लेकिन HTML एक मार्कअप लैंग्वेज है, जबकि XML मार्कअप लैंग्वेज नहीं है, लेकिन मार्कअप लैंग्वेज डिजाइन करने के लिए एक मैटलैगुएज है?

    क्या एसजीएमएल और एक्सएचटीएमएल दोनों ही मार्कअप लैंग्वेज को डिजाइन करने के लिए भी मेटलगेज हैं?

  5. जैसा कि दोनों कड़ियों में उल्लेख है कि HTML SGML का एक एप्लिकेशन है और साथ ही SGML का सबसेट है, और XHTML XML का एक अनुप्रयोग है। मुझे आश्चर्य है कि एक भाषा दूसरे के आवेदन के बीच क्या अंतर है, और एक भाषा दूसरे की सबसेट है?

जवाबों:


8

HTML और XML दोनों मार्कअप लैंग्वेज हैं (इसलिए * ML)। XML एक सामान्य मार्कअप भाषा है जो मनमाने डेटा का प्रतिनिधित्व करने के लिए उपयुक्त है, जबकि HTML एक विशिष्ट मार्कअप भाषा है जो केवल वेब पेजों का प्रतिनिधित्व करने के लिए उपयुक्त है।

HTML और XHTML दोनों ही SGML के सबसेट हैं, सिवाय इसके कि XHTML के पास अतिरिक्त विनिर्देश हैं ताकि यह XML के रूप में भी मान्य हो। XML को XHTML के प्रभावशाली गॉडफादर के रूप में सोचें।

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

  • HTML उन टैग की सूची को परिभाषित करके SGML को प्रतिबंधित करता है जिन्हें उपयोग करने की अनुमति है।
  • एक्सएमएल एसजीएमएल को अछूता या खाली शुरुआत और अंत टैग की अनुमति नहीं देता है, और विशेषताओं को स्पष्ट करने के लिए मजबूर करता है। XML में बड़ी संख्या में अतिरिक्त प्रतिबंध भी हैं जो SGML में नहीं पाए जाते हैं।
  • XHTML, SGML को HTML से टैग (कुछ अपवर्जन के साथ, जैसे फ्रेमसेट, एट अल) और XML से टैग और इकाई प्रतिबंध के साथ प्रतिबंधित करता है।

आपको यह दस्तावेज़ मददगार लग सकता है, हालाँकि तकनीकी शब्दों को पचाने में मुश्किल हो सकती है। http://www.w3.org/TR/NOTE-sgml-xml-971215

XML मार्कअप भाषाओं को परिभाषित करने के लिए एक धातु नहीं है। वास्तव में यह सिर्फ एसजीएमएल है। XML बस एक डेटा स्वरूपण मार्कअप भाषा है। आपका उद्धृत स्रोत तकनीकी शब्दों का उपयोग असंयमित रूप से कर रहा है, यही कारण है कि वे भ्रमित कर रहे हैं।

प्रयोजनों

XML अपने स्वयं के डेटा प्रारूप को परिभाषित करने के लिए है। यदि आप दो प्रणालियों के बीच डेटा पास करना चाहते हैं, तो XML अक्सर ऐसा करने का तरीका है।

यदि, उदाहरण के लिए, आपको अपनी वेबसाइट से अपने बिलिंग सिस्टम को बिक्री आदेश पारित करने की आवश्यकता है, तो आप यह XML पेलोड बना सकते हैं:

<order id="12345">
    <name>John Doe</name>
    <item id="443">Adult Diapers</item>
</order>

तब आपकी वेबसाइट उस XML को आपके बिलिंग सिस्टम में भेज देगी, जो उस XML के डेटा को पार्स कर सकता है।

XHTML और HTML स्पष्ट रूप से केवल वेब पृष्ठों के लिए हैं। XHTML का प्राथमिक उद्देश्य वेब विकास के पिछले वर्षों (दशकों) में मौजूद अस्पष्टता को दूर करना है। 90 के दशक के उत्तरार्ध में जब मैंने शुरुआत की थी, हम HTML 3.2 का उपयोग कर रहे थे, जो गंभीर रूप से मैला कोड के लिए अनुमति देता था। HTML 4+ और XHTML ने स्पष्ट रूप से क्लोजिंग टैग्स, स्पष्ट विशेषताओं और अस्वीकृत टैगों को दृढ़ता से सुझाव देने या लागू करने का प्रयास किया, जो ब्राउज़र और मनुष्यों दोनों को आसान बनाता है, और व्यवहार क्रॉस-ब्राउज़र में अप्रत्याशित अंतर से बचा जाता है।


धन्यवाद! (1) क्या HTML और XML दोनों HTML के उपसमुच्चय हैं? (२) क्या यह सही है कि न तो HTML XML का सबसेट है, न ही XML, HTML का सबसेट है? क्या HTML और XML में गैर-रिक्त चौराहा है, या एक दूसरे से पूरी तरह से अलग है?
स्टैकएक्सचेंज फॉर आल

(३) यह कहने में क्या अंतर है कि एक भाषा दूसरी का अनुप्रयोग है, और एक भाषा दूसरे की उपसमुच्चय है?
ऑल जूल

ऐसे दस्तावेज हैं जो XML और HTML दोनों के अनुरूप हैं; ऐसे दस्तावेज़ हैं जो XML के अनुरूप हैं और HTML के नहीं हैं, और ऐसे दस्तावेज़ हैं जो HTML के अनुरूप हैं और XML के नहीं। इसलिए न तो दूसरे का एक उपसमूह है, लेकिन उनके पास एक गैर-खाली चौराहा है।
माइकल

@ समय: (1) HTML, XML और XHTML SGML को छोड़कर किसी भी चीज़ के सबसेट नहीं हैं। वे सभी अलग हैं। XML का वास्तव में HTML या XHTML से कोई लेना देना नहीं है ... यह एक अलग उद्देश्य को पूरा करता है। XHTML को HTML और XML दोनों के रूप में पार्स किया जा सकता है, लेकिन इसका उपयोग केवल ब्राउज़र द्वारा HTML मार्कअप के रूप में किया जाता है। HTML और XML दोनों में SGML का एक सामान्य पूर्वज है, लेकिन अन्यथा असंबंधित हैं। प्रत्येक इरादे के लिए, वे अलग-अलग हैं क्योंकि एसजीएमएल इतना सामान्य है।
जॉर्डन

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

6

मैं यह कह कर शुरू करने जा रहा हूं कि XML SGML का सबसेट है, तो XHTML XML का सबसेट है।

HTML SGML पर आधारित है लेकिन कुछ अलग नियमों के साथ। XHTML मूल रूप से एक अद्यतित संस्करण HTML है लेकिन कुछ नियमों के साथ इसे स्थान दिया जाता है इसलिए यह XML को सही करता है।

HTML 5 मानक अन्य विशिष्टताओं के साथ कैसे काम करता है, इस पर कुछ नोट्स। http://dev.w3.org/html5/spec/Overview.html#compliance-with-other-specifications

मैं एसजीएमएल और एक्सएमएल के बीच अंतर के बारे में निश्चित नहीं हूं या जब आप एक दूसरे पर उपयोग करेंगे। हालाँकि XML का आमतौर पर एक ही उपयोग किया जाता है।

XHTML और HTML के लिए आप शायद XHTML का उपयोग करके हमेशा बेहतर होते हैं। त्रुटियों को ढूंढना आसान है और एक बोनस के रूप में यह वैध एक्सएमएल भी होगा।


धन्यवाद! (१) मैं सोच रहा था कि दो परस्पर विरोधी तथ्यों को कैसे समझा जाए: XML और HTML दोनों SGML के सबसेट हैं, और HTML एक मार्कअप लैंग्वेज है जबकि XML मार्कअप लैंग्वेज नहीं है, लेकिन मार्कअप लैंग्वेज डिजाइन करने के लिए एक धातु भाषा है? (२) आपके उत्तर के अनुसार, एक्सएचटीएमएल एक्सएमएल का एक सबसेट है। XHTML HTML का एक सुपरसेट है जैसा कि "XHTML सबसेट HTML" मेरी पोस्ट के एक लिंक से उद्धृत किया गया है। तो HTML XML का सबसेट है? मुझे यकीन नहीं है कि यह सच है।
ऑल जूल

HTML XML होने के लिए बहुत सारे नियम तोड़ता है। HTML मुझे विश्वास है कि एसजीएमएल के करीब है। HTML टैग के साथ ढीली है और विभिन्न टैग प्रकारों की एक निर्धारित संख्या है। XHTML, HTML का XML संस्करण है।
वाल्टरजॉ।

धन्यवाद! जैसा कि दोनों कड़ियों में उल्लेख है कि HTML SGML का एक एप्लिकेशन है और साथ ही SGML का सबसेट है, और XHTML XML का एक अनुप्रयोग है। मुझे आश्चर्य है कि एक भाषा दूसरे के आवेदन के बीच क्या अंतर है, और एक भाषा दूसरे की सबसेट है?
ऑल जूल

2

इनका इतिहास आपको यहाँ बता सकता है। बस मेटा-भाषाओं, प्रोफाइल, सबसेट और उदाहरणों के बारे में बात करना थोड़ा सूखा है! मैं इसे छोटा और सरल रखने की कोशिश करूंगा।

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

GML / SGML प्रति भाषा नहीं है । यह बल्कि एक मेटा-भाषा है , अर्थात अनुरूप भाषाओं को परिभाषित करने के लिए एक भाषा या "नियम" जिसके द्वारा विभिन्न प्रकार के विस्तृत दस्तावेजों का प्रारूपण आमतौर पर सुसंगत तरीके से तैयार किया जा सकता है। इसलिए प्रत्येक भिन्न प्रकार के दस्तावेज़ में टैग नामों के साथ-साथ संबंधित विशेषताओं, साथ ही साथ किसी भी परिभाषित औपचारिक सार्वजनिक पहचानकर्ता / नेमस्पेस, स्कीमा, आदि के अपने एसजीएमएल को परिभाषित करने वाले प्रत्येक प्रारूप को परिभाषित किया जाएगा, इस तरह से परिभाषित प्रत्येक प्रारूप दस्तावेज़ के लिए एक अलग डेटा भंडारण भाषा बन गया है। संबंधित प्रकार। एसजीएमएल नियमों के अनुरूप सभी दस्तावेजों के बीच स्थिरता के कारण, इन दस्तावेजों के भीतर डेटा को समेटने / संसाधित करने और एक सामान्य प्रारूप साझा करने वाले दस्तावेजों के बीच डेटा स्थानांतरित करने के लिए कोड लिखना संभव है।

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

एसजीएमएल के मानकीकरण के बाद लेकिन इससे पहले एक्सएमएल को सरल बनाया गया था, इंटरनेट उभरा और इसके साथ एक दस्तावेज प्रारूप की आवश्यकता थी जिसने दस्तावेज़ों और ढीले डेटा के आसान हस्तांतरण और प्रदर्शन को सक्षम किया । परिणाम HTML भाषा था, एक उदाहरण (कभी-कभी एक एप्लिकेशन के रूप में संदर्भित ) SGML के 18 पूर्व-परिभाषित टैग के साथ विभिन्न प्रकार के डेटा प्रकार, जैसे पाठ, चित्र, ऑडियो आदि प्रदर्शित करने के लिए एक मानकीकृत तरीका प्रदान करता है, HTML ने एसजीएमएल की अनुमति का शोषण किया। शुरू-अंत या टैग को हटाने के लिए कुछ तत्व। HTML के बाद के संस्करणों ने इसमें नए टैग और विशेषताएँ जोड़ीं और कुछ मौजूदा को अप्रचलित कर दिया। HTML 5 तक, HTML में परिवर्तन किए गए ताकि यह हमेशा SGML की एक बाल भाषा बनी रहे।

XML को मानकीकृत करने के बाद, XHTML नामक इसका एक उदाहरण सामने आया जिसने मौजूदा HTML टैग नामों को टैग क्लोजिंग, नेमस्पेस, स्कीमा आदि पर XML की कठोरता के साथ जोड़ दिया, XHTML ने शुरू में डेटा के भंडारण, हस्तांतरण और प्रदर्शन के लिए उपयोगी होने का वादा किया था। यह वेब सामग्री प्रदर्शित करने के लिए HTML को सबसे सामान्य तरीके के रूप में प्रतिस्थापित करने के बारे में लग रहा था - जब तक HTML 5 बाहर नहीं आया। HTML 5 में कुछ वाक्यात्मक विशेषताएं थीं जो एसजीएमएल में परिभाषित लोगों से आगे निकल गईं ताकि विशेष रूप से मल्टीमीडिया लादेन वेबसाइटों के लिए एक समृद्ध डेटा प्रदर्शन प्रदान किया जा सके। समय बीतने के साथ, HTML 5 में अतिरिक्त सुविधाएँ जोड़ी गईं, जिसने डेटा प्रदर्शन / उपयोग के लिए इसके उपयोग को और अधिक समृद्ध कर दिया है कि यह कभी भी नए XHTML संस्करणों द्वारा अधिगृहीत होने की संभावना नहीं है, कम से कम जहाँ तक संबंधित डेटा का प्रदर्शन। हालांकि HTML और XHTML के मानक W3C कार्य समूहों द्वारा किए जाते हैं, इन भाषाओं का वास्तविक प्रसार "जमीन पर" प्रगतिशील वेब डिजाइनरों द्वारा किया जाता है और मीडिया (विज्ञापन / पीआर / विपणन) क्षेत्र में काम करने वालों की तुलना में अधिक प्रगतिशील नहीं है: अन्य साइटों की तुलना में विज्ञापन एजेंसी साइटों की रचनात्मकता को देखें। यह क्षेत्र वास्तव में एसवीजी, ऑडियो, वीडियो और के लिए अपनी क्षमता का फायदा उठाते हुए, नई एचटीएमएल 5 भाषा में ले गयानए एपीआई । एचटीएमएल 5 के उनके तैयार अपनाने से सामान्य रूप से वेब डिजाइनरों के बीच इसकी लोकप्रियता में तेजी से वृद्धि हुई, एक प्रक्रिया जो कि YouTube और विभिन्न अन्य साइटों पर कौशल और चाल के ऑनलाइन आदान-प्रदान द्वारा त्वरित हुई। एक अद्यतन XHTML संस्करण, XHTML5 उभरा है, लेकिन यह वास्तव में एक सख्त XML व्युत्पन्न नहीं है, बल्कि HTML5 का एक संस्करण है जो XML- क्रमबद्ध है। साइटों का केवल एक छोटा हिस्सा इसके लिए किसी भी उपयोग के लिए दिखाई देता है।

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


1

आम तौर पर मानक दुनिया में, एक मानक का "प्रोफ़ाइल" उन विकल्पों का चयन होता है जो मानक प्रदान करता है: उदाहरण के लिए, यदि मानक UTF-8 या UTF-16 में दस्तावेज़ों को एनकोड करने की अनुमति देता है, तो मानक की एक प्रोफ़ाइल की आवश्यकता हो सकती है उन्हें UTF-8 में एनकोड किया जाना है। "सब्मिट" शब्द का एक समान अर्थ है; हालांकि यकीनन "प्रोफाइल" शब्द थोड़ा व्यापक है।


धन्यवाद! (1) मेरे प्रश्नों के भाग 5 में "आवेदन", "सबसेट" और "प्रोफ़ाइल" के बीच के अर्थ और अंतर के बारे में कैसे? (2) "एक्सएचटीएमएल भविष्य के दस्तावेज़ प्रकारों के एक परिवार के लिए आधार है जो एचटीएमएल का विस्तार और निर्वाह करता है", क्या इसका मतलब है कि एक्सएचटीएमएल एचटीएमएल का सबसेट है या एचटीएमएल एक्सएचटीएमएल का सबसेट है?
ऑल जूल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.