XSD - Aperçu

La définition de schéma XML, communément appelée XSD, est un moyen de décrire précisément le langage XML. XSD vérifie la validité de la structure et du vocabulaire d'un document XML par rapport aux règles grammaticales du langage XML approprié.

Un document XML peut être défini comme -

  • Well-formed- Si le document XML adhère à toutes les règles XML générales telles que les balises doivent être correctement imbriquées, les balises d'ouverture et de fermeture doivent être équilibrées et les balises vides doivent se terminer par '/>', alors il est appelé comme bien formé .

    OR

  • Valid- Un document XML dit valide lorsqu'il est non seulement bien formé , mais il est également conforme au XSD disponible qui spécifie les balises qu'il utilise, les attributs que ces balises peuvent contenir et les balises pouvant apparaître à l'intérieur d'autres balises, entre autres propriétés .

Le diagramme suivant montre comment XSD est utilisé pour structurer des documents XML -

Voici un simple code XSD. Jetez un coup d'oeil.

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

traits

Voici une liste de certaines des fonctionnalités populaires de XSD -

  • Les XSD peuvent être extensibles pour de futurs ajouts.
  • XSD est plus riche et plus puissant que DTD.
  • XSD est écrit en XML.
  • XSD prend en charge les types de données.
  • XSD prend en charge les espaces de noms.
  • XSD est la recommandation du W3C.