I’ve recently read the proposed RFC 9557, and it defines calendar definitions like [u-ca=japanese]. I wanted to ensure that if I were to adopt it, I could continue adhering to ISO 8601 by defining gregorian explicitly instead. However, I’ve seen github.com/unicode-org/cldr/blob/c024980f2cb0697d7bc35d1194c356a16b67096f/common/bcp47/calendar.xml#L27C25-L27C32, which provides iso8601 as a usable alternative, [1] and searching for that keyword in Google returned results using [u-ca=iso8601], which is even better, so that problem seems solved.

However, I noticed that I’d also see results for horrific strings like en-u-ca-iso8601-fw-wed! github.com/tc39/proposal-intl-locale-info/issues/30 appears to demonstrate that it might be a locale:

new Intl.Locale("en-US-u-ca-iso8601").weekInfo

…however, what locale includes a day of the week? I’ve never seen that in ISO 639.


  1. stackoverflow.com/questions/25050034/get-iso-8601-using-intl-datetimeformat#comment70898760_25050034 ↩︎

1 Spice up

It’s an region override for setting the first day of the week to Wednesday.

https://unicode.org/reports/tr35/tr35-dates.html

The day indicated by firstDay is the one that should be shown as the first day of the week in a calendar view. This is not necessarily the same as the first day after the weekend (or the first work day of the week), which should be determined from the weekend information. Currently, day-of-week numbering is based on firstDay (that is, day 1 is the day specified by firstDay), but in the future we may add a way to specify this separately. The firstDay value determined from the region can be overridden by the locale keyword “fw”, see [Unicode First Day Identifier]

(Unicode Locale Data Markup Language (LDML)).

https://unicode.org/reports/tr35/tr35.html#UnicodeFirstDayIdentifier

3 Spice ups