Élément redefine de XML Schema

Définition et utilisation

L'élément redefine permet de redéfinir dans le schéma actuel les types simples et complexes, les groupes et les groupes de propriétés obtenus à partir de fichiers de schéma externes.

Informations sur l'élément

Fréquence d'apparition Non limité
Élément parent schema
Contenu annotation、attributeGroup、complexType、group、simpleType

Grammaire

<redefine
id=ID
schemaLocation=anyURI
any attributes
>
(annotation|(simpleType|complexType|group|attributeGroup))*
</redefine>
Propriétés Description
id Optionnel. Définit un ID unique pour cet élément.
schemaLocation Obligatoire. Référence URI de la position du document de schéma.
any attributes Optionnel. Définit toute autre propriété avec un espace de noms non schéma.

Exemple

Exemple 1

L'exemple suivant montre un schéma, Myschama2.xsd, où existent des éléments définis par Myschama1.xsd. Le type "pname" est redéfini. Selon ce schéma, les éléments liés par "pname" doivent se terminer par l'élément "country":

Myschema1.xsd:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="pname">
  <xs:sequence>
    <xs:element name="firstname"/>
    <xs:element name="lastname"/>
  </xs:sequence>
</xs:complexType>
<xs:element name="customer" type="pname"/>
</xs:schema>

Myschema2.xsd:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:redefine schemaLocation="Myschema1.xsd">
  <xs:complexType name="pname">
    <xs:complexContent>
      <xs:extension base="pname">
        <xs:sequence>
          <xs:element name="country"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
</xs:redefine>
<xs:element name="author" type="pname"/>
</xs:schema>