Did you know that ISO 8601 is a very large standard that describes more than a single date and time format?

It describes periods, repetitions, many different syntax of describing years, week-of-year, day-of-year, seasons, quarters, semesters, trimesters.

It's mostly unknown because the standards are paywalled: you can't just read ISO 8601 without paying ISO money.

Most of the time, when people refer to ISO 8601, they mean the subset that is described in RFC 3339.


@jerub RFC 3339 is stricter than the subset of ISO 8601 that most people talk about, because it is only a datetime format and requires a time zone.

As far as I can tell there is no standard that describes the subset of ISO8601 that people actually care about.

@jerub Which I find mildly annoying, since the discussion always goes, “We should document that we accept ISO8601!”

“Ok, but that’s a ton of work because of XYZ, and includes formats that, if you encounter them, are more likely to be typos than deliberate choices.”

“Err, ok, let’s do RFC3339.”

“Ok, so datetime only and time zone is required, as is the T separator.”

“Well no that’s too strict, I guess we should just accept some ad hoc defined formats that are ISO8601-like.”

@pganssle rfc3339 has a little note saying you can separate by a space instead of a T because ISO 8601 does.

"NOTE: ISO 8601 defines date and time separated by "T". Applications using this syntax may choose, for the sake of readability, to specify a full-date and full-time separated by (say) a space character."

Which is a bit of a weird statement. Because ISO 8601 says use a T: you can use a space?

I'm not saying RFC 3339 is perfect. But it sets out something implementable.

@jerub Yeah, something you can implement that is not suitable for most peoples’ use cases 😛 The T is not really the big issue with RFC3339.

Sign in to participate in the conversation
Qoto Mastodon

QOTO: Question Others to Teach Ourselves
An inclusive, Academic Freedom, instance
All cultures welcome.
Hate speech and harassment strictly forbidden.