DTD - गुण

DTD में, अट्रिब्यूट ATTLIST घोषणा के माध्यम से घोषित किए जाते हैं。

अट्रिब्यूट घोषणा करें

अट्रिब्यूट घोषणा के लिए निम्नलिखित व्याकरण का उपयोग करें:

<!ATTLIST एलीमेंट नाम अट्रिब्यूट नाम अट्रिब्यूट टाइप डिफ़ॉल्ट वैल्यू>

DTD इंस्टेंस:

<!ATTLIST payment type CDATA "check">

XML इंस्टेंस:

<payment type="check" />

नीचे दिया गया हैअट्रिब्यूट टाइपके विकल्पों:

टाइप वर्णन
CDATA चरित्र डेटा (character data) का मूल्य है
(en1|en2|..) यह वैकल्पिक सूची का एक मूल्य है
ID एक अद्वितीय id का मूल्य है
IDREF एक अन्य एलीमेंट के id का मूल्य है
IDREFS अन्य id की सूची का मूल्य है
NMTOKEN मूल्य वैध XML नाम है
NMTOKENS वैल्यू एक वैध XML नाम की सूची है
ENTITY वैल्यू एक एंटिटी है
ENTITIES वैल्यू एक एंटिटी सूची है
NOTATION यह वैल्यू एक प्रतीक का नाम है
xml: वैल्यू एक प्रदिष्ट XML वैल्यू है

डिफ़ॉल्ट वैल्यू पैरामीटर निम्नलिखित वैल्यू का उपयोग कर सकते हैं:

वैल्यू व्याख्या
वैल्यू अट्ट्रिब्यूट का डिफ़ॉल्ट वैल्यू
#REQUIRED अट्ट्रिब्यूट वैल्यू अनिवार्य है
#IMPLIED अट्ट्रिब्यूट अनिवार्य नहीं है
#FIXED value अट्ट्रिब्यूट वैल्यू निश्चित है

डिफ़ॉल्ट अट्ट्रिब्यूट वैल्यू निर्धारित करें

DTD:

!ELEMENT square EMPTY>
!ATTLIST square width CDATA "0">

वैध XML:

<square width="100" />

उपरोक्त उदाहरण में, "square" एक खाली एलीमेंट के रूप में "width" अट्ट्रिब्यूट के लिए CDATA टाइप के साथ परिभाषित किया गया है। यदि चौड़ाई निर्धारित नहीं होती, तो उसका डिफ़ॉल्ट वैल्यू 0 होगा。

#IMPLIED

व्याकरण

!ATTLIST एलीमेंट नाम अट्ट्रिब्यूट नाम अट्ट्रिब्यूट टाइप #IMPLIED>

उदाहरण

DTD:

!ATTLIST contact fax CDATA #IMPLIED>

वैध XML:

<contact fax="555-667788" />

वैध XML:

<contact />

यदि आप लेखक को अट्ट्रिब्यूट को जमा करने के लिए मजबूर नहीं करना चाहते हैं, और आपके पास डिफ़ॉल्ट वैल्यू विकल्प नहीं है, तो #IMPLIED की प्रवैलेंस उपयोग करें。

#REQUIRED

व्याकरण

!ATTLIST एलीमेंट नाम अट्ट्रिब्यूट नाम अट्ट्रिब्यूट टाइप #REQUIRED>

उदाहरण

DTD:

!ATTLIST person number CDATA #REQUIRED>

वैध XML:

<person number="5677" />

अवैध XML:

<person />

यदि आप डिफ़ॉल्ट वैल्यू विकल्प नहीं हैं, लेकिन अभी भी लेखक को अट्ट्रिब्यूट जमा करने के लिए मजबूर करना चाहते हैं, तो #REQUIRED की प्रवैलेंस उपयोग करें。

#FIXED

व्याकरण

!ATTLIST एलीमेंट नाम अट्ट्रिब्यूट नाम अट्ट्रिब्यूट टाइप #FIXED "value">

उदाहरण

DTD:

!ATTLIST sender company CDATA #FIXED "Microsoft">

वैध XML:

<sender company="Microsoft" />

अवैध XML:

<sender company="W3School" />

यदि आप चाहते हैं कि अट्ट्रिब्यूट का वैल्यू निश्चित हो और लेखक इसे बदले नहीं सके, तो #FIXED की प्रवैलेंस उपयोग करें। यदि लेखक अलग वैल्यू उपयोग करता है, तो XML पार्सर त्रुटि वापस देगा。

अट्ट्रिब्यूट वैल्यू की सूची

व्याकरण:

!ATTLIST एलीमेंट नाम अट्ट्रिब्यूट नाम (en1|en2|..) डिफ़ॉल्ट वैल्यू>

DTD उदाहरण:

!ATTLIST payment type (check|cash) "cash">

XML उदाहरण:

<payment type="check" />

या

<payment type="cash" />

यदि आप गुण का मान एक निश्चित और मान्य सूचीबद्ध मान होना चाहते हैं, तो सूचीबद्ध गुण का उपयोग करें。