Try out our new RRULE tool for creating RRULE compatible strings.

When an "Organizer" modifies a scheduling object resource, the server MUST inspect each "ATTENDEE" property in both the original and modified iCalendar data on a per-instance basis to determine whether to send a scheduling message. The table below indicates the appropriate iTIP method used by the server, taking into account any "SCHEDULE-AGENT" property parameter (see Section 7.1) specified on each "ATTENDEE" property. The values "SERVER", "CLIENT", and "NONE" in the top and left titles of the table refer to the "SCHEDULE-AGENT" parameter value of the "ATTENDEE" property, and the values "" and "" are used to cover the cases where the "ATTENDEE" property is not present (Original) or is being removed (Modified).

+---------------+-----------------------------------------------+
|               |                   Modified                    |
|               +-----------+-----------+-----------+-----------+
|               |  | SERVER    | CLIENT    | NONE      |
|               |           | (default) |           |           |
+===+===========+===========+===========+===========+===========+
|   |   |  --       | REQUEST / | --        | --        |
| O |           |           | ADD       |           |           |
| r +-----------+-----------+-----------+-----------+-----------+
| i | SERVER    |  CANCEL   | REQUEST   | CANCEL    | CANCEL    |
| g | (default) |           |           |           |           |
| i +-----------+-----------+-----------+-----------+-----------+
| n | CLIENT    |  --       | REQUEST / | --        | --        |
| a |           |           | ADD       |           |           |
| l +-----------+-----------+-----------+-----------+-----------+
|   | NONE      |  --       | REQUEST / | --        | --        |
|   |           |           | ADD       |           |           |
+---+-----------+-----------+-----------+-----------+-----------+

"SCHEDULE-STATUS" iCalendar property parameters are added or changed on "ATTENDEE" iCalendar properties in the scheduling object resource being modified as described in Section 7.3, with the value set as described in Section 3.2.9. This will result in the created calendar object resource differing from the calendar data sent in the HTTP request. As a result, clients MAY reload the calendar data from the server in order to update to the new server-generated state information.

The server MUST return an error with the CALDAV:allowed-organizer- scheduling-object-change precondition code (Section 3.2.4.3) when the "Organizer" attempts to change the iCalendar data in a manner that is forbidden.

This document was automatically converted to XHTML using an RFC to HTML converter with the original text document at the Internet Engineering Task Force web site at ietf.org .  The original text document should be referred to if there are any errors or discrepancies found in this document.

Need to test your iCalendar feeds?

The iCalendar Validator provides developers and testers a method to validate their iCalendar feeds, which can take data from either a URL, file or text snippet and compare it against the RFC 5545 specification.  We believe we have one of the best iCalendar validation tools available on the internet. More information about the validator can be found here.