Network Working Group                                  F. Dawson, Lotus
INTERNET-DRAFT                               R. Hopson, ON Technologies
<ietf-calsch-itip-part3-00.txt>                    S. Mansour, Netscape
Expires in six months from July 18, 1997       S. Silverberg, Microsoft


       iCalendar Transport-Independent Interoperability Protocol
             (iTIP) Part Three - Scheduling Journal Entries

Status of this Memo


   This document is an Internet-Draft. Internet-Drafts are working
   documents of the Internet Engineering Task Force (IETF), its areas,
   and its working groups. Note that other groups may also distribute
   working documents as Internet-Drafts.

   Internet-Drafts are draft documents valid for a maximum of six
   months. Internet-Drafts may be updated, replaced, or made obsolete by
   other documents at any time. It is not appropriate to use Internet-
   Drafts as reference material or to cite them other than as a "working
   draft" or "work in progress".

   To learn the current status of any Internet-Draft, please check the
   1id-abstracts.txt listing contained in the Internet-Drafts Shadow
   Directories on ds.internic.net (US East Coast), nic.nordu.net
   (Europe), ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific
   Rim).

   Distribution of this document is unlimited.

Abstract


   This set of documents, collectively called the iCalendar Transport-
   independent Interoperability Protocol, or iTIP, defines a transport-
   independent message protocol to allow for searching for busy time and
   the scheduling of events, journal entries, or journal entries on
   different calendaring and scheduling systems. These documents are
   based on earlier work documented in the iCalendar format. Because
   iCalendar delt mainly with the format of calendaring information and
   said so little about the method for conveying scheduling semantics,
   these documents add scheduling semantics to the base calendaring
   functionality defined in iCalendar.

   The initial document specifies the messages for allowing searching
   for free or busy time information and for scheduling events. The
   second document defines the messages for scheduling journal entries,
   or action items. The third document defines the messages for
   scheduling journal entries. This document set is intended to convey
   calendaring and scheduling semantics between different applications,
   independent of transport. This document is also being offered as a
   specification for demonstrating industry-wide, calendaring and
   scheduling interoperability. The protocol defined by this document is
   applicable for conveying calendaring and scheduling information
   across any reliable transport. This format is useful for both client-
   to-server communication, server-to-server communication, and client-
   to-client, peer communication (e.g., PDA synchronization with a PIM).



Dawson/Hopson/Mansour/Silverberg   1               Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


   The breadth of this document is limited to exchanging only the
   journal type of calendar information. It does not address issues
   related to events or journal entries. Instead, the document outlines
   a model for calendar exchange that defines both static and dynamic
   journal entry objects. Static journal objects are used to transmit
   journal entries from one entity to another without the expectation of
   continuity or referential integrity with the original item. Dynamic
   journal entry objects are a superset of static journal entry objects
   and will gracefully degrade to their static counterparts for clients
   that only support static journal entry objects.














































Dawson/Hopson/Mansour/Silverberg   2               Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



   Table of Contents:



1. INTRODUCTION........................................................5

 1.1 ITIP SCHEDULING TRANSACTIONS.....................................5

2. PROTOCOL MODELS.....................................................6

 2.1 APPLICATION PROTOCOL.............................................6
  2.1.1 Scheduling Transaction State..................................7
 2.2 ADVANCED CALENDARING CONCEPTS....................................8
 2.3 CALENDAR ROLES...................................................9

3. APPLICATION PROTOCOL ELEMENTS......................................10

 3.1 ITIP MESSAGE CONFORMANCE........................................11
  3.1.1 Restrictions on DTSTART......................................11
 3.2 SUMMARY OF APPLICATION PROTOCOL ELEMENTS........................11
  3.2.1 JOURNAL-PUBLISH..............................................11
  3.2.2 JOURNAL-REQUEST..............................................14
  3.2.3 JOURNAL-REPLY................................................16
  3.2.4 JOURNAL-CANCEL...............................................18
  3.2.5 Rescheduling or Changing a Journal Entry.....................21
  3.2.6 JOURNAL-RESEND...............................................24
 3.3 REQUEST STATUS CODES............................................26

4. EXAMPLES...........................................................28

 4.1 PUBLISHED JOURNALS..............................................28
  4.1.1 A Minimal Published Journal..................................29
  4.1.2 Changing A Published Journal.................................29
  4.1.3 Canceling A Published Journal................................30
  4.1.4 A Rich Published Journal.....................................30
 4.2 GROUP JOURNAL EXAMPLES..........................................32
  4.2.1 JOURNAL-REQUEST..............................................33
  4.2.2 JOURNAL-REPLY................................................33
  4.2.3 Update A Journal Entry.......................................34
 4.3 RECURRING JOURNAL AND TIME ZONE EXAMPLES........................34
  4.3.1 A Recurring Journal That Spans Timezones.....................34
  4.3.2 Creating  an Exception to a Recurring Journal................36
  4.3.3 Modify Exception.............................................37
  4.3.4 Cancel an Exception..........................................37
  4.3.5 Cancel Recurring Journal.....................................37
  4.3.6 Decline A Previously Accepted Exception......................38

5. APPLICATION PROTOCOL FALLBACKS.....................................39

 5.1 ICALENDAR PROFILE TYPES.........................................39
 5.2 CALENDAR COMPONENTS.............................................39
 5.3 CALENDAR PROPERTIES.............................................39
 5.4 COMPONENT PROPERTIES............................................40
 5.5 LATENCY ISSUES..................................................41
  5.5.1 Cancelation of an Unknown Journal Entry......................41
 5.6 SEQUENCE NUMBER.................................................42

6. SECURITY CONSIDERATIONS............................................42



Dawson/Hopson/Mansour/Silverberg   3               Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


7. ACKNOWLEDGMENTS....................................................42

8. BIBLIOGRAPHY.......................................................42

9. AUTHORS ADDRESSES..................................................43



















































Dawson/Hopson/Mansour/Silverberg   4               Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997





1.   Introduction


   The purpose of this document set is to define the format of iCalendar
   objects and how the iCalendar objects are conveyed between Calendar
   User Agents (CUA) and Calendar Services (CS). This involves the
   definition of a protocol that uses the iCalendar Object as the basis
   for a collection of messages that are transmitted from one
   calendaring system to another. The protocol is transport independent
   but can be bound to either a real-time transport or a store-and-
   forward transport such as e-mail.

   This set of documents is based on the calendaring and scheduling
   model specified in [ICSM].

   The first document in the set specifies the messages for allowing
   searching for free or busy time information and for scheduling
   events. The second document, defines the messages for scheduling
   journal entries. This, the third document defines the messages for
   scheduling journal entries. Implemented as a whole, this document set
   will allow different calendaring and scheduling domains to
   interoperate; allowing for the seach for available free or busy time
   information and scheduling events, journal entries, or daily journal
   entries.

1.1  iTIP Scheduling Transactions


   The profiles described in section 3 (Application Protocol Elements)
   may be considered usage profiles of the [ICAL] and is designed
   specifically for the exchange of calendaring information between
   scheduling applications.

   Journal Publication

       Publish a journal entry;

       Change a published journal entry;

       Cancel a published journal entry.

   Group Journal Entries

       Request that a journal entry be assigned to one or more
        recipients;

       Reply to an existing journal request to accept, decline;

       Allow the organizer of a journal entry to cancel the entry;

       Allow the organizer of a journal entry to replace the
        original journal definition, as when a journal description
        is clarified or the attendee assignment information is
        updated;

       Allow an attendee to request a resend of the current
        description for an existing request.

   Recurring Journal Entries and Timezones



Dawson/Hopson/Mansour/Silverberg   5               Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


       Support scheduling a journal entry between individuals in
        different time zones;

       Support for time zones;

       Support for DST rules;

       Create a recurring journal request with exception dates.

2.   Protocol Models


   The protocol model for this part of iTIP is intended to be the same
   as that described in iTIP Part 1. It is repeated here for clarity
   when reading this document alone.

   There are two distinct protocols that comprise iTIP: an Application
   Protocol and a Transport Protocol. The Application Protocol defines
   the content of the iCalendar objects sent between a sender and a
   receiver in order to accomplish the various iTIP scheduling
   transactions (section 1.1). The Transport protocol defines how the
   iCalendar objects are sent between the sender and receiver. This
   document focuses on the Application Protocol. Some considerations for
   Transport Protocol documents are listed in Appendix A of [ITIP-1].


             +----------+                      +----------+
             |          |        iTIP          |          |
             |  Sender  |<-------------------->| Receiver |
             |          |                      |          |
             +----------+                      +----------+

   There are several variations of this diagram in which the Sender and
   Receiver take on various roles of  CUA or CS. These variants are
   detailed in the Model document [ICMS]

   The architecture of iTIP is depicted in the diagram below. An
   application written to this specification may utilize either the
   binding for the store-and-forward transport, the real time transport,
   or both. The iTIP could also be bound to other transports. If a
   capability is not available on a particular transport binding, iTIP
   provides a mechanism for indicating so.

              +------------------------------------------+
              |                 iCalendar                |
              +------------------------------------------+
              |                   iTIP                   |
              +------------------------------------------+
              |Real-time | Store and Fwd | Other         |
              |Transport | Transport     | Transports... |
              +------------------------------------------+

2.1  Application Protocol


   The model for the application protocol is originator-based (organizer
   or owner roles for a request). That is, the originator of a request



Dawson/Hopson/Mansour/Silverberg   6               Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


   sends it out to one or more invitees. The invitees reply back to the
   originator. The originator maintains the status of the event. Only
   the originator can modify or cancel the request.

   The data sources for the protocol are the Calendar Users as defined
   in [ICMS]. Examples of these users are the originator (i.e.,
   organizer or owner) and attendees of an iCalendar journal entry. The
   data objects are the iCalendar objects that are exchanged between
   Calendar Users.

2.1.1     Scheduling Transaction State


   The state of the journal scheduling transaction is described by the
   STATUS and ATTENDEE properties in the journal calendar component.

   If there are no attendees in the calendar component, then this
   implies the publish - state STATUS.

   The state of a journal request changes from the time it is initially
   assigned, to when the attendees reply to the request, to when each of
   the attendees complete the journal. When an originator sends out the
   journal request, it's state with respect to the attendees is NEEDS
   ACTION. If the attendee accepts the assignment, then the status is
   changed to ACCEPTED. If the attendee rejects the assignment, then the
   status is changed to DECLINED. These changes in the attendee status
   for the journal entry are effected by the attendee sending the
   originator a JOURNAL-REPLY message with their updated status.

   The general status of the journal entry is reflected by the STATUS
   property. The journal STATUS property is controlled by the
   originator. There is no default status. Initially, the originator
   should either set the status to TENTATIVE or CONFIRMED. The
   originator can also set the status to CANCELLED by sending a JOURNAL-
   CANCEL message to the attendees.

   The states of the protocol are contained in the iCalendar object. Due
   to the individual nature of a scheduling transaction, the state may
   be different for each Calendar User. The diagram below describes the
   various state changes.

















Dawson/Hopson/Mansour/Silverberg   7               Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



          +===========================+==========================
          | Owner / Originator        | Attendee / Recipient    |
          +===========================+=========================+
          |  JOURNAL-PUBLISH -------------------------------->  |
          |     State=CONFIRMED                                 |
          +=====================================================+
          |  JOURNAL-REQUEST -------------------------------->  |
          |     State=CONFIRMED | TENTATIVE                     |
          |     Attendee Status=NEEDS ACTION                    |
          |                                                     |
          |  <---------------------------------- JOURNAL-REPLY  |
          |  State=As specified in the JOURNAL-REQUEST message  |
          |  Attendee Status=ACCEPTED | DECLINED | COMPLETED    |
          +=====================================================+
          |  JOUNRAL-CANCEL  -------------------------------->  |
          |  State=CANCELLED                                    |
          |  Attendee Status=As specified in the JOURNAL-REPLY  |
          +=====================================================+
          |  JOURNAL-REQUEST -------------------------------->  |
          |     (A rescheduled or redefined journal request)    |
          |     State=CONFIRMED | TENTATIVE                     |
          |     Attendee Status=As defined in previous JOURNA-  |
          |                  REPLY message for this journal     |
          +=====================================================+
          |  <----------------------------------JOURNAL-RESEND  |
          |  State=As specified in the JOURNAL-REQUEST message  |
          |  Attendee Status=As specified in the JOURNAL-REPLY  |
          +=====================================================+



2.2  Advanced Calendaring Concepts


   The calendaring and scheduling capability defined by this document is
   based on the exchange of messages between the organizer of a journal
   entry and one or more Calendar User Agents (CUA). The message
   protocol emulates a "request" and "reply" form of communications.
   However, there is a class of actions that are non-interactive and are
   more consistent with publishing. These include the publishing of
   static journal entries.

   The message format is designed to be used with either a MIME
   electronic messaging transport, real time protocols, and other
   Internet and non-Internet transports..

   This message-based protocol is based on "request" messages sent from
   an originator and conveyed to one or more recipients. A recipient of
   a "request" message may "reply" to the request, in order to update
   their status and may also return transaction/request status
   information. The protocol also supports the ability for the
   originator of a journal entry to change or cancel the original




Dawson/Hopson/Mansour/Silverberg   8               Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


   request. The elements of the protocol also include the notion of user
   roles.

2.3  Calendar Roles


   Roles are a behavior or set of activities performed by particular
   groups of users or agents at a particular time given the state of the
   application. This specification describes 3 roles that determine a
   range of actions and responsibilities specific to each role. When
   scheduling a journal entry with one or more individuals, there are 3
   roles: OWNER, ORGANIZER and ATTENDEE. The OWNER is generally the
   originator of the journal request. The OWNER sends the journal
   request and receives responses from the ATTENDEES. The OWNER is the
   effective owner of the journal entry. There are scenarios where the
   OWNER has an agent or associate who acts on the OWNER's behalf, as is
   the case when your an assistant makes assignments for you. In this
   scenario the ORGANIZER and the OWNER are different individuals yet
   the ORGANIZER is still responsible for sending and receiving the
   requests and managing the calendar entities for this journal entry.




         Role       Description


         Organi     The organizer is the calendar user that sends
         zer        and manages the journal entry --- meaning
                     responses are directed at the organizer. In
                     most cases the organizer is also the owner,
                     but in cases where the owner has the
                     organizer act on it's behalf, the organizer
                     becomes a proxy for the owner. The organizer
                     in this case would place the journal entry on
                     the calendar of the owner.


         Owner      The owner generally controls direct
                     manipulation of the journal entry. The owner
                     can make unilateral changes to the journal
                     entry while the attendees can reply back to
                     the owner. The owner is usually the
                     organizer, but in some cases an agent or
                     associate will act on behalf of the owner and
                     organize the journal entry.


         Attend     Attendees are those recipients who are
         ees        assigned the group journal entry. When an
                     attendee responds to the request, the
                     attendee's status property is set to either
                     accept, decline, tentative, or completed








Dawson/Hopson/Mansour/Silverberg   9               Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


3.   Application Protocol Elements


   Messages are the on-the-wire MIME entities that contain calendaring
   information. The particular type of [ICAL] message is referred to as
   the profile type. Each profile type is identified by a profile
   property specified as part of the Text/Calendar content type. The
   following describes the various [ICAL] profile types supported in
   this specification.



     Profile Type      Description


        JOURNAL-          Post notification of a journal entry.
        PUBLISH           Used primarily as a method of advertising
                          the existence of a journal entry. The
                          ATTENDEES property is not generally
                          included and no interaction is expected.


        JOURNAL-          Make a journal entry request. This is an
        REQUEST           explicit send of a journal entry to one
                          or more attendees. Journal requests are
                          also used to update or change an existing
                          journal entry description. Clients that
                          cannot handle JOURNAL-REQUEST messages
                          can degrade the journal entry to view it
                          as a JOURNAL-PUBLISH.


        JOURNAL-REPLY     Reply to a journal request. This includes
                          "ACCEPT", "TENTATIVE", "DECLINE" and
                          "COMPLETED".


        JOURNAL-          Cancel an existing journal request. Uses
        CANCEL            the UID to identify the journal to be
                          canceled.


        JOURNAL-          Resend an existing journal request. Uses
        RESEND            the UID to identify the journal to be
                          resend.




   Each profile type has an associated collection of properties and
   methods. Some properties are required and others are optional. This
   specification is also designed with the notion that some calendaring
   clients will be capable of reading and posting journal entries (where
   posting means to local calendar). Therefore, profiles such as
   JOURNAL-REQUEST will contain an exact superset of the JOURNAL-PUBLISH
   property set such that a client that supported JOURNAL-PUBLISH could
   still read a JOURNAL-REQUEST.







Dawson/Hopson/Mansour/Silverberg   10              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


3.1  ITIP Message Conformance


   An implementation conforming to iTIP must enforce the conventions
   described in the sections below. These conventions have been made to
   improve interoperability. As a side benefit, they tend to simplify
   implementation.

3.1.1     Restrictions on DTSTART


   The DTSTART property must always be specified. This specifies the
   date/time that the journal entry is to first be displayed. The DTEND,
   DUE and DURATION properties cannot be specified in conjunction with
   DTSTART.

3.2  Summary of Application Protocol Elements


   This section outlines the complete property set for each profile
   type, indicating the required (designated by the word REQUIRED),
   optional (designed by the words NOT REQUIRED) and excluded
   (designated by the word EXCLUDED) properties.

3.2.1     JOURNAL-PUBLISH


   The JOURNAL-PUBLISH is somewhat unique in this document in that it
   has no response scheduling message associated with it. Instead, it is
   simply a journal entry that can be added by a calendar user agent to
   a calendar as a static journal entry. There is no defined response to
   the originator of a JOURNAL-PUBLISH message. It's expected usage is
   for publication of journal entries such as those that might be
   published on a website or Internet calendar. The JOURNAL-PUBLISH is
   simply a MIME encapsulated file that can be referenced and opened by
   the appropriate handler for a TEXT/CALENDAR MIME content type and
   JOURNAL-PUBLISH profile type.



     JOURNAL-PUBLISH

     Calendar Properties

        COMMENT
                                   Not Required

        GEO
                                   Not Required

        PRODID
                                   Required

        VERSION
                                   Required, Value must be "2.0".

        PROFILE
                                   Required,"JOURNAL-PUBLISH"

        PROFILE-VERSION
                                   Required, Value must be "1.0".

     Timezone Component Properties

        COMMENT
                                   Not Required



Dawson/Hopson/Mansour/Silverberg   11              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



        CREATED
                                   Not Required

        DAYLIGHT
                                   Not Required

        DTSTART
                                   Required

        DTSTART
                                   Not Required

        RDATE
                                   Not Required, Either RDATE or
                                   RRULE may be specified, but not
                                   both.

        RRULE
                                   Not Required, Either RDATE or
                                   RRULE may be specified, but not
                                   both.

        TZNAME
                                   Not Required

        TZOFFSET
                                   Required

        TZTRANS
                                   Not Required

        UID
                                   Required

     Event Component Properties


                                   Event component is excluded from
                                   this message type.

     To-do Component Properties


                                   To-do component is excluded from
                                   this message type.

     Journal Component Properties

        ATTACH
                                   Not Required

        ATTENDEE
                                   Excluded

        CATEGORIES
                                   Not Required

        CLASS
                                   Not Required

        COMMENT
                                   Not Required

        CREATED
                                   Not Required

        COMPLETED
                                   Excluded

        DESCRIPTION
                                   Required, Value may be NULL
                                   text.

        DUE
                                   Excluded



Dawson/Hopson/Mansour/Silverberg   12              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



        DURATION
                                   Excluded

        DTEND
                                   Excluded

        DTSTAMP
                                   Required

        DTSTART
                                   Required

        EXDATE
                                   Not Required

        EXRULE
                                   Not Required

        LAST-MODIFIED
                                   Not Required

        LOCATION
                                   Excluded

        PRIORITY
                                   Excluded

        RELATED-TO
                                   Not Required

        REQUEST-STATUS
                                   Excluded

        RDATE
                                   Not Required.

        RRULE
                                   Not Required.

        RESOURCES
                                   Excluded

        RESPONSE-SEQUENCE
                                   Excluded

        SEQUENCE
                                   Required, if not zero.

        STATUS
                                   Not Required.

        SUMMARY
                                   Excluded

        TRANSP
                                   Excluded

        URL
                                   Not Required

        UID
                                   Required

     Alarm Component Properties


                                   Alarm component is excluded from
                                   this message type.

     Freebusy Properties


                                   Freebusy component is excluded
                                   from this message type.

     Non-standard Properties




Dawson/Hopson/Mansour/Silverberg   13              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



        X-token
                                   Not Required, but recipient may
                                   choose to ignore those non-
                                   standard properties, specified
                                   as Not Required.




3.2.2     JOURNAL-REQUEST


   The JOURNAL-REQUEST is used to both describe a journal entry and send
   the journal entry to one or more attendees. When a JOURNAL-REQUEST is
   received by a user it should be responded to with a JOURNAL-REPLY.



     JOURNAL-REQUEST

     Calendar Properties

        COMMENT
                                     Not Required

        GEO
                                     Not Required

        PRODID
                                     Required

        VERSION
                                     Required, Value must be "2.0".

        PROFILE
                                     Required,"JOURNAL-REQUEST"

        PROFILE-VERSION
                                     Required, Value must be "1.0".

     Timezone Component Properties

        COMMENT
                                     Not Required

        CREATED
                                     Not Required

        DAYLIGHT
                                     Not Required

        DTSTART
                                     Required

        DTEND
                                     Not Required

        RDATE
                                     Not Required, Either RDATE or
                                     RRULE may be specified, but
                                     not both.

        RRULE
                                     Not Required, Either RDATE or
                                     RRULE may be specified, but
                                     not both.

        TZNAME
                                     Not Required

        TZOFFSET
                                     Required



Dawson/Hopson/Mansour/Silverberg   14              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



        TZTRANS
                                     Not Required

     Event Component Properties


                                     Event component is excluded
                                     from this message type.

     To-do Component Properties


                                     To-do component is excluded
                                     from this message type.

     Journal Component Properties

        ATTACH
                                     Not Required

        ATTENDEE
                                     Required

        CATEGORIES
                                     Not Required

        CLASS
                                     Not Required

        COMMENT
                                     Not Required

        CREATED
                                     Not Required

        COMPLETED
                                     Excluded

        DESCRIPTION
                                     Required, Value may be NULL
                                     text.

        DUE
                                     Excluded

        DURATION
                                     Excluded

        DTEND
                                     Excluded

        DTSTAMP
                                     Required

        DTSTART
                                     Required

        EXDATE
                                     Not Required

        EXRULE
                                     Not Required

        LAST-MODIFIED
                                     Not Required

        LOCATION
                                     Excluded

        PRIORITY
                                     Excluded

        RELATED-TO
                                     Not Required

        REQUEST-STATUS
                                     Excluded



Dawson/Hopson/Mansour/Silverberg   15              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



        RDATE
                                     Not Required.

        RRULE
                                     Not Required.

        RESOURCES
                                     Excluded

        RESPONSE-SEQUENCE
                                     Excluded

        SEQUENCE
                                     Required, if not zero.

        STATUS
                                     Not Required

        SUMMARY
                                     Excluded

        TRANSP
                                     Excluded

        URL
                                     Not Required

        UID
                                     Required

     Alarm Component Properties


                                     Alarm component is excluded
                                     from this message type.

     Freebusy Properties


                                     Freebusy component is excluded
                                     from this message type.

     Non-standard Properties

        X-token
                                     Not Required, but recipient
                                     may choose to ignore those
                                     non-standard properties,
                                     specified as Not Required.




3.2.3     JOURNAL-REPLY


   The JOURNAL-REPLY is used to by the attendees to reply to the
   originator of the journal request with their status. The attendees
   can indicate their status is a TENTATIVE acceptance, that they have
   ACCEPTED the assignment, that they DECLINED the assignment or that
   they have COMPLETED the assignment. Once an attendee has replied to
   the request, they can subsequently reply with a different value.



     JOURNAL-REPLY

     Calendar Properties

        COMMENT
                                     Not Required




Dawson/Hopson/Mansour/Silverberg   16              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



        GEO
                                     Not Required

        PRODID
                                     Required

        VERSION
                                     Required, Value must be "2.0".

        PROFILE
                                     Required,"JOURNAL-REPLY"

        PROFILE-VERSION
                                     Required, Value must be "1.0".

     Timezone Component Properties


                                     Timezone component is excluded
                                     from this message type.

     Event Component Properties


                                     Event component is excluded
                                     from this message type.

     To-do Component Properties


                                     To-do component is excluded
                                     from this message type.

     Journal Component Properties

        ATTACH
                                     Excluded

        ATTENDEE
                                     Required

        CATEGORIES
                                     Excluded

        CLASS
                                     Excluded

        COMMENT
                                     Not Required

        CREATED
                                     Excluded

        COMPLETED
                                     Excluded

        DESCRIPTION
                                     Excluded

        DUE
                                     Excluded

        DURATION
                                     Excluded

        DTEND
                                     Excluded

        DTSTAMP
                                     Required

        DTSTART
                                     Excluded

        EXDATE
                                     Not Required




Dawson/Hopson/Mansour/Silverberg   17              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



        EXRULE
                                     Not Required

        LAST-MODIFIED
                                     Excluded

        LOCATION
                                     Excluded

        PRIORITY
                                     Excluded

        RELATED-TO
                                     Excluded

        REQUEST-STATUS
                                     Not Required

        RDATE
                                     Not Required.

        RRULE
                                     Not Required.

        RESOURCES
                                     Excluded

        RESPONSE-SEQUENCE
                                     Required, if not zero.

        SEQUENCE
                                     Required, if not zero.

        STATUS
                                     Excluded

        SUMMARY
                                     Excluded

        TRANSP
                                     Excluded

        URL
                                     Excluded

        UID
                                     Required

     Alarm Component Properties


                                     Alarm component is excluded
                                     from this message type.

     Freebusy Properties


                                     Freebusy component is excluded
                                     from this message type.

     Non-Standard Properties

        X-token
                                     Not Required, but recipient
                                     may choose to ignore those
                                     non-standard properties,
                                     specified as Not Required.



3.2.4     JOURNAL-CANCEL


   The JOURNAL-CANCEL is used to by the originator of the journal
   request to convey a cancellation notice of the journal entry to the



Dawson/Hopson/Mansour/Silverberg   18              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


   attendees. The message is only sent by the journal entry OWNER or
   ORGANIZER to the recipients of the original journal entry request.



     JOURNAL-CANCEL

        Calendar Properties

        COMMENT
                                     Not Required

        GEO
                                     Not Required

        PRODID
                                     Required

        VERSION
                                     Required, Value must be "2.0".

        PROFILE
                                     Required,"JOURNAL-CANCEL"

        PROFILE-VERSION
                                     Required, Value must be "1.0".

     Timezone Component Properties


                                     Timezone component is excluded
                                     from this message type.

     Event Component Properties


                                     Event component is excluded
                                     from this message type.

     To-do Component Properties


                                     To-do component is excluded
                                     from this message type.

     Journal Component Properties

        ATTACH
                                     Excluded

        ATTENDEE
                                     Required

        CATEGORIES
                                     Excluded

        CLASS
                                     Excluded

        COMMENT
                                     Not Required

        CREATED
                                     Excluded

        COMPLETED
                                     Excluded

        DESCRIPTION
                                     Excluded

        DUE
                                     Excluded

        DURATION
                                     Excluded




Dawson/Hopson/Mansour/Silverberg   19              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



        DTEND
                                     Excluded

        DTSTAMP
                                     Required

        DTSTART
                                     Excluded

        EXDATE
                                     Not Required

        EXRULE
                                     Not Required

        LAST-MODIFIED
                                     Excluded

        LOCATION
                                     Excluded

        PRIORITY
                                     Excluded

        RELATED-TO
                                     Not Required

        REQUEST-STATUS
                                     Excluded

        RDATE
                                     Not Required.

        RRULE
                                     Not Required.

        RESOURCES
                                     Excluded

        RESPONSE-SEQUENCE
                                     Excluded

        SEQUENCE
                                     Excluded

        STATUS
                                     Not Required, if present must
                                     be "CANCELLED".

        SUMMARY
                                     Excluded

        TRANSP
                                     Excluded

        URL
                                     Excluded

        UID
                                     Required

     Alarm Properties


                                     Alarm component is excluded
                                     from this message type.

     Freebusy Protperties


                                     Freebusy component is excluded
                                     from this message type.

     Non-standard Properties

        X-token
                                     Not Required, But recipient



Dawson/Hopson/Mansour/Silverberg   20              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



                                     may choose to ignore those
                                     non-standard properties,
                                     specified as optional.



3.2.5     Rescheduling or Changing a Journal Entry


   When an owner/organizer desires to reschedule or change some detail
   of one of their existing journal requests, they effect this change by
   conveying a new journal request with the same UID and an incremented
   sequence number. The receiving client must correlate the request to
   their existing journal entries and check the sequence number in order
   to realize that the request is actually a replacement for the
   existing journal entry. Individual "A" sends a journal request to "B"
   and "C". "B" accepts the journal entry and "C" declines and includes
   text in the comments property proposing a more appropriate due date.
   "A" sends "B" and "C" another journal request using the same UID and
   a sequence number one greater than the original request. "B" should
   infer that the journal request message is actually a replacement for
   the existing journal entry.

   Replacing a journal request is predicated on using the same UID,
   incrementing the sequence number and replacing the changed calendar
   properties.



     JOURNAL-REQUEST (replacing an existing journal description)

     Calendar Properties

        COMMENT
                                     Not Required

        GEO
                                     Not Required

        PRODID
                                     Required

        VERSION
                                     Required, Value must be "2.0".

        PROFILE
                                     Required,"JOURNAL-REQUEST"

        PROFILE-VERSION
                                     Required, Value must be "1.0".

     Timezone Component Properties

        COMMENT
                                     Not Required

        CREATED
                                     Not Required

        DAYLIGHT
                                     Not Required

        DTSTART
                                     Required

        DTEND
                                     Not Required




Dawson/Hopson/Mansour/Silverberg   21              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



        RDATE
                                     Not Required, Either RDATE or
                                     RRULE may be specified, but
                                     not both.

        RRULE
                                     Not Required, Either RDATE or
                                     RRULE may be specified, but
                                     not both.

        TZNAME
                                     Not Required

        TZOFFSET
                                     Required

        TZTRANS
                                     Not Required

     Event Component Properties


                                     Event component is excluded
                                     from this message type.

     To-do Component Properties


                                     To-do component is excluded
                                     from this message type.

     Journal Component Properties

        ATTACH
                                     Not Required

        ATTENDEE
                                     Required

        CATEGORIES
                                     Not Required

        CLASS
                                     Not Required

        COMMENT
                                     Not Required

        CREATED
                                     Not Required

        COMPLETED
                                     Excluded

        DESCRIPTION
                                     Required, Value may be NULL
                                     text.

        DUE
                                     Excluded

        DURATION
                                     Excluded

        DTEND
                                     Excluded

        DTSTAMP
                                     Required

        DTSTART
                                     Required

        EXDATE
                                     Not Required



Dawson/Hopson/Mansour/Silverberg   22              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



        EXRULE
                                     Not Required

        LAST-MODIFIED
                                     Not Required

        LOCATION
                                     Excluded

        PRIORITY
                                     Excluded

        RELATED-TO
                                     Not Required

        REQUEST-STATUS
                                     Excluded

        RDATE
                                     Not Required.

        RRULE
                                     Not Required.

        RESOURCES
                                     Excluded

        RESPONSE-SEQUENCE
                                     Excluded

        SEQUENCE
                                     Required, if not zero.

        STATUS
                                     Not Required.

        SUMMARY
                                     Excluded

        TRANSP
                                     Excluded

        URL
                                     Not Required

        UID
                                     Required

     Alarm Component Properties


                                     Alarm component is excluded
                                     from this message type.

     Freebusy Component Properties


                                     Freebusy component is excluded
                                     from this message type.

     Non-standard Properties

        X-token
                                     Not Required, but recipient
                                     may choose to ignore those
                                     non-standard properties,
                                     specified as Not Required.









Dawson/Hopson/Mansour/Silverberg   23              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


3.2.6     JOURNAL-RESEND


   The JOURNAL-RESEND is used by attendees to request the latest version
   of a JOURNAL-REQUEST. By issuing an JOURNAL-RESEND, with the
   appropriate UID and optionally a RECURRENCE-ID, the organizer's CUA
   should respond with the latest version of the to-do. This message
   type is intended to be machine processed.



     JOURNAL-RESEND

        Calendar Properties

        COMMENT
                                     Not Required

        GEO
                                     Not Required

        PRODID
                                     Required

        VERSION
                                     Required, Value must be "2.0".

        PROFILE
                                     Required,"JOURNAL-RESEND"

        PROFILE-VERSION
                                     Required, Value must be "1.0".

     Timezone Component Properties


                                     Timezone component is excluded
                                     from this message type.

     Event Component Properties


                                     Event component is excluded
                                     from this message type.

     To-do Component Properties


                                     To-do component is excluded
                                     from this message type.

     Journal Component Properties

        ATTACH
                                     Excluded

        ATTENDEE
                                     Required

        CATEGORIES
                                     Excluded

        CLASS
                                     Excluded

        COMMENT
                                     Not Required, Text value.
                                     Provides a comment from the
                                     attendee to the organizer
                                     concerning the resend request.

        CREATED
                                     Excluded




Dawson/Hopson/Mansour/Silverberg   24              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



        COMPLETED
                                     Excluded

        DESCRIPTION
                                     Excluded

        DUE
                                     Excluded

        DURATION
                                     Excluded

        DTEND
                                     Excluded

        DTSTAMP
                                     Required

        DTSTART
                                     Excluded

        EXDATE
                                     Excluded

        EXRULE
                                     Excluded

        LAST-MODIFIED
                                     Excluded

        LOCATION
                                     Excluded

        PRIORITY
                                     Excluded

        RECURRENCE-ID
                                     Not Required. If the attendee
                                     wishes to receive an updated
                                     instance of a recurring to-do,
                                     then the RECURRENCE-ID can be
                                     included and only the specific
                                     instance will be returned.

        RELATED-TO
                                     Excluded

        REQUEST-STATUS
                                     Excluded

        RDATE
                                     Excluded

        RRULE
                                     Excluded

        RESOURCES
                                     Excluded

        RESPONSE-SEQUENCE
                                     Excluded

        SEQUENCE
                                     Required, if not zero. Is not
                                     incremented by this action.

        STATUS
                                     Excluded

        SUMMARY
                                     Excluded

        TRANSP
                                     Excluded



Dawson/Hopson/Mansour/Silverberg   25              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



        URL
                                     Excluded

        UID
                                     Required

     Alarm Properties


                                     Alarm component is excluded
                                     from this message type.

     Freebusy Protperties


                                     Freebusy component is excluded
                                     from this message type.

     Non-standard Properties

        X-token
                                     Not Required, But recipient
                                     may choose to ignore those
                                     non-standard properties,
                                     specified as optional.



3.3  Request Status Codes


   The following is a list of possible return status codes values:



    Short      Longer Return Status        Offending Data
    Return     Description
    Status
    Code

       200
                  Success.                    None.

       201
                  Success, but fallback       Property name and
                  taken on one or more        value may be
                  property values.            specified.

       202
                  Success, invalid            Property name may be
                  property ignored.           specified.

       203
                  Success, invalid            Property parameter
                  property parameter          name and value may be
                  ignored.                    specified.

       204
                  Success, unknown non-       Non-standard property
                  standard property           name may be
                  ignored.                    specified.

       205
                  Success, unknown non-       Property and non-
                  standard property value     standard value may be
                  ignored.                    specified.

       206
                  Success, invalid            Calendar component



Dawson/Hopson/Mansour/Silverberg   26              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



                  calendar component          sentinel (e.g.,
                  ignored.                    "BEGIN:ALARM") may be
                                               specified.

       207
                  Success, request            Original and
                  forwarded to calendar       forwarded RFC822
                  user.                       addresses may be
                                               specified.

       208
                  Success, repeating event    RRULE or RDATE
                  ignored. Scheduled as a     property name and
                  single event.               value may be
                                               specified.

       209
                  Success, truncated end      DTEND property value
                  date/time to date           may be specified.
                  boundary.

       210
                  Success, repeating to-do    RRULE or RDATE
                  ignored. Scheduled as a     property name and
                  single to-do.               value may be
                                               specified.

       300
                  Invalid property name.      Property name may be
                                               specified.

       301
                  Invalid property value.     Property name and
                                               value may be
                                               specified.

       302
                  Invalid property            Property parameter
                  parameter.                  name and value may be
                                               specified.

       303
                  Invalid property            Property parameter
                  parameter value.            name and value may be
                                               specified.

       304
                  Invalid calendar            Calendar component
                  component sequence.         sentinel may be
                                               specified (e.g.,
                                               BEGIN:TIMEZONE).

       305
                  Invalid date or time.       Date/time value(s)
                                               may be specified.

       306
                  Invalid rule.               Rule value may be
                                               specified.

       307
                  Invalid calendar user.      Attendee property
                                               value may be
                                               specified.




Dawson/Hopson/Mansour/Silverberg   27              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



       308
                  No authority.               PROFILE and ATTENDEE
                                               property values may
                                               be specified.

       309
                  Unsupported version.        VERSION property name
                                               and value may be
                                               specified.

       310
                  Request entity too          None.
                  large.

       400
                  Event conflict.             DTSTART and DTEND
                  Date/time is busy.          property name and
                                               values may be
                                               specified.

       500
                  Request not supported.      Profile property
                                               value may be
                                               specified.

       501
                  Service unavailable.        ATTENDEE property
                                               value may be
                                               specified.

       502
                  Invalid calendar            ATTENDEE property
                  service.                    value may be
                                               specified.

       503
                  No scheduling support       ATTENDEE property
                  for user.                   value may be
                                               specified.




4.   Examples


4.1  Published Journals


   In the calendaring and scheduling context, publication refers to the
   one way transfer of journal information. Consumers of published
   journals simply incorporate the journal into a calendar. No reply is
   expected. Individual "A" publishes a journal. Individual "B" reads
   the journal and incorporates it into their calendar. Journals can be
   published in several ways including: embedding the journal as an
   object in a web page, e-mailing the journal to a distribution list,
   and posting the journal to a newsgroup.

   The table below illustrates the sequence of journals between the
   publisher and the consumers of a published journal.





Dawson/Hopson/Mansour/Silverberg   28              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997




         Action                Organizer                Attendee


         Publish a journal     "A" sends or posts a
                                JOURNAL-PUBLISH
                                message


         "B" reads the
         journal
         publication


         Publish an updated    "A" sends or posts a
         journal               JOURNAL-PUBLISH
                                message


         "B" reads the
         updated journal
         publication


         Cancel a published    "A" sends or posts an
         journal               JOURNAL-CANCEL
                                message


         "B" reads the
         canceled journal
         publication


4.1.1     A Minimal Published Journal


   The iCalendar Object below describes a single journal entry for
   October 1, 1997. This journal contains the minimum set of properties
   for an iTIP journal component.

   BEGIN:VCALENDAR
   PROFILE:JOURNAL-PUBLISH
   PROFILE-VERSION:1.0
   PRODID:-//ACME/DesktopCalendar//EN
   VERSION:2.0
   BEGIN:VJOURNAL
   DTSTART:19971001T200000Z
   SUMMARY:Distrust & caution are the parents of security
   UID:0981234-1234234-2410
   END:VJOURNAL
   END:VCALENDAR

4.1.2     Changing A Published Journal


   The iCalendar Object below describes an update to the journal
   described in 4.1.1. The summary has changed and the sequence number
   has been adjusted.

   BEGIN:VCALENDAR



Dawson/Hopson/Mansour/Silverberg   29              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


   PROFILE:JOURNAL-PUBLISH
   PROFILE-VERSION:1.0
   VERSION:2.0
   PRODID:-//ACME/DesktopCalendar//EN
   BEGIN:VJOURNAL
   DTSTART:19970901T210000Z
   SEQUENCE:2
   UID:0981234-1234234-2410
   SUMMARY:Distrust is a parent of security
   END:VJOURNAL
   END:VCALENDAR

   To identify the journal the client uses the UID. The SEQUENCE
   property indicates that this is the second change to the journal.
   Journals with sequence numbers 0 and 1 are superseded by this
   journal.

   The SEQUENCE property provides a reliable way to distinguish
   different versions of the same journal. Each time a journal is
   published, its sequence number is incremented. If a client receives
   an journal with a sequence number 5 and finds it has the same journal
   with sequence number 2, the journal should be updated. However, if
   the client received an journal with sequence number 2 and finds it
   already has sequence number 5 of the same journal, the journal should
   not be updated.

4.1.3     Canceling A Published Journal


   The iCalendar Object below cancels the journal described in 4.1.1.
   This cancels the journal with SEQUENCE numbers 0, 1, and 2.

   BEGIN:VCALENDAR
   PROFILE:JOURNAL-CANCEL
   PROFILE-VERSION:1.0
   VERSION:2.0
   PRODID:-//ACME/DesktopCalendar//EN
   BEGIN:VJOURNAL
   COMMENT:We'll save this one for next week.
   SEQUENCE:2
   UID:0981234-1234234-2410
   STATUS:CANCELLED
   END:VJOURNAL
   END:VCALENDAR


4.1.4     A Rich Published Journal


   This example describes the same journal as in 4.1.1, but in much
   greater detail.

   BEGIN:VCALENDAR

   BEGIN:VTIMEZONE



Dawson/Hopson/Mansour/Silverberg   30              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


   DAYLIGHT:TRUE
   DTSTART:19970406T000000
   RRULE:BYDAY=1SU;BYMONTH=4;FREQ=YEARLY
   TZNAME:CDT
   TZOFFSET:-0500
   TTRANS:020000
   END:VTIMEZONE

   BEGIN:VTIMEZONE
   DAYLIGHT:FALSE
   DTSTART:19970101T000000
   RRULE:BYDAY=-1SU;BYMONTH=10;FREQ=YEARLY
   TZNAME:CST
   TZOFFSET:-0600
   TTRANS:020000
   END:VTIMEZONE

   PRODID:-//ACME/DesktopCalendar//EN
   PROFILE:JOURNAL-PUBLISH
   PROFILE-VERSION:1.0
   CALSCALE:GREGORIAN
   SOURCE:http://www.acmeu.edu/1997/almanac.html
   NAME:Poor Richards Almanac
   VERSION:2.0

   BEGIN:VJOURNAL
   ATTACH:http://kuhttp.ukans.edu/carrie/stacks/authors.franklin.html
   CATEGORIES:ALMANAC
   CLASS:PRIVATE
   CREATED:19970415T194319Z
   DESCRIPTION;CHARSET=US-ASCII;ENCODING=QUOTED-PRINTABLE:The=
    heart of a fool is in his mouth, but the mouth of a wise=
    man is in his heart.
   DTSTART:19970901T210000Z
   SEQUENCE:2
   UID:0981234-1234234-2410
   LAST-MODIFIED:19970901T132421Z
   RESOURCES:COMPUTER,PRINTER
   LOCATION;VALUE=URL:http://www.acmeu.com/campusmaps/haaghall.html
   PRIORITY:2
   SEQUENCE:3
   SUMMARY:Distrust & caution are the parents of security
   UID:0981234-1234234-2410
   RELATED-TO:0981234-1234234-1400-02
   END:VJOURNAL

   END:VCALENDAR


   The CLASS property is specified, though it is not really needed here.
   Since this is a published journal, a program that displays it need
   not apply any content filtering based on the CLASS attribute. If this
   journal is copied into a users calendar, the CLASS would be included



Dawson/Hopson/Mansour/Silverberg   31              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


   as part of the copy. The handling of the CLASS tag at that point is
   implementation specific.

   The RELATED-TO field contains the UID of a related calendar journal
   or event. The handling of this property is application dependent.

   VTIMEZONE components are discussed in detail in iTIP Part 1.

   The sequence number 3 indicates that this journal supersedes versions
   0, 1, and 2.

4.2  Group Journal Examples


   Group journals are distinguished from published journals in that
   there is interaction between the attendees with respect to the
   journal. Individual "A" creates a group task in which individuals
   "A", "B", "C" and "D" will participate. Individual "B" confirms
   acceptance of the task. Individual "C" declines the task. Individual
   "D" tentatively accepts the task. The following table illustrates the
   sequence of messages that would be exchanged between these
   individuals. The table below illustrates the message flow.



         Action          Organizer           Attendee


         Initiate a      "A" sends
         journal         JOURNAL-REQUEST
         request         message to "B",
                         "C", and "D"


         Accept the                          "B" sends JOURNAL-
         journal                             REPLY message to
         request                             "A" with its
                                              ATTENDEE/STATUS
                                              property parameter
                                              set to "ACCEPTED"


         Decline the                         "C" sends JOURNAL-
         journal                             REPLY message to
         request                             "A" with its
                                              ATTENDEE/STATUS
                                              property parameter
                                              set to "DECLINED"


         Tentatively                         "D" sends JOURNAL-
         accept the                          REPLY message to
         journal                             "A" with its
         request                             ATTENEE/STATUS
                                              property parameter
                                              set to "TENTATIVE"


         Confirm         "A" sends
         journal         JOURNAL-REQUEST



Dawson/Hopson/Mansour/Silverberg   32              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



         status with     message to "B"
         attendees       and "C" with
                         current
                         information for
                         journal.
                         SEQUENCE
                         property is "1".




4.2.1     JOURNAL-REQUEST


   A sample journal request that "A" sends to "B", "C", and "D".

   BEGIN:VCALENDAR
   PRODID:-//ACME/DesktopCalendar//EN
   PROFILE:JOURNAL-REQUEST
   PROFILE-VERSION:1.0
   VERSION:2.0
   BEGIN:VJOURNAL
   ATTENDEE;ROLE=OWNER;STATUS=ACCEPTED:A@acme.com
   ATTENDEE;RSVP=YES;TYPE=INDIVIDUAL:B@acme.com
   ATTENDEE;RSVP=YES;TYPE=INDIVIDUAL:C@acme.com
   ATTENDEE;RSVP=YES;TYPE=INDIVIDUAL:D@acme.com
   DTSTART:19970701T100000-0700
   DTDUE:19970722T100000-0700
   SUMMARY:Focus group studies in progress
   UID:www.acme.com-873970198738777-00
   SEQUENCE:0
   END:VJOURNAL
   END:VCALENDAR

   Note that the conference room does not have a valid e-mail address.

4.2.2     JOURNAL-REPLY


   Attendee "B" accepts the meeting.

   BEGIN:VCALENDAR
   PRODID:-//ACME/DesktopCalendar//EN
   PROFILE:JOURNAL-REPLY
   PROFILE-VERSION:1.0
   VERSION:2.0
   BEGIN:VJOURNAL
   ATTENDEE;STATUS=ACCEPTED:B@acme.com
   UID:www.acme.com-873970198738777-00
   COMMENT:I'll look in on the focus groups at some point
   SEQUENCE:0
   RESPONSE-SEQUENCE:0
   REQUEST-STATUS:0;Success
   END:VJOURNAL
   END:VCALENDAR




Dawson/Hopson/Mansour/Silverberg   33              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


   "B" could have declined the meeting or indicated tentative acceptance
   by setting the ATTENDEE;STATUS parameter to DECLINED or TENTATIVE,
   respectively.


4.2.3     Update A Journal Entry


   The journal is moved to a different time. The combination of the UID
   (which remains the same) and the SEQUENCE (bumped to 1) properties
   indicate the update.

   BEGIN:VCALENDAR
   PRODID:-//ACME/DesktopCalendar//EN
   PROFILE:JOURNAL-REQUEST
   PROFILE-VERSION:1.0
   VERSION:2.0
   BEGIN:VJOURNAL
   ATTENDEE;ROLE=OWNER;STATUS=ACCEPTED:A@acme.com
   ATTENDEE;RSVP=YES;TYPE=INDIVIDUAL:B@acme.com
   ATTENDEE;RSVP=YES;TYPE=INDIVIDUAL:C@acme.com
   ATTENDEE;RSVP=YES;TYPE=INDIVIDUAL:D@acme.com
   DTSTART:19970701T110000-0700
   SUMMARY:User interface focus group studies in progress
   UID:www.acme.com-873970198738777-00
   SEQUENCE:1
   END:VJOURNAL
   END:VCALENDAR

4.3  Recurring Journal and Time Zone Examples


4.3.1     A Recurring Journal That Spans Timezones


   This journal describes a weekly status report. The attendees are each
   in a different timezone.

   BEGIN:VCALENDAR

   BEGIN:VTIMEZONE
   DAYLIGHT:TRUE
   DTSTART:19970406T000000
   RRULE:BYDAY=1SU;BYMONTH=4;FREQ=YEARLY
   TZNAME:PDT
   TZOFFSET:-0700
   TTRANS:020000
   END:VTIMEZONE

   BEGIN:VTIMEZONE
   DAYLIGHT:FALSE
   DTSTART:19970126T000000
   RRULE:BYDAY=-1SU;BYMONTH=10;FREQ=YEARLY
   TZNAME:PST
   TZOFFSET:-0800
   TTRANS:020000



Dawson/Hopson/Mansour/Silverberg   34              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


   END:VTIMEZONE

   PRODID:-//ACME/DesktopCalendar//EN
   PROFILE:JOURNAL-REQUEST
   VERSION:2.0

   BEGIN:VJOURNAL
   ATTENDEE;ROLE=OWNER;STATUS=ACCEPTED:sman@mcom.com
   ATTENDEE;RSVP=YES;EXPECT=REQUEST;TYPE=INDIVIDUAL:gb@mcom.fr
   ATTENDEE;RSVP=YES;EXPECT=REQUEST;TYPE=INDIVIDUAL:kimiko@mcom.jp
   DTSTART:19970701T140000
   RRULE:INTERVAL=20;WKST=SU;BYDAY=TU;FREQ=WEEKLY
   RDATE:19970910T140000
   EXDATE:19970909T140000
   EXDATE:19971028T150000
   SUMMARY:Status Reports from group arrive today
   UID:www.acme.com-873970198738777
   SEQUENCE:0
   END:VJOURNAL

   END:VCALENDAR

   Timezone components should appear in an iCalendar Object containing
   recurring journal entries. This is especially important if a
   recurring journal entry has attendees in different timezones. There
   can be multiple VTIMEZONE components in an iCalendar Object. However,
   they must be used to define the same timezone. That is, there cannot
   be VTIMEZONE components describing both PST/PDT and EST/EDT at the
   component level in the same iCalendar Object.

   The first two components of this iCalendar Object are the timezone
   components. The DTStart date coincides with the first instance of the
   RRULE property.

   The recurring journal is defined in a particular timezone, presumably
   that of the creator. The client for each attendee has the
   responsibility of determining the recurrence time in the attendee's
   timezone.

   The first instance of the journal starts on Tuesday, July 1, 1997 at
   2:00pm. Since no timezone is specified in the DTSTART property, the
   timezone component of PDT applies to the start and end times.
   Attendee gb@mcom.fr is in France where the local time on this date is
   7 hours later than PDT or 21:00. Attendee kimiko@mcom.jp is in Japan
   where local time is 9 hours ahead of than UTC or Wednesday, July 2 at
   07:00. The journal repeats weekly on Tuesdays (in PST/PDT). The RRULE
   results in 20 instances. The last instance falls on Tuesday, November
   11, 1997 2:00pm PST. The RDATE adds another instance: WED, 10-SEP-
   1997 21:00 GMT.

   There are two exceptions to this recurring appointment. The first one
   is:




Dawson/Hopson/Mansour/Silverberg   35              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


     TUE, 09-SEP-1997 21:00 GMT
     TUE, 09-SEP-1997 14:00 PDT
     WED, 10-SEP-1997 07:00 JDT

   and the second is:

     TUE, 28-OCT-1997 22:00 GMT
     TUE, 28-OCT-1997 14:00 PST
     WED, 29-OCT-1997 07:00 JST

4.3.2     Creating  an Exception to a Recurring Journal


   The following example illustrates a scenario where a journal
   organizer changes an instance of an existing recurring journal. In
   this case the organizer is changing the start and end time.

   Original Request:

   BEGIN:VCALENDAR
   PROFILE:JOURNAL-REQUEST
   PRODID:-//RDU Software//NONSGML HandCal//EN
   VERSION:2.0
   BEGIN:VJOURNAL
   CREATED:19970526T083000
   UID:guid-1.host1.com-001
   SEQUENCE:0
   RRULE:BYMONTHDAY=1;FREQ=MONTHLY
   ATTENDEE;ROLE=ORGANIZER;STATUS=ACCEPTED:Sman@netscape.com
   ATTENDEE;RSVP=YES:fdawson@earthlink.net
   ATTENDEE;RSVP=YES:Deriks@Microsoft.com
   ATTENDEE;RSVP=YES:Alecd@Microsoft.com
   DESCRIPTION:IETF-C&S Conference Call
   CLASS:PUBLIC
   SUMMARY:Merge document updates
   DTSTART:19970601T210000Z
   LOCATION:Conference Call
   END:VJOURNAL
   END:VCALENDAR

   Journal Request to change a time and create an exception:

   BEGIN:VCALENDAR
   PROFILE:JOURNAL-REQUEST
   PRODID:-//RDU Software//NONSGML HandCal//EN
   VERSION:2.0
   BEGIN:VJOURNAL
   UID:guid-1.host1.com-001
   SEQUENCE:1
   RECURRENCE-ID:19970701T210000Z
   DTSTART:19970703T210000Z
   END:VJOURNAL
   END:VCALENDAR




Dawson/Hopson/Mansour/Silverberg   36              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


4.3.3     Modify Exception


   In this example the organizer has already created an exception and
   now wishes to make additional property modification. The organizer
   must use both the RECURRENCE-ID and UID to reference the exception.

   BEGIN:VCALENDAR
   PROFILE:JOURNAL-REQUEST
   PRODID:-//RDU Software//NONSGML HandCal//EN
   VERSION:2.0
   BEGIN:VJOURNAL
   UID:guid-1.host1.com-001
   SEQUENCE:2
   RECURRENCE-ID:19970701T210000Z
   ATTENDEE;ROLE=ORGANIZER;STATUS=ACCEPTED:Sman@netscape.com
   ATTENDEE;EXPECT=REQUEST:fdawson@earthlink.net
   ATTENDEE;EXPECT=REQUEST:Deriks@Microsoft.com
   ATTENDEE;EXPECT=REQUEST:Alecd@Microsoft.com
   ATTENDEE;EXPECT=REQUEST:RHopson@dev.davinci.com
   CLASS:Private
   END:VJOURNAL
   END:VCALENDAR

This example changes the specific instance properties without changing
the recurring meeting parent.


4.3.4     Cancel an Exception


   In the following example, the organizer has created an exception as
   in 4.3.2 and now wishes to cancel it. In this case an JOURNAL-CANCEL
   is sent with the specific RECURRENCE-ID and UID of the exception.

   BEGIN:VCALENDAR
   PROFILE:JOURNAL-CANCEL
   PRODID:-//RDU Software//NONSGML HandCal//EN
   VERSION:2.0
   BEGIN:VJOURNAL
   UID:guid-1.host1.com-001
   RECURRENCE-ID:19970701T210000Z
   SEQUENCE:2
   STATUS:CANCELLED
   END:VJOURNAL
   END:VCALENDAR

4.3.5     Cancel Recurring Journal


   In this example the organizer wishes to cancel the entire recurring
   journal and any child exceptions.

   BEGIN:VCALENDAR
   PROFILE:JOURNAL-CANCEL
   PRODID:-//RDU Software//NONSGML HandCal//EN



Dawson/Hopson/Mansour/Silverberg   37              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


   VERSION:2.0
   BEGIN:VJOURNAL
   UID:guid-1.host1.com-001
   SEQUENCE:2
   STATUS:CANCELLED
   END:VJOURNAL
   END:VCALENDAR


4.3.6     Decline A Previously Accepted Exception


   In this example a recipient has accepted a JOURNAL-REQUEST which is
   actually an exception. The recipient now wishes to decline after
   previously accepting

   Recipient initially accepts journal request:

   BEGIN:VCALENDAR
   PROFILE:JOURNAL-REPLY
   VERSION:2.0
   PRODID:-//ABC Corporation//NONSGML My Product//EN
   BEGIN:VJOURNAL
   SEQUENCE:1
   RESPONSE-SEQUENCE:0
   DTSTAMP:19970601T230000Z
   UID:guid-1.host1.com-001
   RECURRENCE-ID:19970701T210000Z
   ATTENDEE;STATUS=CONFIRMED:Deriks@Microsoft.com
   REQUEST-STATUS:0;Success
   END:VJOURNAL
   END:VCALENDAR

   Recipient later wishes to decline the request to a recurring
   exception:

   BEGIN:VCALENDAR
   PROFILE:JOURNAL-REPLY
   VERSION:2.0
   PRODID:-//ABC Corporation//NONSGML My Product//EN
   BEGIN:VJOURNAL
   SEQUENCE:0
   RESPONSE-SEQUENCE:0
   REQUEST-STATUS:0;Success
   UID:guid-1.host1.com
   RECURRENCE-ID:19970701T210000Z
   ATTENDEE;STATUS=Declined:Deriks@Microsoft.com
   END:VJOURNAL

   END:VCALENDAR







Dawson/Hopson/Mansour/Silverberg   38              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


5.   Application Protocol Fallbacks


   Applications that support iTIP are not required to support the entire
   protocol. The following describes how profiles and properties should
   "fallback" in applications that do not support the complete protocol.
   If a profile or property is not addressed in this section, it may be
   safely ignored.

5.1  ICalendar Profile Types




        Profile           Fallback


        JOURNAL-          Implementations may ignore the profile
        PUBLISH           type. The REQUEST-STATUS "302;Request not
                          supported" must be returned.


        JOURNAL-          Implementations may ignore the profile
        CANCEL            type. The REQUEST-STATUS "302;Request not
                          supported" must be returned.


        JOURNAL-          JOURNAL-PUBLISH or it's fallback.
        REQUEST


        JOURNAL-REPLY     Implementations may ignore the profile
                          type. The REQUEST-STATUS "302;Request not
                          supported" must be returned.




5.2  Calendar Components




        Component         Fallback


        VTIMEZONE         Required if RRULE or RDATE is
                          implemented; otherwise ignore and use
                          local time.




5.3  Calendar Properties




        Property          Fallback


        CALSCALE          Ignore; assume GREGORIAN.





Dawson/Hopson/Mansour/Silverberg   39              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997




        GEO               Ignore.


        PRODID            Ignore.


        PROFILE           Required as described in the Profiles
                          section above.


        PROFILE-          Assume "1.0".
        VERSION


        SOURCE            Ignore


        NAME              Ignore.


        VERSION           Assume "2.0".




5.4  Component Properties




         Property        Fallback


         ATTACH          Ignore.


         ATTENDEE        Required if JOURNAL-REQUEST is
                          implemented; otherwise ignore.


         CATEGORIES      Ignore.


         CLASS           Ignore.


         COMMENT         Ignore.


         CREATED         Ignore.


         DAYLIGHT        Required if VTIMEZONE is implemented;
                          otherwise Ignore.


         DESCRIPTION     Required.


         DTSTART         Required.


         DTEND           Required.


         EXDATE          Ignore.


         EXRULE          Ignore.


         LAST-           Ignore.



Dawson/Hopson/Mansour/Silverberg   40              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997



         MODIFIED


         RELATED-TO      Ignore.


         RDATE           Ignore. If implemented, VTIMEZONE must
                          also be implemented.


         RRULE           Ignore. The first instance occurs on
                          the DTStart property.


         RESPONSE-       Required on JOURNAL-REPLY, otherwise
         SEQUENCE        ignore.


         SEQUENCE        Required.


         STATUS          Ignore.


         TRANSP          Required if FREEBUSY is implemented;
                          otherwise ignore.


         TZNAME          Required if VTIMEZONE is implemented;
                          otherwise ignore.


         TZOFFSET        Required if VTIMEZONE is implemented;
                          otherwise ignore.


         TZTRANS         Required if VTIMEZONE is implemented;
                          otherwise ignore.


         URL             Ignore.


         UID             Required.


         X-              Ignore.




5.5  Latency Issues


   With a store-and-forward transport, it is possible for requests to
   arrive out of sequence. That is, an implementation may receive a
   JOURNAL-CANCEL notification prior to receiving the original journal
   request. This section discusses a few of these scenarios.

5.5.1     Cancelation of an Unknown Journal Entry.


   When a JOURNAL-CANCEL request is received before the original
   JOURNAL-REQUEST the calendar will be unable to correlate the UID of
   the cancellation with an existing journal entry. It is suggested that
   messages that cannot be correlated that also contain non-zero
   sequence numbers be held and not discarded. Implementations can age




Dawson/Hopson/Mansour/Silverberg   41              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


   them out if no other messages arrive with the same UID and a lower
   sequence number.

5.6  Sequence Number


   Under some conditions, a CUA may receive requests and replies with
   the same SEQUENCE number. DTSTAMP is added to act as a tiebreaker
   when two items with the same SEQUENCE number are evaluated.
   Furthermore, the SEQUENCE number is only incremented when one or more
   of the following properties changes:



    DTSTART

    DTEND (for Events)

    LOCATION

    DUE (for To-dos)

6.   Security Considerations


   ITIP outlines an abstract transport protocol which will be bound to a
   real-time transport, a store-and-forward transport, and perhaps other
   transports. The transport protocol provides facilities for simple
   authentication using a clear text password, as well as any SASL
   mechanism [SASL]. SASL allows for integrity and privacy services to
   be negotiated.

   Use of clear text password is strongly discouraged where the
   underlying transport service cannot guarantee confidentiality and may
   result in disclosure of the password to unauthorized parties.

7.   Acknowledgments


   A hearty thanks to the following individuals who have participated in
   the drafting, review and discussion of this memo:

   Anik Ganguly, Bruce Kahn, Don Lavange, Leo Parker, John Rose, Vinod
   Seraphin, Richard Shusterman, Derik Stenerson, Kevin Tsurutome.

8.   Bibliography


   [ID-DT] "Date and Time on the Internet", Internet-Draft, December
   1996, http://www.imc.org/draft-newman-datetime.

   [ICAL] "Internet Calendaring and Scheduling Core Object Specification
   - iCalendar", Internet-Draft, July 1997, ftp://ftp.ietf.org/internet-
   drafts/draft-ietf-calsch-ical-02.txt.

   [ICMS] "Internet Calendaring Model Specification", Internet-Draft,
   July 1997, ftp://ftp.ietf.org/internet-drafts/draft-ietf-calsch-mod-
   00.txt.





Dawson/Hopson/Mansour/Silverberg   42              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


   [ITIP-1] "iCalendar Transport-Independent Interoperability Protocol
   (iTIP) - Part 1: Scheduling Events and Busytime", Internet-Draft,
   July 1997, http://www.imc.org/draft-ietf-calsch-itip-part1-00.txt.

   [ITIP-2] "iCalendar Transport-Independent Interoperability Protocol
   (iTIP) - Part 2: Scheduling To-dos", Internet-Draft, July 1997,
   http://www.imc.org/draft-ietf-calsch-itip-part2-00.txt

   [ID-UTF8] "UTF-8, a transformation format of Unicode and ISO 10646",
   Internet-Draft, July,1996, ftp://ftp.ietf.org/internet-drafts/draft-
   yergeau-utf8-01.txt.

   [ISO8601] "Data elements and interchange formats - information
   interchange - Representation of dates and times", ISO 8601, 1996-06-
   15, +1 (212) 642-4900 for ANSI Sales.

   [RFC2045] N. Freed and N. Borenstein, "Multipurpose Internet Mail
   Extensions - Part One - Format of Internet Message Bodies", RFC 2045,
   Innosoft, First Virtual, November 1996,
   http://www.imc.org/rfc2045.txt.

   [RFC2046] N. Freed and N. Borenstein, "Multipurpose Internet Mail
   Extensions - Part Two - Media Types", RFC 2046, Innosoft, First
   Virtual, November 1996, http://www.imc.org/rfc2046.txt.

   [UNICODE] The Unicode Consortium, "The Unicode Standard -Version
   2.0", Addison-Wesley Developers Press, July 1996. UTF-8 is described
   in section A-2.

   [US-ASCII] Coded Character Set--7-bit American Standard Code for
   Information Interchange, ANSI X3.4-1986.

9.   Authors Addresses


   The following address information is provided in a MIME-VCARD,
   Electronic Business Card, format.

   The authors of this draft are:

   BEGIN:VCARD
   FN:Frank Dawson
   ORG:Lotus Development Corporation
   ADR;WORK;POSTAL;PARCEL:;;6544 Battleford Drive;Raleigh;NC;27613-
   3502;USA
   TEL;WORK;MSG:+1-919-676-9515
   TEL;WORK;FAX:+1-919-676-9564
   EMAIL;INTERNET:fdawson@earthlink.net
   URL:http://home.earthlink.net/~fdawson
   END:VCARD

   BEGIN:VCARD
   FN:Ross Hopson
   ORG:On Technology, Inc.



Dawson/Hopson/Mansour/Silverberg   43              Expires January 1998



Internet Draft iTIP-Part Three-Scheduling Journal Entries July 18, 1997


   ADR;WORK;POSTAL;PARCEL:Suite 1600;;434 Fayetteville St.
    Mall, Two Hannover Square;Raleigh;NC;27601
   TEL;WORK;MSG:+1-919-890-4036
   TEL;WORK;FAX:+1-919-890-4100
   EMAIL;INTERNET:rhopson@on.com
   END:VCARD

   BEGIN:VCARD
   FN:Steve Mansour
   ORG:Netscape Communications Corporation
   ADR;WORK;POSTAL;PARCEL:;;501 East Middlefield Road;Mountain
   View;CA;94043;USA
   TEL;WORK;MSG:+1-415-937-2378
   TEL;WORK;FAX:+1-415-428-4059
   EMAIL;INTERNET:sman@netscape.com
   END:VCARD

   BEGIN:VCARD
   FN:Steve Silverberg
   ORG:Microsoft Corporation
   ADR;WORK;POSTAL;PARCEL:;;One Microsoft Way;
   Redmond;WA;98052-6399;USA
   TEL;WORK;MSG:+1-206-936-9277
   TEL;WORK;FAX:+1-206-936-8019
   EMAIL;INTERNET:stevesil@Exchange.Microsoft.com
   END:VCARD

   The iCalendar Object is a result of the work of the Internet
   Engineering Task Force Calendaring and scheduling Working Group. The
   chairman of that working group is:

   BEGIN:VCARD
   FN:Anik Ganguly
   ORG:OnTime, Inc.
   ADR;WORK;POSTAL;PARCEL:10 Floor;;21700 Northwestern
   Highway;Southfield;MI;48075;USA
   TEL;WORK;MSG:+1-810-559-5955
   TEL;WORK;FAX:+1-810-559-5034
   EMAIL;INTERNET:anik@ontime.com
   END:VCARD
















Dawson/Hopson/Mansour/Silverberg   44              Expires January 1998