XSD-Modus: XSD 1.0 oder 1.1

www.altova.com Dieses Kapitel drucken Vorherige Seite Eine Ebene nach oben Nächste Seite

Startseite >  Benutzerhandbuch und Referenz > Bearbeitungsansichten > Schema-Ansicht >

XSD-Modus: XSD 1.0 oder 1.1

Sie können in der Schema-Ansicht auswählen, ob das XML-Schema (XSD) anhand der XML Schema 1.0 (XSD 1.0)- oder der XML Schema 1.1 (XSD 1.1)-Spezifikation bearbeitet und validiert werden soll. Der zum Bearbeiten einer Datei verwendete XSD-Modus basiert auf zwei Einstellungen: einer in der Applikation und der anderen im XSD-Dokument.

 

Auswahl des XSD-Modus

Es ist vom XSD-Modus abhängig, welche Bearbeitungs- und Validierungsfunktionen (XSD 1.0 oder 1.1) für das aktive Dokument in der Schema-Ansicht zur Verfügung stehen. Sie können entweder (i) eine Einstellung für die gesamte Applikation vornehmen. In diesem Fall werden alle XSD-Dokumente in der Schema-Ansicht im ausgewählten Modus bearbeitet. Oder (ii) Sie können die XSD-Versionsnummer im XSD-Dokument speichern, sodass die Applikation den XSD-Modus automatisch gemäß dieser Informationen wählt.

 

Applikationsweiter Modus

Die applikationsweite Einstellung wird im Dialogfeld "Optionen" (Extras | Optionen, siehe Abbildung unten) im Abschnitt "Datei" vorgenommen. Wenn Sie das Optionsfeld Version 1.0 oder Version 1.1 auswählen, so wird der ausgewählte Modus zum applikationsweiten Modus. Alle in der Schema-Ansicht geöffneten XML-Schema-Dokumente werden nun in diesem Modus bearbeitet. (Wenn Sie die Einstellung v1.1 wenn <xs:schema vc:minVersion="1.1", v1.0 andernfalls auswählen, hängt der Modus von den Informationen im Dokument ab und wird nicht applikationsweit verwendet. Nähere Informationen dazu finden Sie unter dokumentspezifischer Modus und den anderen Abschnitten weiter unten.)

XMLSchemaVersion

Durch Auswahl der gewünschten Version im Dialogfeld "Optionen", Einstellung XML-Schema-Version (Abbildung oben) können Sie jederzeit zwischen den beiden applikationsweiten Modi (Version 1.0 und Version 1.1) wechseln.

 

Anmerkung:Wenn es sich bei der aktuellen Einstellung um eine applikationsweite Einstellung handelt und Sie über die Schaltfläche XSD 1.0 oder XSD 1.1 in der Symbolleiste "Schema-Design" den Modus wechseln, so ist der Moduswechsel temporär und der Modus wird beim Neuladen des Dokuments in den applikationsweiten Modus zurückgesetzt. Das Dokument wird bei jedem Ansichtswechsel und bei jedem Aktualisieren der Schema-Ansicht (mit dem Befehl Datei | Neu laden) neu geladen.

 

Dokumentspezifischer Modus

Sie können die XSD-Modusinformationen auch im XSD-Dokument selbst speichern. Dadurch wechselt die Schema-Ansicht automatisch in den XSD-Modus des Dokuments, wenn das Dokument geladen wird. Sie können die XSD-Modusinformationen durch Klicken auf die Schaltfläche XSD 1.0 bzw. XSD 1.1 in der Symbolleiste "Schema-Design" (Abbildung unten)  zu einem XSD--Dokument hinzufügen. Dadurch wird der ausgewählte Modus im vc:minVersion Attribut des obersten xs:schema Elements gespeichert. (Der Wert von vc:minVersion kann in der Textansicht manuell hinzugefügt werden.)

ToolbarSchemaDesign

Anmerkung:Das Attribut vc:minVersion muss sich, falls vorhanden, im Namespace http://www.w3.org/2007/XMLSchema-versioning befinden. In diesem Fall muss das XML-Schema-Dokument eine Namespace-Deklaration haben, die vc: Namespace-Präfix an  diesen Namespace bindet. Wenn Sie die Symbolleisten-Schaltfläche XSD 1.1 (Abbildung oben) verwenden, wird der Namespace automatisch hinzugefügt. Wenn Sie auf die Symbolleisten-Schaltfläche XSD 1.0 klicken, wird diese Namespace-Deklaration entfernt, wenn sich kein anderer Node-Name im Dokument in diesem Namespace befindet.

 

Um den dokumentspezifischen Modus zu aktivieren und den XSD-Modus eines Dokuments zu definieren, gehen Sie folgendermaßen vor:

 

1.Aktivieren Sie den dokumentspezifischen Modus: Setzen Sie die XML-Schema-Versionsoption im Dialogfeld "Optionen" (Extras | Optionen) im Abschnitt "Datei" auf v1.1 wenn <xs:schema vc:minVersion="1.1", v1.0 andernfalls (siehe Abbildung unten). Damit legen Sie fest, dass der XSD-Modus in der Schema-Ansicht  von XMLSpy entsprechend dem vc:minVersion Attribut des xs:schema Elements gewählt wird.

XMLSchemaVersionOn

2.Definieren Sie die XSD-Version des Dokuments: Klicken Sie in der Symbolleiste "Schema-Design" (Abbildung oben) auf die Schaltfläche XSD 1.0 bzw. XSD 1.1. Daraufhin wird ein Bestätigungsdialogfeld angezeigt (Abbildung unten).

XSDVersionConfirm

3.Wenn Sie auf Ja klicken, (i) wird der entsprechende Wert in das vc:minVersion Attribut des xs:schema Elements eingegeben. (ii) Wenn XSD 1.1 ausgewählt wurde, wird der XMLSchema-versioning Namespace mit einer Bindung an das vc: Namespace-Präfix deklariert; wenn XSD 1.0 ausgewählt wurde, wird die Namespace-Deklaration entfernt, wenn sich kein anderer Node im XMLSchema-versioning Namespace befindet. Das XML-Schema-Dokument enthält nun die XSD-Versionsnummer. Beim Speichern der Datei werden die XSD-Modusinformationen mit der Datei gespeichert. Wenn Sie die Datei erneut öffnen oder neu laden, wechselt die Schema-Ansicht automatisch in den XSD-Modus, der im Attribut vc:minVersion des xs:schema Elements des Dokuments gespeichert ist.

 

Anmerkung:Wenn der dokumentspezifische Modus ausgewählt ist und das XSD-Dokument kein vc:minVersionAttribut hat oder der Wert des vc:minVersion Attributs nicht 1.0 oder 1.1 ist, wird in der Schema-Ansicht automatisch der Modus XSD 1.0 verwendet.

 

Anmerkung:Verwechseln Sie das vc:minVersion Attribut nicht mit dem xsd:version Attribut. Ersteres enthält die XSD-Versionsnummer, zweiteres die Versionsnummer des Dokuments.

 

XSD-Modus neuer Dokumente

Wenn Sie ein neues XSD-Dokument erstellen, werden Sie gefragt, ob Sie es als XSD 1.0- oder XSD 1.1-Dokument erstellen möchten. Bei Auswahl von XSD 1.1 wird ein neues Dokument mit dem Attribut /xs:schema/@vc:minVersion="1.1" erstellt und der XMLSchema-versioning Namespace wird mit einer Bindung an das vc: Namespace-Präfix deklariert. Bei Auswahl von XSD 1.0 werden weder das vc:minVersion Attribut noch die XMLSchema-versioning Namespace-Deklaration hinzugefügt. Welcher XSD-Modus in der Schema-Ansicht jedoch tatsächlich verwendet wird, hängt auch davon ab, welche XML-Schema-Version im Dialogfeld "Optionen" (Extras | Optionen) im Abschnitt "Datei" ausgewählt ist. Eine Beschreibung darüber, wie sich diese beiden Einstellungen beeinflussen, finden Sie im nächsten Abschnitt.

 

Der aktivierte XSD-Modus

Welcher XSD-Modus in der Schema-Ansicht aktiviert wird, hängt sowohl (i) vom Vorhandensein bzw. Fehlen - und, falls vorhanden, vom Wert - des /xs:schema/@vc:minVersion Attributs des XSD-Dokuments als auch (ii) von der XML-Schema-Version ab, die im Dialogfeld "Optionen"  (Extras | Optionen, siehe Abbildung unten) im Abschnitt "Datei" ausgewählt wurde.

XMLSchemaVersion

Es sind die folgenden Situationen möglich. XML-Schema-Version in der Tabelle unten bezieht sich auf die Auswahl im oben gezeigten Bereich XML-Schema-Version. Die vc:minVersion Werte in der unten stehenden Tabelle beziehen sich auf den Wert des xs:schema/@vc:minVersion Attributs im XML-Schema-Dokument.

 

XML-Schema-Version

vc:minVersion Attribut

XSD-Modus

Immer v 1.0

Fehlt oder ist mit einem beliebigen Wert vorhanden

1.0

Immer v 1.1

Fehlt oder ist mit einem beliebigen Wert vorhanden

1.1

Wert von @vc:minVersion

Das Attribut hat den Wert 1.1

1.1

Wert von @vc:minVersion

Das Attribut fehlt oder ist vorhanden und hat einen anderen Wert als 1.1

1.0

 

Anmerkung:In den in den ersten beiden Zeilen beschriebenen Situationen ist es möglich, dass ein XSD 1.1-Schema im XSD 1.0-Modus bzw. umgekehrt geöffnet wird. Die sich daraus ergebenden Unstimmigkeiten werden, wie weiter unten beschrieben, behandelt.

 

XSD-Modus-Funktionen

Die Benutzeroberfläche und die Bearbeitungsfunktionen der Schema-Ansicht ändern sich, je nachdem, welcher XSD-Modus (XSD 1.0 oder XSD 1.1) aktiviert ist.

 

Wenn der XSD 1.0-Modus ausgewählt ist:

 

stehen die Bearbeitungsfunktionen für neue XML Schema 1.1-Komponenten und Eigenschaften nicht zur Verfügung. Wenn jedoch bereits XSD 1.1-Komponenten oder Eigenschaften im XSD-Dokument vorhanden sind, werden diese angezeigt und können gelöscht werden.
Die Validierung wird anhand der XSD 1.0-Spezifikation durchgeführt. Wenn das Schema daher eine ausschließlich in XSD 1.1 vorhandene Komponente oder Eigenschaft enthält, wird ein Validierungsfehler ausgegeben.

 

Wenn der XSD 1.1-Modus aktiviert ist, stehen die Bearbeitungsfunktionen für alle XML-Schema 1.1-Eigenschaften zur Verfügung. Die Validierung erfolgt gemäß der XML-Schema 1.1-Spezifikation.

 

Behandlung von XSD 1.1-Funktionen im XSD 1.0-Modus

Im Folgenden wird beschrieben, wie eine XSD 1.1-Funktion, die in XSD 1.0 nicht vorhanden ist, im XSD 1.0-Modus angezeigt und behandelt wird.

 

Assertions: Wenn es im ausgewählten simpleType mindestens eine Assertion gibt, enthält die Eingabehilfe "Facets" das Register "Assertions". Die Assertion kann jedoch nicht bearbeitet, sondern nur gelöscht werden.
Asserts: Die Assertion wird,  falls vorhanden, im Diagramm des complexType angezeigt. Im AAIDC-Bereich wird kein Register "Assertions" angezeigt. Es kann keine Assertion über das Kontextmenü hinzugefügt werden. Die Assertion kann nicht bearbeitet, sondern nur gelöscht werden.
Attribute: Die neue Eigenschaft inheritable wird,  falls vorhanden, angezeigt, kann aber nicht bearbeitet werden. Es kann nur der Leerwert ausgewählt werden (was bedeutet, dass die Eigenschaften entfernt werden).
ComplexTypes: Die neue Eigenschaft defaultAttributesApply wird, falls vorhanden, in der Eingabehilfe "Details" angezeigt. Sie kann nicht bearbeitet werden. Es kann nur der Leerwert ausgewählt werden (was bedeutet, dass die Eigenschaften entfernt werden).
Dokumentation: Neue XSD 1.1-spezifische Komponenten und Eigenschaften werden nicht in die Schema-Ansichtsdokumentation inkludiert.
Facets: Unbekannte Facets verursachen Validierungsfehler und werden rot angezeigt.
In Schemas suchen: Neue XSD 1.1-spezifische Komponenten und Eigenschaften werden ignoriert.
Identity constraints (IDCs): Die Eigenschaft isRef wird bei Referenzen angezeigt und kann deaktiviert werden. Sie wird deaktiviert, sobald der Name des IDC geändert wird.
Multiple substitution groups: Auswahlliste, zur Auswah einer einzigen Substitution  Group (in XSD 1.0 sind nur einzelne Substitution Groups zulässig).
Open content: Wird im Diagramm angezeigt, falls vorhanden. Kann nicht über das Kontextmenü hinzugefügt werden. Kann nicht bearbeitet, sondern nur gelöscht werden. Default Open Content wird in complexTypes nicht angezeigt.
Override: Wird,  falls vorhanden, in der Grid-Ansicht von globalen Elementen angezeigt. Kann nicht über das Menü hinzugefügt werden. Die Position kann nicht bearbeitet, sondern nur gelöscht werden. Überschreibende Komponenten (d.h. Subelemente von xs:override) werden ignoriert und nicht in der Eingabehilfe "Komponenten" angezeigt.
Schema-Einstellungen: Die neuen Eigenschaften defaultAttributes und xpathDefaultNamespace werden, falls vorhanden, im Dialogfeld angezeigt. Sie können nicht bearbeitet werden. Es kann nur der Leerwert ausgewählt werden (was bedeutet, dass die Eigenschaften entfernt werden).
SimpleTypes: Unbekannte Typen verursachen Validierungsfehler und werden rot angezeigt.
Type Alternatives: Werden, falls vorhanden, im Diagramm angezeigt. Können nicht über das Kontextmenü hinzugefügt werden. Die Eigenschaften können nicht bearbeitet, sondern nur gelöscht werden.
Wildcards: Neue Eigenschaften werden, falls vorhanden, angezeigt. Sie können nicht bearbeitet werden. Es kann nur der Leerwert ausgewählt werden (was bedeutet, dass die Eigenschaften entfernt werden).

 


© 2019 Altova GmbH