XSD - त्वरित गाइड
एक्सएमएल स्कीमा परिभाषा, जिसे आमतौर पर एक्सएसडी के रूप में जाना जाता है, ठीक एक्सएमएल भाषा का वर्णन करने का एक तरीका है। XSD उचित XML भाषा के व्याकरणिक नियमों के खिलाफ एक XML दस्तावेज़ की संरचना और शब्दावली की वैधता की जांच करता है।
एक XML दस्तावेज़ के रूप में परिभाषित किया जा सकता है -
Well-formed- यदि XML डॉक्यूमेंट सभी सामान्य XML नियमों का पालन करता है, जैसे टैग्स को ठीक से नेस्टेड होना चाहिए, तो ओपनिंग और क्लोजिंग टैग्स को संतुलित होना चाहिए, और खाली टैग्स को '/>' के साथ समाप्त होना चाहिए, फिर इसे अच्छी तरह से बनाया हुआ कहा जाता है ।
OR
Valid- एक XML दस्तावेज़ ने कहा कि जब यह न केवल अच्छी तरह से बनता है , तो मान्य होता है , लेकिन यह उपलब्ध XSD के अनुरूप भी होता है, जो यह निर्दिष्ट करता है कि कौन सा टैग इसका उपयोग करता है, उन टैग में कौन से गुण हो सकते हैं और अन्य टैग के अंदर कौन से टैग हो सकते हैं, अन्य गुणों के साथ। ।
निम्नलिखित आरेख से पता चलता है कि एक्सएमएल का उपयोग एक्सएमएल दस्तावेजों को संरचना के लिए कैसे किया जाता है
यहाँ एक सरल XSD कोड है। इस पर एक नज़र मारो।
<?xml version = "1.0"?>
<xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">
targetNamespace = "http://www.tutorialspoint.com"
xmlns = "http://www.tutorialspoint.com"
elementFormDefault = "qualified">
<xs:element name = 'class'>
<xs:complexType>
<xs:sequence>
<xs:element name = 'student' type = 'StudentType' minOccurs = '0'
maxOccurs = 'unbounded' />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name = "StudentType">
<xs:sequence>
<xs:element name = "firstname" type = "xs:string"/>
<xs:element name = "lastname" type = "xs:string"/>
<xs:element name = "nickname" type = "xs:string"/>
<xs:element name = "marks" type = "xs:positiveInteger"/>
</xs:sequence>
<xs:attribute name = 'rollno' type = 'xs:positiveInteger'/>
</xs:complexType>
</xs:schema>
विशेषताएं
यहाँ XSD की कुछ लोकप्रिय विशेषताओं की सूची दी गई है -
- XSD भविष्य के परिवर्धन के लिए एक्स्टेंसिबल हो सकता है।
- XSD, DTD से अधिक समृद्ध और शक्तिशाली है।
- XSD XML में लिखा है।
- XSD डेटा प्रकारों का समर्थन करता है।
- XSD नामस्थान का समर्थन करता है।
- XSD W3C की सिफारिश है।
एक XML XSD को एक अलग दस्तावेज़ में रखा जाता है और फिर इसे उपयोग करने के लिए दस्तावेज़ को एक XML दस्तावेज़ से जोड़ा जा सकता है।
वाक्य - विन्यास
XSD का मूल सिंटैक्स इस प्रकार है -
<?xml version = "1.0"?>
<xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">
targetNamespace = "http://www.tutorialspoint.com"
xmlns = "http://www.tutorialspoint.com" elementFormDefault = "qualified">
<xs:element name = 'class'>
<xs:complexType>
<xs:sequence>
<xs:element name = 'student' type = 'StudentType' minOccurs = '0'
maxOccurs = 'unbounded' />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name = "StudentType">
<xs:sequence>
<xs:element name = "firstname" type = "xs:string"/>
<xs:element name = "lastname" type = "xs:string"/>
<xs:element name = "nickname" type = "xs:string"/>
<xs:element name = "marks" type = "xs:positiveInteger"/>
</xs:sequence>
<xs:attribute name = 'rollno' type = 'xs:positiveInteger'/>
</xs:complexType>
</xs:schema>
<स्कीमा> तत्व
स्कीमा एक्सएसडी का मूल तत्व है और इसकी हमेशा आवश्यकता होती है।
<xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">
उपरोक्त टुकड़ा निर्दिष्ट करता है कि स्कीमा में उपयोग किए जाने वाले तत्व और डेटाटिप्स को परिभाषित किया गया है http://www.w3.org/2001/XMLSchema नाम स्थान और इन तत्वों / डेटा प्रकारों के साथ उपसर्ग किया जाना चाहिए xs। इसकी हमेशा आवश्यकता होती है।
targetNamespace = "http://www.tutorialspoint.com"
उपरोक्त टुकड़ा निर्दिष्ट करता है कि इस स्कीमा में उपयोग किए गए तत्व में परिभाषित किए गए हैं http://www.tutorialspoint.comनाम स्थान। यह वैकल्पिक है।
xmlns = "http://www.tutorialspoint.com"
उपरोक्त खंड निर्दिष्ट करता है कि डिफ़ॉल्ट नाम स्थान है http://www.tutorialspoint.com।
elementFormDefault = "qualified"
उपरोक्त खंड इंगित करता है कि इस स्कीमा में घोषित किए गए किसी भी तत्व को किसी भी XML दस्तावेज़ में उपयोग करने से पहले नामस्थान योग्य होना चाहिए। यह वैकल्पिक है।
रेफरेंसिंग स्कीम्स
निम्नलिखित रेफरेंसिंग स्कीमों पर एक नज़र डालें -
<?xml version = "1.0"?>
<class xmlns = "http://www.tutorialspoint.com"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation = "http://www.tutorialspoint.com student.xsd">
<student rollno = "393">
<firstname>Dinkar</firstname>
<lastname>Kad</lastname>
<nickname>Dinkar</nickname>
<marks>85</marks>
</student>
<student rollno = "493">
<firstname>Vaneet</firstname>
<lastname>Gupta</lastname>
<nickname>Vinni</nickname>
<marks>95</marks>
</student>
<student rollno = "593">
<firstname>Jasvir</firstname>
<lastname>Singh</lastname>
<nickname>Jazz</nickname>
<marks>90</marks>
</student>
</class>
xmlns = "http://www.tutorialspoint.com"
उपरोक्त खंड डिफ़ॉल्ट नाम स्थान घोषणा को निर्दिष्ट करता है। इस नाम स्थान का उपयोग स्कीमा सत्यापनकर्ता द्वारा किया जाता है कि सभी तत्व इस नाम स्थान का हिस्सा हैं। यह वैकल्पिक है।
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation = "http://www.tutorialspoint.com student.xsd">
XMLSchema- उदाहरण xsi को परिभाषित करने के बाद, का उपयोग करें schemaLocationविशेषता। इस विशेषता के दो मान, नाम स्थान और XML स्कीमा का स्थान है, जिसका उपयोग किसी स्थान से अलग किया जा सकता है। यह वैकल्पिक है।
हम मान्य करने के लिए जावा आधारित XSD सत्यापनकर्ता का उपयोग करेंगे students.xml के खिलाफ students.xsd।
students.xml
<?xml version = "1.0"?>
<class>
<student rollno = "393">
<firstname>Dinkar</firstname>
<lastname>Kad</lastname>
<nickname>Dinkar</nickname>
<marks>85</marks>
</student>
<student rollno = "493">
<firstname>Vaneet</firstname>
<lastname>Gupta</lastname>
<nickname>Vinni</nickname>
<marks>95</marks>
</student>
<student rollno = "593">
<firstname>Jasvir</firstname>
<lastname>Singh</lastname>
<nickname>Jazz</nickname>
<marks>90</marks>
</student>
</class>
students.xsd
<?xml version = "1.0"?>
<xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">
<xs:element name = 'class'>
<xs:complexType>
<xs:sequence>
<xs:element name = 'student' type = 'StudentType' minOccurs = '0'
maxOccurs = 'unbounded' />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name = "StudentType">
<xs:sequence>
<xs:element name = "firstname" type = "xs:string"/>
<xs:element name = "lastname" type = "xs:string"/>
<xs:element name = "nickname" type = "xs:string"/>
<xs:element name = "marks" type = "xs:positiveInteger"/>
</xs:sequence>
<xs:attribute name = 'rollno' type = 'xs:positiveInteger'/>
</xs:complexType>
</xs:schema>
XSDValidator.java
import java.io.File;
import java.io.IOException;
import javax.xml.XMLConstants;
import javax.xml.transform.stream.StreamSource;
import javax.xml.validation.Schema;
import javax.xml.validation.SchemaFactory;
import javax.xml.validation.Validator;
import org.xml.sax.SAXException;
public class XSDValidator {
public static void main(String[] args) {
if(args.length !=2){
System.out.println("Usage : XSDValidator <file-name.xsd> <file-name.xml>" );
} else {
boolean isValid = validateXMLSchema(args[0],args[1]);
if(isValid){
System.out.println(args[1] + " is valid against " + args[0]);
} else {
System.out.println(args[1] + " is not valid against " + args[0]);
}
}
}
public static boolean validateXMLSchema(String xsdPath, String xmlPath){
try {
SchemaFactory factory =
SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
Schema schema = factory.newSchema(new File(xsdPath));
Validator validator = schema.newValidator();
validator.validate(new StreamSource(new File(xmlPath)));
} catch (IOException e){
System.out.println("Exception: "+e.getMessage());
return false;
} catch(SAXException e1){
System.out.println("SAX Exception: "+e1.getMessage());
return false;
}
return true;
}
}
एक्सएमएल के खिलाफ एक्सएमएल को मान्य करने के लिए कदम
की प्रतिलिपि बनाएँ XSDValidator.java किसी भी स्थान पर फ़ाइल, कहते हैं E: > जावा
की प्रतिलिपि बनाएँ students.xml उसी स्थान पर E: > java
की प्रतिलिपि बनाएँ students.xsd उसी स्थान पर E: > java
संकलन XSDValidator.javaकंसोल का उपयोग करना। सुनिश्चित करें कि आपके पास JDK 1.5 है जो आपकी मशीन पर स्थापित है और क्लासपैथ कॉन्फ़िगर किए गए हैं। JAVA का उपयोग करने के तरीके के विवरण के लिए, JAVA ट्यूटोरियल देखें
E:\java\javac XSDValidator.java
निष्पादित XSDValidator साथ में students.xsd तथा students.xml तर्क के रूप में पारित किया।
E:\java\java XSDValidator students.xsd students.xml
आउटपुट सत्यापित करें
आप निम्न परिणाम देखेंगे -
students.xml is valid against students.xsd
इस अध्याय में, हम सरल प्रकार देखेंगे जिसे XSD परिभाषित करता है।
क्र.सं. | सरल प्रकार और विवरण |
---|---|
1 | तत्त्व सरल तत्व में केवल पाठ हो सकता है। इसमें कोई अन्य तत्व नहीं हो सकता है। |
2 | गुण गुण अपने आप में एक प्रकार है और इसका उपयोग कॉम्प्लेक्स एलीमेंट में किया जाता है। |
3 | बंधन प्रतिबंध एक XML तत्व के स्वीकार्य मूल्यों को परिभाषित करता है। |
कॉम्प्लेक्स एलीमेंट एक एक्सएमएल तत्व है जिसमें अन्य तत्व और / या विशेषताएँ हो सकती हैं। हम दो तरीकों से एक जटिल तत्व बना सकते हैं -
एक जटिल प्रकार को परिभाषित करें और फिर एक तत्व का उपयोग करें type गुण
सीधे नामकरण द्वारा एक जटिल प्रकार को परिभाषित करें
एक जटिल प्रकार को परिभाषित करें और फिर टाइप विशेषता का उपयोग करके एक तत्व बनाएं।
<xs:complexType name = "StudentType">
<xs:sequence>
<xs:element name = "firstname" type = "xs:string"/>
<xs:element name = "lastname" type = "xs:string"/>
<xs:element name = "nickname" type = "xs:string"/>
<xs:element name = "marks" type = "xs:positiveInteger"/>
</xs:sequence>
<xs:attribute name = 'rollno' type = 'xs:positiveInteger'/>
</xs:complexType>
<xs:element name = 'student' type = 'StudentType' />
सीधे नामकरण द्वारा एक जटिल प्रकार को परिभाषित करें।
<xs:element name = "student">
<xs:complexType>
<xs:sequence>
<xs:element name = "firstname" type = "xs:string"/>
<xs:element name = "lastname" type = "xs:string"/>
<xs:element name = "nickname" type = "xs:string"/>
<xs:element name = "marks" type = "xs:positiveInteger"/>
</xs:sequence>
<xs:attribute name = 'rollno' type = 'xs:positiveInteger'/>
</xs:complexType>
<xs:element>
निम्नलिखित कॉम्प्लेक्स प्रकारों की सूची है जो XSD का समर्थन करता है।
क्र.सं. | सरल प्रकार और विवरण |
---|---|
1 | खाली जटिल खाली परिसर प्रकार तत्व में केवल विशेषताएँ हो सकती हैं लेकिन कोई सामग्री नहीं। |
2 | तत्व केवल तत्व-केवल जटिल प्रकार तत्व में केवल तत्व शामिल हो सकते हैं |
3 | सिर्फ टेक्स्ट पाठ-केवल जटिल प्रकार तत्व में केवल विशेषता और पाठ हो सकते हैं। |
4 | मिश्रित मिश्रित जटिल प्रकार के तत्व में तत्व, विशेषता और पाठ शामिल हो सकते हैं। |
5 | संकेतक एक XML दस्तावेज़ में तत्वों को कैसे व्यवस्थित किया जाना है, इस पर संकेतक नियंत्रण करते हैं। |
6 | <किसी भी> <Any> तत्व का उपयोग उन तत्वों के लिए किया जाता है जो स्कीमा द्वारा परिभाषित नहीं होते हैं |
7 | <AnyAttribute> विशेषता का उपयोग उस विशेषता के लिए किया जाता है जो स्कीमा द्वारा परिभाषित नहीं होती है। |
XML दस्तावेज़ों में वर्णों का प्रतिनिधित्व करने के लिए स्ट्रिंग डेटा प्रकारों का उपयोग किया जाता है।
<xs: स्ट्रिंग> डेटा प्रकार
<Xs: स्ट्रिंग> डेटा प्रकार वर्ण, लाइन फ़ीड, कैरिज रिटर्न और टैब वर्ण ले सकता है। एक्सएमएल प्रोसेसर अंतरिक्ष में सामग्री के साथ लाइन फीड, कैरिज रिटर्न और टैब वर्णों को प्रतिस्थापित नहीं करता है और उन्हें बरकरार रखता है। उदाहरण के लिए, प्रदर्शन के दौरान कई स्थान या टैब संरक्षित हैं।
<xs: स्ट्रिंग> उदाहरण
Xsd में तत्व की घोषणा -
<xs:element name = "name" type = "xs:string"/>
Xml में तत्व का उपयोग -
<name>Dinkar</name>
<name>Dinkar Kad</name>
<xs: टोकन> डेटा प्रकार
<Xs: टोकन> डेटा प्रकार <string> डेटा प्रकार से लिया गया है और वर्ण, लाइन फ़ीड, गाड़ी रिटर्न, और टैब वर्ण ले सकता है। XML प्रोसेसर लाइन फीड्स, टैब, कैरिज रिटर्न, लीडिंग और ट्रेलिंग स्पेस और कई स्पेस को हटा देगा।
<xs: टोकन> उदाहरण
Xsd में तत्व की घोषणा -
<xs:element name = "name" type = "xs:token"/>
Xml में तत्व का उपयोग -
<name>Dinkar</name>
<name>Dinkar Kad</name>
स्ट्रिंग डेटा प्रकार
निम्नलिखित आमतौर पर उपयोग किए जाने वाले डेटा प्रकारों की सूची है जो <string> डेटा प्रकार से ली गई हैं।
क्र.सं. | नाम और विवरण |
---|---|
1 | ID XML में ID विशेषता का प्रतिनिधित्व करता है और स्कीमा विशेषताओं में उपयोग किया जाता है। |
2 | IDREF XML में IDREF विशेषता का प्रतिनिधित्व करता है और स्कीमा विशेषताओं में उपयोग किया जाता है। |
3 | language एक मान्य भाषा आईडी का प्रतिनिधित्व करता है |
4 | Name एक मान्य XML नाम का प्रतिनिधित्व करता है |
5 | NMTOKEN XML में एक NMTOKEN विशेषता का प्रतिनिधित्व करता है और स्कीमा विशेषताओं में उपयोग किया जाता है। |
6 | normalizedString एक स्ट्रिंग का प्रतिनिधित्व करता है जिसमें लाइन फीड, कैरिज रिटर्न या टैब नहीं होते हैं। |
7 | string एक स्ट्रिंग का प्रतिनिधित्व करता है जिसमें लाइन फीड, कैरिज रिटर्न या टैब शामिल हो सकते हैं। |
8 | token एक स्ट्रिंग का प्रतिनिधित्व करता है जिसमें लाइन फीड, कैरिज रिटर्न, टैब, लीडिंग या ट्रेलिंग स्पेस या कई स्पेस नहीं होते हैं |
प्रतिबंध
निम्नलिखित प्रकार के प्रतिबंधों का उपयोग स्ट्रिंग डेटा प्रकारों के साथ किया जा सकता है -
- enumeration
- length
- maxLength
- minLength
- pattern
- whiteSpace
XML दस्तावेज़ों में दिनांक और समय का प्रतिनिधित्व करने के लिए दिनांक और समय डेटा प्रकार का उपयोग किया जाता है।
<xs: दिनांक> डेटा प्रकार
YYYY-MM-DD प्रारूप में दिनांक का प्रतिनिधित्व करने के लिए <xs: date> डेटा प्रकार का उपयोग किया जाता है।
YYYY - वर्ष का प्रतिनिधित्व करता है
MM - महीने का प्रतिनिधित्व करता है
DD - दिन का प्रतिनिधित्व करता है
<xs: दिनांक> उदाहरण
XSD में तत्व की घोषणा -
<xs:element name = "birthdate" type = "xs:date"/>
XML में तत्व का उपयोग -
<birthdate>1980-03-23</birthdate>
<xs: समय> डेटा प्रकार
<Xs: time> डेटा प्रकार का उपयोग hh: mm: ss प्रारूप में समय को दर्शाने के लिए किया जाता है।
hh - घंटों का प्रतिनिधित्व करता है
mm - मिनट का प्रतिनिधित्व करता है
ss - सेकंड का प्रतिनिधित्व करता है
<xs: समय> उदाहरण
XSD में तत्व की घोषणा -
<xs:element name = "startTime" type = "xs:time"/>
XML में तत्व का उपयोग -
<startTime>10:20:15</startTime>
<xs: डेटाटाइम> डेटा प्रकार
YYYY-MM-DDThh में <xs: डेटाटाइम> डेटा प्रकार का उपयोग दिनांक और समय का प्रतिनिधित्व करने के लिए किया जाता है: मिमी: एसएस प्रारूप।
YYYY - वर्ष का प्रतिनिधित्व करता है
MM - महीने का प्रतिनिधित्व करता है
DD - दिन का प्रतिनिधित्व करता है
T - समय अनुभाग की शुरुआत का प्रतिनिधित्व करता है
hh - घंटों का प्रतिनिधित्व करता है
mm - मिनट का प्रतिनिधित्व करता है
ss - सेकंड का प्रतिनिधित्व करता है
<xs: डेटाटाइम> उदाहरण
XSD में तत्व की घोषणा -
<xs:element name = "startTime" type = "xs:datetime"/>
XML में तत्व का उपयोग -
<startTime>1980-03-23T10:20:15</startTime>
<xs: अवधि> डेटा प्रकार
<Xs: अवधि> डेटा प्रकार का उपयोग PnYnMnDTnHnMnS प्रारूप में समय अंतराल का प्रतिनिधित्व करने के लिए किया जाता है। P को छोड़कर प्रत्येक घटक वैकल्पिक है।
P - तारीख अनुभाग की शुरुआत का प्रतिनिधित्व करता है
nY - वर्ष का प्रतिनिधित्व करता है
nM - महीने का प्रतिनिधित्व करता है
nD - दिन का प्रतिनिधित्व करता है
T - समय अनुभाग की शुरुआत का प्रतिनिधित्व करता है
nH - घंटों का प्रतिनिधित्व करता है
nM - मिनट का प्रतिनिधित्व करता है
nS - सेकंड का प्रतिनिधित्व करता है
<xs: अवधि> उदाहरण
XSD में तत्व की घोषणा -
<xs:element name = "period" type = "xs:duration"/>
6 साल, 3 महीने, 10 दिन और 15 घंटे की अवधि का प्रतिनिधित्व करने के लिए xml में तत्व का उपयोग।
<period>P6Y3M10DT15H</period>
डेट डेटा प्रकार
निम्नलिखित आमतौर पर उपयोग किए जाने वाले डेटा प्रकारों की सूची है।
क्र.सं. | नाम और विवरण |
---|---|
1। | date दिनांक मान का प्रतिनिधित्व करता है |
2। | dateTime दिनांक और समय मान का प्रतिनिधित्व करता है |
3। | duration एक समय अंतराल का प्रतिनिधित्व करता है |
4। | gDay दिन के रूप में एक तारीख का एक हिस्सा प्रस्तुत करता है (डीडी) |
5। | gMonth महीने (MM) के रूप में दिनांक का एक भाग प्रस्तुत करता है |
6। | gMonthDay महीने और दिन (एमएम-डीडी) के रूप में एक तारीख का हिस्सा प्रस्तुत करता है |
7। | gYear वर्ष (YYYY) के रूप में दिनांक का एक भाग प्रस्तुत करता है |
8। | gYearMonth वर्ष और महीने (YYYY-MM) के रूप में एक तारीख का एक हिस्सा प्रस्तुत करता है |
9। | time एक समय मान का प्रतिनिधित्व करता है |
प्रतिबंध
निम्न प्रकार के प्रतिबंधों का उपयोग दिनांक डेटा प्रकारों के साथ किया जा सकता है -
- enumeration
- maxExclusive
- maxInclusive
- minExclusive
- minInclusive
- pattern
- whiteSpace
XML दस्तावेज़ों में संख्याओं का प्रतिनिधित्व करने के लिए संख्यात्मक डेटा प्रकारों का उपयोग किया जाता है।
<xs: दशमलव> डेटा प्रकार
संख्यात्मक मानों का प्रतिनिधित्व करने के लिए <xs: दशमलव> डेटा प्रकार का उपयोग किया जाता है। यह 18 अंकों तक दशमलव संख्या का समर्थन करता है।
<xs: दशमलव> उदाहरण
XSD में तत्व की घोषणा -
<xs:element name = "score" type = "xs:decimal"/>
XML में तत्व का उपयोग -
<score>9.12</score>
<xs: पूर्णांक> डेटा प्रकार
<Xs: पूर्णांक> डेटा प्रकार का उपयोग पूर्णांक मानों का प्रतिनिधित्व करने के लिए किया जाता है।
<xs: पूर्णांक> उदाहरण
XSD में तत्व की घोषणा -
<xs:element name = "score" type = "xs:integer"/>
XML में तत्व का उपयोग -
<score>9</score>
संख्यात्मक डेटा प्रकार
निम्नलिखित आमतौर पर उपयोग किए जाने वाले संख्यात्मक डेटा प्रकारों की सूची है।
क्र.सं. | नाम और विवरण |
---|---|
1। | byte एक हस्ताक्षरित 8 बिट पूर्णांक |
2। | decimal एक दशमलव मान |
3। | int एक हस्ताक्षरित 32 बिट पूर्णांक |
4। | integer एक पूर्णांक मान |
5। | long एक हस्ताक्षरित 64 बिट पूर्णांक |
6। | negativeInteger पूर्णांक जिसमें केवल ऋणात्मक मान होते हैं (.., - 2, -1) |
7। | nonNegativeInteger एक पूर्णांक जिसमें केवल गैर-नकारात्मक मान हैं (0,1,2, ..) |
8। | nonPositiveInteger एक पूर्णांक जिसमें केवल गैर-सकारात्मक मान होते हैं (.., - 2, -1,0) |
9। | positiveInteger पूर्णांक केवल धनात्मक मान (1,2, ..) |
10। | short एक हस्ताक्षरित 16 बिट पूर्णांक |
1 1। | unsignedLong एक अहस्ताक्षरित 64 बिट पूर्णांक |
12। | unsignedInt एक अहस्ताक्षरित 32 बिट पूर्णांक |
13। | unsignedShort एक अहस्ताक्षरित 16 बिट पूर्णांक |
14। | unsignedByte एक अहस्ताक्षरित 8 बिट पूर्णांक |
प्रतिबंध
निम्न प्रकार के प्रतिबंधों का उपयोग दिनांक डेटा प्रकारों के साथ किया जा सकता है -
- enumeration
- fractionDigits
- maxExclusive
- maxInclusive
- minExclusive
- minInclusive
- pattern
- totalDigits
- whiteSpace
XSD में कुछ अन्य महत्वपूर्ण डेटा प्रकार हैं, जैसे कि Boolean, binary, तथा anyURI.
<xs: बूलियन> डेटा प्रकार
<Xs: बूलियन> डेटा प्रकार का उपयोग सही, गलत, 1 (सत्य के लिए) या 0 (गलत के लिए) मान का प्रतिनिधित्व करने के लिए किया जाता है।
<xs: बूलियन> उदाहरण
XSD में तत्व की घोषणा -
<xs:element name = "pass" type = "xs:boolean"/>
XML में तत्व का उपयोग -
<pass>false</pass>
बाइनरी डेटा प्रकार
बाइनरी डेटा प्रकारों का उपयोग बाइनरी मानों का प्रतिनिधित्व करने के लिए किया जाता है। दो बाइनरी प्रकार उपयोग में आम हैं।
base64Binary - बेस 64 एनकोडेड बाइनरी डेटा का प्रतिनिधित्व करता है
hexBinary - हेक्साडेसिमल एनकोडेड बाइनरी डेटा का प्रतिनिधित्व करता है
<xs: हेक्सबिनरी> उदाहरण
XSD में तत्व की घोषणा -
<xs:element name = "blob" type = "xs:hexBinary"/>
XML में तत्व का उपयोग -
<blob>9FEEF</blob>
<xs: anyURI> डेटा प्रकार
URI का प्रतिनिधित्व करने के लिए <xs: anyURI> डेटा प्रकार का उपयोग किया जाता है।
<xs: anyURI> उदाहरण
XSD में तत्व की घोषणा -
<xs:attribute name = "resource" type = "xs:anyURI"/>
XML में तत्व का उपयोग -
<image resource = "http://www.tutorialspoint.com/images/smiley.jpg" />
संख्यात्मक डेटा प्रकार
निम्नलिखित आमतौर पर उपयोग किए जाने वाले संख्यात्मक डेटा प्रकारों की सूची है।
क्र.सं. | नाम और विवरण |
---|---|
1। | byte एक हस्ताक्षरित 8 बिट पूर्णांक |
2। | decimal एक दशमलव मान |
3। | int एक हस्ताक्षरित 32 बिट पूर्णांक |
4। | integer एक पूर्णांक मान |
5। | long एक हस्ताक्षरित 64 बिट पूर्णांक |
6। | negativeInteger पूर्णांक जिसमें केवल ऋणात्मक मान होते हैं (.., - 2, -1) |
7। | nonNegativeInteger एक पूर्णांक जिसमें केवल गैर-नकारात्मक मान हैं (0,1,2, ..) |
8। | nonPositiveInteger एक पूर्णांक जिसमें केवल गैर-सकारात्मक मान होते हैं (.., - 2, -1,0) |
9। | positiveInteger पूर्णांक केवल धनात्मक मान (1,2, ..) |
10। | short एक हस्ताक्षरित 16 बिट पूर्णांक |
1 1। | unsignedLong एक अहस्ताक्षरित 64 बिट पूर्णांक |
12। | unsignedInt एक अहस्ताक्षरित 32 बिट पूर्णांक |
13। | unsignedShort एक अहस्ताक्षरित 16 बिट पूर्णांक |
14। | unsignedByte एक अहस्ताक्षरित 8 बिट पूर्णांक |
प्रतिबंध
बुलियन डेटा प्रकार को छोड़कर विविध प्रकार के प्रतिबंधों के साथ निम्नलिखित प्रकार के प्रतिबंधों का उपयोग किया जा सकता है -
- enumeration
- length
- maxLength
- minLength
- pattern
- whiteSpace