Schemaquellen
Die Schemaquellen bilden den Ausgangspunkt für das Design und die Designstrukur kann durch folgende Faktoren beeinflusst werden: (i) die Auswahl, die Sie bei der Auswahl des Schemas treffen und (ii) die Root-Elemente, die Sie im Schema auswählen.
Auswahl des Schemas
Die Auswahl des Schemas für eine neue SPS-Datei kann auf folgende Arten erfolgen:
1.Klicken Sie auf Datei | Neu und wählen Sie eine Schemaquelle, die mittels einer der im Popup-Menü verfügbaren Methoden (mit Ausnahme von "Neu (leer)" hinzugefügt werden soll, direkt aus.
2.Klicken Sie auf Datei | Neu und wählen Sie im Popup-Menü den Befehl "Neu (leer)" aus. Nachdem das neue SPS erstellt wurde und auf der Benutzeroberfläche angezeigt wird, wählen Sie in der Seitenleiste "Design-Übersicht" den Befehl Neues Schema hinzufügen aus. Daraufhin wird ein Menü aufgerufen, in dem die Methoden aufgelistet werden, mit denen Sie verschiedene Schemaarten hinzufügen können (Abbildung unten). Die einzelnen Befehle in diesem Menü werden in den Unterabschnitten dieses Abschnitts beschrieben.
Bei der Schemaquelle kann es sich um eine Datei oder eine Datenbank oder ein benutzerdefiniertes Schema handeln. Ein wichtiger Punkt ist auch die Frage, ob globale Vorlagen verwenden werden und ob Elemente, die Sie als globale Vorlagen erstellen möchten, im Schema als globale Elemente definiert sind. Wenn Sie anhand einer Datei eine DTD hinzufügen möchten, denken Sie daran, dass alle in der DTD definierten Elemente globale Elemente sind. Wenn Sie ein XML-Schema anhand einer Datei hinzufügen, sollten Sie überprüfen, welche Elemente als globale Elemente definiert sind. Sollten Sie Änderungen am Schema vornehmen wollen, überprüfen Sie, ob dies in Ihrer XML-Umgebung zulässig ist. Bei Auswahl einer Datenbank während des Imports können Sie auswählen, welche Tabellen aus der Datenbank importiert werden sollen. Diese Auswahl bestimmt die Struktur des XML-Schemas, das anhand der Datenbank generiert wird.
Anmerkung: | Wenn Sie einen Namespace zu einem SPS oder einem anhand eines SPS generierten XSLT-Stylesheet hinzufügen möchten, muss der Namespace zum schema-Element der obersten Ebene des XML-Schemas, auf dem das SPS basiert, hinzugefügt werden. |
Root-Elemente
Wenn eine Schemaquelle mehrere globale Elemente hat, so können mehrere Root-Elemente (Dokumentelemente) für die Verwendung im Design ausgewählt werden. Auf diese Art können Sie für das SPS Design Vorlagen bereitstellen, die mehreren Dokumentelementen entsprechen. Der Vorteil dabei ist, dass, wenn ein SPS, z.B. UniversalSPS.sps basierend auf der Datei UniversalSchema.xsd je eine Vorlage für jedes seiner zwei Root-Elemente, Element-A und Element-B, hat, dann dieses eine SPS mit einem XML-Instanzdokument verwendet werden kann, welches Element-A als sein Dokumentelement hat, und genauso auch mit einem anderen XML-Instanzdokument, welches Element-B als Dokumentelement hat. Für jede XML-Instanz wird die entsprechende Vorlage verwendet und die andere ignoriert. Dies liegt daran, dass es für des Dokumentelement jedes einzelnen XML-Instanzdokuments im SPS nur eine Vorlage gibt, die mit diesem Dokumentelement übereinstimmt. So entspricht etwa dem Dokumentelement /Element-A die Vorlage, die /Element-A auswählt, nicht aber jene, welche /Element-B auswählt. Beachten Sie in diesem Zusammenhang auch Folgendes: Wenn im Schema mehrere globale Elemente definiert sind, ist ein XML-Dokument, das irgendeines dieser globalen Elemente enthält, gültig (vorausgesetzt die Substruktur ist entsprechend dem Schema gültig).
Um das SPS für die Verwendung mehrerer Root-Elemente (Dokumentelemente) einzurichten, klicken Sie auf die Schaltfläche rechts vom Eintrag /Root-Elemente des Schemas. Daraufhin wird das folgende Dialogfeld angezeigt.
In diesem Dialogfeld werden alle globalen Elemente im Schema aufgelistet. Wählen Sie jene globalen Elemente aus, die als Root-Elemente (Dokumentelemente) zur Verfügung stehen sollen und klicken Sie auf OK. Das/Die ausgewählte/n Element/e steht/stehen nun als Dokument-Root-Elemente zur Verfügung und wird/werden in der Liste der Root-Elemente angezeigt. Für jedes dieser Dokumentelemente kann nun eine Vorlage angelegt werden. Jede dieser Vorlagen dient als alternative Root-Element-Vorlage. Wenn ein XML-Dokument mit diesem SPS verarbeitet wird, wird immer nur eine der Root-Elementvorlagen verwendet, nämlich diejenige, die mit dem Root (oder Dokument-)-Element des XML-Dokuments übereinstimmt.
Wenn daher ein XML-Dokument verarbeitet wird, das Element-A als Dokument-Element hat, so wird automatisch die Root-Vorlage in dem SPS verwendet, die mit Element-A übereinstimmt, während alle anderen Root-Element-Vorlagen im SPS ignoriert werden. Wenn ein XML-Dokument verarbeitet wird, das Element-B als Dokument-Element hat, so wird automatisch die Root-Vorlage in dem SPS verwendet, die mit Element-B übereinstimmt, während alle anderen Root-Element-Vorlagen im SPS ignoriert werden. Auf diese Weise kann man zwei oder mehrere XML-Dokumente mit jeweils unterschiedlichen Root- (oder Dokument-) Elementen mit Hilfe eines einzigen SPS verarbeiten.