[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: Recurring Anniversary Instances?
Dan replied:
>A DATE-TIME value specifies a specific point in time, whereas a DATE value actually can be thought of as specifying a range of time (19990730000000Z to 19990730235959).
Actually, no it cannot. By your statement:
DTSTART;VALUE=DATE:19990730
DTEND;VALUE=DATE:19990802
could be claimed to be "All day 30-Jul-1999 and all day 02-Aug-1999". In fact its all the time between 19990730T00:00:00 and 19990802T235959 (inclusive). A range of time is specified by a PERIOD, not a DATE data type.
Dan's claim is valid IFF there is a DTSTART;VALUE=DATE:19990730 and no DTEND or if there is a DTEND;VALUE=DATE w/the same date value! Otherwise it is inaccurate and misleading.
>Hence, "All-Day".
Backstep a bit on this... The original example from RFC 2446 is simply:
BEGIN:VCALENDAR
PRODID:-//ACME/DesktopCalendar//EN
METHOD:PUBLISH
VERSION:2.0
BEGIN:VEVENT
ORGANIZER:mailto:a@example.com
DTSTAMP:19970614T190000Z
UID:0981234-1234234-23@example.com
DTSTART;VALUE=DATE:19970714
RRULE:FREQ=YEARLY;INTERVAL=1
SUMMARY: Bastille Day
END:VEVENT
END:VCALENDAR
so it is relying on the omission of DTEND to make this "all day". (See previously quoted snippet from RFC 2445 on this.) That is not the same as specifying a DTSTART;VALUE=PERIOD:... (which happens to be illegal to do!!!!!) The start time is implied (so far, noone has disagreed) to be T000000 on the given date. There is NO implied end time; its simply a single starting point in time. The end time is inferred by the text originally quoted from RFC 2445 about defaulting values in this particular case; but it is not true for all cases.
Bruce
===========================================================================
Bruce Kahn INet: Bruce_Kahn@iris.com
Iris Associates Phone: 978.392.5335
Westford, MA, USA 01886 FAX: and nothing but the FAX...
Standard disclaimers apply, even where prohibited by law...