XML Schema attribute तत्व
निर्धारण और उपयोग
attribute तत्व एक गुण को निर्धारित करता है।
तत्व सूचना
सारणी | schema तत्व में एक बार निर्धारित किया जाता है। जटिल तत्व या गुण समूह में कई बार उपयोग किया जा सकता है। |
माता तत्व | attributeGroup、schema、complexType、restriction (simpleContent)、extension (simpleContent)、restriction (complexContent)、extension (complexContent) |
विषय | annotation、simpleType |
व्याकरण
<attribute default=string fixed=string form=qualified|unqualified id=ID name=NCName ref=QName type=QName use=optional|prohibited|required कोई अटॉरिब्यूट > (annotation?,(simpleType?)) </attribute>
(? संकेतक इस तत्व को attribute तत्व में शामिल करने के लिए शून्य या एक बार उपयोग करने को घोषित करता है。)
गुण
default
वैकल्पिक। गुण के मूलभूत मूल्य को निर्धारित करता है। default और fixed गुण एक साथ में नहीं हो सकते।
fixed
वैकल्पिक। गुण के निर्धारित मूल्य को निर्धारित करता है। default और fixed गुण एक साथ में नहीं हो सकते।
form
वैकल्पिक। गुण के फॉर्म को निर्धारित करता है। मूलभूत मूल्य इस गुण को शामिल करने वाले schema तत्व के attributeFormDefault गुण के मूल्य है। इसे निम्नलिखित मूल्यों में से एक के रूप में सेट किया जा सकता है:
- "qualified" - इंगित करता है कि इस गुण को नामस्पेक्स अग्रसूत्र और इस गुण के नॉन-कोलन नाम (NCName) के साथ निर्दिष्ट किया जाना चाहिए।
- "unqualified" - इंगित करता है कि इस गुण को नामस्पेक्स अग्रसूत्र के बिना निर्दिष्ट किया जाना चाहिए, और इस गुण के नॉन-कोलन नाम (NCName) के साथ मेल खाना चाहिए, अर्थात् स्थानीय नाम।
id
वैकल्पिक। इस एलीमेंट के लिए अनूठा ID निर्धारित करें।
name
वैकल्पिक। अटॉरिब्यूट का नाम निर्धारित करें। name और ref अटॉरिब्यूट को नहीं एक साथ दिखाया जा सकता है।
ref
वैकल्पिक। निर्धारित अटॉरिब्यूट के लिए संदर्भ निर्धारित करें। name और ref अटॉरिब्यूट को नहीं एक साथ दिखाया जा सकता है। अगर ref दिखाया जाता है, तो simpleType एलीमेंट, form और type नहीं दिखाया जा सकता है।
टाइप
वैकल्पिक। निर्मित डाटा टाइप या साधारण टाइप को निर्धारित करें। type अटॉरिब्यूट केवल simpleType एलीमेंट नहीं होने पर दिखाया जाता है।
उपयोग
वैकल्पिक। इस अटॉरिब्यूट के उपयोग को निर्धारित करें। नीचे दिए मानों को सेट कर सकते हैं:
- वैकल्पिक - अटॉरिब्यूट वैकल्पिक है और किसी भी मान को रख सकता है (मूलभूत)।
- निषिद्ध - अटॉरिब्यूट का उपयोग नहीं किया जा सकता है।
- अनिवार्य - अटॉरिब्यूट की आवश्यकता है।
कोई अटॉरिब्यूट
वैकल्पिक। नॉन-शेमा नाम स्पेस के किसी अन्य अटॉरिब्यूट को निर्धारित करें。
उदाहरण
उदाहरण 1
<xs:attribute name="code"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="[A-Z][A-Z]"/> </xs:restriction> </xs:simpleType> </xs:attribute>
ऊपरी उदाहरण इंगित करता है कि "code" अटॉरिब्यूट को एक निर्बंधन है। अकेले ग्रेहित वैल्यू है बड़े अक्षर A से Z के दो अक्षर।
उदाहरण 2
जब आप जटिल टाइप में एक मौजूदा अटॉरिब्यूट डिफ़ाइनिशन को एक अटॉरिब्यूट के रूप में घोषित करना चाहते हैं, तो ref अटॉरिब्यूट का उपयोग करें:
<xs:attribute name="code"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="[A-Z][A-Z]"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:complexType name="someComplexType"> <xs:attribute ref="code"/> </xs:complexType>
उदाहरण 3
अटॉरिब्यूट को मूलभूत मान भी मिल सकता है, या विशिष्ट निर्धारित मान भी मिल सकता है। कोई अन्य मान निर्धारित नहीं होने पर, अटॉरिब्यूट को स्वचालित रूप से मूलभूत मान दिया जाता है। नीचे दिए उदाहरण में, मूलभूत मान है "EN":
<xs:attribute name="lang" type="xs:string" default="EN"/>
कोई अन्य मान निर्धारित नहीं होने पर, अटॉरिब्यूट को स्वचालित रूप से निर्धारित मान दिया जाता है। लेकिन मूलभूत मान से अलग, अगर आप अटॉरिब्यूट के लिए निर्धारित मान के अलावा कोई अन्य मान निर्धारित करते हैं, तो दस्तावेज़ को अवैध ठहराया जाता है। नीचे दिए उदाहरण में, निर्धारित मान है "EN":
<xs:attribute name="lang" type="xs:string" fixed="EN"/>
उदाहरण 4
सभी गुण डिफ़ॉल्ट रूप से अपरिणामी हैं।गुण को स्पष्ट रूप से अपरिणामी बनाने के लिए "use" गुण का उपयोग करें:
<xs:attribute name="lang" type="xs:string" use="optional"/>
गुण को अनिवार्य गुण बनाएं:
<xs:attribute name="lang" type="xs:string" use="required"/>