XSLT- und XPath/XQuery-Funktionen
Dieser Abschnitt enthält eine Liste von Altova-Erweiterungsfunktionen und anderen Erweiterungsfunktionen, die in XPath und/oder XQuery-Ausdrücken verwendet werden können. Altova-Erweiterungsfunktionen können mit dem XSLT- und XQuery-Prozessor von Altova verwendet werden und bieten zusätzliche Funktionalitäten zu den in den W3C-Standards definierten Funktionsbibliotheken.
Allgemeine Punkte
Beachten Sie bitte die folgenden allgemeinen Punkte:
•Funktionen aus den in den W3C-Spezifikationen definierten core-Funktionsbibliotheken können ohne Präfix aufgerufen werden, da der XSLT- und XQuery-Prozessor Funktionen, die kein Präfix haben, als Funktionen des Standard-Funktions-Namespace liest. Der Standard-Funktions-Namespace ist derjenige, der in den XPath/XQuery-Funktionsspezifikationen definiert ist http://www.w3.org/2005/xpath-functions. Wenn dieser Namespace in einem XSLT- oder XQuery-Dokument explizit deklariert ist, kann das in der Namespace-Deklaration definierte Präfix optional auch in Funktionsnamen verwendet werden.
•Grundsätzlich gilt: Wenn bei einer Funktion eine Sequenz von einem Datenelement als Argument erwartet wird und eine Sequenz von mehr als einem Datenelement gesendet wird, wird ein Fehler zurückgegeben.
•Alle String-Vergleiche werden unter Verwendung der Unicode Codepoint Collation ausgeführt.
•Ergebnisse, bei denen es sich um QNames handelt, werden in der Form [prefix:]localname serialisiert.
Präzision von xs:decimal
Die Präzision bezieht sich auf die Anzahl der Stellen in einer Zahl. Laut Spezifikation sind mindestens 18 Stellen erforderlich. Bei Divisionen, bei denen ein Ergebnis vom Typ xs:decimal erzeugt wird, beträgt die Präzision 19 Kommastellen ohne Runden.
Implizite Zeitzone
Beim Vergleich zweier date, time, oder dateTime Werte müssen die Zeitzonen der verglichenen Werte bekannt sein. Wenn die Zeitzone in einem solchen Wert nicht explizit angegeben ist, wird die implizite Zeitzone verwendet. Als implizite Zeitzone wird die der Systemuhr verwendet. Der Wert kann mit Hilfe der Funktion implicit-timezone() überprüft werden.
Collations
Die Standard-Collation ist die Unicode Codepoint Collation, die Strings auf Basis ihrer Unicode-Codepunkte vergleicht. Es wird der Unicode Collation Algorithmus verwendet. Andere unterstützte Collations sind die unten aufgelisteten ICU-Collations. Um eine bestimmte dieser Collations zu verwenden, geben Sie ihre in der nachstehenden Tabelle angegebene URI an. String-Vergleiche, wie die Funktionen max und min werden anhand der angegebenen Collation durchgeführt. Wenn die Collation-Option nicht definiert ist, wird die Standard-Unicode Codepoint Collation verwendet.
Sprache | URIs |
da: Dänisch | da_DK |
de: Deutsch | de_AT, de_BE, de_CH, de_DE, de_LI, de_LU |
en: Englisch | en_AS, en_AU, en_BB, en_BE, en_BM, en_BW, en_BZ, en_CA, en_GB, en_GU, en_HK, en_IE, en_IN, en_JM, en_MH, en_MP, en_MT, en_MU, en_NA, en_NZ, en_PH, en_PK, en_SG, en_TT, en_UM, en_US, en_VI, en_ZA, en_ZW |
es: Spanisch | es_419, es_AR, es_BO, es_CL, es_CO, es_CR, es_DO, es_EC, es_ES, es_GQ, es_GT, es_HN, es_MX, es_NI, es_PA, es_PE, es_PR, es_PY, es_SV, es_US, es_UY, es_VE |
fr: Französisch | fr_BE, fr_BF, fr_BI, fr_BJ, fr_BL, fr_CA, fr_CD, fr_CF, fr_CG, fr_CH, fr_CI, fr_CM, fr_DJ, fr_FR, fr_GA, fr_GN, fr_GP, fr_GQ, fr_KM, fr_LU, fr_MC, fr_MF, fr_MG, fr_ML, fr_MQ, fr_NE, fr_RE, fr_RW, fr_SN, fr_TD, fr_TG |
it: Italienisch | it_CH, it_IT |
ja: Japanisch | ja_JP |
nb: Norwegisch (Bokmal) | nb_NO |
nl: Holländisch | nl_AW, nl_BE, nl_NL |
nn: Norwegisch (Nynorsk) | nn_NO |
pt: Portugiesisch | pt_AO, pt_BR, pt_GW, pt_MZ, pt_PT, pt_ST |
ru: Russisch | ru_MD, ru_RU, ru_UA |
sv: Schwedisch | sv_FI, sv_SE |
Namespace-Achse
Die Namespace-Achse wird in XPath 2.0 nicht mehr verwendet, wird aber weiterhin unterstützt. Um Namespace-Informationen mit XPath 2.0-Mechanismen aufzurufen, verwenden Sie die Funktionen in-scope-prefixes(), namespace-uri() und namespace-uri-for-prefix().