XSLT Converter
Verwendung
Mithilfe des XSLT Converters lassen sich XML-Dateien in beliebige Dateiformate transformieren. Zum Transformieren verwendet der XSLT Converter ein oder mehrere XSLT-Stylesheets, die angeben, wie der Inhalt der XML-Dateien transformiert wird.
Ein XSLT Converter unterstützt Sie bei folgenden Aufgaben:
-
Dateiformate transformieren, z.B. von einem XML-Format in ein anderes.
-
Erstellen von Nachrichten für System Connector-Module mithilfe von Templates, z.B. für: Web Services Connector, Topcall Connector, SAP Connector, JCA Connector, Datenbank Connector
-
Beliebige Nachrichten anhand von Templates aus dem Repository erstellen.
XSL-Versionen und EXSL-Unterstützung
Der Funktionsumfang, den Sie im XSLT Converter nutzen können, ist abhängig von dem XSL-Prozessor, den Sie verwenden. Der mitgelieferte XSLT-Prozessor unterstützt folgende Funktionen:
-
XSLT 1.0 (veraltet, nicht empfohlen, wird ab INUBIT 8 nicht mehr unterstützt)
-
XSLT 2.0
-
XSLT 3.0
-
EXSLT
-
common
-
sets
-
math
-
dates-and-times
-
random
-
-
INUBIT XSLT Extensions, unter anderem Funktionen
-
Zum Konvertieren eines Datums
-
Zur Rückgabe von Linefeeds (Zeilenvorschub) und anderen Steuerzeichen
-
Zum Erzeugen von Tags
-
Zum Ersetzen von Umlauten
-
Wenn gewünscht, können Sie die mitgelieferten XSLT-Prozessoren durch beliebige andere XSLT-Prozessoren ersetzen.
Beim Einsatz von XSL-Transformationen mit Saxon 10 als XSL Prozessor und der Ausgabemethode XHTML können unerwünschte Zeilenumbrüche im resultierenden XHTML-Output auftreten.
Um diese Zeilenumbrüche zu vermeiden, fügen Sie das Attribut
|
Beachten Sie die Dokumentation Ihres XSLT-Prozessors für Informationen über dessen Extensions. |
Der XSLT-Konverter entfernt beim Parsen der Eingangsnachricht das CR aus der CRLF-Kombination.
Dies ist auf den internen Parse-Prozess von |
Siehe
Benutzeroberfläche: XSLT Mapper
XSLT Mapper
Der XSLT Mapper wird nach dem Erzeugen eines XSLT Converters angezeigt:
-
XML-Quelle/XML-Ziel (Stylesheet-Bereich)
Zeigt das erstellte XSLT-Stylesheet als Abbildungstabelle an. Die Tabellenspalten enthalten
-
XML-Quelle: Werte, XPath-Ausdrücke bzw. Funktionen, meist aus dem Bereich XML-Quelldatei stammend und per Drag’n’Drop in die Spalte gezogen.
-
XML-Ziel: XSLT-Anweisungen (Elemente und Attribute), meist aus dem Bereich Zielstruktur stammend und per Drag’n’Drop in die Spalte gezogen.
-
Parameter hinzufügen: Um die Parameter aus dem importierten Stylesheet in das existierende Stylesheet zu migrieren, klicken Sie auf Parameter hinzufügen. Für Informationen über die Toolbar des Bereichs siehe Funktionen in der Werkzeugleiste.
-
-
Icon zum Öffnen des XPath-Assistenten
Siehe XPath-Assistent
-
XML-Quelldatei
Zum Laden und Anzeigen einer Beispiel-Eingangsnachricht, die beim Erstellen des XSLT Stylesheets als Datenquelle dient. Der Bereich ist nicht sichtbar, wenn Sie beim Erstellen des XSLT Converters die Option Eingangsnachricht ignorieren markiert haben.
Für Informationen über die Toolbar des Bereichs siehe Funktionen in der Werkzeugleiste.
-
Zielstruktur
Zum Laden und Anzeigen eines Templates für die Zielstruktur. Als Template können z.B. eine beliebige Beispiel-Datei oder ein Template aus dem Repository dienen. Ein Template kann z.B. auch mithilfe eines SAP-, Datenbank- oder Web Service Explorers erstellt werden.
-
Ergebnis des Mappings
Zeigt nach dem Testen des XSLT-Stylesheets das Ergebnis an und die benötigte Ausführungszeit.
Für Informationen über die Toolbar des Bereichs siehe Funktionen in der Werkzeugleiste.
-
Ausgabe, Breakpoints, Intern
Zur Anzeige der Ausgabe des Stylsheets, der definierten Breakpoints und der Struktur des Stylsheets.
Funktionen in der Werkzeugleiste
In jedem Bereich gibt es eine Werkzeugleiste, über die Sie folgende Funktionen erreichen:
-
Öffnet ein Untermenü mit folgenden Befehlen:
-
Neu: Löscht den aktuellen Inhalt und erstellt ein neues Dokument mit dem Element root.
-
Öffnen: Zum Laden einer Datei aus dem Dateisystem, aus dem Repository oder aus der Zwischenablage. Im Editor wird automatisch die zum Dateityp passende Ansicht geladen. Weiterhin zum Laden von Business Object-Diagrammen oder URLs oder von Templates aus folgenden Explorern:
-
Datenbank Explorer
-
JCA Explorer
-
Regeldatei Explorer
-
SAP Explorer
-
Web Services-Explorer
-
-
Speichern:
-
Datei: Zum Speichern des angezeigten Inhalts.
-
Datei als: Öffnet einen Dateiexplorer zum Speichern des angezeigten Inhalts an beliebiger Stelle und in beliebigem Format.
-
Repository: Zum Speichern des angezeigten Inhalts im Repository.
-
Zwischenablage: Kopiert die angezeigten Inhalte in die Zwischenablage.
-
Drucken: Öffnet den Drucker-Dialog zum Ausdrucken der aktuellen Datei.
Die folgenden Funktionen sind nicht in allen Bereichen verfügbar!
-
-
Geeignete Editoren für den Inhalt anzeigen: Reduziert die verfügbaren Editoren auf diejenigen, welche für das aktuell angezeigte Dateiformat geeignet sind.
-
XML-Schema-Template erzeugen: Erstellt aus einer XML-Datei eine Vorlage für ein XML Schema.
-
Vergleichen: Vergleicht eine XML-Datei mit einer Datei im Dateisystem, einer Datei im Repository oder mit dem Inhalt der Zwischenablage.
-
XPath-Suche: Wenn markiert, dann kann im Suchen-Feld auch nach XPath-Ausdrücken gesucht werden.
-
Editierbar: Wenn diese Option markiert ist, dann können Sie angezeigte Datei bearbeiten.
-
Parameter aus der Zwischenablage: Kopiert Variablen aus der Zwischenablage in das XSLT-Stylesheet
-
Toolbar an Content anpassen: Abhängig vom Format des aktuellen Inhalts werden für den Bereich die passenden Befehle aktiviert. So sind z.B. bei ASCII-Textdateien die Ansichten Schema-Ansicht und Baum-Ansicht nicht verfügbar.
-
Mehrfache Knoten ausblenden: Blendet alle mehrfach vorhandenen Elemente aus
-
Daten aus der Struktur löschen: Löscht alle Inhalte, die weder ein Element noch ein Attribut sind.
-
Nur Textknoten aus der Struktur löschen: Löscht alle Inhalte von Elementen. Attributwerte bleiben erhalten.
-
Nur Attributtexte aus der Struktur löschen: Löscht alle Werte von Attributen. Elementinhalte bleiben erhalten.
-
DTD-Prüfung der Ergebnisdatei: Führt eine Validierung der Ergebnisdatei gegen eine DTD durch.
-
Schema-Prüfung der Ergebnisdatei: Führt eine Validierung der Ergebnisdatei gegen ein XML-Schema. durch.
-
-
XSLT Mappingtabelle
Ansicht, in der per Drag-and-Drop ein XSLT-Stylesheet erstellt werden kann. Wird nach dem Anlegen eines XSLT Converter Moduls automatisch angezeigt.
-
Links: Anzeige von XPath-Ausdrücken und Werten
-
Rechts: Elemente und Attribute
Zu den Farbeinstellungen, siehe Einstellungen der INUBIT Workbench ändern
-
Mittlere Spalte:
-
Zelle mit Gleichheitszeichen: einem Attribut (rechte Spalte) wird ein Wert (linke Spalte) zugewiesen
-
Zelle mit Pfeil: Zeigt an, dass einem Element (rechte Spalte) ein XPath-Ausdruck (linke Spalte) zugewiesen wird.
Mit einem Klick auf das Icon öffnen Sie den XSLT-Kommandoassistenten.
Siehe XSLT-Kommandoassistent
-
-
-
Schema-Ansicht
Zum Bearbeiten eines Schemas (nur verfügbar, wenn ein Schema geladen wurde)
Siehe Schema-Editor
-
Baum-Ansicht
-
Text-Ansicht
Zeigt die Elemente der Datei als Text an.
-
Externen Editor öffnen
Zeigt eine Liste aller Applikationsprofile an, die zum Öffnen der Datei verwendet werden können.
-
Suche
Siehe Registerweise Suche
Weitere Funktionen im XSLT Converter
Drag’n’Drop
Der XSLT Mapper bietet folgende Möglichkeiten, Elemente, XPath-Ausdrücke oder Strukturen per Drag’n’Drop zu erstellen:
Der Bereich, in dem etwas erstellt werden soll, muss schreibbar sein. Wählen Sie dazu aus der Werkzeugleiste > Editierbar. |
-
Elemente kopieren zwischen allen Bereichen per Drag‘n‘Drop
-
Elemente innerhalb eines Bereichs kopieren:
Halten Sie beim Drag-and-Drop die Strg-Taste gedrückt.
-
Neue Quell- oder Zielstruktur erstellen
-
Wählen Sie aus der Werkzeugleiste > Neu >
<Typ_der_neuen_Datei>
. -
Ziehen Sie ein Element in den Bereich.
-
-
XPath-Ausdruck erstellen
Ziehen Sie ein Element aus der XML-Quell-Datei in die linke Spalte des Stylesheet-Bereichs.
Kontextmenüs
Im Stylesheet-, Quell- und Zielbereich können Sie über die Kontextmenüs der Elemente folgende Funktionen nutzen:
Funktion | Erläuterung |
---|---|
Kopieren |
|
Text ausrichten |
Nur in den Textansichten verfügbar Verändert das Dokument |
Ausschneiden |
|
Einfügen |
|
Knoten verschieben – nach links |
Knoten vorher markieren |
Knoten verschieben – nach rechts |
Knoten vorher markieren |
Knoten verschieben – nach oben |
Knoten vorher markieren |
Knoten verschieben – nach unten |
Knoten vorher markieren |
Knoten zuklappen |
Knoten vorher markieren |
Knoten aufklappen |
Knoten vorher markieren |
Alle untergeordneten Knoten aufklappen |
Knoten vorher markieren |
Eingabefeld für die Suche öffnen |
|
Menü unter dem Pfeil öffnen |
Um Menü zu schließen, ohne einen Befehl auszuwählen, Escape drücken. |
Finde verwendete Knoten im Quelldokument |
Wenn Sie ein Element in der Mapping-Tabelle markieren und diese Option aufrufen, werden alle Knoten in der XML-Quelldatei markiert, die für das Element benutzt werden. Wird kein Knoten in der XML-Quelldatei gefunden, wird dies mit einem Warnton angezeigt. |
XSLT-Kommandoassistent |
Öffnet den XSLT Kommandoassistenten Siehe XSLT-Kommandoassistent |
XSLT-Datei testen |
Sie können Ihr XSLT-Stylesheet während der Erstellung testen. |
Tasten und ihre Funktion
Taste | Funktion |
---|---|
Entf |
Löscht das ausgewählte Element oder Attribut |
Pos1, Ende, Bild , Bild |
Zum Navigieren im Stylesheet |
Enter |
Navigiert eine Zeile nach unten |
Umschalt-Enter |
Navigiert eine Zeile nach oben |
Umschalt-, Umschalt- |
Markiert die aktuelle und die folgende(n) Zeile(n) |
Tabulator |
Zwischen XML-Quelle und XML-Ziel wechseln |
Einfg und hier nicht aufgeführte Tasten |
Wechselt in den Editiermodus für das ausgewählte Element/Attribut |
XSLT - Oracle Datenbank Explorer
In Datenbanken wie PostgreSQL, MySQL, MSSQL, MariaDB und DB2 kann ein einzelner Benutzer mehrere Schemas haben, sodass die Benutzer mehrere Schematabellendetails sehen können.
Da ein Benutzer in Oracle jedoch nur über ein Schema verfügt, müssen diesem Benutzer die entsprechenden Berechtigungen für den Zugriff auf die Schemas anderer Benutzer erteilt werden.
So gehen Sie vor
-
Öffnen Sie im XSLT-Converter das Menü und wählen Sie Öffnen > Datenbank Explorer aus. Der Dialog Datenbank Explorer wird angezeigt.
-
Wählen Sie Modul aus. Der Schemaname und SQl-Befehl werden geladen.
-
Wählen Sie Schemaname aus. Der entsprechende SQL-Anweisung und die Tabellen werden geladen.
Sowohl die Person, die den Zugriff gewährt, als auch die, die ihn erhält, müssen alle Rechte haben. |
Führen Sie die folgende Abfrage aus:
GRANT ALL PRIVILEGES TO <Benutzer>;
GRANT SELECT ANY DICTIONARY TO <Benutzer>
XSLT-Kommandoassistent
Aufruf
Führen Sie im Stylesheet-Bereich eine der folgenden Aktionen aus:
-
In der rechten Spalte Element markieren > Kontextmenü öffnen > XSLT-Kommandoassistent
-
In der mittleren Spalte oder klicken.
Aus Zellen mit einem Gleichheitszeichen (Attribut mit Wertzuweisung) können Sie den Assistenten nicht aufrufen! |
Der XSLT-Kommandoassistent gibt Ihnen Informationen zu dem XSLT-Element, das im Stylesheet-Bereich markiert ist, und fügt Elemente und Attribute an der gewünschten Position ein. Der XSLT-Kommandoassistent besteht aus folgenden Bereichen:
-
Element-Liste
Wahlweise XSLT 1.0 (veraltet), 2.0 oder 3.0.
-
Element-Erläuterungen
Zu dem Element, das in der Liste markiert ist
-
Attribut-Erläuterungen
Zu dem Attribut, das in der Attribut-Tabelle markiert ist.
-
Attribut-Tabelle
Anzeige aller Attribute und Attributwerte des markierten Elements.
-
Schwarze Schrift: obligatorisches Attribut
-
Graue Schrift: optionales Attribut
Die Wertebereiche der Attribute werden als Tooltipps über den Value-Feldern angezeigt. Um einem Attribut einen Wert zuzuweisen, klicken Sie in das Feld Value und geben den Wert ein.
Existiert für ein XSLT-Kommando das Attribut
select
, können Sie durch Klicken auf den -Button den XPath-Assistenten öffnen.
-
-
Position des XSLT-Elements
-
Voranstellen: Der Befehl wird auf die Hierarchieebene gestellt, auf der das aktuell markierte Element stand. Das Element wird darunter eingerückt.
-
Austauschen: Wechselt den vorhandenen XSLT Befehl gegen den ausgewählten Befehl aus.
-
Anhängen: Der Befehl wird unter das aktuell markierte Element und damit eine Hierarchieebene tiefer gestellt.
-
Saxon 10-Kompatibilität sicherstellen
Aktion
Vorhandene XSLT-Stylesheets migrieren, falls XSLT-Skripte fehlschlagen oder um die volle Saxon 10-Kompatibilität sicherzustellen.
So gehen Sie vor
-
Öffnen Sie den Tab Modul-Editor
-
Wählen Sie Data Converter > XSLT Converter im Modulbaum
-
Öffnen Sie das Kontextmenü und wählen Sie Nach Saxon 10 migrieren
-
Öffnen Sie den Tab Repository
-
Wählen Sie Repository Table
-
Öffnen Sie das Kontextmenü und wählen Sie Nach Saxon 10 migrieren
XSLT-Stylesheets testen
Sie können Ihr XSLT-Stylesheet bereits während der Erstellung testen.
So gehen Sie vor
Wählen Sie aus dem Menü Bearbeiten > XSLT-Datei testen oder klicken Sie in der Toolbar auf .
Das Ergebnis und die benötige Ausführungszeit werden im Bereich XML-Zieldatei im Register Ergebnis des Mappings angezeigt.
Ergebnis validieren
Sie haben folgende Möglichkeiten, die Gültigkeit des Mappings zu prüfen:
-
Gegen eine DTD validieren
Menü Bearbeiten > DTD Prüfung der Ergebnisdatei
Sie können diese Prüfung auch in der Werkzeugleiste des Bereichs Ergebnis des Mappings starten (Untermenü DTD Prüfung der Ergebnisdatei).
-
Gegen ein XML-Schema validieren
Menü Bearbeiten > Schemaprüfung der Ergebnisdatei
Sie können diese Prüfung auch in der Werkzeugleiste des Bereichs Ergebnis des Mappings starten (Untermenü Schemaprüfung der Ergebnisdatei).
Der Pfad zum Schema bzw. zur DTD muss im XSLT-Stylesheet angegeben sein; wenn nicht, dann werden Sie aufgefordert, eine passende Datei zu öffnen.
Das Ergebnis der Validierung wird in einem eigenen Dialog angezeigt. Falls Fehler gefunden wurden, dann werden diese präzise angegeben, damit Sie Ihr Mapping entsprechend ändern können.
Extensions und Java-Packages verwenden
Überblick
Um in einem XSLT-Stylesheet Funktionalitäten zu realisieren, die nicht durch den XSLT-Befehlssatz abgedeckt werden, verwenden Sie Extensions oder Funktionen aus Java-Packages.
Extensions verwenden
Eine Vielzahl gebrauchsfertiger Extensions siehe:
Sobald Sie Prozessor-spezifische Extensions einsetzen, ist Ihr XSLT-Stylesheet abhängig von dem ausgewählten XSLT-Prozessor! |
So gehen Sie vor
-
Zeigen Sie Ihr XSLT-Stylesheet an.
-
Fügen Sie dem
xsl:stylesheet
Element über das Kontextmenü einnamespace
-Attribut für Ihre Extension hinzu, z.B.:<xsl:stylesheet xmlns:string="http://exslt.org/string"/>
-
Fügen Sie das folgende Attribut hinzu:
extension-element-prefixes="string"
Extensions aufrufen
Eine Extension-Funktion wird über den festgelegten Namensraum und ihren Namen aufgerufen, z.B.:
<xsl:template match="/">
<tokens>
<xsl:for-each
select="string:tokenize('A,B,C,D,' , ',' )">
<xsl:copy-of select="."/>
</xsl:for-each>
</tokens>
</xsl:template>
Java-Packages der INUBIT-Software einbinden
Voraussetzungen
Sie haben beim Installieren der INUBIT-Software das SDK installiert.
Für Beschreibungen der INUBIT-eigenen Java-Packages öffnen Sie den folgenden Link: Package: Class: |
So gehen Sie vor
-
Zeigen Sie Ihre XSLT stylesheet an.
-
Fügen Sie dem
xsl:stylesheet
Element über das Kontextmenü einnamespace
-Attribut hinzu. Geben Sie als Wert den Package-Namen an, z.B.:<xsl:stylesheet xmlns:Formatter="java:com.inubit.ibis.xsltext.Formatter"/>
Funktion aus dem Package aufrufen
Eine Methode aus einem Package wird mit dem festgelegten Präfix und Namen aufgerufen:
<xsl:template match="/">
<DateTime>
<xsl:value-of select="Formatter:getDateTime('yyyyMMddHHmmss')"/>
</DateTime>
</xsl:template>
Beliebige XSLT-Prozessoren einbinden
Neben dem mitgelieferten XSLT-Prozessor können Sie beliebige andere XSLT-Prozessoren verwenden. Dazu benötigen Sie eine JAR-Datei mit dem XSLT Prozessor, dieses muss dem dafür festgelegten Java Interface entsprechen.
So gehen Sie vor
-
Zeigen Sie in der INUBIT Workbench das Register Administration an.
-
Um die JAR-Datei auf die INUBIT Process Engine zu laden, wählen Sie im Burger-Menü Konfiguration > Library Manager.
Ein Dialog öffnet sich.
Weitere Schritte siehe Bibliotheken verwalten
Vor dem Hochladen der JAR-Datei wählen Sie Treiber-Bibliothek im Bereich Bibliothekstyp.
-
Öffnen Sie die Eigenschaften Ihres XSLT Converters zum Bearbeiten oder erzeugen Sie ein neues Modul.
-
Geben Sie im Feld XSLT Prozessor den Klassennamen des neuen XSLT-Prozessors ein.
-
Klicken Sie auf Fertigstellen.
→ Nun können Sie den neuen XSLT-Prozessor verwenden.
Variablen verwenden
Sie können im XSLT Converter auf Variablen zugreifen, um z.B. verständliche Fehlermeldungen an einen Fehlerausgang zu senden.
Beachten Sie beim Einsatz von Variablen mit dem Typ |
So gehen Sie vor
-
Erstellen Sie ein XSL Converter Modul und integrieren Sie es in einen Technical Workflow.
-
Testen Sie den Technical Workflow.
-
Doppelklicken Sie den Watchpoint vor dem XSLT Converter Modul. Ein Dialog öffnet sich und zeigt die Ergebnisdatei mit allen Variablen an:
-
Um die Ergebnisdatei mit den Variablen in die Zwischenablage zu kopieren, klicken Sie auf Daten kopieren. Schließen Sie den Dialog.
-
Öffnen Sie das XSLT Converter Modul zum Bearbeiten.
-
Öffnen Sie im Stylesheet-Bereich das Menü () und wählen Sie Parameter aus der Zwischenablage. Ein Fenster zum Auswählen einer Variablen öffnet sich.
-
Markieren Sie eine Variable und klicken Sie auf OK.
Das Fenster schließt sich. Aus der Variablen wird ein gleichnamiger Parameter erstellt und im Stylesheet-Bereich angezeigt:
Siehe
Dialog XSLT Converter Eigenschaften
Transformator Eigenschaften
-
XSLT Prozessor
Zum Auswählen eines XSLT-Prozessors. Die XSLT-Prozessoren unterscheiden sich hinsichtlich des von ihnen unterstützten Sprachumfangs.
-
Prozessor-Attribute
In dieser Tabelle geben Sie Eigenschaften mit Werten für den XSLT-Prozessor an (implementierungsspezifische Transformer-Factory-Attribute).
Mapper Eigenschaften
-
Quell- und Zieldateien in der Process Engine speichern
Wenn markiert, dann werden die Quell- und Zieldateien auf der INUBIT Process Engine gespeichert und können somit auch auf anderen Client-Rechnern bearbeitet werden.
Wenn die Quell- und Zieldateien auf der INUBIT Process Engine sehr groß sind, kann die Performance beeinträchtigt werden, weil die Dateien bei jeder Ausführung des XSLT Converters geladen werden.
Wenn Sie das Modul bereits publiziert haben und später diese Option abwählen, dann werden die Dateien von der INUBIT Process Engine und die Referenz zur lokalen Kopie auf dem Client-Rechner gelöscht.
-
Eingangsnachricht ignorieren
Wenn die Option markiert ist, dann wird der Bereich XML-Quelldatei im XSLT Mapper ausgeblendet.
Diese Option ist sinnvoll, um mit einem oder mehreren XSLT-Stylesheets strukturierte Ausgangsnachrichten neu zu erstellen.
-
XSLT Stylesheet cachen
Wenn der XSLT Converter mehrfach kurz hintereinander aufgerufen wird, dann verbessert das Cachen des Stylesheets die Performance.
Das Modul im Cache wird beim Serverstart und beim Publizieren des Moduls aktualisiert.