Guide de référence rapide W3C XML Schema
Eric van der Vlist,
Dyomedea (vdv@dyomedea.com).
19 décembre 2000
Cet article a été publié sur XML.com sous le titre "W3C XML Schema Structures Reference".
Référence rapide
Cette référence a été établie en utilisant la spécification W3C XML Schema Candidat à Recommandation du 24 Octobre 2000. Des liens sur les documents d'origine sont donnés pour chaque élément (identifés "ref" après chaque nom d'élément).
Espaces de noms:
- http://www.w3.org/2000/10/XMLSchema
Espace de nom pour les schémas W3C XML Schema eux-mêmes. Espace de nom par défaut (sans préfixe) dans cette référence.
- http://www.w3.org/2000/10/XMLSchema-instance
Espace de nom à utiliser pour les extensions W3C XML Schema placées dans les documents. Identifiée dans ce document par le préfixe "xsi".
Attributs utilisables dans les documents:
- xsi:noNamespaceSchemaLocation
URI d'un schéma W3C XML Schema sans espace de nom pouvant être utilisé pour ce document.
- xsi:null
La valeur de l'élément est nulle.
- xsi:schemaLocation
URI d'un schéma W3C XML Schema avec espace de nom pouvant être utilisé pour ce document.
- xsi:type
Déclaration dans un document d'un type de données W3C XML Schema.
Elements:
-
all (ref)
Compositeur décrivant un groupe non ordonné d'éléments.
<all
id = ID >
Contenu: (annotation? , element*)
</all>
Peut être inclus dans: complexType, group
-
annotation (ref)
Information à l'usage de lecteurs humains ou électroniques.
<annotation
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (appinfo | documentation)*
</xsd:annotation>
Peut être inclus dans: all, any, anyAttribute, attribute, attributeGroup, choice, complexContent, complexType, duration, element, encoding, enumeration, extension, field, group, import, include, key, keyref, length, list, maxExclusive, maxInclusive, maxLength, minExclusive, minInclusive, minLength, notation, pattern, period, precision, redefine, restriction, scale, schema, selector, sequence, simpleContent, simpleType, union, unique
-
any (ref)
Joker pour remplacer n'importe quel élément.
<any
id = ID
maxOccurs = (nonNegativeInteger | unbounded) : 1
minOccurs = nonNegativeInteger : 1
namespace = ((##any | ##other)
| List of (uriReference | (##targetNamespace |
##local)) ) : ##any
processContents = (skip | lax | strict) : strict
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</any>
Peut être inclus dans: choice, sequence
-
anyAttribute (ref)
Joker pour remplacer n'importe quel attribut.
<anyAttribute
id = ID
namespace = ((##any | ##other) | List of
(uriReference | (##targetNamespace |
##local)) ) : ##any
processContents = (skip | lax | strict) : strict
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</anyAttribute>
Peut être inclus dans: attributeGroup, complexType, extension
-
appinfo (ref)
Information destinée à une application.
<appinfo
source = uriReference>
Contenu: ({any})*
</appinfo>
Peut être inclus dans: annotation
-
attribute (ref)
Déclaration ou référence à un attribut.
<attribute
form = (qualified | unqualified)
id = ID
name = NCName
ref = QName
type = QName
use = (prohibited | optional | required | default
| fixed) : optional
value = string
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? , (simpleType?))
</attribute>
Peut être inclus dans: attributeGroup, complexType, extension, schema
-
attributeGroup (ref)
Groupe d'attributs.
<attributeGroup
id = ID
name = NCName
ref = QName
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? , ((attribute
| attributeGroup)* , anyAttribute?))
</attributeGroup>
Peut être inclus dans: attributeGroup, complexType, extension, redefine, schema
-
choice (ref)
Compositeur pour un groupe d'éléments dans lequel un seul doit être présent.
<choice
id = ID
maxOccurs = (nonNegativeInteger | unbounded) : 1
minOccurs = nonNegativeInteger : 1
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? , (element
| group | choice
| sequence | any)*)
</choice>
Peut être inclus dans: choice, complexType, group, sequence
-
complexContent (ref)
Dérivation d'un type simple en modèle de contenu complexe.
<complexContent
id = ID
mixed = boolean
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? , (restriction
| extension))
</complexContent>
Peut être inclus dans: complexType
-
complexType (ref)
Définition ou référence à un type complexe.
<complexType
abstract = boolean : false
block = (#all | List of (extension | restriction))
final = (#all | List of (extension | restriction))
id = ID
mixed = boolean : false
name = NCName
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? ,
(simpleContent | complexContent
| ((group | all | choice |
sequence)? ,
((attribute | attributeGroup)* ,
anyAttribute?))))
</complexType>
Peut être inclus dans: element, redefine, schema
-
documentation (ref)
Documentation pour lecteur humain.
<documentation
source = uriReference
xml:lang = language>
Contenu: ({any})*
</documentation>
Peut être inclus dans: annotation
-
duration (ref)
Facette pour définir une durée.
<duration
id = ID
value = timeDuration
fixed = boolean : false
{tout attribut avec un espace de noms
autre que W3C XML Schema...}>
Contenu: (annotation?)
</duration>
Peut être inclus dans: restriction
-
element (ref)
Déclaration ou référence à un élément.
<element
abstract = boolean : false
block = (#all | List of (substitution | extension
| restriction))
default = string
final = (#all | List of (extension | restriction))
fixed = string
form = (qualified | unqualified)
id = ID
maxOccurs = (nonNegativeInteger | unbounded) : 1
minOccurs = nonNegativeInteger : 1
name = NCName
nullable = boolean : false
ref = QName
substitutionGroup = QName
type = QName
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? ,
((simpleType | complexType)? ,
(key | keyref | unique)*))
</element>
Peut être inclus dans: all, choice, schema, sequence
-
encoding (ref)
Facette pour définir l'encodage de champs binaires.
<encoding
id = ID
value = hex | base64
fixed = boolean : false
{tout attribut avec un espace de noms
autre que W3C XML Schema...}>
Contenu: (annotation?)
</encoding>
Peut être inclus dans: restriction
-
enumeration (ref)
Facette pour contraindre un type à appartenir à une liste de valeurs.
<enumeration
id = ID
value = string
fixed = boolean : false
{tout attribut avec un espace de noms
autre que W3C XML Schema...}>
Contenu: (annotation?)
</enumeration>
Peut être inclus dans: restriction
-
extension (ref)
Extension d'un type de données.
<extension
base = QName
id = ID
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? ,
((attribute | attributeGroup)* ,
anyAttribute?))
</extension>
Peut être inclus dans: complexContent, simpleContent
-
field (ref)
Définition du noeud à utiliser lors d'une contrainte d'unicité.
<field
id = ID
xpath = Expression XPath
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</field>
Peut être inclus dans: key, keyref, unique
-
group (ref)
Définition ou référence à un groupe d'éléments.
<group
id = ID
maxOccurs = (nonNegativeInteger | unbounded) : 1
minOccurs = nonNegativeInteger : 1
name = NCName
ref = QName
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? ,
(all | choice
| sequence)?)
</group>
Peut être inclus dans: choice, complexType, redefine, schema, sequence
-
import (ref)
Import d'un schéma W3C XML Schema pour un autre espace de noms.
<import
id = ID
namespace = uriReference
schemaLocation = uriReference
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</import>
Peut être inclus dans: schema
-
include (ref)
Inclusion d'un schéma W3C XML Schema pour le même espace de noms.
<include
id = ID
schemaLocation = uriReference
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</include>
Peut être inclus dans: schema
-
key (ref)
Définition d'une clé.
<key
id = ID
name = NCName
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? ,
(selector , field+))
</key>
Peut être inclus dans: element
-
keyref (ref)
Définition de la référence à une clé.
<keyref
id = ID
name = NCName
refer = QName
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? ,
(selector , field+))
</keyref>
Peut être inclus dans: element
-
length (ref)
Facette pour définir la longeur d'un type de données.
<length
id = ID
value = nonNegativeInteger
fixed = boolean : false
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</length>
Peut être inclus dans: restriction
-
list (ref)
Dérivation par liste.
<list
id = ID
itemType = QName
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? , simpleType?)
</list>
Peut être inclus dans: simpleType
-
maxExclusive (ref)
Facette pour définir une valeur maximum (borne exclue).
<maxExclusive
id = ID
value = string
fixed = boolean : false
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</maxExclusive>
Peut être inclus dans: restriction
-
maxInclusive (ref)
Facette pour définir une valeur maximum (borne incluse).
<maxInclusive
id = ID
value = string
fixed = boolean : false
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</maxInclusive>
Peut être inclus dans: restriction
-
maxLength (ref)
Facette pour définir une longuer maximum.
<maxLength
id = ID
value = string
fixed = boolean : false
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
<maxLength>
Peut être inclus dans: restriction
-
minExclusive (ref)
Facette pour définir une valeur minumum (borne exclue).
<minExclusive
id = ID
value = string
fixed = boolean : false
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</minExclusive>
Peut être inclus dans: restriction
-
minInclusive (ref)
Facette pour définir une valeur minumum (borne incluse).
<minInclusive
id = ID
value = string
fixed = boolean : false
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</minInclusive>
Peut être inclus dans: restriction
-
minLength (ref)
Facette pour définir une longueur minumum.
<minLength
id = ID
value = string
fixed = boolean : false
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
<minLength>
Peut être inclus dans: restriction
-
notation (ref)
Déclaration d'une notation.
<notation
id = ID
name = NCName
public = Identificateur public, per ISO 8879
system = uriReference
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</notation>
Peut être inclus dans: schema
-
pattern (ref)
Facette pour définir une contrainte par expression régulière.
<pattern
id = ID
value = string
fixed = boolean : false
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</pattern>
Peut être inclus dans: restriction
-
period (ref)
Facette pour définir une période.
<period
id = ID
value = timeDuration
fixed = boolean : false
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</period>
Peut être inclus dans: restriction
-
precision (ref)
Facette pour définir la précision d'un type numérique.
<precision
id = ID
value = nonNegativeInteger
fixed = boolean : false
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</precision>
Peut être inclus dans: restriction
-
redefine (ref)
Import d'un schéma W3C XML Schema pour le même espace de noms permettant une rédéfinition de déclarations.
<redefine
schemaLocation = uriReference
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation |
(attributeGroup | complexType
| group | simpleType))*
</redefine>
Peut être inclus dans: schema
-
restriction (ref)
Dérivation d'un type simple par restriction.
<restriction
id = ID
base = QName
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? , (simpleType? ,
(minExclusive | minInclusive
| maxExclusive | maxInclusive
| precision | scale
| length | minLength
| maxLength | encoding
| period | duration
| enumeration |
pattern)*))
</restriction>
Peut être inclus dans: complexContent, simpleContent, simpleType
-
scale (ref)
Facette pour définir l'échelle d'un type numérique.
<scale
id = ID
value = nonNegativeInteger
fixed = boolean : false
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</scale>
Peut être inclus dans: restriction
-
schema (ref)
Elément racine d'un schéma W3C XML Schema.
<schema
attributeFormDefault
= (qualified | unqualified) : unqualified
blockDefault
= (#all | List of (substitution | extension | restriction))
elementFormDefault
= (qualified | unqualified) : unqualified
finalDefault
= (#all | List of (extension | restriction))
id = ID
targetNamespace = uriReference
version = string
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: ((include | import
| redefine | annotation)* ,
((attribute | attributeGroup
| complexType | element
| group | notation
| simpleType) , annotation*)*)
</schema>
Peut être inclus dans:
-
selector (ref)
Définition du chemain XPath sélectionnant un élément lors d'une contrainte d'unicité.
<selector
id = ID
xpath = Expression XPath
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation?)
</selector>
Peut être inclus dans: key, keyref, unique
-
sequence (ref)
Compositeur définissant un groupe ordonné d'éléments.
<sequence
id = ID
maxOccurs = (nonNegativeInteger | unbounded) : 1
minOccurs = nonNegativeInteger : 1
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? , (element
| group | choice
| sequence | any)*)
</sequence>
Peut être inclus dans: choice, complexType, group, sequence
-
simpleContent (ref)
Déclaration de contenu simple pour un élément.
<simpleContent
id = ID
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? ,
(restriction | extension))
</simpleContent>
Peut être inclus dans: complexType
-
simpleType (ref)
Déclaration d'un type simple.
<simpleType
id = ID
name = NCName
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? ,
((list | restriction
| union)))
</simpleType>
Peut être inclus dans: attribute, element, list, redefine, restriction, schema, union
-
union (ref)
Dérivation de types simples par union.
<union
id = ID
memberTypes = List of QName
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? , (simpleType*))
</union>
Peut être inclus dans: simpleType
-
unique (ref)
Définition d'une contrainte d'unicité.
<unique
id = ID
name = NCName
{tout attribut avec un espace de noms autre
que W3C XML Schema ...}>
Contenu: (annotation? ,
(selector , field+))
</unique>
Peut être inclus dans: element
Copyright 2000,
Eric van der Vlist.
|