adjust-dateTime-to-timezone

Ajusta um dateTime para um fuso horário, ou para nenhum

Descrição

A função fn:adjust-dateTime-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 data e a hora ficam iguais, mas passam a ter o fuso indicado. Se $arg já tiver fuso, o valor é ajustado para o novo fuso.

Parâmetros

Descrição

arg:dateTime()

a data e hora a ajustar

timezone:time()

o fuso horário de destino

Exemplos

XPath

Resultado

adjust-dateTime-to-timezone(xs:dateTime('2006-02-15T17:00:00'), xs:dayTimeDuration('-PT7H'))

2006-02-15T17:00:00-07:00

adjust-dateTime-to-timezone(xs:dateTime('2006-02-15T17:00:00-03:00'), xs:dayTimeDuration('-PT7H'))

2006-02-15T13:00:00-07:00

adjust-dateTime-to-timezone(xs:dateTime('2006-02-15T17:00:00'), ())

2006-02-15T17:00:00

adjust-dateTime-to-timezone(xs:dateTime('2006-02-15T17:00:00-03:00'), ())

2006-02-15T17:00:00

adjust-dateTime-to-timezone(xs:dateTime('2006-02-15T01:00:00-03:00'), xs:dayTimeDuration('-PT7H'))

2006-02-14T21:00:00-07:00

Os exemplos a seguir supõem um fuso horário implícito de -05:00:

XPath

Resultado

adjust-dateTime-to-timezone(xs:dateTime('2006-02-15T17:00:00'))

2006-02-15T17:00:00-05:00

adjust-dateTime-to-timezone(xs:dateTime('2006-02-15T17:00:00-03:00'))

2006-02-15T15:00:00-05:00

Veja também