[tz] [PATCH 0/5] Standardize zone table comments format

J William Piggott elseifthen at gmx.com
Sat Feb 20 22:01:52 UTC 2016

Not having a standard format for zone table comments is creating
ambiguity. For example:

  1 Thule / Pituffik
  2 Pohnpei (Ponape)
  3 Nova Scotia (peninsula)
  4 peninsular Malaysia
  5 Eastern Time - Pangnirtung, Nunavut
  6 Central Time - Campeche, Yucatán

1 and 2 are different formats for alternate names/spellings. 3 shows a
sub-region, but uses the same format as the previous alternate name. 4 places
the sub-region before the region, where 3 has it after and uses a different
format. 5 and 6 use the same format, but 5 defines a single sub-region while 6
defines two regions.

These ambiguities make it impossible to interpret the comments without
having prior knowledge of the area.

This patch set is an effort to standardize the column 4 comments
format as follows:

A dash (-) is consistently used to delimit a zone_id prefix, so that
was retained.

A comma (,) is consistently used to delimit regions, so that was retained.

Using a slash (/) to delimit alternate names/spellings is accepted
English grammar, so that was chosen.

Placing sub-regions after regions facilitates having list items begin in
uppercase (which is both aesthetically pleasing and grammatically correct)
and improves the usability of a sorted list; so that was chosen.
Delimiting sub-regions with with curved braces () is in current practice, so
that was chosen.

Finally two letter codes for regions/sub-regions are included at the end
of the sub-region(s) within the curved braces.

Multiple regions grouped with the same sub-region(s) are delimited with a
comma between the final region of the group and the sub-region(s).

Region sub-region groups are delimited from other regions with a semicolon.

At least one zone_id or region must be given.

When adding a foreign country code to a zone_id on border locations,
add it after the zone_id to accommodate implementations that sort the
list. This will group zone_id's together, for example:
    Mountain Time - Chihuahua (away from US border)
    Mountain Time US - Chihuahua (near US border)

Use full words in favor of abbreviations.

This format can be represent as:

[zone_id] [-] [region[(sub_region, ... [2_letter_code, ... ])][,|;] ...  ]

There currently are no zone table comments that model the full
specification, so here is an imaginary example of the full spec:

Central Scooter Time - Yamaha (YZ); Harley, Davidson, Sprint, (west coast
XL, XR, FL, ST); Honda (most locations CB, CR), Suzuki, Kawasaki, Vespa

The following changes since commit 99b658c3a129dfd0cb777337575e200656b8ff9d:

  * NEWS, Theory: Clear up descriptions of tzdata abbreviations. (2016-02-14 12:36:54 -0800)

are available in the git repository at:

  git at github.com:jwpi/tz.git zonetab0215

for you to fetch changes up to cf921321194419bc88104da5d7a3a7cfac0ca47e:

  Standardize zone table comment format (2016-02-20 11:30:20 -0500)

J William Piggott (5):
      Holiday Islands does not exist.
      North of Scoresbysund is named National Park
      Durango is not a border state
      Use proper names for Baja California States
      Standardize zone table comment format

 australasia  |   8 +++
 europe       |   8 +++
 northamerica |   6 +-
 zone.tab     | 240 +++++++++++++++++++++++++++++++--------------------------------
 zone1970.tab | 250 +++++++++++++++++++++++++++++++++---------------------------------
 5 files changed, 264 insertions(+), 248 deletions(-)

 --- 8<

Example zone1970.tab comments using the standardized format:

Adelaide Island (Rothera Station)
Anvers Island (Palmer Station)
Holme Bay (Mawson Station)
Vestfold Hills (Davis Station)
Bailey Peninsula (Casey Station)
Lake Vostok (Vostok Station)
Adélie Land (Dumont-d'Urville Station)
East Ongul Island (Syowa Station)
Queen Maud Land (Troll Station)
Buenos Aires (BA, CF)
Argentina (most locations CB, CC, CN, ER, FM, MN, SE, SF)
Salta (SA, LP, NQ, RN)
Jujuy (JY)
Tucumán (TM)
Catamarca (CT), Chubut (CH)
La Rioja (LR)
San Juan (SJ)
Mendoza (MZ)
San Luis (SL)
Santa Cruz (SC)
Tierra del Fuego (TF)
Samoa, Midway
Lord Howe Island
Macquarie Island
Tasmania (most locations)
Tasmania (King Island)
New South Wales (most locations)
New South Wales (Yancowinna)
Queensland (most locations)
Queensland (Whitsunday Islands)
South Australia
Northern Territory
Western Australia (most locations)
Western Australia (Eucla)
Atlantic islands
Pará (east), Amapá
Northeast Brazil (MA, PI, CE, RN, PB)
Alagoas, Sergipe
South Brazil, Southeast Brazil, (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
Mato Grosso do Sul
Mato Grosso
Pará (west)
Amazonas (east)
Amazonas (west)
Newfoundland, Labrador (southeast)
Atlantic Time - Nova Scotia (peninsula), Prince Edward Island
Atlantic Time - Nova Scotia (Cape Breton)
Atlantic Time - New Brunswick
Atlantic Time - Labrador (most locations)
Atlantic Standard Time - Quebec (Lower North Shore)
Eastern Time - Ontario, Quebec, (most locations)
Eastern Time - Ontario, Quebec, (places that did not observe DST 1967-1973)
Eastern Time - Ontario (Thunder Bay)
Eastern Time - Nunavut (most eastern locations)
Eastern Time - Nunavut (Pangnirtung)
Central Time - Nunavut (Resolute)
Eastern Standard Time - Ontario (Atikokan), Nunavut (Southampton Island)
Central Time - Nunavut (central)
Central Time - Ontario (west), Manitoba
Central Time - Ontario (Rainy River, Fort Frances)
Central Standard Time - Saskatchewan (most locations)
Central Standard Time - Saskatchewan (midwest)
Mountain Time - Alberta, British Columbia (east), Saskatchewan (west)
Mountain Time - Nunavut (west)
Mountain Time - Northwest Territories (central)
Mountain Time - Northwest Territories (west)
Mountain Standard Time - British Columbia (Creston)
Mountain Standard Time - British Columbia (Dawson Creek, Fort Saint John)
Mountain Standard Time - British Columbia (Fort Nelson)
Pacific Time - British Columbia (west)
Pacific Time - Yukon (south)
Pacific Time - Yukon (north)
Swiss Time
Chile (most locations)
Easter Island
Beijing Time
Xinjiang Time
Germany (most locations)
Ecuador (mainland)
Galápagos Islands
Spain (mainland)
Ceuta, Melilla
Canary Islands
Chuuk/Truk, Yap
Greenland (most locations)
National Park (east coast)
Java, Sumatra
Borneo (west, central)
Borneo (east, south), Sulawesi (Celebes), Bali, Nusa Tengarra, Timor (west)
New Guinea (West Papua / Irian Jaya), Maluku/Moluccas
Gilbert Islands
Phoenix Islands
Line Islands
Kazakhstan (most locations)
Atyrau/Atirau/Gur'yev, Mangghystau/Mankistau
West Kazakhstan
Marshall Islands (most locations)
Mongolia (most locations)
Bayan-Ölgii, Govi-Altai, Hovd, Uvs, Zavkhan
Dornod, Sükhbaatar
Central Time
Eastern Standard Time - Quintana Roo
Central Time - Campeche, Yucatán
Central Time - Durango; Coahuila, Nuevo León, Tamaulipas, (away from US border)
Central Time US - Coahuila, Nuevo León, Tamaulipas, (near US border)
Mountain Time - Baja California Sur, Nayarit, Sinaloa
Mountain Time - Chihuahua (away from US border)
Mountain Time US - Chihuahua (near US border)
Mountain Standard Time - Sonora
Pacific Time US - Baja California
Central Time - Bahía de Banderas
Malaysia (peninsula)
Sabah, Sarawak
UTC+2 - Central Africa Time
UTC+1 - West Africa Time
New Zealand Time
Chatham Islands
Society Islands
Marquesas Islands
Gambier Islands
Papua New Guinea (most locations)
Gaza Strip
West Bank
Portugal (mainland)
Madeira Islands
Réunion Island, Crozet Islands, Scattered Islands
Moscow-01 - Kaliningrad
Moscow+00 - Russia (west)
Moscow+00 - Crimea
Moscow+00 - Caspian Sea
Moscow+01 - Samara, Udmurtia
Moscow+02 - Urals
Moscow+03 - Siberia (west)
Moscow+03 - Novosibirsk
Moscow+04 - Kemerovo
Moscow+04 - Yenisei River
Moscow+05 - Lake Baikal
Moscow+05 - Zabaykalsky
Moscow+06 - Lena River
Moscow+06 - Tomponsky, Ust-Maysky
Moscow+07 - Amur River
Moscow+07 - Sakhalin Island
Moscow+07 - Oymyakonsky
Moscow+07 - Magadan
Moscow+08 - Sakha (east), North Kuril Islands
Moscow+09 - Kamchatka
Moscow+09 - Bering Sea
Kerguelen, St Paul Island, Amsterdam Island
Indochina (most locations)
Ukraine (most locations)
Zaporozh'ye/Zaporizhia, Lugansk/Luhansk (east)
Wake Island
Eastern Time
Eastern Time - Michigan (most locations)
Eastern Time - Kentucky (Louisville area)
Eastern Time - Kentucky (Wayne)
Eastern Time - Indiana (most locations)
Eastern Time - Indiana (Daviess, Dubois, Knox, Martin)
Eastern Time - Indiana (Pulaski)
Eastern Time - Indiana (Crawford)
Eastern Time - Indiana (Pike)
Eastern Time - Indiana (Switzerland)
Central Time
Central Time - Indiana (Perry)
Central Time - Indiana (Starke)
Central Time - Michigan (Dickinson, Gogebic, Iron, Menominee)
Central Time - North Dakota (Oliver)
Central Time - North Dakota (Morton except Mandan area)
Central Time - North Dakota (Mercer)
Mountain Time
Mountain Time - Idaho (south), Oregon (east)
Mountain Standard Time - Arizona (except Navajo)
Pacific Time
Alaska Time
Alaska Time - Alaska Panhandle
Alaska Time - Alaska Panhandle (southeast)
Alaska Time - Annette Island
Alaska Time - Alaska Panhandle (neck)
Alaska Time - Alaska (west)
Aleutian Islands
Hawaii Time
Uzbekistan (west)
Uzbekistan (east)
Vietnam (south)

More information about the tz mailing list