[Ietf-calsify] DTEND for day events

Reinhold Kainhofer reinhold at kainhofer.com
Fri Sep 2 04:03:11 PDT 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am Donnerstag, 1. September 2005 23:28 schrieb Jeffrey Harris:
> > Then please see the following mail by Frank Dawson, who is one of the
> > original authors of rfc 2445:
> > http://www.imc.org/ietf-calendar/archive1/msg03648.html
> >
> > In particular:
> > 'We explicitly got feedback to add the "non-inclusive" term. It means up
> > to "T235959".'
>
> Wow.  You're right, it looks like their intention was for non-inclusive
> to mean not including the last minute of but including the rest of the
> day.  That's sure not the way I read that language, so lets come up with
> better language for 2445bis as Lisa suggests.

But there are other places in rfc 2445 which suggest that the DTEND is the 
last date of the event:

Sec 4.6.1: "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)."

In particular that last sentence says that it's a multi-day event if DTEND is 
not eqal to DTSTART, so your example from below is a two-day event.


Sec 4.6.1: "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.

This last sentence is a strong indication that "non-inclusive" was intended to 
be understood the way Frank explained.

> It seems to me that there's lots of iCal data out there with the
> "doesn't include the whole day" interpretation, I suspect Outlook does
> the same thing.  So I'd suggest we change the language in 2445bis to say
> something like:
>
> "When a DATE value is used for DTEND no time during the given day is
> included in the component, so
>
> DTSTART;VALUE=DATE:20050101
> DTEND;VALUE=DATE:20050102
>
> represents a 24 hour period."

The problem then is that DTEND and DURATION are not required. If you have only 
a DTSTART, e.g. 

DTSTART;VALUE=DATE:20050101

the above quote says that this is equivalent to

DTSTART;VALUE=DATE:20050101
DTEND;VALUE=DATE:20050101

How would you have to understand this? And what would be the difference to


DTSTART;VALUE=DATE:20050101
DTEND;VALUE=DATE:20050102


Cheers,
Reinhold


- -- 
- ------------------------------------------------------------------
Reinhold Kainhofer, Vienna, Austria
email: reinhold at kainhofer.com, http://reinhold.kainhofer.com/
 * Financial and Actuarial Mathematics, TU Wien, http://www.fam.tuwien.ac.at
 * K Desktop Environment, http://www.kde.org/, KOrganizer maintainer
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFDGDF0TqjEwhXvPN0RAlNjAJ4j9P6BfymtiDGKgn0s9L5isHG87ACfXhLZ
BoMWlrsA2S0bytoyPTSNPPw=
=dYXs
-----END PGP SIGNATURE-----


More information about the Ietf-calsify mailing list