Spark doc refers to this Java 8 page
https://docs.oracle.com/javase/8/docs/api/java/time/chrono/IsoChronology.html,
which says
>
> This chronology defines the rules of the ISO calendar system. This
> calendar system is based on the ISO-8601 standard, which is the *de facto* 
> world
> calendar.
>
+1 to make it explicit in the spec.


Regards,
Manu

On Thu, Sep 12, 2024 at 2:03 PM Micah Kornfield <emkornfi...@gmail.com>
wrote:

> At the moment, the specification is ambiguous on which calendar is used
> for temporal conversion/writing [1]. Reading the java code it appears it is
> using Java's OffsetDateTime which conforms to ISO8601 [2].  ISO8601 appears
> to explicitly disallow the Julian calendar (but only says proleptic
> gregorian can be used by mutual consent [3]).
>
> Therefore I'd propose:
> 1. We make the  ISO8601 + proleptic Gregorian + Gregorian calendars
> explicit in the specification.
> 2. Mention in an implementation note, that data migrated from other
> systems or data written by older systems might follow the Julian calendar
> (e.g. it looks like Spark only transitioned in 3.0 [4]).
>   *  Does anybody know of metadata available for systems to make this
> determination?
>   *  Or a recommendation on how to handle these?
>
> Thoughts?
>
> Thanks,
> Micah
>
> [1] This is esoteric but a few systems use 0001-01-01 as a sentinel value
> for null so does have some wider applicability
> [2]
> https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html
> [3] https://en.wikipedia.org/wiki/ISO_8601#Dates
> [4] https://issues.apache.org/jira/browse/SPARK-26651
>
>

Reply via email to