Subject: Re: VTIMEZONE and signular TZID

From: [email-masked]
Date: Thu, 20 Apr 2000 12:30:58 -0400

>So how do we specify that XX == YY and only the name has changed?
>Using VTIMEZONE restrictions as defined by the IETF docs?

So...Here is a proposal. IANA (or the IETF designated facilitator for this 
registration) allocates the registered TZID names. As the registrar of the 
standard VTIMEZONE definitions, this is a reasonable restriction. However, 
for a given time zone definition, you can have multiple TZNAME property 
values. This is allowed by iCalendar.
A registration for a VTIMEZONE registrar form would not include the TZID, 
as this is returned after successful completion of the registration 
process. 
To know that XX is the same as YY, you would get a time zone definition 
and find that both TZNAME=XX and TZNAME=YY are specified for TZID=<only 
IANA will specify this value>.
Sound okay? I think that this would solve your problem.
NET-net: Only the IANA defines the TZIDs. This allows some level of 
assurance that duplicate TZID values for the same time zone definition 
(TZNAME aside) are avoided. TZNAMEs are specified by the individual making 
the registration. Multiple TZNAME values for a given time zone definition 
are allowed and welcomed.
-- Frank

---

From: John Stracke <[email-masked]>
Date: Thu, 20 Apr 2000 13:56:06 -0400

[email-masked] wrote:

> NET-net: Only the IANA defines the TZIDs. This allows some
> level of assurance that duplicate TZID values for the same time
> zone definition (TZNAME aside) are avoided. TZNAMEs are
> specified by the individual making the registration. Multiple
> TZNAME values for a given time zone definition are allowed and
> welcomed.

This sounds good to me.  One clarification: would TZNAME values
be unique? (That is, is it guaranteed that you don't have two
TZNAMEs that map to the same TZID?) I think they need to be.

--
/================================================================\
|John Stracke    | http://www.ecal.com |My opinions are my own.  |
|Chief Scientist |===============================================|
|eCal Corp.      |A ship is safe in a harbor, but that's not what|
[email-masked]|a ship is for.                                 |
\================================================================/

---

From: Doug Royer <[email-masked]>
Date: Thu, 20 Apr 2000 10:48:57 -0700

> TZNAMEs that map to the same TZID?) I think they need to be.

TZNAMEs are unique ONLY within a VTIMEZONE. They were never meant
to be unique across VTIMEZONEs. 

Because of existing software and user expectations;
I think that we need a TZALIAS for ALL the Olson names plus
any other common names. Then let the IANA registrar pick (with
recommendations) the official TZID name.

In the future you should be able to query for a 'string'.
Then a future server could give you all VTIMEZONEs where
'string' was in TZID, TZALIAS, or TZNAME. Or you could
refine your search to a subset. Then the client + user could
select which one they wanted.

TZID - The Unique name for a timezone definition.

       Currently they are only unique within a VCALENDAR object when
       they do not start with tzidprefix. When they are prefixed with
       tzidprefix, then they are unique in IANA and across all
       VTIMEZONE definitions.

       We would be keeping the same definition and expectation 
       for TZID.

       Currently NONE are registered (none should start with tzidprefix).
       I am working on the registration process now.

TZNAME - Unique within a *single* VTIMEZONE (but not across VTIMEZONEs)
        that specifies which formatted name to use. (PDT, EST, CEST, ...). 	
There could be multiple standardc or daylightc with the same
        TZNAME in one VTIMEZONE. They can only specify different
	recurrence rules for the same TZNAME. For example; one valid
	for 1900-1930, another with the same TZNAME valid for 1931-future).
	
	This is the current definition and expectation in iCalendar.

TZALIAS - Names that GUI's, OS's, or people tend to use. (US/Pacific,
	  PDT8PST, America/Los_Angles, GMT+8, ...). This is
	  a user friendly string that is unique across all VTIMEZONEs.

	If we agree. Then I'll submit an IANA extension to iCalendar
	for a TZALIAS that will exist only at the VTIMEZONE scope.

	Possible new proposed ABNF for VTIMEZONE might be
	(comments removed - see RFC2445 section 4.6.5):

	     timezonec  = "BEGIN" ":" "VTIMEZONE" CRLF

                  2*(   tzid / tzalias / last-mod / tzurl /
	                standardc / daylightc /
	                x-prop  )

                  "END" ":" "VTIMEZONE" CRLF

	     standardc  = "BEGIN" ":" "STANDARD" CRLF

                  tzprop

                  "END" ":" "STANDARD" CRLF
	
	     daylightc  = "BEGIN" ":" "DAYLIGHT" CRLF

                  tzprop

                  "END" ":" "DAYLIGHT" CRLF

	     tzprop     = 3*(dtstart / tzoffsetto / tzoffsetfrom /
	                     comment / rdate / rrule / tzname / x-prop)   

	TZNAME remains inside of tzprop (same as RFC2445). TZID is the
	same as it was in RFC2445, (above) TZALIAS added.

Thanks Frank for you help!

-Doug

---

From: John Stracke <[email-masked]>
Date: Thu, 20 Apr 2000 15:35:33 -0400

> select which one they wanted.

Or you could do an exact-match search for TZID or TZALIAS (the client might be
a robot, with no user to exercise judgment; and the timezone server can serve
an exact match more efficiently than a substring query).

> TZALIAS - Names that GUI's, OS's, or people tend to use.

Can we specify that the TZID and TZALIAS namespaces must not overlap? (A
program that looks at the OS's timezone setting would like to be able to use
that timezone name to look up the VTIMEZONE without knowing whether it's
supposed to look up a TZID or a TZALIAS.) If so, this sounds great to me.

--
/=================================================================\
|John Stracke    | http://www.ecal.com |My opinions are my own.   |
|Chief Scientist |================================================|
|eCal Corp.      |The Net regards censorship as damage, and routes|
[email-masked]|around it. -- John Gilmore                      |
\=================================================================/

---

From: Doug Royer <[email-masked]>
Date: Thu, 20 Apr 2000 12:48:40 -0700

John Stracke wrote:
> Or you could do an exact-match search for TZID or TZALIAS (the
> client might be a robot, with no user to exercise judgment; and
> the timezone server can serve an exact match more efficiently than
> a substring query).

I never said a substring query. I meant subset of the list.

> Can we specify that the TZID and TZALIAS namespaces must not overlap?

Sounds good.

	A registered TZID MUST start with tzidprefix.
	A TZALIAS MUST NEVER start with a tzidprefix.

Should solve the problem.

> (A

Exactly my thoughts!

-Doug

---

From: John Stracke <[email-masked]>
Date: Fri, 21 Apr 2000 10:53:04 -0400

> I never said a substring query. I meant subset of the list.

Ah--I misunderstood what you meant by "where 'string' was in".

>         A TZALIAS MUST NEVER start with a tzidprefix.

But then a given ID can't transition from one to the other (as in my Pennsylvania
example).  I was thinking of doing it by IANA management: they would maintain a
single list of IDs; the entry for each would be either a VTIMEZONE or a TZID.

--
/================================================================\
|John Stracke    | http://www.ecal.com |My opinions are my own.  |
|Chief Scientist |===============================================|
|eCal Corp.      |For an engineer, paranoia is not an affliction;|
[email-masked]|it's a tool.                                   |
\================================================================/

---

From: Doug Royer <[email-masked]>
Date: Fri, 21 Apr 2000 08:54:20 -0700

John Stracke wrote:
> But then a given ID can't transition from one to the other (as in
> my Pennsylvania example).  I was thinking of doing it by IANA management:
> they would maintain a single list of IDs; the entry for each would be
> either a VTIMEZONE or a TZID.

Not sure what you mean. Did you mean a TZALIAS or TZNAME when
you said 'VTIMEZONE'?

-Doug

---

From: John Stracke <[email-masked]>
Date: Fri, 21 Apr 2000 13:29:51 -0400

Doug Royer wrote:

> > I was thinking of doing it by IANA management:

No, I meant VTIMEZONE.  Some entries would be the actual data (i.e.,
VTIMEZONEs); others would be pointers to entries containing actual data (i.e.,
TZIDs).

Just a clarification; as Frank has pointed out, we don't need to do it that
way for the transition to work.

--
/==============================================================\
|John Stracke    | http://www.ecal.com |My opinions are my own.|
|Chief Scientist |=============================================|
|eCal Corp.      |A mime is a wonderful thing to waste.        |
[email-masked]|                                             |
\==============================================================/