Some questions about the database format

yoshito_umaoka at us.ibm.com yoshito_umaoka at us.ibm.com
Tue Jun 29 14:11:42 UTC 2010


Yves Goergen <nospam.list at unclassified.de> wrote on 06/29/2010 09:27:01 
AM:

> Hi,
> 
> I intend to use the tz database in my C# calendar application. Since I
> need a decent time zone support, I was pointed to this database from the
> MSDN forums. I now have a few questions regarding the file format of the
> text files.
> 
> A day specification of "Sun>=1" or "Sun>=8" should be clear, I interpret
> this as the first/second Sunday in a month. But what weekday and week is
> "Sun>=25" or "Sun>=2"?
> 
> How is the Zone field "[UNTIL]" to be understood exactly? Is it 
including
> or excluding the given time? What does "1990" mean, is it until and
> inclusive the whole year 1990, ie /1990-12-31T23:59:59 or is it 
something
> around 1990-01-01?
> 
> What does the time specification "2:00s" mean? I've seen it several 
times
> but couldn't make any sense of it.

These are well defined in the man page of zic.
Download tzcodeC.tar.gz (C is a version such as 2010j) from 
ftp://elsie.nci.nih.gov/pub/ and read docs included in the distribution.

> 
> Are all rules in the text files sorted ascending by time ("FROM" year)?
> That would simplify the processing because in order to convert them into
> .NET framework structures I need pairs of DST start and end rules 
together
> for a range of years, and thus need to resolve the overlapping rule
> definitions.
> 

Strictly speaking, you cannot expect DST start and end are always paired 
within a single year. Also, some rules used by the tzdatabasemight not be 
directly mapped to Windows/.NET style rule. I'm working for ICU project (
http://icu-project.org/) and implemented a time zone API which extracts 
DST start/end rules around the given time in Windows/iCalendar style rule 
format:

C++ 
http://icu-project.org/apiref/icu4c/classBasicTimeZone.html#8ec554fc7301450deeb584a782469f54
Java 
http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/BasicTimeZone.html#getSimpleTimeZoneRulesNear%28long%29

-Yoshito



More information about the tz mailing list