datatracker.ietf.org
Sign in
Version 5.3.0, 2014-04-12
Report a bug

Calendaring Extensions to WebDAV (CalDAV)
RFC 4791

Document type: RFC - Proposed Standard (March 2007; Errata)
Was draft-dusseault-caldav (individual in app area)
Document stream: IETF
Last updated: 2013-03-02
Other versions: plain text, pdf, html

IETF State: (None)
Consensus: Unknown
Document shepherd: No shepherd assigned

IESG State: RFC 4791 (Proposed Standard)
Responsible AD: Ted Hardie
Send notices to: lisa@osafoundation.org

Network Working Group                                           C. Daboo
Request for Comments: 4791                                         Apple
Category: Standards Track                                B. Desruisseaux
                                                                  Oracle
                                                            L. Dusseault
                                                             CommerceNet
                                                              March 2007

               Calendaring Extensions to WebDAV (CalDAV)

Status of This Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The IETF Trust (2007).

Abstract

   This document defines extensions to the Web Distributed Authoring and
   Versioning (WebDAV) protocol to specify a standard way of accessing,
   managing, and sharing calendaring and scheduling information based on
   the iCalendar format.  This document defines the "calendar-access"
   feature of CalDAV.

Daboo, et al.               Standards Track                     [Page 1]
RFC 4791                         CalDAV                       March 2007

Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  5
     1.1.  Notational Conventions . . . . . . . . . . . . . . . . . .  5
     1.2.  XML Namespaces and Processing  . . . . . . . . . . . . . .  5
     1.3.  Method Preconditions and Postconditions  . . . . . . . . .  6
   2.  Requirements Overview  . . . . . . . . . . . . . . . . . . . .  6
   3.  Calendaring Data Model . . . . . . . . . . . . . . . . . . . .  7
     3.1.  Calendar Server  . . . . . . . . . . . . . . . . . . . . .  7
     3.2.  Recurrence and the Data Model  . . . . . . . . . . . . . .  8
   4.  Calendar Resources . . . . . . . . . . . . . . . . . . . . . .  9
     4.1.  Calendar Object Resources  . . . . . . . . . . . . . . . .  9
     4.2.  Calendar Collection  . . . . . . . . . . . . . . . . . . . 10
   5.  Calendar Access Feature  . . . . . . . . . . . . . . . . . . . 11
     5.1.  Calendar Access Support  . . . . . . . . . . . . . . . . . 11
       5.1.1.  Example: Using OPTIONS for the Discovery of
               Calendar Access Support  . . . . . . . . . . . . . . . 12
     5.2.  Calendar Collection Properties . . . . . . . . . . . . . . 12
       5.2.1.  CALDAV:calendar-description Property . . . . . . . . . 12
       5.2.2.  CALDAV:calendar-timezone Property  . . . . . . . . . . 13
       5.2.3.  CALDAV:supported-calendar-component-set Property . . . 14
       5.2.4.  CALDAV:supported-calendar-data Property  . . . . . . . 15
       5.2.5.  CALDAV:max-resource-size Property  . . . . . . . . . . 16
       5.2.6.  CALDAV:min-date-time Property  . . . . . . . . . . . . 17
       5.2.7.  CALDAV:max-date-time Property  . . . . . . . . . . . . 18
       5.2.8.  CALDAV:max-instances Property  . . . . . . . . . . . . 19
       5.2.9.  CALDAV:max-attendees-per-instance Property . . . . . . 19
       5.2.10. Additional Precondition for PROPPATCH  . . . . . . . . 20
     5.3.  Creating Resources . . . . . . . . . . . . . . . . . . . . 20
       5.3.1.  MKCALENDAR Method  . . . . . . . . . . . . . . . . . . 20
         5.3.1.1.  Status Codes . . . . . . . . . . . . . . . . . . . 22
         5.3.1.2.  Example: Successful MKCALENDAR Request . . . . . . 23
       5.3.2.  Creating Calendar Object Resources . . . . . . . . . . 25
         5.3.2.1.  Additional Preconditions for PUT, COPY, and
                   MOVE . . . . . . . . . . . . . . . . . . . . . . . 26
       5.3.3.  Non-Standard Components, Properties, and Parameters  . 28
       5.3.4.  Calendar Object Resource Entity Tag  . . . . . . . . . 28
   6.  Calendaring Access Control . . . . . . . . . . . . . . . . . . 29
     6.1.  Calendaring Privilege  . . . . . . . . . . . . . . . . . . 29
       6.1.1.  CALDAV:read-free-busy Privilege  . . . . . . . . . . . 29
     6.2.  Additional Principal Property  . . . . . . . . . . . . . . 30
       6.2.1.  CALDAV:calendar-home-set Property  . . . . . . . . . . 30
   7.  Calendaring Reports  . . . . . . . . . . . . . . . . . . . . . 31
     7.1.  REPORT Method  . . . . . . . . . . . . . . . . . . . . . . 31
     7.2.  Ordinary Collections . . . . . . . . . . . . . . . . . . . 31
     7.3.  Date and Floating Time . . . . . . . . . . . . . . . . . . 32
     7.4.  Time Range Filtering . . . . . . . . . . . . . . . . . . . 32
     7.5.  Searching Text: Collations . . . . . . . . . . . . . . . . 33

Daboo, et al.               Standards Track                     [Page 2]

[include full document text]