[tz] Idea for internationalized time point unique time zone abbreviations
tobias.conradi at gmail.com
Tue Jun 5 22:42:51 UTC 2012
== INTRODUCTION ==
If time zone abbreviations for a given point in time are unique they
can be used to faster find IANA time zones. The current abbreviations
are not unique, e.g. IST could stand for Indian Standard Time and for
Israel Standard Time.
Since the IANA time zone database cutoff point is 1970-01-01T00:00:00Z
and the first publication of ISO 3166 alpha-2 country codes occurred
in the early 1970s, one could easily use the country codes to separate
sets of abbreviations between countries.
One rule sometimes used in the IANA time zone database for creating
new abbreviations is to use the ISO alpha-2 country codes. The idea
presented here applies such a rule rigidly.
Apart from that the idea presented also applies rigid rules for
marcation of offset changes like daylight saving time.
== Features ==
One can derive the country of the time zone to which the abbreviation
belongs from the abbreviation and from knowledge of the current ISO
country code for that country. This is not possible with current IANA
time zone database abbreviations like CET, IST, EDT, GALT, EAST, CT
(e.g. Cuba Time), CUT (1924 Central Ukraine Time).
One can group the abbreviations by country, alone by alphabetic
sorting of the abbreviations. This is not possible with current IANA
time zone database abbreviations like CST (US), CT (Cuba), PST (US).
If the year is known, one can identify the time zone for any given
abbreviation. This is not possible with current IANA time zone
database abbreviations like IST.
Reduces the number of IANA time zones for some abbreviations, e.g. IST
is used for Asia/Jerusalem, Asia/Kolkata, while INCT/INZT would only
refer to Asia/Kolkata.
== DEFINITIONS ==
=== D0) General ===
D0.1) DST - Daylight saving time
D0.2) Format: "<CC><LC><(OC)>T" #abbreviations would be four or five
letters long. Details in D1 to D4.
=== D1) CC - country code and similar ===
- ISO alpha-2 country code or,
- a special code like "EU" or,
- a code from the private use area to define larger regions, e.g.:
-- XA - ASEAN
-- XE - "East" for UTC offsets zones having positive offset
-- XW - "West" for UTC offsets zones having negative offset
-- ZZ - the whole world, used for UTC and UTC offset zones, details
=== D2) LC - location code and similar ===
D2.1) A character from the set [A-Z], unique for each real time zone
within the country. Preferably not from the set [SDF] or any letter
agreed in D3 for offset changes
D2.2) A character from the set [0-9] for numbered zones, e.g. in Russia.
D2.3) The letter C (Common Time) for the most common time, maybe also
N derived from "National Time".
D2.4) The letter Z could be used if there is only one time zone. Could
be dropped for countries that only have one zone, but mandatory per
D2.5) For UTC offset zones that start with ZZ, when using date-time
group (DTG) letters, the letter G - not the letter L to make changing
into or from E harder. Otherwise either E for East or W for West, as
defined in D1.
=== D3) OC - seasonal offset code and similar ===
D3.1) for DST a letter from the set [SD], preferably "D" since "S" in
some contexts stands for "standard time"
So even if in Europe the term "summer time" is more common, the
preferred presentation uses unambiguous"D"
D3.2) For wartime maybe the letter W or F as in forward time, W in D2
stands for West.
D3.3) For double summer time - to be defined, maybe M for midsummer time
D3.4) For absence of any extra rules "standard time", the letter Z is optional.
D3.5) For UTC offset zones: a digit.
=== D4) T ===
As currently done in English to indicate "Time".
== EXAMPLES ==
=== E1) No DST ===
CUCT - Cuba (Common) Time#in IANA tzdb northamerica 8.54 is CT
THCT - Thailand (Common) Time
USET - US Eastern Time
USCT - US Central Time
USPT - US Pacific Time
CAET - Canada Eastern Time
CLCT - Chile (Common) Time #Continental Time
CLET - Chile Eastern Time #Easter Islands, which in the IANA tzdb is EAS%sT
ECCT - Ecuador (Common) Time #Continental Time
ECGT - Galapagos Time #which in the IANA tzdb is GALT
RUOT - Omsk Time #in IANA tzdb is OMST, could be read as Oman
RUMT - Moscow Time #Maybe RUCT - Russia Central/Common Time or RUNT -
Russia National Time
RUKT - Kaliningrad Time
RUIT - Irkutsk Time
RUVT - Volgograd Time #in IANA tzdb was VOLT
Optional: RU1T - Russia First Time Zone
Optional: RU2T - Russia Second Time Zone
EUCT - Central European Time #Some countries that use this time, are
not in the EU.
EUWT - Western European Time #See comment for EUCT
EUET - Eastern European Time #See comment for EUCT
XACT - ASEAN Common Time
XE01T - UTC+01
XE08T - UTC+08
XE13T - UTC+13
XW06T - UTC-06
XW11T - UTC-11
ZZZT - UTC
ZZE1T - UTC+01
ZZE8T - UTC+08
ZZEAT - UTC+10 # A = hexadecimal for 10
ZZEDT - UTC+13 # A = hexadecimal for 13
ZZW6T - UTC-06
ZZWBT - UTC-11 # B = hexadecimal for 11
#Letters from the NATO(?) date-time group
#taken from http://de.wikipedia.org/wiki/Date_Time_Group
ZZGZT - UTC±00
ZZGAT - UTC+01
ZZGHT - UTC+08
ZZGKT - UTC+10
ZZGST - UTC-06
ZZGXT - UTC-11
=== E2) With DST ===
#for meaning of the third letter see section E2
RUMDT # Daylight saving time or "decree time"
EUCDT #preferred as defined in D3.1
Rheinsberger Str. 18
More information about the tz