Élément simple XSD

XML Schema peut définir les éléments des fichiers XML.

Les éléments simples sont ceux qui ne contiennent que du texte. Ils ne contiennent pas d'autres éléments ou attributs.

Qu'est-ce qu'un élément simple ?

Les éléments simples sont ceux qui ne contiennent que du texte. Ils ne contiennent pas d'autres éléments ou attributs.

Cependant, la restriction "ne contient que du texte" peut facilement prêter à confusion. Le texte peut être de nombreux types. Il peut s'agir d'un type inclus dans la définition XML Schema (booléen, chaîne, données, etc.), ou il peut s'agir d'un type personnalisé que vous avez défini vous-même.

Vous pouvez également ajouter des restrictions (c'est-à-dire des facettes) aux types de données pour limiter son contenu, ou vous pouvez exiger que les données correspondent à un schéma spécifique.

Définir des éléments simples

La syntaxe de définition des éléments simples :

<xs:element name="xxx" type="yyy"/>

Ici, xxx fait référence au nom de l'élément, yyy au type de données de l'élément. XML Schema possède de nombreux types de données intégrés.

Les types les plus courants sont :

  • xs:string
  • xs:decimal
  • xs:integer
  • xs:boolean
  • xs:date
  • xs:time

Exemple :

Voici quelques éléments XML :

<lastname>Smith</lastname>
<age>28</age>
<dateborn>1980-03-27</dateborn>

Voici la définition des éléments simples correspondants :

<xs:element name="lastname" type="xs:string"/>
<xs:element name="age" type="xs:integer"/>
<xs:element name="dateborn" type="xs:date"/>

Les valeurs par défaut et fixes des éléments simples

Les éléments simples peuvent avoir une valeur par défaut ou fixe spécifiée.

Lorsque aucune autre valeur n'est définie, la valeur par défaut est automatiquement attribuée à l'élément.

Dans l'exemple suivant, la valeur par défaut est "red" :

<xs:element name="color" type="xs:string" default="red"/>

La valeur fixe est également automatiquement attribuée à l'élément, et vous ne pouvez pas définir une autre valeur.

Dans l'exemple suivant, la valeur fixe est "red" :

<xs:element name="color" type="xs:string" fixed="red"/>