adjust-time-to-timezone
Ajusta uma hora para um fuso horário, ou para nenhum
Descrição
A função fn:adjust-time-to-timezone se comporta de um jeito diferente conforme o valor $arg já tenha fuso horário ou não, e conforme o fuso informado.
O argumento $timezone é um xs:dayTimeDuration, por exemplo -PT5H para o horário padrão da costa leste dos EUA. Se $timezone for a sequência vazia, entende-se que o resultado deve ficar sem fuso. Se $timezone for omitido, vale o fuso implícito.
Se $arg ainda não tiver fuso, a hora fica igual, mas passa a ter o fuso indicado. Se $arg já tiver fuso, o valor é ajustado para o novo fuso.
Parâmetros |
Descrição |
|---|---|
arg:time() |
a hora a ajustar |
timezone:dateTime() |
o fuso horário de destino |
Exemplos
XPath |
Resultado |
|---|---|
adjust-time-to-timezone(xs:time('17:00:00'), xs:dayTimeDuration('-PT7H')) |
17:00:00-07:00 |
adjust-time-to-timezone(xs:time('17:00:00-03:00'), xs:dayTimeDuration('-PT7H')) |
13:00:00-07:00 |
adjust-time-to-timezone(xs:time('17:00:00'), ()) |
17:00:00 |
adjust-time-to-timezone(xs:time('17:00:00-03:00'), ()) |
17:00:00 |
adjust-time-to-timezone(xs:time('17:00:00')) |
17:00:00-05:00 |
adjust-time-to-timezone(xs:time('17:00:00'), xs:dayTimeDuration('-PT20H')) |
Error FODT0003 |
Os exemplos a seguir supõem um fuso horário implícito de -05:00:
XPath |
Resultado |
|---|---|
adjust-time-to-timezone(xs:time('17:00:00-03:00')) |
15:00:00-05:00 |
adjust-time-to-timezone(xs:time('22:00:00-08:00')) |
01:00:00-05:00 |
adjust-time-to-timezone(xs:time('01:00:00-02:00')) |
22:00:00-05:00 |