• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1---
2title: Time Zone Data Reorganization
3---
4
5# Time Zone Data Reorganization
6
7### Existing Data by Type
8
9**a) alias mapping**
10
11supplementalData.xml
12
13\<zoneFormatting>
14
15...
16
17\<zoneItem type="Africa/Asmera" territory="ER" aliases="Africa/Asmara"/>
18
19...
20
21\</zoneFormatting>
22
23**b) metazone -> golden zone**
24
25supplementalData.xml
26
27\<mapTimezones type="metazone">
28
29...
30
31\<mapZone other="Africa\_Central" territory="001" type="Africa/Maputo"/>
32
33\<mapZone other="Africa\_Central" territory="BI" type="Africa/Bujumbura"/>
34
35\<mapZone other="Africa\_Central" territory="BW" type="Africa/Gaborone"/>
36
37\<mapZone other="Africa\_Central" territory="CD" type="Africa/Lubumbashi"/>
38
39\<mapZone other="Africa\_Central" territory="MW" type="Africa/Blantyre"/>
40
41\<mapZone other="Africa\_Central" territory="RW" type="Africa/Kigali"/>
42
43\<mapZone other="Africa\_Central" territory="ZM" type="Africa/Lusaka"/>
44
45\<mapZone other="Africa\_Central" territory="ZW" type="Africa/Harare"/>
46
47...
48
49\</mapTimezones>
50
51**c) historic metazone mapping**
52
53metazoneInfo.xml
54
55\<metazoneInfo>
56
57...
58
59\<timezone type="Asia/Yerevan">
60
61\<usesMetazone to="1991-09-22 20:00" mzone="Yerevan"/>
62
63\<usesMetazone from="1991-09-22 20:00" mzone="Armenia"/>
64
65\</timezone>
66
67...
68
69\</metazoneInfo>
70
71**d) zone -> territory**
72
73supplementalData.xml
74
75\<zoneFormatting>
76
77...
78
79\<zoneItem type="Africa/Asmera" territory="ER" aliases="Africa/Asmara"/>
80
81...
82
83\</zoneFormatting>
84
85**e) territories where multiple time zones are available**
86
87supplementalData.xml
88
89\<zoneFormatting multizone="001 AQ AR AU BR CA CD CL CN EC ES FM GL ID KI KZ MH MN MX MY NZ PF PT RU UA UM US UZ" tzidVersion="2009f">
90
91**f) Mapping between Olson ID and Unicode time zone short ID (bcp47 ids)**
92
93(1) bcp47/timezone.xml
94
95Short ID -> Olson ID
96
97\<type name="adalv" alias="Europe/Andorra"/>
98
99(2) supplementalData.xml
100
101Olson ID -> Short ID
102
103\<bcp47KeywordMappings>
104
105...
106
107\<mapTypes type="timezone">
108
109...
110
111\<typeMap type="Europe/Andorra" bcp47="adalv"/>
112
113...
114
115\</mapTypes>
116
117...
118
119\</bcp47KeywordMappings>
120
121**g) Windows tzid mapping**
122
123supplementalData.xml
124
125\<mapTimezones type="windows">
126
127\<mapZone other="AUS Central Standard Time" type="Australia/Darwin"/> \<!-- S (GMT+09:30) Darwin -->
128
129...
130
131\</mapTimezones>
132
133### Hige Level Proposal
134
135- bcp47/timezone.xml must be there, because all keyword keys/types must reside in bcp47/\*.xml. Therefore, f) (2) \<bcpKeywordMappings> should be deprecated (this is an invert mapping table)
136- The set of canonical Unicode time zone IDs is defined by bcp47/timezone.xml. Because we do not want to maintain the set in multiple places, long ID aliases could be embedded in bcp47/timezone.xml.
137- Metazone tables (b and c) should be in a single file
138- Territory mapping is almost equivalent to zone.tab in tzdata (minor exception - zone.tab does not include deprecated zones). I think it is not worth maintaining the data in CLDR. Therefore, d) and e) should be deprecated / no corresponding data in 1.8
139- Windows tz mapping is independently maintained - it should be moved into a new file. Side note: A single Windows tz could be mapped to multiple zones in future.
140
141### New Data Organization
142
1431. bcp47/timezone.xml
144
145Add long aliases - for example
146
147\<type name="erasm" alias="Africa/Asmera Africa/Asmara"/>
148
1492. metazoneInfo.xml
150
151Add b) into this file
152
1533. wintz.xml (new)
154
155Store only g).
156
157