XML Schema redefine-element

Definition og brug

redefine-elementet tillader at definere enkle og komplekse typer, grupper og attributgrupper, som hentes fra eksterne arkivfiler, i det aktuelle Schema.

Elementinformation

Optræden Ubegrænset
Forældrelement schema
Indhold annotation、attributeGroup、complexType、group、simpleType

Syntaks

<redefine
id=ID
schemaLocation=anyURI
Enhver attribut
>
(annotation|(simpleType|complexType|group|attributeGroup))*
</redefine>
Egenskab Beskrivelse
id Valgfri. Angiver den unikke ID for elementet.
schemaLocation Obligatorisk. En URI-reference til schema-dokumentets placering.
Enhver attribut Valgfri. Angiver eventuelle andre attributter med non-schema navnerum.

Eksempel

Eksempel 1

Denne eksempel viser en schema, Myschama2.xsd, hvor der findes elementer defineret af Myschama1.xsd. Typen pname defineres igen. Ifølge dette schema skal elementer, der er begrænsede af pname, afsluttes med "country"-elementet:

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>