Elemento redefine de XML Schema

Definición y uso

El elemento redefine permite la redefinición de 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

Sintaxis

<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 otra propiedad con espacio de nombres no de esquema.

Ejemplo

Ejemplo 1

El siguiente ejemplo muestra un esquema, Myschama2.xsd, donde existen elementos regulados por Myschama1.xsd. El tipo pname se redefine. Según este esquema, 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>