fn:empty

(Auszug aus "XSLT 2.0 & XPath 2.0" von Frank Bongers, Kapitel 5.)

A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z

   

Kategorie: Funktionen für Sequenzen

Herkunft: XPath 2.0

Rückgabewert: Ein boolescher Wert, true oder false.

Aufruf/Argumente:

fn:empty($sequenz)

$sequenz:
Eine Eingabesequenz, die daraufhin überprüft werden soll, ob es sich bei ihr um die leere Sequenz handelt.

Verwendungszweck:

Ist die Eingabesequenz der Funktion leer, enthält also keine Items, so gibt die Funktion den booleschen Wert true zurück. In allen anderen Fällen gibt die Funktion false zurück.

Alternativen zu fn:empty():
Das Verhalten von fn:empty($sequenz) entspricht, solange die Sequenz leer ist, dem Verhalten von fn:not($sequenz). Beide geben in diesem Fall den Wert true zurück. Besteht allerdings die getestete Sequenz aus einem einzigen Item, das vom Typ xs:boolean ist und den Wert false hat, so gibt fn:empty($sequenz) den Wert false zurück (da die Sequenz nicht leer ist), fn:not($sequenz) hingegen den Wert true (als Negation zu false). Zum zuverlässigen Prüfen auf die leere Sequenz ist der Einsatz von fn:empty() daher die sicherere Vorgehensweise. Ein tatsächlich funktionierendes Synonym wäre fn:count($sequenz)=0.

Beispiele:

Beispiel 1 – Test einer nicht leeren Sequenz:

fn:empty(('bla')) gibt false zurück.

Beispiel 2 – Test einer leeren Sequenz:

fn:empty(()) gibt true zurück.

Funktionsdefinition:

XPath 1.0:

Funktion nicht verfügbar

XPath 2.0:

fn:empty($srcval as item()*) as xs:boolean

   

<< zurück vor >>
Tipp der data2type-Redaktion:
Zum Thema XSLT bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an:

Copyright © Galileo Press, Bonn 2008
Für Ihren privaten Gebrauch dürfen Sie die Online-Version ausdrucken.
Ansonsten unterliegt dieses Kapitel aus dem Buch "XSLT 2.0 & XPath 2.0 ― Das umfassende Handbuch" denselben Bestimmungen wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Galileo Press, Rheinwerkallee 4, 53227 Bonn