É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>