XSD - Sözdizimi

Bir XML XSD ayrı bir belgede tutulur ve ardından belge kullanmak için bir XML belgesine bağlanabilir.

Sözdizimi

Bir XSD'nin temel sözdizimi aşağıdaki gibidir -

<?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>

<Schema> Öğesi

Şema, XSD'nin temel öğesidir ve her zaman gereklidir.

<xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">

Yukarıdaki parça, şemada kullanılan öğelerin ve veri türlerinin şurada tanımlandığını belirtir: http://www.w3.org/2001/XMLSchema ad alanı ve bu öğeler / veri türleri önek olarak gelmelidir xs. Her zaman gereklidir.

targetNamespace = "http://www.tutorialspoint.com"

Yukarıdaki parça, bu şemada kullanılan öğelerin içinde tanımlandığını belirtir. http://www.tutorialspoint.comad alanı. İsteğe bağlıdır.

xmlns = "http://www.tutorialspoint.com"

Yukarıdaki parça, varsayılan ad alanının olduğunu belirtir http://www.tutorialspoint.com.

elementFormDefault = "qualified"

Yukarıdaki parça, bu şemada bildirilen herhangi bir öğenin herhangi bir XML Belgesinde kullanılmadan önce ad alanı nitelikli olması gerektiğini belirtir.

Şema Başvurusu

Aşağıdaki Referans Şemasına bir göz atın -

<?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"

Yukarıdaki parça, varsayılan ad alanı bildirimini belirtir. Bu ad alanı, şema doğrulayıcı tarafından kullanılır, tüm öğelerin bu ad alanının parçası olduğunu kontrol edin. İsteğe bağlıdır.

xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation = "http://www.tutorialspoint.com student.xsd">

XMLSchema örneği xsi'yi tanımladıktan sonra şunu kullanın: schemaLocationöznitelik. Bu özniteliğin, bir boşlukla ayrılmış olarak kullanılacak XML Şemasının ad alanı ve konumu olmak üzere iki değeri vardır. İsteğe bağlıdır.