draft-ietf-calsify-rfc2445bis-04.txt   draft-ietf-calsify-rfc2445bis-05.txt 
Network Working Group B. Desruisseaux, Ed. Network Working Group B. Desruisseaux, Ed.
Internet-Draft Oracle Internet-Draft Oracle
Obsoletes: 2445 (if approved) January 17, 2007 Obsoletes: 2445 (if approved) January 29, 2007
Intended status: Standards Track Intended status: Standards Track
Expires: July 21, 2007 Expires: August 2, 2007
Internet Calendaring and Scheduling Core Object Specification Internet Calendaring and Scheduling Core Object Specification
(iCalendar) (iCalendar)
draft-ietf-calsify-rfc2445bis-04 draft-ietf-calsify-rfc2445bis-05
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 1, line 36 skipping to change at page 1, line 36
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on July 21, 2007. This Internet-Draft will expire on August 2, 2007.
Copyright Notice Copyright Notice
Copyright (C) The Internet Society (2007). Copyright (C) The IETF Trust (2007).
Abstract Abstract
This document defines a MIME media type for representing and This document defines a MIME media type for representing and
exchanging calendaring and scheduling information such as events, to- exchanging calendaring and scheduling information such as events, to-
dos, journal entries and free/busy information. The definition of dos, journal entries and free/busy information. The definition of
the text/calendar media type, known as iCalendar, is independent of the text/calendar media type, known as iCalendar, is independent of
any particular calendar service or protocol. any particular calendar service or protocol.
Editorial Note (To be removed by RFC Editor before publication) Editorial Note (To be removed by RFC Editor before publication)
skipping to change at page 2, line 18 skipping to change at page 2, line 18
Standards Simplification (Calsify) working group of the Internet Standards Simplification (Calsify) working group of the Internet
Engineering Task Force. Comments on this draft are welcomed, and Engineering Task Force. Comments on this draft are welcomed, and
should be addressed to the ietf-calsify@osafoundation.org [1] mailing should be addressed to the ietf-calsify@osafoundation.org [1] mailing
list. The issues raised on this mailing list are being tracked at list. The issues raised on this mailing list are being tracked at
the following web site: the following web site:
http://www.ofcourseimright.com/cgi-bin/roundup/calsify. http://www.ofcourseimright.com/cgi-bin/roundup/calsify.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 6 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 6
2. Basic Grammar and Conventions . . . . . . . . . . . . . . . . 6 2. Basic Grammar and Conventions . . . . . . . . . . . . . . . . 7
2.1. Formatting Conventions . . . . . . . . . . . . . . . . . 7 2.1. Formatting Conventions . . . . . . . . . . . . . . . . . 7
2.2. Related Memos . . . . . . . . . . . . . . . . . . . . . . 8 2.2. Related Memos . . . . . . . . . . . . . . . . . . . . . . 8
2.3. International Considerations . . . . . . . . . . . . . . 8 2.3. International Considerations . . . . . . . . . . . . . . 8
3. iCalendar Object Specification . . . . . . . . . . . . . . . 9 3. iCalendar Object Specification . . . . . . . . . . . . . . . 9
3.1. Content Lines . . . . . . . . . . . . . . . . . . . . . . 9 3.1. Content Lines . . . . . . . . . . . . . . . . . . . . . . 9
3.1.1. List and Field Separators . . . . . . . . . . . . . . 12 3.1.1. List and Field Separators . . . . . . . . . . . . . . 11
3.1.2. Multiple Values . . . . . . . . . . . . . . . . . . . 13 3.1.2. Multiple Values . . . . . . . . . . . . . . . . . . . 12
3.1.3. Binary Content . . . . . . . . . . . . . . . . . . . 13 3.1.3. Binary Content . . . . . . . . . . . . . . . . . . . 12
3.1.4. Character Set . . . . . . . . . . . . . . . . . . . . 14 3.1.4. Character Set . . . . . . . . . . . . . . . . . . . . 13
3.2. Property Parameters . . . . . . . . . . . . . . . . . . . 14 3.2. Property Parameters . . . . . . . . . . . . . . . . . . . 13
3.2.1. Alternate Text Representation . . . . . . . . . . . . 15 3.2.1. Alternate Text Representation . . . . . . . . . . . . 14
3.2.2. Common Name . . . . . . . . . . . . . . . . . . . . . 16 3.2.2. Common Name . . . . . . . . . . . . . . . . . . . . . 15
3.2.3. Calendar User Type . . . . . . . . . . . . . . . . . 17 3.2.3. Calendar User Type . . . . . . . . . . . . . . . . . 16
3.2.4. Delegators . . . . . . . . . . . . . . . . . . . . . 17 3.2.4. Delegators . . . . . . . . . . . . . . . . . . . . . 16
3.2.5. Delegatees . . . . . . . . . . . . . . . . . . . . . 18 3.2.5. Delegatees . . . . . . . . . . . . . . . . . . . . . 17
3.2.6. Directory Entry Reference . . . . . . . . . . . . . . 18 3.2.6. Directory Entry Reference . . . . . . . . . . . . . . 17
3.2.7. Inline Encoding . . . . . . . . . . . . . . . . . . . 19 3.2.7. Inline Encoding . . . . . . . . . . . . . . . . . . . 18
3.2.8. Format Type . . . . . . . . . . . . . . . . . . . . . 20 3.2.8. Format Type . . . . . . . . . . . . . . . . . . . . . 19
3.2.9. Free/Busy Time Type . . . . . . . . . . . . . . . . . 20 3.2.9. Free/Busy Time Type . . . . . . . . . . . . . . . . . 19
3.2.10. Language . . . . . . . . . . . . . . . . . . . . . . 21 3.2.10. Language . . . . . . . . . . . . . . . . . . . . . . 20
3.2.11. Group or List Membership . . . . . . . . . . . . . . 22 3.2.11. Group or List Membership . . . . . . . . . . . . . . 21
3.2.12. Participation Status . . . . . . . . . . . . . . . . 23 3.2.12. Participation Status . . . . . . . . . . . . . . . . 21
3.2.13. Alarm Trigger Relationship . . . . . . . . . . . . . 25 3.2.13. Alarm Trigger Relationship . . . . . . . . . . . . . 23
3.2.14. Relationship Type . . . . . . . . . . . . . . . . . . 25 3.2.14. Relationship Type . . . . . . . . . . . . . . . . . . 23
3.2.15. Participation Role . . . . . . . . . . . . . . . . . 26 3.2.15. Participation Role . . . . . . . . . . . . . . . . . 24
3.2.16. RSVP Expectation . . . . . . . . . . . . . . . . . . 27 3.2.16. RSVP Expectation . . . . . . . . . . . . . . . . . . 25
3.2.17. Sent By . . . . . . . . . . . . . . . . . . . . . . . 27 3.2.17. Sent By . . . . . . . . . . . . . . . . . . . . . . . 25
3.2.18. Time Zone Identifier . . . . . . . . . . . . . . . . 28 3.2.18. Time Zone Identifier . . . . . . . . . . . . . . . . 26
3.2.19. Value Data Types . . . . . . . . . . . . . . . . . . 29 3.2.19. Value Data Types . . . . . . . . . . . . . . . . . . 27
3.3. Property Value Data Types . . . . . . . . . . . . . . . . 30 3.3. Property Value Data Types . . . . . . . . . . . . . . . . 28
3.3.1. Binary . . . . . . . . . . . . . . . . . . . . . . . 30 3.3.1. Binary . . . . . . . . . . . . . . . . . . . . . . . 28
3.3.2. Boolean . . . . . . . . . . . . . . . . . . . . . . . 31 3.3.2. Boolean . . . . . . . . . . . . . . . . . . . . . . . 29
3.3.3. Calendar User Address . . . . . . . . . . . . . . . . 32 3.3.3. Calendar User Address . . . . . . . . . . . . . . . . 30
3.3.4. Date . . . . . . . . . . . . . . . . . . . . . . . . 32 3.3.4. Date . . . . . . . . . . . . . . . . . . . . . . . . 30
3.3.5. Date-Time . . . . . . . . . . . . . . . . . . . . . . 33 3.3.5. Date-Time . . . . . . . . . . . . . . . . . . . . . . 31
3.3.6. Duration . . . . . . . . . . . . . . . . . . . . . . 35 3.3.6. Duration . . . . . . . . . . . . . . . . . . . . . . 33
3.3.7. Float . . . . . . . . . . . . . . . . . . . . . . . . 36 3.3.7. Float . . . . . . . . . . . . . . . . . . . . . . . . 34
3.3.8. Integer . . . . . . . . . . . . . . . . . . . . . . . 36 3.3.8. Integer . . . . . . . . . . . . . . . . . . . . . . . 35
3.3.9. Period of Time . . . . . . . . . . . . . . . . . . . 37 3.3.9. Period of Time . . . . . . . . . . . . . . . . . . . 35
3.3.10. Recurrence Rule . . . . . . . . . . . . . . . . . . . 38 3.3.10. Recurrence Rule . . . . . . . . . . . . . . . . . . . 36
3.3.11. Text . . . . . . . . . . . . . . . . . . . . . . . . 44 3.3.11. Text . . . . . . . . . . . . . . . . . . . . . . . . 42
3.3.12. Time . . . . . . . . . . . . . . . . . . . . . . . . 45 3.3.12. Time . . . . . . . . . . . . . . . . . . . . . . . . 43
3.3.13. URI . . . . . . . . . . . . . . . . . . . . . . . . . 48 3.3.13. URI . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.3.14. UTC Offset . . . . . . . . . . . . . . . . . . . . . 48 3.3.14. UTC Offset . . . . . . . . . . . . . . . . . . . . . 46
3.4. iCalendar Object . . . . . . . . . . . . . . . . . . . . 49 3.4. iCalendar Object . . . . . . . . . . . . . . . . . . . . 47
3.5. Property . . . . . . . . . . . . . . . . . . . . . . . . 50 3.5. Property . . . . . . . . . . . . . . . . . . . . . . . . 47
3.6. Calendar Components . . . . . . . . . . . . . . . . . . . 50 3.6. Calendar Components . . . . . . . . . . . . . . . . . . . 48
3.6.1. Event Component . . . . . . . . . . . . . . . . . . . 51 3.6.1. Event Component . . . . . . . . . . . . . . . . . . . 49
3.6.2. To-do Component . . . . . . . . . . . . . . . . . . . 54 3.6.2. To-do Component . . . . . . . . . . . . . . . . . . . 52
3.6.3. Journal Component . . . . . . . . . . . . . . . . . . 56 3.6.3. Journal Component . . . . . . . . . . . . . . . . . . 54
3.6.4. Free/Busy Component . . . . . . . . . . . . . . . . . 58 3.6.4. Free/Busy Component . . . . . . . . . . . . . . . . . 56
3.6.5. Time Zone Component . . . . . . . . . . . . . . . . . 61 3.6.5. Time Zone Component . . . . . . . . . . . . . . . . . 59
3.6.6. Alarm Component . . . . . . . . . . . . . . . . . . . 69 3.6.6. Alarm Component . . . . . . . . . . . . . . . . . . . 67
3.7. Calendar Properties . . . . . . . . . . . . . . . . . . . 75 3.7. Calendar Properties . . . . . . . . . . . . . . . . . . . 73
3.7.1. Calendar Scale . . . . . . . . . . . . . . . . . . . 75 3.7.1. Calendar Scale . . . . . . . . . . . . . . . . . . . 73
3.7.2. Method . . . . . . . . . . . . . . . . . . . . . . . 76 3.7.2. Method . . . . . . . . . . . . . . . . . . . . . . . 74
3.7.3. Product Identifier . . . . . . . . . . . . . . . . . 77 3.7.3. Product Identifier . . . . . . . . . . . . . . . . . 75
3.7.4. Version . . . . . . . . . . . . . . . . . . . . . . . 78 3.7.4. Version . . . . . . . . . . . . . . . . . . . . . . . 76
3.8. Component Properties . . . . . . . . . . . . . . . . . . 79 3.8. Component Properties . . . . . . . . . . . . . . . . . . 77
3.8.1. Descriptive Component Properties . . . . . . . . . . 79 3.8.1. Descriptive Component Properties . . . . . . . . . . 77
3.8.1.1. Attachment . . . . . . . . . . . . . . . . . . . 79 3.8.1.1. Attachment . . . . . . . . . . . . . . . . . . . 77
3.8.1.2. Categories . . . . . . . . . . . . . . . . . . . 80 3.8.1.2. Categories . . . . . . . . . . . . . . . . . . . 78
3.8.1.3. Classification . . . . . . . . . . . . . . . . . 81 3.8.1.3. Classification . . . . . . . . . . . . . . . . . 79
3.8.1.4. Comment . . . . . . . . . . . . . . . . . . . . . 82 3.8.1.4. Comment . . . . . . . . . . . . . . . . . . . . . 80
3.8.1.5. Description . . . . . . . . . . . . . . . . . . . 83 3.8.1.5. Description . . . . . . . . . . . . . . . . . . . 81
3.8.1.6. Geographic Position . . . . . . . . . . . . . . . 84 3.8.1.6. Geographic Position . . . . . . . . . . . . . . . 82
3.8.1.7. Location . . . . . . . . . . . . . . . . . . . . 86 3.8.1.7. Location . . . . . . . . . . . . . . . . . . . . 84
3.8.1.8. Percent Complete . . . . . . . . . . . . . . . . 87 3.8.1.8. Percent Complete . . . . . . . . . . . . . . . . 85
3.8.1.9. Priority . . . . . . . . . . . . . . . . . . . . 88 3.8.1.9. Priority . . . . . . . . . . . . . . . . . . . . 86
3.8.1.10. Resources . . . . . . . . . . . . . . . . . . . . 90 3.8.1.10. Resources . . . . . . . . . . . . . . . . . . . . 88
3.8.1.11. Status . . . . . . . . . . . . . . . . . . . . . 91 3.8.1.11. Status . . . . . . . . . . . . . . . . . . . . . 89
3.8.1.12. Summary . . . . . . . . . . . . . . . . . . . . . 92 3.8.1.12. Summary . . . . . . . . . . . . . . . . . . . . . 90
3.8.2. Date and Time Component Properties . . . . . . . . . 93 3.8.2. Date and Time Component Properties . . . . . . . . . 91
3.8.2.1. Date/Time Completed . . . . . . . . . . . . . . . 93 3.8.2.1. Date/Time Completed . . . . . . . . . . . . . . . 91
3.8.2.2. Date/Time End . . . . . . . . . . . . . . . . . . 94 3.8.2.2. Date/Time End . . . . . . . . . . . . . . . . . . 92
3.8.2.3. Date/Time Due . . . . . . . . . . . . . . . . . . 95 3.8.2.3. Date/Time Due . . . . . . . . . . . . . . . . . . 93
3.8.2.4. Date/Time Start . . . . . . . . . . . . . . . . . 96 3.8.2.4. Date/Time Start . . . . . . . . . . . . . . . . . 94
3.8.2.5. Duration . . . . . . . . . . . . . . . . . . . . 97 3.8.2.5. Duration . . . . . . . . . . . . . . . . . . . . 95
3.8.2.6. Free/Busy Time . . . . . . . . . . . . . . . . . 98 3.8.2.6. Free/Busy Time . . . . . . . . . . . . . . . . . 96
3.8.2.7. Time Transparency . . . . . . . . . . . . . . . . 100 3.8.2.7. Time Transparency . . . . . . . . . . . . . . . . 98
3.8.3. Time Zone Component Properties . . . . . . . . . . . 101 3.8.3. Time Zone Component Properties . . . . . . . . . . . 99
3.8.3.1. Time Zone Identifier . . . . . . . . . . . . . . 101 3.8.3.1. Time Zone Identifier . . . . . . . . . . . . . . 99
3.8.3.2. Time Zone Name . . . . . . . . . . . . . . . . . 102 3.8.3.2. Time Zone Name . . . . . . . . . . . . . . . . . 100
3.8.3.3. Time Zone Offset From . . . . . . . . . . . . . . 103 3.8.3.3. Time Zone Offset From . . . . . . . . . . . . . . 101
3.8.3.4. Time Zone Offset To . . . . . . . . . . . . . . . 104 3.8.3.4. Time Zone Offset To . . . . . . . . . . . . . . . 102
3.8.3.5. Time Zone URL . . . . . . . . . . . . . . . . . . 105 3.8.3.5. Time Zone URL . . . . . . . . . . . . . . . . . . 103
3.8.4. Relationship Component Properties . . . . . . . . . . 105 3.8.4. Relationship Component Properties . . . . . . . . . . 103
3.8.4.1. Attendee . . . . . . . . . . . . . . . . . . . . 106 3.8.4.1. Attendee . . . . . . . . . . . . . . . . . . . . 104
3.8.4.2. Contact . . . . . . . . . . . . . . . . . . . . . 108 3.8.4.2. Contact . . . . . . . . . . . . . . . . . . . . . 106
3.8.4.3. Organizer . . . . . . . . . . . . . . . . . . . . 110 3.8.4.3. Organizer . . . . . . . . . . . . . . . . . . . . 108
3.8.4.4. Recurrence ID . . . . . . . . . . . . . . . . . . 111 3.8.4.4. Recurrence ID . . . . . . . . . . . . . . . . . . 109
3.8.4.5. Related To . . . . . . . . . . . . . . . . . . . 113 3.8.4.5. Related To . . . . . . . . . . . . . . . . . . . 111
3.8.4.6. Uniform Resource Locator . . . . . . . . . . . . 115 3.8.4.6. Uniform Resource Locator . . . . . . . . . . . . 113
3.8.4.7. Unique Identifier . . . . . . . . . . . . . . . . 115 3.8.4.7. Unique Identifier . . . . . . . . . . . . . . . . 113
3.8.5. Recurrence Component Properties . . . . . . . . . . . 117 3.8.5. Recurrence Component Properties . . . . . . . . . . . 115
3.8.5.1. Exception Date/Times . . . . . . . . . . . . . . 117 3.8.5.1. Exception Date/Times . . . . . . . . . . . . . . 115
3.8.5.2. Recurrence Date/Times . . . . . . . . . . . . . . 119 3.8.5.2. Recurrence Date/Times . . . . . . . . . . . . . . 117
3.8.5.3. Recurrence Rule . . . . . . . . . . . . . . . . . 120 3.8.5.3. Recurrence Rule . . . . . . . . . . . . . . . . . 118
3.8.6. Alarm Component Properties . . . . . . . . . . . . . 130 3.8.6. Alarm Component Properties . . . . . . . . . . . . . 128
3.8.6.1. Action . . . . . . . . . . . . . . . . . . . . . 130 3.8.6.1. Action . . . . . . . . . . . . . . . . . . . . . 128
3.8.6.2. Repeat Count . . . . . . . . . . . . . . . . . . 131 3.8.6.2. Repeat Count . . . . . . . . . . . . . . . . . . 129
3.8.6.3. Trigger . . . . . . . . . . . . . . . . . . . . . 132 3.8.6.3. Trigger . . . . . . . . . . . . . . . . . . . . . 130
3.8.7. Change Management Component Properties . . . . . . . 134 3.8.7. Change Management Component Properties . . . . . . . 132
3.8.7.1. Date/Time Created . . . . . . . . . . . . . . . . 135 3.8.7.1. Date/Time Created . . . . . . . . . . . . . . . . 133
3.8.7.2. Date/Time Stamp . . . . . . . . . . . . . . . . . 135 3.8.7.2. Date/Time Stamp . . . . . . . . . . . . . . . . . 133
3.8.7.3. Last Modified . . . . . . . . . . . . . . . . . . 136 3.8.7.3. Last Modified . . . . . . . . . . . . . . . . . . 134
3.8.7.4. Sequence Number . . . . . . . . . . . . . . . . . 137 3.8.7.4. Sequence Number . . . . . . . . . . . . . . . . . 135
3.8.8. Miscellaneous Component Properties . . . . . . . . . 139 3.8.8. Miscellaneous Component Properties . . . . . . . . . 137
3.8.8.1. Non-standard Properties . . . . . . . . . . . . . 139 3.8.8.1. Non-standard Properties . . . . . . . . . . . . . 137
3.8.8.2. Request Status . . . . . . . . . . . . . . . . . 140 3.8.8.2. Request Status . . . . . . . . . . . . . . . . . 138
4. iCalendar Object Examples . . . . . . . . . . . . . . . . . . 143 4. iCalendar Object Examples . . . . . . . . . . . . . . . . . . 141
5. Recommended Practices . . . . . . . . . . . . . . . . . . . . 147 5. Recommended Practices . . . . . . . . . . . . . . . . . . . . 145
6. Registration of Content Type Elements . . . . . . . . . . . . 148 6. Registration of Content Type Elements . . . . . . . . . . . . 146
6.1. Registration of New and Modified iCalendar Object 6.1. Registration of New and Modified iCalendar Object
Methods . . . . . . . . . . . . . . . . . . . . . . . . . 148 Methods . . . . . . . . . . . . . . . . . . . . . . . . . 146
6.2. Registration of New Properties . . . . . . . . . . . . . 149 6.2. Registration of New Properties . . . . . . . . . . . . . 147
6.2.1. Define the property . . . . . . . . . . . . . . . . . 149 6.2.1. Define the property . . . . . . . . . . . . . . . . . 147
6.2.2. Post the Property definition . . . . . . . . . . . . 150 6.2.2. Post the Property definition . . . . . . . . . . . . 148
6.2.3. Allow a comment period . . . . . . . . . . . . . . . 150 6.2.3. Allow a comment period . . . . . . . . . . . . . . . 148
6.2.4. Submit the property for approval . . . . . . . . . . 150 6.2.4. Submit the property for approval . . . . . . . . . . 148
6.3. Property Change Control . . . . . . . . . . . . . . . . . 151 6.3. Property Change Control . . . . . . . . . . . . . . . . . 149
7. Internationalization Considerations . . . . . . . . . . . . . 151 7. Internationalization Considerations . . . . . . . . . . . . . 149
8. Security Considerations . . . . . . . . . . . . . . . . . . . 151 8. Security Considerations . . . . . . . . . . . . . . . . . . . 149
9. IANA Consideration . . . . . . . . . . . . . . . . . . . . . 152 9. IANA Consideration . . . . . . . . . . . . . . . . . . . . . 150
9.1. Media Type Registration Information . . . . . . . . . . . 152 9.1. Media Type Registration Information . . . . . . . . . . . 150
10. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 155 10. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 153
11. References . . . . . . . . . . . . . . . . . . . . . . . . . 156 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 154
11.1. Normative References . . . . . . . . . . . . . . . . . . 156 11.1. Normative References . . . . . . . . . . . . . . . . . . 154
11.2. Informative References . . . . . . . . . . . . . . . . . 157 11.2. Informative References . . . . . . . . . . . . . . . . . 155
Appendix A. Differences from RFC 2445 . . . . . . . . . . . . . 157 Appendix A. Differences from RFC 2445 . . . . . . . . . . . . . 156
A.1. New restrictions . . . . . . . . . . . . . . . . . . . . 158 A.1. New restrictions . . . . . . . . . . . . . . . . . . . . 156
A.2. Deprecated features . . . . . . . . . . . . . . . . . . . 158 A.2. Deprecated features . . . . . . . . . . . . . . . . . . . 156
Appendix B. Change Log (to be removed by RFC Editor before Appendix B. Change Log (to be removed by RFC Editor before
publication) . . . . . . . . . . . . . . . . . . . . 158 publication) . . . . . . . . . . . . . . . . . . . . 156
B.1. Changes in -04 . . . . . . . . . . . . . . . . . . . . . 158 B.1. Changes in -05 . . . . . . . . . . . . . . . . . . . . . 156
B.2. Changes in -03 . . . . . . . . . . . . . . . . . . . . . 159 B.2. Changes in -04 . . . . . . . . . . . . . . . . . . . . . 157
B.3. Changes in -02 . . . . . . . . . . . . . . . . . . . . . 160 B.3. Changes in -03 . . . . . . . . . . . . . . . . . . . . . 158
B.4. Changes in -01 . . . . . . . . . . . . . . . . . . . . . 161 B.4. Changes in -02 . . . . . . . . . . . . . . . . . . . . . 159
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 161 B.5. Changes in -01 . . . . . . . . . . . . . . . . . . . . . 159
Intellectual Property and Copyright Statements . . . . . . . . . 162 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 160
Intellectual Property and Copyright Statements . . . . . . . . . 161
1. Introduction 1. Introduction
The use of calendaring and scheduling has grown considerably in the The use of calendaring and scheduling has grown considerably in the
last decade. Enterprise and inter-enterprise business has become last decade. Enterprise and inter-enterprise business has become
dependent on rapid scheduling of events and actions using this dependent on rapid scheduling of events and actions using this
information technology. However, the longer term growth of information technology. However, the longer term growth of
calendaring and scheduling is currently limited by the lack of calendaring and scheduling is currently limited by the lack of
Internet standards for the message content types that are central to Internet standards for the message content types that are central to
these knowledgeware applications. This memo is intended to progress these knowledgeware applications. This memo is intended to progress
skipping to change at page 6, line 46 skipping to change at page 6, line 46
journal entries. The iCalendar object methods can be used to define journal entries. The iCalendar object methods can be used to define
other calendaring and scheduling operations such a requesting for and other calendaring and scheduling operations such a requesting for and
replying with free/busy time data. Such a scheduling protocol is replying with free/busy time data. Such a scheduling protocol is
defined in the iCalendar Transport-independent Interoperability defined in the iCalendar Transport-independent Interoperability
Protocol (iTIP) defined in [I-D.ietf-calsify-2446bis]. Protocol (iTIP) defined in [I-D.ietf-calsify-2446bis].
The memo also includes a formal grammar for the content type based on The memo also includes a formal grammar for the content type based on
the Internet ABNF defined in [RFC4234]. This ABNF is required for the Internet ABNF defined in [RFC4234]. This ABNF is required for
the implementation of parsers and to serve as the definitive the implementation of parsers and to serve as the definitive
reference when ambiguities or questions arise in interpreting the reference when ambiguities or questions arise in interpreting the
descriptive prose definition of the memo. descriptive prose definition of the memo. Additional restrictions
that could not easily be expressed with the ABNF syntax are specified
as comments in the ABNF. Comments with normative statements should
be treated as such.
2. Basic Grammar and Conventions 2. Basic Grammar and Conventions
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY" and "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY" and
"OPTIONAL" in this document are to be interpreted as described in "OPTIONAL" in this document are to be interpreted as described in
[RFC2119]. [RFC2119].
This memo makes use of both a descriptive prose and a more formal This memo makes use of both a descriptive prose and a more formal
notation for defining the calendaring and scheduling format. notation for defining the calendaring and scheduling format.
skipping to change at page 7, line 35 skipping to change at page 7, line 40
conformant with this memo. The information is provided to conformant with this memo. The information is provided to
highlight a particular feature or characteristic of the memo. highlight a particular feature or characteristic of the memo.
The format for the iCalendar object is based on the syntax of the The format for the iCalendar object is based on the syntax of the
text/directory media type [RFC2425]. While the iCalendar object is text/directory media type [RFC2425]. While the iCalendar object is
not a profile of the text/directory media type [RFC2425], it does not a profile of the text/directory media type [RFC2425], it does
reuse a number of the elements from the [RFC2425] specification. reuse a number of the elements from the [RFC2425] specification.
2.1. Formatting Conventions 2.1. Formatting Conventions
The mechanisms defined in this memo are defined in prose. Many of The elements defined in this memo are defined in prose. Many of the
the terms used to describe these have common usage that is different terms used to describe these have common usage that is different than
than the standards usage of this memo. In order to reference within the standards usage of this memo. In order to reference within this
this memo elements of the calendaring and scheduling model, core memo elements of the calendaring and scheduling model, core object
object (this memo) or interoperability protocol (this memo) or interoperability protocol [I-D.ietf-calsify-2446bis]
[I-D.ietf-calsify-2446bis] some formatting conventions have been some formatting conventions have been used. Calendaring and
used. Calendaring and scheduling roles are referred to in quoted- scheduling roles are referred to in quoted-strings of text with the
strings of text with the first character of each word in upper case. first character of each word in upper case. For example, "Organizer"
For example, "Organizer" refers to a role of a "Calendar User" within refers to a role of a "Calendar User" within the scheduling protocol
the scheduling protocol defined by [I-D.ietf-calsify-2446bis]. defined by [I-D.ietf-calsify-2446bis]. Calendar components defined
Calendar components defined by this memo are referred to with by this memo are referred to with capitalized, quoted-strings of
capitalized, quoted-strings of text. All calendar components start text. All calendar components start with the letter "V". For
with the letter "V". For example, "VEVENT" refers to the event example, "VEVENT" refers to the event calendar component, "VTODO"
calendar component, "VTODO" refers to the to-do calendar component refers to the to-do calendar component and "VJOURNAL" refers to the
and "VJOURNAL" refers to the daily journal calendar component. daily journal calendar component. Scheduling methods defined by iTIP
Scheduling methods defined by iTIP [I-D.ietf-calsify-2446bis] are [I-D.ietf-calsify-2446bis] are referred to with capitalized, quoted-
referred to with capitalized, quoted-strings of text. For example, strings of text. For example, "REQUEST" refers to the method for
"REQUEST" refers to the method for requesting a scheduling calendar requesting a scheduling calendar component be created or modified,
component be created or modified, "REPLY" refers to the method a "REPLY" refers to the method a recipient of a request uses to update
recipient of a request uses to update their status with the their status with the "Organizer" of the calendar component.
"Organizer" of the calendar component.
The properties defined by this memo are referred to with capitalized, The properties defined by this memo are referred to with capitalized,
quoted-strings of text, followed by the word "property". For quoted-strings of text, followed by the word "property". For
example, "ATTENDEE" property refers to the iCalendar property used to example, "ATTENDEE" property refers to the iCalendar property used to
convey the calendar address of a calendar user. Property parameters convey the calendar address of a calendar user. Property parameters
defined by this memo are referred to with lowercase, quoted-strings defined by this memo are referred to with lowercase, quoted-strings
of text, followed by the word "parameter". For example, "value" of text, followed by the word "parameter". For example, "value"
parameter refers to the iCalendar property parameter used to override parameter refers to the iCalendar property parameter used to override
the default value type for a property value. Enumerated values the default value type for a property value. Enumerated values
defined by this memo are referred to with capitalized text, either defined by this memo are referred to with capitalized text, either
skipping to change at page 8, line 46 skipping to change at page 8, line 49
This memo does not attempt to repeat the specification of concepts or This memo does not attempt to repeat the specification of concepts or
definitions from these other memos. Where possible, references are definitions from these other memos. Where possible, references are
made to the memo that provides for the specification of these made to the memo that provides for the specification of these
concepts or definitions. concepts or definitions.
2.3. International Considerations 2.3. International Considerations
In the rest of this document, descriptions of characters are of the In the rest of this document, descriptions of characters are of the
form "character name (codepoint)", where "codepoint" is from the US- form "character name (codepoint)", where "codepoint" is from the US-
ASCII character set. The "character name" is the authoritative ASCII character set. The "character name" is the authoritative
description; (codepoint) is a reference to that character in US-ASCII description; (codepoint) is a reference to that character in US-
or US-ASCII compatible sets (for example the ISO-8859-x family, ASCII.
UTF-8, ISO-2022-xx, KOI8-R). If a non-US-ASCII compatible character
set is used, appropriate code-point from that character set MUST be
chosen instead. Use of non-US-ASCII-compatible character sets is NOT
recommended.
3. iCalendar Object Specification 3. iCalendar Object Specification
The following sections define the details of a Calendaring and The following sections define the details of a Calendaring and
Scheduling Core Object Specification. This information is intended Scheduling Core Object Specification. This information is intended
to be an integral part of the MIME content type registration. In to be an integral part of the MIME content type registration. In
addition, this information can be used independent of such content addition, this information can be used independent of such content
registration. In particular, this memo has direct applicability for registration. In particular, this memo has direct applicability for
use as a calendaring and scheduling exchange format in file-, memory- use as a calendaring and scheduling exchange format in file-, memory-
or network-based transport mechanisms. or network-based transport mechanisms.
skipping to change at page 10, line 32 skipping to change at page 10, line 32
; the folding procedure described above. ; the folding procedure described above.
name = iana-token / x-name name = iana-token / x-name
iana-token = 1*(ALPHA / DIGIT / "-") iana-token = 1*(ALPHA / DIGIT / "-")
; iCalendar identifier registered with IANA ; iCalendar identifier registered with IANA
x-name = "X-" [vendorid "-"] 1*(ALPHA / DIGIT / "-") x-name = "X-" [vendorid "-"] 1*(ALPHA / DIGIT / "-")
; Reserved for experimental use. ; Reserved for experimental use.
vendorid = 3*(ALPHA / DIGIT) ;Vendor identification vendorid = 3*(ALPHA / DIGIT)
; Vendor identification
param = param-name "=" param-value param = param-name "=" param-value *("," param-value)
*("," param-value)
; Each property defines the specific ABNF for the parameters ; Each property defines the specific ABNF for the parameters
; allowed on the property. Refer to specific properties for ; allowed on the property. Refer to specific properties for
; precise parameter ABNF. ; precise parameter ABNF.
param-name = iana-token / x-name param-name = iana-token / x-name
param-value = paramtext / quoted-string param-value = paramtext / quoted-string
paramtext = *SAFE-CHAR paramtext = *SAFE-CHAR
value = *VALUE-CHAR value = *VALUE-CHAR
quoted-string = DQUOTE *QSAFE-CHAR DQUOTE quoted-string = DQUOTE *QSAFE-CHAR DQUOTE
QSAFE-CHAR = WSP / %x21 / %x23-7E / NON-US-ASCII
; Any character except CTLs and DQUOTE
SAFE-CHAR = WSP / %x21 / %x23-2B / %x2D-39 / %x3C-7E
/ NON-US-ASCII
; Any character except CTLs, DQUOTE, ";", ":", ","
VALUE-CHAR = WSP / %x21-7E / NON-US-ASCII
; Any textual character
NON-US-ASCII = UTF8-2 / UTF8-3 / UTF8-4
; UTF8-2, UTF8-3, and UTF8-4 are defined in
[RFC3629]
contentline = name *(";" param ) ":" value CRLF
; This ABNF is just a general definition for an initial parsing
; of the content line into its property name, parameter list,
; and value string
; When parsing a content line, folded lines MUST first
; be unfolded according to the unfolding procedure
; described above. When generating a content line, lines
; longer than 75 octets SHOULD be folded according to
; the folding procedure described above.
name = iana-token / x-name
iana-token = 1*(ALPHA / DIGIT / "-")
; iCalendar identifier registered with IANA
x-name = "X-" [vendorid "-"] 1*(ALPHA / DIGIT / "-")
; Reserved for experimental use.
vendorid = 3*(ALPHA / DIGIT) ;Vendor identification
param = param-name "=" param-value
*("," param-value)
; Each property defines the specific ABNF for the parameters
; allowed on the property. Refer to specific properties for
; precise parameter ABNF.
param-name = iana-token / x-name
param-value = paramtext / quoted-string
paramtext = *SAFE-CHAR
value = *VALUE-CHAR
quoted-string = DQUOTE *QSAFE-CHAR DQUOTE
QSAFE-CHAR = WSP / %x21 / %x23-7E / NON-US-ASCII QSAFE-CHAR = WSP / %x21 / %x23-7E / NON-US-ASCII
; Any character except CTLs and DQUOTE ; Any character except CONTROL, DQUOTE, ";", ":", ","
SAFE-CHAR = WSP / %x21 / %x23-2B / %x2D-39 / %x3C-7E SAFE-CHAR = WSP / %x21 / %x23-2B / %x2D-39 / %x3C-7E
/ NON-US-ASCII / NON-US-ASCII
; Any character except CTLs, DQUOTE, ";", ":", "," ; Any character except CONTROL, DQUOTE, ";", ":", ","
VALUE-CHAR = WSP / %x21-7E / NON-US-ASCII VALUE-CHAR = WSP / %x21-7E / NON-US-ASCII
; Any textual character ; Any textual character
NON-US-ASCII = UTF8-2 / UTF8-3 / UTF8-4 NON-US-ASCII = UTF8-2 / UTF8-3 / UTF8-4
; UTF8-2, UTF8-3, and UTF8-4 are defined in ; UTF8-2, UTF8-3, and UTF8-4 are defined in [RFC3629]
CONTROL = %x00-08 / %x0A-1F / %x7F
; All the controls except HTAB
The property value component of a content line has a format that is The property value component of a content line has a format that is
property specific. Refer to the section describing each property for property specific. Refer to the section describing each property for
a definition of this format. a definition of this format.
All names of properties, property parameters, enumerated property All names of properties, property parameters, enumerated property
values and property parameter values are case-insensitive. However, values and property parameter values are case-insensitive. However,
all other property values are case-sensitive, unless otherwise all other property values are case-sensitive, unless otherwise
stated. stated.
skipping to change at page 13, line 33 skipping to change at page 12, line 31
3.1.3. Binary Content 3.1.3. Binary Content
Binary content information in an iCalendar object SHOULD be Binary content information in an iCalendar object SHOULD be
referenced using a URI within a property value. That is the binary referenced using a URI within a property value. That is the binary
content information SHOULD be placed in an external MIME entity that content information SHOULD be placed in an external MIME entity that
can be referenced by a URI from within the iCalendar object. In can be referenced by a URI from within the iCalendar object. In
applications where this is not feasible, binary content information applications where this is not feasible, binary content information
can be included within an iCalendar object, but only after first can be included within an iCalendar object, but only after first
encoding it into text using the "BASE64" encoding method defined in encoding it into text using the "BASE64" encoding method defined in
[RFC4648] . Inline binary contact SHOULD only be used in [RFC4648]. Inline binary contact SHOULD only be used in applications
applications whose special circumstances demand that an iCalendar whose special circumstances demand that an iCalendar object be
object be expressed as a single entity. A property containing inline expressed as a single entity. A property containing inline binary
binary content information MUST specify the "ENCODING" property content information MUST specify the "ENCODING" property parameter.
parameter. Binary content information placed external to the Binary content information placed external to the iCalendar object
iCalendar object MUST be referenced by a uniform resource identifier MUST be referenced by a uniform resource identifier (URI).
(URI).
The following example specifies an "ATTACH" property that references The following example specifies an "ATTACH" property that references
an attachment external to the iCalendar object with a URI reference: an attachment external to the iCalendar object with a URI reference:
ATTACH:http://example.com/public/quarterly-report.doc ATTACH:http://example.com/public/quarterly-report.doc
The following example specifies an "ATTACH" property with inline The following example specifies an "ATTACH" property with inline
binary encoded content information: binary encoded content information:
ATTACH;FMTTYPE=image/basic;ENCODING=BASE64;VALUE=BINARY: ATTACH;FMTTYPE=image/basic;ENCODING=BASE64;VALUE=BINARY:
skipping to change at page 19, line 33 skipping to change at page 18, line 33
Parameter Name: ENCODING Parameter Name: ENCODING
Purpose: To specify an alternate inline encoding for the property Purpose: To specify an alternate inline encoding for the property
value. value.
Format Definition: This property parameter is defined by the Format Definition: This property parameter is defined by the
following notation: following notation:
encodingparam = "ENCODING" "=" encodingparam = "ENCODING" "="
("8BIT" ("8BIT"
; "8bit" text encoding is defined in ; "8bit" text encoding is defined in [RFC2045]
[RFC2045] / "BASE64"
; "BASE64" binary encoding format is defined in [RFC4648]
encodingparam = "ENCODING" "=" / iana-token
("8BIT" ; Some other IANA registered iCalendar encoding type
; "8bit" text encoding is defined in / x-name)
[RFC4648] ; A non-standard, experimental encoding type
encodingparam = "ENCODING" "="
("8BIT"
; "8bit" text encoding is defined in
Description: This property parameter identifies the inline encoding Description: This property parameter identifies the inline encoding
used in a property value. The default encoding is "8BIT", used in a property value. The default encoding is "8BIT",
corresponding to a property value consisting of text. The corresponding to a property value consisting of text. The
"BASE64" encoding type corresponds to a property value encoded "BASE64" encoding type corresponds to a property value encoded
using the "BASE64" encoding defined in [RFC2045]. using the "BASE64" encoding defined in [RFC2045].
If the value type parameter is ";VALUE=BINARY", then the inline If the value type parameter is ";VALUE=BINARY", then the inline
encoding parameter MUST be specified with the value encoding parameter MUST be specified with the value
";ENCODING=BASE64". ";ENCODING=BASE64".
skipping to change at page 21, line 41 skipping to change at page 20, line 35
Purpose: To specify the language for text values in a property or Purpose: To specify the language for text values in a property or
property parameter. property parameter.
Format Definition: This property parameter is defined by the Format Definition: This property parameter is defined by the
following notation: following notation:
languageparam = "LANGUAGE" "=" language languageparam = "LANGUAGE" "=" language
language = Language-Tag language = Language-Tag
; As defined in ; As defined in [RFC4646]
[RFC4646]
languageparam = "LANGUAGE" "=" language
language = Language-Tag
; As defined in
Description: This parameter identifies the language of the text in Description: This parameter identifies the language of the text in
the property or property parameter value. The value of the the property or property parameter value. The value of the
"language" property parameter is that defined in [RFC4646] . "language" property parameter is that defined in [RFC4646] .
For transport in a MIME entity, the Content-Language header field For transport in a MIME entity, the Content-Language header field
can be used to set the default language for the entire body part. can be used to set the default language for the entire body part.
Otherwise, no default language is assumed. Otherwise, no default language is assumed.
Example: Example: The following are examples of this parameter on the SUMMARY
and LOCATION properties:
SUMMARY;LANGUAGE=us-EN:Company Holiday Party SUMMARY;LANGUAGE=us-EN:Company Holiday Party
LOCATION;LANGUAGE=en:Germany LOCATION;LANGUAGE=en:Germany
LOCATION;LANGUAGE=no:Tyskland LOCATION;LANGUAGE=no:Tyskland
The following example makes use of the Quoted-Printable encoding
in order to represent NON-US-ASCII characters.
LOCATION;LANGUAGE=3Dda:K=C3=B8benhavn
LOCATION;LANGUAGE=en:Copenhagen
3.2.11. Group or List Membership 3.2.11. Group or List Membership
Parameter Name: MEMBER Parameter Name: MEMBER
Purpose: To specify the group or list membership of the calendar Purpose: To specify the group or list membership of the calendar
user specified by the property. user specified by the property.
Format Definition: This property parameter is defined by the Format Definition: This property parameter is defined by the
following notation: following notation:
skipping to change at page 24, line 6 skipping to change at page 22, line 6
Parameter Name: PARTSTAT Parameter Name: PARTSTAT
Purpose: To specify the participation status for the calendar user Purpose: To specify the participation status for the calendar user
specified by the property. specified by the property.
Format Definition: This property parameter is defined by the Format Definition: This property parameter is defined by the
following notation: following notation:
partstatparam = "PARTSTAT" "=" partstatparam = "PARTSTAT" "="
("NEEDS-ACTION" ; Event needs action (partstat-event
/ partstat-todo
/ partstat-jour)
partstat-event = ("NEEDS-ACTION" ; Event needs action
/ "ACCEPTED" ; Event accepted / "ACCEPTED" ; Event accepted
/ "DECLINED" ; Event declined / "DECLINED" ; Event declined
/ "TENTATIVE" ; Event tentatively / "TENTATIVE" ; Event tentatively
; accepted ; accepted
/ "DELEGATED" ; Event delegated / "DELEGATED" ; Event delegated
/ x-name ; Experimental status / x-name ; Experimental status
/ iana-token) ; Other IANA registered / iana-token) ; Other IANA registered
; status ; status
; These are the participation statuses for a "VEVENT". ; These are the participation statuses for a "VEVENT".
; Default is NEEDS-ACTION. ; Default is NEEDS-ACTION.
/ partstat-todo = ("NEEDS-ACTION" ; To-do needs action
("NEEDS-ACTION" ; To-do needs action
/ "ACCEPTED" ; To-do accepted / "ACCEPTED" ; To-do accepted
/ "DECLINED" ; To-do declined / "DECLINED" ; To-do declined
/ "TENTATIVE" ; To-do tentatively / "TENTATIVE" ; To-do tentatively
; accepted ; accepted
/ "DELEGATED" ; To-do delegated / "DELEGATED" ; To-do delegated
/ "COMPLETED" ; To-do completed. / "COMPLETED" ; To-do completed.
; COMPLETED property has ; COMPLETED property has
; date/time completed. ; date/time completed.
/ "IN-PROCESS" ; To-do in process of / "IN-PROCESS" ; To-do in process of
; being completed ; being completed
/ x-name ; Experimental status / x-name ; Experimental status
/ iana-token) ; Other IANA registered / iana-token) ; Other IANA registered
; status ; status
; These are the participation statuses for a "VTODO". ; These are the participation statuses for a "VTODO".
; Default is NEEDS-ACTION. ; Default is NEEDS-ACTION.
/ partstat-jour = ("NEEDS-ACTION" ; Journal needs action
("NEEDS-ACTION" ; Journal needs action
/ "ACCEPTED" ; Journal accepted / "ACCEPTED" ; Journal accepted
/ "DECLINED" ; Journal declined / "DECLINED" ; Journal declined
/ x-name ; Experimental status / x-name ; Experimental status
/ iana-token) ; Other IANA registered / iana-token) ; Other IANA registered
; status ; status
; These are the participation statuses for a "VJOURNAL". ; These are the participation statuses for a "VJOURNAL".
; Default is NEEDS-ACTION. ; Default is NEEDS-ACTION.
Description: This parameter can be specified on properties with a Description: This parameter can be specified on properties with a
CAL-ADDRESS value type. The parameter identifies the CAL-ADDRESS value type. The parameter identifies the
skipping to change at page 31, line 8 skipping to change at page 29, line 8
the default value type or will be explicitly specified with the the default value type or will be explicitly specified with the
"VALUE" parameter. If the value type of a property is one of the "VALUE" parameter. If the value type of a property is one of the
alternate valid types, then it MUST be explicitly specified with the alternate valid types, then it MUST be explicitly specified with the
"VALUE" parameter. "VALUE" parameter.
3.3.1. Binary 3.3.1. Binary
Value Name: BINARY Value Name: BINARY
Purpose: This value type is used to identify properties that contain Purpose: This value type is used to identify properties that contain
a character encoding of inline binary data. For example, an a character encoding of inline binary data. For example, an
inline attachment of an object code might be included in an inline attachment of a document might be included in an iCalendar
iCalendar object. object.
Format Definition: This value type is defined by the following Format Definition: This value type is defined by the following
notation: notation:
binary = *(4b-char) [b-end] binary = *(4b-char) [b-end]
; A "BASE64" encoded character string, as defined by ; A "BASE64" encoded character string, as defined by [RFC4648].
[RFC4648]
binary = *(4b-char) [b-end] b-end = (2b-char "==") / (3b-char "=")
; A "BASE64" encoded character string, as defined by
b-char = ALPHA / DIGIT / "+" / "/"
Description: Property values with this value type MUST also include Description: Property values with this value type MUST also include
the inline encoding parameter sequence of ";ENCODING=BASE64". the inline encoding parameter sequence of ";ENCODING=BASE64".
That is, all inline binary data MUST first be character encoded That is, all inline binary data MUST first be character encoded
using the "BASE64" encoding method defined in [RFC2045]. No using the "BASE64" encoding method defined in [RFC2045]. No
additional content value encoding (i.e., BACKSLASH character additional content value encoding (i.e., BACKSLASH character
encoding) is defined for this value type. encoding) is defined for this value type.
Example: The following is an abridged example of a "BASE64" encoded Example: The following is an abridged example of a "BASE64" encoded
binary value data. binary value data.
skipping to change at page 35, line 12 skipping to change at page 33, line 12
19980119T070000Z 19980119T070000Z
The "TZID" property parameter MUST NOT be applied to DATE-TIME The "TZID" property parameter MUST NOT be applied to DATE-TIME
properties whose time values are specified in UTC. properties whose time values are specified in UTC.
FORM #3: DATE WITH LOCAL TIME AND TIME ZONE REFERENCE FORM #3: DATE WITH LOCAL TIME AND TIME ZONE REFERENCE
The date and local time with reference to time zone information is The date and local time with reference to time zone information is
identified by the use the "TZID" property parameter to reference identified by the use the "TZID" property parameter to reference
the appropriate time zone definition. "TZID" is discussed in the appropriate time zone definition. "TZID" is discussed in
detail in Section 3.2.18 . For example, the following represents detail in Section 3.2.18. For example, the following represents 2
2 AM in New York on Janurary 19, 1998: AM in New York on Janurary 19, 1998:
TZID=US-Eastern:19980119T020000 TZID=US-Eastern:19980119T020000
Example: The following represents July 14, 1997, at 1:30 PM in New Example: The following represents July 14, 1997, at 1:30 PM in New
York City in each of the three time formats, using the "DTSTART" York City in each of the three time formats, using the "DTSTART"
property. property.
DTSTART:19970714T133000 ;Local time DTSTART:19970714T133000 ;Local time
DTSTART:19970714T173000Z ;UTC time DTSTART:19970714T173000Z ;UTC time
DTSTART;TZID=US-Eastern:19970714T133000 ;Local time and time DTSTART;TZID=US-Eastern:19970714T133000 ;Local time and time
skipping to change at page 36, line 9 skipping to change at page 34, line 9
dur-week = 1*DIGIT "W" dur-week = 1*DIGIT "W"
dur-hour = 1*DIGIT "H" [dur-minute] dur-hour = 1*DIGIT "H" [dur-minute]
dur-minute = 1*DIGIT "M" [dur-second] dur-minute = 1*DIGIT "M" [dur-second]
dur-second = 1*DIGIT "S" dur-second = 1*DIGIT "S"
dur-day = 1*DIGIT "D" dur-day = 1*DIGIT "D"
Description: If the property permits, multiple "duration" values are Description: If the property permits, multiple "duration" values are
specified by a COMMA character (US-ASCII decimal 44) separated specified by a COMMA character (US-ASCII decimal 44) separated
list of values. The format is expressed as the [ISO.8601.1988] list of values. The format is expressed as the [ISO.8601.1988]
basic format for the duration of time. The format can represent basic format for the duration of time. The format can represent
durations in terms of weeks, days, hours, minutes, and seconds. durations in terms of weeks, days, hours, minutes, and seconds.
Negative durations are typically used to schedule an alarm to
trigger before an associated time (see Section 3.8.6.3).
No additional content value encoding (i.e., BACKSLASH character No additional content value encoding (i.e., BACKSLASH character
encoding) are defined for this value type. encoding) are defined for this value type.
Example: A duration of 15 days, 5 hours and 20 seconds would be: Example: A duration of 15 days, 5 hours and 20 seconds would be:
P15DT5H0M20S P15DT5H0M20S
A duration of 7 weeks would be: A duration of 7 weeks would be:
skipping to change at page 44, line 44 skipping to change at page 42, line 44
ESCAPED-CHAR = ("\\" / "\;" / "\," / "\N" / "\n") ESCAPED-CHAR = ("\\" / "\;" / "\," / "\N" / "\n")
; \\ encodes \, \N or \n encodes newline ; \\ encodes \, \N or \n encodes newline
; \; encodes ;, \, encodes , ; \; encodes ;, \, encodes ,
TSAFE-CHAR = %x20-21 / %x23-2B / %x2D-39 / %x3C-5B / TSAFE-CHAR = %x20-21 / %x23-2B / %x2D-39 / %x3C-5B /
%x5D-7E / NON-US-ASCII %x5D-7E / NON-US-ASCII
; Any character except CTLs not needed by the current ; Any character except CTLs not needed by the current
; character set, DQUOTE, ";", ":", "\", "," ; character set, DQUOTE, ";", ":", "\", ","
Note: Certain other character sets may require modification of
the above definitions, but this is beyond the scope of this
document.
Description: If the property permits, multiple TEXT values are Description: If the property permits, multiple TEXT values are
specified by a COMMA character (US-ASCII decimal 44) separated specified by a COMMA character (US-ASCII decimal 44) separated
list of values. list of values.
The language in which the text is represented can be controlled by The language in which the text is represented can be controlled by
the "LANGUAGE" property parameter. the "LANGUAGE" property parameter.
An intentional formatted text line break MUST only be included in An intentional formatted text line break MUST only be included in
a "TEXT" property value by representing the line break with the a "TEXT" property value by representing the line break with the
character sequence of BACKSLASH (US-ASCII decimal 92), followed by character sequence of BACKSLASH (US-ASCII decimal 92), followed by
skipping to change at page 48, line 16 skipping to change at page 46, line 8
Value Name: URI Value Name: URI
Purpose: This value type is used to identify values that contain a Purpose: This value type is used to identify values that contain a
uniform resource identifier (URI) type of reference to the uniform resource identifier (URI) type of reference to the
property value. property value.
Format Definition: This value type is defined by the following Format Definition: This value type is defined by the following
notation: notation:
uri = URI ; As defined in uri = URI ; As defined in [RFC3986]
[RFC3986]
uri = URI ; As defined in
Description: This value type might be used to reference binary Description: This value type might be used to reference binary
information, for values that are large, or otherwise undesirable information, for values that are large, or otherwise undesirable
to include directly in the iCalendar object. to include directly in the iCalendar object.
The URI value formats in [RFC3986], [RFC-XXXX] and any other IETF The URI value formats in [RFC3986] and any other IETF registered
registered value format can be specified. value format can be specified.
Any IANA registered URI format can be used. These include, but Any IANA registered URI format can be used. These include, but
are not limited to, those defined in [RFC3986] and [RFC-XXXX]. are not limited to, those defined in [RFC3986].
When a property parameter value is a URI value type, the URI MUST When a property parameter value is a URI value type, the URI MUST
be specified as a quoted-string value. be specified as a quoted-string value.
No additional content value encoding (i.e., BACKSLASH character No additional content value encoding (i.e., BACKSLASH character
encoding) is defined for this value type. encoding) is defined for this value type.
Example: The following is a URI for a network file: Example: The following is a URI for a network file:
http://example.com/my-report.txt http://example.com/my-report.txt
skipping to change at page 51, line 7 skipping to change at page 49, line 7
whole. The calendar components are collections of properties that whole. The calendar components are collections of properties that
express a particular calendar semantic. For example, the calendar express a particular calendar semantic. For example, the calendar
component can specify an event, a to-do, a journal entry, time zone component can specify an event, a to-do, a journal entry, time zone
information, free/busy time information, or an alarm. information, free/busy time information, or an alarm.
The body of the iCalendar object is defined by the following The body of the iCalendar object is defined by the following
notation: notation:
icalbody = calprops component icalbody = calprops component
calprops = 2*( calprops = *(
; 'prodid' and 'version' are both REQUIRED, ; 'prodid' and 'version' are both REQUIRED,
; but MUST NOT occur more than once ; but MUST NOT occur more than once
prodid / version / prodid / version /
; 'calscale' and 'method' are OPTIONAL, ; 'calscale' and 'method' are OPTIONAL,
; but MUST NOT occur more than once ; but MUST NOT occur more than once
calscale / calscale /
skipping to change at page 51, line 42 skipping to change at page 49, line 42
x-comp = "BEGIN" ":" x-name CRLF x-comp = "BEGIN" ":" x-name CRLF
1*contentline 1*contentline
"END" ":" x-name CRLF "END" ":" x-name CRLF
An iCalendar object MUST include the "PRODID" and "VERSION" calendar An iCalendar object MUST include the "PRODID" and "VERSION" calendar
properties. In addition, it MUST include at least one calendar properties. In addition, it MUST include at least one calendar
component. Special forms of iCalendar objects are possible to component. Special forms of iCalendar objects are possible to
publish just busy time (i.e., only a "VFREEBUSY" calendar component) publish just busy time (i.e., only a "VFREEBUSY" calendar component)
or time zone (i.e., only a "VTIMEZONE" calendar component) or time zone (i.e., only a "VTIMEZONE" calendar component)
information. In addition, a complex iCalendar object is possible information. In addition, a complex iCalendar object that is used to
that is used to capture a complete snapshot of the contents of a capture a complete snapshot of the contents of a calendar is possible
calendar (e.g., composite of many different calendar components). (e.g., composite of many different calendar components). More
More commonly, an iCalendar object will consist of just a single commonly, an iCalendar object will consist of just a single "VEVENT",
"VEVENT", "VTODO" or "VJOURNAL" calendar component. "VTODO" or "VJOURNAL" calendar component.
3.6.1. Event Component 3.6.1. Event Component
Component Name: VEVENT Component Name: VEVENT
Purpose: Provide a grouping of component properties that describe an Purpose: Provide a grouping of component properties that describe an
event. event.
Format Definition: A "VEVENT" calendar component is defined by the Format Definition: A "VEVENT" calendar component is defined by the
following notation: following notation:
skipping to change at page 61, line 43 skipping to change at page 59, line 43
Component Name: VTIMEZONE Component Name: VTIMEZONE
Purpose: Provide a grouping of component properties that defines a Purpose: Provide a grouping of component properties that defines a
time zone. time zone.
Format Definition: A "VTIMEZONE" calendar component is defined by Format Definition: A "VTIMEZONE" calendar component is defined by
the following notation: the following notation:
timezonec = "BEGIN" ":" "VTIMEZONE" CRLF timezonec = "BEGIN" ":" "VTIMEZONE" CRLF
2*( *(
; 'tzid' is REQUIRED, but MUST NOT occur more ; 'tzid' is REQUIRED, but MUST NOT occur more
; than once ; than once
tzid / tzid /
; 'last-mod' and 'tzurl' are OPTIONAL, ; 'last-mod' and 'tzurl' are OPTIONAL,
; but MUST NOT occur more than once ; but MUST NOT occur more than once
last-mod / tzurl / last-mod / tzurl /
skipping to change at page 83, line 49 skipping to change at page 81, line 49
Conformance: The property can be specified in the "VEVENT", "VTODO", Conformance: The property can be specified in the "VEVENT", "VTODO",
"VJOURNAL" or "VALARM" calendar components. The property can be "VJOURNAL" or "VALARM" calendar components. The property can be
specified multiple times only within a "VJOURNAL" calendar specified multiple times only within a "VJOURNAL" calendar
component. component.
Description: This property is used in the "VEVENT" and "VTODO" to Description: This property is used in the "VEVENT" and "VTODO" to
capture lengthy textual decriptions associated with the activity. capture lengthy textual decriptions associated with the activity.
This property is used in the "VJOURNAL" calendar component to This property is used in the "VJOURNAL" calendar component to
capture one more textual journal entries. capture one or more textual journal entries.
This property is used in the "VALARM" calendar component to This property is used in the "VALARM" calendar component to
capture the display text for a DISPLAY category of alarm, to capture the display text for a DISPLAY category of alarm, to
capture the body text for an EMAIL category of alarm and to capture the body text for an EMAIL category of alarm and to
capture the argument string for a PROCEDURE category of alarm. capture the argument string for a PROCEDURE category of alarm.
Format Definition: This property is defined by the following Format Definition: This property is defined by the following
notation: notation:
description = "DESCRIPTION" descparam ":" text CRLF description = "DESCRIPTION" descparam ":" text CRLF
skipping to change at page 86, line 44 skipping to change at page 84, line 44
language property parameters can be specified on this property. language property parameters can be specified on this property.
Conformance: This property can be specified in "VEVENT" or "VTODO" Conformance: This property can be specified in "VEVENT" or "VTODO"
calendar component. calendar component.
Description: Specific venues such as conference or meeting rooms may Description: Specific venues such as conference or meeting rooms may
be explicitly specified using this property. An alternate be explicitly specified using this property. An alternate
representation may be specified that is a URI that points to representation may be specified that is a URI that points to
directory information with more structured specification of the directory information with more structured specification of the
location. For example, the alternate representation may specify location. For example, the alternate representation may specify
either an LDAP URI pointing to an LDAP server entry or a CID URI either an LDAP URL [RFC4516] pointing to an LDAP server entry or a
pointing to a MIME body part containing a vCard [RFC2426] for the CID URL [RFC2392] pointing to a MIME body part containing a vCard
location. [RFC2426] for the location.
Format Definition: This property is defined by the following Format Definition: This property is defined by the following
notation: notation:
location = "LOCATION" locparam ":" text CRLF location = "LOCATION" locparam ":" text CRLF
locparam = *( locparam = *(
; the following are OPTIONAL, ; the following are OPTIONAL,
; but MUST NOT occur more than once ; but MUST NOT occur more than once
skipping to change at page 99, line 23 skipping to change at page 97, line 23
Description: These time periods can be specified as either a start Description: These time periods can be specified as either a start
and end date-time or a start date-time and duration. The date and and end date-time or a start date-time and duration. The date and
time MUST be a UTC time format. time MUST be a UTC time format.
"FREEBUSY" properties within the "VFREEBUSY" calendar component "FREEBUSY" properties within the "VFREEBUSY" calendar component
SHOULD be sorted in ascending order, based on start time and then SHOULD be sorted in ascending order, based on start time and then
end time, with the earliest periods first. end time, with the earliest periods first.
The "FREEBUSY" property can specify more than one value, separated The "FREEBUSY" property can specify more than one value, separated
by the COMMA character (US-ASCII decimal 44). In such cases, the by the COMMA character (US-ASCII decimal 44). In such cases, the
"FREEBUSY" property values SHOULD all be of the same "FBTYPE" "FREEBUSY" property values MUST all be of the same "FBTYPE"
property parameter type (e.g., all values of a particular "FBTYPE" property parameter type (e.g., all values of a particular "FBTYPE"
listed together in a single property). listed together in a single property).
Format Definition: This property is defined by the following Format Definition: This property is defined by the following
notation: notation:
freebusy = "FREEBUSY" fbparam ":" fbvalue CRLF freebusy = "FREEBUSY" fbparam ":" fbvalue CRLF
fbparam = *( fbparam = *(
; the following is OPTIONAL, ; the following is OPTIONAL,
skipping to change at page 134, line 21 skipping to change at page 132, line 21
(";" "VALUE" "=" "DURATION") / (";" "VALUE" "=" "DURATION") /
(";" trigrelparam) / (";" trigrelparam) /
; the following is OPTIONAL, ; the following is OPTIONAL,
; and MAY occur more than once ; and MAY occur more than once
(";" xparam) (";" xparam)
) ":" dur-value ) ":" dur-value
trigabs = 1*( trigabs = *(
; the following is REQUIRED, ; the following is REQUIRED,
; but MUST NOT occur more than once ; but MUST NOT occur more than once
(";" "VALUE" "=" "DATE-TIME") / (";" "VALUE" "=" "DATE-TIME") /
; the following is OPTIONAL, ; the following is OPTIONAL,
; and MAY occur more than once ; and MAY occur more than once
(";" xparam) (";" xparam)
skipping to change at page 155, line 37 skipping to change at page 153, line 37
Change controller: IETF Change controller: IETF
10. Acknowledgments 10. Acknowledgments
The editor of this document wish to thank Frank Dawson and Stenerson The editor of this document wish to thank Frank Dawson and Stenerson
Derik, the original authors of RFC2445, as well as the following Derik, the original authors of RFC2445, as well as the following
individuals who have participated in the drafting, review and individuals who have participated in the drafting, review and
discussion of this memo: discussion of this memo:
Joe Abley, Hervey Allen, Jay Batson, Oliver Block, Chris Bryant, Joe Abley, Hervey Allen, Jay Batson, Oliver Block, Stephane
Tantek Celik, Mark Crispin, Cyrus Daboo, Mike Douglass, Andrew N. Bortzmeyer, Chris Bryant, Tantek Celik, Mark Crispin, Cyrus Daboo,
Dowden, Lisa Dusseault, Ned Freed, Ted Hardie, Tim Hare, Jeffrey Mike Douglass, Andrew N. Dowden, Lisa Dusseault, Ned Freed, Ted
Harris, Helge Hess, Leif Johansson, Reinhold Kainhofer, Eliot Lear, Hardie, Tim Hare, Jeffrey Harris, Helge Hess, Leif Johansson,
Jeff McCullough, Bill McQuillan, Alexey Melnikov, Aki Niemi, John W. Reinhold Kainhofer, Eliot Lear, Jeff McCullough, Bill McQuillan,
Noerenberg II, Chuck Norris, Mark Paterson, Simon Pilette, Arnaud Alexey Melnikov, Aki Niemi, John W. Noerenberg II, Chuck Norris, Mark
Quillaud, Robert Ransdell, Julian F. Reschke, Caleb Richardson, Sam Paterson, Simon Pilette, Arnaud Quillaud, Robert Ransdell, Julian F.
Roberts, George Sexton, Nigel Swinson, Simon Vaillancourt, Michiel Reschke, Caleb Richardson, Sam Roberts, George Sexton, Nigel Swinson,
van Leeuwen, and Sandy Wills. Simon Vaillancourt, Michiel van Leeuwen, and Sandy Wills.
The editor would also like to thank the Calendaring and Scheduling The editor would also like to thank the Calendaring and Scheduling
Consortium for advice with this specification, and for organizing Consortium for advice with this specification, and for organizing
interoperability testing events to help refine it. interoperability testing events to help refine it.
11. References 11. References
11.1. Normative References 11.1. Normative References
[ISO.8601.1988] [ISO.8601.1988]
skipping to change at page 157, line 25 skipping to change at page 155, line 25
Daboo, C., "iCalendar Transport-Independent Daboo, C., "iCalendar Transport-Independent
Interoperability Protocol (iTIP)", Interoperability Protocol (iTIP)",
draft-ietf-calsify-2446bis-02 (work in progress), draft-ietf-calsify-2446bis-02 (work in progress),
June 2006. June 2006.
[I-D.ietf-calsify-rfc2447bis] [I-D.ietf-calsify-rfc2447bis]
Melnikov, A., "iCalendar Message-Based Interoperability Melnikov, A., "iCalendar Message-Based Interoperability
Protocol(iMIP)", draft-ietf-calsify-rfc2447bis-02 (work in Protocol(iMIP)", draft-ietf-calsify-rfc2447bis-02 (work in
progress), June 2006. progress), June 2006.
[RFC2392] Levinson, E., "Content-ID and Message-ID Uniform Resource
Locators", RFC 2392, August 1998.
[RFC2425] Howes, T., Smith, M., and F. Dawson, "A MIME Content-Type [RFC2425] Howes, T., Smith, M., and F. Dawson, "A MIME Content-Type
for Directory Information", RFC 2425, September 1998. for Directory Information", RFC 2425, September 1998.
[RFC2426] Dawson, F. and T. Howes, "vCard MIME Directory Profile", [RFC2426] Dawson, F. and T. Howes, "vCard MIME Directory Profile",
RFC 2426, September 1998. RFC 2426, September 1998.
[TZDB] "Time zone code and data", October 2005, [RFC4516] Smith, M. and T. Howes, "Lightweight Directory Access
<ftp://elsie.nci.nih.gov/pub/>. Protocol (LDAP): Uniform Resource Locator", RFC 4516,
June 2006.
[TZDB] Eggert, P. and A. Olson, "Sources for Time Zone and
Daylight Saving Time Data", January 2007,
<http://www.twinsun.com/tz/tz-link.htm>.
[Note to RFC Editor: Change "A. Olson" to "A.D. Olson".]
[VCAL] Internet Mail Consortium, "vCalendar: The Electronic [VCAL] Internet Mail Consortium, "vCalendar: The Electronic
Calendaring and Scheduling Exchange Format", Calendaring and Scheduling Exchange Format",
September 1996, <http://www.imc.org/pdi/vcal-10.txt>. September 1996, <http://www.imc.org/pdi/vcal-10.txt>.
URIs URIs
[1] <mailto:ietf-calsify@osafoundation.org> [1] <mailto:ietf-calsify@osafoundation.org>
Appendix A. Differences from RFC 2445 Appendix A. Differences from RFC 2445
skipping to change at page 158, line 22 skipping to change at page 156, line 28
A.2. Deprecated features A.2. Deprecated features
1. The "EXRULE" property can no longer be specified in a component. 1. The "EXRULE" property can no longer be specified in a component.
2. The "RANGE" parameter can no longer be specified on the 2. The "RANGE" parameter can no longer be specified on the
"RECURRENCE-ID" property. "RECURRENCE-ID" property.
Appendix B. Change Log (to be removed by RFC Editor before publication) Appendix B. Change Log (to be removed by RFC Editor before publication)
B.1. Changes in -04 B.1. Changes in -05
A detailed list of changes is available at the following page:
http://tools.ietf.org/wg/calsify/draft-ietf-calsify-rfc2445bis/
draft-ietf-calsify-rfc2445bis-05.changes.html.
a. Fixed ABNF with references in .txt version of the draft;
b. Numerous editorial changes;
c. Clarified that normative statements in ABNF comments should be
considered as normative;
d. Removed notes talking of character sets other than US-ASCII and
UTF-8;
e. Renamed CTL to CONTROL to avoid conflict with the CTL rule
defined in RFC4234;
f. Removed ABNF rules defined in RFC4234;
g. Changed the partstatparam ABNF rule for clarity;
h. Clarified the purpose of negative durations;
i. Added informational references to RFC 2392 (CID URL) and RFC 4516
(LDAP URL).
j. Updated TZDB reference.
B.2. Changes in -04
A detailed list of changes is available at the following page: A detailed list of changes is available at the following page:
http://tools.ietf.org/wg/calsify/draft-ietf-calsify-rfc2445bis/ http://tools.ietf.org/wg/calsify/draft-ietf-calsify-rfc2445bis/
draft-ietf-calsify-rfc2445bis-04.changes.html. draft-ietf-calsify-rfc2445bis-04.changes.html.
a. Issue 16: Clarified that recurrence instances, generated by a a. Issue 16: Clarified that recurrence instances, generated by a
recurrence rule, with an invalid date or nonexistent local time recurrence rule, with an invalid date or nonexistent local time
must be ignored and not counted as part of the recurrence set. must be ignored and not counted as part of the recurrence set.
b. Issue 26: Clarified how to handle the BYHOUR, BYMINUTE and b. Issue 26: Clarified how to handle the BYHOUR, BYMINUTE and
skipping to change at page 159, line 43 skipping to change at page 158, line 34
specified as a "dur-day" or "dur-week" value when the "DTSTART" specified as a "dur-day" or "dur-week" value when the "DTSTART"
is a DATE. is a DATE.
q. Issue 58: Changed the jourprop ABNF rule to allow the q. Issue 58: Changed the jourprop ABNF rule to allow the
"DESCRIPTION" property to occur more than once. "DESCRIPTION" property to occur more than once.
r. Numerous editorial changes. r. Numerous editorial changes.
s. Changed reference to RFC 4646 for Language-Tag. s. Changed reference to RFC 4646 for Language-Tag.
B.2. Changes in -03 B.3. Changes in -03
A detailed list of changes is available at the following page: A detailed list of changes is available at the following page:
http://tools.ietf.org/wg/calsify/draft-ietf-calsify-rfc2445bis/ http://tools.ietf.org/wg/calsify/draft-ietf-calsify-rfc2445bis/
draft-ietf-calsify-rfc2445bis-03.changes.html. draft-ietf-calsify-rfc2445bis-03.changes.html.
a. Numerous editorial changes. a. Numerous editorial changes.
b. Specified that "DTSTART" should match the pattern of "RRULE" and b. Specified that "DTSTART" should match the pattern of "RRULE" and
is always part of the "COUNT". is always part of the "COUNT".
skipping to change at page 160, line 19 skipping to change at page 159, line 7
components. components.
d. Deprecated "EXRULE". d. Deprecated "EXRULE".
e. Fixed all ABNF errors reported by Bill Fenner's ABNF parsing web e. Fixed all ABNF errors reported by Bill Fenner's ABNF parsing web
service available at: service available at:
http://rtg.ietf.org/~fenner/abnf.cgi. http://rtg.ietf.org/~fenner/abnf.cgi.
f. Changed reference to RFC 4648 for Base64 encoding. f. Changed reference to RFC 4648 for Base64 encoding.
B.3. Changes in -02 B.4. Changes in -02
A detailed list of changes is available at the following page: A detailed list of changes is available at the following page:
http://tools.ietf.org/wg/calsify/draft-ietf-calsify-rfc2445bis/ http://tools.ietf.org/wg/calsify/draft-ietf-calsify-rfc2445bis/
draft-ietf-calsify-rfc2445bis-02.changes.html. draft-ietf-calsify-rfc2445bis-02.changes.html.
a. Numerous editorial changes including the typos listed in the a. Numerous editorial changes including the typos listed in the
"RFC2445 Errata": "RFC2445 Errata":
http://www.rfc-editor.org/cgi-bin/errataSearch.pl?rfc=2445& http://www.rfc-editor.org/cgi-bin/errataSearch.pl?rfc=2445&
and in the "RFC2445 Issues List": and in the "RFC2445 Issues List":
http://www.softwarestudio.org/iCal/2445Issues.html. http://www.softwarestudio.org/iCal/2445Issues.html.
skipping to change at page 161, line 5 skipping to change at page 159, line 40
g. Fixed all the examples to use RFC2606-compliant FQDNs. g. Fixed all the examples to use RFC2606-compliant FQDNs.
h. Fixed the Content-ID URLs in the examples. h. Fixed the Content-ID URLs in the examples.
i. Fixed the LDAP URLs in the examples. i. Fixed the LDAP URLs in the examples.
j. Moved multiple references in the Informative References section. j. Moved multiple references in the Informative References section.
k. Updated the Acknowledgments section. k. Updated the Acknowledgments section.
B.4. Changes in -01 B.5. Changes in -01
A detailed list of changes is available at the following page: A detailed list of changes is available at the following page:
http://tools.ietf.org/wg/calsify/draft-ietf-calsify-rfc2445bis/ http://tools.ietf.org/wg/calsify/draft-ietf-calsify-rfc2445bis/
draft-ietf-calsify-rfc2445bis-01.changes.html. draft-ietf-calsify-rfc2445bis-01.changes.html.
a. Numerous editorial changes (typos, errors in examples, etc.). a. Numerous editorial changes (typos, errors in examples, etc.).
b. Fixed invalid media types in examples. b. Fixed invalid media types in examples.
c. Fixed the "DTSTAMP" values in the examples. c. Fixed the "DTSTAMP" values in the examples.
skipping to change at page 161, line 33 skipping to change at page 160, line 21
g. Updated the Acknowledgments section. g. Updated the Acknowledgments section.
Author's Address Author's Address
Bernard Desruisseaux (editor) Bernard Desruisseaux (editor)
Oracle Corporation Oracle Corporation
600 blvd. de Maisonneuve West 600 blvd. de Maisonneuve West
Suite 1900 Suite 1900
Montreal, QC H3A 3J2 Montreal, QC H3A 3J2
CA CANADA
Email: bernard.desruisseaux@oracle.com Email: bernard.desruisseaux@oracle.com
URI: http://www.oracle.com/ URI: http://www.oracle.com/
Full Copyright Statement Full Copyright Statement
Copyright (C) The Internet Society (2007). Copyright (C) The IETF Trust (2007).
This document is subject to the rights, licenses and restrictions This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors contained in BCP 78, and except as set forth therein, the authors
retain all their rights. retain all their rights.
This document and the information contained herein are provided on an This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Intellectual Property Intellectual Property
The IETF takes no position regarding the validity or scope of any The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information made any independent effort to identify any such rights. Information
 End of changes. 53 change blocks. 
315 lines changed or deleted 285 lines changed or added

This html diff was produced by rfcdiff 1.33. The latest version is available from http://tools.ietf.org/tools/rfcdiff/