Wenn Ihre XML-Datei Elemente mit komplexem Typ enthält,
ermöglicht Ihnen die "xsi:type"-Unterstützung im XML-Editor, zwischen dem komplexen Typ und
allen anderen daraus abgeleiteten komplexen Typen auszuwählen.
Die XML-Schemaspezifikation ermöglicht das Ableiten von Typen durch Erweiterung.
Betrachten Sie die folgenden Schritte als Beispiel:
- Erstellen Sie ein XML-Schema und dafür einen komplexen Typ namens Address.
- Fügen Sie dann einige Basiselemente zu Address hinzu, z. B. streetName und city.
- Leiten Sie (durch Erweiterung) zwei neue komplexe Typen von Address ab: USAddress und UKAddress.
- Fügen Sie ein neues Element zu USAddress namens state hinzu. Außerdem fügen Sie ein neues Element zu UKAddress namens postcode hinzu.
- Erstellen Sie zwei weitere Elemente: billTo und shipTo,
als Address-Typen.
- Wenn Sie ein XML-Instanzdokument für ein Element wie billTo oder
Address erstellen, wird ein Attribut vom Typ "xsi:type" automatisch hinzugefügt. Beispiel:
<billTo xsi:type="ipo:Address">
Das Attribut
"xsi:type" wird dazu verwendet, abgeleitete komplexe Typen zu identifizieren
(ebenso wie komplexe Typen, von denen abgeleitet wurde).
- In der Entwurfssicht des XML-Editors steht eine Liste zur Verfügung,
in der Sie die entsprechende Typdefinition auswählen können
(Address, USAddress oder
UKAddress). Die interaktive Bearbeitung für das Inhaltsmodell reflektiert die von Ihnen ausgewählte Typdefinition.
Wenn Sie beispielsweise USAddress auswählen,
kann das Element billTo ein Element state enthalten,
jedoch kein Element postcode.
Das XML-Beispiel zum Bearbeiten und Prüfen von XML-Dateien
veranschaulicht die xsi:type-Unterstützung.
Weitere Informationen zu "xsi:type" finden Sie im Abschnitt zur Verwendung abgeleiteter Typen
in Instanzdokumenten (Using Derived Types in Instance Documents) in
XML Schema Part 0: Primer.
Weitere Informationen
zur Prüfungssemantik bei der Verwendung von "xsi:type" finden Sie im Abschnitt zur
schemabezogenen Markup-Formatierung bei der Prüfung von Dokumenten (Schema-Related
Markup in Documents Being Validated) in
XML Schema Part 1: Structures.