XPath/XQuery-Funktionen: Datum und Uhrzeit

www.altova.com Alle erweitern/reduzieren Dieses Kapitel drucken Vorherige Seite Eine Ebene nach oben Nächste Seite

Startseite >  Anhänge > Informationen zu den Prozessoren > XSLT- und XPath/XQuery-Funktionen > Altova-Erweiterungsfunktionen >

XPath/XQuery-Funktionen: Datum und Uhrzeit

Die Datums- und Uhrzeit-Erweiterungsfunktionen von Altova können im Zusammenhang mit XPath- und XQuery-Ausdrücken verwendet werden und bieten zusätzliche Funktionalitäten für die Verarbeitung von Daten, die in Form von XML-Schema-Datums- und Uhrzeit-Datentypen zur Verfügung stehen. Diese Funktionen können mit dem XPath 3.0- und XQuery 3.0-Prozessor von Altova verwendet werden.

 

Anmerkung zur Benennung von Funktionen und zur Anwendbarkeit der Sprache

Altova-Erweiterungsfunktionen können in XPath/XQuery-Ausdrücken verwendet werden. Dadurch stehen neben den Funktionen in der Standardbibliothek der XPath-, XQuery- und XSLT-Funktionen zusätzliche Funktionen zur Verfügung. Die Altova-Erweiterungsfunktionen befinden sich im Altova-Erweiterungsfunktions-Namespace, http://www.altova.com/xslt-extensions und sind in diesem Abschnitt mit dem Präfix altova:, das als an diesen Namespace gebunden angenommen wird, gekennzeichnet. Beachten Sie, dass manche Funktionen in zukünftigen Versionen Ihres Produkts eventuell nicht mehr unterstützt werden oder dass sich das Verhalten einzelner Funktionen ändern kann. Um zu sehen, welche Altova-Erweiterungsfunktionen unterstützt werden, lesen Sie bitte die Dokumentation zur jeweiligen Release.

 

XPath-Funktionen (in XPath-Ausdrücken in XSLT verwendet):

XP1 XP2 XP3.1

XSLT-Funktionen (in XPath-Ausdrücken in XSLT verwendet):

Xslt1 XSLT2 XSLT3

XQuery-Funktionen (in XQuery-Ausdrücken in XQuery verwendet):

XQ1 XQ3.1

 

Click to expand/collapseNach Funktionalität gruppiert

 

Click to expand/collapseDatums- und Uhrzeitfunktionen in alphabetischer Reihenfolge:

 

[ Nach oben ]

 

 

Hinzufügen einer Zeitdauer zu xs:dateTime     XP3.1 XQ3.1

Mit diesen Funktionen werden Zeitdauerwerte zu xs:dateTime hinzugefügt, bevor xs:dateTime zurückgegeben wird. Der Typ xs:dateTime hat das Format JJJJ-MM-TTZhh:mm:ss.sss. Es handelt sich hierbei um eine Verkettung des xs:date und xs:time Formats, getrennt durch den Buchstaben Z. Ein Zeitzonensuffix +01:00 (z.B.) ist optional.

 

Click to expand/collapseadd-years-to-dateTime [altova:]

altova:add-years-to-dateTime(DateTime als xs:dateTime, Years als xs:integer) als xs:dateTime     XP3.1 XQ3.1

Fügt eine Zeitdauer in Jahren zu einem xs:dateTime Wert (siehe Beispiele unten) hinzu. Beim zweiten Argument handelt es sich um die Anzahl der Jahre, die zu dem im ersten Parameter angegebenen xs:dateTime Wert hinzugefügt werden sollen. Das Ergebnis ist vom Typ xs:dateTime.

altova:add-years-to-dateTime(xs:dateTime("2014-01-15T14:00:00"), 10) gibt 2024-01-15T14:00:00 zurück
altova:add-years-to-dateTime(xs:dateTime("2014-01-15T14:00:00"), -4) gibt 2010-01-15T14:00:00 zurück

 

 

Click to expand/collapseadd-months-to-dateTime [altova:]

altova:add-months-to-dateTime(DateTime als xs:dateTime, Months als xs:integer) als xs:dateTime     XP3.1 XQ3.1

Fügt eine Zeitdauer in Monaten zu einem xs:dateTime Wert (siehe Beispiele unten) hinzu. Beim zweiten Argument handelt es sich um die Anzahl der Monate, die zu dem im ersten Argument angegebenen xs:dateTime Wert hinzugefügt werden sollen. Das Ergebnis ist vom Typ xs:dateTime.

altova:add-months-to-dateTime(xs:dateTime("2014-01-15T14:00:00"), 10) gibt 2014-11-15T14:00:00 zurück
altova:add-months-to-dateTime(xs:dateTime("2014-01-15T14:00:00"), -2) gibt 2013-11-15T14:00:00 zurück

 

 

Click to expand/collapseadd-days-to-dateTime [altova:]

altova:add-days-to-dateTime(DateTime als xs:dateTime, Days als xs:integer) als xs:dateTime     XP3.1 XQ3.1

Fügt eine Zeitdauer in Tagen zu einem xs:dateTime Wert (siehe Beispiel unten) hinzu. Beim zweiten Argument handelt es sich um die Anzahl der Tage, die zu dem im ersten Argument angegebenen xs:dateTime Wert hinzugefügt werden sollen. Das Ergebnis ist vom Typ xs:dateTime.

altova:add-days-to-dateTime(xs:dateTime("2014-01-15T14:00:00"), 10) gibt 2014-01-25T14:00:00 zurück
altova:add-days-to-dateTime(xs:dateTime("2014-01-15T14:00:00"), -8) gibt 2014-01-07T14:00:00 zurück

 

 

Click to expand/collapseadd-hours-to-dateTime [altova:]

altova:add-hours-to-dateTime(DateTime als xs:dateTime, Hours als xs:integer) als xs:dateTime     XP3.1 XQ3.1

Fügt eine Zeitdauer in Stunden zu einem xs:dateTime Wert (siehe Beispiel unten) hinzu. Beim zweiten Argument handelt es sich um die Anzahl der Stunden, die zu dem im ersten Argument angegebenen xs:dateTime Wert hinzugefügt werden sollen. Das Ergebnis ist vom Typ xs:dateTime.

 

altova:add-hours-to-dateTime(xs:dateTime("2014-01-15T13:00:00"), 10) gibt 2014-01-15T23:00:00 zurück
altova:add-hours-to-dateTime(xs:dateTime("2014-01-15T13:00:00"), -8) gibt 2014-01-15T05:00:00 zurück

 

 

Click to expand/collapseadd-minutes-to-dateTime [altova:]

altova:add-minutes-to-dateTime(DateTime als xs:dateTime, Minutes als xs:integer) als xs:dateTime     XP3.1 XQ3.1

Fügt eine Zeitdauer in Minuten zu einem xs:dateTime Wert (siehe Beispiele unten) hinzu. Beim zweiten Argument handelt es sich um die Anzahl der Minuten, die zu dem im ersten Argument angegebenen xs:dateTime Wert hinzugefügt werden sollen. Das Ergebnis ist vom Typ xs:dateTime.

altova:add-minutes-to-dateTime(xs:dateTime("2014-01-15T14:10:00"), 45) gibt 2014-01-15T14:55:00 zurück
altova:add-minutes-to-dateTime(xs:dateTime("2014-01-15T14:10:00"), -5) gibt 2014-01-15T14:05:00 zurück

 

 

Click to expand/collapseadd-seconds-to-dateTime [altova:]

altova:add-seconds-to-dateTime(DateTime als xs:dateTime, Seconds als xs:integer) als xs:dateTime     XP3.1 XQ3.1

Fügt eine Zeitdauer in Sekunden zu einem xs:dateTime Wert (siehe Beispiele unten) hinzu. Beim zweiten Argument handelt es sich um die Anzahl der Sekunden, die zu dem im ersten Argument angegebenen xs:dateTime Wert hinzugefügt werden sollen. Das Ergebnis ist vom Typ xs:dateTime.

altova:add-seconds-to-dateTime(xs:dateTime("2014-01-15T14:00:10"), 20) gibt 2014-01-15T14:00:30 zurück
altova:add-seconds-to-dateTime(xs:dateTime("2014-01-15T14:00:10"), -5) gibt 2014-01-15T14:00:05 zurück

 

 

[ Nach oben ]

 

 

Hinzufügen einer Zeitdauer zu xs:date     XP3.1 XQ3.1

Mit diesen Funktionen werden Zeitdauerwerte zu xs:date hinzugefügt, bevor xs:date zurückgegeben wird. Der Typ xs:date hat das Format JJJJ-MM-TT.

 

Click to expand/collapseadd-years-to-date [altova:]

altova:add-years-to-date(Date als xs:date, Years als xs:integer) als xs:date     XP3.1 XQ3.1

Fügt eine Zeitdauer in Jahren zu einem Datumswert hinzu. Beim zweiten Argument handelt es sich um die Anzahl der Jahre, die zu dem im ersten Argument angegebenen xs:date Wert hinzugefügt werden sollen. Das Ergebnis ist vom Typ xs:date.

altova:add-years-to-date(xs:date("2014-01-15"), 10) gibt 2024-01-15 zurück
altova:add-years-to-date(xs:date("2014-01-15"), -4) gibt 2010-01-15 zurück

 

 

Click to expand/collapseadd-months-to-date [altova:]

altova:add-months-to-date(Date als xs:date, Months als xs:integer) als xs:date     XP3.1 XQ3.1

Fügt eine Zeitdauer in Monaten zu einem Datumswert hinzu. Beim zweiten Argument handelt es sich um die Anzahl der Monate, die zu dem im ersten Argument angegebenen xs:date Wert hinzugefügt werden sollen. Das Ergebnis ist vom Typ xs:date.

altova:add-months-to-date(xs:date("2014-01-15"), 10) gibt 2014-11-15 zurück
altova:add-months-to-date(xs:date("2014-01-15"), -2) gibt 2013-11-15 zurück

 

 

Click to expand/collapseadd-days-to-date [altova:]

altova:add-days-to-date(Date als xs:date, Days als xs:integer) als xs:date     XP3.1 XQ3.1

Fügt eine Zeitdauer in Tagen zu einem Datumswert hinzu. Beim zweiten Argument handelt es sich um die Anzahl der Tage, die zu dem im ersten Argument angegebenen xs:date Wert hinzugefügt werden sollen. Das Ergebnis ist vom Typ xs:date.

altova:add-days-to-date(xs:date("2014-01-15"), 10) gibt 2014-01-25 zurück
altova:add-days-to-date(xs:date("2014-01-15"), -8) gibt 2014-01-07 zurück

 

 

[ Nach oben ]

 

 

Formatieren und Abrufen einer Zeitdauer     XP3.1 XQ3.1

Mit diesen Funktionen wird eine Zeitdauer zu xs:date hinzugefügt und xs:date zurückgegeben. Der Typ xs:date hat das Format CCJJ-MM-TT.

 

Click to expand/collapseformat-duration [altova:]

altova:format-duration(Duration als xs:duration, Picture als xs:string) als xs:string     XP3.1 XQ3.1

Formatiert eine Zeitdauer, die als erstes Argument bereitgestellt wird, gemäß einem Muster-String, der als zweites Argument bereitgestellt wird. Die Ausgabe ist ein Textstring, der dem Muster-String entsprechend formatiert ist.

altova:format-duration(xs:duration("P2DT2H53M11.7S"), "Days:[D01] Hours:[H01] Minutes:[m01] Seconds:[s01] Fractions:[f0]") gibt "Days:02 Hours:02 Minutes:53 Seconds:11 Fractions:7" gibt
altova:format-duration(xs:duration("P3M2DT2H53M11.7S"), "Months:[M01] Days:[D01] Hours:[H01] Minutes:[m01]") gibt "Months:03 Days:02 Hours:02 Minutes:53" gibt

 

 

Click to expand/collapseparse-duration [altova:]

altova:parse-duration(InputString als xs:string, Picture als xs:string) als xs:duration     XP3.1 XQ3.1

Erhält einen Pattern-String als erstes Argument und eine Muster-String als zweites Argument. Der Input-Strings wird auf Basis des Muster-Strings geparst und ein xs:duration wird zurückgegeben.

altova:parse-duration("Days:02 Hours:02 Minutes:53 Seconds:11 Fractions:7"), "Days:[D01] Hours:[H01] Minutes:[m01] Seconds:[s01] Fractions:[f0]") gibt "P2DT2H53M11.7S" zurück
altova:parse-duration("Months:03 Days:02 Hours:02 Minutes:53 Seconds:11 Fractions:7", "Months:[M01] Days:[D01] Hours:[H01] Minutes:[m01]") gibt "P3M2DT2H53M" zurück

 

 

[ Nach oben ]

 

 

Hinzufügen einer Zeitdauer zu xs:time     XP3.1 XQ3.1

Diese Funktionen fügen einen Zeitdauerwert zu xs:time hinzu und geben xs:time zurück. Der Typ xs:time entspricht in seiner lexikalischen Form hh:mm:ss.sss. Eine optionale Zeitzone kann angehängt werden. Der Buchstabe Z steht für Coordinated Universal Time (UTC). Alle anderen Zeitzonen werden in Form des Zeitunterschieds zur UTC im Format +hh:mm, oder -hh:mm dargestellt. Wenn kein Wert für die Zeitzone vorhanden ist, wird sie als unbekannt und nicht als UTC angenommen.

 

Click to expand/collapseadd-hours-to-time [altova:]

altova:add-hours-to-time(Time als xs:time, Hours als xs:integer) als xs:time     XP3.1 XQ3.1

Fügt eine Zeitdauer in Stunden zu einem Uhrzeitwert hinzu. Beim zweiten Argument handelt es sich um die Anzahl der Stunden, die zu dem im ersten Argument angegebenen xs:time Wert hinzugefügt werden sollen. Das Ergebnis ist vom Typ xs:time.

altova:add-hours-to-time(xs:time("11:00:00"), 10) gibt 21:00:00 zurück
altova:add-hours-to-time(xs:time("11:00:00"), -7) gibt 04:00:00 zurück

 

 

Click to expand/collapseadd-minutes-to-time [altova:]

altova:add-minutes-to-time(Time als xs:time, Minutes als xs:integer) als xs:time     XP3.1 XQ3.1

Fügt eine Zeitdauer in Minuten zu einem xs:time Wert hinzu. Beim zweiten Argument handelt es sich um die Anzahl der Minuten, die zu dem im ersten Argument angegebenen xs:time Wert hinzugefügt werden sollen. Das Ergebnis ist vom Typ xs:time.

altova:add-minutes-to-time(xs:time("14:10:00"), 45) gibt 14:55:00 zurück
altova:add-minutes-to-time(xs:time("14:10:00"), -5) gibt 14:05:00 zurück

 

 

Click to expand/collapseadd-seconds-to-time [altova:]

altova:add-seconds-to-time(Time as xs:time, Minutes als xs:integer) als xs:time     XP3.1 XQ3.1

Fügt eine Zeitdauer in Sekunden zu einem Uhrzeitwert hinzu. Beim zweiten Argument handelt es sich um die Anzahl der Sekunden, die zu dem im ersten Argument angegebenen xs:time Wert hinzugefügt werden sollen. Das Ergebnis ist vom Typ xs:time. Die Seconds Komponenten kann sich im Bereich von 0 bis 59.999 befinden.

altova:add-seconds-to-time(xs:time("14:00:00"), 20) gibt 14:00:20 zurück
altova:add-seconds-to-time(xs:time("14:00:00"), 20.895) gibt 14:00:20.895 zurück

 

 

[ Nach oben ]

 

 

Entfernen der Zeitzone aus date/time-Datentypen     XP3.1 XQ3.1

Diese Funktionen entfernen die Zeitzone aus den aktuellen xs:dateTime, xs:date bzw. xs:time Werten. Beachten Sie, dass im Unterschied zu xs:dateTime bei xs:dateTimeStamp die Zeitzone erforderlich ist (während sie im ersteren Fall optional ist). Das Format eines xs:dateTimeStamp Werts lautet daher: JJJJ-MM-TTZhh:mm:ss.sss±hh:mm. oder JJJJ-MM-TTZhh:mm:ss.sssZ. Wenn das Datum und die Uhrzeit von der Systemuhr als xs:dateTimeStamp ausgelesen wird, können Sie die Zeitzone, falls erforderlich, mit der Funktion current-dateTime-no-TZ() entfernen.

 

Click to expand/collapsecurrent-date-no-TZ [altova:]

altova:current-date-no-TZ() als xs:date     XP3.1 XQ3.1

Die Funktion hat kein Argument. Sie entfernt die Zeitzone aus dem current-date() Wert (welcher das aktuelle Datum laut Systemuhr ist) und gibt einen xs:date Wert zurück.

Wenn das aktuelle Datum 2014-01-15+01:00 lautet:

 

altova:current-date-no-TZ() gibt 2014-01-15 zurück

 

 

Click to expand/collapsecurrent-dateTime-no-TZ [altova:]

altova:current-dateTime-no-TZ() als xs:dateTime     XP3.1 XQ3.1

Die Funktion hat kein Argument. Sie entfernt die Zeitzone aus dem current-dateTime() Wert (welcher das aktuelle Datum und die aktuelle Uhrzeit laut Systemuhr ist) und gibt einen xs:dateTime Wert zurück.

Wenn der aktuelle Datums- und Uhrzeitwert 2014-01-15T14:00:00+01:00 lautet:

 

altova:current-dateTime-no-TZ() gibt 2014-01-15T14:00:00 zurück

 

 

Click to expand/collapsecurrent-time-no-TZ [altova:]

altova:current-time-no-TZ() als xs:time     XP3.1 XQ3.1

Die Funktion hat kein Argument. Sie entfernt die Zeitzone aus dem current-time() Wert (welcher die aktuelle Uhrzeit laut Systemuhr ist) und gibt einen xs:time Wert zurück.

Wenn der aktuelle Uhrzeitwert 14:00:00+01:00 lautet:

 

altova:current-time-no-TZ() gibt 14:00:00 zurück

 

 

Click to expand/collapsedate-no-TZ [altova:]

altova:date-no-TZ(InputDate as xs:date) als xs:date     XP3.1 XQ3.1

Diese Funktion verwendet ein xs:date Argument, entfernt den Zeitzonenteil daraus und gibt einen xs:date Wert zurück. Beachten Sie, dass das Datum nicht geändert wird..

altova:date-no-TZ(xs:date("2014-01-15+01:00")) gibt 2014-01-15 zurück

 

 

Click to expand/collapsedateTime-no-TZ [altova:]

altova:dateTime-no-TZ(InputDateTime als xs:dateTime) als xs:dateTime     XP3.1 XQ3.1

Diese Funktion verwendet ein xs:dateTime Argument, entfernt den Zeitzonenteil daraus und gibt einen xs:dateTime Wert zurück. Beachten Sie, dass weder Datum noch Uhrzeit geändert werden.

altova:dateTime-no-TZ(xs:date("2014-01-15T14:00:00+01:00")) gibt 2014-01-15T14:00:00 zurück

 

 

Click to expand/collapsetime-no-TZ [altova:]

altova:time-no-TZ(InputTime als xs:time) als xs:time     XP3.1 XQ3.1

Diese Funktion verwendet ein xs:time Argument, entfernt den Zeitzonenteil daraus und gibt einen xs:time Wert zurück. Beachten Sie, dass die Uhrzeit nicht geändert wird.

altova:time-no-TZ(xs:time("14:00:00+01:00")) gibt 14:00:00 zurück

 

 

[ Nach oben ]

 

Rückgabe der Anzahl von Tagen, Stunden, Minuten, Sekunden anhand einer Zeitdauer     XP3.1 XQ3.1

Diese Funktionen geben die Anzahl der Tage in einem Monat bzw. die Anzahl der Stunden, Minuten und Sekunden anhand einer Zeitdauer zurück.

 

Click to expand/collapsedays-in-month [altova:]

altova:days-in-month(Year als xs:integer, Month als xs:integer) als xs:integer     XP3.1 XQ3.1

Gibt die Anzahl der Tage im angegebenen Monat zurück. Der Monat wird mit Hilfe der Argumente Year und Month angegeben.

altova:days-in-month(2018, 10) gibt 31 zurück
altova:days-in-month(2018,  2) gibt 28 zurück
altova:days-in-month(2020,  2) gibt 29 zurück

 

 

Click to expand/collapsehours-from-dayTimeDuration-accumulated

altova:hours-from-dayTimeDuration-accumulated(DayAndTime als xs:duration) als xs:integer     XP3.1 XQ3.1

Gibt die Gesamtzahl der Stunden in der durch das Argument DayAndTime bereitgestellten Zeitdauer (vom Typ xs:duration) zurück. Die Stunden in den Komponenten Day und Time werden addiert, um ein Ergebnis in Form einer Ganzzahl zu erhalten. Für vollständige 60 Minuten wird eine neue Stunde berechnet. Negative Zeitdauerergebnisse ergeben einen negativen Stundenwert.

altova:hours-from-dayTimeDuration-accumulated(xs:duration("P5D") gibt 120 zurück, d.h. die Gesamtanzahl der Stunden in 5 Tagen.
altova:hours-from-dayTimeDuration-accumulated(xs:duration("P5DT2H") gibt 122 zurück, d.h. die Gesamtzahl der Stunden in 5 Tagen plus 2 Stunden.
altova:hours-from-dayTimeDuration-accumulated(xs:duration("P5DT2H60M") gibt 123 zurück, d.h. die Gesamtzahl der Stunden in 5 Tagen plus 2 Stunden und 60 Minuten.
altova:hours-from-dayTimeDuration-accumulated(xs:duration("P5DT2H119M") gibt 123 zurück, d.h. die Gesamtzahl der Stunden in 5 Tagen plus 2 Stunden und 119 Minuten.
altova:hours-from-dayTimeDuration-accumulated(xs:duration("P5DT2H120M")gibt 124 zurück, d.h. die Gesamtzahl der Stunden in 5 Tagen plus 2 Stunden und 120 Minuten.
altova:hours-from-dayTimeDuration-accumulated(xs:duration("-P5DT2H") gibt -122 zurück.

 

 

Click to expand/collapseminutes-from-dayTimeDuration-accumulated

altova:minutes-from-dayTimeDuration-accumulated(DayAndTime als xs:duration) als xs:integer     XP3.1 XQ3.1

Gibt die Gesamtzahl der Minuten in der durch das Argument DayAndTime bereitgestellten Zeitdauer (vom Typ xs:duration) zurück. Die Minuten in den Komponenten Day und Time werden addiert, um ein Ergebnis in Form einer Ganzzahl zu erhalten. Negative Zeitdauerergebnisse ergeben einen negativen Minutenwert.

altova:minutes-from-dayTimeDuration-accumulated(xs:duration("PT60M") gibt 60 zurück.
altova:minutes-from-dayTimeDuration-accumulated(xs:duration("PT1H") gibt 60 zurück, d.h. die Gesamtzahl der Minuten in 1 Stunde.
altova:minutes-from-dayTimeDuration-accumulated(xs:duration("PT1H40M") gibt 100 zurück.
altova:minutes-from-dayTimeDuration-accumulated(xs:duration("P1D") gibt 1440 zurück, d.h. die Gesamtzahl der Minuten an einem Tag.
altova:minutes-from-dayTimeDuration-accumulated(xs:duration("-P1DT60M") gibt -1500 zurück.

 

 

Click to expand/collapseseconds-from-dayTimeDuration-accumulated

altova:seconds-from-dayTimeDuration-accumulated(DayAndTime als xs:duration) als xs:integer     XP3.1 XQ3.1

Gibt die Gesamtzahl der Sekunden in der durch das Argument DayAndTime bereitgestellten Zeitdauer (vom Typ xs:duration) zurück. Die Sekunden in den Komponenten Day und Time werden addiert, um ein Ergebnis in Form einer Ganzzahl zu erhalten. Negative Zeitdauerergebnisse ergeben einen negativen Sekundenwert.

altova:seconds-from-dayTimeDuration-accumulated(xs:duration("PT1M") gibt 60 zurück, d.h. die Gesamtzahl der Sekunden in 1 Minute.
altova:seconds-from-dayTimeDuration-accumulated(xs:duration("PT1H") gibt 3600 zurück, d.h. die Gesamtzahl der Sekunden in 1 Stunde.
altova:seconds-from-dayTimeDuration-accumulated(xs:duration("PT1H2M") gibt 3720 zurück.
altova:seconds-from-dayTimeDuration-accumulated(xs:duration("P1D")gibt 86400 zurück, d.h. die Gesamtzahl der Sekunden an 1 Tag.
altova:seconds-from-dayTimeDuration-accumulated(xs:duration("-P1DT1M") gibt -86460 zurück.

 

 

 

Rückgabe des Wochentages anhand von xs:dateTime oder xs:date     XP3.1 XQ3.1

Diese Funktionen geben anhand des xs:dateTime oder xs:date Werts den Wochentag in Form einer Ganzzahl zurück. Die Tage der Woche sind (im amerikanischen Format) von 1 bis 7 nummeriert, wobei Sonntag=1. Im europäischen Format beginnt die Woche am Montag (=1). Das amerikanische Format, in dem Sonntag=1, kann mittels der Ganzzahl 0 definiert werden, wenn das Format mittels einer Ganzzahl angegeben werden kann.

 

 

Click to expand/collapseweekday-from-dateTime [altova:]

altova:weekday-from-dateTime(DateTime als xs:dateTime) als xs:integer     XP3.1 XQ3.1

Erhält ein Datum mit einer Uhrzeit als einziges Argument und gibt den Tag der Woche dieses Datums in Form einer Ganzzahl zurück. Die Wochentage sind beginnend mit Sonntag=1 nummeriert. Wenn das europäische Format benötigt wird (wo Montag=1), verwenden Sie die andere Signatur dieser Funktion (siehe nächste Signatur unten).

altova:weekday-from-dateTime(xs:dateTime("2014-02-03T09:00:00")) gibt 2 zurück, wobei 2 für Montag steht.

 

altova:weekday-from-dateTime(DateTime als xs:dateTime, Format als xs:integer) als xs:integer     XP3.1 XQ3.1

Erhält ein Datum mit einer Uhrzeit als erstes Argument und gibt den Tag der Woche dieses Datums in Form einer Ganzzahl zurück. Die Wochentage sind beginnend mit Montag=1 nummeriert. Wenn das zweite (Integer)-Argument 0 ist, werden die Wochentage beginnend mit Sonntag=1 von 1 bis 7 nummeriert. Wenn das zweite Argument eine andere Ganzzahl als 0 ist, so ist Montag=1. Wenn es kein zweites Argument gibt, wird die Funktion gelesen, als ob sie die andere Signatur dieser Funktion hätte (siehe vorherige Signatur).

altova:weekday-from-dateTime(xs:dateTime("2014-02-03T09:00:00"), 1) gibt 1, zurück, wobei 1 für Montag steht
altova:weekday-from-dateTime(xs:dateTime("2014-02-03T09:00:00"), 4) gibt 1, zurück, wobei 1 für Montag steht
altova:weekday-from-dateTime(xs:dateTime("2014-02-03T09:00:00"), 0) gibt 2, zurück, wobei 2 für Montag steht

 

 

Click to expand/collapseweekday-from-date [altova:]

altova:weekday-from-date(Date als xs:date) als xs:integer     XP3.1 XQ3.1

Erhält ein Datum als einziges Argument und gibt den Tag der Woche dieses Datums in Form einer Ganzzahl zurück. Die Wochentage sind beginnend mit Sonntag=1 nummeriert. Wenn das europäische Format benötigt wird (wo Montag=1), verwenden Sie die andere Signatur dieser Funktion (siehe nächste Signatur unten).

altova:weekday-from-date(xs:date("2014-02-03+01:00")) gibt 2 zurück, wobei 2 für Montag steht.

 

altova:weekday-from-date(Date als xs:date, Format als xs:integer) als xs:integer     XP3.1 XQ3.1

Erhält ein Datum als erstes Argument und gibt den Tag der Woche dieses Datums in Form einer Ganzzahl zurück. Die Wochentage sind beginnend mit Montag=1 nummeriert. Wenn das zweite Argument (Format) 0 ist, werden die Wochentage beginnend mit Sonntag=1 von 1 bis 7 nummeriert. Wenn das zweite Argument eine andere Ganzzahl als 0 ist, so ist Montag=1. Wenn es kein zweites Argument gibt, wird die Funktion gelesen, als ob sie die andere Signatur dieser Funktion hätte (siehe vorherige Signatur).

altova:weekday-from-date(xs:date("2014-02-03"), 1) gibt 1, zurück, wobei 1 für Montag steht
altova:weekday-from-date(xs:date("2014-02-03"), 4)  gibt 1, zurück, wobei 1 für Montag steht
altova:weekday-from-date(xs:date("2014-02-03"), 0) gibt 2, zurück, wobei 2 für Montag steht

 

 

[ Nach oben ]

 

Rückgabe der Wochennummer anhand von xs:dateTime oder xs:date     XP2 XQ1 XP3.1 XQ3.1

Diese Funktionen geben anhand von xs:dateTime oder xs:date die Wochennummer als Ganzzahl zurück. Die Wochennummer steht in den Kalenderformaten US, ISO/European und Islamic zur Verfügung. Die Wochennummerierung unterscheidet sich in diesen Kalenderformaten, da die Woche in diesen Formaten an unterschiedlichen Tagen beginnt (Im Format US am Sonntag, im Format ISO/European am Montag und im Format Islamic am Samstag).

 

Click to expand/collapseweeknumber-from-date [altova:]

altova:weeknumber-from-date(Date als xs:date, Calendar als xs:integer) als xs:integer     XP2 XQ1 XP3.1 XQ3.1

Gibt die Wochennummer des bereitgestellten Date Arguments als Ganzzahl zurück. Das zweite Argument (Calendar) definiert das zu verwendende Kalendersystem.

Unterstützte Calendar Werte sind:

 

0 = US-Kalender (Woche beginnt am Sonntag)
1 = ISO-Standard, Europäischer Kalender (Woche beginnt am Montag)
2 = Islamischer Kalender (Woche beginnt am Samstag)

 

Der Standardwert ist 0.

 

altova:weeknumber-from-date(xs:date("2014-03-23"), 0) gibt 13 zurück
altova:weeknumber-from-date(xs:date("2014-03-23"), 1) gibt 12 zurück
altova:weeknumber-from-date(xs:date("2014-03-23"), 2) gibt 13 zurück
altova:weeknumber-from-date(xs:date("2014-03-23")   ) gibt 13 zurück

 

Der Tag des Datums in den obigen Beispielen (2014-03-23) ist ein Sonntag. Daher ist der US- und der islamische Kalender dem europäischen Kalender an diesem Tag eine Woche voraus.

 

 

Click to expand/collapseweeknumber-from-dateTime [altova:]

altova:weeknumber-from-dateTime(DateTime als xs:dateTime, Calendar als xs:integer) als xs:integer     XP2 XQ1 XP3.1 XQ3.1

Gibt die Wochennummer des bereitgestellten DateTime Arguments als Ganzzahl zurück. Das zweite Argument (Calendar) definiert das zu verwendende Kalendersystem.

Unterstützte Calendar Werte sind:

 

0 = US-Kalender (Woche beginnt am Sonntag)
1 = ISO-Standard, Europäischer Kalender (Woche beginnt am Montag)
2 = Islamischer Kalender (Woche beginnt am Samstag)

 

Der Standardwert ist 0.

 

altova:weeknumber-from-dateTime(xs:dateTime("2014-03-23T00:00:00"), 0) gibt 13 zurück
altova:weeknumber-from-dateTime(xs:dateTime("2014-03-23T00:00:00"), 1) gibt 12 zurück
altova:weeknumber-from-dateTime(xs:dateTime("2014-03-23T00:00:00"), 2) gibt 13 zurück
altova:weeknumber-from-dateTime(xs:dateTime("2014-03-23T00:00:00")   ) gibt 13 zurück

 

Der Tag des Datums- und Uhrzeitwerts in den obigen Beispielen (2014-03-23T00:00:00) ist ein Sonntag. Daher ist der US- und der islamische Kalender dem europäischen Kalender an diesem Tag eine Woche voraus.

 

 

[ Nach oben ]

 

 

Erstellen des Datums-, Uhrzeit- oder Zeitdauer-Datentyps anhand der lexikalischen Komponenten der einzelnen Typen     XP3.1 XQ3.1

Die Funktionen erhalten die lexikalischen Komponenten des xs:date, xs:time oder xs:duration-Datentyps als Input-Argumente und kombinieren diese zum entsprechenden Datentyp.

 

 

Click to expand/collapsebuild-date [altova:]

altova:build-date(Year als xs:integerMonth als xs:integerDate als xs:integer) als xs:date     XP3.1 XQ3.1

Das erste, zweite und dritte Argument steht für das Jahr, bzw. den Monat bzw. das Datum. Sie werden zu einem Wert vom Typ xs:date kombiniert. Die Werte der Ganzzahlen müssen sich innerhalb des korrekten Bereichs dieses jeweiligen Datumsteils befinden. So sollte z.B. das zweite Argument nicht größer als 12 sein.

altova:build-date(2014, 2, 03) gibt 2014-02-03 zurück

 

 

Click to expand/collapsebuild-time [altova:]

altova:build-time(Hours als xs:integerMinutes als xs:integerSeconds als xs:integer) als xs:time     XP3.1 XQ3.1

Das erste, zweite und dritte Argument steht für die Stunde (0 bis 23), bzw. die Minuten (0 bis 59) bzw. die Sekunden (0 bis 59). Sie werden zu einem Wert von Typ xs:time kombiniert. Die Werte der Ganzzahlen müssen sich innerhalb des korrekten Bereichs dieses jeweiligen Uhrzeitteils befinden. So sollte z.B. der zweite Parameter nicht größer als 59 sein. Um eine Zeitzone zum Wert hinzuzufügen, verwenden Sie die andere Signatur der Funktion (siehe nächste Signatur).

 

altova:build-time(23, 4, 57) gibt 23:04:57 zurück

 

altova:build-time(Hours als xs:integerMinutes als xs:integerSeconds als xs:integerTimeZone als xs:string) als xs:time     XP3.1 XQ3.1

Das erste, zweite und dritte Argument steht für die Stunde (0 bis 23), bzw. die Minuten (0 bis 59) bzw. die Sekunden (0 bis 59). Das vierte Argument ist ein String, der den Zeitzonenteil des Werts liefert. Die vier Argumente werden zu einem Wert vom Typ xs:time kombiniert. Die Werte der Ganzzahlen müssen sich innerhalb des korrekten Bereichs dieses jeweiligen Uhrzeitteils befinden. So sollte z.B. das zweite Argument (Minuten) nicht größer als 59 sein.

altova:build-time(23, 4, 57, '+1') gibt 23:04:57+01:00 zurück

 

 

Click to expand/collapsebuild-duration [altova:]

altova:build-duration(Years als xs:integerMonths als xs:integer) als xs:yearMonthDuration     XP3.1 XQ3.1

Setzt aus zwei Argumenten einen Wert vom Typ xs:yearMonthDuration zusammen. Das erste Argument liefert den Jahr-Teil des Zeitdauerwerts, während das zweite Argument den Monat-Teil liefert. Wenn der zweite Parameter (Monate) größer oder gleich 12 ist, so wird die Ganzzahl durch 12 dividiert. Der Quotient wird zum ersten Argument hinzugefügt, um den Jahr-Teil des Zeitdauerwerts zu liefern, während der Rest (der Division) den Monat-Teil liefert. Eine Beschreibung zur Erstellung einer Zeitdauer vom Typ xs:dayTimeDuration finden Sie in der nächsten Signatur.

altova:build-duration(2, 10) gibt P2Y10M zurück
altova:build-duration(14, 27) gibt P16Y3M zurück
altova:build-duration(2, 24) gibt P4Y zurück

 

altova:build-duration(Days als xs:integerHours als xs:integerMinutes als xs:integerSeconds als xs:integer) als xs:dayTimeDuration     XP3.1 XQ3.1

Kombiniert vier Argumente zu einem Wert vom Typ xs:dayTimeDuration. Das erste Argument liefert den Tage-Teil, das zweite die Stunden, das dritte die Minuten und das vierte die Sekunden des Zeitdauerwerts. Die einzelnen Uhrzeitparameter werden in den entsprechenden Wert für die nächsthöhere Einheit konvertiert und das Ergebnis wird zur Berechnung der Gesamtdauer weitergegeben. So werden z.B. 72 Sekunden in 1M(inute)12S(ekunden) konvertiert. Dieser Wert wird zur Berechnung der Gesamtdauer weitergegeben. Um eine Zeitdauer vom Typ xs:yearMonthDuration zu berechnen, verwenden Sie die vorherige Signatur.

altova:build-duration(2, 10, 3, 56) gibt P2DT10H3M56S zurück
altova:build-duration(1, 0, 100, 0) gibt P1DT1H40M zurück
altova:build-duration(1, 0, 0, 3600) gibt P1DT1H zurück

 

 

[ Nach oben ]

 

Konstruieren von Datum, Datum und Uhrzeit und Zeit-Datentypen anhand des String-Input     XP2 XQ1 XP3.1 XQ3.1

Diese Funktionen erhalten Strings als Argumente und konstruieren anhand dieser die Datentypen xs:date, xs:dateTime oder xs:time. Der String wird anhand eines bereitgestellten Pattern-Arguments nach Komponenten des Datentyps analysiert.

 

Click to expand/collapseparse-date [altova:]

altova:parse-date(Date als xs:string, DatePattern als xs:string) als xs:date     XP2 XQ1 XP3.1 XQ3.1

Gibt den Input-String Date als xs:date Wert zurück. Das zweite Argument DatePattern definiert das Pattern (die Komponentensequenz) des Input-String. DatePattern wird durch die unten aufgelisteten Komponenten-Specifier beschrieben. Als Komponententrennzeichen kann jedes beliebige Zeichen verwendet werden. Siehe Beispiele unten.

D

Datum

M

Monat

Y

Jahr

 

Das Pattern in DatePattern muss mit dem Pattern in Date übereinstimmen. Da die Ausgabe vom Typ xs:date ist, hat sie immer das lexikalische Format YYYY-MM-DD.

 

altova:parse-date(xs:string("09-12-2014"), "[D]-[M]-[Y]") gibt 2014-12-09 zurück
altova:parse-date(xs:string("09-12-2014"), "[M]-[D]-[Y]") gibt 2014-09-12 zurück
altova:parse-date("06/03/2014", "[M]/[D]/[Y]") gibt 2014-06-03 zurück
altova:parse-date("06 03 2014", "[M] [D] [Y]") gibt 2014-06-03 zurück
altova:parse-date("6 3 2014", "[M] [D] [Y]") gibt 2014-06-03 zurück

 

 

Click to expand/collapseparse-dateTime [altova:]

altova:parse-dateTime(DateTime als xs:string, DateTimePattern als xs:string) als xs:dateTime     XP2 XQ1 XP3.1 XQ3.1

Gibt den Input-String DateTime als xs:dateTime Wert zurück. Das zweite Argument DateTimePattern definiert das Pattern (die Komponentensequenz) des Input-String. DateTimePattern wird durch die unten aufgelisteten Komponenten-Specifier beschrieben. Als Komponententrennzeichen kann jedes beliebige Zeichen verwendet werden. Siehe Beispiele unten.

D

Datum

M

Monat

Y

Jahr

H

Stunde

m

Minuten

s

Sekunden

 

Das Pattern in DateTimePattern muss mit dem Pattern in DateTime übereinstimmen. Da die Ausgabe vom Typ xs:dateTime ist, hat sie immer das lexikalische Format YYYY-MM-DDTHH:mm:ss.

 

altova:parse-dateTime(xs:string("09-12-2014 13:56:24"), "[M]-[D]-[Y] [H]:[m]:[s]") gibt 2014-09-12T13:56:24 zurück
altova:parse-dateTime("time=13:56:24; date=09-12-2014", "time=[H]:[m]:[s]; date=[D]-[M]-[Y]") gibt 2014-12-09T13:56:24 zurück

 

 

Click to expand/collapseparse-time [altova:]

altova:parse-time(Time als xs:string, TimePattern als xs:string) als xs:time     XP2 XQ1 XP3.1 XQ3.1

Gibt den Input-String Time als xs:time Wert zurück. Das zweite Argument TimePattern definiert das Pattern (die Komponentensequenz) des Input-String. TimePattern wird durch die unten aufgelisteten Komponenten-Specifier beschrieben. Als Komponententrennzeichen kann jedes beliebige Zeichen verwendet werden. Siehe Beispiele unten.

H

Stunde

m

Minuten

s

Sekunden

 

Das Pattern in TimePattern muss mit dem Pattern in Time übereinstimmen. Da die Ausgabe vom Typ xs:Time ist, hat sie immer das lexikalische Format HH:mm:ss.

 

altova:parse-time(xs:string("13:56:24"), "[H]:[m]:[s]") gibt 13:56:24 zurück
altova:parse-time("13-56-24", "[H]-[m]") gibt 13:56:00 zurück
altova:parse-time("time=13h56m24s", "time=[H]h[m]m[s]s") gibt 13:56:24 zurück
altova:parse-time("time=24s56m13h", "time=[s]s[m]m[H]h") gibt 13:56:24 zurück

 

 

[ Nach oben ]

 

 

Funktionen zur Berechnung des Alters     XP3.1 XQ3.1

Diese Funktionen geben das Alter berechnet (i) anhand von einem Input-Argument und dem aktuellen Datum oder (ii) anhand zweier Input-Argumentdaten zurück. Die Funktion altova:age gibt das Alter in Jahren zurück, die Funktion altova:age-details gibt das Alter als Sequenz von drei Ganzzahlen zurück, die die Jahre, Monate und Tage des Alters angeben.

 

Click to expand/collapseage [altova:]

altova:age(StartDate als xs:date) als xs:integer     XP3.1 XQ3.1

Gibt eine Ganzzahl zurück, die das Alter eines Objekts in Jahren angibt. Berechnet wird das Alter anhand des durch das Argument gelieferten Startdatums endend mit dem aktuellen Datum (laut Systemuhr). Wenn das Input-Argument eines Datums größer oder gleich einem Jahr in der Zukunft ist, ist der Rückgabewert negativ.

hmtoggle_plus0        Beispiele

Wenn das aktuelle Datum 2014-01-15 lautet:

 

altova:age(xs:date("2013-01-15")) gibt 1 zurück
altova:age(xs:date("2013-01-16")) gibt 0 zurück
altova:age(xs:date("2015-01-15")) gibt -1 zurück
altova:age(xs:date("2015-01-14")) gibt 0 zurück

 

altova:age(StartDate als xs:dateEndDate als xs:date) als xs:integer     XP3.1 XQ3.1

Gibt eine Ganzzahl zurück, die das Alter eines Objekts in Jahren angibt. Berechnet wird das Alter anhand des durch das erste Argument gelieferten Startdatums endend mit dem als zweites Datum gelieferten Enddatum. Wenn das erste Argument ein Jahr oder mehr nach dem zweiten Argument liegt, ist der Rückgabewert negativ.

Wenn das aktuelle Datum 2014-01-15 lautet:

 

altova:age(xs:date("2000-01-15"), xs:date("2010-01-15")) gibt 10 zurück
altova:age(xs:date("2000-01-15"), current-date()) gibt 14 zurück, wenn das aktuelle Datum 2014-01-15 ist
altova:age(xs:date("2014-01-15"), xs:date("2010-01-15")) gibt -4 zurück

 

 

Click to expand/collapseage-details [altova:]

altova:age-details(InputDate als xs:date) als (xs:integer)*     XP3.1 XQ3.1

Gibt drei Ganzzahlen zurück. Dabei handelt es sich um die Jahre, Monate bzw. Tage zwischen dem als Argument angegebenen Datum und dem aktuellen Datum (laut Systemuhr). Die Summe der zurückgegebenen years+months+days gibt zusammen die Gesamtzeitdifferenz zwischen den beiden Datumswerten (dem Input-Datum und dem aktuellen Datum) an. Das Input-Datum hat eventuell einen Wert, der vor oder nach dem aktuellen Datum liegt, doch wird dies nicht aus dem Vorzeichen der Rückgabewerte ersichtlich; die Rückgabewerte sind immer positiv.

Wenn das aktuelle Datum 2014-01-15 lautet:

 

altova:age-details(xs:date("2014-01-16")) gibt (0 0 1) zurück
altova:age-details(xs:date("2014-01-14")) gibt (0 0 1) zurück
altova:age-details(xs:date("2013-01-16")) gibt (1 0 1) zurück
altova:age-details(current-date()) gibt (0 0 0) zurück

 

altova:age-details(Date-1 als xs:dateDate-2 als xs:date) als (xs:integer)*     XP3.1 XQ3.1

Gibt drei Ganzzahlen zurück. Dabei handelt es sich um die Jahre, Monate bzw. Tage zwischen den beiden Argumentdaten. Die Summe der zurückgegebenen years+months+days gibt zusammen die Gesamtzeitdifferenz zwischen den beiden Input-Datumswerten an. Es ist unerheblich, ob das frühere oder spätere Datum als erstes Argument angegeben wird. Die Rückgabewerte geben nicht an, ob das Input-Datum vor oder nach dem aktuellen Datum liegt. Die Rückgabewerte sind immer positiv.

altova:age-details(xs:date("2014-01-16"), xs:date("2014-01-15")) gibt (0 0 1) zurück
altova:age-details(xs:date("2014-01-15"), xs:date("2014-01-16")) gibt (0 0 1) zurück

 

 

[ Nach oben ]

 


© 2019 Altova GmbH