Recurring events in CalDAV

| | Comments (0)

At last week's calendaring BOF at Etech, folks asked how CalDAV treats recurring events. I had to embarrassingly admit that I didn't know the answer. Just because I'm evangelizing calendaring interoperability doesn't mean I've actually read the spec! (he says sheepishly).

So for those who want to know, from the latest draft of the CalDAV spec - the answer is that recurring events are treated as a single object in CalDAV:

 Recurrence is an important part of the data model because it governs
   how many resources are expected to exist.  This specification models
   a recurring calendar component and its recurrence exceptions as a
   single resource.  In this model, recurrence rules, recurrence dates,
   exception rules, and exception dates are all part of the data in a
   single calendar object resource.  This model avoids problems of
   limiting how many recurrence instances to store in the repository,
   how to keep recurrence instances in sync with the recurring calendar
   component, and how to link recurrence exceptions with the recurring
   calendar component.  It also results in less data to synchronize
   between client and server, and makes it easier to make changes to all
   recurrence instances or to a recurrence rule.  It makes it easier to
   create a recurring calendar component, and easier to delete all
   recurrence instances.

Clients are not forced to retrieve information about all recurrence
instances of a recurring component. The CALDAV:calendar-query and
CALDAV:calendar-multiget REPORTs defined in this document allow
clients to retrieve only recurrence instances that overlap a given
time range.

Technorati Tags: ,

Leave a comment

About this Entry

This page contains a single entry by Oren Sreebny published on March 15, 2006 1:08 PM.

Dave Winer, RSS 2.0 and Atom and my notes from Tim Bray's Etech talk was the previous entry in this blog.

Susan Crawford on network (substrate) neutrality is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.

About Me
Powered by Movable Type 4.01