खोज…
टिप्पणियों
स्टोरेज के नजरिए से, एक्सएमएल डॉक्यूमेंट संस्थाओं से बना है। संस्थाओं में से एक दस्तावेज़ इकाई है, जो स्वयं मुख्य XML दस्तावेज़ है।
संस्थाओं को इस तरह वर्गीकृत किया जा सकता है (अस्थायी रूप से उपयोग के अवरोही क्रम द्वारा क्रमबद्ध):
- दस्तावेज़ इकाई : यह मुख्य XML फ़ाइल है।
- आंतरिक सामान्य इकाइयाँ : यह दस्तावेज़ इकाई के अलावा सबसे आम है, और सबसे अधिक XML उपयोगकर्ता इसके बारे में जानते हैं। अक्सर, शब्द इकाई उनके लिए आकस्मिक रूप से उपयोग की जाती है। वे दस्तावेज़ सामग्री में लंबे प्रतिस्थापन ग्रंथों के लिए कुछ शॉर्टकट निर्दिष्ट करने की अनुमति देते हैं। उन्हें DTD में घोषित किया जाता है।
- बाहरी DTD सबसेट : DTD के किसी अन्य भाग को आउटसोर्स किया जाता है।
- पैरामीटर इकाइयां : डीटीडी में उपयोग के लिए शॉर्टकट।
- बाहरी पार्स की गई सामान्य इकाइयाँ : वे अन्य फ़ाइलों में संग्रहित XML टुकड़े हैं।
- अप्रकाशित इकाइयाँ : ये ऐसी कोई भी फाइल हो सकती है जिस पर XML कोई प्रतिबंध नहीं लगाता है, जिसमें चित्र, ध्वनि आदि शामिल हैं।
कई मामलों में, XML दस्तावेज़ में केवल दस्तावेज़ इकाई होती है।
पूर्व-निर्धारित सामान्य इकाइयाँ
एक्सएमएल पांच सामान्य संस्थाओं को पूर्व-परिभाषित करता है जिनका उपयोग उन्हें घोषित किए बिना किया जा सकता है:
& " ' < >
वे amp
, quot
, apos
, lt
और gt
नाम से जुड़े हैं।
<?xml version="1.0"?>
<entities>
& is an ampersand.
" is a quote.
' is an apostrophe.
< is a lower-than sign.
> is a greater-than sign.
</entities>
उपयोगकर्ता-परिभाषित सामान्य (आंतरिक) निकाय
अपने स्वयं के सामान्य संस्थाओं को परिभाषित करना संभव है। घोषणा एक नाम और संबंधित प्रतिस्थापन पाठ के साथ DTD सबसेट में होती है।
यह तब इकाई संदर्भ सिंटैक्स &...;
का उपयोग करके दस्तावेज़ में उपयोग किया जा सकता है &...;
या तो पाठ में, या विशेषता मूल्यों में।
<?xml version="1.0"?>
<!DOCTYPE my-document [
<!ENTITY my-entity "This is my entity">
]>
<my-document>
The entity was declared as follows: &my-entity;
<element attribute="Entity: &my-entity;"/>
</my-document>
बाहरी पार्स संस्थाओं
एक्सएमएल टुकड़े, जिसे बाहरी पार्स किए गए संस्थाओं के नाम से भी जाना जाता है , को अलग-अलग फ़ाइलों में संग्रहीत किया जा सकता है।
XML टुकड़े, XML दस्तावेज़ों के विपरीत, कम प्रतिबंधक हैं, इसमें कई तत्व शीर्ष-स्तर, साथ ही पाठ नोड्स भी दिखाई दे सकते हैं। XML दस्तावेज़ की तरह, एक बाहरी पार्स इकाई एक्सएमएल घोषणा के साथ शुरू हो सकती है, लेकिन इस घोषणा को इसके प्रतिस्थापन पाठ का हिस्सा नहीं माना जाता है।
यह बाहरी पार्स इकाई का एक उदाहरण है:
<?xml version="1.0" encoding="UTF-8"?>
This is some text
<element/>
<element/>
एक बाहरी पार्स इकाई को एक्सएमएल दस्तावेज़ में, डीटीडी में घोषित किया जा सकता है, और इसका उपयोग एक इकाई संदर्भ के साथ किया जा सकता है, जिसमें सामान्य आंतरिक संस्थाओं के लिए एक ही वाक्यविन्यास है:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE root [
<!ENTITY fragment SYSTEM "fragment.xml">
]>
<root>
&fragment;
</root>
निकाले गए संदर्भ के साथ, यह दस्तावेज़ इसके बराबर है:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE root [
<!ENTITY fragment SYSTEM "fragment.xml">
]>
<root>
This is some text
<element/>
<element/>
</root>
बाहरी पार्स की गई इकाई में प्रत्येक प्रारंभिक तत्व टैग में एक समान समाप्ति टैग होना चाहिए: यह एकल तत्वों को कई संस्थाओं में फैलाने की अनुमति नहीं है, न ही मार्कअप फैलाने के लिए।
इकाई संदर्भ को हल करने के लिए एक मान्य पार्सर की आवश्यकता होती है और ऊपर दिए गए दस्तावेज़ में इसका प्रतिस्थापन पाठ शामिल होता है। एक गैर-मान्य पार्सर इसे छोड़ सकता है, और इसके बजाय उपभोग आवेदन को बताता है कि बाहरी पार्स इकाई के लिए एक अनसुलझे संदर्भ है।