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) के बिना नामकरण करके निर्दिष्ट किया जाना चाहिए।
- "अनन्य" - इसका अर्थ है कि इस गुण को नामकरण अंतर्निहित नहीं करना है, और इस गुण के लिए नाम (NCName) को मेल खाना नहीं है, अर्थात् स्थानीय नाम।
ID
वैकल्पिक। इस एलीमेंट के लिए अद्वितीय ID निर्धारित करें।
नाम
वैकल्पिक। गुण का नाम निर्धारित करें।name और 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"/>