Tz database
Time Zone Database において「タイムゾーン」("time zone")とは、1970年以来ずっと地域内の全ての時計が合っているような、国における地域のことである。この定義は、一貫した地方時を持つ地理的地域とまず最初に関係がある。これはグリニッジ子午線からの一貫した差分と関係がある他の定義とは異なる。それゆえ、Time Zone Databaseにより定義された各タイムゾーンは、場合によってはUTCからの時間の差分(協定世界時との差)を複数持つ。典型的には、標準時と夏時間双方が同一のタイムゾーンに含まれる。
Time Zone Database はテキストファイルとして公開される。そのファイルは、人が可読な形式であり、ルールとタイムゾーンの遷移情報が一覧化されている。
利用に当たっては、プラットフォーム独立なバイナリファイルにコンパイルされる。バイナリファイルはタイムゾーン毎に1つずつ生成される。参照用ソースコードにはzic(zone information compiler)と呼ばれるコンパイラが付属しており、同時に、関数localtime()や mktime()といった標準的なAPIを利用してコンパイル済みデータを読み込んだり、利用することができるコードも付属している。これらタイムゾーンの標準的なAPIは標準Cライブラリをはじめとして多くのライブラリに採用されている。とりわけ標準CライブラリはTime Zone Databaseの標準時データをテキスト生データからタイムゾーンコンパイラでコンパイルしてからデータをロードする。
1970年より以前のデータに関しては、地域のタイムゾーンを同定する都市名を修正するよう注意を払っている。しかし、必ずしも地域全体でそのような修正が必要とは限らない。なぜなら1970年時点からの標準時を区別する場合にのみ、新しい地域が作成されるからである。
例えば、1963年10月23日から1963年12月9日までブラジル、ミナスジェライス州、エスピリトサント州、リオデジャネイロ州、サンパウロ州は夏時間制度を採用していた。しかし、1970年からの標準時はこの地域全体では同一であったため、タイムゾーンAmerica/Sao_Paulo(英語版)を分割する要求は却下された。
ドイツ時間の例では、トライゾーン内でベルリンと異なる夏時間を採用していた1945年に関しては、タイムゾーンEurope/Berlin(英語版)は正しい時刻を示していないとされる。
Java Runtime Environment。2002年の1.4リリースより利用している。
Perlモジュールである、DateTime::TimeZone、DateTime::LeapSecondが2003年より利用している。
PHPは2005年の5.1.0リリースより採用している。
Pythonは dateutil や pytz などのパッケージ。
.NET Frameworkは、Windows 以外では IANA の Time Zone Database が使われている。Windows では TimeZoneConverter や zoneinfoなどのライブラリ。
Embarcadero Delphi用モジュールのdelphi-tzdb。
2011年9月30日、本データベースの著作権侵害を巡ってアストロレーブがオルソンおよびエッガードの2名を提訴した(「アストロレーブ・インコーポレイティッド対オルソン他事件」 Astrolabe, Inc. v. Olson et al.)。その結果、2011年10月6日(UTC)、tz databaseの維持管理並びに頒布の停止がオルソンより発表された。同時にメーリングリストの閉鎖も発表され、最新のアーカイブが配置されていたNIH内のFTPサイトの運営は停止した。オルソンのメールによると、「今回の閉鎖はtz databaseに関連する民事訴訟が同年9月30日に提起され」訴訟係属("pending legal case")にある為と述べている。一方アメリカ合衆国マサチューセッツ地区連邦地方裁判所(英語版)に提出された申立訴状("complaint text")によると、原告は"ACS Atlas"のデータを自社ソフトウェアに利用する企業、アストロレーブ("Astrolabe")であり、「tz databaseがアストロレーブが持つ著作権を侵害した」と主張している。
Oracle Database。2004年の10gリリースから採用している。
PostgreSQL。2005年のリリース8.0から採用している。
ファームウェア内で利用するIP clocks、その他組み込みソフトウェア。
その他、Olson timezone IDというものがユニコードコンソーシアムのCLDR並びにICUで利用されている。例えば、「CLDR Windows → Tzid」テーブルは、Microsoft Windows time zone IDsから標準的Olson名へのマッピングを行う。