tz database

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
Карта всіх часових зон, крім Антарктики, на базі tz database версії 2009[1]

Tz databaseангл. timezone database — База даних часових поясів) або IANA Time Zone Database або zoneinfo database (база даних інформації про зони) — спільно зібрана інформація про світові часові зони, призначена для використання в першу чергу операційними системами та комп'ютерними програмами[2]. Іноді вона згадується як «база даних Олсона» (Olson database), бо була заснована Артуром Девідом Олсон (Arthur David Olson)[3]. Редактором і зберігачем бази є Пол Еггерт (Paul Eggert)[4].

Її найвідоміша можливість — уніфіковане іменування часових поясів, розроблене Полом Еггертом, таке, як «Америка/Нью-Йорк» і «Європа/Париж»[5]. У базі даних намагаються зібрати інформацію про всі історичні часові пояси і всі їхні громадянські зміни починаючи з 1970 року, епохи юнікс[6]. Вона також включає в себе інформацію про перехід на літній час, і навіть запис високосних секунд[7].

Витоки проекту сягають принаймні 1986 року[8]. База даних проекту, а також деякі вихідні файли, перебувають у суспільному надбанні[9]. Нові версії бази даних публікуються, як правило, кілька разів на рік[10].

Восени 2011 року компанія Astrolabe подала до суду позов за звинуваченням Олсона і Еггерта в порушенні авторських прав. У зв'язку з цим 6 жовтня Олсон припинив доступ до ftp-серверу бази даних і публікацію списку розсилки[11].

Іменування[ред.ред. код]

Часові зони мають унікальні імена у формі «Район/Розташування» (Area/Location), наприклад «Америка/Нью-Йорк», щоб їх було легше сприймати людям. Обрано англомовні назви або їх еквіваленти, опускається пунктуація і загальні суфікси, пробіл замінюється на підкреслення, використовуються дефіси.

Район включає імена континентів, океанів і «інше» (Etc). У набір континентів і океанів входять: Африка, Америка, Антарктика, Північний Льодовитий океан, Азія, Атлантичний океан, Австралія, Європа, Індійський океан та Тихий океан.

Формати файлів[ред.ред. код]

часові зони Росії в tz database на 2009 рік

tz database публікується як набір текстових файлів зі списком правил і зон переходів в людиночитаємому форматі. Для використання ці текстові файли компілюються в набір незалежних від платформи бінарних файлів для кожної часової зони. Код включає в себе компілятор під назвою zic (zone information compiler), а також код для читання цих файлів і використання їх у стандартних API як localtime() і mktime() .

Управління[ред.ред. код]

Код і база даних управляються групою добровольців. Артур Девід Олсон вносить основні зміни в код, а Пол Еггерт — в базу даних. Запропоновані зміни висилаються в список розсилки, що передає повідомлення в групу Usenet comp.time.tz. Вихідні файли розповсюджуються через FTP-сервер elsie.nci.nih.gov. Зазвичай ці файли приймаються від дистриб'юторів програмного забезпечення, таких як Debian, компілюються, а потім вихідні коди і бінарні файли упаковуються як частина роздачі. Кінцеві користувачі можуть або покладатися на процес оновлення свого програмного забезпечення, або отримати код безпосередньо з джерела на ftp://elsie.nci.nih.gov/pub/.

Використання в інших стандартах[ред.ред. код]

CLDR використовує UN / LOCODE для визначення регіонів[12] . Це означає, що ідентифікатори посилаються на країни, чого творці tz database хотіли уникнути.

Використання в програмному забезпеченні[ред.ред. код]

База даних використовується для обробки часової зони і перетворень в багатьох програмних комплексах, включаючи:

ID бази Олсона також використовуються в Unicode Common Locale Data Repository (CLDR) і International Components for Unicode (ICU). Наприклад, CLDR Windows Tzid table maps Microsoft Windows[19].

Примітки[ред.ред. код]

  1. Mueller, Erik (2009-11-23). «A map of the TZ timezones of the world». Архів оригіналу за 2012-08-02. 
  2. Eggert, Paul; Olson, Arthur David (2007-11-29). link.htm «Sources for time zone and daylight saving time data». Процитовано 2007-12-03. 
  3. Olson, Arthur David (1986-12-16). «Resolved timezone issue? Other issues. New ctime manual page». tz mailing list. 
  4. Eggert, Paul (2005-01). com/ml/time.tz/2005-01/msg00027.html «Re: FW: IANA time zone registration - proposal». tz mailing list. 
  5. Eggert, Paul (1993-10-20). «proposal for time zone names». tz mailing list. 
  6. Olson, Arthur David (1987-03-18). gov / pub / tzarchive.gz «Re: ist of issues». tz mailing list. 
  7. Devine, Bob (1988-06-02). « leap seconds; [0-60] is ok ». tz mailing list. 
  8. Olson, Arthur David (1986-11-24). nih.gov / pub / tzarchive.gz «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)». Процитовано 2007-10-30. 
  11. Olson, Arthur David (2011-10-06). comp.time.tz/4133 «Civil suit; ftp shutdown; mailing list shutdown» (англійською). Процитовано 2011-10-08. 
  12. Unicode Locale Extension ('u') for BCP 47 — CLDR — Unicode Common Locale Data Repository
  13. «Olson time zone support and setup». AIX 7.1 information. IBM. 
  14. «Managing the Time Zone Variable». IBM. 2007-02-02. 
  15. а б «AIX O / S updated to support 2007 Daylight Saving Time change». IBM. 2007-10-18. Архів оригіналу за 2012-08-02. Процитовано 2011-03-12. 
  16. «2007 daylight savings time changes for Unix». Academic Computing and Communications Center, University of Illinois at Chicago. 2007-02-25. Архів оригіналу за 2013-07-15. Процитовано 2008-03 -18. )
  17. Wickremasinghe, Christopher (2009-03-30). «Introduction of daylight saving time in Western Australia 2006». AIX Wiki. IBM. 
  18. # i1006667 Oracle Database Globalization Support Guide 10g Release 1 (10.1): Chapter 4, Section "Choosing a Time Zone File". Oracle Corporation. June 2004. с. 4–14. Part No. B10749-02. Процитовано 2007-10-30. 
  19. «Windows Tzid». Unicode Consortium. 2007-11-12. Архів оригіналу за 2012-08-02. Процитовано 2008-02-17.