7
submitted 11 months ago by lambalicious to c/iso8601

Basically title. 2019 edition of the Standard denotes the "T" prefix to time as mandatory (except in "unambiguous contexts"):

01:29:59 is now actually T01:29:59, with the former form now designated as an alternative

But date does not have a "D" prefix, not even in "ambiguous contexts".

1973-09-11 never needs to be something like eg.: D1973-09-11

Anyone know the reasoning behind this change and what is the intended use? The only time-only format with separators that I can think would be undecidable in ambiguous contexts would be hh:mm which I guess could be mistaken for bible verses?

top 5 comments
sorted by: hot top controversial new old
[-] wesker 3 points 11 months ago* (last edited 11 months ago)

I suspect the T acts as a delimiter. D is unnecessary, because the date is at the beginning of the string. And then Z is another delimiter, to separate the time from the timezone.

EDIT: I think I misunderstood your question, but I'll leave my post, in case it's useful to others when considering the sections of a full timestamp.

[-] mnw 2 points 11 months ago

I think you're probably right. If the format was

DATETTIMEZTIMEZONE

And you omit DATE you still have TTIME

[-] lambalicious 1 points 11 months ago

Hmmm those are good points. I feel this gels well with how in the syntax for durations / periods all unit delimiters are mandatory (also because they're tail) when the unit is present and the header / marker is P.

[-] sqw 2 points 11 months ago

I have always found the uppercase T/Z delimiters to make the timestamp less human-readable.

[-] mnw 1 points 11 months ago

The short answer I believe is that ISO 8601 is a Date format so we expect date but not time. Thats my take. I think it's important to include timezone if you have time thought tbh

this post was submitted on 14 Sep 2023
7 points (100.0% liked)

ISO8601

91 readers
1 users here now

Community dedicated to the international standard YYYY-MM-DD date format.

founded 1 year ago
MODERATORS