tz database

tz database

The tz database, also called the zoneinfo database or IANA Time Zone Database, is a collaborative compilation of information about the world's time zones, primarily intended for use with computer programs and operating systems.[1] It is sometimes referred to as the Olson database after the founding contributor Arthur David Olson.[2] Paul Eggert is editor and maintainer of the tz database.[3]

Its most recognizable feature is the uniform naming convention designed by Paul Eggert for time zones, such as "America/New_York" and "Europe/Paris" (see List of tz database time zones).[4] The database attempts to record historical time zones and all civil changes since 1970, the Unix time epoch.[5] It also includes transitions such as daylight saving time, and even records leap seconds.[6]

The tz database partitions the world into regions where local clocks have all been the same since 1970. This map, taken from the 2009r edition of the database, is of all the regions outside Antarctica.[7]

Contents

History

The project's origins go back to at least 1986.[8] The project's database, as well as some reference source code, is in the public domain.[9] New editions of the database are published as changes warrant, usually several times per year.[10]

2011 lawsuit

On September 30, 2011, a lawsuit, Astrolabe, Inc. v. Olson et al.,[11][12] was filed concerning copyright in the database. As a result, on October 6, 2011, the database's maintenance (mailing list) and dissemination (FTP site) operations were shut down.[13] The case revolves around the use by the database maintainers of the atlases The American Atlas by Thomas G. Shanks and The International Atlas by Thomas G. Shanks and Rique Pottenger. It specifically complains of unauthorised reproduction of the atlases' data in the timezone mailing list archive and in some auxiliary link collections maintained with the database, but doesn't actually point at the database itself. The complaint relates only to the compilation of historical timezone data, and does not cover current tzdata world timezone tables.[14][12][15] The tz database clearly references its sources, including the atlas, in comments, allowing the extent of use of the data to be evaluated.[16][17]

Move to ICANN

ICANN took responsibility for the maintenance of the database on October 14, 2011.[18] The full database (including allegedly-infringing sections) and a description of current and future plans for its maintenance are available online from IANA.[19]

Data structure

File formats

The tz database is published as a set of text files which list the rules and zone transitions in a human-readable format. For use, these text files are compiled into a set of platform-independent binary files—one per time zone. The reference source code includes such a compiler called zic (zone information compiler), as well as code to read those files and use them in standard APIs such as localtime() and mktime().

Definition of a time zone

Within the tz database, a time zone is any national region where local clocks have all agreed since 1970.[20] This definition concerns itself first with geographic areas which have had consistent local clocks. This is different from other definitions which concern themselves with consistent offsets from a prime meridian. Therefore each of the time zones defined by the tz database may document multiple offsets to UTC, typically containing both the standard time and the daylight saving time in the same zone.

Names of time zones

The time zones have unique names in the form "Area/Location", e.g. "America/New_York", in an attempt to make them easier to understand by humans. A choice was also made to use English names or equivalents, and to omit punctuation and common suffixes. The underscore character is used in place of spaces. Hyphens are used where they appear in the name of a location.

Area

Area is either the name of a continent and ocean or "Etc". The set of continents and oceans currently include: Africa, America, Antarctica, Arctic, Asia, Atlantic, Australia, Europe, Indian, and Pacific.

The special area of Etc is used for some administrative zones, particularly for "Etc/UTC" which represents Coordinated Universal Time. In order to conform with the POSIX style, those zone names beginning with "Etc/GMT" have their sign reversed from what most people expect. In this style, zones west of GMT have a positive sign and those east have a negative sign in their name (e.g "Etc/GMT-14" is 14 hours ahead/east of GMT.)

Location

Location is the name of a specific location within that region, usually cities or small islands.

Country names are not used in this scheme, primarily because they would not be robust due to frequent political and boundary changes. The names of large cities tend to be more permanent. However, the database maintainers attempt to include at least one zone for every ISO 3166-1 alpha-2 country code, and a number of user interfaces to the database take advantage of this. Additionally there is a desire to keep locations geographically compact so that any future time zone changes do not split locations into different time zones.[citation needed]

Usually the most populous city in a region is chosen to represent the entire time zone, although other cities may be selected if they are more widely known or result in a less ambiguous name.[citation needed] In the event that the name of a city changes, the convention is to create an alias[citation needed] in future editions so that both the old and new names refer to the same database entry.

In some cases the Location is itself represented as a compound name, for example the time zone "America/Indiana/Indianapolis". The only three-level names currently include those under "America/Argentina/...", "America/Kentucky/...", "America/Indiana/...", and "America/North_Dakota/...".

The location selected is representative for the entire area.

On 2010-05-01 Arthur David Olson mentions a 14 character limit,[21] to justify dropping "de" as in the name of Bahia de Banderas and using only "Bahia_Banderas" for the identifier America/Bahia_Banderas.

Examples

America/Costa_Rica name of country used because the name of the largest city San José is ambiguous
America/New_York Space replaced with underscore
Asia/Sakhalin name of island used, because largest city, Yuzhno-Sakhalinsk, has more than 14 characters
America/Bahia_Banderas name of largest city altered, "de" removed from Bahia de Banderas, because correct name has more than 14 characters
Antarctica/DumontDUrville the apostrophe is removed. Removal of space not conforming to the rule that requires replacement with "_", but with "_" the name would have 15 chars

Data stored for each zone

For each time zone that has multiple offsets, usually the standard and daylight variants, the tz database records the exact moment of transition. The format can accommodate changes in the dates and times of transitions as well.

Zone.tab

The file zone.tab is in the public domain and lists the zones. Columns and row sorting are described in the comments of the file, as follows:

# This file contains a table with the following columns:
# 1.  ISO 3166 2-character country code.  See the file `iso3166.tab'.
# 2.  Latitude and longitude of the zone's principal location
#     in ISO 6709 sign-degrees-minutes-seconds format,
#     either +-DDMM+-DDDMM or +-DDMMSS+-DDDMMSS,
#     first latitude (+ is north), then longitude (+ is east).
# 3.  Zone name used in value of TZ environment variable.
# 4.  Comments; present if and only if the country has multiple rows.
#
# Columns are separated by a single tab.
# The table is sorted first by country, then an order within the country that
# (1) makes some geographical sense, and
# (2) puts the most populous zones first, where that does not contradict (1).

Data before 1970

Data before 1970 aims to be correct for the city identifying the region, but is not necessarily correct for the entire region. This is because new regions are created only as required to distinguish clocks since 1970.

For example, between 1963-10-23 and 1963-12-09 in Brazil only the states of Minas Gerais, Espirito Santo, Rio de Janeiro and São Paulo had summer time, but on request a split from America/Sao_Paulo was rejected with the reasoning that since 1970 the clocks were the same in the whole region.[22]

Time in Germany, which is represented by Europe/Berlin, is not correct for the year 1945 when the Trizone used different daylight saving time rules than Berlin.[citation needed]

Coverage

Zones covering multiple post-1970 countries

There are two zones that cover an area that was covered by two countries after 1970. The tzdata follows the definitions of countries as per ISO 3166-1, whose predecessor ISO 3166 was first published in 1974.

Maintenance

The tz reference code and database is maintained by a group of volunteers. Arthur David Olson makes most of the changes to the code, and Paul Eggert to the database. Proposed changes are sent to the tz mailing list, which is gatewayed to the comp.time.tz Usenet newsgroup. Source files are distributed via the FTP server elsie.nci.nih.gov. Typically, these files are taken by a software distributor like Debian, compiled, and then the source and binaries are packaged as part of that distribution. End users can either rely on their software distribution's update procedures, which may entail some delay, or obtain the source directly from ftp://elsie.nci.nih.gov/pub/ and build the binary files themselves. A future maintenance plan based on similar principles has been drafted through the IETF. Since 14 October IANA acts as a repository for the TZ database and associated reference code.[23]

Pursuant to a lawsuit,[12] the FTP server and mailing list have been shut down.[13]

Unix-like systems

The standard path for the timezone database is /usr/share/zoneinfo/ on most Unix-like systems, including Linux distributions. The file command has support for displaying the binary timezone files in a human-friendly textual form built-in:

$ file /usr/share/zoneinfo/Europe/Berlin
/usr/share/zoneinfo/Europe/Berlin: timezone data, version 2, 8 gmt time flags, 8 std time flags, no leap seconds, 144 transition times, 8 abbreviation chars

Usage and extensions

Boundaries of time zones

Geographical boundaries in form of coordinate sets are not part of the tz database, but boundaries are published by Eric Muller[7] in the form of vector polygons. Using these vector polygons, one can determine, for each place on the globe, the tzdata zone in which it is located.

Use in other standards

CLDR uses UN/LOCODEs to identify regions.[24] This means all identifiers are referencing a country, something that the creators of the tz database wanted to avoid.

Use in software systems

The tz database is used for time zone processing and conversions in many computer software systems, including:

The Olson timezone IDs are also used by the Unicode Common Locale Data Repository (CLDR) and International Components for Unicode (ICU). For example, the CLDR Windows → Tzid table maps Microsoft Windows time zone IDs to the standard Olson names.[31]

See also

References

  1. ^ Eggert, Paul; Olson, Arthur David (2007-11-29). "Sources for time zone and daylight saving time data". http://cs.ucla.edu/~eggert/tz/tz-link.htm. Retrieved 2007-12-03. 
  2. ^ Olson, Arthur David (1986-12-16). "Resolved timezone issue? Other issues. New ctime manual page". tz mailing list. 
  3. ^ Eggert, Paul (2005-01). "Re: FW: IANA time zone registration - proposal". tz mailing list. http://osdir.com/ml/time.tz/2005-01/msg00027.html. 
  4. ^ Eggert, Paul (1993-10-20). "proposal for time zone names". tz mailing list. 
  5. ^ Olson, Arthur David (1987-03-18). "Re: ist of issues". tz mailing list. 
  6. ^ Devine, Bob (1988-06-02). "leap seconds; [0-60] is ok". tz mailing list. 
  7. ^ a b Muller, Eric. A shapefile of the TZ timezones of the world [updated 2009-11-23].
  8. ^ Olson, Arthur David (1986-11-24). "seismo!elsie!tz ; new versions of time zone stuff". tz mailing list. 
  9. ^ Eggert, Paul (1995-11-11). "questions and comments on http://tycho.usno.navy.mil/tzones.html". tz mailing list. 
  10. ^ "zoneinfo tzcode and tzdata archives (FTP)". ftp://munnari.oz.au/pub/oldtz/. Retrieved 2007-10-30. 
  11. ^ "Astrolabe, Inc. v. Olson et al". 2011-10-06. http://dockets.justia.com/docket/massachusetts/madce/1:2011cv11725/139342/. Retrieved 2011-10-06. 
  12. ^ a b c "ASTROLABE, INC., Plaintiff, v. ARTHUR DAVID OLSON and PAUL EGGERT, Defendants.". 2011-09-30. http://web.mit.edu/jhawk/tmp/tz/gov.uscourts.mad.139342.1.0.pdf. Retrieved 2011-10-07. 
  13. ^ a b Olson, Arthur David (2011-10-06). "Civil suit; ftp shutdown; mailing list shutdown". http://article.gmane.org/gmane.comp.time.tz/4133. Retrieved 2011-10-06. 
  14. ^ "Time zone database shut down". The Daily Parker. 2011-10-06. http://www.thedailyparker.com/PermaLink,guid,c5f28bae-4b9c-41ea-b7b7-8891ad63c938.aspx. Retrieved 2011-10-06. 
  15. ^ "Time-zone database - Astrolabe's opinion". Stephen Colebourne's blog. 13 October 2011. http://blog.joda.org/2011/10/time-zone-database-astrolabes-opinion.html. Retrieved 26 October 2011. 
  16. ^ "Time-zone database down". Stephen Colebourne's blog. 6 October 2011. http://blog.joda.org/2011/10/today-time-zone-database-was-closed.html. Retrieved 26 October 2011. 
  17. ^ "Civil Suit Filed, Involving the Time Zone Database". Slashdot. Geeknet, Inc.. 2011-10-06. http://slashdot.org/story/11/10/06/1743226/. 
  18. ^ "Time Zone Database Has New Home After Lawsuit". 2011-10-17. http://abcnews.go.com/Technology/wireStory/time-zone-database-home-lawsuit-14753833. Retrieved 2011-10-30. 
  19. ^ "IANA -- Time Zone Database". http://www.iana.org/time-zones. 
  20. ^ Theory (text file), contained in the "tzcode" distribution. Version tzcode2007h.tar.gz 2007-10-01 referenced.
  21. ^ Olson, Arthur David (2010-05-01). "proposed time zone package changes (Bahia de Banderas; version naming)". gmane.comp.time.tz. http://article.gmane.org/gmane.comp.time.tz/3223. 
  22. ^ Olson, Arthur David (2010-01-06). "RE: little nuance in brazil 1963". tz mailing list. http://article.gmane.org/gmane.comp.time.tz/3061. 
  23. ^ "Time zone database has new home after lawsuit". 2011-10-17. http://mm.icann.org/pipermail/tz/2011-October/008109.html. Retrieved 2011-10-17. 
  24. ^ "Unicode Locale Extension (‘u’) for BCP 47". CLDR - Unicode Common Locale Data Repository. http://cldr.unicode.org/index/bcp47-extension. 
  25. ^ "Olson time zone support and setup". AIX 7.1 information. IBM. http://publib.boulder.ibm.com/infocenter/aix/v7r1/index.jsp?topic=/com.ibm.aix.baseadmn/doc/baseadmndita/olson_time_zone.htm. Retrieved 2011-03-12. 
  26. ^ "Managing the Time Zone Variable". IBM. 2007-02-02. https://www-304.ibm.com/support/docview.wss?q1=tz&dc=DB520&rs=111&uid=isg3T1000252&context=SWG10. Retrieved 2011-03-11. 
  27. ^ a b "AIX O/S updated to support 2007 Daylight Saving Time change". IBM. 2007-10-18. http://www14.software.ibm.com/webapp/set2/sas/f/enews/2006/10/DSTupdate.html. Retrieved 2011-03-12. 
  28. ^ "2007 daylight savings time changes for Unix". Academic Computing and Communications Center, University of Illinois at Chicago. 2007-02-25. http://www.uic.edu/depts/accc/systems/daylight/unix.html. Retrieved 2008-03-18. )
  29. ^ Wickremasinghe, Christopher (2009-03-30). "Introduction of daylight saving time in Western Australia 2006". AIX Wiki. IBM. http://www.ibm.com/developerworks/wikis/display/usergroups/Introduction+of+Daylight+Saving+Time+in+Western+Australia++2006. Retrieved 2011-03-11. 
  30. ^ Oracle Database Globalization Support Guide 10g Release 1 (10.1): Chapter 4, Section "Choosing a Time Zone File". Oracle Corporation. June 2004. pp. 4–14. Part No. B10749-02. http://download-uk.oracle.com/docs/cd/B14117_01/server.101/b10749/ch4datetime.htm#i1006667. Retrieved 2007-10-30. 
  31. ^ "Windows → Tzid". Unicode Consortium. 2007-11-12. http://unicode.org/cldr/data/diff/supplemental/windows_tzid.html. Retrieved 2008-02-17. 

External links

Official IANA sources
Other sources for tzdata and tzcode

Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Look at other dictionaries:

  • Database design — is the process of producing a detailed data model of a database. This logical data model contains all the needed logical and physical design choices and physical storage parameters needed to generate a design in a Data Definition Language, which… …   Wikipedia

  • Database audit — Database auditing involves observing a database so as to be aware of the actions of database users. Database administrators and consultants often set up auditing for security purposes, for example, to ensure that those without the permission to… …   Wikipedia

  • Database security — concerns the use of a broad range of information security controls to protect databases (potentially including the data, the database applications or stored functions, the database systems, the database servers and the associated network links)… …   Wikipedia

  • Database administration and automation — Database administration is the function of managing and maintaining database management systems (DBMS) software. Mainstream DBMS software such as Oracle, IBM DB2 and Microsoft SQL Server need ongoing management. As such, corporations that use… …   Wikipedia

  • Database activity monitoring — (DAM) is a database security technology for monitoring and analyzing database activity that operates independently of the database management system (DBMS) and does not rely on any form of native (DBMS resident) auditing or native logs such as… …   Wikipedia

  • Database marketing — is a form of direct marketing using databases of customers or potential customers to generate personalized communications in order to promote a product or service for marketing purposes. The method of communication can be any addressable medium,… …   Wikipedia

  • Database tuning — describes a group of activities used to optimize and homogenize the performance of a database. It usually overlaps with query tuning, but refers to design of the database files, selection of the database management system (DBMS), operating system …   Wikipedia

  • Database journalism — or structured journalism is a principle in information management whereby news content is organized around structured pieces of data, as opposed to news stories. Communication scholar Wiebke Loosen defines database journalism as supplying… …   Wikipedia

  • Database storage structures — Database tables/indexes are typically stored on hard disk in one of many forms, ordered/unordered Flat files, ISAM, Heaps, Hash buckets or B+ Trees. These have various advantages and disadvantages discussed in this topic. The most commonly used… …   Wikipedia

  • Database virtualization — is the decoupling of the database layer, which lies between the storage and application layers within the application stack. Virtualization at the database layer allows hardware resources to be extended to allow for better sharing resources… …   Wikipedia

  • database — da‧ta‧base [ˈdeɪtəˌbeɪs] noun [countable] COMPUTING a large amount of information on a particular subject that is stored on a computer in an organized way so that you can find and use it easily: • a database of all the UK clearing houses •… …   Financial and business terms

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”