XML Schema redefine-Element

Definition und Verwendung

Der redefine-Element ermöglicht die Neudefinierung von einfachen und komplexen Typen, Gruppen und Attributgruppen, die aus externen Schema-Dateien abgerufen werden, im aktuellen Schema.

Elementinformation

Auftretenshäufigkeit Unbeschränkt
Übergeordneter Element schema
Inhalt annotation, attributeGroup, complexType, group, simpleType

Syntax

<redefine
id=ID
schemaLocation=anyURI
jegliche Attribute
>
(annotation|(simpleType|complexType|group|attributeGroup))*
</redefine>
Eigenschaft Beschreibung
id Optional. Definiert die eindeutige ID des Elements.
schemaLocation Erforderlich. URI-Referenz zur Dokumentposition des Schemas.
jegliche Attribute Optional. Definiert jede andere Eigenschaft mit non-schema Namespace.

Beispiel

Beispiel 1

Der folgende Beispiel zeigt eine Schema, Myschama2.xsd, in dem Elemente vorhanden sind, die von Myschama1.xsd definiert werden. Der Typ pname wird neu definiert. Gemäß diesem Schema müssen Elemente, die von pname eingeschränkt sind, mit dem "country"-Element enden:

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>