obtengo el año, el número de la semana, el número del día de la semana a partir del formato-fecha, PERO mis semanas comienzan el sábado

Resuelto MrD at KookerellaLtd asked hace 10 meses • 0 respuestas

Este es un tipo de problema ISO general y sé que es potencialmente una pesadilla. XPath tiene una función útil

format-date

que tiene parámetros alucinantes con los que trabajaré

https://www.w3.org/TR/xpath-functions-31/#rules-for-datetime-formatting

pero el problema obvio es que mis semanas comienzan el sábado.

La solución a corto plazo es agregar dos días a la fecha y luego obtener el número de año, semana, día... esto al menos hará que las semanas se alineen, y más del 90% de las veces serán correctas, lamentablemente. No es solo un caso límite de la primera/última semana del año, porque si el número de la primera semana es incorrecto, entonces todos los números de la semana de ese año serán incorrectos.

Entonces, ¿cómo consigo

weeknumber
weekdaynumber
weekyear

si mis semanas empiezan en sabado?

MrD at KookerellaLtd avatar Feb 16 '24 18:02 MrD at KookerellaLtd
Aceptado

La documentación (en algún lugar) en https://www.w3.org/TR/xpath-functions-31/#rules-for-datetime-formatting dice:

El idioma se utiliza para seleccionar las formas apropiadas que dependen del idioma de:

nombres (por ejemplo, de meses)

números expresados ​​como palabras o como ordinales (veinte, vigésimo, vigésimo)

convención de horas (0-23 vs 1-24, 0-11 vs 1-12)

primer día de la semana, primera semana del año

Cuando sea apropiado, esta elección también puede tener en cuenta el valor del argumento $place, aunque esto no debe usarse para anular el idioma o cualquier sublenguaje que se especifique como parte del argumento del idioma.

Entonces deberías intentar especificar el idioma. Tenga en cuenta que el soporte para la variedad de lenguajes puede diferir según la versión y edición del procesador XSLT/XQuery/XPath (creo que Saxon PE/EE integra ICU para tener un soporte mucho más amplio que el que tiene HE (basado en las bibliotecas Java JRE)).

Martin Honnen avatar Feb 16 '2024 15:02 Martin Honnen