Adjusts an xs:time value to a specific timezone, or to no timezone at
all.
fn:adjust-time-to-timezone( $arg as xs:time?xs:time?fn:adjust-time-to-timezone( $arg as xs:time?,$timezone as xs:dayTimeDuration?xs:time? If $timezone is not specified, then the effective value of
$timezone is the value of the implicit timezone in the dynamic
context.
If $arg is the empty sequence, then the function returns the empty
sequence.
If $arg does not have a timezone component and $timezone is
the empty sequence, then the result is $arg.
If $arg does not have a timezone component and $timezone is
not the empty sequence, then the result is $arg with $timezone
as the timezone component.
If $arg has a timezone component and $timezone is the empty
sequence, then the result is the localized value of $arg without its
timezone component.
If $arg has a timezone component and $timezone is not the
empty sequence, then:
Let $dt be the xs:dateTime value
fn:dateTime(xs:date('1972-12-31'), $arg).
Let $adt be the value of fn:adjust-dateTime-to-timezone($dt,
$timezone)
The function returns the xs:time value
xs:time($adt).
Assume the dynamic context provides an implicit timezone of -05:00
(-PT5H0M).
let $tz-10 := xs:dayTimeDuration("-PT10H")
The expression fn:adjust-time-to-timezone(xs:time("10:00:00")) returns xs:time("10:00:00-05:00").
The expression fn:adjust-time-to-timezone(xs:time("10:00:00-07:00")) returns xs:time("12:00:00-05:00").
The expression fn:adjust-time-to-timezone(xs:time("10:00:00"),
$tz-10) returns xs:time("10:00:00-10:00").
The expression fn:adjust-time-to-timezone(xs:time("10:00:00-07:00"),
$tz-10) returns xs:time("07:00:00-10:00").
The expression fn:adjust-time-to-timezone(xs:time("10:00:00"), ()) returns xs:time("10:00:00").
The expression fn:adjust-time-to-timezone(xs:time("10:00:00-07:00"),
()) returns xs:time("10:00:00").
The expression fn:adjust-time-to-timezone(xs:time("10:00:00-07:00"),
xs:dayTimeDuration("PT10H")) returns xs:time("03:00:00+10:00").
A dynamic error is raised if $timezone
is less than -PT14H or greater than PT14H or if does not
contain an integral number of minutes.