xpath2 | durations, date and time functions
Les fonctions date and time de la bibliothèque xpath2 vous permettent d’ajuster le fuseau horaire dans valeurs de dates et d’heures, d’extraire des composants particuliers depuis les valeurs date, time et duration, et de soustraire des valeurs date and time.
Ajuster le fuseau horaire
Pour ajuster le fuseau horaire dans des valeurs date and time, les fonctions suivantes sont disponibles :
•adjust-date-to-timezone
•adjust-date-to-timezone (avec argument timezone)
•adjust-dateTime-to-timezone
•adjust-dateTime-to-timezone (avec argument timezone)
•adjust-time-to-timezone
•adjust-time-to-timezone (avec argument timezone)
Chacune de ces fonctions liées prennent une valeur xs:date, xs:time ou xs:dateTime en tant que le premier argument et ajuste l’entrée en ajoutant, supprimant ou en modifiant le composant de fuseau horaire selon la valeur du second argument (le cas échéant).
Les situations suivantes sont possibles lorsque le premier argument ne continent aucun fuseau horaire (par exemple, la date 2020-01 ou l’heure 14:00:00).
•Si l’argument timezone est présent, le résultat contiendra le fuseau horaire spécifié dans le second argument. Le fuseau horaire dans le second argument est ajouté.
•Si l’argument timezone est absent, le résultat contiendra le fuseau horaire implicite qui est le fuseau horaire du système. Le fuseau horaire du système est ajouté.
•Si l’argument timezone est vide, le résultat ne contiendra aucun fuseau horaire.
Les situations suivantes sont possibles lorsque le premier argument contient aucun fuseau horaire (par exemple, la date 2020-01-01+01:00 ou l’heure 14:00:00+01:00 ).
•Si l’argument timezone est présent, le résultat contiendra le fuseau horaire spécifié dans le second argument. Le fuseau horaire original est remplacé par le fuseau horaire dans le second argument.
•Si l’argument timezone est absent, le résultat contiendra le fuseau horaire implicite qui est le fuseau horaire du système. Le fuseau horaire original est remplacé par le fuseau horaire du système.
•Si l’argument timezone est vide, le résultat ne contiendra aucun fuseau horaire.
Extraire des composants de dates et d’heures
Pour extraire des valeurs numériques comme des heures, des minutes, des jours, des mois, etc. depuis des valeurs de date et d’heure, les fonctions suivantes sont disponibles :
•day-from-date
•day-from-dateTime
•hours-from-dateTime
•hours-from-time
•minutes-from-dateTime
•minutes-from-time
•month-from-date
•month-from-dateTime
•seconds-from-dateTime
•seconds-from-time
•timezone-from-date
•timezone-from-dateTime
•timezone-from-time
•year-from-date
•year-from-dateTime
Chacune de ces fonctions extrait un composant particulier des valeurs xs:date, xs:time, xs:dateTime et xs:duration. Le résultat sera soit xs:integer soit xs:decimal.
Extraire des composants de durations
Pour extraire des composants time depuis des durées, les fonctions suivantes sont disponibles :
•days-from-duration
•hours-from-duration
•minutes-from-duration
•months-from-duration
•seconds-from-duration
•years-from-duration
La durée doit être spécifiée soit en tant que xs:yearMonthDuration (pour extraire les années et les mois) ou xs:dayTimeDuration (fpour extraire des jours, des heures, des minutes et des secondes). Toutes les fonctions retournent un résultat de type xs:integer, avec l’exception de la fonction seconds-from-duration, qui retourne xs:decimal.
Soustraire des valeurs de date et d’heure
Pour soustraire des valeurs de date et d’heure, les fonctions suivantes sont disponibles :
•subtract-dateTimes
•subtract-dates
•subtract-times
Chacune des fonctions de soustraction vous permet de soustraire une valeur d’heure d’une autre et de retourner une valeur de durée