Élément <xsd:schema>

Contient la définition d'un schéma.

<schema
  attributeFormDefault = (qualified | unqualified): unqualified
  blockDefault = (#all | List of (extension | restriction | substitution) : ''
  elementFormDefault = (qualified | unqualified): unqualified
  finalDefault = (#all | List of (extension | restriction | list |
union): ''
  id = ID
  targetNamespace = anyURI
  version = token
  xml:lang = language
  {any attributes with non-schema Namespace}...>
Content: ((include | import | redefine | annotation)*, (((simpleType |
complexType | group | attributeGroup) | element | attribute | notation),
annotation*)*)
</schema>

Attributs

  • attributeFormDefault
    Forme des attributs déclarés dans l'espace de noms cible de ce schéma. La valeur doit correspondre à l'une des chaînes suivantes : qualified ou unqualified. La valeur par défaut est unqualified.

    Si la valeur est unqualified, les attributs de l'espace de noms cible ne doivent pas obligatoirement être qualifiés par le préfixe de l'espace de noms.

    Si la valeur est qualified, les attributs de l'espace de noms cible doivent être qualifiés par le préfixe de l'espace de noms.

    Cette valeur est la valeur globale par défaut pour tous les attributs déclarés dans l'espace de noms cible. Des attributs individuels peuvent se substituer à cette valeur pour leur portée locale à l'aide de l'attribut form.

    Facultatif.

  • blockDefault
    Type de dérivation. L'attribut blockDefault définit la valeur par défaut de l'attribut block pour les éléments element et complexType dans l'espace de noms cible de ce schéma. L'attribut block empêche d'utiliser un type (ou élément) complexe ayant le type de dérivation spécifié à la place du type (ou élément) complexe hérité. Cette valeur peut contenir #all ou une liste constituant un sous-ensemble de l'attribut extension, restriction ou substitution.

    extension

    Empêche des types complexes dérivés par extension d'être utilisés à la place de ce type complexe.

    restriction

    Empêche des types complexes dérivés par restriction d'être utilisés à la place de ce type complexe.

    substitution

    Empêche la substitution d'éléments. (Un élément peut se déclarer comme substitution d'un autre élément en spécifiant le nom de l'autre élément dans son attribut substitutionGroup.)

    #all

    Empêche tous les types complexes dérivés d'être utilisés à la place de ce type complexe.

    Facultatif.

  • elementFormDefault
    Forme des éléments déclarés dans l'espace de noms cible de ce schéma. La valeur doit correspondre à l'une des chaînes suivantes : qualified ou unqualified. La valeur par défaut est unqualified.

    Si la valeur est unqualified, les éléments de l'espace de noms cible ne doivent pas obligatoirement être qualifiés par le préfixe de l'espace de noms.

    Si la valeur est qualified, les éléments de l'espace de noms cible doivent être qualifiés par le préfixe de l'espace de noms.

    Cette valeur est la valeur globale par défaut pour tous les éléments déclarés dans l'espace de noms cible. Des éléments individuels peuvent se substituer à cette valeur pour leur portée locale à l'aide de l'attribut form.

    Facultatif.

  • finalDefault
    Type de dérivation. L'attribut finalDefault définit la valeur par défaut de l'attribut final pour les éléments element, simpleType et complexType dans l'espace de noms cible de ce schéma. L'attribut final empêche le type spécifié de dérivation d'un élément element, simpleType ou complexType. Pour les éléments element et complexType, cette valeur peut contenir #all ou une liste constituant un sous-ensemble de l'attribut extension ou restriction. Pour les éléments simpleType, cette valeur peut en outre contenir list et union.

    extension

    Par défaut, les éléments de ce schéma ne peuvent pas être dérivés par extension. S'applique uniquement aux éléments element et complexType.

    restriction

    Empêche la dérivation par restriction.

    list

    Empêche la dérivation par liste. S'applique uniquement aux éléments simpleType.

    union

    Empêche la dérivation par union. S'applique uniquement aux éléments simpleType.

    #all

    #all. Par défaut, les éléments de ce schéma ne peuvent être dérivés par aucune méthode.

    Facultatif.

  • id
    ID de cet élément. La valeur id doit être du type ID et unique dans le document contenant cet élément.

    Facultatif.

  • targetNamespace
    Référence URI de l'espace de noms de ce schéma. Il est également possible d'assigner un préfixe pour l'espace de noms. Si aucun préfixe n'est assigné, les composants de schéma de l'espace de noms peuvent être utilisés avec des références non qualifiées.

    Facultatif.

  • version
    Version du schéma.

    Facultatif.

  • xml:lang
    Indicateur du langage utilisé dans le contenu.

    Facultatif.

Informations sur l'élément

Nombre d'occurrences

Une

Éléments parents

(Pas d'éléments parents)

Contenu

include, import, annotation, redefine

attribute, attributeGroup, element, group, notation, simpleType, complexType

Autres

Les éléments include, import et redefine doivent venir avant les autres éléments, à l'exception de l'élément annotation, qui peut apparaître n'importe où.

Remarques

L'élément schema est l'élément de document (l'élément de niveau supérieur) dans une définition de schéma.

Les espaces de noms spécifiés avec l'attribut xmlns doivent inclure l'espace de noms des attributs et éléments de définition de schéma (schema, element, etc.). N'importe quel préfixe peut être utilisé, mais il est pratique de faire de schema l'espace de noms par défaut afin d'éviter d'utiliser un préfixe pour chaque élément de schéma XML.

targetNamespace correspond à l'espace de noms de tous les composants de ce schéma ainsi que de tous les schémas inclus à l'aide de l'élément include. (Les schémas inclus doivent avoir le même espace de noms cible que le schéma conteneur ou être dépourvus de tout espace de noms cible.) Dans l'exemple suivant, les composants de schéma (nom d'élément et type) dans l'espace de noms http://www.w3.org/2001/XMLSchema ne sont pas qualifiés et ceux de http://tempuri.org/myschema (mydecimal) sont qualifiés par le préfixe msc.

Pour le schéma XML, l'espace de noms est le suivant :

http://www.w3.org/2001/XMLSchema

En outre, l'élément schema doit également contenir les déclarations d'espaces de noms pour tous les autres schémas qu'il utilise.

Exemple

Le schéma suivant utilise l'espace de noms XML Schema comme espace de noms par défaut et définit l'espace de noms par défaut du schéma comme http://mynamespace/myschema.

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.

Voir aussi

Référence

Référence du schéma XML (XSD)
Éléments de schéma XML
Élément <xsd:include>