Elemento XML Schema redefine

Definición y uso

El elemento redefine permite redefinir tipos simples y complejos, grupos y grupos de atributos obtenidos de archivos de esquema externos en el esquema actual.

Información del elemento

Número de apariciones Sin restricciones
Elemento padre schema
Contenido anotación, attributeGroup, complexType, group, simpleType

Gramática

<redefine
id=ID
schemaLocation=anyURI
cualquier atributos
>
(anotación|(simpleType|complexType|group|attributeGroup))*
</redefine>
Atributos Descripción
id Opcional. Define un ID único para el elemento.
schemaLocation Obligatorio. Referencia URI de la ubicación del documento de esquema.
cualquier atributos Opcional. Define cualquier otro atributo con espacio de nombres no de esquema.

Ejemplo

Ejemplo 1

El siguiente ejemplo muestra un schema, Myschama2.xsd, donde existen elementos definidos por Myschama1.xsd. El tipo pname se redefine. Según este schema, los elementos restringidos por pname deben terminar con el elemento "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>