XML-Beispiel

Konfigurieren von „Read from XML“

Der „Write to Hub“-Datenfluss, der eine XML-Datei für die Eingabe verwendet, sieht wie folgt aus:

Der „Read from XML“-Schritt verwendet eine hierarchische Datei, die Folgendes enthält:

Der „Read from XML“-Schritt erscheint wie folgt, wenn sie für die Arbeit mit dieser Eingabedatei konfiguriert wurde:

In einem nächsten Schritt konfigurieren wir den „Write to Hub“-Schritt. Nach der Benennung des Modells „Employees“ konfigurieren wir den Schritt, um die Entitäten und Beziehungen einzuschließen, aus denen das Modell bestehen wird.

Da wir ein Modell erstellen, das einem Organigramm ähnelt, sind unsere Entitäten Mitarbeiter, denen numerische IDs zugewiesen wurden. Wir klicken zunächst im Dialogfeld Entität hinzufügen auf die Schaltfläche „Durchsuchen“, um auf das Dialogfeld Feldschema zuzugreifen, und wählen dann „ID“ aus. Dies ist die erste Entitätsgruppe in unserem Modell.

Als nächstes legen wir das Feld Typ auf „Mitarbeiter“ fest und aktivieren die Kästchen für „Name“ und „Titel“, da die Informationen aus diesen Feldern als Eigenschaften für die ID-Entitäten in das Modell eingebracht werden sollen.

Nach dem Festlegen der Eigenschaften für die ID-Entität konfigurieren wir die Verarbeitungsoptionen. Auf der Registerkarte „Aktualisierungen“ können Sie angeben, ob Eigenschaften im Modell aktualisiert werden können, sobald sie vorhanden sind, und ob vorhandene Daten damit überschrieben werden sollen. In unserem Beispiel würde Mary Hansen beispielsweise zweimal auftreten, weil sie bei ID 2 eine Mitarbeiterin und bei ID 11 eine Managerin ist. Wenn Mary zum zweiten Mal im „Write to Hub“-Schritt verarbeitet wird, können Daten, die infolge der ersten Verarbeitung von Mary aufgefüllt wurden, potenziell überschrieben oder entfernt werden. Durch Auswahl von Eigenschaften nie mit leeren Daten überschreiben (die Standardeinstellung) werden bei allen auftretenden Aktualisierungen neue Eigenschaften erstellt und vorhandene Eigenschaften überschrieben. Eigenschaften, die bei der ersten Begegnung festgelegt wurden, bei der zweiten Begegnung jedoch fehlen, werden aber nicht ausgeblendet. Dadurch wird auch sichergestellt, dass die Reihenfolge, in der diese Datensätze gelesen werden, keine Auswirkungen auf das Modell hat.

Bei Auswahl von Eigenschaften immer aktualisieren würden Daten immer überschrieben und nur die letzte Gruppe von Eigenschaftsdaten im Modell widergespiegelt werden. Bei Auswahl von Eigenschaften aktualisieren, wenn nicht die gesamte Eingabe NULL ist würden Daten immer überschrieben, es sei denn, alle Felder im neuen Datensatz wären leer. Bei Auswahl von Nicht leere Eigenschaften nie überschreiben wird der erste Datensatz für ein bestimmtes Feld beibehalten, es sei denn, dieses Feld ist leer. In diesem Fall würde der erste nicht leere Datensatz beibehalten.

Diese Schritte werden wiederholt, um „ManagerId“ als zweite Entitätsgruppe in unserem Modell hinzuzufügen. Obwohl es sich bei „ManagerID“ und „EmployeeID“ um unterschiedliche Felder in der Eingabedatei handelt, sind beide Entitätstypen auf „Mitarbeiter“ festgelegt. Wenn „ManagerID“ auf einen anderen Typ festgelegt wird, enthält das Modell zwei Entitäten für mittlere Manager. Jim Waterman würde beispielsweise über eine Entität als Mitarbeiter und eine Entität als Manager verfügen. Wenn beide Entitäten auf den Typ „Mitarbeiter“ festgelegt werden, verfügen mittlere Manager wie Jim nur über eine Entität im Modell. Diese Entität verfügt über weitere Entitäten, die in die Entität eingehen (von Mitarbeitern) und über eine weitere Entität, die aus der Entität herausgehen (für den jeweiligen Manager). Beachten Sie, dass keine Eigenschaften zur Entität „ManagerID“ hinzugefügt werden, da die Werte in diesen Feldern (Name, Titel) für die Mitarbeiter und nicht die Manager gelten. Zudem übernehmen wir auf der Registerkarte „Aktualisierungen“ die Standardauswahl von Eigenschaften nie mit leeren Daten überschreiben.

Die abgeschlossene Registerkarte „Entitäten“ wird für dieses Beispiel wie folgt dargestellt:

Jetzt konfigurieren wir die Registerkarte „Beziehungen“. Zunächst wählen wir im Dialogfeld Beziehung hinzufügen die Quelle der Beziehung aus der Liste der auf der Registerkarte „Entitäten“ erstellten Entitäten aus. Die Beziehung zwischen den Entitäten spiegelt die Berichterstellungsstruktur (Mitarbeiter zu Manager) wider; daher wählen wir die Entität „Mitarbeiter:Personal/Mitarbeiter/Personal-ID“ als Quelle aus. Als nächstes wählen wir „Zeichenfolge“ als Name der Beziehung aus und geben den Text „Berichte an“ ein. Danach wählen wir das Ziel der Beziehung aus der Liste der auf der Registerkarte „Entitäten“ erstellten Entitäten aus. In unserem Beispiel wird „Mitarbeiter:ID“ ausgewählt. Wenn wir statt der Beziehung „Berichte an“ die Beziehung „verwaltet“ verwenden, sollte die Auswahl in den Quell- und Zielfeldern umgekehrt werden.

Die abgeschlossene Registerkarte „Beziehungen“ wird für dieses Beispiel wie folgt dargestellt:

Die Konfiguration dieses Datenflusses ist abgeschlossen und ergibt das folgende Modell, wie im Relationship Analysis Client dargestellt:

Wie beim Beispiel des Flatfile kann dieses Modell auch im Bereichsstil angezeigt werden, wie nachfolgend dargestellt.