Re: [caldav] All Day Events

Cyrus Daboo <cyrus@daboo.name> Wed, 09 March 2011 02:30 UTC

Return-Path: <cyrus@daboo.name>
X-Original-To: caldav@core3.amsl.com
Delivered-To: caldav@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 6A70D3A6816 for <caldav@core3.amsl.com>; Tue, 8 Mar 2011 18:30:17 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.263
X-Spam-Level:
X-Spam-Status: No, score=-102.263 tagged_above=-999 required=5 tests=[AWL=0.336, BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id AAfFlHw3nSin for <caldav@core3.amsl.com>; Tue, 8 Mar 2011 18:30:16 -0800 (PST)
Received: from daboo.name (daboo.name [151.201.22.177]) by core3.amsl.com (Postfix) with ESMTP id 7C8823A6813 for <caldav@ietf.org>; Tue, 8 Mar 2011 18:30:16 -0800 (PST)
Received: from localhost (localhost [127.0.0.1]) by daboo.name (Postfix) with ESMTP id E14C11C094176; Tue, 8 Mar 2011 21:31:31 -0500 (EST)
X-Virus-Scanned: amavisd-new at daboo.name
Received: from daboo.name ([127.0.0.1]) by localhost (chewy.mulberrymail.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gpixEU5oiprL; Tue, 8 Mar 2011 21:31:31 -0500 (EST)
Received: from [10.0.1.7] (unknown [151.201.22.177]) by daboo.name (Postfix) with ESMTPSA id 1AD7E1C09416B; Tue, 8 Mar 2011 21:31:30 -0500 (EST)
Date: Tue, 08 Mar 2011 21:31:34 -0500
From: Cyrus Daboo <cyrus@daboo.name>
To: Michael Rasmussen <mir@datanom.net>, caldav@ietf.org
Message-ID: <E764F25BA24726926F7DB528@cyrus.local>
In-Reply-To: <20110309032145.0988bf9a@sleipner.datanom.net>
References: <20110309032145.0988bf9a@sleipner.datanom.net>
X-Mailer: Mulberry/4.1.0a1 (Mac OS X)
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"; format="flowed"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; size="1070"
Subject: Re: [caldav] All Day Events
X-BeenThere: caldav@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: <caldav.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/caldav>, <mailto:caldav-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/caldav>
List-Post: <mailto:caldav@ietf.org>
List-Help: <mailto:caldav-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/caldav>, <mailto:caldav-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 09 Mar 2011 02:30:17 -0000

Hi Michael,

--On March 9, 2011 3:21:45 AM +0100 Michael Rasmussen <mir@datanom.net> 
wrote:

> The current situation seems to be split between two idioms. An all-day
> event of 2011-03-03 is expressed in either of these two ways:
> 1)
> DTSTART;VALUE=DATE:20110303
> DTEND;VALUE=DATE:20110303
> 2)
> DTSTART;VALUE=DATE:20110303
> DTEND;VALUE=DATE:20110304
>
> Personally I tend to vote for option 1) since option 2) clashes with
> the possibility of specifying a two day event.

The behavior specified by iCalendar is that the DTSTART is "inclusive" and 
the DTEND is "exclusive". What that means is an event ends at the very 
instant before the DTEND value. So strictly speaking your #1 example is 
wrong as it specifies an event of zero duration (it ends at the very 
instant that it starts). #2 is valid. There is a third option which is to 
just specify the DTSTART value as iCalendar states that the default 
duration in that case is one day. The fourth option is to use DTSTART and 
DURATION which is arguably the least confusing representation.

-- 
Cyrus Daboo