Latest web development tutorials

XML Schema définit / Facets

Limited (restriction) est utilisé pour définir l'élément XML acceptable ou attribuer des valeurs. Pour définir des éléments XML sont appelés facette.


valeurs limites

L'exemple suivant définit un élément avec un «âge» défini et nommé de. La valeur de l'âge ne peut pas être inférieure à 0 ou supérieure à 120:

<xs:element name="age">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="120"/>
</xs:restriction>
</xs:simpleType>
</xs:element>


Définition d'un ensemble de valeurs

Pour le contenu de l'élément XML est limitée à un ensemble de valeurs acceptables, nous devrions utiliser la contrainte d'énumération (contrainte d'énumération).

L'exemple suivant définit un élément avec un nom «voiture» est qualifiée. Seules les valeurs acceptables sont: Audi, Golf, BMW:

<xs:element name="car">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Audi"/>
<xs:enumeration value="Golf"/>
<xs:enumeration value="BMW"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

L'exemple ci-dessus peut également être écrit comme:

<xs:element name="car" type="carType"/>

<xs:simpleType name="carType">
<xs:restriction base="xs:string">
<xs:enumeration value="Audi"/>
<xs:enumeration value="Golf"/>
<xs:enumeration value="BMW"/>
</xs:restriction>
</xs:simpleType>

Remarque: Dans ce cas, le type "carType" peut être utilisé par d' autres éléments , car il ne fait pas partie de l'élément "voiture".


Une série de valeur limitée

Pour limiter le contenu d'un élément XML est défini comme une série de chiffres ou de lettres qui peuvent être utilisés, nous voulons utiliser le confinement de mode (contrainte de motif).

L'exemple suivant définit un élément avec un appelé "lettre" définie de. Les seules valeurs acceptables en minuscules lettres a - z one:

<xs:element name="letter">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[a-z]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

L'exemple suivant définit un élément avec définies appelées "initiales" de. Les valeurs acceptables sont des lettres majuscules A - Z dans laquelle trois d'entre eux:

<xs:element name="initials">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Z][A-Z][A-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

L'exemple suivant définit également un élément avec définies appelées «initiales» de. Les valeurs acceptables sont des lettres majuscules ou minuscules a - z trois d'entre eux:

<xs:element name="initials">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[a-zA-Z][a-zA-Z][a-zA-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

L'exemple qui suit définit un élément avec un choix limité appelée «valeur acceptable les lettres x, y ou z en:

<xs:element name="choice">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[xyz]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

L'exemple suivant définit un élément avec un nom "prodid" qualifié. Les valeurs acceptables sont une séquence de cinq chiffres, et chaque numéro dans la gamme de 0-9:

<xs:element name="prodid">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9][0-9][0-9][0-9][0-9]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>


Une série de valeurs définies pour les autres

L'exemple suivant définit un élément avec un appelé "lettre" définie de. Les valeurs acceptables sont a - z zéro ou plusieurs lettres:

<xs:element name="letter">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="([a-z])*"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

L'exemple suivant définit un élément avec un appelé "lettre" définie de. Les valeurs acceptables sont une ou plusieurs paires de lettres, chaque paire se compose d'une lettre minuscule suivie par une lettre majuscule. Par exemple, "Stop" va valider ce modèle, mais le "Stop", "STOP" ou "stop" ne peut être vérifiée:

<xs:element name="letter">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="([a-z][A-Z])+"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

L'exemple suivant définit un élément avec un appelé «genre» défini est. Les valeurs acceptables sont de sexe masculin ou féminin:

<xs:element name="gender">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="male|female"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

L'exemple suivant définit un élément avec un nom "mot de passe" qualifié. Les valeurs acceptables sont une rangée de caractères est composé de huit caractères, ces caractères doivent être en majuscules ou minuscules a - z ou sera numérique 0 à -9:

<xs:element name="password">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[a-zA-Z0-9]{8}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>


caractère Blank défini

Pour spécifier le blanc des espaces (caractères blancs) approche, nous avons besoin d'utiliser whiteSpace limitée.

L'exemple suivant définit un élément nommé «adresse» avec une définition. Cette whiteSpace Limited est réglé sur «préserver», ce qui signifie que le processeur XML ne supprimera pas les caractères blancs:

<xs:element name="address">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:whiteSpace value="preserve"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

Cet exemple définit également un élément nommé «adresse» avec une définition. Cette whiteSpace Limited est réglé sur "remplacer", ce qui signifie que le processeur XML va supprimer tous les caractères blancs (sauts de ligne, retours chariot, les espaces et les onglets):

<xs:element name="address">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:whiteSpace value="replace"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

Cet exemple définit également un élément nommé «adresse» avec une définition. Cette whiteSpace Limited est réglé sur «l'effondrement», ce qui signifie que le processeur XML va supprimer tous les caractères blancs (les sauts de ligne, retours chariot, les espaces et les onglets sont remplacés par des espaces, avant et arrière espaces seront supprimés, et plusieurs espaces consécutifs sont réduits à un seul espace):

<xs:element name="address">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:whiteSpace value="collapse"/>
</xs:restriction>
</xs:simpleType>
</xs:element>


De longueur définie

Pour limiter la longueur des valeurs d'éléments, nous avons besoin d'utiliser la longueur, maxLength et minLength limitées.

Les éléments avec un "mot de passe" défini et nommé dans ce cas est défini. Sa valeur doit être exactement huit caractères:

<xs:element name="password">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:element>

Cet exemple définit également un élément avec un nom "mot de passe" qualifié. Sa valeur est un minimum de 5 caractères et un maximum de huit caractères:

<xs:element name="password">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="5"/>
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:element>


types de données définies

limité description
énumération Définir une liste de valeurs acceptables
fractionDigits Il définit le nombre maximum autorisé de décimales. Il doit être supérieur à 0.
longueur Définir le nombre exact de caractères autorisés ou les éléments de liste. Il doit être supérieur ou égal à 0.
maxExclusive Définir la valeur limite supérieure. valeur autorisée doit être inférieure à cette valeur.
maxInclusive Définir la valeur limite supérieure. Valeur autorisée doit être inférieure ou égale à cette valeur.
maxLength Définit le nombre maximum de caractères autorisés ou les éléments de liste. Il doit être supérieur ou égal à 0.
minExclusive La valeur limite inférieure est définie. La valeur doit être autorisée supérieure à cette valeur.
minInclusive La valeur limite inférieure est définie. moût de valeur admis supérieure ou égale à cette valeur.
minLength Définit le nombre minimum autorisé de caractères ou éléments de liste. Il doit être supérieur ou égal à 0.
motif Définir la séquence exacte des caractères acceptables.
totalDigits Il définit les chiffres arabes précision chiffres autorisés. Il doit être supérieur à 0.
whiteSpace La définition de caractères d'espace blanc (sauts de ligne, retours chariot, les tabulations et les espaces) sont manipulés.