type-available

(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: Information über die Laufzeitumgebung

Herkunft: XSLT 2.0

Rückgabewert: Die Funktion gibt abhängig von der Verfügbarkeit des genannten Schema-Typs den Wert true oder false zurück.

Aufruf/Argumente:

type-available($type-name)

$type-name:
Obligatorisch. Eine Zeichenkette xs:string in der lexikalischen Form eines QNames, der in seiner expandierten Form einem Schema-Typ entspricht, dessen Gültigkeit im statischen Kontext geprüft werden soll. Entspricht der übergebene String nicht einem QName, so wird ein Fehler gemeldet.

Verwendungszweck:

Die Funktion type-available() ist in der Lage, die Verfügbarkeit eines Schema-Typs im statischen Kontext des Stylesheets zu prüfen, der ihr in Form eines QNames übergeben wird. Der verarbeitende Prozessor muss hierfür XML Schema unterstützen (schema aware processor). Die Funktion prüft, sofern der geprüfte Typ atomar und von einem primitiven Typ abgeleitet ist, auch die Verfügbarkeit der zugehörigen Konstruktorfunktion.

Die Funktion ist für den Test importierter userdefinierter Schema-Typen in Zusammenhang mit den use-when-Attribut jedoch ungeeignet, da über <xsl:import-schema> importierte Schema-Definitionen zum Zeitpunkt der Auswertung des statischen Kontexts nicht zur Verfügung stehen (aus dem gleichen Grund würde der Test auf Verfügbarkeit eines Konstruktors eines importierten Typs mit function-available() in use-when ebenfalls fehlschlagen).

Anmerkung: Die aktuelle Implementierung der Funktion in Saxon 8.9 prüft auf Verfügbarkeit des Typs zur Laufzeit, sofern dies der Ausdruck, in dem die Funktion aufgerüfen wird, dies erfordert. Der Hersteller erklärt, dass dies ausdrücklich keinen Rückschluss auf die Verfügbarkeit des Typs im statischen Kontext zuließe.

Funktionsdefinition:

XSLT 1.0:

Funktion nicht verfügbar

XSLT 2.0:

type-available($type-name as xs:string) 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