Neueste Web-Entwicklung Tutorials
 

XML Schemaerweiterung Element


<Vollständige XML - Schema - Referenz

Definition und Verwendung

Das Verlängerungselement erstreckt sich eine bestehende oder simplecomplextype-Element.

Elementinformationen

  • Parent elements: simple, complex

Syntax

<extension
id=ID
base=QName
any attributes
>

(annotation?,((group|all|choice|sequence)?,
((attribute|attributeGroup)*,anyAttribute?)))

</extension>

(Das? Zeichen erklärt, dass das Element Null oder eine Zeit auftreten kann, und das * Zeichen erklärt, dass das Element null oder mehrere Male innerhalb des Verlängerungselement auftreten können)

Attribut Beschreibung
id Optional. Gibt eine eindeutige ID für das Element
base Erforderlich. Gibt den Namen eines Datentyp-in gebaut, ein simpletype-Element oder einem complextype-Element
any attributes Optional. Gibt alle anderen Attribute, die nicht-Schema-Namensraum

Beispiel 1

Das folgende Beispiel erweitert eine bestehende simple durch ein Attribut hinzufügen:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:simpleType name="size">
  <xs:restriction base="xs:string">
    <xs:enumeration value="small" />
    <xs:enumeration value="medium" />
    <xs:enumeration value="large" />
  </xs:restriction>
</xs:simpleType>

<xs:complexType name="jeans">
  <xs:simpleContent>
    <xs:extension base="size">
      <xs:attribute name="sex">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="male" />
            <xs:enumeration value="female" />
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:extension>
  </xs:simpleContent>
</xs:complexType>

</xs:schema>

Beispiel 2

Das folgende Beispiel erweitert ein bestehendes complextype-Element durch drei Elemente hinzu:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:element name="employee" type="fullpersoninfo"/>

<xs:complexType name="personinfo">
  <xs:sequence>
    <xs:element name="firstname" type="xs:string"/>
    <xs:element name="lastname" type="xs:string"/>
  </xs:sequence>
</xs:complexType>

<xs:complexType name="fullpersoninfo">
  <xs:complexContent>
    <xs:extension base="personinfo">
      <xs:sequence>
        <xs:element name="address" type="xs:string"/>
        <xs:element name="city" type="xs:string"/>
        <xs:element name="country" type="xs:string"/>
      </xs:sequence>
    </xs:extension>
  </xs:complexContent>
</xs:complexType>

</xs:schema>

<Vollständige XML - Schema - Referenz