Élément <xsd:unique>
Spécifie qu'un attribut ou qu'une valeur (ou une combinaison d'attributs et de valeurs) d'élément doit être unique dans l'étendue spécifiée. La valeur doit être unique ou null.
<unique
id = ID
name = NCName
{any attributes with non-schema Namespace}...>
Content: (annotation?, (selector, field+))
</unique>
Attributs
id
ID de cet élément. La valeur id doit être du type ID et unique dans le document contenant cet élément.Facultatif.
name
Nom de l'élément unique. Ce nom doit être un NCName, comme défini dans la spécification sur les espaces de noms XML.Le nom doit être unique dans un jeu de contraintes d'identité.
Obligatoire.
Informations sur l'élément
Nombre d'occurrences |
Une |
Éléments parents |
|
Contenu |
Remarques
L'élément unique doit contenir, dans l'ordre, les éléments suivants.
selector |
L'élément selector contient une expression XPath (XML Path language) spécifiant l'ensemble d'éléments dans lequel les valeurs spécifiées par les éléments field doivent être uniques. Il ne peut exister qu'un seul élément selector. |
field |
Chaque élément field contient une expression XPath spécifiant les valeurs (d'attribut ou d'élément) qui doivent être uniques pour l'ensemble d'éléments spécifiés par l'élément selector. En présence de plusieurs éléments field, leur combinaison doit être unique. Dans ce cas, les valeurs d'un élément field unique peuvent ou non être uniques pour les éléments sélectionnés, mais la combinaison de tous les champs doit être unique. Il doit exister au moins un élément field. |
Exemple
L'exemple suivant définit un schéma avec un élément racine ordersByCustomer, qui peut contenir une séquence illimitée d'éléments customerOrders. Dans l'élément ordersByCustomer, l'élément unique spécifie que l'attribut customerID doit être unique dans tous les customerOrders.
Autres ressources
Pour plus d'informations, consultez le document du W3C sur les schémas XML, notamment le tome 1 relatif aux structures, à l'adresse www.w3.org/TR/2001/REC-xmlschema-1-20010502/\#element-all.