Types simples

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).