Altova MapForce 2024 Professional Edition

Gibt true zurück, wenn der verbundene Node vorhanden ist und false, wenn dies nicht der Fall ist. Da ein Boolescher Wert zurückgegeben wird, wird diese Funktion normalerweise mit Filtern verwendet, um nur Datensätze herauszufiltern, die ein Child-Element oder Attribut haben (oder eventuell nicht haben).

mf-func-exists

 

Sprachen

Built-in, C++, C#, Java, XQuery, XSLT 1.0, XSLT 2.0, XSLT 3.0..

 

Parameter

Name

Beschreibung

node

Der Node, dessen Vorhandensein überprüft werden soll.

 

Beispiele

Im folgenden Mapping wird gezeigt, wie Sie Daten mit Hilfe einer exists-Funktion filtern. Dieses Mapping hat den Namen PersonListsForAllBranchOffices.mfd und befindet sich im Verzeichnis <Dokumente>\Altova\MapForce2024\MapForceExamples\.

mf-func-exists-example-01

PersonListsForAllBranchOffices.mfd

In der Quelldatei BranchOffices.xml gibt es drei Office-Elemente. Eines der Büros (office-Elemente) hat kein Contact Child-Element. Dieses Mapping hat mehrere Aufgaben:

 

a) Extraktion einer Liste der in jedem einzelnen Büro vorhandenen Kontakte.

b) Erstellung einer separaten XML-Datei für jedes Büro, wobei diese Datei denselben Namen wie das Büro hat.

c) Wenn das Büro keine Kontakte enthält, soll keine XML-Datei generiert werden.

 

Zu diesem Zweck wurde ein Filter zum Mapping hinzugefügt. Der Filter übergibt nur diejenigen Office-Datenelemente an die Zielkomponente, die mindestens ein Contact-Datenelement enthalten. Diese Boolesche Bedingung wird durch die exists-Funktion bereitgestellt. Wenn das Ergebnis der Funktion "true" ist, wird der Name des Büros (office) mit dem String .xml verkettet, um den Zieldateinamen zu erzeugen. Nähere Informationen zum Generieren von Dateinamen anhand des Mappings finden Sie unter Dynamische Verarbeitung mehrerer Input- oder Output-Dateien.

 

Ein weiteres Beispiel ist das folgende Mapping: <Dokumente>\Altova\MapForce2024\MapForceExamples\HasMarketingExpenses.mfd. Wenn hier in der XML-Quelldatei ein Datenelement expense-item existiert, wird das Attribut hasExpenses in der XML-Zieldatei auf true gesetzt.

mf-func-exists-example-02

HasMarketingExpenses.mfd

Siehe auch Beispiel: Ausnahme, wenn Node nicht vorhanden ist.

© 2017-2023 Altova GmbH