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

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

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

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

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

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

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

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

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

  1. Mueller, Erik (23 листопада 2009). A map of the TZ timezones of the world. Архів оригіналу за 1 серпня 2012. Процитовано 9 жовтня 2011. 
  2. Eggert, Paul; Olson, Arthur David (29 листопада 2007). link.htm Sources for time zone and daylight saving time data. Процитовано 3 грудня 2007. [недоступне посилання з червня 2019]
  3. Olson, Arthur David (16 грудня 1986). Resolved timezone issue? Other issues. New ctime manual page. tz mailing list. [недоступне посилання з лютого 2019]
  4. Eggert, Paul (2005-01). com/ml/time.tz/2005-01/msg00027.html Re: FW: IANA time zone registration - proposal. tz mailing list. [недоступне посилання з червня 2019]
  5. Eggert, Paul (20 жовтня 1993). proposal for time zone names. tz mailing list. [недоступне посилання з лютого 2019]
  6. Olson, Arthur David (18 березня 1987). gov / pub / tzarchive.gz Re: ist of issues. tz mailing list. [недоступне посилання з червня 2019]
  7. Devine, Bob (2 червня 1988). leap seconds; [0-60] is ok . tz mailing list. [недоступне посилання з лютого 2019]
  8. Olson, Arthur David (24 листопада 1986). nih.gov / pub / tzarchive.gz seismo! elsie! tz; new versions of time zone stuff. tz mailing list. [недоступне посилання з червня 2019]
  9. Eggert, Paul (11 листопада 1995). questions and comments on http://tycho.usno.navy.mil/tzones.html . tz mailing list. [недоступне посилання з лютого 2019]
  10. zoneinfo tzcode and tzdata archives (FTP). Процитовано 30 жовтня 2007. 
  11. Olson, Arthur David (6 жовтня 2011). comp.time.tz/4133 Civil suit; ftp shutdown; mailing list shutdown (англійською). Процитовано 8 жовтня 2011. [недоступне посилання з червня 2019]
  12. Unicode Locale Extension ('u') for BCP 47 — CLDR — Unicode Common Locale Data Repository. Архів оригіналу за 28 липня 2011. Процитовано 9 жовтня 2011. 
  13. Olson time zone support and setup. AIX 7.1 information. IBM. 
  14. Managing the Time Zone Variable. IBM. 2 лютого 2007. 
  15. а б AIX O / S updated to support 2007 Daylight Saving Time change. IBM. 18 жовтня 2007. Архів оригіналу за 1 серпня 2012. Процитовано 12 березня 2011. 
  16. 2007 daylight savings time changes for Unix. Academic Computing and Communications Center, University of Illinois at Chicago. 25 лютого 2007. Архів оригіналу за 15 липня 2013. Процитовано 2008-03 -18. )
  17. Wickremasinghe, Christopher (30 березня 2009). Introduction of daylight saving time in Western Australia 2006. AIX Wiki. IBM. 
  18. 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. Архів # i1006667 оригіналу за 1 грудня 2008. Процитовано 30 жовтня 2007. 
  19. Windows Tzid. Unicode Consortium. 12 листопада 2007. Архів оригіналу за 1 серпня 2012. Процитовано 17 лютого 2008.