fn:seconds-from-dateTime
(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: Wertextraktion aus Zeitwerten, Datumswerten und Dauer
Herkunft: XPath 2.0
Rückgabewert: Eine Dezimalzahl xs:decimal, die dem Wert der Sekunden und Sekundenbruchteile des übergebenen Zeitstempelwertes in dessen normalisierter Form entspricht.
Aufruf/Argumente:
fn:seconds-from-dateTime($zeitstempelwert)
$zeitstempelwert:
Optional. Ein Zeitstempelwert vom Typ xs:dateTime, der eine Zeitzonenangabe beinhalten kann. Wird die leere Sequenz übergeben, so gibt die Funktion eine leere Ergebnissequenz zurück.
Verwendungszweck:
Die Funktion gibt eine Dezimalzahl zwischen 0 und 60.99 (nicht 59.99, siehe unten!) zurück, die dem Wert der Sekundenkomponente und ihren Bruchteilen des übergebenen Zeitstempelwertes entspricht. Der übergebene Wert muss formal normalisiert werden, d.h., eine implizit oder explizit vorhandene Zeitzonenangabe muss eingerechnet werden. Auf den Wert der Sekundenkomponente hat dies jedoch keinen Einfluss.
Der Wert kann theoretisch die Zahl von 60 Sekunden überschreiten, da gelegentlich Schaltsekunden eingeschoben werden, um den offiziellen Zeitablauf den Unregelmäßigkeiten der Erdrotation anzupassen. Dies geschieht jedoch nur am 30. Juni oder 31. Dezember um 23:59:59 UTC. Ein Wert größer 60 tritt dementsprechend äußerst selten auf.
Erläuterung: Seit 1967 ist eine Sekunde als SI-Basiseinheit nicht mehr als Bruchteil eines Tages, sondern über eine Resonanz des Cäsium-Atoms definiert. Da die Erdrotation weniger gleichmäßig ist, sind zur Angleichung an die Standardzeit sogenannte Schaltsekunden nötig, die in Deutschland von der Physikalisch-Technischen Bundesanstalt festgelegt werden. Dies geschieht in Übernahme der international vom International Earth Rotation Service festgelegten Schaltsekunden. Im Mittel ist eine Anpassung einmal jährlich nötig. Eine Synchronisation von Rechnern mit der Standardzeit ermöglicht das Network Time Protocol NTP über entsprechende NTP-Server.
Beispiele:
Beispiel 1 – Sekunden aus Zeitstempelwert:
fn:seconds-from-dateTime(xs:dateTime("2007-07-20T13:34:45"))
ergibt 45. Der Wert der Sekundenkomponente kann unmittelbar entnommen werden.
Beispiel 2 – Sekunden aus Zeitstempelwert:
fn:seconds-from-dateTime(xs:dateTime("2007-07-20T13:34:45-05:00"))
ergibt 45. Die explizite Zeitzonenangabe erfordert im Prinzip eine Normalisierung, die sich hier allerdings nicht auf den Wert der Sekundenkomponente (wohl aber auf den der Stundenkomponente) auswirkt.
Funktionsdefinition:
XPath 1.0:
Funktion nicht verfügbar
XPath 2.0:
fn:seconds-from-dateTime($arg as xs:dateTime?)
as xs:decimal?
<< 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