Time database: Difference between revisions

From annawiki
Line 100: Line 100:
|
|
|
|
The ID for these should /not/ be the ISO 3166-1 alpha-2 codes, as they have been re-assigned, e.g. CS stands for 1) Czechoslovakia and 2) Serbia and Montenegro. There exists no ISO codes for countries that did not exist after the first ISO 3166 publication.
It is proposed to use the ISO 3166-1 alpha-3 codes and where needed the Private Use Area of that set.
These IDs could be used to relate source documents like laws and newspaper articles to the database.
|-
|-
| RegionID
| RegionID

Revision as of 2013-09-21T14:04:40

Mailing list

Desired features

Topic Time keeping database (tkdb) IANA time zone database (tzdb)
Terminology Exactly one term for one kind of object
  • Terms are used interchangeably (region = zone)
  • Terms are used ambiguously (zone for IANA zones and real world zones)
Geography - Sector Smallest territorial unit is named "sector" Smallest territorial unit is named "zone"
Geography - Sector For any point in time, except for war time, the legal time in all territory of a sector is the same. For any point in time after 1970-01-01T00:00:00 clocks in a IANA zone have agreed.
Geography - Sector The sectors cover the whole surface of the earth Some areas are not covered, e.g. no IANA zone exists the ISO 3166 country "Bouvet Island"
Geography - Sector Each sector has exactly one SectorID. Some zones have multiple IDs via links. These links can
  • represent former IDs of the zone due to spelling change for the reference location
  • represent former IDs of the zone due to reference location change (Tel Aviv -> Jerusalem)
  • represent IDs of former zones (Vaduz links to Zurich)
Geography - Sector A SectorID only contains alphanumeric characters, letters upper case. REGEX: /[3-8][A-Z0-9]{1,}/ (Note: further restriction likely) A zone ID contains ASCII letters and / and can contain -._
Geography - Sector New sectors are created only by splitting and deprecating old sectors, so a user can know if an assignment of an ID to an object needs a check for correctness.

After a split one zone retains the ID of the old zone. That means:

  • a user can link an object to a tzid, but get's no notification if later the object is located in a zone that has been split off.
Geography - Sector Relations between deprecated sectors and the sectors that have been created out of them are published. No split history is explicitly published.
Geography - Country ISO 3166-1 alpha-3 codes for countries. ISO 3166-1 alpha-2 codes for countries. Some of the codes have been re-assigned, e.g. CS can refer to Czechoslovakia or Serbia and Montenegro.
Geography - Country Support for former countries at least back to 1946-01-01, the first full year where the UN existed. No support for former countries. No way to get data for ISO 3166 alpha-2 code DD (East Germany)
Geography - Country At any point in time (at least after 1946-01-01) the land surface is associated to a country. Some areas are not associated to a country, e.g. the land of the ISO 3166 country "Bouvet Island" is not associated to any country.
Geography At any point in time a sector is located in only one country. Zones can be located in different former countries, e.g. Europe/Berlin is located in East Germany (DD) and West Germany (DE) prior to 1990.
Geography Publish relations between sectors and IANA zones at least for some IANA releases.
Other Record all legal time
  • no time for Bouvet Island, while Norwegian government has defined it,
  • limited support for pre-1970 data
Other For any point in time, for any country, a time zone acronym used for a sector that is located in that country refers to exactly one offset from a base time. For some points in time during DST observance in Australia, the acronyms EST and CST for time records in Australia can refer to different offsets from UTC, depending on whether a zone observes DST or not. That means for a given point in time during summer the offset from UTC and therefore UTC itself cannot be derived from the local time representation.
Data format Publication in
  • SQL (?)
  • as xCal/iCal (?)
  • IANA specific format, as far as that format supports the features of the tkdb.
Publication in IANA specific format.

Tables

ID

Name Regex Comment
ContinentID /[3-8]/
JurisdictionID

The ID for these should /not/ be the ISO 3166-1 alpha-2 codes, as they have been re-assigned, e.g. CS stands for 1) Czechoslovakia and 2) Serbia and Montenegro. There exists no ISO codes for countries that did not exist after the first ISO 3166 publication.

It is proposed to use the ISO 3166-1 alpha-3 codes and where needed the Private Use Area of that set.

These IDs could be used to relate source documents like laws and newspaper articles to the database.

RegionID
SectorID /[3-8][A-Z0-9]{1,}/ The first digit is the ContinentID. Further restriction likely.
ZoneID /[A-Z]{1,}/ Maybe using acronyms similar to the Internationalized time point unique time zone abbreviations

Area

Alphabetical sorting leads mostly to decreasing size.

Name Boundary Description
Continent Fixed All surface of the earth belongs to exactly one continent.
Jurisdiction Not fixed
Region ?
Sector Fixed All land surface belongs to exactly one sector.
Zone Not fixed Real world time zone, e.g. Mountain Time Zone. For a given point in time located in one jurisdiction? That could contradict zones like Central European Time if there is no jurisdiction "Europe".

Boundary

Continent

That allows grouping of sectors by larger geographic regions.

ContinentID:

  • Not used:
    • 0 - to avoid misreadings as O
    • 1 and 2 - to avoid that a 4-digit SectorID could look like a year
    • 9 - to have room for extensions, e.g. other planets, or private use area.
  • similar to first digit of country calling code, https://commons.wikimedia.org/wiki/File:CallingCodesWorld-Labeled.svg
    • 7 is taken from former Soviet Union and applied to all of Europe, this frees 3 and 4
    • 3 is assigned to Antarctica to have this special region at the border of the 3-8 ID space
    • 8 is taken from East Asia and used for all of Asia
ID Name max E/W Description
3 Antarctica 360° As defined by Antarctic Treaty
4 Africa 90°
5 America 135° The East and West boundaries are strict, i.e. Greenland and Umnak are divided.
6 Oceania 135°
7 Europe 225° Includes territory of former Soviet Union, Cyprus (island), Malta, Turkey.
8 Asia

ContinentBoundary

Assignment of Ex-Soviet Union to Europe as for ITU region 1

Many common maps have the Chukotka Peninsula to the right hand, using the Umnak meridian (Bering Strait) as map limits. Except for Antarctica no continent shall be divided by the Umnak meridian, to avoid that a continent is depicted in two parts on such a map.

ID Name LowerID HigherID Description
34 Antarctica-Africa 3 4 60° South
35 Antarctica-America 3 5 60° South
36 Antarctica-Oceania 3 6 60° South
45 Africa-America 4 5 33.75° West
46 Africa-Oceania 4 6 56.25° East
47 Africa-Europe 4 7 Line in the Mediterranean, South of Malta, West to the Strait of Gibraltar it is a straight line.
48 Africa-Asia 4 8 From the north follow the border of Egypt through the Red Sea. In the Gulf of Aden go to the West until 56.25° East, then go South until the border with Oceania is reached.
56 America-Oceania 5 6 168.75° West (Umnak meridian)
57 America-Europe 5 7 33.75° West up to the North Pole, then South on 168.75° West (Umnak meridian)
58 America-Asia 5 8 168.75° West (Umnak meridian)
78 Europe-Asia 7 8 From America follows the southern border of former Soviet Union, at the border of Turkey follow the southern border of Turkey to the Mediterranean. Passing between Cyprus and Syria.

Jurisdiction

A jurisdiction is a political entity. The concept is similar to the concept of country in ISO 3166-1. But the term jurisdiction is preferred:

  • to have the initial letter different from Continent

Sector

A sector

  • is located in exactly one Continent
  • has exactly one SectorID
  • is not divided by jurisdiction boundaries since 1946-01-01T00:00:00, except for time of war, when the boundaries between jurisdictions moved.

A SectorID:

  • conforms to the REGEX: /[3-8][A-Z0-9]{1,}/ (Note: further restriction likely)
  • has the ContinentID as the first character
  • contains no reference to a country (IANA zone sometimes to, e.g. those for Argentina)

There should be a Private Use Area in the SectorID space, to allow people that like to do different sectorization to create non-clashing SectorIDs.