On 25/05/12 00:27, Tobias Conradi wrote:
I am here to improve usability of the IANA time zone database.
Other people already invent new names because in their systems the IANA time zone names are not sufficient.
E.g. CLDR has created UN/LOCODE based codes: http://cldr.unicode.org/development/development-process/design-proposals/bcp...
Some of these insufficiencies can be easily removed.
http://www.w3.org/TR/2008/REC-CSS2-20080411/syndata.html#q4 says "In CSS2, identifiers (including element names, classes, and IDs in selectors) can contain only the characters [A-Za-z0-9] and ISO 10646 characters 161 and higher, plus the hyphen (-); they cannot start with a hyphen or a digit. They can also contain escaped characters and any ISO 10646 character as a numeric code (see next item). For instance, the identifier "B&W?" may be written as "B\&W\?" or "B\26 W\3F"."
To have / or \ in zone names needs escaping in CSS2 according to the above, if one wants to use the names for classes or ids in CSS.
I don't know why you'd want to convert timezone IDs to CSS2 IDs, but surely you'd have to escape the underscores as well.
By using only [A-Za-z0-9] in name components and "/" as component separator, the IANA time zone database would allow easy transformation from IANA time zone names into class names or ids and backward.
A time-zone name would map to an instance of a time-zone class, not to a class itself, although you may want to map a time-zone name to a variable name or some other identifier such as an enumerated constant. Different systems have different restrictions, but you can always define an escape mechanism to perform a two-way mapping between the system's ID naming rules and tzdata time-zone names. Or you could use the time-zone name as a string-type look-up key into a database, which is effectively what tzcode does already. -- -=( Ian Abbott @ MEV Ltd. E-mail: <abbotti@mev.co.uk> )=- -=( Tel: +44 (0)161 477 1898 FAX: +44 (0)161 718 3587 )=-