iCalendar Transport-Independent Interoperability Protocol (iTIP) Scheduling Events, BusyTime, To-dos and Journal Entries
RFC 2446

Document Type RFC - Proposed Standard (November 1998; Errata)
Obsoleted by RFC 5546
Last updated 2013-03-02
Stream IETF
Formats plain text pdf htmlized with errata bibtex
Stream WG state (None)
Document shepherd No shepherd assigned
IESG IESG state RFC 2446 (Proposed Standard)
Consensus Boilerplate Unknown
Telechat date
Responsible AD (None)
Send notices to (None)
Network Working Group                                     S. Silverberg
Request for Comments: 2446                                    Microsoft
Category: Standards Track                                    S. Mansour
                                                               Netscape
                                                              F. Dawson
                                                                  Lotus
                                                              R. Hopson
                                                        ON Technologies
                                                          November 1998

       iCalendar Transport-Independent Interoperability Protocol
                                 (iTIP)
        Scheduling Events, BusyTime, To-dos and Journal Entries

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 Internet Society (1998).  All Rights Reserved.

Abstract

   This document specifies how calendaring systems use iCalendar objects
   to interoperate with other calendar systems. It does so in a general
   way so as to allow multiple methods of communication between systems.
   Subsequent documents specify interoperable methods of communications
   between systems that use this protocol.

   The document outlines a model for calendar exchange that defines both
   static and dynamic event, to-do, journal and free/busy objects.
   Static objects are used to transmit information from one entity to
   another without the expectation of continuity or referential
   integrity with the original item. Dynamic objects are a superset of
   static objects and will gracefully degrade to their static
   counterparts for clients that only support static objects.

   This document specifies an Internet protocol based on the iCalendar
   object specification that provides scheduling interoperability
   between different calendar systems. The Internet protocol is called
   the "iCalendar Transport-Independent Interoperability Protocol
   (iTIP)".

Silverberg, et. al.         Standards Track                     [Page 1]
RFC 2446                          iTIP                     November 1998

   iTIP complements the iCalendar object specification by adding
   semantics for group scheduling methods commonly available in current
   calendar systems. These scheduling methods permit two or more
   calendar systems to perform transactions such as publish, schedule,
   reschedule, respond to scheduling requests, negotiation of changes or
   cancel iCalendar-based calendar components.

   iTIP is defined independent of the particular transport used to
   transmit the scheduling information. Companion memos to iTIP provide
   bindings of the interoperability protocol to a number of Internet
   protocols.

Table of Contents

   1 INTRODUCTION...................................................5
    1.1 FORMATTING CONVENTIONS .....................................5
    1.2 RELATED DOCUMENTS ..........................................6
    1.3 ITIP ROLES AND TRANSACTIONS ................................6
   2 INTEROPERABILITY MODELS........................................8
    2.1 APPLICATION PROTOCOL .......................................9
      2.1.1 Calendar Entry State ...................................9
      2.1.2 Delegation .............................................9
      2.1.3 Acting on Behalf of other Calendar Users ..............10
      2.1.4 Component Revisions ...................................10
      2.1.5 Message Sequencing ....................................11
   3 APPLICATION PROTOCOL ELEMENTS.................................12
    3.1 COMMON COMPONENT RESTRICTION TABLES .......................13
    3.2 METHODS FOR VEVENT CALENDAR COMPONENTS ....................14
      3.2.1 PUBLISH ...............................................15
      3.2.2 REQUEST ...............................................17
        3.2.2.1 Rescheduling an Event..............................19
        3.2.2.2 Updating or Reconfirmation of an Event.............19
        3.2.2.3 Delegating an Event to another CU..................19
        3.2.2.4 Changing the Organizer.............................20
        3.2.2.5 Sending on Behalf of the Organizer.................20
        3.2.2.6 Forwarding to An Uninvited CU......................20
        3.2.2.7 Updating Attendee Status...........................21
      3.2.3 REPLY .................................................21
      3.2.4 ADD ...................................................23
      3.2.5 CANCEL ................................................25
      3.2.6 REFRESH ...............................................26
Show full document text