XPath-Ausdrücke werden in Orchestrierungen und Schemadefinitionen für unstrukturierte Dateien verwendet, wenn es erforderlich ist, einen oder mehrere Knoten in einer Nachricht oder Variablen anzugeben, um auf Daten zuzugreifen oder zu ermitteln, ob eine Bedingung erfüllt wurde.
XPath ist ein XML-Standard, der eine Grammatik zur Identifizierung von Knoten (engl. nodes) oder Knotengruppen (engl. node sets) in XML-Dokumenten definiert.
Sie können die Standardwerte für XPath-Ausdrücke bearbeiten, die in den folgenden Fenstern generiert werden:
XPath 2.0 wird unterstützt.
XPath beschreibt die Position von XML-Elementen und Attributen in Form eines Pfads, der URLs oder Verzeichnissen in Ihrem lokalen Dateisystem ähnlich ist. Jedes Element oder Attribut ist ein Knoten in einer Baumstruktur, die mit dem Stammknoten beginnt. Der Stammknoten enthält die gesamte Baumstruktur, sodass sich jeder Knoten innerhalb der Baumstruktur durch Verfolgen eines Pfads entlang der Verzweigungen auffinden lässt.
Die grundlegende Syntax sieht wie folgt aus:
/stammknoten/untergeordneter-knoten/.../letzter-elementknoten/stammknoten/untergeordneter-knoten/.../letzter-elementknoten/@attributknoten
Sie bestimmen diesen Pfad gemäß dem XML-Schema, das die Nachrichten beschreibt.
In XPath wird das Symbol @ als Kurzform zur Bezeichnung von Attributen verwendet. Pfade ohne @ oder ohne das Präfix 'attribute::' geben standardmäßig Elemente an. Beispiel:
/PackingSlip/PONumber/ItemDieser Pfad identifiziert das Element 'Item' innerhalb des Elements PONumber im Stammknoten PackingSlip.
Knotennamen können auch mit Namespaces (Namensbereichen) auftreten. Beispiele: tns:OrderNumber oder *:Item. Der Teil des Namens bis zum Doppelpunkt ist ein Präfix, das einen Namespace angibt. Der Doppelpunkt ist das Begrenzungszeichen zwischen dem Namespace und dem lokalen Namen des Knotens.
Namespaces sind ein XML-Standard, der dazu dient, Elemente oder Attribute eindeutig zu identifizieren, wenn Dokumente Inhalte aus verschiedenen Schemata gemeinsam nutzen. In WebSphere Cast Iron Studio erfolgt die Zuweisung und Verwaltung von Namespaces für XML-Schemata, die in Konfigurationsdokumenten verwendet werden, automatisch.
Es ist gelegentlich wünschenswert, dass ein Knoten nur ausgewählt werden soll, wenn eine bestimmte Bedingung erfüllt ist. Solche Auswahlbedingungen werden als Prädikate bezeichnet.
Sie können Prädikate in eckigen Klammern definieren. Beispiele:
/PV1/PatientDepartment[text()='Nursery']Durch diesen Ausdruck wird der Knoten 'PatientDepartment' nur ausgewählt, wenn die Daten im Knoten den Wert 'Nursery' haben.
/Order/OrderDetail/Item[5]Durch diesen Ausdruck wird der fünfte Knoten 'Item' innerhalb des Elements 'OrderDetail' ausgewählt.
XPath-Ausdrücke können auch boolesche Bedingungen sein, die als wahr (true) oder falsch (false) ausgewertet werden. Solche Ausdrücke können zur Auswahl bestimmter Knoten oder lediglich zur Angabe einer zu erfüllenden Bedingung verwendet werden. Sie können den Expression Builder verwenden, der Sie bei der Definition von Bedingungen unterstützt. Die folgenden XPath-Operatoren können in Ausdrücken verwendet werden:
concat('New Order # ',/Orders/Order/OrdNumber)
count(/Orders/Order)
normalize-space(/Job/Address/Line1)
string(/PurchaseOrder/VendorID)
translate(/Issue/ShortDescr,
'abcdefghijklmnopqrstuvwxyz',
'ABCDEFGHIJKLMNOPQRSTUVWXYZ')
Eine vollständige Liste der XPath-Funktionen finden Sie in der XPath-Spezifikation (http://www.w3.org/TR/xpath).
Mithilfe von XPath Evaluator und XML-Testdaten können Sie Ihre XPath-Ausdrücke testen.