]>
Commit | Line | Data |
---|---|---|
2aa62f2b | 1 | # $NetBSD: Theory,v 1.8 2004/05/27 20:39:49 kleink Exp $\r |
2 | @(#)Theory 7.15\r | |
3 | \r | |
4 | \r | |
5 | ----- Outline -----\r | |
6 | \r | |
7 | Time and date functions\r | |
8 | Names of time zone regions\r | |
9 | Time zone abbreviations\r | |
10 | Calendrical issues\r | |
11 | Time and time zones on Mars\r | |
12 | \r | |
13 | \r | |
14 | ----- Time and date functions -----\r | |
15 | \r | |
16 | These time and date functions are upwards compatible with POSIX.1,\r | |
17 | an international standard for UNIX-like systems.\r | |
18 | As of this writing, the current edition of POSIX.1 is:\r | |
19 | \r | |
20 | Information technology --Portable Operating System Interface (POSIX (R))\r | |
21 | -- Part 1: System Application Program Interface (API) [C Language]\r | |
22 | ISO/IEC 9945-1:1996\r | |
23 | ANSI/IEEE Std 1003.1, 1996 Edition\r | |
24 | 1996-07-12\r | |
25 | \r | |
26 | POSIX.1 has the following properties and limitations.\r | |
27 | \r | |
28 | * In POSIX.1, time display in a process is controlled by the\r | |
29 | environment variable TZ. Unfortunately, the POSIX.1 TZ string takes\r | |
30 | a form that is hard to describe and is error-prone in practice.\r | |
31 | Also, POSIX.1 TZ strings can't deal with other (for example, Israeli)\r | |
32 | daylight saving time rules, or situations where more than two\r | |
33 | time zone abbreviations are used in an area.\r | |
34 | \r | |
35 | The POSIX.1 TZ string takes the following form:\r | |
36 | \r | |
37 | stdoffset[dst[offset],date[/time],date[/time]]\r | |
38 | \r | |
39 | where:\r | |
40 | \r | |
41 | std and dst\r | |
42 | are 3 or more characters specifying the standard\r | |
43 | and daylight saving time (DST) zone names.\r | |
44 | offset\r | |
45 | is of the form `[-]hh:[mm[:ss]]' and specifies the\r | |
46 | offset west of UTC. The default DST offset is one hour\r | |
47 | ahead of standard time.\r | |
48 | date[/time],date[/time]\r | |
49 | specifies the beginning and end of DST. If this is absent,\r | |
50 | the system supplies its own rules for DST, and these can\r | |
51 | differ from year to year; typically US DST rules are used.\r | |
52 | time\r | |
53 | takes the form `hh:[mm[:ss]]' and defaults to 02:00.\r | |
54 | date\r | |
55 | takes one of the following forms:\r | |
56 | Jn (1<=n<=365)\r | |
57 | origin-1 day number not counting February 29\r | |
58 | n (0<=n<=365)\r | |
59 | origin-0 day number counting February 29 if present\r | |
60 | Mm.n.d (0[Sunday]<=d<=6[Saturday], 1<=n<=5, 1<=m<=12)\r | |
61 | for the dth day of week n of month m of the year,\r | |
62 | where week 1 is the first week in which day d appears,\r | |
63 | and `5' stands for the last week in which day d appears\r | |
64 | (which may be either the 4th or 5th week).\r | |
65 | \r | |
66 | * In POSIX.1, when a TZ value like "EST5EDT" is parsed,\r | |
67 | typically the current US DST rules are used,\r | |
68 | but this means that the US DST rules are compiled into each program\r | |
69 | that does time conversion. This means that when US time conversion\r | |
70 | rules change (as in the United States in 1987), all programs that\r | |
71 | do time conversion must be recompiled to ensure proper results.\r | |
72 | \r | |
73 | * In POSIX.1, there's no tamper-proof way for a process to learn the\r | |
74 | system's best idea of local wall clock. (This is important for\r | |
75 | applications that an administrator wants used only at certain times--\r | |
76 | without regard to whether the user has fiddled the "TZ" environment\r | |
77 | variable. While an administrator can "do everything in UTC" to get\r | |
78 | around the problem, doing so is inconvenient and precludes handling\r | |
79 | daylight saving time shifts--as might be required to limit phone\r | |
80 | calls to off-peak hours.)\r | |
81 | \r | |
82 | * POSIX.1 requires that systems ignore leap seconds.\r | |
83 | \r | |
84 | These are the extensions that have been made to the POSIX.1 functions:\r | |
85 | \r | |
86 | * The "TZ" environment variable is used in generating the name of a file\r | |
87 | from which time zone information is read (or is interpreted a la\r | |
88 | POSIX); "TZ" is no longer constrained to be a three-letter time zone\r | |
89 | name followed by a number of hours and an optional three-letter\r | |
90 | daylight time zone name. The daylight saving time rules to be used\r | |
91 | for a particular time zone are encoded in the time zone file;\r | |
92 | the format of the file allows U.S., Australian, and other rules to be\r | |
93 | encoded, and allows for situations where more than two time zone\r | |
94 | abbreviations are used.\r | |
95 | \r | |
96 | It was recognized that allowing the "TZ" environment variable to\r | |
97 | take on values such as "America/New_York" might cause "old" programs\r | |
98 | (that expect "TZ" to have a certain form) to operate incorrectly;\r | |
99 | consideration was given to using some other environment variable\r | |
100 | (for example, "TIMEZONE") to hold the string used to generate the\r | |
101 | time zone information file name. In the end, however, it was decided\r | |
102 | to continue using "TZ": it is widely used for time zone purposes;\r | |
103 | separately maintaining both "TZ" and "TIMEZONE" seemed a nuisance;\r | |
104 | and systems where "new" forms of "TZ" might cause problems can simply\r | |
105 | use TZ values such as "EST5EDT" which can be used both by\r | |
106 | "new" programs (a la POSIX) and "old" programs (as zone names and\r | |
107 | offsets).\r | |
108 | \r | |
109 | * To handle places where more than two time zone abbreviations are used,\r | |
110 | the functions "localtime" and "gmtime" set tzname[tmp->tm_isdst]\r | |
111 | (where "tmp" is the value the function returns) to the time zone\r | |
112 | abbreviation to be used. This differs from POSIX.1, where the elements\r | |
113 | of tzname are only changed as a result of calls to tzset.\r | |
114 | \r | |
115 | * Since the "TZ" environment variable can now be used to control time\r | |
116 | conversion, the "daylight" and "timezone" variables are no longer\r | |
117 | needed. (These variables are defined and set by "tzset"; however, their\r | |
118 | values will not be used by "localtime.")\r | |
119 | \r | |
120 | * The "localtime" function has been set up to deliver correct results\r | |
121 | for near-minimum or near-maximum time_t values. (A comment in the\r | |
122 | source code tells how to get compatibly wrong results).\r | |
123 | \r | |
124 | * A function "tzsetwall" has been added to arrange for the system's\r | |
125 | best approximation to local wall clock time to be delivered by\r | |
126 | subsequent calls to "localtime." Source code for portable\r | |
127 | applications that "must" run on local wall clock time should call\r | |
128 | "tzsetwall();" if such code is moved to "old" systems that don't\r | |
129 | provide tzsetwall, you won't be able to generate an executable program.\r | |
130 | (These time zone functions also arrange for local wall clock time to be\r | |
131 | used if tzset is called--directly or indirectly--and there's no "TZ"\r | |
132 | environment variable; portable applications should not, however, rely\r | |
133 | on this behavior since it's not the way SVR2 systems behave.)\r | |
134 | \r | |
135 | * These functions can account for leap seconds, thanks to Bradley White\r | |
136 | (bww@k.cs.cmu.edu).\r | |
137 | \r | |
138 | Points of interest to folks with other systems:\r | |
139 | \r | |
140 | * This package is already part of many POSIX-compliant hosts,\r | |
141 | including BSD, HP, Linux, Network Appliance, SCO, SGI, and Sun.\r | |
142 | On such hosts, the primary use of this package\r | |
143 | is to update obsolete time zone rule tables.\r | |
144 | To do this, you may need to compile the time zone compiler\r | |
145 | `zic' supplied with this package instead of using the system `zic',\r | |
146 | since the format of zic's input changed slightly in late 1994,\r | |
147 | and many vendors still do not support the new input format.\r | |
148 | \r | |
149 | * The UNIX Version 7 "timezone" function is not present in this package;\r | |
150 | it's impossible to reliably map timezone's arguments (a "minutes west\r | |
151 | of GMT" value and a "daylight saving time in effect" flag) to a\r | |
152 | time zone abbreviation, and we refuse to guess.\r | |
153 | Programs that in the past used the timezone function may now examine\r | |
154 | tzname[localtime(&clock)->tm_isdst] to learn the correct time\r | |
155 | zone abbreviation to use. Alternatively, use\r | |
156 | localtime(&clock)->tm_zone if this has been enabled.\r | |
157 | \r | |
158 | * The 4.2BSD gettimeofday function is not used in this package.\r | |
159 | This formerly let users obtain the current UTC offset and DST flag,\r | |
160 | but this functionality was removed in later versions of BSD.\r | |
161 | \r | |
162 | * In SVR2, time conversion fails for near-minimum or near-maximum\r | |
163 | time_t values when doing conversions for places that don't use UTC.\r | |
164 | This package takes care to do these conversions correctly.\r | |
165 | \r | |
166 | The functions that are conditionally compiled if STD_INSPIRED is defined\r | |
167 | should, at this point, be looked on primarily as food for thought. They are\r | |
168 | not in any sense "standard compatible"--some are not, in fact, specified in\r | |
169 | *any* standard. They do, however, represent responses of various authors to\r | |
170 | standardization proposals.\r | |
171 | \r | |
172 | Other time conversion proposals, in particular the one developed by folks at\r | |
173 | Hewlett Packard, offer a wider selection of functions that provide capabilities\r | |
174 | beyond those provided here. The absence of such functions from this package\r | |
175 | is not meant to discourage the development, standardization, or use of such\r | |
176 | functions. Rather, their absence reflects the decision to make this package\r | |
177 | contain valid extensions to POSIX.1, to ensure its broad\r | |
178 | acceptability. If more powerful time conversion functions can be standardized,\r | |
179 | so much the better.\r | |
180 | \r | |
181 | \r | |
182 | ----- Names of time zone rule files -----\r | |
183 | \r | |
184 | The time zone rule file naming conventions attempt to strike a balance\r | |
185 | among the following goals:\r | |
186 | \r | |
187 | * Uniquely identify every national region where clocks have all\r | |
188 | agreed since 1970. This is essential for the intended use: static\r | |
189 | clocks keeping local civil time.\r | |
190 | \r | |
191 | * Indicate to humans as to where that region is. This simplifes use.\r | |
192 | \r | |
193 | * Be robust in the presence of political changes. This reduces the\r | |
194 | number of updates and backward-compatibility hacks. For example,\r | |
195 | names of countries are ordinarily not used, to avoid\r | |
196 | incompatibilities when countries change their name\r | |
197 | (e.g. Zaire->Congo) or when locations change countries\r | |
198 | (e.g. Hong Kong from UK colony to China).\r | |
199 | \r | |
200 | * Be portable to a wide variety of implementations.\r | |
201 | This promotes use of the technology.\r | |
202 | \r | |
203 | * Use a consistent naming convention over the entire world.\r | |
204 | This simplifies both use and maintenance.\r | |
205 | \r | |
206 | This naming convention is not intended for use by inexperienced users\r | |
207 | to select TZ values by themselves (though they can of course examine\r | |
208 | and reuse existing settings). Distributors should provide\r | |
209 | documentation and/or a simple selection interface that explains the\r | |
210 | names; see the 'tzselect' program supplied with this distribution for\r | |
211 | one example.\r | |
212 | \r | |
213 | Names normally have the form AREA/LOCATION, where AREA is the name\r | |
214 | of a continent or ocean, and LOCATION is the name of a specific\r | |
215 | location within that region. North and South America share the same\r | |
216 | area, `America'. Typical names are `Africa/Cairo', `America/New_York',\r | |
217 | and `Pacific/Honolulu'.\r | |
218 | \r | |
219 | Here are the general rules used for choosing location names,\r | |
220 | in decreasing order of importance:\r | |
221 | \r | |
222 | Use only valid POSIX file name components (i.e., the parts of\r | |
223 | names other than `/'). Within a file name component,\r | |
224 | use only ASCII letters, `.', `-' and `_'. Do not use\r | |
225 | digits, as that might create an ambiguity with POSIX\r | |
226 | TZ strings. A file name component must not exceed 14\r | |
227 | characters or start with `-'. E.g., prefer `Brunei'\r | |
228 | to `Bandar_Seri_Begawan'.\r | |
229 | Include at least one location per time zone rule set per country.\r | |
230 | One such location is enough. Use ISO 3166 (see the file\r | |
231 | iso3166.tab) to help decide whether something is a country.\r | |
232 | If all the clocks in a country's region have agreed since 1970,\r | |
233 | don't bother to include more than one location\r | |
234 | even if subregions' clocks disagreed before 1970.\r | |
235 | Otherwise these tables would become annoyingly large.\r | |
236 | If a name is ambiguous, use a less ambiguous alternative;\r | |
237 | e.g. many cities are named San Jose and Georgetown, so\r | |
238 | prefer `Costa_Rica' to `San_Jose' and `Guyana' to `Georgetown'.\r | |
239 | Keep locations compact. Use cities or small islands, not countries\r | |
240 | or regions, so that any future time zone changes do not split\r | |
241 | locations into different time zones. E.g. prefer `Paris'\r | |
242 | to `France', since France has had multiple time zones.\r | |
243 | Use mainstream English spelling, e.g. prefer `Rome' to `Roma', and\r | |
244 | prefer `Athens' to the true name (which uses Greek letters).\r | |
245 | The POSIX file name restrictions encourage this rule.\r | |
246 | Use the most populous among locations in a country's time zone,\r | |
247 | e.g. prefer `Shanghai' to `Beijing'. Among locations with\r | |
248 | similar populations, pick the best-known location,\r | |
249 | e.g. prefer `Rome' to `Milan'.\r | |
250 | Use the singular form, e.g. prefer `Canary' to `Canaries'.\r | |
251 | Omit common suffixes like `_Islands' and `_City', unless that\r | |
252 | would lead to ambiguity. E.g. prefer `Cayman' to\r | |
253 | `Cayman_Islands' and `Guatemala' to `Guatemala_City',\r | |
254 | but prefer `Mexico_City' to `Mexico' because the country\r | |
255 | of Mexico has several time zones.\r | |
256 | Use `_' to represent a space.\r | |
257 | Omit `.' from abbreviations in names, e.g. prefer `St_Helena'\r | |
258 | to `St._Helena'.\r | |
259 | Do not change established names if they only marginally\r | |
260 | violate the above rules. For example, don't change\r | |
261 | the existing name `Rome' to `Milan' merely because\r | |
262 | Milan's population has grown to be somewhat greater\r | |
263 | than Rome's.\r | |
264 | If a name is changed, put its old spelling in the `backward' file.\r | |
265 | \r | |
266 | The file `zone.tab' lists the geographical locations used to name\r | |
267 | time zone rule files.\r | |
268 | \r | |
269 | Older versions of this package used a different naming scheme,\r | |
270 | and these older names are still supported.\r | |
271 | See the file `backward' for most of these older names\r | |
272 | (e.g. `US/Eastern' instead of `America/New_York').\r | |
273 | The other old-fashioned names still supported are\r | |
274 | `WET', `CET', `MET', `EET' (see the file `europe'),\r | |
275 | and `Factory' (see the file `factory').\r | |
276 | \r | |
277 | \r | |
278 | ----- Time zone abbreviations -----\r | |
279 | \r | |
280 | When this package is installed, it generates time zone abbreviations\r | |
281 | like `EST' to be compatible with human tradition and POSIX.1.\r | |
282 | Here are the general rules used for choosing time zone abbreviations,\r | |
283 | in decreasing order of importance:\r | |
284 | \r | |
285 | Use abbreviations that consist of three or more ASCII letters.\r | |
286 | Previous editions of this database also used characters like\r | |
287 | ' ' and '?', but these characters have a special meaning to\r | |
288 | the shell and cause commands like\r | |
289 | set `date`\r | |
290 | to have unexpected effects.\r | |
291 | Previous editions of this rule required upper-case letters,\r | |
292 | but the Congressman who introduced Chamorro Standard Time\r | |
293 | preferred "ChST", so the rule has been relaxed.\r | |
294 | \r | |
295 | This rule guarantees that all abbreviations could have\r | |
296 | been specified by a POSIX.1 TZ string. POSIX.1\r | |
297 | requires at least three characters for an\r | |
298 | abbreviation. POSIX.1-1996 says that an abbreviation\r | |
299 | cannot start with ':', and cannot contain ',', '-',\r | |
300 | '+', NUL, or a digit. Draft 7 of POSIX 1003.1-200x\r | |
301 | changes this rule to say that an abbreviation can\r | |
302 | contain only '-', '+', and alphanumeric characters in\r | |
303 | the current locale. To be portable to both sets of\r | |
304 | rules, an abbreviation must therefore use only ASCII\r | |
305 | letters, as these are the only letters that are\r | |
306 | alphabetic in all locales.\r | |
307 | \r | |
308 | Use abbreviations that are in common use among English-speakers,\r | |
309 | e.g. `EST' for Eastern Standard Time in North America.\r | |
310 | We assume that applications translate them to other languages\r | |
311 | as part of the normal localization process; for example,\r | |
312 | a French application might translate `EST' to `HNE'.\r | |
313 | \r | |
314 | For zones whose times are taken from a city's longitude, use the\r | |
315 | traditional xMT notation, e.g. `PMT' for Paris Mean Time.\r | |
316 | The only name like this in current use is `GMT'.\r | |
317 | \r | |
318 | If there is no common English abbreviation, abbreviate the English\r | |
319 | translation of the usual phrase used by native speakers.\r | |
320 | If this is not available or is a phrase mentioning the country\r | |
321 | (e.g. ``Cape Verde Time''), then:\r | |
322 | \r | |
323 | When a country has a single or principal time zone region,\r | |
324 | append `T' to the country's ISO code, e.g. `CVT' for\r | |
325 | Cape Verde Time. For summer time append `ST';\r | |
326 | for double summer time append `DST'; etc.\r | |
327 | When a country has multiple time zones, take the first three\r | |
328 | letters of an English place name identifying each zone\r | |
329 | and then append `T', `ST', etc. as before;\r | |
330 | e.g. `VLAST' for VLAdivostok Summer Time.\r | |
331 | \r | |
332 | Use "zzz" for locations while uninhabited. The mnemonic is that\r | |
333 | these locations are, in some sense, asleep.\r | |
334 | \r | |
335 | Application writers should note that these abbreviations are ambiguous\r | |
336 | in practice: e.g. `EST' has a different meaning in Australia than\r | |
337 | it does in the United States. In new applications, it's often better\r | |
338 | to use numeric UTC offsets like `-0500' instead of time zone\r | |
339 | abbreviations like `EST'; this avoids the ambiguity.\r | |
340 | \r | |
341 | \r | |
342 | ----- Calendrical issues -----\r | |
343 | \r | |
344 | Calendrical issues are a bit out of scope for a time zone database,\r | |
345 | but they indicate the sort of problems that we would run into if we\r | |
346 | extended the time zone database further into the past. An excellent\r | |
347 | resource in this area is Nachum Dershowitz and Edward M. Reingold,\r | |
348 | <a href="http://emr.cs.uiuc.edu/home/reingold/calendar-book/index.shtml">\r | |
349 | Calendrical Calculations\r | |
350 | </a>, Cambridge University Press (1997). Other information and\r | |
351 | sources are given below. They sometimes disagree.\r | |
352 | \r | |
353 | \r | |
354 | France\r | |
355 | \r | |
356 | Gregorian calendar adopted 1582-12-20.\r | |
357 | French Revolutionary calendar used 1793-11-24 through 1805-12-31,\r | |
358 | and (in Paris only) 1871-05-06 through 1871-05-23.\r | |
359 | \r | |
360 | \r | |
361 | Russia\r | |
362 | \r | |
363 | From Chris Carrier <72157.3334@CompuServe.COM> (1996-12-02):\r | |
364 | On 1929-10-01 the Soviet Union instituted an ``Eternal Calendar''\r | |
365 | with 30-day months plus 5 holidays, with a 5-day week.\r | |
366 | On 1931-12-01 it changed to a 6-day week; in 1934 it reverted to the\r | |
367 | Gregorian calendar while retaining the 6-day week; on 1940-06-27 it\r | |
368 | reverted to the 7-day week. With the 6-day week the usual days\r | |
369 | off were the 6th, 12th, 18th, 24th and 30th of the month.\r | |
370 | (Source: Evitiar Zerubavel, _The Seven Day Circle_)\r | |
371 | \r | |
372 | \r | |
373 | Mark Brader reported a similar story in "The Book of Calendars", edited\r | |
374 | by Frank Parise (1982, Facts on File, ISBN 0-8719-6467-8), page 377. But:\r | |
375 | \r | |
376 | From: Petteri Sulonen (via Usenet)\r | |
377 | Date: 14 Jan 1999 00:00:00 GMT\r | |
378 | Message-ID: <Petteri.Sulonen-1401991626030001@lapin-kulta.in.helsinki.fi>\r | |
379 | \r | |
380 | If your source is correct, how come documents between 1929 -- 1940 were\r | |
381 | still dated using the conventional, Gregorian calendar?\r | |
382 | \r | |
383 | I can post a scan of a document dated December 1, 1934, signed by\r | |
384 | Yenukidze, the secretary, on behalf of Kalinin, the President of the\r | |
385 | Executive Committee of the Supreme Soviet, if you like.\r | |
386 | \r | |
387 | \r | |
388 | \r | |
389 | Sweden (and Finland)\r | |
390 | \r | |
391 | From: msb@sq.com (Mark Brader)\r | |
392 | <a href="news:1996Jul6.012937.29190@sq.com">\r | |
393 | Subject: Re: Gregorian reform -- a part of locale?\r | |
394 | </a>\r | |
395 | Date: 1996-07-06\r | |
396 | \r | |
397 | In 1700, Denmark made the transition from Julian to Gregorian. Sweden\r | |
398 | decided to *start* a transition in 1700 as well, but rather than have one of\r | |
399 | those unsightly calendar gaps :-), they simply decreed that the next leap\r | |
400 | year after 1696 would be in 1744 -- putting the whole country on a calendar\r | |
401 | different from both Julian and Gregorian for a period of 40 years.\r | |
402 | \r | |
403 | However, in 1704 something went wrong and the plan was not carried through;\r | |
404 | they did, after all, have a leap year that year. And one in 1708. In 1712\r | |
405 | they gave it up and went back to Julian, putting 30 days in February that\r | |
406 | year!...\r | |
407 | \r | |
408 | Then in 1753, Sweden made the transition to Gregorian in the usual manner,\r | |
409 | getting there only 13 years behind the original schedule.\r | |
410 | \r | |
411 | (A previous posting of this story was challenged, and Swedish readers\r | |
412 | produced the following references to support it: "Tiderakning och historia"\r | |
413 | by Natanael Beckman (1924) and "Tid, en bok om tiderakning och\r | |
414 | kalendervasen" by Lars-Olof Lode'n (no date was given).)\r | |
415 | \r | |
416 | \r | |
417 | Grotefend's data\r | |
418 | \r | |
419 | From: "Michael Palmer" <mpalmer@netcom.com> [with one obvious typo fixed]\r | |
420 | Subject: Re: Gregorian Calendar (was Re: Another FHC related question\r | |
421 | Newsgroups: soc.genealogy.german\r | |
422 | Date: Tue, 9 Feb 1999 02:32:48 -800\r | |
423 | Message-ID: <199902091032.CAA09644@netcom10.netcom.com>\r | |
424 | \r | |
425 | The following is a(n incomplete) listing, arranged chronologically, of\r | |
426 | European states, with the date they converted from the Julian to the\r | |
427 | Gregorian calendar:\r | |
428 | \r | |
429 | 04/15 Oct 1582 - Italy (with exceptions), Spain, Portugal, Poland (Roman\r | |
430 | Catholics and Danzig only)\r | |
431 | 09/20 Dec 1582 - France, Lorraine\r | |
432 | \r | |
433 | 21 Dec 1582/\r | |
434 | 01 Jan 1583 - Holland, Brabant, Flanders, Hennegau\r | |
435 | 10/21 Feb 1583 - bishopric of Liege (L"uttich)\r | |
436 | 13/24 Feb 1583 - bishopric of Augsburg\r | |
437 | 04/15 Oct 1583 - electorate of Trier\r | |
438 | 05/16 Oct 1583 - Bavaria, bishoprics of Freising, Eichstedt, Regensburg,\r | |
439 | Salzburg, Brixen\r | |
440 | 13/24 Oct 1583 - Austrian Oberelsass and Breisgau\r | |
441 | 20/31 Oct 1583 - bishopric of Basel\r | |
442 | 02/13 Nov 1583 - duchy of J"ulich-Berg\r | |
443 | 02/13 Nov 1583 - electorate and city of K"oln\r | |
444 | 04/15 Nov 1583 - bishopric of W"urzburg\r | |
445 | 11/22 Nov 1583 - electorate of Mainz\r | |
446 | 16/27 Nov 1583 - bishopric of Strassburg and the margraviate of Baden\r | |
447 | 17/28 Nov 1583 - bishopric of M"unster and duchy of Cleve\r | |
448 | 14/25 Dec 1583 - Steiermark\r | |
449 | \r | |
450 | 06/17 Jan 1584 - Austria and Bohemia\r | |
451 | 11/22 Jan 1584 - Luzern, Uri, Schwyz, Zug, Freiburg, Solothurn\r | |
452 | 12/23 Jan 1584 - Silesia and the Lausitz\r | |
453 | 22 Jan/\r | |
454 | 02 Feb 1584 - Hungary (legally on 21 Oct 1587)\r | |
455 | Jun 1584 - Unterwalden\r | |
456 | 01/12 Jul 1584 - duchy of Westfalen\r | |
457 | \r | |
458 | 16/27 Jun 1585 - bishopric of Paderborn\r | |
459 | \r | |
460 | 14/25 Dec 1590 - Transylvania\r | |
461 | \r | |
462 | 22 Aug/\r | |
463 | 02 Sep 1612 - duchy of Prussia\r | |
464 | \r | |
465 | 13/24 Dec 1614 - Pfalz-Neuburg\r | |
466 | \r | |
467 | 1617 - duchy of Kurland (reverted to the Julian calendar in\r | |
468 | 1796)\r | |
469 | \r | |
470 | 1624 - bishopric of Osnabr"uck\r | |
471 | \r | |
472 | 1630 - bishopric of Minden\r | |
473 | \r | |
474 | 15/26 Mar 1631 - bishopric of Hildesheim\r | |
475 | \r | |
476 | 1655 - Kanton Wallis\r | |
477 | \r | |
478 | 05/16 Feb 1682 - city of Strassburg\r | |
479 | \r | |
480 | 18 Feb/\r | |
481 | 01 Mar 1700 - Protestant Germany (including Swedish possessions in\r | |
482 | Germany), Denmark, Norway\r | |
483 | 30 Jun/\r | |
484 | 12 Jul 1700 - Gelderland, Zutphen\r | |
485 | 10 Nov/\r | |
486 | 12 Dec 1700 - Utrecht, Overijssel\r | |
487 | \r | |
488 | 31 Dec 1700/\r | |
489 | 12 Jan 1701 - Friesland, Groningen, Z"urich, Bern, Basel, Geneva,\r | |
490 | Turgau, and Schaffhausen\r | |
491 | \r | |
492 | 1724 - Glarus, Appenzell, and the city of St. Gallen\r | |
493 | \r | |
494 | 01 Jan 1750 - Pisa and Florence\r | |
495 | \r | |
496 | 02/14 Sep 1752 - Great Britain\r | |
497 | \r | |
498 | 17 Feb/\r | |
499 | 01 Mar 1753 - Sweden\r | |
500 | \r | |
501 | 1760-1812 - Graub"unden\r | |
502 | \r | |
503 | The Russian empire (including Finland and the Baltic states) did not\r | |
504 | convert to the Gregorian calendar until the Soviet revolution of 1917.\r | |
505 | \r | |
506 | Source: H. Grotefend, _Taschenbuch der Zeitrechnung des deutschen\r | |
507 | Mittelalters und der Neuzeit_, herausgegeben von Dr. O. Grotefend\r | |
508 | (Hannover: Hahnsche Buchhandlung, 1941), pp. 26-28.\r | |
509 | \r | |
510 | \r | |
511 | ----- Time and time zones on Mars -----\r | |
512 | \r | |
513 | Some people have adjusted their work schedules to fit Mars time.\r | |
514 | Dozens of special Mars watches were built for Jet Propulsion\r | |
515 | Laboratory workers who kept Mars time during the Mars Exploration\r | |
516 | Rovers mission (2004). These timepieces look like normal Seikos and\r | |
517 | Citizens but use Mars seconds rather than terrestrial seconds.\r | |
518 | \r | |
519 | A Mars solar day is called a "sol" and has a mean period equal to\r | |
520 | about 24 hours 39 minutes 35.244 seconds in terrestrial time. It is\r | |
521 | divided into a conventional 24-hour clock, so each Mars second equals\r | |
522 | about 1.02749125 terrestrial seconds.\r | |
523 | \r | |
524 | The prime meridian of Mars goes through the center of the crater\r | |
525 | Airy-0, named in honor of the British astronomer who built the\r | |
526 | Greenwich telescope that defines Earth's prime meridian. Mean solar\r | |
527 | time on the Mars prime meridian is called Mars Coordinated Time (MTC).\r | |
528 | \r | |
529 | Each landed mission on Mars has adopted a different reference for\r | |
530 | solar time keeping, so there is no real standard for Mars time zones.\r | |
531 | For example, the Mars Exploration Rover project (2004) defined two\r | |
532 | time zones "Local Solar Time A" and "Local Solar Time B" for its two\r | |
533 | missions, each zone designed so that its time equals local true solar\r | |
534 | time at approximately the middle of the nominal mission. Such a "time\r | |
535 | zone" is not particularly suited for any application other than the\r | |
536 | mission itself.\r | |
537 | \r | |
538 | Many calendars have been proposed for Mars, but none have achieved\r | |
539 | wide acceptance. Astronomers often use Mars Sol Date (MSD) which is a\r | |
540 | sequential count of Mars solar days elapsed since about 1873-12-29\r | |
541 | 12:00 GMT.\r | |
542 | \r | |
543 | The tz database does not currently support Mars time, but it is\r | |
544 | documented here in the hopes that support will be added eventually.\r | |
545 | \r | |
546 | Sources:\r | |
547 | \r | |
548 | Michael Allison and Robert Schmunk,\r | |
549 | "Technical Notes on Mars Solar Time as Adopted by the Mars24 Sunclock"\r | |
550 | <http://www.giss.nasa.gov/tools/mars24/help/notes.html> (2004-03-15).\r | |
551 | \r | |
552 | Jia-Rui Chong, "Workdays Fit for a Martian", Los Angeles Times\r | |
553 | (2004-01-14), pp A1, A20-A21.\r |