[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: DATE values question
I will add this to
the next version of the Issues lists for iCalendar, iTIP, and
iMIP
1 - examples of
correct usage of DATE value type in VEVENT objects
2 - examples and
explanation of "valid" and "invalid/illegal" DTEND forms for DATA value
types
3 - examples of
above situations if applicable to iMIP and iTIP
4 - Perhaps a
general case of "What is done with inconsistent/invalid/illegal
properties?" is also in order?
Shannon
Damon wrote
on 10/28/2001 08:58:21 PM:
> If I have a VEVENT like this:
>
> DTSTART;VALUE=DATE:20010910
> DTEND;VALUE=DATE:20011310
>
> (i.e. from 9th Oct to 13th Oct)
Umm, I think you meant to say 20011009 and 20011013, respectively...
:^)
> Does it:
>
> a) include the 13th October entirely, up to
midnight.
> or b) stop at 12am on 13th.
We never resolved this thread I dont think when we
covered it back in 1999 (yep, that far back). Look for the thread titled
"Recurring Anniversary Instances?" and then perhaps we can come to a final
resolution of this issue. However in the interest of time Ill forge
ahead and rehash a bit and put my stick in the ground as to what I think the
answer is.
Some relevant RFC
citations for those who want a jumpstart, RFC 2445, p 53:
The "VEVENT" is also the calendar component used to
specify an
anniversary or daily reminder within a calendar. These
events have a
DATE value type for the "DTSTART" property instead of
the default
data type of DATE-TIME. If such a "VEVENT" has a "DTEND"
property, it
MUST be specified as a DATE value also. The anniversary
type of
"VEVENT" can span more than one date (i.e, "DTEND" property
value is
set to a calendar date after the "DTSTART" property
value).
The "DTSTART"
property for a "VEVENT" specifies the inclusive start
of the event.
For recurring events, it also specifies the very first
instance in
the recurrence set. The "DTEND" property for a "VEVENT"
calendar
component specifies the non-inclusive end of the event. For
cases
where a "VEVENT" calendar component specifies a "DTSTART"
property
with a DATE data type but no "DTEND" property, the events
non-inclusive end is the end of the calendar date specified by the
"DTSTART" property.
Part of
the original discussion was about DATE & DATE-TIME equivalents but I think
the last line of the 1st paragraph will help us make a decision thats
consistant one way or another. One would logically infer from the text
above that since:
DTSTART;VALUE=DATE:20011009
alone is an "all day" (09-Oct-2001) event and that:
DTSTART;VALUE=DATE:20011009
DTEND;VALUE=DATE:20011010
would be a "two day" (09-Oct-2001 & 10-Oct-2001)
event. However some have argued that the 2 day example is wrong and
should be:
DTSTART;VALUE=DATE:20011009
DTEND;VALUE=DATE:20011011
since the time defaulted should be
00:00:00. Also, we never did resolve the case of what
does/should:
DTSTART;VALUE=DATE:20011009
DTEND;VALUE=DATE:20011009
mean. Technially DTEND is not
"after" DTSTART so some think this is 'illegal'. Others claim that DTEND
is after DTSTART since they view the time for DTSTART as being 00:00:00
(Local) and the time of DTEND as being 23:59:59 (Local).
The citation appears to bear out this
argument but it should be noted that A) the text never says the DTEND is "1
day after" the DTSTART, it simply says "is set to a calendar date after
the "DTSTART"" and B) while this "ends are relative to the end of the day"
argument sounds normal it is by no means consistant with regard to defaulting
times.
Unfortunately we have no
good iTIP/iMIP examples to use to resolve this but my take on this
issues remains that the time always defaults to 00:00:00 (so the DATE
value must be selected accordingly). To directly answer your (corrected)
question, I would claim that 13-Oct-2001 is not included as part of the
event; the event ends (non-inclusively) at 20011013T000000.
Now where did I put those asbestos
gloves???
Bruce
===========================================================================
Bruce
Kahn
INet: Bruce_Kahn@xxxxxxxx
Iris
Associates
Phone: 978.392.5335
Westford, MA, USA 01886
FAX: and
nothing but the FAX...
Standard disclaimers apply, even where prohibited by
law...