On Wed, 22 May 2013, Robert Elz wrote:
For zone.tab (assuming that the other solution, of simply moving it, and tzselect, to some other project isn't adopted) rather than making column 1 be a comment, define it to be a region, expressly not a country, and explicitly not using (however similar they may seem) ISO3166 2 letter identifiers. Instead define it as simply being a tz project specific identifier used to group related zones that apply within some tzdata defined region together.
When I started implementing support for limiting the list of returned identifiers in PHP, mostly for UI reasons, I found that I could restrict on region. A region f.e. being "America/" or "Europe/" or "Pacific/". Because that list is still way too big for people to choose from, I further restricted that on country code because the tz project conveniently provided that. Going with Paul's suggestion and removing the country codes, this is going to be broken.
Of course, in practice, most of the time we'll keep using identifiers, that, by pure accident of course, happen to be the same as the 3166 2 letter identifier for the country that has rather similar boundaries to our region, without ever, of course, implying they are the same, and without ever claimimng that some city belongs to a particular country - that is none of our business, nor do we care one way or the other.
Right, but you will have to document them, and from a user perspective, if you're going to use some self-defined codes, then you need to document as to what they mean... which is not much difference from using the codes we use now. I'm also not happy about the instability of the tz project. It used to be for years stable. Stable IDs and a stable API. I realize there are sometimes difficult (political) issues to be debated, but *please* don't over react by just ripping things out. cheers, Derick