XSD - Übersicht

Die XML-Schemadefinition, allgemein bekannt als XSD, ist eine Möglichkeit, die XML-Sprache genau zu beschreiben. XSD überprüft die Gültigkeit der Struktur und des Vokabulars eines XML-Dokuments anhand der grammatikalischen Regeln der entsprechenden XML-Sprache.

Ein XML-Dokument kann definiert werden als -

  • Well-formed- Wenn das XML-Dokument allen allgemeinen XML-Regeln entspricht, z. B. Tags müssen ordnungsgemäß verschachtelt sein, öffnende und schließende Tags müssen ausgeglichen sein und leere Tags müssen mit '/>' enden, wird es als wohlgeformt bezeichnet .

    OR

  • Valid- Ein XML-Dokument gilt als gültig, wenn es nicht nur wohlgeformt ist , sondern auch der verfügbaren XSD entspricht, die unter anderem angibt, welche Tags verwendet werden, welche Attribute diese Tags enthalten können und welche Tags in anderen Tags vorkommen können .

Das folgende Diagramm zeigt, wie XSD zum Strukturieren von XML-Dokumenten verwendet wird.

Hier ist ein einfacher XSD-Code. Schau es dir an.

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

Eigenschaften

Hier ist eine Liste einiger der beliebtesten Funktionen von XSD -

  • XSDs können für zukünftige Ergänzungen erweiterbar sein.
  • XSD ist umfangreicher und leistungsfähiger als DTD.
  • XSD ist in XML geschrieben.
  • XSD unterstützt Datentypen.
  • XSD unterstützt Namespaces.
  • XSD ist eine W3C-Empfehlung.