Les déclarations d’élément de schéma XML peuvent être de types simples ou complexes. Les éléments qui ne contiennent pas d’autres éléments ou attributs sont déclarés de type simple dans le schéma XML. Les déclarations d’attribut peuvent être de types simples. En règle générale, les éléments de types et d’attributs simples sont associés à des champs dans Designer. Le type du champ dépend de la valeur du type simple.
Types simples intégrés
Un schéma XML définit un certain nombre de types simples intégrés.
Les types suivants sont associés à un objet de champ de texte qui est un objet contenant du texte brut :
-
string
-
normalizedString
-
token
-
Nom
-
NCName
-
QName
-
language
Les types suivants sont associés à un objet de champ numérique :
-
float
-
double
-
decimal
-
integer
-
long
-
int
-
short
-
byte
-
positiveInteger
-
nonPositiveInteger
-
negativeInteger
-
nonNegativeInteger
-
unsignedLong
-
unsignedInt
-
unsignedShort
-
unsignedByte
Les types suivants sont associés à des dates et des heures :
Date et heure
|
Type d’objet
|
duration
|
Champ de texte modifiable
|
dateTime
|
Champ Date/Heure. Le type de contrôle est Date et Heure.
|
date
|
Champ Date/Heure. Le type de contrôle est Date.
|
time
|
Champ Date/Heure. Le type de contrôle est Time.
|
gYear
|
Champ de texte avec une clause d’image.
|
gYearMonth
|
Champ de texte avec une clause d’image.
|
gMonth
|
Champ de texte avec une clause d’image.
|
gMonthDay
|
Champ de texte avec une clause d’image.
|
gDay
|
Champ de texte avec une clause d’image.
|
Les types hérités suivants sont associés à un objet Champ de texte :
ID
IDREF
IDREFS
ENTITY
ENTITIES
NMTOKEN
NMTOKENS
NOTATION
Le tableau ci-dessous décrit à quoi correspondent les autres types :
Autre
|
Type d’objet
|
boolean
|
Case à cocher
|
hexBinary
|
Image statique
|
base64Binary
|
Image statique
|
anyURI
|
Champ de texte
|
Types simples restreints
Grâce aux restrictions de schéma XML, il est possible d’obtenir de nouveaux types simples à partir des types simples. La présente rubrique décrit comment ces restrictions peuvent être associées à des conceptions de formulaire.
-
Facettes d’énumération
-
Une déclaration d’élément ou d’attribut de schéma XML de n’importe quel type, qui déclare une ou plusieurs valeurs énumérées, génère un objet Liste déroulante plutôt que le champ par défaut associé au type de base de la déclaration, comme l’illustre l’exemple suivant :
<xsd:element name="Colors">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:enumeration value="red"/>
<xsd:enumeration value="green"/>
<xsd:enumeration value="blue"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
<xsd:element>
Les valeurs énumérées sont stockées en tant qu’éléments de la liste déroulante.
-
Facettes de borne, de taille et de précision
-
Lorsque cela est possible, les facettes de restriction qui gèrent les bornes (minInclusive, minExclusive, maxInclusive et maxExclusive), les tailles (length, minLength et maxLength) et la précision (totalDigits et fractionDigits) sont associées à des propriétés d’objets générés. Autrement, elles servent à générer des scripts de validation. Voici deux exemples :
-
La facette maxLength sert à définir les propriétés maxChars de la valeur de texte :
<field><value><text maxChars="100"/></value></field>
-
La facette fractionDigits sert à définir la propriété fracDigits de la valeur décimale :
<field><value><decimal fracDigits="3"/></value></field>
Types de liste et d’union
Les types de liste permettent de définir des types composés de listes de valeurs simples séparées par des blancs. Les éléments et les attributs de type liste sont associés à des objets de champ de texte.
Les types d’union sont des types dont les diverses valeurs permises proviennent de l’union de plusieurs ensembles de valeurs. Les différents ensembles ne sont pas nécessairement du même type de base. En règle générale, les types d’union sont associés à des objets de champ de texte. Cependant, lorsque tous les ensembles de l’union sont du même type, l’association est la même que celle des types qui utilisent un de ces ensembles (c’est-à-dire que l’union de deux ensembles de valeurs énumérées génère une liste déroulante comportant toutes les valeurs de l’union).
|
|
|