|
|
trfc5545.txt - ics2txt - convert icalendar .ics file to plain text |
|
|
 |
git clone git://bitreich.org/ics2txt git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/ics2txt (git://bitreich.org) |
|
|
 |
Log |
|
|
 |
Files |
|
|
 |
Refs |
|
|
 |
Tags |
|
|
 |
README |
|
|
|
--- |
|
|
|
trfc5545.txt (345537B) |
|
|
|
--- |
|
|
|
1 |
|
|
|
2 |
|
|
|
3 |
|
|
|
4 |
|
|
|
5 |
|
|
|
6 |
|
|
|
7 Network Working Group B. Desruisseaux, Ed. |
|
|
|
8 Request for Comments: 5545 Oracle |
|
|
|
9 Obsoletes: 2445 September 2009 |
|
|
|
10 Category: Standards Track |
|
|
|
11 |
|
|
|
12 |
|
|
|
13 Internet Calendaring and Scheduling Core Object Specification |
|
|
|
14 (iCalendar) |
|
|
|
15 |
|
|
|
16 Abstract |
|
|
|
17 |
|
|
|
18 This document defines the iCalendar data format for representing and |
|
|
|
19 exchanging calendaring and scheduling information such as events, |
|
|
|
20 to-dos, journal entries, and free/busy information, independent of any |
|
|
|
21 particular calendar service or protocol. |
|
|
|
22 |
|
|
|
23 Status of This Memo |
|
|
|
24 |
|
|
|
25 This document specifies an Internet standards track protocol for the |
|
|
|
26 Internet community, and requests discussion and suggestions for |
|
|
|
27 improvements. Please refer to the current edition of the "Internet |
|
|
|
28 Official Protocol Standards" (STD 1) for the standardization state |
|
|
|
29 and status of this protocol. Distribution of this memo is unlimited. |
|
|
|
30 |
|
|
|
31 Copyright and License Notice |
|
|
|
32 |
|
|
|
33 Copyright (c) 2009 IETF Trust and the persons identified as the |
|
|
|
34 document authors. All rights reserved. |
|
|
|
35 |
|
|
|
36 This document is subject to BCP 78 and the IETF Trust's Legal |
|
|
|
37 Provisions Relating to IETF Documents |
|
|
|
38 (http://trustee.ietf.org/license-info) in effect on the date of |
|
|
|
39 publication of this document. Please review these documents |
|
|
|
40 carefully, as they describe your rights and restrictions with respect |
|
|
|
41 to this document. Code Components extracted from this document must |
|
|
|
42 include Simplified BSD License text as described in Section 4.e of |
|
|
|
43 the Trust Legal Provisions and are provided without warranty as |
|
|
|
44 described in the BSD License. |
|
|
|
45 |
|
|
|
46 This document may contain material from IETF Documents or IETF |
|
|
|
47 Contributions published or made publicly available before November |
|
|
|
48 10, 2008. The person(s) controlling the copyright in some of this |
|
|
|
49 material may not have granted the IETF Trust the right to allow |
|
|
|
50 modifications of such material outside the IETF Standards Process. |
|
|
|
51 Without obtaining an adequate license from the person(s) controlling |
|
|
|
52 the copyright in such materials, this document may not be modified |
|
|
|
53 outside the IETF Standards Process, and derivative works of it may |
|
|
|
54 not be created outside the IETF Standards Process, except to format |
|
|
|
55 |
|
|
|
56 |
|
|
|
57 |
|
|
|
58 Desruisseaux Standards Track [Page 1] |
|
|
|
i 59 |
|
|
|
Err bitreich.org 70 |
|
|
|
60 RFC 5545 iCalendar September 2009 |
|
|
|
61 |
|
|
|
62 |
|
|
|
63 it for publication as an RFC or to translate it into languages other |
|
|
|
64 than English. |
|
|
|
65 |
|
|
|
66 Table of Contents |
|
|
|
67 |
|
|
|
68 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 5 |
|
|
|
69 2. Basic Grammar and Conventions . . . . . . . . . . . . . . . . 6 |
|
|
|
70 2.1. Formatting Conventions . . . . . . . . . . . . . . . . . 6 |
|
|
|
71 2.2. Related Memos . . . . . . . . . . . . . . . . . . . . . . 7 |
|
|
|
72 3. iCalendar Object Specification . . . . . . . . . . . . . . . 8 |
|
|
|
73 3.1. Content Lines . . . . . . . . . . . . . . . . . . . . . . 8 |
|
|
|
74 3.1.1. List and Field Separators . . . . . . . . . . . . . . 11 |
|
|
|
75 3.1.2. Multiple Values . . . . . . . . . . . . . . . . . . . 11 |
|
|
|
76 3.1.3. Binary Content . . . . . . . . . . . . . . . . . . . 11 |
|
|
|
77 3.1.4. Character Set . . . . . . . . . . . . . . . . . . . . 12 |
|
|
|
78 3.2. Property Parameters . . . . . . . . . . . . . . . . . . . 12 |
|
|
|
79 3.2.1. Alternate Text Representation . . . . . . . . . . . . 13 |
|
|
|
80 3.2.2. Common Name . . . . . . . . . . . . . . . . . . . . . 15 |
|
|
|
81 3.2.3. Calendar User Type . . . . . . . . . . . . . . . . . 15 |
|
|
|
82 3.2.4. Delegators . . . . . . . . . . . . . . . . . . . . . 16 |
|
|
|
83 3.2.5. Delegatees . . . . . . . . . . . . . . . . . . . . . 16 |
|
|
|
84 3.2.6. Directory Entry Reference . . . . . . . . . . . . . . 17 |
|
|
|
85 3.2.7. Inline Encoding . . . . . . . . . . . . . . . . . . . 17 |
|
|
|
86 3.2.8. Format Type . . . . . . . . . . . . . . . . . . . . . 18 |
|
|
|
87 3.2.9. Free/Busy Time Type . . . . . . . . . . . . . . . . . 19 |
|
|
|
88 3.2.10. Language . . . . . . . . . . . . . . . . . . . . . . 20 |
|
|
|
89 3.2.11. Group or List Membership . . . . . . . . . . . . . . 20 |
|
|
|
90 3.2.12. Participation Status . . . . . . . . . . . . . . . . 21 |
|
|
|
91 3.2.13. Recurrence Identifier Range . . . . . . . . . . . . . 22 |
|
|
|
92 3.2.14. Alarm Trigger Relationship . . . . . . . . . . . . . 23 |
|
|
|
93 3.2.15. Relationship Type . . . . . . . . . . . . . . . . . . 24 |
|
|
|
94 3.2.16. Participation Role . . . . . . . . . . . . . . . . . 25 |
|
|
|
95 3.2.17. RSVP Expectation . . . . . . . . . . . . . . . . . . 25 |
|
|
|
96 3.2.18. Sent By . . . . . . . . . . . . . . . . . . . . . . . 26 |
|
|
|
97 3.2.19. Time Zone Identifier . . . . . . . . . . . . . . . . 26 |
|
|
|
98 3.2.20. Value Data Types . . . . . . . . . . . . . . . . . . 28 |
|
|
|
99 3.3. Property Value Data Types . . . . . . . . . . . . . . . . 29 |
|
|
|
100 3.3.1. Binary . . . . . . . . . . . . . . . . . . . . . . . 29 |
|
|
|
101 3.3.2. Boolean . . . . . . . . . . . . . . . . . . . . . . . 30 |
|
|
|
102 3.3.3. Calendar User Address . . . . . . . . . . . . . . . . 30 |
|
|
|
103 3.3.4. Date . . . . . . . . . . . . . . . . . . . . . . . . 31 |
|
|
|
104 3.3.5. Date-Time . . . . . . . . . . . . . . . . . . . . . . 31 |
|
|
|
105 3.3.6. Duration . . . . . . . . . . . . . . . . . . . . . . 34 |
|
|
|
106 3.3.7. Float . . . . . . . . . . . . . . . . . . . . . . . . 35 |
|
|
|
107 3.3.8. Integer . . . . . . . . . . . . . . . . . . . . . . . 35 |
|
|
|
108 3.3.9. Period of Time . . . . . . . . . . . . . . . . . . . 36 |
|
|
|
109 3.3.10. Recurrence Rule . . . . . . . . . . . . . . . . . . . 37 |
|
|
|
110 3.3.11. Text . . . . . . . . . . . . . . . . . . . . . . . . 45 |
|
|
|
111 |
|
|
|
112 |
|
|
|
113 |
|
|
|
114 Desruisseaux Standards Track [Page 2] |
|
|
|
i 115 |
|
|
|
Err bitreich.org 70 |
|
|
|
116 RFC 5545 iCalendar September 2009 |
|
|
|
117 |
|
|
|
118 |
|
|
|
119 3.3.12. Time . . . . . . . . . . . . . . . . . . . . . . . . 46 |
|
|
|
120 3.3.13. URI . . . . . . . . . . . . . . . . . . . . . . . . . 48 |
|
|
|
121 3.3.14. UTC Offset . . . . . . . . . . . . . . . . . . . . . 49 |
|
|
|
122 3.4. iCalendar Object . . . . . . . . . . . . . . . . . . . . 49 |
|
|
|
123 3.5. Property . . . . . . . . . . . . . . . . . . . . . . . . 50 |
|
|
|
124 3.6. Calendar Components . . . . . . . . . . . . . . . . . . . 50 |
|
|
|
125 3.6.1. Event Component . . . . . . . . . . . . . . . . . . . 52 |
|
|
|
126 3.6.2. To-Do Component . . . . . . . . . . . . . . . . . . . 56 |
|
|
|
127 3.6.3. Journal Component . . . . . . . . . . . . . . . . . . 58 |
|
|
|
128 3.6.4. Free/Busy Component . . . . . . . . . . . . . . . . . 60 |
|
|
|
129 3.6.5. Time Zone Component . . . . . . . . . . . . . . . . . 63 |
|
|
|
130 3.6.6. Alarm Component . . . . . . . . . . . . . . . . . . . 72 |
|
|
|
131 3.7. Calendar Properties . . . . . . . . . . . . . . . . . . . 77 |
|
|
|
132 3.7.1. Calendar Scale . . . . . . . . . . . . . . . . . . . 77 |
|
|
|
133 3.7.2. Method . . . . . . . . . . . . . . . . . . . . . . . 78 |
|
|
|
134 3.7.3. Product Identifier . . . . . . . . . . . . . . . . . 79 |
|
|
|
135 3.7.4. Version . . . . . . . . . . . . . . . . . . . . . . . 80 |
|
|
|
136 3.8. Component Properties . . . . . . . . . . . . . . . . . . 81 |
|
|
|
137 3.8.1. Descriptive Component Properties . . . . . . . . . . 81 |
|
|
|
138 3.8.1.1. Attachment . . . . . . . . . . . . . . . . . . . 81 |
|
|
|
139 3.8.1.2. Categories . . . . . . . . . . . . . . . . . . . 82 |
|
|
|
140 3.8.1.3. Classification . . . . . . . . . . . . . . . . . 83 |
|
|
|
141 3.8.1.4. Comment . . . . . . . . . . . . . . . . . . . . . 84 |
|
|
|
142 3.8.1.5. Description . . . . . . . . . . . . . . . . . . . 85 |
|
|
|
143 3.8.1.6. Geographic Position . . . . . . . . . . . . . . . 87 |
|
|
|
144 3.8.1.7. Location . . . . . . . . . . . . . . . . . . . . 88 |
|
|
|
145 3.8.1.8. Percent Complete . . . . . . . . . . . . . . . . 89 |
|
|
|
146 3.8.1.9. Priority . . . . . . . . . . . . . . . . . . . . 90 |
|
|
|
147 3.8.1.10. Resources . . . . . . . . . . . . . . . . . . . . 92 |
|
|
|
148 3.8.1.11. Status . . . . . . . . . . . . . . . . . . . . . 93 |
|
|
|
149 3.8.1.12. Summary . . . . . . . . . . . . . . . . . . . . . 94 |
|
|
|
150 3.8.2. Date and Time Component Properties . . . . . . . . . 95 |
|
|
|
151 3.8.2.1. Date-Time Completed . . . . . . . . . . . . . . . 95 |
|
|
|
152 3.8.2.2. Date-Time End . . . . . . . . . . . . . . . . . . 96 |
|
|
|
153 3.8.2.3. Date-Time Due . . . . . . . . . . . . . . . . . . 97 |
|
|
|
154 3.8.2.4. Date-Time Start . . . . . . . . . . . . . . . . . 99 |
|
|
|
155 3.8.2.5. Duration . . . . . . . . . . . . . . . . . . . . 100 |
|
|
|
156 3.8.2.6. Free/Busy Time . . . . . . . . . . . . . . . . . 101 |
|
|
|
157 3.8.2.7. Time Transparency . . . . . . . . . . . . . . . . 102 |
|
|
|
158 3.8.3. Time Zone Component Properties . . . . . . . . . . . 103 |
|
|
|
159 3.8.3.1. Time Zone Identifier . . . . . . . . . . . . . . 103 |
|
|
|
160 3.8.3.2. Time Zone Name . . . . . . . . . . . . . . . . . 105 |
|
|
|
161 3.8.3.3. Time Zone Offset From . . . . . . . . . . . . . . 106 |
|
|
|
162 3.8.3.4. Time Zone Offset To . . . . . . . . . . . . . . . 106 |
|
|
|
163 3.8.3.5. Time Zone URL . . . . . . . . . . . . . . . . . . 107 |
|
|
|
164 3.8.4. Relationship Component Properties . . . . . . . . . . 108 |
|
|
|
165 3.8.4.1. Attendee . . . . . . . . . . . . . . . . . . . . 108 |
|
|
|
166 3.8.4.2. Contact . . . . . . . . . . . . . . . . . . . . . 111 |
|
|
|
167 |
|
|
|
168 |
|
|
|
169 |
|
|
|
170 Desruisseaux Standards Track [Page 3] |
|
|
|
i 171 |
|
|
|
Err bitreich.org 70 |
|
|
|
172 RFC 5545 iCalendar September 2009 |
|
|
|
173 |
|
|
|
174 |
|
|
|
175 3.8.4.3. Organizer . . . . . . . . . . . . . . . . . . . . 113 |
|
|
|
176 3.8.4.4. Recurrence ID . . . . . . . . . . . . . . . . . . 114 |
|
|
|
177 3.8.4.5. Related To . . . . . . . . . . . . . . . . . . . 117 |
|
|
|
178 3.8.4.6. Uniform Resource Locator . . . . . . . . . . . . 118 |
|
|
|
179 3.8.4.7. Unique Identifier . . . . . . . . . . . . . . . . 119 |
|
|
|
180 3.8.5. Recurrence Component Properties . . . . . . . . . . . 120 |
|
|
|
181 3.8.5.1. Exception Date-Times . . . . . . . . . . . . . . 120 |
|
|
|
182 3.8.5.2. Recurrence Date-Times . . . . . . . . . . . . . . 122 |
|
|
|
183 3.8.5.3. Recurrence Rule . . . . . . . . . . . . . . . . . 124 |
|
|
|
184 3.8.6. Alarm Component Properties . . . . . . . . . . . . . 134 |
|
|
|
185 3.8.6.1. Action . . . . . . . . . . . . . . . . . . . . . 134 |
|
|
|
186 3.8.6.2. Repeat Count . . . . . . . . . . . . . . . . . . 135 |
|
|
|
187 3.8.6.3. Trigger . . . . . . . . . . . . . . . . . . . . . 135 |
|
|
|
188 3.8.7. Change Management Component Properties . . . . . . . 138 |
|
|
|
189 3.8.7.1. Date-Time Created . . . . . . . . . . . . . . . . 138 |
|
|
|
190 3.8.7.2. Date-Time Stamp . . . . . . . . . . . . . . . . . 139 |
|
|
|
191 3.8.7.3. Last Modified . . . . . . . . . . . . . . . . . . 140 |
|
|
|
192 3.8.7.4. Sequence Number . . . . . . . . . . . . . . . . . 141 |
|
|
|
193 3.8.8. Miscellaneous Component Properties . . . . . . . . . 142 |
|
|
|
194 3.8.8.1. IANA Properties . . . . . . . . . . . . . . . . . 142 |
|
|
|
195 3.8.8.2. Non-Standard Properties . . . . . . . . . . . . . 142 |
|
|
|
196 3.8.8.3. Request Status . . . . . . . . . . . . . . . . . 144 |
|
|
|
197 4. iCalendar Object Examples . . . . . . . . . . . . . . . . . . 146 |
|
|
|
198 5. Recommended Practices . . . . . . . . . . . . . . . . . . . . 150 |
|
|
|
199 6. Internationalization Considerations . . . . . . . . . . . . . 151 |
|
|
|
200 7. Security Considerations . . . . . . . . . . . . . . . . . . . 151 |
|
|
|
201 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 151 |
|
|
|
202 8.1. iCalendar Media Type Registration . . . . . . . . . . . . 151 |
|
|
|
203 8.2. New iCalendar Elements Registration . . . . . . . . . . . 155 |
|
|
|
204 8.2.1. iCalendar Elements Registration Procedure . . . . . . 155 |
|
|
|
205 8.2.2. Registration Template for Components . . . . . . . . 155 |
|
|
|
206 8.2.3. Registration Template for Properties . . . . . . . . 156 |
|
|
|
207 8.2.4. Registration Template for Parameters . . . . . . . . 156 |
|
|
|
208 8.2.5. Registration Template for Value Data Types . . . . . 157 |
|
|
|
209 8.2.6. Registration Template for Values . . . . . . . . . . 157 |
|
|
|
210 8.3. Initial iCalendar Elements Registries . . . . . . . . . . 158 |
|
|
|
211 8.3.1. Components Registry . . . . . . . . . . . . . . . . . 158 |
|
|
|
212 8.3.2. Properties Registry . . . . . . . . . . . . . . . . . 158 |
|
|
|
213 8.3.3. Parameters Registry . . . . . . . . . . . . . . . . . 161 |
|
|
|
214 8.3.4. Value Data Types Registry . . . . . . . . . . . . . . 162 |
|
|
|
215 8.3.5. Calendar User Types Registry . . . . . . . . . . . . 162 |
|
|
|
216 8.3.6. Free/Busy Time Types Registry . . . . . . . . . . . . 163 |
|
|
|
217 8.3.7. Participation Statuses Registry . . . . . . . . . . . 163 |
|
|
|
218 8.3.8. Relationship Types Registry . . . . . . . . . . . . . 164 |
|
|
|
219 8.3.9. Participation Roles Registry . . . . . . . . . . . . 164 |
|
|
|
220 8.3.10. Actions Registry . . . . . . . . . . . . . . . . . . 165 |
|
|
|
221 8.3.11. Classifications Registry . . . . . . . . . . . . . . 165 |
|
|
|
222 8.3.12. Methods Registry . . . . . . . . . . . . . . . . . . 165 |
|
|
|
223 |
|
|
|
224 |
|
|
|
225 |
|
|
|
226 Desruisseaux Standards Track [Page 4] |
|
|
|
i 227 |
|
|
|
Err bitreich.org 70 |
|
|
|
228 RFC 5545 iCalendar September 2009 |
|
|
|
229 |
|
|
|
230 |
|
|
|
231 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 165 |
|
|
|
232 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 166 |
|
|
|
233 10.1. Normative References . . . . . . . . . . . . . . . . . . 166 |
|
|
|
234 10.2. Informative References . . . . . . . . . . . . . . . . . 167 |
|
|
|
235 Appendix A. Differences from RFC 2445 . . . . . . . . . . . . . 169 |
|
|
|
236 A.1. New Restrictions . . . . . . . . . . . . . . . . . . . . 169 |
|
|
|
237 A.2. Restrictions Removed . . . . . . . . . . . . . . . . . . 169 |
|
|
|
238 A.3. Deprecated Features . . . . . . . . . . . . . . . . . . . 169 |
|
|
|
239 |
|
|
|
240 1. Introduction |
|
|
|
241 |
|
|
|
242 The use of calendaring and scheduling has grown considerably in the |
|
|
|
243 last decade. Enterprise and inter-enterprise business has become |
|
|
|
244 dependent on rapid scheduling of events and actions using this |
|
|
|
245 information technology. This memo is intended to progress the level |
|
|
|
246 of interoperability possible between dissimilar calendaring and |
|
|
|
247 scheduling applications. This memo defines a MIME content type for |
|
|
|
248 exchanging electronic calendaring and scheduling information. The |
|
|
|
249 Internet Calendaring and Scheduling Core Object Specification, or |
|
|
|
250 iCalendar, allows for the capture and exchange of information |
|
|
|
251 normally stored within a calendaring and scheduling application; such |
|
|
|
252 as a Personal Information Manager (PIM) or a Group-Scheduling |
|
|
|
253 product. |
|
|
|
254 |
|
|
|
255 The iCalendar format is suitable as an exchange format between |
|
|
|
256 applications or systems. The format is defined in terms of a MIME |
|
|
|
257 content type. This will enable the object to be exchanged using |
|
|
|
258 several transports, including but not limited to SMTP, HTTP, a file |
|
|
|
259 system, desktop interactive protocols such as the use of a memory- |
|
|
|
260 based clipboard or drag/drop interactions, point-to-point |
|
|
|
261 asynchronous communication, wired-network transport, or some form of |
|
|
|
262 unwired transport such as infrared. |
|
|
|
263 |
|
|
|
264 The memo also provides for the definition of iCalendar object methods |
|
|
|
265 that will map this content type to a set of messages for supporting |
|
|
|
266 calendaring and scheduling operations such as requesting, replying |
|
|
|
267 to, modifying, and canceling meetings or appointments, to-dos, and |
|
|
|
268 journal entries. The iCalendar object methods can be used to define |
|
|
|
269 other calendaring and scheduling operations such as requesting for |
|
|
|
270 and replying with free/busy time data. Such a scheduling protocol is |
|
|
|
271 defined in the iCalendar Transport-independent Interoperability |
|
|
|
272 Protocol (iTIP) defined in [2446bis]. |
|
|
|
273 |
|
|
|
274 The memo also includes a formal grammar for the content type based on |
|
|
|
275 the Internet ABNF defined in [RFC5234]. This ABNF is required for |
|
|
|
276 the implementation of parsers and to serve as the definitive |
|
|
|
277 reference when ambiguities or questions arise in interpreting the |
|
|
|
278 descriptive prose definition of the memo. Additional restrictions |
|
|
|
279 |
|
|
|
280 |
|
|
|
281 |
|
|
|
282 Desruisseaux Standards Track [Page 5] |
|
|
|
i 283 |
|
|
|
Err bitreich.org 70 |
|
|
|
284 RFC 5545 iCalendar September 2009 |
|
|
|
285 |
|
|
|
286 |
|
|
|
287 that could not easily be expressed with the ABNF syntax are specified |
|
|
|
288 as comments in the ABNF. Comments with normative statements should |
|
|
|
289 be treated as such. |
|
|
|
290 |
|
|
|
291 2. Basic Grammar and Conventions |
|
|
|
292 |
|
|
|
293 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", |
|
|
|
294 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this |
|
|
|
295 document are to be interpreted as described in [RFC2119]. |
|
|
|
296 |
|
|
|
297 This memo makes use of both a descriptive prose and a more formal |
|
|
|
298 notation for defining the calendaring and scheduling format. |
|
|
|
299 |
|
|
|
300 The notation used in this memo is the ABNF notation of [RFC5234]. |
|
|
|
301 Readers intending on implementing the format defined in this memo |
|
|
|
302 should be familiar with this notation in order to properly interpret |
|
|
|
303 the specifications of this memo. |
|
|
|
304 |
|
|
|
305 All numeric values used in this memo are given in decimal notation. |
|
|
|
306 |
|
|
|
307 All names of properties, property parameters, enumerated property |
|
|
|
308 values, and property parameter values are case-insensitive. However, |
|
|
|
309 all other property values are case-sensitive, unless otherwise |
|
|
|
310 stated. |
|
|
|
311 |
|
|
|
312 Note: All indented editorial notes, such as this one, are intended |
|
|
|
313 to provide the reader with additional information. The |
|
|
|
314 information is not essential to the building of an implementation |
|
|
|
315 conformant with this memo. The information is provided to |
|
|
|
316 highlight a particular feature or characteristic of the memo. |
|
|
|
317 |
|
|
|
318 The format for the iCalendar object is based on the syntax of the |
|
|
|
319 text/directory media type [RFC2425]. While the iCalendar object is |
|
|
|
320 not a profile of the text/directory media type [RFC2425], it does |
|
|
|
321 reuse a number of the elements from the [RFC2425] specification. |
|
|
|
322 |
|
|
|
323 2.1. Formatting Conventions |
|
|
|
324 |
|
|
|
325 The elements defined in this memo are defined in prose. Many of the |
|
|
|
326 terms used to describe these have common usage that is different than |
|
|
|
327 the standards usage of this memo. In order to reference, within this |
|
|
|
328 memo, elements of the calendaring and scheduling model, core object |
|
|
|
329 (this memo), or interoperability protocol [2446bis] some formatting |
|
|
|
330 conventions have been used. Calendaring and scheduling roles are |
|
|
|
331 referred to in quoted-strings of text with the first character of |
|
|
|
332 each word in uppercase. For example, "Organizer" refers to a role of |
|
|
|
333 a "Calendar User" within the scheduling protocol defined by |
|
|
|
334 [2446bis]. Calendar components defined by this memo are referred to |
|
|
|
335 |
|
|
|
336 |
|
|
|
337 |
|
|
|
338 Desruisseaux Standards Track [Page 6] |
|
|
|
i 339 |
|
|
|
Err bitreich.org 70 |
|
|
|
340 RFC 5545 iCalendar September 2009 |
|
|
|
341 |
|
|
|
342 |
|
|
|
343 with capitalized, quoted-strings of text. All calendar components |
|
|
|
344 start with the letter "V". For example, "VEVENT" refers to the event |
|
|
|
345 calendar component, "VTODO" refers to the to-do calendar component, |
|
|
|
346 and "VJOURNAL" refers to the daily journal calendar component. |
|
|
|
347 Scheduling methods defined by iTIP [2446bis] are referred to with |
|
|
|
348 capitalized, quoted-strings of text. For example, "REQUEST" refers |
|
|
|
349 to the method for requesting a scheduling calendar component be |
|
|
|
350 created or modified, and "REPLY" refers to the method a recipient of |
|
|
|
351 a request uses to update their status with the "Organizer" of the |
|
|
|
352 calendar component. |
|
|
|
353 |
|
|
|
354 The properties defined by this memo are referred to with capitalized, |
|
|
|
355 quoted-strings of text, followed by the word "property". For |
|
|
|
356 example, "ATTENDEE" property refers to the iCalendar property used to |
|
|
|
357 convey the calendar address of a calendar user. Property parameters |
|
|
|
358 defined by this memo are referred to with lowercase, quoted-strings |
|
|
|
359 of text, followed by the word "parameter". For example, "value" |
|
|
|
360 parameter refers to the iCalendar property parameter used to override |
|
|
|
361 the default value type for a property value. Enumerated values |
|
|
|
362 defined by this memo are referred to with capitalized text, either |
|
|
|
363 alone or followed by the word "value". For example, the "MINUTELY" |
|
|
|
364 value can be used with the "FREQ" component of the "RECUR" value type |
|
|
|
365 to specify repeating components based on an interval of one minute or |
|
|
|
366 more. |
|
|
|
367 |
|
|
|
368 The following table lists the different characters from the |
|
|
|
369 [US-ASCII] character set that is referenced in this document. For |
|
|
|
370 each character, the table specifies the character name used |
|
|
|
371 throughout this document, along with its US-ASCII decimal codepoint. |
|
|
|
372 |
|
|
|
373 |
|
|
|
374 |
|
|
|
375 |
|
|
|
376 |
|
|
|
377 |
|
|
|
378 |
|
|
|
379 |
|
|
|
380 |
|
|
|
381 |
|
|
|
382 |
|
|
|
383 |
|
|
|
384 |
|
|
|
385 |
|
|
|
386 |
|
|
|
387 |
|
|
|
388 |
|
|
|
389 |
|
|
|
390 |
|
|
|
391 |
|
|
|
392 |
|
|
|
393 |
|
|
|
394 Desruisseaux Standards Track [Page 7] |
|
|
|
i 395 |
|
|
|
Err bitreich.org 70 |
|
|
|
396 RFC 5545 iCalendar September 2009 |
|
|
|
397 |
|
|
|
398 |
|
|
|
399 +------------------------+-------------------+ |
|
|
|
400 | Character name | Decimal codepoint | |
|
|
|
401 +------------------------+-------------------+ |
|
|
|
402 | HTAB | 9 | |
|
|
|
403 | LF | 10 | |
|
|
|
404 | CR | 13 | |
|
|
|
405 | DQUOTE | 22 | |
|
|
|
406 | SPACE | 32 | |
|
|
|
407 | PLUS SIGN | 43 | |
|
|
|
408 | COMMA | 44 | |
|
|
|
409 | HYPHEN-MINUS | 45 | |
|
|
|
410 | PERIOD | 46 | |
|
|
|
411 | SOLIDUS | 47 | |
|
|
|
412 | COLON | 58 | |
|
|
|
413 | SEMICOLON | 59 | |
|
|
|
414 | LATIN CAPITAL LETTER N | 78 | |
|
|
|
415 | LATIN CAPITAL LETTER T | 84 | |
|
|
|
416 | LATIN CAPITAL LETTER X | 88 | |
|
|
|
417 | LATIN CAPITAL LETTER Z | 90 | |
|
|
|
418 | BACKSLASH | 92 | |
|
|
|
419 | LATIN SMALL LETTER N | 110 | |
|
|
|
420 +------------------------+-------------------+ |
|
|
|
421 |
|
|
|
422 2.2. Related Memos |
|
|
|
423 |
|
|
|
424 Implementers will need to be familiar with several other memos that, |
|
|
|
425 along with this memo, form a framework for Internet calendaring and |
|
|
|
426 scheduling standards. This memo specifies a core specification of |
|
|
|
427 objects, value types, properties, and property parameters. |
|
|
|
428 |
|
|
|
429 o iTIP [2446bis] specifies an interoperability protocol for |
|
|
|
430 scheduling between different implementations; |
|
|
|
431 |
|
|
|
432 o iCalendar Message-Based Interoperability Protocol (iMIP) [2447bis] |
|
|
|
433 specifies an Internet email binding for [2446bis]. |
|
|
|
434 |
|
|
|
435 This memo does not attempt to repeat the specification of concepts or |
|
|
|
436 definitions from these other memos. Where possible, references are |
|
|
|
437 made to the memo that provides for the specification of these |
|
|
|
438 concepts or definitions. |
|
|
|
439 |
|
|
|
440 3. iCalendar Object Specification |
|
|
|
441 |
|
|
|
442 The following sections define the details of a Calendaring and |
|
|
|
443 Scheduling Core Object Specification. The Calendaring and Scheduling |
|
|
|
444 Core Object is a collection of calendaring and scheduling |
|
|
|
445 information. Typically, this information will consist of an |
|
|
|
446 iCalendar stream with one or more iCalendar objects. The body of the |
|
|
|
447 |
|
|
|
448 |
|
|
|
449 |
|
|
|
450 Desruisseaux Standards Track [Page 8] |
|
|
|
i 451 |
|
|
|
Err bitreich.org 70 |
|
|
|
452 RFC 5545 iCalendar September 2009 |
|
|
|
453 |
|
|
|
454 |
|
|
|
455 iCalendar object consists of a sequence of calendar properties and |
|
|
|
456 one or more calendar components. |
|
|
|
457 |
|
|
|
458 Section 3.1 defines the content line format; Section 3.2 defines the |
|
|
|
459 property parameter format; Section 3.3 defines the data types for |
|
|
|
460 property values; Section 3.4 defines the iCalendar object format; |
|
|
|
461 Section 3.5 defines the iCalendar property format; Section 3.6 |
|
|
|
462 defines the calendar component format; Section 3.7 defines calendar |
|
|
|
463 properties; and Section 3.8 defines calendar component properties. |
|
|
|
464 |
|
|
|
465 This information is intended to be an integral part of the MIME |
|
|
|
466 content type registration. In addition, this information can be used |
|
|
|
467 independent of such content registration. In particular, this memo |
|
|
|
468 has direct applicability for use as a calendaring and scheduling |
|
|
|
469 exchange format in file-, memory-, or network-based transport |
|
|
|
470 mechanisms. |
|
|
|
471 |
|
|
|
472 3.1. Content Lines |
|
|
|
473 |
|
|
|
474 The iCalendar object is organized into individual lines of text, |
|
|
|
475 called content lines. Content lines are delimited by a line break, |
|
|
|
476 which is a CRLF sequence (CR character followed by LF character). |
|
|
|
477 |
|
|
|
478 Lines of text SHOULD NOT be longer than 75 octets, excluding the line |
|
|
|
479 break. Long content lines SHOULD be split into a multiple line |
|
|
|
480 representations using a line "folding" technique. That is, a long |
|
|
|
481 line can be split between any two characters by inserting a CRLF |
|
|
|
482 immediately followed by a single linear white-space character (i.e., |
|
|
|
483 SPACE or HTAB). Any sequence of CRLF followed immediately by a |
|
|
|
484 single linear white-space character is ignored (i.e., removed) when |
|
|
|
485 processing the content type. |
|
|
|
486 |
|
|
|
487 For example, the line: |
|
|
|
488 |
|
|
|
489 DESCRIPTION:This is a long description that exists on a long line. |
|
|
|
490 |
|
|
|
491 Can be represented as: |
|
|
|
492 |
|
|
|
493 DESCRIPTION:This is a lo |
|
|
|
494 ng description |
|
|
|
495 that exists on a long line. |
|
|
|
496 |
|
|
|
497 The process of moving from this folded multiple-line representation |
|
|
|
498 to its single-line representation is called "unfolding". Unfolding |
|
|
|
499 is accomplished by removing the CRLF and the linear white-space |
|
|
|
500 character that immediately follows. |
|
|
|
501 |
|
|
|
502 |
|
|
|
503 |
|
|
|
504 |
|
|
|
505 |
|
|
|
506 Desruisseaux Standards Track [Page 9] |
|
|
|
i 507 |
|
|
|
Err bitreich.org 70 |
|
|
|
508 RFC 5545 iCalendar September 2009 |
|
|
|
509 |
|
|
|
510 |
|
|
|
511 When parsing a content line, folded lines MUST first be unfolded |
|
|
|
512 according to the unfolding procedure described above. |
|
|
|
513 |
|
|
|
514 Note: It is possible for very simple implementations to generate |
|
|
|
515 improperly folded lines in the middle of a UTF-8 multi-octet |
|
|
|
516 sequence. For this reason, implementations need to unfold lines |
|
|
|
517 in such a way to properly restore the original sequence. |
|
|
|
518 |
|
|
|
519 The content information associated with an iCalendar object is |
|
|
|
520 formatted using a syntax similar to that defined by [RFC2425]. That |
|
|
|
521 is, the content information consists of CRLF-separated content lines. |
|
|
|
522 |
|
|
|
523 The following notation defines the lines of content in an iCalendar |
|
|
|
524 object: |
|
|
|
525 |
|
|
|
526 contentline = name *(";" param ) ":" value CRLF |
|
|
|
527 ; This ABNF is just a general definition for an initial parsing |
|
|
|
528 ; of the content line into its property name, parameter list, |
|
|
|
529 ; and value string |
|
|
|
530 |
|
|
|
531 ; When parsing a content line, folded lines MUST first |
|
|
|
532 ; be unfolded according to the unfolding procedure |
|
|
|
533 ; described above. When generating a content line, lines |
|
|
|
534 ; longer than 75 octets SHOULD be folded according to |
|
|
|
535 ; the folding procedure described above. |
|
|
|
536 |
|
|
|
537 name = iana-token / x-name |
|
|
|
538 |
|
|
|
539 iana-token = 1*(ALPHA / DIGIT / "-") |
|
|
|
540 ; iCalendar identifier registered with IANA |
|
|
|
541 |
|
|
|
542 x-name = "X-" [vendorid "-"] 1*(ALPHA / DIGIT / "-") |
|
|
|
543 ; Reserved for experimental use. |
|
|
|
544 |
|
|
|
545 vendorid = 3*(ALPHA / DIGIT) |
|
|
|
546 ; Vendor identification |
|
|
|
547 |
|
|
|
548 param = param-name "=" param-value *("," param-value) |
|
|
|
549 ; Each property defines the specific ABNF for the parameters |
|
|
|
550 ; allowed on the property. Refer to specific properties for |
|
|
|
551 ; precise parameter ABNF. |
|
|
|
552 |
|
|
|
553 param-name = iana-token / x-name |
|
|
|
554 |
|
|
|
555 param-value = paramtext / quoted-string |
|
|
|
556 |
|
|
|
557 paramtext = *SAFE-CHAR |
|
|
|
558 |
|
|
|
559 |
|
|
|
560 |
|
|
|
561 |
|
|
|
562 Desruisseaux Standards Track [Page 10] |
|
|
|
i 563 |
|
|
|
Err bitreich.org 70 |
|
|
|
564 RFC 5545 iCalendar September 2009 |
|
|
|
565 |
|
|
|
566 |
|
|
|
567 value = *VALUE-CHAR |
|
|
|
568 |
|
|
|
569 quoted-string = DQUOTE *QSAFE-CHAR DQUOTE |
|
|
|
570 |
|
|
|
571 QSAFE-CHAR = WSP / %x21 / %x23-7E / NON-US-ASCII |
|
|
|
572 ; Any character except CONTROL and DQUOTE |
|
|
|
573 |
|
|
|
574 SAFE-CHAR = WSP / %x21 / %x23-2B / %x2D-39 / %x3C-7E |
|
|
|
575 / NON-US-ASCII |
|
|
|
576 ; Any character except CONTROL, DQUOTE, ";", ":", "," |
|
|
|
577 |
|
|
|
578 VALUE-CHAR = WSP / %x21-7E / NON-US-ASCII |
|
|
|
579 ; Any textual character |
|
|
|
580 |
|
|
|
581 NON-US-ASCII = UTF8-2 / UTF8-3 / UTF8-4 |
|
|
|
582 ; UTF8-2, UTF8-3, and UTF8-4 are defined in [RFC3629] |
|
|
|
583 |
|
|
|
584 CONTROL = %x00-08 / %x0A-1F / %x7F |
|
|
|
585 ; All the controls except HTAB |
|
|
|
586 |
|
|
|
587 The property value component of a content line has a format that is |
|
|
|
588 property specific. Refer to the section describing each property for |
|
|
|
589 a definition of this format. |
|
|
|
590 |
|
|
|
591 All names of properties, property parameters, enumerated property |
|
|
|
592 values and property parameter values are case-insensitive. However, |
|
|
|
593 all other property values are case-sensitive, unless otherwise |
|
|
|
594 stated. |
|
|
|
595 |
|
|
|
596 3.1.1. List and Field Separators |
|
|
|
597 |
|
|
|
598 Some properties and parameters allow a list of values. Values in a |
|
|
|
599 list of values MUST be separated by a COMMA character. There is no |
|
|
|
600 significance to the order of values in a list. For those parameter |
|
|
|
601 values (such as those that specify URI values) that are specified in |
|
|
|
602 quoted-strings, the individual quoted-strings are separated by a |
|
|
|
603 COMMA character. |
|
|
|
604 |
|
|
|
605 Some property values are defined in terms of multiple parts. These |
|
|
|
606 structured property values MUST have their value parts separated by a |
|
|
|
607 SEMICOLON character. |
|
|
|
608 |
|
|
|
609 Some properties allow a list of parameters. Each property parameter |
|
|
|
610 in a list of property parameters MUST be separated by a SEMICOLON |
|
|
|
611 character. |
|
|
|
612 |
|
|
|
613 |
|
|
|
614 |
|
|
|
615 |
|
|
|
616 |
|
|
|
617 |
|
|
|
618 Desruisseaux Standards Track [Page 11] |
|
|
|
i 619 |
|
|
|
Err bitreich.org 70 |
|
|
|
620 RFC 5545 iCalendar September 2009 |
|
|
|
621 |
|
|
|
622 |
|
|
|
623 Property parameters with values containing a COLON character, a |
|
|
|
624 SEMICOLON character or a COMMA character MUST be placed in quoted |
|
|
|
625 text. |
|
|
|
626 |
|
|
|
627 For example, in the following properties, a SEMICOLON is used to |
|
|
|
628 separate property parameters from each other and a COMMA character is |
|
|
|
629 used to separate property values in a value list. |
|
|
|
630 |
|
|
|
631 ATTENDEE;RSVP=TRUE;ROLE=REQ-PARTICIPANT:mailto: |
|
|
|
632 jsmith@example.com |
|
|
|
633 |
|
|
|
634 RDATE;VALUE=DATE:19970304,19970504,19970704,19970904 |
|
|
|
635 |
|
|
|
636 3.1.2. Multiple Values |
|
|
|
637 |
|
|
|
638 Some properties defined in the iCalendar object can have multiple |
|
|
|
639 values. The general rule for encoding multi-valued items is to |
|
|
|
640 simply create a new content line for each value, including the |
|
|
|
641 property name. However, it should be noted that some properties |
|
|
|
642 support encoding multiple values in a single property by separating |
|
|
|
643 the values with a COMMA character. Individual property definitions |
|
|
|
644 should be consulted for determining whether a specific property |
|
|
|
645 allows multiple values and in which of these two forms. Multi-valued |
|
|
|
646 properties MUST NOT be used to specify multiple language variants of |
|
|
|
647 the same value. Calendar applications SHOULD display all values. |
|
|
|
648 |
|
|
|
649 3.1.3. Binary Content |
|
|
|
650 |
|
|
|
651 Binary content information in an iCalendar object SHOULD be |
|
|
|
652 referenced using a URI within a property value. That is, the binary |
|
|
|
653 content information SHOULD be placed in an external MIME entity that |
|
|
|
654 can be referenced by a URI from within the iCalendar object. In |
|
|
|
655 applications where this is not feasible, binary content information |
|
|
|
656 can be included within an iCalendar object, but only after first |
|
|
|
657 encoding it into text using the "BASE64" encoding method defined in |
|
|
|
658 [RFC4648]. Inline binary content SHOULD only be used in applications |
|
|
|
659 whose special circumstances demand that an iCalendar object be |
|
|
|
660 expressed as a single entity. A property containing inline binary |
|
|
|
661 content information MUST specify the "ENCODING" property parameter. |
|
|
|
662 Binary content information placed external to the iCalendar object |
|
|
|
663 MUST be referenced by a uniform resource identifier (URI). |
|
|
|
664 |
|
|
|
665 The following example specifies an "ATTACH" property that references |
|
|
|
666 an attachment external to the iCalendar object with a URI reference: |
|
|
|
667 |
|
|
|
668 ATTACH:http://example.com/public/quarterly-report.doc |
|
|
|
669 |
|
|
|
670 |
|
|
|
671 |
|
|
|
672 |
|
|
|
673 |
|
|
|
674 Desruisseaux Standards Track [Page 12] |
|
|
|
i 675 |
|
|
|
Err bitreich.org 70 |
|
|
|
676 RFC 5545 iCalendar September 2009 |
|
|
|
677 |
|
|
|
678 |
|
|
|
679 The following example specifies an "ATTACH" property with inline |
|
|
|
680 binary encoded content information: |
|
|
|
681 |
|
|
|
682 ATTACH;FMTTYPE=text/plain;ENCODING=BASE64;VALUE=BINARY:VGhlIH |
|
|
|
683 F1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4 |
|
|
|
684 |
|
|
|
685 3.1.4. Character Set |
|
|
|
686 |
|
|
|
687 There is not a property parameter to declare the charset used in a |
|
|
|
688 property value. The default charset for an iCalendar stream is UTF-8 |
|
|
|
689 as defined in [RFC3629]. |
|
|
|
690 |
|
|
|
691 The "charset" Content-Type parameter MUST be used in MIME transports |
|
|
|
692 to specify the charset being used. |
|
|
|
693 |
|
|
|
694 3.2. Property Parameters |
|
|
|
695 |
|
|
|
696 A property can have attributes with which it is associated. These |
|
|
|
697 "property parameters" contain meta-information about the property or |
|
|
|
698 the property value. Property parameters are provided to specify such |
|
|
|
699 information as the location of an alternate text representation for a |
|
|
|
700 property value, the language of a text property value, the value type |
|
|
|
701 of the property value, and other attributes. |
|
|
|
702 |
|
|
|
703 Property parameter values that contain the COLON, SEMICOLON, or COMMA |
|
|
|
704 character separators MUST be specified as quoted-string text values. |
|
|
|
705 Property parameter values MUST NOT contain the DQUOTE character. The |
|
|
|
706 DQUOTE character is used as a delimiter for parameter values that |
|
|
|
707 contain restricted characters or URI text. For example: |
|
|
|
708 |
|
|
|
709 DESCRIPTION;ALTREP="cid:part1.0001@example.org":The Fall'98 Wild |
|
|
|
710 Wizards Conference - - Las Vegas\, NV\, USA |
|
|
|
711 |
|
|
|
712 Property parameter values that are not in quoted-strings are case- |
|
|
|
713 insensitive. |
|
|
|
714 |
|
|
|
715 The general property parameters defined by this memo are defined by |
|
|
|
716 the following notation: |
|
|
|
717 |
|
|
|
718 |
|
|
|
719 |
|
|
|
720 |
|
|
|
721 |
|
|
|
722 |
|
|
|
723 |
|
|
|
724 |
|
|
|
725 |
|
|
|
726 |
|
|
|
727 |
|
|
|
728 |
|
|
|
729 |
|
|
|
730 Desruisseaux Standards Track [Page 13] |
|
|
|
i 731 |
|
|
|
Err bitreich.org 70 |
|
|
|
732 RFC 5545 iCalendar September 2009 |
|
|
|
733 |
|
|
|
734 |
|
|
|
735 icalparameter = altrepparam ; Alternate text representation |
|
|
|
736 / cnparam ; Common name |
|
|
|
737 / cutypeparam ; Calendar user type |
|
|
|
738 / delfromparam ; Delegator |
|
|
|
739 / deltoparam ; Delegatee |
|
|
|
740 / dirparam ; Directory entry |
|
|
|
741 / encodingparam ; Inline encoding |
|
|
|
742 / fmttypeparam ; Format type |
|
|
|
743 / fbtypeparam ; Free/busy time type |
|
|
|
744 / languageparam ; Language for text |
|
|
|
745 / memberparam ; Group or list membership |
|
|
|
746 / partstatparam ; Participation status |
|
|
|
747 / rangeparam ; Recurrence identifier range |
|
|
|
748 / trigrelparam ; Alarm trigger relationship |
|
|
|
749 / reltypeparam ; Relationship type |
|
|
|
750 / roleparam ; Participation role |
|
|
|
751 / rsvpparam ; RSVP expectation |
|
|
|
752 / sentbyparam ; Sent by |
|
|
|
753 / tzidparam ; Reference to time zone object |
|
|
|
754 / valuetypeparam ; Property value data type |
|
|
|
755 / other-param |
|
|
|
756 |
|
|
|
757 other-param = (iana-param / x-param) |
|
|
|
758 |
|
|
|
759 iana-param = iana-token "=" param-value *("," param-value) |
|
|
|
760 ; Some other IANA-registered iCalendar parameter. |
|
|
|
761 |
|
|
|
762 x-param = x-name "=" param-value *("," param-value) |
|
|
|
763 ; A non-standard, experimental parameter. |
|
|
|
764 |
|
|
|
765 Applications MUST ignore x-param and iana-param values they don't |
|
|
|
766 recognize. |
|
|
|
767 |
|
|
|
768 3.2.1. Alternate Text Representation |
|
|
|
769 |
|
|
|
770 Parameter Name: ALTREP |
|
|
|
771 |
|
|
|
772 Purpose: To specify an alternate text representation for the |
|
|
|
773 property value. |
|
|
|
774 |
|
|
|
775 Format Definition: This property parameter is defined by the |
|
|
|
776 following notation: |
|
|
|
777 |
|
|
|
778 altrepparam = "ALTREP" "=" DQUOTE uri DQUOTE |
|
|
|
779 |
|
|
|
780 Description: This parameter specifies a URI that points to an |
|
|
|
781 alternate representation for a textual property value. A property |
|
|
|
782 specifying this parameter MUST also include a value that reflects |
|
|
|
783 |
|
|
|
784 |
|
|
|
785 |
|
|
|
786 Desruisseaux Standards Track [Page 14] |
|
|
|
i 787 |
|
|
|
Err bitreich.org 70 |
|
|
|
788 RFC 5545 iCalendar September 2009 |
|
|
|
789 |
|
|
|
790 |
|
|
|
791 the default representation of the text value. The URI parameter |
|
|
|
792 value MUST be specified in a quoted-string. |
|
|
|
793 |
|
|
|
794 Note: While there is no restriction imposed on the URI schemes |
|
|
|
795 allowed for this parameter, Content Identifier (CID) [RFC2392], |
|
|
|
796 HTTP [RFC2616], and HTTPS [RFC2818] are the URI schemes most |
|
|
|
797 commonly used by current implementations. |
|
|
|
798 |
|
|
|
799 Example: |
|
|
|
800 |
|
|
|
801 DESCRIPTION;ALTREP="CID:part3.msg.970415T083000@example.com": |
|
|
|
802 Project XYZ Review Meeting will include the following agenda |
|
|
|
803 items: (a) Market Overview\, (b) Finances\, (c) Project Man |
|
|
|
804 agement |
|
|
|
805 |
|
|
|
806 The "ALTREP" property parameter value might point to a "text/html" |
|
|
|
807 content portion. |
|
|
|
808 |
|
|
|
809 Content-Type:text/html |
|
|
|
810 Content-Id:<part3.msg.970415T083000@example.com> |
|
|
|
811 |
|
|
|
812 <html> |
|
|
|
813 <head> |
|
|
|
814 <title></title> |
|
|
|
815 </head> |
|
|
|
816 <body> |
|
|
|
817 <p> |
|
|
|
818 <b>Project XYZ Review Meeting</b> will include |
|
|
|
819 the following agenda items: |
|
|
|
820 <ol> |
|
|
|
821 <li>Market Overview</li> |
|
|
|
822 <li>Finances</li> |
|
|
|
823 <li>Project Management</li> |
|
|
|
824 </ol> |
|
|
|
825 </p> |
|
|
|
826 </body> |
|
|
|
827 </html> |
|
|
|
828 |
|
|
|
829 3.2.2. Common Name |
|
|
|
830 |
|
|
|
831 Parameter Name: CN |
|
|
|
832 |
|
|
|
833 Purpose: To specify the common name to be associated with the |
|
|
|
834 calendar user specified by the property. |
|
|
|
835 |
|
|
|
836 Format Definition: This property parameter is defined by the |
|
|
|
837 following notation: |
|
|
|
838 |
|
|
|
839 |
|
|
|
840 |
|
|
|
841 |
|
|
|
842 Desruisseaux Standards Track [Page 15] |
|
|
|
i 843 |
|
|
|
Err bitreich.org 70 |
|
|
|
844 RFC 5545 iCalendar September 2009 |
|
|
|
845 |
|
|
|
846 |
|
|
|
847 cnparam = "CN" "=" param-value |
|
|
|
848 |
|
|
|
849 Description: This parameter can be specified on properties with a |
|
|
|
850 CAL-ADDRESS value type. The parameter specifies the common name |
|
|
|
851 to be associated with the calendar user specified by the property. |
|
|
|
852 The parameter value is text. The parameter value can be used for |
|
|
|
853 display text to be associated with the calendar address specified |
|
|
|
854 by the property. |
|
|
|
855 |
|
|
|
856 Example: |
|
|
|
857 |
|
|
|
858 ORGANIZER;CN="John Smith":mailto:jsmith@example.com |
|
|
|
859 |
|
|
|
860 3.2.3. Calendar User Type |
|
|
|
861 |
|
|
|
862 Parameter Name: CUTYPE |
|
|
|
863 |
|
|
|
864 Purpose: To identify the type of calendar user specified by the |
|
|
|
865 property. |
|
|
|
866 |
|
|
|
867 Format Definition: This property parameter is defined by the |
|
|
|
868 following notation: |
|
|
|
869 |
|
|
|
870 cutypeparam = "CUTYPE" "=" |
|
|
|
871 ("INDIVIDUAL" ; An individual |
|
|
|
872 / "GROUP" ; A group of individuals |
|
|
|
873 / "RESOURCE" ; A physical resource |
|
|
|
874 / "ROOM" ; A room resource |
|
|
|
875 / "UNKNOWN" ; Otherwise not known |
|
|
|
876 / x-name ; Experimental type |
|
|
|
877 / iana-token) ; Other IANA-registered |
|
|
|
878 ; type |
|
|
|
879 ; Default is INDIVIDUAL |
|
|
|
880 |
|
|
|
881 Description: This parameter can be specified on properties with a |
|
|
|
882 CAL-ADDRESS value type. The parameter identifies the type of |
|
|
|
883 calendar user specified by the property. If not specified on a |
|
|
|
884 property that allows this parameter, the default is INDIVIDUAL. |
|
|
|
885 Applications MUST treat x-name and iana-token values they don't |
|
|
|
886 recognize the same way as they would the UNKNOWN value. |
|
|
|
887 |
|
|
|
888 Example: |
|
|
|
889 |
|
|
|
890 ATTENDEE;CUTYPE=GROUP:mailto:ietf-calsch@example.org |
|
|
|
891 |
|
|
|
892 |
|
|
|
893 |
|
|
|
894 |
|
|
|
895 |
|
|
|
896 |
|
|
|
897 |
|
|
|
898 Desruisseaux Standards Track [Page 16] |
|
|
|
i 899 |
|
|
|
Err bitreich.org 70 |
|
|
|
900 RFC 5545 iCalendar September 2009 |
|
|
|
901 |
|
|
|
902 |
|
|
|
903 3.2.4. Delegators |
|
|
|
904 |
|
|
|
905 Parameter Name: DELEGATED-FROM |
|
|
|
906 |
|
|
|
907 Purpose: To specify the calendar users that have delegated their |
|
|
|
908 participation to the calendar user specified by the property. |
|
|
|
909 |
|
|
|
910 Format Definition: This property parameter is defined by the |
|
|
|
911 following notation: |
|
|
|
912 |
|
|
|
913 delfromparam = "DELEGATED-FROM" "=" DQUOTE cal-address |
|
|
|
914 DQUOTE *("," DQUOTE cal-address DQUOTE) |
|
|
|
915 |
|
|
|
916 Description: This parameter can be specified on properties with a |
|
|
|
917 CAL-ADDRESS value type. This parameter specifies those calendar |
|
|
|
918 users that have delegated their participation in a group-scheduled |
|
|
|
919 event or to-do to the calendar user specified by the property. |
|
|
|
920 The individual calendar address parameter values MUST each be |
|
|
|
921 specified in a quoted-string. |
|
|
|
922 |
|
|
|
923 Example: |
|
|
|
924 |
|
|
|
925 ATTENDEE;DELEGATED-FROM="mailto:jsmith@example.com":mailto: |
|
|
|
926 jdoe@example.com |
|
|
|
927 |
|
|
|
928 3.2.5. Delegatees |
|
|
|
929 |
|
|
|
930 Parameter Name: DELEGATED-TO |
|
|
|
931 |
|
|
|
932 Purpose: To specify the calendar users to whom the calendar user |
|
|
|
933 specified by the property has delegated participation. |
|
|
|
934 |
|
|
|
935 Format Definition: This property parameter is defined by the |
|
|
|
936 following notation: |
|
|
|
937 |
|
|
|
938 deltoparam = "DELEGATED-TO" "=" DQUOTE cal-address DQUOTE |
|
|
|
939 *("," DQUOTE cal-address DQUOTE) |
|
|
|
940 |
|
|
|
941 Description: This parameter can be specified on properties with a |
|
|
|
942 CAL-ADDRESS value type. This parameter specifies those calendar |
|
|
|
943 users whom have been delegated participation in a group-scheduled |
|
|
|
944 event or to-do by the calendar user specified by the property. |
|
|
|
945 The individual calendar address parameter values MUST each be |
|
|
|
946 specified in a quoted-string. |
|
|
|
947 |
|
|
|
948 |
|
|
|
949 |
|
|
|
950 |
|
|
|
951 |
|
|
|
952 |
|
|
|
953 |
|
|
|
954 Desruisseaux Standards Track [Page 17] |
|
|
|
i 955 |
|
|
|
Err bitreich.org 70 |
|
|
|
956 RFC 5545 iCalendar September 2009 |
|
|
|
957 |
|
|
|
958 |
|
|
|
959 Example: |
|
|
|
960 |
|
|
|
961 ATTENDEE;DELEGATED-TO="mailto:jdoe@example.com","mailto:jqpublic |
|
|
|
962 @example.com":mailto:jsmith@example.com |
|
|
|
963 |
|
|
|
964 3.2.6. Directory Entry Reference |
|
|
|
965 |
|
|
|
966 Parameter Name: DIR |
|
|
|
967 |
|
|
|
968 Purpose: To specify reference to a directory entry associated with |
|
|
|
969 the calendar user specified by the property. |
|
|
|
970 |
|
|
|
971 Format Definition: This property parameter is defined by the |
|
|
|
972 following notation: |
|
|
|
973 |
|
|
|
974 dirparam = "DIR" "=" DQUOTE uri DQUOTE |
|
|
|
975 |
|
|
|
976 Description: This parameter can be specified on properties with a |
|
|
|
977 CAL-ADDRESS value type. The parameter specifies a reference to |
|
|
|
978 the directory entry associated with the calendar user specified by |
|
|
|
979 the property. The parameter value is a URI. The URI parameter |
|
|
|
980 value MUST be specified in a quoted-string. |
|
|
|
981 |
|
|
|
982 Note: While there is no restriction imposed on the URI schemes |
|
|
|
983 allowed for this parameter, CID [RFC2392], DATA [RFC2397], FILE |
|
|
|
984 [RFC1738], FTP [RFC1738], HTTP [RFC2616], HTTPS [RFC2818], LDAP |
|
|
|
985 [RFC4516], and MID [RFC2392] are the URI schemes most commonly |
|
|
|
986 used by current implementations. |
|
|
|
987 |
|
|
|
988 Example: |
|
|
|
989 |
|
|
|
990 ORGANIZER;DIR="ldap://example.com:6666/o=ABC%20Industries, |
|
|
|
991 c=US???(cn=Jim%20Dolittle)":mailto:jimdo@example.com |
|
|
|
992 |
|
|
|
993 3.2.7. Inline Encoding |
|
|
|
994 |
|
|
|
995 Parameter Name: ENCODING |
|
|
|
996 |
|
|
|
997 Purpose: To specify an alternate inline encoding for the property |
|
|
|
998 value. |
|
|
|
999 |
|
|
|
1000 Format Definition: This property parameter is defined by the |
|
|
|
1001 following notation: |
|
|
|
1002 |
|
|
|
1003 |
|
|
|
1004 |
|
|
|
1005 |
|
|
|
1006 |
|
|
|
1007 |
|
|
|
1008 |
|
|
|
1009 |
|
|
|
1010 Desruisseaux Standards Track [Page 18] |
|
|
|
i 1011 |
|
|
|
Err bitreich.org 70 |
|
|
|
1012 RFC 5545 iCalendar September 2009 |
|
|
|
1013 |
|
|
|
1014 |
|
|
|
1015 encodingparam = "ENCODING" "=" |
|
|
|
1016 ( "8BIT" |
|
|
|
1017 ; "8bit" text encoding is defined in [RFC2045] |
|
|
|
1018 / "BASE64" |
|
|
|
1019 ; "BASE64" binary encoding format is defined in [RFC4648] |
|
|
|
1020 ) |
|
|
|
1021 |
|
|
|
1022 Description: This property parameter identifies the inline encoding |
|
|
|
1023 used in a property value. The default encoding is "8BIT", |
|
|
|
1024 corresponding to a property value consisting of text. The |
|
|
|
1025 "BASE64" encoding type corresponds to a property value encoded |
|
|
|
1026 using the "BASE64" encoding defined in [RFC2045]. |
|
|
|
1027 |
|
|
|
1028 If the value type parameter is ";VALUE=BINARY", then the inline |
|
|
|
1029 encoding parameter MUST be specified with the value |
|
|
|
1030 ";ENCODING=BASE64". |
|
|
|
1031 |
|
|
|
1032 Example: |
|
|
|
1033 |
|
|
|
1034 ATTACH;FMTTYPE=text/plain;ENCODING=BASE64;VALUE=BINARY:TG9yZW |
|
|
|
1035 0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2ljaW |
|
|
|
1036 5nIGVsaXQsIHNlZCBkbyBlaXVzbW9kIHRlbXBvciBpbmNpZGlkdW50IHV0IG |
|
|
|
1037 xhYm9yZSBldCBkb2xvcmUgbWFnbmEgYWxpcXVhLiBVdCBlbmltIGFkIG1pbm |
|
|
|
1038 ltIHZlbmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaXRhdGlvbiB1bGxhbWNvIG |
|
|
|
1039 xhYm9yaXMgbmlzaSB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdW |
|
|
|
1040 F0LiBEdWlzIGF1dGUgaXJ1cmUgZG9sb3IgaW4gcmVwcmVoZW5kZXJpdCBpbi |
|
|
|
1041 B2b2x1cHRhdGUgdmVsaXQgZXNzZSBjaWxsdW0gZG9sb3JlIGV1IGZ1Z2lhdC |
|
|
|
1042 BudWxsYSBwYXJpYXR1ci4gRXhjZXB0ZXVyIHNpbnQgb2NjYWVjYXQgY3VwaW |
|
|
|
1043 RhdGF0IG5vbiBwcm9pZGVudCwgc3VudCBpbiBjdWxwYSBxdWkgb2ZmaWNpYS |
|
|
|
1044 BkZXNlcnVudCBtb2xsaXQgYW5pbSBpZCBlc3QgbGFib3J1bS4= |
|
|
|
1045 |
|
|
|
1046 3.2.8. Format Type |
|
|
|
1047 |
|
|
|
1048 Parameter Name: FMTTYPE |
|
|
|
1049 |
|
|
|
1050 Purpose: To specify the content type of a referenced object. |
|
|
|
1051 |
|
|
|
1052 Format Definition: This property parameter is defined by the |
|
|
|
1053 following notation: |
|
|
|
1054 |
|
|
|
1055 fmttypeparam = "FMTTYPE" "=" type-name "/" subtype-name |
|
|
|
1056 ; Where "type-name" and "subtype-name" are |
|
|
|
1057 ; defined in Section 4.2 of [RFC4288]. |
|
|
|
1058 |
|
|
|
1059 Description: This parameter can be specified on properties that are |
|
|
|
1060 used to reference an object. The parameter specifies the media |
|
|
|
1061 type [RFC4288] of the referenced object. For example, on the |
|
|
|
1062 "ATTACH" property, an FTP type URI value does not, by itself, |
|
|
|
1063 |
|
|
|
1064 |
|
|
|
1065 |
|
|
|
1066 Desruisseaux Standards Track [Page 19] |
|
|
|
i 1067 |
|
|
|
Err bitreich.org 70 |
|
|
|
1068 RFC 5545 iCalendar September 2009 |
|
|
|
1069 |
|
|
|
1070 |
|
|
|
1071 necessarily convey the type of content associated with the |
|
|
|
1072 resource. The parameter value MUST be the text for either an |
|
|
|
1073 IANA-registered media type or a non-standard media type. |
|
|
|
1074 |
|
|
|
1075 Example: |
|
|
|
1076 |
|
|
|
1077 ATTACH;FMTTYPE=application/msword:ftp://example.com/pub/docs/ |
|
|
|
1078 agenda.doc |
|
|
|
1079 |
|
|
|
1080 3.2.9. Free/Busy Time Type |
|
|
|
1081 |
|
|
|
1082 Parameter Name: FBTYPE |
|
|
|
1083 |
|
|
|
1084 Purpose: To specify the free or busy time type. |
|
|
|
1085 |
|
|
|
1086 Format Definition: This property parameter is defined by the |
|
|
|
1087 following notation: |
|
|
|
1088 |
|
|
|
1089 fbtypeparam = "FBTYPE" "=" ("FREE" / "BUSY" |
|
|
|
1090 / "BUSY-UNAVAILABLE" / "BUSY-TENTATIVE" |
|
|
|
1091 / x-name |
|
|
|
1092 ; Some experimental iCalendar free/busy type. |
|
|
|
1093 / iana-token) |
|
|
|
1094 ; Some other IANA-registered iCalendar free/busy type. |
|
|
|
1095 |
|
|
|
1096 Description: This parameter specifies the free or busy time type. |
|
|
|
1097 The value FREE indicates that the time interval is free for |
|
|
|
1098 scheduling. The value BUSY indicates that the time interval is |
|
|
|
1099 busy because one or more events have been scheduled for that |
|
|
|
1100 interval. The value BUSY-UNAVAILABLE indicates that the time |
|
|
|
1101 interval is busy and that the interval can not be scheduled. The |
|
|
|
1102 value BUSY-TENTATIVE indicates that the time interval is busy |
|
|
|
1103 because one or more events have been tentatively scheduled for |
|
|
|
1104 that interval. If not specified on a property that allows this |
|
|
|
1105 parameter, the default is BUSY. Applications MUST treat x-name |
|
|
|
1106 and iana-token values they don't recognize the same way as they |
|
|
|
1107 would the BUSY value. |
|
|
|
1108 |
|
|
|
1109 Example: The following is an example of this parameter on a |
|
|
|
1110 "FREEBUSY" property. |
|
|
|
1111 |
|
|
|
1112 FREEBUSY;FBTYPE=BUSY:19980415T133000Z/19980415T170000Z |
|
|
|
1113 |
|
|
|
1114 |
|
|
|
1115 |
|
|
|
1116 |
|
|
|
1117 |
|
|
|
1118 |
|
|
|
1119 |
|
|
|
1120 |
|
|
|
1121 |
|
|
|
1122 Desruisseaux Standards Track [Page 20] |
|
|
|
i 1123 |
|
|
|
Err bitreich.org 70 |
|
|
|
1124 RFC 5545 iCalendar September 2009 |
|
|
|
1125 |
|
|
|
1126 |
|
|
|
1127 3.2.10. Language |
|
|
|
1128 |
|
|
|
1129 Parameter Name: LANGUAGE |
|
|
|
1130 |
|
|
|
1131 Purpose: To specify the language for text values in a property or |
|
|
|
1132 property parameter. |
|
|
|
1133 |
|
|
|
1134 Format Definition: This property parameter is defined by the |
|
|
|
1135 following notation: |
|
|
|
1136 |
|
|
|
1137 languageparam = "LANGUAGE" "=" language |
|
|
|
1138 |
|
|
|
1139 language = Language-Tag |
|
|
|
1140 ; As defined in [RFC5646]. |
|
|
|
1141 |
|
|
|
1142 Description: This parameter identifies the language of the text in |
|
|
|
1143 the property value and of all property parameter values of the |
|
|
|
1144 property. The value of the "LANGUAGE" property parameter is that |
|
|
|
1145 defined in [RFC5646]. |
|
|
|
1146 |
|
|
|
1147 For transport in a MIME entity, the Content-Language header field |
|
|
|
1148 can be used to set the default language for the entire body part. |
|
|
|
1149 Otherwise, no default language is assumed. |
|
|
|
1150 |
|
|
|
1151 Example: The following are examples of this parameter on the |
|
|
|
1152 "SUMMARY" and "LOCATION" properties: |
|
|
|
1153 |
|
|
|
1154 SUMMARY;LANGUAGE=en-US:Company Holiday Party |
|
|
|
1155 |
|
|
|
1156 LOCATION;LANGUAGE=en:Germany |
|
|
|
1157 |
|
|
|
1158 LOCATION;LANGUAGE=no:Tyskland |
|
|
|
1159 |
|
|
|
1160 3.2.11. Group or List Membership |
|
|
|
1161 |
|
|
|
1162 Parameter Name: MEMBER |
|
|
|
1163 |
|
|
|
1164 Purpose: To specify the group or list membership of the calendar |
|
|
|
1165 user specified by the property. |
|
|
|
1166 |
|
|
|
1167 Format Definition: This property parameter is defined by the |
|
|
|
1168 following notation: |
|
|
|
1169 |
|
|
|
1170 memberparam = "MEMBER" "=" DQUOTE cal-address DQUOTE |
|
|
|
1171 *("," DQUOTE cal-address DQUOTE) |
|
|
|
1172 |
|
|
|
1173 |
|
|
|
1174 |
|
|
|
1175 |
|
|
|
1176 |
|
|
|
1177 |
|
|
|
1178 Desruisseaux Standards Track [Page 21] |
|
|
|
i 1179 |
|
|
|
Err bitreich.org 70 |
|
|
|
1180 RFC 5545 iCalendar September 2009 |
|
|
|
1181 |
|
|
|
1182 |
|
|
|
1183 Description: This parameter can be specified on properties with a |
|
|
|
1184 CAL-ADDRESS value type. The parameter identifies the groups or |
|
|
|
1185 list membership for the calendar user specified by the property. |
|
|
|
1186 The parameter value is either a single calendar address in a |
|
|
|
1187 quoted-string or a COMMA-separated list of calendar addresses, |
|
|
|
1188 each in a quoted-string. The individual calendar address |
|
|
|
1189 parameter values MUST each be specified in a quoted-string. |
|
|
|
1190 |
|
|
|
1191 Example: |
|
|
|
1192 |
|
|
|
1193 ATTENDEE;MEMBER="mailto:ietf-calsch@example.org":mailto: |
|
|
|
1194 jsmith@example.com |
|
|
|
1195 |
|
|
|
1196 ATTENDEE;MEMBER="mailto:projectA@example.com","mailto:pr |
|
|
|
1197 ojectB@example.com":mailto:janedoe@example.com |
|
|
|
1198 |
|
|
|
1199 3.2.12. Participation Status |
|
|
|
1200 |
|
|
|
1201 Parameter Name: PARTSTAT |
|
|
|
1202 |
|
|
|
1203 Purpose: To specify the participation status for the calendar user |
|
|
|
1204 specified by the property. |
|
|
|
1205 |
|
|
|
1206 Format Definition: This property parameter is defined by the |
|
|
|
1207 following notation: |
|
|
|
1208 |
|
|
|
1209 partstatparam = "PARTSTAT" "=" |
|
|
|
1210 (partstat-event |
|
|
|
1211 / partstat-todo |
|
|
|
1212 / partstat-jour) |
|
|
|
1213 |
|
|
|
1214 partstat-event = ("NEEDS-ACTION" ; Event needs action |
|
|
|
1215 / "ACCEPTED" ; Event accepted |
|
|
|
1216 / "DECLINED" ; Event declined |
|
|
|
1217 / "TENTATIVE" ; Event tentatively |
|
|
|
1218 ; accepted |
|
|
|
1219 / "DELEGATED" ; Event delegated |
|
|
|
1220 / x-name ; Experimental status |
|
|
|
1221 / iana-token) ; Other IANA-registered |
|
|
|
1222 ; status |
|
|
|
1223 ; These are the participation statuses for a "VEVENT". |
|
|
|
1224 ; Default is NEEDS-ACTION. |
|
|
|
1225 |
|
|
|
1226 partstat-todo = ("NEEDS-ACTION" ; To-do needs action |
|
|
|
1227 / "ACCEPTED" ; To-do accepted |
|
|
|
1228 / "DECLINED" ; To-do declined |
|
|
|
1229 / "TENTATIVE" ; To-do tentatively |
|
|
|
1230 ; accepted |
|
|
|
1231 |
|
|
|
1232 |
|
|
|
1233 |
|
|
|
1234 Desruisseaux Standards Track [Page 22] |
|
|
|
i 1235 |
|
|
|
Err bitreich.org 70 |
|
|
|
1236 RFC 5545 iCalendar September 2009 |
|
|
|
1237 |
|
|
|
1238 |
|
|
|
1239 / "DELEGATED" ; To-do delegated |
|
|
|
1240 / "COMPLETED" ; To-do completed |
|
|
|
1241 ; COMPLETED property has |
|
|
|
1242 ; DATE-TIME completed |
|
|
|
1243 / "IN-PROCESS" ; To-do in process of |
|
|
|
1244 ; being completed |
|
|
|
1245 / x-name ; Experimental status |
|
|
|
1246 / iana-token) ; Other IANA-registered |
|
|
|
1247 ; status |
|
|
|
1248 ; These are the participation statuses for a "VTODO". |
|
|
|
1249 ; Default is NEEDS-ACTION. |
|
|
|
1250 |
|
|
|
1251 |
|
|
|
1252 |
|
|
|
1253 partstat-jour = ("NEEDS-ACTION" ; Journal needs action |
|
|
|
1254 / "ACCEPTED" ; Journal accepted |
|
|
|
1255 / "DECLINED" ; Journal declined |
|
|
|
1256 / x-name ; Experimental status |
|
|
|
1257 / iana-token) ; Other IANA-registered |
|
|
|
1258 ; status |
|
|
|
1259 ; These are the participation statuses for a "VJOURNAL". |
|
|
|
1260 ; Default is NEEDS-ACTION. |
|
|
|
1261 |
|
|
|
1262 Description: This parameter can be specified on properties with a |
|
|
|
1263 CAL-ADDRESS value type. The parameter identifies the |
|
|
|
1264 participation status for the calendar user specified by the |
|
|
|
1265 property value. The parameter values differ depending on whether |
|
|
|
1266 they are associated with a group-scheduled "VEVENT", "VTODO", or |
|
|
|
1267 "VJOURNAL". The values MUST match one of the values allowed for |
|
|
|
1268 the given calendar component. If not specified on a property that |
|
|
|
1269 allows this parameter, the default value is NEEDS-ACTION. |
|
|
|
1270 Applications MUST treat x-name and iana-token values they don't |
|
|
|
1271 recognize the same way as they would the NEEDS-ACTION value. |
|
|
|
1272 |
|
|
|
1273 Example: |
|
|
|
1274 |
|
|
|
1275 ATTENDEE;PARTSTAT=DECLINED:mailto:jsmith@example.com |
|
|
|
1276 |
|
|
|
1277 3.2.13. Recurrence Identifier Range |
|
|
|
1278 |
|
|
|
1279 Parameter Name: RANGE |
|
|
|
1280 |
|
|
|
1281 Purpose: To specify the effective range of recurrence instances from |
|
|
|
1282 the instance specified by the recurrence identifier specified by |
|
|
|
1283 the property. |
|
|
|
1284 |
|
|
|
1285 Format Definition: This property parameter is defined by the |
|
|
|
1286 following notation: |
|
|
|
1287 |
|
|
|
1288 |
|
|
|
1289 |
|
|
|
1290 Desruisseaux Standards Track [Page 23] |
|
|
|
i 1291 |
|
|
|
Err bitreich.org 70 |
|
|
|
1292 RFC 5545 iCalendar September 2009 |
|
|
|
1293 |
|
|
|
1294 |
|
|
|
1295 rangeparam = "RANGE" "=" "THISANDFUTURE" |
|
|
|
1296 ; To specify the instance specified by the recurrence identifier |
|
|
|
1297 ; and all subsequent recurrence instances. |
|
|
|
1298 |
|
|
|
1299 Description: This parameter can be specified on a property that |
|
|
|
1300 specifies a recurrence identifier. The parameter specifies the |
|
|
|
1301 effective range of recurrence instances that is specified by the |
|
|
|
1302 property. The effective range is from the recurrence identifier |
|
|
|
1303 specified by the property. If this parameter is not specified on |
|
|
|
1304 an allowed property, then the default range is the single instance |
|
|
|
1305 specified by the recurrence identifier value of the property. The |
|
|
|
1306 parameter value can only be "THISANDFUTURE" to indicate a range |
|
|
|
1307 defined by the recurrence identifier and all subsequent instances. |
|
|
|
1308 The value "THISANDPRIOR" is deprecated by this revision of |
|
|
|
1309 iCalendar and MUST NOT be generated by applications. |
|
|
|
1310 |
|
|
|
1311 Example: |
|
|
|
1312 |
|
|
|
1313 RECURRENCE-ID;RANGE=THISANDFUTURE:19980401T133000Z |
|
|
|
1314 |
|
|
|
1315 3.2.14. Alarm Trigger Relationship |
|
|
|
1316 |
|
|
|
1317 Parameter Name: RELATED |
|
|
|
1318 |
|
|
|
1319 Purpose: To specify the relationship of the alarm trigger with |
|
|
|
1320 respect to the start or end of the calendar component. |
|
|
|
1321 |
|
|
|
1322 Format Definition: This property parameter is defined by the |
|
|
|
1323 following notation: |
|
|
|
1324 |
|
|
|
1325 trigrelparam = "RELATED" "=" |
|
|
|
1326 ("START" ; Trigger off of start |
|
|
|
1327 / "END") ; Trigger off of end |
|
|
|
1328 |
|
|
|
1329 Description: This parameter can be specified on properties that |
|
|
|
1330 specify an alarm trigger with a "DURATION" value type. The |
|
|
|
1331 parameter specifies whether the alarm will trigger relative to the |
|
|
|
1332 start or end of the calendar component. The parameter value START |
|
|
|
1333 will set the alarm to trigger off the start of the calendar |
|
|
|
1334 component; the parameter value END will set the alarm to trigger |
|
|
|
1335 off the end of the calendar component. If the parameter is not |
|
|
|
1336 specified on an allowable property, then the default is START. |
|
|
|
1337 |
|
|
|
1338 Example: |
|
|
|
1339 |
|
|
|
1340 TRIGGER;RELATED=END:PT5M |
|
|
|
1341 |
|
|
|
1342 |
|
|
|
1343 |
|
|
|
1344 |
|
|
|
1345 |
|
|
|
1346 Desruisseaux Standards Track [Page 24] |
|
|
|
i 1347 |
|
|
|
Err bitreich.org 70 |
|
|
|
1348 RFC 5545 iCalendar September 2009 |
|
|
|
1349 |
|
|
|
1350 |
|
|
|
1351 3.2.15. Relationship Type |
|
|
|
1352 |
|
|
|
1353 Parameter Name: RELTYPE |
|
|
|
1354 |
|
|
|
1355 Purpose: To specify the type of hierarchical relationship associated |
|
|
|
1356 with the calendar component specified by the property. |
|
|
|
1357 |
|
|
|
1358 Format Definition: This property parameter is defined by the |
|
|
|
1359 following notation: |
|
|
|
1360 |
|
|
|
1361 reltypeparam = "RELTYPE" "=" |
|
|
|
1362 ("PARENT" ; Parent relationship - Default |
|
|
|
1363 / "CHILD" ; Child relationship |
|
|
|
1364 / "SIBLING" ; Sibling relationship |
|
|
|
1365 / iana-token ; Some other IANA-registered |
|
|
|
1366 ; iCalendar relationship type |
|
|
|
1367 / x-name) ; A non-standard, experimental |
|
|
|
1368 ; relationship type |
|
|
|
1369 |
|
|
|
1370 Description: This parameter can be specified on a property that |
|
|
|
1371 references another related calendar. The parameter specifies the |
|
|
|
1372 hierarchical relationship type of the calendar component |
|
|
|
1373 referenced by the property. The parameter value can be PARENT, to |
|
|
|
1374 indicate that the referenced calendar component is a superior of |
|
|
|
1375 calendar component; CHILD to indicate that the referenced calendar |
|
|
|
1376 component is a subordinate of the calendar component; or SIBLING |
|
|
|
1377 to indicate that the referenced calendar component is a peer of |
|
|
|
1378 the calendar component. If this parameter is not specified on an |
|
|
|
1379 allowable property, the default relationship type is PARENT. |
|
|
|
1380 Applications MUST treat x-name and iana-token values they don't |
|
|
|
1381 recognize the same way as they would the PARENT value. |
|
|
|
1382 |
|
|
|
1383 Example: |
|
|
|
1384 |
|
|
|
1385 RELATED-TO;RELTYPE=SIBLING:19960401-080045-4000F192713@ |
|
|
|
1386 example.com |
|
|
|
1387 |
|
|
|
1388 3.2.16. Participation Role |
|
|
|
1389 |
|
|
|
1390 Parameter Name: ROLE |
|
|
|
1391 |
|
|
|
1392 Purpose: To specify the participation role for the calendar user |
|
|
|
1393 specified by the property. |
|
|
|
1394 |
|
|
|
1395 Format Definition: This property parameter is defined by the |
|
|
|
1396 following notation: |
|
|
|
1397 |
|
|
|
1398 |
|
|
|
1399 |
|
|
|
1400 |
|
|
|
1401 |
|
|
|
1402 Desruisseaux Standards Track [Page 25] |
|
|
|
i 1403 |
|
|
|
Err bitreich.org 70 |
|
|
|
1404 RFC 5545 iCalendar September 2009 |
|
|
|
1405 |
|
|
|
1406 |
|
|
|
1407 roleparam = "ROLE" "=" |
|
|
|
1408 ("CHAIR" ; Indicates chair of the |
|
|
|
1409 ; calendar entity |
|
|
|
1410 / "REQ-PARTICIPANT" ; Indicates a participant whose |
|
|
|
1411 ; participation is required |
|
|
|
1412 / "OPT-PARTICIPANT" ; Indicates a participant whose |
|
|
|
1413 ; participation is optional |
|
|
|
1414 / "NON-PARTICIPANT" ; Indicates a participant who |
|
|
|
1415 ; is copied for information |
|
|
|
1416 ; purposes only |
|
|
|
1417 / x-name ; Experimental role |
|
|
|
1418 / iana-token) ; Other IANA role |
|
|
|
1419 ; Default is REQ-PARTICIPANT |
|
|
|
1420 |
|
|
|
1421 Description: This parameter can be specified on properties with a |
|
|
|
1422 CAL-ADDRESS value type. The parameter specifies the participation |
|
|
|
1423 role for the calendar user specified by the property in the group |
|
|
|
1424 schedule calendar component. If not specified on a property that |
|
|
|
1425 allows this parameter, the default value is REQ-PARTICIPANT. |
|
|
|
1426 Applications MUST treat x-name and iana-token values they don't |
|
|
|
1427 recognize the same way as they would the REQ-PARTICIPANT value. |
|
|
|
1428 |
|
|
|
1429 Example: |
|
|
|
1430 |
|
|
|
1431 ATTENDEE;ROLE=CHAIR:mailto:mrbig@example.com |
|
|
|
1432 |
|
|
|
1433 3.2.17. RSVP Expectation |
|
|
|
1434 |
|
|
|
1435 Parameter Name: RSVP |
|
|
|
1436 |
|
|
|
1437 Purpose: To specify whether there is an expectation of a favor of a |
|
|
|
1438 reply from the calendar user specified by the property value. |
|
|
|
1439 |
|
|
|
1440 Format Definition: This property parameter is defined by the |
|
|
|
1441 following notation: |
|
|
|
1442 |
|
|
|
1443 rsvpparam = "RSVP" "=" ("TRUE" / "FALSE") |
|
|
|
1444 ; Default is FALSE |
|
|
|
1445 |
|
|
|
1446 Description: This parameter can be specified on properties with a |
|
|
|
1447 CAL-ADDRESS value type. The parameter identifies the expectation |
|
|
|
1448 of a reply from the calendar user specified by the property value. |
|
|
|
1449 This parameter is used by the "Organizer" to request a |
|
|
|
1450 participation status reply from an "Attendee" of a group-scheduled |
|
|
|
1451 event or to-do. If not specified on a property that allows this |
|
|
|
1452 parameter, the default value is FALSE. |
|
|
|
1453 |
|
|
|
1454 |
|
|
|
1455 |
|
|
|
1456 |
|
|
|
1457 |
|
|
|
1458 Desruisseaux Standards Track [Page 26] |
|
|
|
i 1459 |
|
|
|
Err bitreich.org 70 |
|
|
|
1460 RFC 5545 iCalendar September 2009 |
|
|
|
1461 |
|
|
|
1462 |
|
|
|
1463 Example: |
|
|
|
1464 |
|
|
|
1465 ATTENDEE;RSVP=TRUE:mailto:jsmith@example.com |
|
|
|
1466 |
|
|
|
1467 3.2.18. Sent By |
|
|
|
1468 |
|
|
|
1469 Parameter Name: SENT-BY |
|
|
|
1470 |
|
|
|
1471 Purpose: To specify the calendar user that is acting on behalf of |
|
|
|
1472 the calendar user specified by the property. |
|
|
|
1473 |
|
|
|
1474 Format Definition: This property parameter is defined by the |
|
|
|
1475 following notation: |
|
|
|
1476 |
|
|
|
1477 sentbyparam = "SENT-BY" "=" DQUOTE cal-address DQUOTE |
|
|
|
1478 |
|
|
|
1479 Description: This parameter can be specified on properties with a |
|
|
|
1480 CAL-ADDRESS value type. The parameter specifies the calendar user |
|
|
|
1481 that is acting on behalf of the calendar user specified by the |
|
|
|
1482 property. The parameter value MUST be a mailto URI as defined in |
|
|
|
1483 [RFC2368]. The individual calendar address parameter values MUST |
|
|
|
1484 each be specified in a quoted-string. |
|
|
|
1485 |
|
|
|
1486 Example: |
|
|
|
1487 |
|
|
|
1488 ORGANIZER;SENT-BY="mailto:sray@example.com":mailto: |
|
|
|
1489 jsmith@example.com |
|
|
|
1490 |
|
|
|
1491 3.2.19. Time Zone Identifier |
|
|
|
1492 |
|
|
|
1493 Parameter Name: TZID |
|
|
|
1494 |
|
|
|
1495 Purpose: To specify the identifier for the time zone definition for |
|
|
|
1496 a time component in the property value. |
|
|
|
1497 |
|
|
|
1498 Format Definition: This property parameter is defined by the |
|
|
|
1499 following notation: |
|
|
|
1500 |
|
|
|
1501 tzidparam = "TZID" "=" [tzidprefix] paramtext |
|
|
|
1502 |
|
|
|
1503 tzidprefix = "/" |
|
|
|
1504 |
|
|
|
1505 Description: This parameter MUST be specified on the "DTSTART", |
|
|
|
1506 "DTEND", "DUE", "EXDATE", and "RDATE" properties when either a |
|
|
|
1507 DATE-TIME or TIME value type is specified and when the value is |
|
|
|
1508 neither a UTC or a "floating" time. Refer to the DATE-TIME or |
|
|
|
1509 TIME value type definition for a description of UTC and "floating |
|
|
|
1510 time" formats. This property parameter specifies a text value |
|
|
|
1511 |
|
|
|
1512 |
|
|
|
1513 |
|
|
|
1514 Desruisseaux Standards Track [Page 27] |
|
|
|
i 1515 |
|
|
|
Err bitreich.org 70 |
|
|
|
1516 RFC 5545 iCalendar September 2009 |
|
|
|
1517 |
|
|
|
1518 |
|
|
|
1519 that uniquely identifies the "VTIMEZONE" calendar component to be |
|
|
|
1520 used when evaluating the time portion of the property. The value |
|
|
|
1521 of the "TZID" property parameter will be equal to the value of the |
|
|
|
1522 "TZID" property for the matching time zone definition. An |
|
|
|
1523 individual "VTIMEZONE" calendar component MUST be specified for |
|
|
|
1524 each unique "TZID" parameter value specified in the iCalendar |
|
|
|
1525 object. |
|
|
|
1526 |
|
|
|
1527 The parameter MUST be specified on properties with a DATE-TIME |
|
|
|
1528 value if the DATE-TIME is not either a UTC or a "floating" time. |
|
|
|
1529 Failure to include and follow VTIMEZONE definitions in iCalendar |
|
|
|
1530 objects may lead to inconsistent understanding of the local time |
|
|
|
1531 at any given location. |
|
|
|
1532 |
|
|
|
1533 The presence of the SOLIDUS character as a prefix, indicates that |
|
|
|
1534 this "TZID" represents a unique ID in a globally defined time zone |
|
|
|
1535 registry (when such registry is defined). |
|
|
|
1536 |
|
|
|
1537 Note: This document does not define a naming convention for |
|
|
|
1538 time zone identifiers. Implementers may want to use the naming |
|
|
|
1539 conventions defined in existing time zone specifications such |
|
|
|
1540 as the public-domain TZ database [TZDB]. The specification of |
|
|
|
1541 globally unique time zone identifiers is not addressed by this |
|
|
|
1542 document and is left for future study. |
|
|
|
1543 |
|
|
|
1544 The following are examples of this property parameter: |
|
|
|
1545 |
|
|
|
1546 DTSTART;TZID=America/New_York:19980119T020000 |
|
|
|
1547 |
|
|
|
1548 DTEND;TZID=America/New_York:19980119T030000 |
|
|
|
1549 |
|
|
|
1550 The "TZID" property parameter MUST NOT be applied to DATE |
|
|
|
1551 properties and DATE-TIME or TIME properties whose time values are |
|
|
|
1552 specified in UTC. |
|
|
|
1553 |
|
|
|
1554 The use of local time in a DATE-TIME or TIME value without the |
|
|
|
1555 "TZID" property parameter is to be interpreted as floating time, |
|
|
|
1556 regardless of the existence of "VTIMEZONE" calendar components in |
|
|
|
1557 the iCalendar object. |
|
|
|
1558 |
|
|
|
1559 For more information, see the sections on the value types DATE- |
|
|
|
1560 TIME and TIME. |
|
|
|
1561 |
|
|
|
1562 |
|
|
|
1563 |
|
|
|
1564 |
|
|
|
1565 |
|
|
|
1566 |
|
|
|
1567 |
|
|
|
1568 |
|
|
|
1569 |
|
|
|
1570 Desruisseaux Standards Track [Page 28] |
|
|
|
i 1571 |
|
|
|
Err bitreich.org 70 |
|
|
|
1572 RFC 5545 iCalendar September 2009 |
|
|
|
1573 |
|
|
|
1574 |
|
|
|
1575 3.2.20. Value Data Types |
|
|
|
1576 |
|
|
|
1577 Parameter Name: VALUE |
|
|
|
1578 |
|
|
|
1579 Purpose: To explicitly specify the value type format for a property |
|
|
|
1580 value. |
|
|
|
1581 |
|
|
|
1582 Format Definition: This property parameter is defined by the |
|
|
|
1583 following notation: |
|
|
|
1584 |
|
|
|
1585 valuetypeparam = "VALUE" "=" valuetype |
|
|
|
1586 |
|
|
|
1587 valuetype = ("BINARY" |
|
|
|
1588 / "BOOLEAN" |
|
|
|
1589 / "CAL-ADDRESS" |
|
|
|
1590 / "DATE" |
|
|
|
1591 / "DATE-TIME" |
|
|
|
1592 / "DURATION" |
|
|
|
1593 / "FLOAT" |
|
|
|
1594 / "INTEGER" |
|
|
|
1595 / "PERIOD" |
|
|
|
1596 / "RECUR" |
|
|
|
1597 / "TEXT" |
|
|
|
1598 / "TIME" |
|
|
|
1599 / "URI" |
|
|
|
1600 / "UTC-OFFSET" |
|
|
|
1601 / x-name |
|
|
|
1602 ; Some experimental iCalendar value type. |
|
|
|
1603 / iana-token) |
|
|
|
1604 ; Some other IANA-registered iCalendar value type. |
|
|
|
1605 |
|
|
|
1606 Description: This parameter specifies the value type and format of |
|
|
|
1607 the property value. The property values MUST be of a single value |
|
|
|
1608 type. For example, a "RDATE" property cannot have a combination |
|
|
|
1609 of DATE-TIME and TIME value types. |
|
|
|
1610 |
|
|
|
1611 If the property's value is the default value type, then this |
|
|
|
1612 parameter need not be specified. However, if the property's |
|
|
|
1613 default value type is overridden by some other allowable value |
|
|
|
1614 type, then this parameter MUST be specified. |
|
|
|
1615 |
|
|
|
1616 Applications MUST preserve the value data for x-name and iana- |
|
|
|
1617 token values that they don't recognize without attempting to |
|
|
|
1618 interpret or parse the value data. |
|
|
|
1619 |
|
|
|
1620 |
|
|
|
1621 |
|
|
|
1622 |
|
|
|
1623 |
|
|
|
1624 |
|
|
|
1625 |
|
|
|
1626 Desruisseaux Standards Track [Page 29] |
|
|
|
i 1627 |
|
|
|
Err bitreich.org 70 |
|
|
|
1628 RFC 5545 iCalendar September 2009 |
|
|
|
1629 |
|
|
|
1630 |
|
|
|
1631 3.3. Property Value Data Types |
|
|
|
1632 |
|
|
|
1633 The properties in an iCalendar object are strongly typed. The |
|
|
|
1634 definition of each property restricts the value to be one of the |
|
|
|
1635 value data types, or simply value types, defined in this section. |
|
|
|
1636 The value type for a property will either be specified implicitly as |
|
|
|
1637 the default value type or will be explicitly specified with the |
|
|
|
1638 "VALUE" parameter. If the value type of a property is one of the |
|
|
|
1639 alternate valid types, then it MUST be explicitly specified with the |
|
|
|
1640 "VALUE" parameter. |
|
|
|
1641 |
|
|
|
1642 3.3.1. Binary |
|
|
|
1643 |
|
|
|
1644 Value Name: BINARY |
|
|
|
1645 |
|
|
|
1646 Purpose: This value type is used to identify properties that contain |
|
|
|
1647 a character encoding of inline binary data. For example, an |
|
|
|
1648 inline attachment of a document might be included in an iCalendar |
|
|
|
1649 object. |
|
|
|
1650 |
|
|
|
1651 Format Definition: This value type is defined by the following |
|
|
|
1652 notation: |
|
|
|
1653 |
|
|
|
1654 binary = *(4b-char) [b-end] |
|
|
|
1655 ; A "BASE64" encoded character string, as defined by [RFC4648]. |
|
|
|
1656 |
|
|
|
1657 b-end = (2b-char "==") / (3b-char "=") |
|
|
|
1658 |
|
|
|
1659 b-char = ALPHA / DIGIT / "+" / "/" |
|
|
|
1660 |
|
|
|
1661 Description: Property values with this value type MUST also include |
|
|
|
1662 the inline encoding parameter sequence of ";ENCODING=BASE64". |
|
|
|
1663 That is, all inline binary data MUST first be character encoded |
|
|
|
1664 using the "BASE64" encoding method defined in [RFC2045]. No |
|
|
|
1665 additional content value encoding (i.e., BACKSLASH character |
|
|
|
1666 encoding, see Section 3.3.11) is defined for this value type. |
|
|
|
1667 |
|
|
|
1668 |
|
|
|
1669 |
|
|
|
1670 |
|
|
|
1671 |
|
|
|
1672 |
|
|
|
1673 |
|
|
|
1674 |
|
|
|
1675 |
|
|
|
1676 |
|
|
|
1677 |
|
|
|
1678 |
|
|
|
1679 |
|
|
|
1680 |
|
|
|
1681 |
|
|
|
1682 Desruisseaux Standards Track [Page 30] |
|
|
|
i 1683 |
|
|
|
Err bitreich.org 70 |
|
|
|
1684 RFC 5545 iCalendar September 2009 |
|
|
|
1685 |
|
|
|
1686 |
|
|
|
1687 Example: The following is an example of a "BASE64" encoded binary |
|
|
|
1688 value data: |
|
|
|
1689 |
|
|
|
1690 ATTACH;FMTTYPE=image/vnd.microsoft.icon;ENCODING=BASE64;VALUE |
|
|
|
1691 =BINARY:AAABAAEAEBAQAAEABAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAA |
|
|
|
1692 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAgIAAAICAgADAwMAA////AAAA |
|
|
|
1693 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA |
|
|
|
1694 AAAAAAAAAAAAAAAAAAAAAAMwAAAAAAABNEMQAAAAAAAkQgAAAAAAJEREQgAA |
|
|
|
1695 ACECQ0QgEgAAQxQzM0E0AABERCRCREQAADRDJEJEQwAAAhA0QwEQAAAAAERE |
|
|
|
1696 AAAAAAAAREQAAAAAAAAkQgAAAAAAAAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAA |
|
|
|
1697 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA |
|
|
|
1698 AAAAAAAAAAAA |
|
|
|
1699 |
|
|
|
1700 3.3.2. Boolean |
|
|
|
1701 |
|
|
|
1702 Value Name: BOOLEAN |
|
|
|
1703 |
|
|
|
1704 Purpose: This value type is used to identify properties that contain |
|
|
|
1705 either a "TRUE" or "FALSE" Boolean value. |
|
|
|
1706 |
|
|
|
1707 Format Definition: This value type is defined by the following |
|
|
|
1708 notation: |
|
|
|
1709 |
|
|
|
1710 boolean = "TRUE" / "FALSE" |
|
|
|
1711 |
|
|
|
1712 Description: These values are case-insensitive text. No additional |
|
|
|
1713 content value encoding (i.e., BACKSLASH character encoding, see |
|
|
|
1714 Section 3.3.11) is defined for this value type. |
|
|
|
1715 |
|
|
|
1716 Example: The following is an example of a hypothetical property that |
|
|
|
1717 has a BOOLEAN value type: |
|
|
|
1718 |
|
|
|
1719 TRUE |
|
|
|
1720 |
|
|
|
1721 3.3.3. Calendar User Address |
|
|
|
1722 |
|
|
|
1723 Value Name: CAL-ADDRESS |
|
|
|
1724 |
|
|
|
1725 Purpose: This value type is used to identify properties that contain |
|
|
|
1726 a calendar user address. |
|
|
|
1727 |
|
|
|
1728 Format Definition: This value type is defined by the following |
|
|
|
1729 notation: |
|
|
|
1730 |
|
|
|
1731 cal-address = uri |
|
|
|
1732 |
|
|
|
1733 Description: The value is a URI as defined by [RFC3986] or any other |
|
|
|
1734 IANA-registered form for a URI. When used to address an Internet |
|
|
|
1735 |
|
|
|
1736 |
|
|
|
1737 |
|
|
|
1738 Desruisseaux Standards Track [Page 31] |
|
|
|
i 1739 |
|
|
|
Err bitreich.org 70 |
|
|
|
1740 RFC 5545 iCalendar September 2009 |
|
|
|
1741 |
|
|
|
1742 |
|
|
|
1743 email transport address for a calendar user, the value MUST be a |
|
|
|
1744 mailto URI, as defined by [RFC2368]. No additional content value |
|
|
|
1745 encoding (i.e., BACKSLASH character encoding, see Section 3.3.11) |
|
|
|
1746 is defined for this value type. |
|
|
|
1747 |
|
|
|
1748 Example: |
|
|
|
1749 |
|
|
|
1750 mailto:jane_doe@example.com |
|
|
|
1751 |
|
|
|
1752 3.3.4. Date |
|
|
|
1753 |
|
|
|
1754 Value Name: DATE |
|
|
|
1755 |
|
|
|
1756 Purpose: This value type is used to identify values that contain a |
|
|
|
1757 calendar date. |
|
|
|
1758 |
|
|
|
1759 Format Definition: This value type is defined by the following |
|
|
|
1760 notation: |
|
|
|
1761 |
|
|
|
1762 date = date-value |
|
|
|
1763 |
|
|
|
1764 date-value = date-fullyear date-month date-mday |
|
|
|
1765 date-fullyear = 4DIGIT |
|
|
|
1766 date-month = 2DIGIT ;01-12 |
|
|
|
1767 date-mday = 2DIGIT ;01-28, 01-29, 01-30, 01-31 |
|
|
|
1768 ;based on month/year |
|
|
|
1769 |
|
|
|
1770 Description: If the property permits, multiple "date" values are |
|
|
|
1771 specified as a COMMA-separated list of values. The format for the |
|
|
|
1772 value type is based on the [ISO.8601.2004] complete |
|
|
|
1773 representation, basic format for a calendar date. The textual |
|
|
|
1774 format specifies a four-digit year, two-digit month, and two-digit |
|
|
|
1775 day of the month. There are no separator characters between the |
|
|
|
1776 year, month, and day component text. |
|
|
|
1777 |
|
|
|
1778 No additional content value encoding (i.e., BACKSLASH character |
|
|
|
1779 encoding, see Section 3.3.11) is defined for this value type. |
|
|
|
1780 |
|
|
|
1781 Example: The following represents July 14, 1997: |
|
|
|
1782 |
|
|
|
1783 19970714 |
|
|
|
1784 |
|
|
|
1785 3.3.5. Date-Time |
|
|
|
1786 |
|
|
|
1787 Value Name: DATE-TIME |
|
|
|
1788 |
|
|
|
1789 Purpose: This value type is used to identify values that specify a |
|
|
|
1790 precise calendar date and time of day. |
|
|
|
1791 |
|
|
|
1792 |
|
|
|
1793 |
|
|
|
1794 Desruisseaux Standards Track [Page 32] |
|
|
|
i 1795 |
|
|
|
Err bitreich.org 70 |
|
|
|
1796 RFC 5545 iCalendar September 2009 |
|
|
|
1797 |
|
|
|
1798 |
|
|
|
1799 Format Definition: This value type is defined by the following |
|
|
|
1800 notation: |
|
|
|
1801 |
|
|
|
1802 date-time = date "T" time ;As specified in the DATE and TIME |
|
|
|
1803 ;value definitions |
|
|
|
1804 |
|
|
|
1805 Description: If the property permits, multiple "DATE-TIME" values |
|
|
|
1806 are specified as a COMMA-separated list of values. No additional |
|
|
|
1807 content value encoding (i.e., BACKSLASH character encoding, see |
|
|
|
1808 Section 3.3.11) is defined for this value type. |
|
|
|
1809 |
|
|
|
1810 The "DATE-TIME" value type is used to identify values that contain |
|
|
|
1811 a precise calendar date and time of day. The format is based on |
|
|
|
1812 the [ISO.8601.2004] complete representation, basic format for a |
|
|
|
1813 calendar date and time of day. The text format is a concatenation |
|
|
|
1814 of the "date", followed by the LATIN CAPITAL LETTER T character, |
|
|
|
1815 the time designator, followed by the "time" format. |
|
|
|
1816 |
|
|
|
1817 The "DATE-TIME" value type expresses time values in three forms: |
|
|
|
1818 |
|
|
|
1819 The form of date and time with UTC offset MUST NOT be used. For |
|
|
|
1820 example, the following is not valid for a DATE-TIME value: |
|
|
|
1821 |
|
|
|
1822 19980119T230000-0800 ;Invalid time format |
|
|
|
1823 |
|
|
|
1824 FORM #1: DATE WITH LOCAL TIME |
|
|
|
1825 |
|
|
|
1826 The date with local time form is simply a DATE-TIME value that |
|
|
|
1827 does not contain the UTC designator nor does it reference a time |
|
|
|
1828 zone. For example, the following represents January 18, 1998, at |
|
|
|
1829 11 PM: |
|
|
|
1830 |
|
|
|
1831 19980118T230000 |
|
|
|
1832 |
|
|
|
1833 DATE-TIME values of this type are said to be "floating" and are |
|
|
|
1834 not bound to any time zone in particular. They are used to |
|
|
|
1835 represent the same hour, minute, and second value regardless of |
|
|
|
1836 which time zone is currently being observed. For example, an |
|
|
|
1837 event can be defined that indicates that an individual will be |
|
|
|
1838 busy from 11:00 AM to 1:00 PM every day, no matter which time zone |
|
|
|
1839 the person is in. In these cases, a local time can be specified. |
|
|
|
1840 The recipient of an iCalendar object with a property value |
|
|
|
1841 consisting of a local time, without any relative time zone |
|
|
|
1842 information, SHOULD interpret the value as being fixed to whatever |
|
|
|
1843 time zone the "ATTENDEE" is in at any given moment. This means |
|
|
|
1844 that two "Attendees", in different time zones, receiving the same |
|
|
|
1845 event definition as a floating time, may be participating in the |
|
|
|
1846 |
|
|
|
1847 |
|
|
|
1848 |
|
|
|
1849 |
|
|
|
1850 Desruisseaux Standards Track [Page 33] |
|
|
|
i 1851 |
|
|
|
Err bitreich.org 70 |
|
|
|
1852 RFC 5545 iCalendar September 2009 |
|
|
|
1853 |
|
|
|
1854 |
|
|
|
1855 event at different actual times. Floating time SHOULD only be |
|
|
|
1856 used where that is the reasonable behavior. |
|
|
|
1857 |
|
|
|
1858 In most cases, a fixed time is desired. To properly communicate a |
|
|
|
1859 fixed time in a property value, either UTC time or local time with |
|
|
|
1860 time zone reference MUST be specified. |
|
|
|
1861 |
|
|
|
1862 The use of local time in a DATE-TIME value without the "TZID" |
|
|
|
1863 property parameter is to be interpreted as floating time, |
|
|
|
1864 regardless of the existence of "VTIMEZONE" calendar components in |
|
|
|
1865 the iCalendar object. |
|
|
|
1866 |
|
|
|
1867 FORM #2: DATE WITH UTC TIME |
|
|
|
1868 |
|
|
|
1869 The date with UTC time, or absolute time, is identified by a LATIN |
|
|
|
1870 CAPITAL LETTER Z suffix character, the UTC designator, appended to |
|
|
|
1871 the time value. For example, the following represents January 19, |
|
|
|
1872 1998, at 0700 UTC: |
|
|
|
1873 |
|
|
|
1874 19980119T070000Z |
|
|
|
1875 |
|
|
|
1876 The "TZID" property parameter MUST NOT be applied to DATE-TIME |
|
|
|
1877 properties whose time values are specified in UTC. |
|
|
|
1878 |
|
|
|
1879 FORM #3: DATE WITH LOCAL TIME AND TIME ZONE REFERENCE |
|
|
|
1880 |
|
|
|
1881 The date and local time with reference to time zone information is |
|
|
|
1882 identified by the use the "TZID" property parameter to reference |
|
|
|
1883 the appropriate time zone definition. "TZID" is discussed in |
|
|
|
1884 detail in Section 3.2.19. For example, the following represents |
|
|
|
1885 2:00 A.M. in New York on January 19, 1998: |
|
|
|
1886 |
|
|
|
1887 TZID=America/New_York:19980119T020000 |
|
|
|
1888 |
|
|
|
1889 If, based on the definition of the referenced time zone, the local |
|
|
|
1890 time described occurs more than once (when changing from daylight |
|
|
|
1891 to standard time), the DATE-TIME value refers to the first |
|
|
|
1892 occurrence of the referenced time. Thus, TZID=America/ |
|
|
|
1893 New_York:20071104T013000 indicates November 4, 2007 at 1:30 A.M. |
|
|
|
1894 EDT (UTC-04:00). If the local time described does not occur (when |
|
|
|
1895 changing from standard to daylight time), the DATE-TIME value is |
|
|
|
1896 interpreted using the UTC offset before the gap in local times. |
|
|
|
1897 Thus, TZID=America/New_York:20070311T023000 indicates March 11, |
|
|
|
1898 2007 at 3:30 A.M. EDT (UTC-04:00), one hour after 1:30 A.M. EST |
|
|
|
1899 (UTC-05:00). |
|
|
|
1900 |
|
|
|
1901 |
|
|
|
1902 |
|
|
|
1903 |
|
|
|
1904 |
|
|
|
1905 |
|
|
|
1906 Desruisseaux Standards Track [Page 34] |
|
|
|
i 1907 |
|
|
|
Err bitreich.org 70 |
|
|
|
1908 RFC 5545 iCalendar September 2009 |
|
|
|
1909 |
|
|
|
1910 |
|
|
|
1911 A time value MUST only specify the second 60 when specifying a |
|
|
|
1912 positive leap second. For example: |
|
|
|
1913 |
|
|
|
1914 19970630T235960Z |
|
|
|
1915 |
|
|
|
1916 Implementations that do not support leap seconds SHOULD interpret |
|
|
|
1917 the second 60 as equivalent to the second 59. |
|
|
|
1918 |
|
|
|
1919 Example: The following represents July 14, 1997, at 1:30 PM in New |
|
|
|
1920 York City in each of the three time formats, using the "DTSTART" |
|
|
|
1921 property. |
|
|
|
1922 |
|
|
|
1923 DTSTART:19970714T133000 ; Local time |
|
|
|
1924 DTSTART:19970714T173000Z ; UTC time |
|
|
|
1925 DTSTART;TZID=America/New_York:19970714T133000 |
|
|
|
1926 ; Local time and time |
|
|
|
1927 ; zone reference |
|
|
|
1928 |
|
|
|
1929 3.3.6. Duration |
|
|
|
1930 |
|
|
|
1931 Value Name: DURATION |
|
|
|
1932 |
|
|
|
1933 Purpose: This value type is used to identify properties that contain |
|
|
|
1934 a duration of time. |
|
|
|
1935 |
|
|
|
1936 Format Definition: This value type is defined by the following |
|
|
|
1937 notation: |
|
|
|
1938 |
|
|
|
1939 dur-value = (["+"] / "-") "P" (dur-date / dur-time / dur-week) |
|
|
|
1940 |
|
|
|
1941 dur-date = dur-day [dur-time] |
|
|
|
1942 dur-time = "T" (dur-hour / dur-minute / dur-second) |
|
|
|
1943 dur-week = 1*DIGIT "W" |
|
|
|
1944 dur-hour = 1*DIGIT "H" [dur-minute] |
|
|
|
1945 dur-minute = 1*DIGIT "M" [dur-second] |
|
|
|
1946 dur-second = 1*DIGIT "S" |
|
|
|
1947 dur-day = 1*DIGIT "D" |
|
|
|
1948 |
|
|
|
1949 Description: If the property permits, multiple "duration" values are |
|
|
|
1950 specified by a COMMA-separated list of values. The format is |
|
|
|
1951 based on the [ISO.8601.2004] complete representation basic format |
|
|
|
1952 with designators for the duration of time. The format can |
|
|
|
1953 represent nominal durations (weeks and days) and accurate |
|
|
|
1954 durations (hours, minutes, and seconds). Note that unlike |
|
|
|
1955 [ISO.8601.2004], this value type doesn't support the "Y" and "M" |
|
|
|
1956 designators to specify durations in terms of years and months. |
|
|
|
1957 |
|
|
|
1958 |
|
|
|
1959 |
|
|
|
1960 |
|
|
|
1961 |
|
|
|
1962 Desruisseaux Standards Track [Page 35] |
|
|
|
i 1963 |
|
|
|
Err bitreich.org 70 |
|
|
|
1964 RFC 5545 iCalendar September 2009 |
|
|
|
1965 |
|
|
|
1966 |
|
|
|
1967 The duration of a week or a day depends on its position in the |
|
|
|
1968 calendar. In the case of discontinuities in the time scale, such |
|
|
|
1969 as the change from standard time to daylight time and back, the |
|
|
|
1970 computation of the exact duration requires the subtraction or |
|
|
|
1971 addition of the change of duration of the discontinuity. Leap |
|
|
|
1972 seconds MUST NOT be considered when computing an exact duration. |
|
|
|
1973 When computing an exact duration, the greatest order time |
|
|
|
1974 components MUST be added first, that is, the number of days MUST |
|
|
|
1975 be added first, followed by the number of hours, number of |
|
|
|
1976 minutes, and number of seconds. |
|
|
|
1977 |
|
|
|
1978 Negative durations are typically used to schedule an alarm to |
|
|
|
1979 trigger before an associated time (see Section 3.8.6.3). |
|
|
|
1980 |
|
|
|
1981 No additional content value encoding (i.e., BACKSLASH character |
|
|
|
1982 encoding, see Section 3.3.11) are defined for this value type. |
|
|
|
1983 |
|
|
|
1984 Example: A duration of 15 days, 5 hours, and 20 seconds would be: |
|
|
|
1985 |
|
|
|
1986 P15DT5H0M20S |
|
|
|
1987 |
|
|
|
1988 A duration of 7 weeks would be: |
|
|
|
1989 |
|
|
|
1990 P7W |
|
|
|
1991 |
|
|
|
1992 3.3.7. Float |
|
|
|
1993 |
|
|
|
1994 Value Name: FLOAT |
|
|
|
1995 |
|
|
|
1996 Purpose: This value type is used to identify properties that contain |
|
|
|
1997 a real-number value. |
|
|
|
1998 |
|
|
|
1999 Format Definition: This value type is defined by the following |
|
|
|
2000 notation: |
|
|
|
2001 |
|
|
|
2002 float = (["+"] / "-") 1*DIGIT ["." 1*DIGIT] |
|
|
|
2003 |
|
|
|
2004 Description: If the property permits, multiple "float" values are |
|
|
|
2005 specified by a COMMA-separated list of values. |
|
|
|
2006 |
|
|
|
2007 No additional content value encoding (i.e., BACKSLASH character |
|
|
|
2008 encoding, see Section 3.3.11) is defined for this value type. |
|
|
|
2009 |
|
|
|
2010 Example: |
|
|
|
2011 |
|
|
|
2012 1000000.0000001 |
|
|
|
2013 1.333 |
|
|
|
2014 -3.14 |
|
|
|
2015 |
|
|
|
2016 |
|
|
|
2017 |
|
|
|
2018 Desruisseaux Standards Track [Page 36] |
|
|
|
i 2019 |
|
|
|
Err bitreich.org 70 |
|
|
|
2020 RFC 5545 iCalendar September 2009 |
|
|
|
2021 |
|
|
|
2022 |
|
|
|
2023 3.3.8. Integer |
|
|
|
2024 |
|
|
|
2025 Value Name: INTEGER |
|
|
|
2026 |
|
|
|
2027 Purpose: This value type is used to identify properties that contain |
|
|
|
2028 a signed integer value. |
|
|
|
2029 |
|
|
|
2030 Format Definition: This value type is defined by the following |
|
|
|
2031 notation: |
|
|
|
2032 |
|
|
|
2033 integer = (["+"] / "-") 1*DIGIT |
|
|
|
2034 |
|
|
|
2035 Description: If the property permits, multiple "integer" values are |
|
|
|
2036 specified by a COMMA-separated list of values. The valid range |
|
|
|
2037 for "integer" is -2147483648 to 2147483647. If the sign is not |
|
|
|
2038 specified, then the value is assumed to be positive. |
|
|
|
2039 |
|
|
|
2040 No additional content value encoding (i.e., BACKSLASH character |
|
|
|
2041 encoding, see Section 3.3.11) is defined for this value type. |
|
|
|
2042 |
|
|
|
2043 Example: |
|
|
|
2044 |
|
|
|
2045 1234567890 |
|
|
|
2046 -1234567890 |
|
|
|
2047 +1234567890 |
|
|
|
2048 432109876 |
|
|
|
2049 |
|
|
|
2050 3.3.9. Period of Time |
|
|
|
2051 |
|
|
|
2052 Value Name: PERIOD |
|
|
|
2053 |
|
|
|
2054 Purpose: This value type is used to identify values that contain a |
|
|
|
2055 precise period of time. |
|
|
|
2056 |
|
|
|
2057 Format Definition: This value type is defined by the following |
|
|
|
2058 notation: |
|
|
|
2059 |
|
|
|
2060 period = period-explicit / period-start |
|
|
|
2061 |
|
|
|
2062 period-explicit = date-time "/" date-time |
|
|
|
2063 ; [ISO.8601.2004] complete representation basic format for a |
|
|
|
2064 ; period of time consisting of a start and end. The start MUST |
|
|
|
2065 ; be before the end. |
|
|
|
2066 |
|
|
|
2067 period-start = date-time "/" dur-value |
|
|
|
2068 ; [ISO.8601.2004] complete representation basic format for a |
|
|
|
2069 ; period of time consisting of a start and positive duration |
|
|
|
2070 ; of time. |
|
|
|
2071 |
|
|
|
2072 |
|
|
|
2073 |
|
|
|
2074 Desruisseaux Standards Track [Page 37] |
|
|
|
i 2075 |
|
|
|
Err bitreich.org 70 |
|
|
|
2076 RFC 5545 iCalendar September 2009 |
|
|
|
2077 |
|
|
|
2078 |
|
|
|
2079 Description: If the property permits, multiple "period" values are |
|
|
|
2080 specified by a COMMA-separated list of values. There are two |
|
|
|
2081 forms of a period of time. First, a period of time is identified |
|
|
|
2082 by its start and its end. This format is based on the |
|
|
|
2083 [ISO.8601.2004] complete representation, basic format for "DATE- |
|
|
|
2084 TIME" start of the period, followed by a SOLIDUS character |
|
|
|
2085 followed by the "DATE-TIME" of the end of the period. The start |
|
|
|
2086 of the period MUST be before the end of the period. Second, a |
|
|
|
2087 period of time can also be defined by a start and a positive |
|
|
|
2088 duration of time. The format is based on the [ISO.8601.2004] |
|
|
|
2089 complete representation, basic format for the "DATE-TIME" start of |
|
|
|
2090 the period, followed by a SOLIDUS character, followed by the |
|
|
|
2091 [ISO.8601.2004] basic format for "DURATION" of the period. |
|
|
|
2092 |
|
|
|
2093 Example: The period starting at 18:00:00 UTC, on January 1, 1997 and |
|
|
|
2094 ending at 07:00:00 UTC on January 2, 1997 would be: |
|
|
|
2095 |
|
|
|
2096 19970101T180000Z/19970102T070000Z |
|
|
|
2097 |
|
|
|
2098 The period start at 18:00:00 on January 1, 1997 and lasting 5 |
|
|
|
2099 hours and 30 minutes would be: |
|
|
|
2100 |
|
|
|
2101 19970101T180000Z/PT5H30M |
|
|
|
2102 |
|
|
|
2103 No additional content value encoding (i.e., BACKSLASH character |
|
|
|
2104 encoding, see Section 3.3.11) is defined for this value type. |
|
|
|
2105 |
|
|
|
2106 3.3.10. Recurrence Rule |
|
|
|
2107 |
|
|
|
2108 Value Name: RECUR |
|
|
|
2109 |
|
|
|
2110 Purpose: This value type is used to identify properties that contain |
|
|
|
2111 a recurrence rule specification. |
|
|
|
2112 |
|
|
|
2113 Format Definition: This value type is defined by the following |
|
|
|
2114 notation: |
|
|
|
2115 |
|
|
|
2116 recur = recur-rule-part *( ";" recur-rule-part ) |
|
|
|
2117 ; |
|
|
|
2118 ; The rule parts are not ordered in any |
|
|
|
2119 ; particular sequence. |
|
|
|
2120 ; |
|
|
|
2121 ; The FREQ rule part is REQUIRED, |
|
|
|
2122 ; but MUST NOT occur more than once. |
|
|
|
2123 ; |
|
|
|
2124 ; The UNTIL or COUNT rule parts are OPTIONAL, |
|
|
|
2125 ; but they MUST NOT occur in the same 'recur'. |
|
|
|
2126 ; |
|
|
|
2127 |
|
|
|
2128 |
|
|
|
2129 |
|
|
|
2130 Desruisseaux Standards Track [Page 38] |
|
|
|
i 2131 |
|
|
|
Err bitreich.org 70 |
|
|
|
2132 RFC 5545 iCalendar September 2009 |
|
|
|
2133 |
|
|
|
2134 |
|
|
|
2135 ; The other rule parts are OPTIONAL, |
|
|
|
2136 ; but MUST NOT occur more than once. |
|
|
|
2137 |
|
|
|
2138 recur-rule-part = ( "FREQ" "=" freq ) |
|
|
|
2139 / ( "UNTIL" "=" enddate ) |
|
|
|
2140 / ( "COUNT" "=" 1*DIGIT ) |
|
|
|
2141 / ( "INTERVAL" "=" 1*DIGIT ) |
|
|
|
2142 / ( "BYSECOND" "=" byseclist ) |
|
|
|
2143 / ( "BYMINUTE" "=" byminlist ) |
|
|
|
2144 / ( "BYHOUR" "=" byhrlist ) |
|
|
|
2145 / ( "BYDAY" "=" bywdaylist ) |
|
|
|
2146 / ( "BYMONTHDAY" "=" bymodaylist ) |
|
|
|
2147 / ( "BYYEARDAY" "=" byyrdaylist ) |
|
|
|
2148 / ( "BYWEEKNO" "=" bywknolist ) |
|
|
|
2149 / ( "BYMONTH" "=" bymolist ) |
|
|
|
2150 / ( "BYSETPOS" "=" bysplist ) |
|
|
|
2151 / ( "WKST" "=" weekday ) |
|
|
|
2152 |
|
|
|
2153 freq = "SECONDLY" / "MINUTELY" / "HOURLY" / "DAILY" |
|
|
|
2154 / "WEEKLY" / "MONTHLY" / "YEARLY" |
|
|
|
2155 |
|
|
|
2156 enddate = date / date-time |
|
|
|
2157 |
|
|
|
2158 byseclist = ( seconds *("," seconds) ) |
|
|
|
2159 |
|
|
|
2160 seconds = 1*2DIGIT ;0 to 60 |
|
|
|
2161 |
|
|
|
2162 byminlist = ( minutes *("," minutes) ) |
|
|
|
2163 |
|
|
|
2164 minutes = 1*2DIGIT ;0 to 59 |
|
|
|
2165 |
|
|
|
2166 byhrlist = ( hour *("," hour) ) |
|
|
|
2167 |
|
|
|
2168 hour = 1*2DIGIT ;0 to 23 |
|
|
|
2169 |
|
|
|
2170 bywdaylist = ( weekdaynum *("," weekdaynum) ) |
|
|
|
2171 |
|
|
|
2172 weekdaynum = [[plus / minus] ordwk] weekday |
|
|
|
2173 |
|
|
|
2174 plus = "+" |
|
|
|
2175 |
|
|
|
2176 minus = "-" |
|
|
|
2177 |
|
|
|
2178 ordwk = 1*2DIGIT ;1 to 53 |
|
|
|
2179 |
|
|
|
2180 weekday = "SU" / "MO" / "TU" / "WE" / "TH" / "FR" / "SA" |
|
|
|
2181 ;Corresponding to SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, |
|
|
|
2182 ;FRIDAY, and SATURDAY days of the week. |
|
|
|
2183 |
|
|
|
2184 |
|
|
|
2185 |
|
|
|
2186 Desruisseaux Standards Track [Page 39] |
|
|
|
i 2187 |
|
|
|
Err bitreich.org 70 |
|
|
|
2188 RFC 5545 iCalendar September 2009 |
|
|
|
2189 |
|
|
|
2190 |
|
|
|
2191 bymodaylist = ( monthdaynum *("," monthdaynum) ) |
|
|
|
2192 |
|
|
|
2193 monthdaynum = [plus / minus] ordmoday |
|
|
|
2194 |
|
|
|
2195 ordmoday = 1*2DIGIT ;1 to 31 |
|
|
|
2196 |
|
|
|
2197 byyrdaylist = ( yeardaynum *("," yeardaynum) ) |
|
|
|
2198 |
|
|
|
2199 yeardaynum = [plus / minus] ordyrday |
|
|
|
2200 |
|
|
|
2201 ordyrday = 1*3DIGIT ;1 to 366 |
|
|
|
2202 |
|
|
|
2203 bywknolist = ( weeknum *("," weeknum) ) |
|
|
|
2204 |
|
|
|
2205 weeknum = [plus / minus] ordwk |
|
|
|
2206 |
|
|
|
2207 bymolist = ( monthnum *("," monthnum) ) |
|
|
|
2208 |
|
|
|
2209 monthnum = 1*2DIGIT ;1 to 12 |
|
|
|
2210 |
|
|
|
2211 bysplist = ( setposday *("," setposday) ) |
|
|
|
2212 |
|
|
|
2213 setposday = yeardaynum |
|
|
|
2214 |
|
|
|
2215 Description: This value type is a structured value consisting of a |
|
|
|
2216 list of one or more recurrence grammar parts. Each rule part is |
|
|
|
2217 defined by a NAME=VALUE pair. The rule parts are separated from |
|
|
|
2218 each other by the SEMICOLON character. The rule parts are not |
|
|
|
2219 ordered in any particular sequence. Individual rule parts MUST |
|
|
|
2220 only be specified once. Compliant applications MUST accept rule |
|
|
|
2221 parts ordered in any sequence, but to ensure backward |
|
|
|
2222 compatibility with applications that pre-date this revision of |
|
|
|
2223 iCalendar the FREQ rule part MUST be the first rule part specified |
|
|
|
2224 in a RECUR value. |
|
|
|
2225 |
|
|
|
2226 The FREQ rule part identifies the type of recurrence rule. This |
|
|
|
2227 rule part MUST be specified in the recurrence rule. Valid values |
|
|
|
2228 include SECONDLY, to specify repeating events based on an interval |
|
|
|
2229 of a second or more; MINUTELY, to specify repeating events based |
|
|
|
2230 on an interval of a minute or more; HOURLY, to specify repeating |
|
|
|
2231 events based on an interval of an hour or more; DAILY, to specify |
|
|
|
2232 repeating events based on an interval of a day or more; WEEKLY, to |
|
|
|
2233 specify repeating events based on an interval of a week or more; |
|
|
|
2234 MONTHLY, to specify repeating events based on an interval of a |
|
|
|
2235 month or more; and YEARLY, to specify repeating events based on an |
|
|
|
2236 interval of a year or more. |
|
|
|
2237 |
|
|
|
2238 |
|
|
|
2239 |
|
|
|
2240 |
|
|
|
2241 |
|
|
|
2242 Desruisseaux Standards Track [Page 40] |
|
|
|
i 2243 |
|
|
|
Err bitreich.org 70 |
|
|
|
2244 RFC 5545 iCalendar September 2009 |
|
|
|
2245 |
|
|
|
2246 |
|
|
|
2247 The INTERVAL rule part contains a positive integer representing at |
|
|
|
2248 which intervals the recurrence rule repeats. The default value is |
|
|
|
2249 "1", meaning every second for a SECONDLY rule, every minute for a |
|
|
|
2250 MINUTELY rule, every hour for an HOURLY rule, every day for a |
|
|
|
2251 DAILY rule, every week for a WEEKLY rule, every month for a |
|
|
|
2252 MONTHLY rule, and every year for a YEARLY rule. For example, |
|
|
|
2253 within a DAILY rule, a value of "8" means every eight days. |
|
|
|
2254 |
|
|
|
2255 The UNTIL rule part defines a DATE or DATE-TIME value that bounds |
|
|
|
2256 the recurrence rule in an inclusive manner. If the value |
|
|
|
2257 specified by UNTIL is synchronized with the specified recurrence, |
|
|
|
2258 this DATE or DATE-TIME becomes the last instance of the |
|
|
|
2259 recurrence. The value of the UNTIL rule part MUST have the same |
|
|
|
2260 value type as the "DTSTART" property. Furthermore, if the |
|
|
|
2261 "DTSTART" property is specified as a date with local time, then |
|
|
|
2262 the UNTIL rule part MUST also be specified as a date with local |
|
|
|
2263 time. If the "DTSTART" property is specified as a date with UTC |
|
|
|
2264 time or a date with local time and time zone reference, then the |
|
|
|
2265 UNTIL rule part MUST be specified as a date with UTC time. In the |
|
|
|
2266 case of the "STANDARD" and "DAYLIGHT" sub-components the UNTIL |
|
|
|
2267 rule part MUST always be specified as a date with UTC time. If |
|
|
|
2268 specified as a DATE-TIME value, then it MUST be specified in a UTC |
|
|
|
2269 time format. If not present, and the COUNT rule part is also not |
|
|
|
2270 present, the "RRULE" is considered to repeat forever. |
|
|
|
2271 |
|
|
|
2272 The COUNT rule part defines the number of occurrences at which to |
|
|
|
2273 range-bound the recurrence. The "DTSTART" property value always |
|
|
|
2274 counts as the first occurrence. |
|
|
|
2275 |
|
|
|
2276 The BYSECOND rule part specifies a COMMA-separated list of seconds |
|
|
|
2277 within a minute. Valid values are 0 to 60. The BYMINUTE rule |
|
|
|
2278 part specifies a COMMA-separated list of minutes within an hour. |
|
|
|
2279 Valid values are 0 to 59. The BYHOUR rule part specifies a COMMA- |
|
|
|
2280 separated list of hours of the day. Valid values are 0 to 23. |
|
|
|
2281 The BYSECOND, BYMINUTE and BYHOUR rule parts MUST NOT be specified |
|
|
|
2282 when the associated "DTSTART" property has a DATE value type. |
|
|
|
2283 These rule parts MUST be ignored in RECUR value that violate the |
|
|
|
2284 above requirement (e.g., generated by applications that pre-date |
|
|
|
2285 this revision of iCalendar). |
|
|
|
2286 |
|
|
|
2287 The BYDAY rule part specifies a COMMA-separated list of days of |
|
|
|
2288 the week; SU indicates Sunday; MO indicates Monday; TU indicates |
|
|
|
2289 Tuesday; WE indicates Wednesday; TH indicates Thursday; FR |
|
|
|
2290 indicates Friday; and SA indicates Saturday. |
|
|
|
2291 |
|
|
|
2292 Each BYDAY value can also be preceded by a positive (+n) or |
|
|
|
2293 negative (-n) integer. If present, this indicates the nth |
|
|
|
2294 occurrence of a specific day within the MONTHLY or YEARLY "RRULE". |
|
|
|
2295 |
|
|
|
2296 |
|
|
|
2297 |
|
|
|
2298 Desruisseaux Standards Track [Page 41] |
|
|
|
i 2299 |
|
|
|
Err bitreich.org 70 |
|
|
|
2300 RFC 5545 iCalendar September 2009 |
|
|
|
2301 |
|
|
|
2302 |
|
|
|
2303 For example, within a MONTHLY rule, +1MO (or simply 1MO) |
|
|
|
2304 represents the first Monday within the month, whereas -1MO |
|
|
|
2305 represents the last Monday of the month. The numeric value in a |
|
|
|
2306 BYDAY rule part with the FREQ rule part set to YEARLY corresponds |
|
|
|
2307 to an offset within the month when the BYMONTH rule part is |
|
|
|
2308 present, and corresponds to an offset within the year when the |
|
|
|
2309 BYWEEKNO or BYMONTH rule parts are present. If an integer |
|
|
|
2310 modifier is not present, it means all days of this type within the |
|
|
|
2311 specified frequency. For example, within a MONTHLY rule, MO |
|
|
|
2312 represents all Mondays within the month. The BYDAY rule part MUST |
|
|
|
2313 NOT be specified with a numeric value when the FREQ rule part is |
|
|
|
2314 not set to MONTHLY or YEARLY. Furthermore, the BYDAY rule part |
|
|
|
2315 MUST NOT be specified with a numeric value with the FREQ rule part |
|
|
|
2316 set to YEARLY when the BYWEEKNO rule part is specified. |
|
|
|
2317 |
|
|
|
2318 The BYMONTHDAY rule part specifies a COMMA-separated list of days |
|
|
|
2319 of the month. Valid values are 1 to 31 or -31 to -1. For |
|
|
|
2320 example, -10 represents the tenth to the last day of the month. |
|
|
|
2321 The BYMONTHDAY rule part MUST NOT be specified when the FREQ rule |
|
|
|
2322 part is set to WEEKLY. |
|
|
|
2323 |
|
|
|
2324 The BYYEARDAY rule part specifies a COMMA-separated list of days |
|
|
|
2325 of the year. Valid values are 1 to 366 or -366 to -1. For |
|
|
|
2326 example, -1 represents the last day of the year (December 31st) |
|
|
|
2327 and -306 represents the 306th to the last day of the year (March |
|
|
|
2328 1st). The BYYEARDAY rule part MUST NOT be specified when the FREQ |
|
|
|
2329 rule part is set to DAILY, WEEKLY, or MONTHLY. |
|
|
|
2330 |
|
|
|
2331 The BYWEEKNO rule part specifies a COMMA-separated list of |
|
|
|
2332 ordinals specifying weeks of the year. Valid values are 1 to 53 |
|
|
|
2333 or -53 to -1. This corresponds to weeks according to week |
|
|
|
2334 numbering as defined in [ISO.8601.2004]. A week is defined as a |
|
|
|
2335 seven day period, starting on the day of the week defined to be |
|
|
|
2336 the week start (see WKST). Week number one of the calendar year |
|
|
|
2337 is the first week that contains at least four (4) days in that |
|
|
|
2338 calendar year. This rule part MUST NOT be used when the FREQ rule |
|
|
|
2339 part is set to anything other than YEARLY. For example, 3 |
|
|
|
2340 represents the third week of the year. |
|
|
|
2341 |
|
|
|
2342 Note: Assuming a Monday week start, week 53 can only occur when |
|
|
|
2343 Thursday is January 1 or if it is a leap year and Wednesday is |
|
|
|
2344 January 1. |
|
|
|
2345 |
|
|
|
2346 The BYMONTH rule part specifies a COMMA-separated list of months |
|
|
|
2347 of the year. Valid values are 1 to 12. |
|
|
|
2348 |
|
|
|
2349 The WKST rule part specifies the day on which the workweek starts. |
|
|
|
2350 Valid values are MO, TU, WE, TH, FR, SA, and SU. This is |
|
|
|
2351 |
|
|
|
2352 |
|
|
|
2353 |
|
|
|
2354 Desruisseaux Standards Track [Page 42] |
|
|
|
i 2355 |
|
|
|
Err bitreich.org 70 |
|
|
|
2356 RFC 5545 iCalendar September 2009 |
|
|
|
2357 |
|
|
|
2358 |
|
|
|
2359 significant when a WEEKLY "RRULE" has an interval greater than 1, |
|
|
|
2360 and a BYDAY rule part is specified. This is also significant when |
|
|
|
2361 in a YEARLY "RRULE" when a BYWEEKNO rule part is specified. The |
|
|
|
2362 default value is MO. |
|
|
|
2363 |
|
|
|
2364 The BYSETPOS rule part specifies a COMMA-separated list of values |
|
|
|
2365 that corresponds to the nth occurrence within the set of |
|
|
|
2366 recurrence instances specified by the rule. BYSETPOS operates on |
|
|
|
2367 a set of recurrence instances in one interval of the recurrence |
|
|
|
2368 rule. For example, in a WEEKLY rule, the interval would be one |
|
|
|
2369 week A set of recurrence instances starts at the beginning of the |
|
|
|
2370 interval defined by the FREQ rule part. Valid values are 1 to 366 |
|
|
|
2371 or -366 to -1. It MUST only be used in conjunction with another |
|
|
|
2372 BYxxx rule part. For example "the last work day of the month" |
|
|
|
2373 could be represented as: |
|
|
|
2374 |
|
|
|
2375 FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=-1 |
|
|
|
2376 |
|
|
|
2377 Each BYSETPOS value can include a positive (+n) or negative (-n) |
|
|
|
2378 integer. If present, this indicates the nth occurrence of the |
|
|
|
2379 specific occurrence within the set of occurrences specified by the |
|
|
|
2380 rule. |
|
|
|
2381 |
|
|
|
2382 Recurrence rules may generate recurrence instances with an invalid |
|
|
|
2383 date (e.g., February 30) or nonexistent local time (e.g., 1:30 AM |
|
|
|
2384 on a day where the local time is moved forward by an hour at 1:00 |
|
|
|
2385 AM). Such recurrence instances MUST be ignored and MUST NOT be |
|
|
|
2386 counted as part of the recurrence set. |
|
|
|
2387 |
|
|
|
2388 Information, not contained in the rule, necessary to determine the |
|
|
|
2389 various recurrence instance start time and dates are derived from |
|
|
|
2390 the Start Time ("DTSTART") component attribute. For example, |
|
|
|
2391 "FREQ=YEARLY;BYMONTH=1" doesn't specify a specific day within the |
|
|
|
2392 month or a time. This information would be the same as what is |
|
|
|
2393 specified for "DTSTART". |
|
|
|
2394 |
|
|
|
2395 BYxxx rule parts modify the recurrence in some manner. BYxxx rule |
|
|
|
2396 parts for a period of time that is the same or greater than the |
|
|
|
2397 frequency generally reduce or limit the number of occurrences of |
|
|
|
2398 the recurrence generated. For example, "FREQ=DAILY;BYMONTH=1" |
|
|
|
2399 reduces the number of recurrence instances from all days (if |
|
|
|
2400 BYMONTH rule part is not present) to all days in January. BYxxx |
|
|
|
2401 rule parts for a period of time less than the frequency generally |
|
|
|
2402 increase or expand the number of occurrences of the recurrence. |
|
|
|
2403 For example, "FREQ=YEARLY;BYMONTH=1,2" increases the number of |
|
|
|
2404 days within the yearly recurrence set from 1 (if BYMONTH rule part |
|
|
|
2405 is not present) to 2. |
|
|
|
2406 |
|
|
|
2407 |
|
|
|
2408 |
|
|
|
2409 |
|
|
|
2410 Desruisseaux Standards Track [Page 43] |
|
|
|
i 2411 |
|
|
|
Err bitreich.org 70 |
|
|
|
2412 RFC 5545 iCalendar September 2009 |
|
|
|
2413 |
|
|
|
2414 |
|
|
|
2415 If multiple BYxxx rule parts are specified, then after evaluating |
|
|
|
2416 the specified FREQ and INTERVAL rule parts, the BYxxx rule parts |
|
|
|
2417 are applied to the current set of evaluated occurrences in the |
|
|
|
2418 following order: BYMONTH, BYWEEKNO, BYYEARDAY, BYMONTHDAY, BYDAY, |
|
|
|
2419 BYHOUR, BYMINUTE, BYSECOND and BYSETPOS; then COUNT and UNTIL are |
|
|
|
2420 evaluated. |
|
|
|
2421 |
|
|
|
2422 The table below summarizes the dependency of BYxxx rule part |
|
|
|
2423 expand or limit behavior on the FREQ rule part value. |
|
|
|
2424 |
|
|
|
2425 The term "N/A" means that the corresponding BYxxx rule part MUST |
|
|
|
2426 NOT be used with the corresponding FREQ value. |
|
|
|
2427 |
|
|
|
2428 BYDAY has some special behavior depending on the FREQ value and |
|
|
|
2429 this is described in separate notes below the table. |
|
|
|
2430 |
|
|
|
2431 +----------+--------+--------+-------+-------+------+-------+------+ |
|
|
|
2432 | |SECONDLY|MINUTELY|HOURLY |DAILY |WEEKLY|MONTHLY|YEARLY| |
|
|
|
2433 +----------+--------+--------+-------+-------+------+-------+------+ |
|
|
|
2434 |BYMONTH |Limit |Limit |Limit |Limit |Limit |Limit |Expand| |
|
|
|
2435 +----------+--------+--------+-------+-------+------+-------+------+ |
|
|
|
2436 |BYWEEKNO |N/A |N/A |N/A |N/A |N/A |N/A |Expand| |
|
|
|
2437 +----------+--------+--------+-------+-------+------+-------+------+ |
|
|
|
2438 |BYYEARDAY |Limit |Limit |Limit |N/A |N/A |N/A |Expand| |
|
|
|
2439 +----------+--------+--------+-------+-------+------+-------+------+ |
|
|
|
2440 |BYMONTHDAY|Limit |Limit |Limit |Limit |N/A |Expand |Expand| |
|
|
|
2441 +----------+--------+--------+-------+-------+------+-------+------+ |
|
|
|
2442 |BYDAY |Limit |Limit |Limit |Limit |Expand|Note 1 |Note 2| |
|
|
|
2443 +----------+--------+--------+-------+-------+------+-------+------+ |
|
|
|
2444 |BYHOUR |Limit |Limit |Limit |Expand |Expand|Expand |Expand| |
|
|
|
2445 +----------+--------+--------+-------+-------+------+-------+------+ |
|
|
|
2446 |BYMINUTE |Limit |Limit |Expand |Expand |Expand|Expand |Expand| |
|
|
|
2447 +----------+--------+--------+-------+-------+------+-------+------+ |
|
|
|
2448 |BYSECOND |Limit |Expand |Expand |Expand |Expand|Expand |Expand| |
|
|
|
2449 +----------+--------+--------+-------+-------+------+-------+------+ |
|
|
|
2450 |BYSETPOS |Limit |Limit |Limit |Limit |Limit |Limit |Limit | |
|
|
|
2451 +----------+--------+--------+-------+-------+------+-------+------+ |
|
|
|
2452 |
|
|
|
2453 Note 1: Limit if BYMONTHDAY is present; otherwise, special expand |
|
|
|
2454 for MONTHLY. |
|
|
|
2455 |
|
|
|
2456 Note 2: Limit if BYYEARDAY or BYMONTHDAY is present; otherwise, |
|
|
|
2457 special expand for WEEKLY if BYWEEKNO present; otherwise, |
|
|
|
2458 special expand for MONTHLY if BYMONTH present; otherwise, |
|
|
|
2459 special expand for YEARLY. |
|
|
|
2460 |
|
|
|
2461 |
|
|
|
2462 |
|
|
|
2463 |
|
|
|
2464 |
|
|
|
2465 |
|
|
|
2466 Desruisseaux Standards Track [Page 44] |
|
|
|
i 2467 |
|
|
|
Err bitreich.org 70 |
|
|
|
2468 RFC 5545 iCalendar September 2009 |
|
|
|
2469 |
|
|
|
2470 |
|
|
|
2471 Here is an example of evaluating multiple BYxxx rule parts. |
|
|
|
2472 |
|
|
|
2473 DTSTART;TZID=America/New_York:19970105T083000 |
|
|
|
2474 RRULE:FREQ=YEARLY;INTERVAL=2;BYMONTH=1;BYDAY=SU;BYHOUR=8,9; |
|
|
|
2475 BYMINUTE=30 |
|
|
|
2476 |
|
|
|
2477 First, the "INTERVAL=2" would be applied to "FREQ=YEARLY" to |
|
|
|
2478 arrive at "every other year". Then, "BYMONTH=1" would be applied |
|
|
|
2479 to arrive at "every January, every other year". Then, "BYDAY=SU" |
|
|
|
2480 would be applied to arrive at "every Sunday in January, every |
|
|
|
2481 other year". Then, "BYHOUR=8,9" would be applied to arrive at |
|
|
|
2482 "every Sunday in January at 8 AM and 9 AM, every other year". |
|
|
|
2483 Then, "BYMINUTE=30" would be applied to arrive at "every Sunday in |
|
|
|
2484 January at 8:30 AM and 9:30 AM, every other year". Then, lacking |
|
|
|
2485 information from "RRULE", the second is derived from "DTSTART", to |
|
|
|
2486 end up in "every Sunday in January at 8:30:00 AM and 9:30:00 AM, |
|
|
|
2487 every other year". Similarly, if the BYMINUTE, BYHOUR, BYDAY, |
|
|
|
2488 BYMONTHDAY, or BYMONTH rule part were missing, the appropriate |
|
|
|
2489 minute, hour, day, or month would have been retrieved from the |
|
|
|
2490 "DTSTART" property. |
|
|
|
2491 |
|
|
|
2492 If the computed local start time of a recurrence instance does not |
|
|
|
2493 exist, or occurs more than once, for the specified time zone, the |
|
|
|
2494 time of the recurrence instance is interpreted in the same manner |
|
|
|
2495 as an explicit DATE-TIME value describing that date and time, as |
|
|
|
2496 specified in Section 3.3.5. |
|
|
|
2497 |
|
|
|
2498 No additional content value encoding (i.e., BACKSLASH character |
|
|
|
2499 encoding, see Section 3.3.11) is defined for this value type. |
|
|
|
2500 |
|
|
|
2501 Example: The following is a rule that specifies 10 occurrences that |
|
|
|
2502 occur every other day: |
|
|
|
2503 |
|
|
|
2504 FREQ=DAILY;COUNT=10;INTERVAL=2 |
|
|
|
2505 |
|
|
|
2506 There are other examples specified in Section 3.8.5.3. |
|
|
|
2507 |
|
|
|
2508 3.3.11. Text |
|
|
|
2509 |
|
|
|
2510 Value Name: TEXT |
|
|
|
2511 |
|
|
|
2512 Purpose: This value type is used to identify values that contain |
|
|
|
2513 human-readable text. |
|
|
|
2514 |
|
|
|
2515 Format Definition: This value type is defined by the following |
|
|
|
2516 notation: |
|
|
|
2517 |
|
|
|
2518 |
|
|
|
2519 |
|
|
|
2520 |
|
|
|
2521 |
|
|
|
2522 Desruisseaux Standards Track [Page 45] |
|
|
|
i 2523 |
|
|
|
Err bitreich.org 70 |
|
|
|
2524 RFC 5545 iCalendar September 2009 |
|
|
|
2525 |
|
|
|
2526 |
|
|
|
2527 text = *(TSAFE-CHAR / ":" / DQUOTE / ESCAPED-CHAR) |
|
|
|
2528 ; Folded according to description above |
|
|
|
2529 |
|
|
|
2530 ESCAPED-CHAR = ("\\" / "\;" / "\," / "\N" / "\n") |
|
|
|
2531 ; \\ encodes \, \N or \n encodes newline |
|
|
|
2532 ; \; encodes ;, \, encodes , |
|
|
|
2533 |
|
|
|
2534 TSAFE-CHAR = WSP / %x21 / %x23-2B / %x2D-39 / %x3C-5B / |
|
|
|
2535 %x5D-7E / NON-US-ASCII |
|
|
|
2536 ; Any character except CONTROLs not needed by the current |
|
|
|
2537 ; character set, DQUOTE, ";", ":", "\", "," |
|
|
|
2538 |
|
|
|
2539 Description: If the property permits, multiple TEXT values are |
|
|
|
2540 specified by a COMMA-separated list of values. |
|
|
|
2541 |
|
|
|
2542 The language in which the text is represented can be controlled by |
|
|
|
2543 the "LANGUAGE" property parameter. |
|
|
|
2544 |
|
|
|
2545 An intentional formatted text line break MUST only be included in |
|
|
|
2546 a "TEXT" property value by representing the line break with the |
|
|
|
2547 character sequence of BACKSLASH, followed by a LATIN SMALL LETTER |
|
|
|
2548 N or a LATIN CAPITAL LETTER N, that is "\n" or "\N". |
|
|
|
2549 |
|
|
|
2550 The "TEXT" property values may also contain special characters |
|
|
|
2551 that are used to signify delimiters, such as a COMMA character for |
|
|
|
2552 lists of values or a SEMICOLON character for structured values. |
|
|
|
2553 In order to support the inclusion of these special characters in |
|
|
|
2554 "TEXT" property values, they MUST be escaped with a BACKSLASH |
|
|
|
2555 character. A BACKSLASH character in a "TEXT" property value MUST |
|
|
|
2556 be escaped with another BACKSLASH character. A COMMA character in |
|
|
|
2557 a "TEXT" property value MUST be escaped with a BACKSLASH |
|
|
|
2558 character. A SEMICOLON character in a "TEXT" property value MUST |
|
|
|
2559 be escaped with a BACKSLASH character. However, a COLON character |
|
|
|
2560 in a "TEXT" property value SHALL NOT be escaped with a BACKSLASH |
|
|
|
2561 character. |
|
|
|
2562 |
|
|
|
2563 Example: A multiple line value of: |
|
|
|
2564 |
|
|
|
2565 Project XYZ Final Review |
|
|
|
2566 Conference Room - 3B |
|
|
|
2567 Come Prepared. |
|
|
|
2568 |
|
|
|
2569 would be represented as: |
|
|
|
2570 |
|
|
|
2571 Project XYZ Final Review\nConference Room - 3B\nCome Prepared. |
|
|
|
2572 |
|
|
|
2573 |
|
|
|
2574 |
|
|
|
2575 |
|
|
|
2576 |
|
|
|
2577 |
|
|
|
2578 Desruisseaux Standards Track [Page 46] |
|
|
|
i 2579 |
|
|
|
Err bitreich.org 70 |
|
|
|
2580 RFC 5545 iCalendar September 2009 |
|
|
|
2581 |
|
|
|
2582 |
|
|
|
2583 3.3.12. Time |
|
|
|
2584 |
|
|
|
2585 Value Name: TIME |
|
|
|
2586 |
|
|
|
2587 Purpose: This value type is used to identify values that contain a |
|
|
|
2588 time of day. |
|
|
|
2589 |
|
|
|
2590 Format Definition: This value type is defined by the following |
|
|
|
2591 notation: |
|
|
|
2592 |
|
|
|
2593 time = time-hour time-minute time-second [time-utc] |
|
|
|
2594 |
|
|
|
2595 time-hour = 2DIGIT ;00-23 |
|
|
|
2596 time-minute = 2DIGIT ;00-59 |
|
|
|
2597 time-second = 2DIGIT ;00-60 |
|
|
|
2598 ;The "60" value is used to account for positive "leap" seconds. |
|
|
|
2599 |
|
|
|
2600 time-utc = "Z" |
|
|
|
2601 |
|
|
|
2602 Description: If the property permits, multiple "time" values are |
|
|
|
2603 specified by a COMMA-separated list of values. No additional |
|
|
|
2604 content value encoding (i.e., BACKSLASH character encoding, see |
|
|
|
2605 Section 3.3.11) is defined for this value type. |
|
|
|
2606 |
|
|
|
2607 The "TIME" value type is used to identify values that contain a |
|
|
|
2608 time of day. The format is based on the [ISO.8601.2004] complete |
|
|
|
2609 representation, basic format for a time of day. The text format |
|
|
|
2610 consists of a two-digit, 24-hour of the day (i.e., values 00-23), |
|
|
|
2611 two-digit minute in the hour (i.e., values 00-59), and two-digit |
|
|
|
2612 seconds in the minute (i.e., values 00-60). The seconds value of |
|
|
|
2613 60 MUST only be used to account for positive "leap" seconds. |
|
|
|
2614 Fractions of a second are not supported by this format. |
|
|
|
2615 |
|
|
|
2616 In parallel to the "DATE-TIME" definition above, the "TIME" value |
|
|
|
2617 type expresses time values in three forms: |
|
|
|
2618 |
|
|
|
2619 The form of time with UTC offset MUST NOT be used. For example, |
|
|
|
2620 the following is not valid for a time value: |
|
|
|
2621 |
|
|
|
2622 230000-0800 ;Invalid time format |
|
|
|
2623 |
|
|
|
2624 FORM #1 LOCAL TIME |
|
|
|
2625 |
|
|
|
2626 The local time form is simply a time value that does not contain |
|
|
|
2627 the UTC designator nor does it reference a time zone. For |
|
|
|
2628 example, 11:00 PM: |
|
|
|
2629 |
|
|
|
2630 230000 |
|
|
|
2631 |
|
|
|
2632 |
|
|
|
2633 |
|
|
|
2634 Desruisseaux Standards Track [Page 47] |
|
|
|
i 2635 |
|
|
|
Err bitreich.org 70 |
|
|
|
2636 RFC 5545 iCalendar September 2009 |
|
|
|
2637 |
|
|
|
2638 |
|
|
|
2639 Time values of this type are said to be "floating" and are not |
|
|
|
2640 bound to any time zone in particular. They are used to represent |
|
|
|
2641 the same hour, minute, and second value regardless of which time |
|
|
|
2642 zone is currently being observed. For example, an event can be |
|
|
|
2643 defined that indicates that an individual will be busy from 11:00 |
|
|
|
2644 AM to 1:00 PM every day, no matter which time zone the person is |
|
|
|
2645 in. In these cases, a local time can be specified. The recipient |
|
|
|
2646 of an iCalendar object with a property value consisting of a local |
|
|
|
2647 time, without any relative time zone information, SHOULD interpret |
|
|
|
2648 the value as being fixed to whatever time zone the "ATTENDEE" is |
|
|
|
2649 in at any given moment. This means that two "Attendees", may |
|
|
|
2650 participate in the same event at different UTC times; floating |
|
|
|
2651 time SHOULD only be used where that is reasonable behavior. |
|
|
|
2652 |
|
|
|
2653 In most cases, a fixed time is desired. To properly communicate a |
|
|
|
2654 fixed time in a property value, either UTC time or local time with |
|
|
|
2655 time zone reference MUST be specified. |
|
|
|
2656 |
|
|
|
2657 The use of local time in a TIME value without the "TZID" property |
|
|
|
2658 parameter is to be interpreted as floating time, regardless of the |
|
|
|
2659 existence of "VTIMEZONE" calendar components in the iCalendar |
|
|
|
2660 object. |
|
|
|
2661 |
|
|
|
2662 FORM #2: UTC TIME |
|
|
|
2663 |
|
|
|
2664 UTC time, or absolute time, is identified by a LATIN CAPITAL |
|
|
|
2665 LETTER Z suffix character, the UTC designator, appended to the |
|
|
|
2666 time value. For example, the following represents 07:00 AM UTC: |
|
|
|
2667 |
|
|
|
2668 070000Z |
|
|
|
2669 |
|
|
|
2670 The "TZID" property parameter MUST NOT be applied to TIME |
|
|
|
2671 properties whose time values are specified in UTC. |
|
|
|
2672 |
|
|
|
2673 FORM #3: LOCAL TIME AND TIME ZONE REFERENCE |
|
|
|
2674 |
|
|
|
2675 The local time with reference to time zone information form is |
|
|
|
2676 identified by the use the "TZID" property parameter to reference |
|
|
|
2677 the appropriate time zone definition. "TZID" is discussed in |
|
|
|
2678 detail in Section 3.2.19. |
|
|
|
2679 |
|
|
|
2680 Example: The following represents 8:30 AM in New York in winter, |
|
|
|
2681 five hours behind UTC, in each of the three formats: |
|
|
|
2682 |
|
|
|
2683 083000 |
|
|
|
2684 133000Z |
|
|
|
2685 TZID=America/New_York:083000 |
|
|
|
2686 |
|
|
|
2687 |
|
|
|
2688 |
|
|
|
2689 |
|
|
|
2690 Desruisseaux Standards Track [Page 48] |
|
|
|
i 2691 |
|
|
|
Err bitreich.org 70 |
|
|
|
2692 RFC 5545 iCalendar September 2009 |
|
|
|
2693 |
|
|
|
2694 |
|
|
|
2695 3.3.13. URI |
|
|
|
2696 |
|
|
|
2697 Value Name: URI |
|
|
|
2698 |
|
|
|
2699 Purpose: This value type is used to identify values that contain a |
|
|
|
2700 uniform resource identifier (URI) type of reference to the |
|
|
|
2701 property value. |
|
|
|
2702 |
|
|
|
2703 Format Definition: This value type is defined by the following |
|
|
|
2704 notation: |
|
|
|
2705 |
|
|
|
2706 uri = <As defined in Section 3 of [RFC3986]> |
|
|
|
2707 |
|
|
|
2708 Description: This value type might be used to reference binary |
|
|
|
2709 information, for values that are large, or otherwise undesirable |
|
|
|
2710 to include directly in the iCalendar object. |
|
|
|
2711 |
|
|
|
2712 Property values with this value type MUST follow the generic URI |
|
|
|
2713 syntax defined in [RFC3986]. |
|
|
|
2714 |
|
|
|
2715 When a property parameter value is a URI value type, the URI MUST |
|
|
|
2716 be specified as a quoted-string value. |
|
|
|
2717 |
|
|
|
2718 No additional content value encoding (i.e., BACKSLASH character |
|
|
|
2719 encoding, see Section 3.3.11) is defined for this value type. |
|
|
|
2720 |
|
|
|
2721 Example: The following is a URI for a network file: |
|
|
|
2722 |
|
|
|
2723 http://example.com/my-report.txt |
|
|
|
2724 |
|
|
|
2725 3.3.14. UTC Offset |
|
|
|
2726 |
|
|
|
2727 Value Name: UTC-OFFSET |
|
|
|
2728 |
|
|
|
2729 Purpose: This value type is used to identify properties that contain |
|
|
|
2730 an offset from UTC to local time. |
|
|
|
2731 |
|
|
|
2732 Format Definition: This value type is defined by the following |
|
|
|
2733 notation: |
|
|
|
2734 |
|
|
|
2735 utc-offset = time-numzone |
|
|
|
2736 |
|
|
|
2737 time-numzone = ("+" / "-") time-hour time-minute [time-second] |
|
|
|
2738 |
|
|
|
2739 Description: The PLUS SIGN character MUST be specified for positive |
|
|
|
2740 UTC offsets (i.e., ahead of UTC). The HYPHEN-MINUS character MUST |
|
|
|
2741 be specified for negative UTC offsets (i.e., behind of UTC). The |
|
|
|
2742 |
|
|
|
2743 |
|
|
|
2744 |
|
|
|
2745 |
|
|
|
2746 Desruisseaux Standards Track [Page 49] |
|
|
|
i 2747 |
|
|
|
Err bitreich.org 70 |
|
|
|
2748 RFC 5545 iCalendar September 2009 |
|
|
|
2749 |
|
|
|
2750 |
|
|
|
2751 value of "-0000" and "-000000" are not allowed. The time-second, |
|
|
|
2752 if present, MUST NOT be 60; if absent, it defaults to zero. |
|
|
|
2753 |
|
|
|
2754 No additional content value encoding (i.e., BACKSLASH character |
|
|
|
2755 encoding, see Section 3.3.11) is defined for this value type. |
|
|
|
2756 |
|
|
|
2757 Example: The following UTC offsets are given for standard time for |
|
|
|
2758 New York (five hours behind UTC) and Geneva (one hour ahead of |
|
|
|
2759 UTC): |
|
|
|
2760 |
|
|
|
2761 -0500 |
|
|
|
2762 |
|
|
|
2763 +0100 |
|
|
|
2764 |
|
|
|
2765 3.4. iCalendar Object |
|
|
|
2766 |
|
|
|
2767 The Calendaring and Scheduling Core Object is a collection of |
|
|
|
2768 calendaring and scheduling information. Typically, this information |
|
|
|
2769 will consist of an iCalendar stream with a single iCalendar object. |
|
|
|
2770 However, multiple iCalendar objects can be sequentially grouped |
|
|
|
2771 together in an iCalendar stream. The first line and last line of the |
|
|
|
2772 iCalendar object MUST contain a pair of iCalendar object delimiter |
|
|
|
2773 strings. The syntax for an iCalendar stream is as follows: |
|
|
|
2774 |
|
|
|
2775 icalstream = 1*icalobject |
|
|
|
2776 |
|
|
|
2777 icalobject = "BEGIN" ":" "VCALENDAR" CRLF |
|
|
|
2778 icalbody |
|
|
|
2779 "END" ":" "VCALENDAR" CRLF |
|
|
|
2780 |
|
|
|
2781 The following is a simple example of an iCalendar object: |
|
|
|
2782 |
|
|
|
2783 BEGIN:VCALENDAR |
|
|
|
2784 VERSION:2.0 |
|
|
|
2785 PRODID:-//hacksw/handcal//NONSGML v1.0//EN |
|
|
|
2786 BEGIN:VEVENT |
|
|
|
2787 UID:19970610T172345Z-AF23B2@example.com |
|
|
|
2788 DTSTAMP:19970610T172345Z |
|
|
|
2789 DTSTART:19970714T170000Z |
|
|
|
2790 DTEND:19970715T040000Z |
|
|
|
2791 SUMMARY:Bastille Day Party |
|
|
|
2792 END:VEVENT |
|
|
|
2793 END:VCALENDAR |
|
|
|
2794 |
|
|
|
2795 |
|
|
|
2796 |
|
|
|
2797 |
|
|
|
2798 |
|
|
|
2799 |
|
|
|
2800 |
|
|
|
2801 |
|
|
|
2802 Desruisseaux Standards Track [Page 50] |
|
|
|
i 2803 |
|
|
|
Err bitreich.org 70 |
|
|
|
2804 RFC 5545 iCalendar September 2009 |
|
|
|
2805 |
|
|
|
2806 |
|
|
|
2807 3.5. Property |
|
|
|
2808 |
|
|
|
2809 A property is the definition of an individual attribute describing a |
|
|
|
2810 calendar object or a calendar component. A property takes the form |
|
|
|
2811 defined by the "contentline" notation defined in Section 3.1. |
|
|
|
2812 |
|
|
|
2813 The following is an example of a property: |
|
|
|
2814 |
|
|
|
2815 DTSTART:19960415T133000Z |
|
|
|
2816 |
|
|
|
2817 This memo imposes no ordering of properties within an iCalendar |
|
|
|
2818 object. |
|
|
|
2819 |
|
|
|
2820 Property names, parameter names, and enumerated parameter values are |
|
|
|
2821 case-insensitive. For example, the property name "DUE" is the same |
|
|
|
2822 as "due" and "Due", DTSTART;TZID=America/New_York:19980714T120000 is |
|
|
|
2823 the same as DtStart;TzID=America/New_York:19980714T120000. |
|
|
|
2824 |
|
|
|
2825 3.6. Calendar Components |
|
|
|
2826 |
|
|
|
2827 The body of the iCalendar object consists of a sequence of calendar |
|
|
|
2828 properties and one or more calendar components. The calendar |
|
|
|
2829 properties are attributes that apply to the calendar object as a |
|
|
|
2830 whole. The calendar components are collections of properties that |
|
|
|
2831 express a particular calendar semantic. For example, the calendar |
|
|
|
2832 component can specify an event, a to-do, a journal entry, time zone |
|
|
|
2833 information, free/busy time information, or an alarm. |
|
|
|
2834 |
|
|
|
2835 The body of the iCalendar object is defined by the following |
|
|
|
2836 notation: |
|
|
|
2837 |
|
|
|
2838 icalbody = calprops component |
|
|
|
2839 |
|
|
|
2840 calprops = *( |
|
|
|
2841 ; |
|
|
|
2842 ; The following are REQUIRED, |
|
|
|
2843 ; but MUST NOT occur more than once. |
|
|
|
2844 ; |
|
|
|
2845 prodid / version / |
|
|
|
2846 ; |
|
|
|
2847 ; The following are OPTIONAL, |
|
|
|
2848 ; but MUST NOT occur more than once. |
|
|
|
2849 ; |
|
|
|
2850 calscale / method / |
|
|
|
2851 ; |
|
|
|
2852 ; The following are OPTIONAL, |
|
|
|
2853 ; and MAY occur more than once. |
|
|
|
2854 ; |
|
|
|
2855 |
|
|
|
2856 |
|
|
|
2857 |
|
|
|
2858 Desruisseaux Standards Track [Page 51] |
|
|
|
i 2859 |
|
|
|
Err bitreich.org 70 |
|
|
|
2860 RFC 5545 iCalendar September 2009 |
|
|
|
2861 |
|
|
|
2862 |
|
|
|
2863 x-prop / iana-prop |
|
|
|
2864 ; |
|
|
|
2865 ) |
|
|
|
2866 |
|
|
|
2867 component = 1*(eventc / todoc / journalc / freebusyc / |
|
|
|
2868 timezonec / iana-comp / x-comp) |
|
|
|
2869 |
|
|
|
2870 iana-comp = "BEGIN" ":" iana-token CRLF |
|
|
|
2871 1*contentline |
|
|
|
2872 "END" ":" iana-token CRLF |
|
|
|
2873 |
|
|
|
2874 x-comp = "BEGIN" ":" x-name CRLF |
|
|
|
2875 1*contentline |
|
|
|
2876 "END" ":" x-name CRLF |
|
|
|
2877 |
|
|
|
2878 An iCalendar object MUST include the "PRODID" and "VERSION" calendar |
|
|
|
2879 properties. In addition, it MUST include at least one calendar |
|
|
|
2880 component. Special forms of iCalendar objects are possible to |
|
|
|
2881 publish just busy time (i.e., only a "VFREEBUSY" calendar component) |
|
|
|
2882 or time zone (i.e., only a "VTIMEZONE" calendar component) |
|
|
|
2883 information. In addition, a complex iCalendar object that is used to |
|
|
|
2884 capture a complete snapshot of the contents of a calendar is possible |
|
|
|
2885 (e.g., composite of many different calendar components). More |
|
|
|
2886 commonly, an iCalendar object will consist of just a single "VEVENT", |
|
|
|
2887 "VTODO", or "VJOURNAL" calendar component. Applications MUST ignore |
|
|
|
2888 x-comp and iana-comp values they don't recognize. Applications that |
|
|
|
2889 support importing iCalendar objects SHOULD support all of the |
|
|
|
2890 component types defined in this document, and SHOULD NOT silently |
|
|
|
2891 drop any components as that can lead to user data loss. |
|
|
|
2892 |
|
|
|
2893 3.6.1. Event Component |
|
|
|
2894 |
|
|
|
2895 Component Name: VEVENT |
|
|
|
2896 |
|
|
|
2897 Purpose: Provide a grouping of component properties that describe an |
|
|
|
2898 event. |
|
|
|
2899 |
|
|
|
2900 Format Definition: A "VEVENT" calendar component is defined by the |
|
|
|
2901 following notation: |
|
|
|
2902 |
|
|
|
2903 eventc = "BEGIN" ":" "VEVENT" CRLF |
|
|
|
2904 eventprop *alarmc |
|
|
|
2905 "END" ":" "VEVENT" CRLF |
|
|
|
2906 |
|
|
|
2907 eventprop = *( |
|
|
|
2908 ; |
|
|
|
2909 ; The following are REQUIRED, |
|
|
|
2910 ; but MUST NOT occur more than once. |
|
|
|
2911 |
|
|
|
2912 |
|
|
|
2913 |
|
|
|
2914 Desruisseaux Standards Track [Page 52] |
|
|
|
i 2915 |
|
|
|
Err bitreich.org 70 |
|
|
|
2916 RFC 5545 iCalendar September 2009 |
|
|
|
2917 |
|
|
|
2918 |
|
|
|
2919 ; |
|
|
|
2920 dtstamp / uid / |
|
|
|
2921 ; |
|
|
|
2922 ; The following is REQUIRED if the component |
|
|
|
2923 ; appears in an iCalendar object that doesn't |
|
|
|
2924 ; specify the "METHOD" property; otherwise, it |
|
|
|
2925 ; is OPTIONAL; in any case, it MUST NOT occur |
|
|
|
2926 ; more than once. |
|
|
|
2927 ; |
|
|
|
2928 dtstart / |
|
|
|
2929 ; |
|
|
|
2930 ; The following are OPTIONAL, |
|
|
|
2931 ; but MUST NOT occur more than once. |
|
|
|
2932 ; |
|
|
|
2933 class / created / description / geo / |
|
|
|
2934 last-mod / location / organizer / priority / |
|
|
|
2935 seq / status / summary / transp / |
|
|
|
2936 url / recurid / |
|
|
|
2937 ; |
|
|
|
2938 ; The following is OPTIONAL, |
|
|
|
2939 ; but SHOULD NOT occur more than once. |
|
|
|
2940 ; |
|
|
|
2941 rrule / |
|
|
|
2942 ; |
|
|
|
2943 ; Either 'dtend' or 'duration' MAY appear in |
|
|
|
2944 ; a 'eventprop', but 'dtend' and 'duration' |
|
|
|
2945 ; MUST NOT occur in the same 'eventprop'. |
|
|
|
2946 ; |
|
|
|
2947 dtend / duration / |
|
|
|
2948 ; |
|
|
|
2949 ; The following are OPTIONAL, |
|
|
|
2950 ; and MAY occur more than once. |
|
|
|
2951 ; |
|
|
|
2952 attach / attendee / categories / comment / |
|
|
|
2953 contact / exdate / rstatus / related / |
|
|
|
2954 resources / rdate / x-prop / iana-prop |
|
|
|
2955 ; |
|
|
|
2956 ) |
|
|
|
2957 |
|
|
|
2958 Description: A "VEVENT" calendar component is a grouping of |
|
|
|
2959 component properties, possibly including "VALARM" calendar |
|
|
|
2960 components, that represents a scheduled amount of time on a |
|
|
|
2961 calendar. For example, it can be an activity; such as a one-hour |
|
|
|
2962 long, department meeting from 8:00 AM to 9:00 AM, tomorrow. |
|
|
|
2963 Generally, an event will take up time on an individual calendar. |
|
|
|
2964 Hence, the event will appear as an opaque interval in a search for |
|
|
|
2965 busy time. Alternately, the event can have its Time Transparency |
|
|
|
2966 |
|
|
|
2967 |
|
|
|
2968 |
|
|
|
2969 |
|
|
|
2970 Desruisseaux Standards Track [Page 53] |
|
|
|
i 2971 |
|
|
|
Err bitreich.org 70 |
|
|
|
2972 RFC 5545 iCalendar September 2009 |
|
|
|
2973 |
|
|
|
2974 |
|
|
|
2975 set to "TRANSPARENT" in order to prevent blocking of the event in |
|
|
|
2976 searches for busy time. |
|
|
|
2977 |
|
|
|
2978 The "VEVENT" is also the calendar component used to specify an |
|
|
|
2979 anniversary or daily reminder within a calendar. These events |
|
|
|
2980 have a DATE value type for the "DTSTART" property instead of the |
|
|
|
2981 default value type of DATE-TIME. If such a "VEVENT" has a "DTEND" |
|
|
|
2982 property, it MUST be specified as a DATE value also. The |
|
|
|
2983 anniversary type of "VEVENT" can span more than one date (i.e., |
|
|
|
2984 "DTEND" property value is set to a calendar date after the |
|
|
|
2985 "DTSTART" property value). If such a "VEVENT" has a "DURATION" |
|
|
|
2986 property, it MUST be specified as a "dur-day" or "dur-week" value. |
|
|
|
2987 |
|
|
|
2988 The "DTSTART" property for a "VEVENT" specifies the inclusive |
|
|
|
2989 start of the event. For recurring events, it also specifies the |
|
|
|
2990 very first instance in the recurrence set. The "DTEND" property |
|
|
|
2991 for a "VEVENT" calendar component specifies the non-inclusive end |
|
|
|
2992 of the event. For cases where a "VEVENT" calendar component |
|
|
|
2993 specifies a "DTSTART" property with a DATE value type but no |
|
|
|
2994 "DTEND" nor "DURATION" property, the event's duration is taken to |
|
|
|
2995 be one day. For cases where a "VEVENT" calendar component |
|
|
|
2996 specifies a "DTSTART" property with a DATE-TIME value type but no |
|
|
|
2997 "DTEND" property, the event ends on the same calendar date and |
|
|
|
2998 time of day specified by the "DTSTART" property. |
|
|
|
2999 |
|
|
|
3000 The "VEVENT" calendar component cannot be nested within another |
|
|
|
3001 calendar component. However, "VEVENT" calendar components can be |
|
|
|
3002 related to each other or to a "VTODO" or to a "VJOURNAL" calendar |
|
|
|
3003 component with the "RELATED-TO" property. |
|
|
|
3004 |
|
|
|
3005 Example: The following is an example of the "VEVENT" calendar |
|
|
|
3006 component used to represent a meeting that will also be opaque to |
|
|
|
3007 searches for busy time: |
|
|
|
3008 |
|
|
|
3009 BEGIN:VEVENT |
|
|
|
3010 UID:19970901T130000Z-123401@example.com |
|
|
|
3011 DTSTAMP:19970901T130000Z |
|
|
|
3012 DTSTART:19970903T163000Z |
|
|
|
3013 DTEND:19970903T190000Z |
|
|
|
3014 SUMMARY:Annual Employee Review |
|
|
|
3015 CLASS:PRIVATE |
|
|
|
3016 CATEGORIES:BUSINESS,HUMAN RESOURCES |
|
|
|
3017 END:VEVENT |
|
|
|
3018 |
|
|
|
3019 The following is an example of the "VEVENT" calendar component |
|
|
|
3020 used to represent a reminder that will not be opaque, but rather |
|
|
|
3021 transparent, to searches for busy time: |
|
|
|
3022 |
|
|
|
3023 |
|
|
|
3024 |
|
|
|
3025 |
|
|
|
3026 Desruisseaux Standards Track [Page 54] |
|
|
|
i 3027 |
|
|
|
Err bitreich.org 70 |
|
|
|
3028 RFC 5545 iCalendar September 2009 |
|
|
|
3029 |
|
|
|
3030 |
|
|
|
3031 BEGIN:VEVENT |
|
|
|
3032 UID:19970901T130000Z-123402@example.com |
|
|
|
3033 DTSTAMP:19970901T130000Z |
|
|
|
3034 DTSTART:19970401T163000Z |
|
|
|
3035 DTEND:19970402T010000Z |
|
|
|
3036 SUMMARY:Laurel is in sensitivity awareness class. |
|
|
|
3037 CLASS:PUBLIC |
|
|
|
3038 CATEGORIES:BUSINESS,HUMAN RESOURCES |
|
|
|
3039 TRANSP:TRANSPARENT |
|
|
|
3040 END:VEVENT |
|
|
|
3041 |
|
|
|
3042 The following is an example of the "VEVENT" calendar component |
|
|
|
3043 used to represent an anniversary that will occur annually: |
|
|
|
3044 |
|
|
|
3045 BEGIN:VEVENT |
|
|
|
3046 UID:19970901T130000Z-123403@example.com |
|
|
|
3047 DTSTAMP:19970901T130000Z |
|
|
|
3048 DTSTART;VALUE=DATE:19971102 |
|
|
|
3049 SUMMARY:Our Blissful Anniversary |
|
|
|
3050 TRANSP:TRANSPARENT |
|
|
|
3051 CLASS:CONFIDENTIAL |
|
|
|
3052 CATEGORIES:ANNIVERSARY,PERSONAL,SPECIAL OCCASION |
|
|
|
3053 RRULE:FREQ=YEARLY |
|
|
|
3054 END:VEVENT |
|
|
|
3055 |
|
|
|
3056 The following is an example of the "VEVENT" calendar component |
|
|
|
3057 used to represent a multi-day event scheduled from June 28th, 2007 |
|
|
|
3058 to July 8th, 2007 inclusively. Note that the "DTEND" property is |
|
|
|
3059 set to July 9th, 2007, since the "DTEND" property specifies the |
|
|
|
3060 non-inclusive end of the event. |
|
|
|
3061 |
|
|
|
3062 BEGIN:VEVENT |
|
|
|
3063 UID:20070423T123432Z-541111@example.com |
|
|
|
3064 DTSTAMP:20070423T123432Z |
|
|
|
3065 DTSTART;VALUE=DATE:20070628 |
|
|
|
3066 DTEND;VALUE=DATE:20070709 |
|
|
|
3067 SUMMARY:Festival International de Jazz de Montreal |
|
|
|
3068 TRANSP:TRANSPARENT |
|
|
|
3069 END:VEVENT |
|
|
|
3070 |
|
|
|
3071 3.6.2. To-Do Component |
|
|
|
3072 |
|
|
|
3073 Component Name: VTODO |
|
|
|
3074 |
|
|
|
3075 Purpose: Provide a grouping of calendar properties that describe a |
|
|
|
3076 to-do. |
|
|
|
3077 |
|
|
|
3078 |
|
|
|
3079 |
|
|
|
3080 |
|
|
|
3081 |
|
|
|
3082 Desruisseaux Standards Track [Page 55] |
|
|
|
i 3083 |
|
|
|
Err bitreich.org 70 |
|
|
|
3084 RFC 5545 iCalendar September 2009 |
|
|
|
3085 |
|
|
|
3086 |
|
|
|
3087 Format Definition: A "VTODO" calendar component is defined by the |
|
|
|
3088 following notation: |
|
|
|
3089 |
|
|
|
3090 todoc = "BEGIN" ":" "VTODO" CRLF |
|
|
|
3091 todoprop *alarmc |
|
|
|
3092 "END" ":" "VTODO" CRLF |
|
|
|
3093 |
|
|
|
3094 todoprop = *( |
|
|
|
3095 ; |
|
|
|
3096 ; The following are REQUIRED, |
|
|
|
3097 ; but MUST NOT occur more than once. |
|
|
|
3098 ; |
|
|
|
3099 dtstamp / uid / |
|
|
|
3100 ; |
|
|
|
3101 ; The following are OPTIONAL, |
|
|
|
3102 ; but MUST NOT occur more than once. |
|
|
|
3103 ; |
|
|
|
3104 class / completed / created / description / |
|
|
|
3105 dtstart / geo / last-mod / location / organizer / |
|
|
|
3106 percent / priority / recurid / seq / status / |
|
|
|
3107 summary / url / |
|
|
|
3108 ; |
|
|
|
3109 ; The following is OPTIONAL, |
|
|
|
3110 ; but SHOULD NOT occur more than once. |
|
|
|
3111 ; |
|
|
|
3112 rrule / |
|
|
|
3113 ; |
|
|
|
3114 ; Either 'due' or 'duration' MAY appear in |
|
|
|
3115 ; a 'todoprop', but 'due' and 'duration' |
|
|
|
3116 ; MUST NOT occur in the same 'todoprop'. |
|
|
|
3117 ; If 'duration' appear in a 'todoprop', |
|
|
|
3118 ; then 'dtstart' MUST also appear in |
|
|
|
3119 ; the same 'todoprop'. |
|
|
|
3120 ; |
|
|
|
3121 due / duration / |
|
|
|
3122 ; |
|
|
|
3123 ; The following are OPTIONAL, |
|
|
|
3124 ; and MAY occur more than once. |
|
|
|
3125 ; |
|
|
|
3126 attach / attendee / categories / comment / contact / |
|
|
|
3127 exdate / rstatus / related / resources / |
|
|
|
3128 rdate / x-prop / iana-prop |
|
|
|
3129 ; |
|
|
|
3130 ) |
|
|
|
3131 |
|
|
|
3132 Description: A "VTODO" calendar component is a grouping of component |
|
|
|
3133 properties and possibly "VALARM" calendar components that |
|
|
|
3134 represent an action-item or assignment. For example, it can be |
|
|
|
3135 |
|
|
|
3136 |
|
|
|
3137 |
|
|
|
3138 Desruisseaux Standards Track [Page 56] |
|
|
|
i 3139 |
|
|
|
Err bitreich.org 70 |
|
|
|
3140 RFC 5545 iCalendar September 2009 |
|
|
|
3141 |
|
|
|
3142 |
|
|
|
3143 used to represent an item of work assigned to an individual; such |
|
|
|
3144 as "turn in travel expense today". |
|
|
|
3145 |
|
|
|
3146 The "VTODO" calendar component cannot be nested within another |
|
|
|
3147 calendar component. However, "VTODO" calendar components can be |
|
|
|
3148 related to each other or to a "VEVENT" or to a "VJOURNAL" calendar |
|
|
|
3149 component with the "RELATED-TO" property. |
|
|
|
3150 |
|
|
|
3151 A "VTODO" calendar component without the "DTSTART" and "DUE" (or |
|
|
|
3152 "DURATION") properties specifies a to-do that will be associated |
|
|
|
3153 with each successive calendar date, until it is completed. |
|
|
|
3154 |
|
|
|
3155 Examples: The following is an example of a "VTODO" calendar |
|
|
|
3156 component that needs to be completed before May 1st, 2007. On |
|
|
|
3157 midnight May 1st, 2007 this to-do would be considered overdue. |
|
|
|
3158 |
|
|
|
3159 BEGIN:VTODO |
|
|
|
3160 UID:20070313T123432Z-456553@example.com |
|
|
|
3161 DTSTAMP:20070313T123432Z |
|
|
|
3162 DUE;VALUE=DATE:20070501 |
|
|
|
3163 SUMMARY:Submit Quebec Income Tax Return for 2006 |
|
|
|
3164 CLASS:CONFIDENTIAL |
|
|
|
3165 CATEGORIES:FAMILY,FINANCE |
|
|
|
3166 STATUS:NEEDS-ACTION |
|
|
|
3167 END:VTODO |
|
|
|
3168 |
|
|
|
3169 The following is an example of a "VTODO" calendar component that |
|
|
|
3170 was due before 1:00 P.M. UTC on July 9th, 2007 and was completed |
|
|
|
3171 on July 7th, 2007 at 10:00 A.M. UTC. |
|
|
|
3172 |
|
|
|
3173 BEGIN:VTODO |
|
|
|
3174 UID:20070514T103211Z-123404@example.com |
|
|
|
3175 DTSTAMP:20070514T103211Z |
|
|
|
3176 DTSTART:20070514T110000Z |
|
|
|
3177 DUE:20070709T130000Z |
|
|
|
3178 COMPLETED:20070707T100000Z |
|
|
|
3179 SUMMARY:Submit Revised Internet-Draft |
|
|
|
3180 PRIORITY:1 |
|
|
|
3181 STATUS:NEEDS-ACTION |
|
|
|
3182 END:VTODO |
|
|
|
3183 |
|
|
|
3184 3.6.3. Journal Component |
|
|
|
3185 |
|
|
|
3186 Component Name: VJOURNAL |
|
|
|
3187 |
|
|
|
3188 Purpose: Provide a grouping of component properties that describe a |
|
|
|
3189 journal entry. |
|
|
|
3190 |
|
|
|
3191 |
|
|
|
3192 |
|
|
|
3193 |
|
|
|
3194 Desruisseaux Standards Track [Page 57] |
|
|
|
i 3195 |
|
|
|
Err bitreich.org 70 |
|
|
|
3196 RFC 5545 iCalendar September 2009 |
|
|
|
3197 |
|
|
|
3198 |
|
|
|
3199 Format Definition: A "VJOURNAL" calendar component is defined by the |
|
|
|
3200 following notation: |
|
|
|
3201 |
|
|
|
3202 journalc = "BEGIN" ":" "VJOURNAL" CRLF |
|
|
|
3203 jourprop |
|
|
|
3204 "END" ":" "VJOURNAL" CRLF |
|
|
|
3205 |
|
|
|
3206 jourprop = *( |
|
|
|
3207 ; |
|
|
|
3208 ; The following are REQUIRED, |
|
|
|
3209 ; but MUST NOT occur more than once. |
|
|
|
3210 ; |
|
|
|
3211 dtstamp / uid / |
|
|
|
3212 ; |
|
|
|
3213 ; The following are OPTIONAL, |
|
|
|
3214 ; but MUST NOT occur more than once. |
|
|
|
3215 ; |
|
|
|
3216 class / created / dtstart / |
|
|
|
3217 last-mod / organizer / recurid / seq / |
|
|
|
3218 status / summary / url / |
|
|
|
3219 ; |
|
|
|
3220 ; The following is OPTIONAL, |
|
|
|
3221 ; but SHOULD NOT occur more than once. |
|
|
|
3222 ; |
|
|
|
3223 rrule / |
|
|
|
3224 ; |
|
|
|
3225 ; The following are OPTIONAL, |
|
|
|
3226 ; and MAY occur more than once. |
|
|
|
3227 ; |
|
|
|
3228 attach / attendee / categories / comment / |
|
|
|
3229 contact / description / exdate / related / rdate / |
|
|
|
3230 rstatus / x-prop / iana-prop |
|
|
|
3231 ; |
|
|
|
3232 ) |
|
|
|
3233 |
|
|
|
3234 Description: A "VJOURNAL" calendar component is a grouping of |
|
|
|
3235 component properties that represent one or more descriptive text |
|
|
|
3236 notes associated with a particular calendar date. The "DTSTART" |
|
|
|
3237 property is used to specify the calendar date with which the |
|
|
|
3238 journal entry is associated. Generally, it will have a DATE value |
|
|
|
3239 data type, but it can also be used to specify a DATE-TIME value |
|
|
|
3240 data type. Examples of a journal entry include a daily record of |
|
|
|
3241 a legislative body or a journal entry of individual telephone |
|
|
|
3242 contacts for the day or an ordered list of accomplishments for the |
|
|
|
3243 day. The "VJOURNAL" calendar component can also be used to |
|
|
|
3244 associate a document with a calendar date. |
|
|
|
3245 |
|
|
|
3246 |
|
|
|
3247 |
|
|
|
3248 |
|
|
|
3249 |
|
|
|
3250 Desruisseaux Standards Track [Page 58] |
|
|
|
i 3251 |
|
|
|
Err bitreich.org 70 |
|
|
|
3252 RFC 5545 iCalendar September 2009 |
|
|
|
3253 |
|
|
|
3254 |
|
|
|
3255 The "VJOURNAL" calendar component does not take up time on a |
|
|
|
3256 calendar. Hence, it does not play a role in free or busy time |
|
|
|
3257 searches -- it is as though it has a time transparency value of |
|
|
|
3258 TRANSPARENT. It is transparent to any such searches. |
|
|
|
3259 |
|
|
|
3260 The "VJOURNAL" calendar component cannot be nested within another |
|
|
|
3261 calendar component. However, "VJOURNAL" calendar components can |
|
|
|
3262 be related to each other or to a "VEVENT" or to a "VTODO" calendar |
|
|
|
3263 component, with the "RELATED-TO" property. |
|
|
|
3264 |
|
|
|
3265 Example: The following is an example of the "VJOURNAL" calendar |
|
|
|
3266 component: |
|
|
|
3267 |
|
|
|
3268 BEGIN:VJOURNAL |
|
|
|
3269 UID:19970901T130000Z-123405@example.com |
|
|
|
3270 DTSTAMP:19970901T130000Z |
|
|
|
3271 DTSTART;VALUE=DATE:19970317 |
|
|
|
3272 SUMMARY:Staff meeting minutes |
|
|
|
3273 DESCRIPTION:1. Staff meeting: Participants include Joe\, |
|
|
|
3274 Lisa\, and Bob. Aurora project plans were reviewed. |
|
|
|
3275 There is currently no budget reserves for this project. |
|
|
|
3276 Lisa will escalate to management. Next meeting on Tuesday.\n |
|
|
|
3277 2. Telephone Conference: ABC Corp. sales representative |
|
|
|
3278 called to discuss new printer. Promised to get us a demo by |
|
|
|
3279 Friday.\n3. Henry Miller (Handsoff Insurance): Car was |
|
|
|
3280 totaled by tree. Is looking into a loaner car. 555-2323 |
|
|
|
3281 (tel). |
|
|
|
3282 END:VJOURNAL |
|
|
|
3283 |
|
|
|
3284 3.6.4. Free/Busy Component |
|
|
|
3285 |
|
|
|
3286 Component Name: VFREEBUSY |
|
|
|
3287 |
|
|
|
3288 Purpose: Provide a grouping of component properties that describe |
|
|
|
3289 either a request for free/busy time, describe a response to a |
|
|
|
3290 request for free/busy time, or describe a published set of busy |
|
|
|
3291 time. |
|
|
|
3292 |
|
|
|
3293 Format Definition: A "VFREEBUSY" calendar component is defined by |
|
|
|
3294 the following notation: |
|
|
|
3295 |
|
|
|
3296 freebusyc = "BEGIN" ":" "VFREEBUSY" CRLF |
|
|
|
3297 fbprop |
|
|
|
3298 "END" ":" "VFREEBUSY" CRLF |
|
|
|
3299 |
|
|
|
3300 fbprop = *( |
|
|
|
3301 ; |
|
|
|
3302 ; The following are REQUIRED, |
|
|
|
3303 |
|
|
|
3304 |
|
|
|
3305 |
|
|
|
3306 Desruisseaux Standards Track [Page 59] |
|
|
|
i 3307 |
|
|
|
Err bitreich.org 70 |
|
|
|
3308 RFC 5545 iCalendar September 2009 |
|
|
|
3309 |
|
|
|
3310 |
|
|
|
3311 ; but MUST NOT occur more than once. |
|
|
|
3312 ; |
|
|
|
3313 dtstamp / uid / |
|
|
|
3314 ; |
|
|
|
3315 ; The following are OPTIONAL, |
|
|
|
3316 ; but MUST NOT occur more than once. |
|
|
|
3317 ; |
|
|
|
3318 contact / dtstart / dtend / |
|
|
|
3319 organizer / url / |
|
|
|
3320 ; |
|
|
|
3321 ; The following are OPTIONAL, |
|
|
|
3322 ; and MAY occur more than once. |
|
|
|
3323 ; |
|
|
|
3324 attendee / comment / freebusy / rstatus / x-prop / |
|
|
|
3325 iana-prop |
|
|
|
3326 ; |
|
|
|
3327 ) |
|
|
|
3328 |
|
|
|
3329 Description: A "VFREEBUSY" calendar component is a grouping of |
|
|
|
3330 component properties that represents either a request for free or |
|
|
|
3331 busy time information, a reply to a request for free or busy time |
|
|
|
3332 information, or a published set of busy time information. |
|
|
|
3333 |
|
|
|
3334 When used to request free/busy time information, the "ATTENDEE" |
|
|
|
3335 property specifies the calendar users whose free/busy time is |
|
|
|
3336 being requested; the "ORGANIZER" property specifies the calendar |
|
|
|
3337 user who is requesting the free/busy time; the "DTSTART" and |
|
|
|
3338 "DTEND" properties specify the window of time for which the free/ |
|
|
|
3339 busy time is being requested; the "UID" and "DTSTAMP" properties |
|
|
|
3340 are specified to assist in proper sequencing of multiple free/busy |
|
|
|
3341 time requests. |
|
|
|
3342 |
|
|
|
3343 When used to reply to a request for free/busy time, the "ATTENDEE" |
|
|
|
3344 property specifies the calendar user responding to the free/busy |
|
|
|
3345 time request; the "ORGANIZER" property specifies the calendar user |
|
|
|
3346 that originally requested the free/busy time; the "FREEBUSY" |
|
|
|
3347 property specifies the free/busy time information (if it exists); |
|
|
|
3348 and the "UID" and "DTSTAMP" properties are specified to assist in |
|
|
|
3349 proper sequencing of multiple free/busy time replies. |
|
|
|
3350 |
|
|
|
3351 When used to publish busy time, the "ORGANIZER" property specifies |
|
|
|
3352 the calendar user associated with the published busy time; the |
|
|
|
3353 "DTSTART" and "DTEND" properties specify an inclusive time window |
|
|
|
3354 that surrounds the busy time information; the "FREEBUSY" property |
|
|
|
3355 specifies the published busy time information; and the "DTSTAMP" |
|
|
|
3356 property specifies the DATE-TIME that iCalendar object was |
|
|
|
3357 created. |
|
|
|
3358 |
|
|
|
3359 |
|
|
|
3360 |
|
|
|
3361 |
|
|
|
3362 Desruisseaux Standards Track [Page 60] |
|
|
|
i 3363 |
|
|
|
Err bitreich.org 70 |
|
|
|
3364 RFC 5545 iCalendar September 2009 |
|
|
|
3365 |
|
|
|
3366 |
|
|
|
3367 The "VFREEBUSY" calendar component cannot be nested within another |
|
|
|
3368 calendar component. Multiple "VFREEBUSY" calendar components can |
|
|
|
3369 be specified within an iCalendar object. This permits the |
|
|
|
3370 grouping of free/busy information into logical collections, such |
|
|
|
3371 as monthly groups of busy time information. |
|
|
|
3372 |
|
|
|
3373 The "VFREEBUSY" calendar component is intended for use in |
|
|
|
3374 iCalendar object methods involving requests for free time, |
|
|
|
3375 requests for busy time, requests for both free and busy, and the |
|
|
|
3376 associated replies. |
|
|
|
3377 |
|
|
|
3378 Free/Busy information is represented with the "FREEBUSY" property. |
|
|
|
3379 This property provides a terse representation of time periods. |
|
|
|
3380 One or more "FREEBUSY" properties can be specified in the |
|
|
|
3381 "VFREEBUSY" calendar component. |
|
|
|
3382 |
|
|
|
3383 When present in a "VFREEBUSY" calendar component, the "DTSTART" |
|
|
|
3384 and "DTEND" properties SHOULD be specified prior to any "FREEBUSY" |
|
|
|
3385 properties. |
|
|
|
3386 |
|
|
|
3387 The recurrence properties ("RRULE", "RDATE", "EXDATE") are not |
|
|
|
3388 permitted within a "VFREEBUSY" calendar component. Any recurring |
|
|
|
3389 events are resolved into their individual busy time periods using |
|
|
|
3390 the "FREEBUSY" property. |
|
|
|
3391 |
|
|
|
3392 Example: The following is an example of a "VFREEBUSY" calendar |
|
|
|
3393 component used to request free or busy time information: |
|
|
|
3394 |
|
|
|
3395 BEGIN:VFREEBUSY |
|
|
|
3396 UID:19970901T082949Z-FA43EF@example.com |
|
|
|
3397 ORGANIZER:mailto:jane_doe@example.com |
|
|
|
3398 ATTENDEE:mailto:john_public@example.com |
|
|
|
3399 DTSTART:19971015T050000Z |
|
|
|
3400 DTEND:19971016T050000Z |
|
|
|
3401 DTSTAMP:19970901T083000Z |
|
|
|
3402 END:VFREEBUSY |
|
|
|
3403 |
|
|
|
3404 |
|
|
|
3405 |
|
|
|
3406 |
|
|
|
3407 |
|
|
|
3408 |
|
|
|
3409 |
|
|
|
3410 |
|
|
|
3411 |
|
|
|
3412 |
|
|
|
3413 |
|
|
|
3414 |
|
|
|
3415 |
|
|
|
3416 |
|
|
|
3417 |
|
|
|
3418 Desruisseaux Standards Track [Page 61] |
|
|
|
i 3419 |
|
|
|
Err bitreich.org 70 |
|
|
|
3420 RFC 5545 iCalendar September 2009 |
|
|
|
3421 |
|
|
|
3422 |
|
|
|
3423 The following is an example of a "VFREEBUSY" calendar component |
|
|
|
3424 used to reply to the request with busy time information: |
|
|
|
3425 |
|
|
|
3426 BEGIN:VFREEBUSY |
|
|
|
3427 UID:19970901T095957Z-76A912@example.com |
|
|
|
3428 ORGANIZER:mailto:jane_doe@example.com |
|
|
|
3429 ATTENDEE:mailto:john_public@example.com |
|
|
|
3430 DTSTAMP:19970901T100000Z |
|
|
|
3431 FREEBUSY:19971015T050000Z/PT8H30M, |
|
|
|
3432 19971015T160000Z/PT5H30M,19971015T223000Z/PT6H30M |
|
|
|
3433 URL:http://example.com/pub/busy/jpublic-01.ifb |
|
|
|
3434 COMMENT:This iCalendar file contains busy time information for |
|
|
|
3435 the next three months. |
|
|
|
3436 END:VFREEBUSY |
|
|
|
3437 |
|
|
|
3438 The following is an example of a "VFREEBUSY" calendar component |
|
|
|
3439 used to publish busy time information: |
|
|
|
3440 |
|
|
|
3441 BEGIN:VFREEBUSY |
|
|
|
3442 UID:19970901T115957Z-76A912@example.com |
|
|
|
3443 DTSTAMP:19970901T120000Z |
|
|
|
3444 ORGANIZER:jsmith@example.com |
|
|
|
3445 DTSTART:19980313T141711Z |
|
|
|
3446 DTEND:19980410T141711Z |
|
|
|
3447 FREEBUSY:19980314T233000Z/19980315T003000Z |
|
|
|
3448 FREEBUSY:19980316T153000Z/19980316T163000Z |
|
|
|
3449 FREEBUSY:19980318T030000Z/19980318T040000Z |
|
|
|
3450 URL:http://www.example.com/calendar/busytime/jsmith.ifb |
|
|
|
3451 END:VFREEBUSY |
|
|
|
3452 |
|
|
|
3453 3.6.5. Time Zone Component |
|
|
|
3454 |
|
|
|
3455 Component Name: VTIMEZONE |
|
|
|
3456 |
|
|
|
3457 Purpose: Provide a grouping of component properties that defines a |
|
|
|
3458 time zone. |
|
|
|
3459 |
|
|
|
3460 Format Definition: A "VTIMEZONE" calendar component is defined by |
|
|
|
3461 the following notation: |
|
|
|
3462 |
|
|
|
3463 timezonec = "BEGIN" ":" "VTIMEZONE" CRLF |
|
|
|
3464 *( |
|
|
|
3465 ; |
|
|
|
3466 ; 'tzid' is REQUIRED, but MUST NOT occur more |
|
|
|
3467 ; than once. |
|
|
|
3468 ; |
|
|
|
3469 tzid / |
|
|
|
3470 ; |
|
|
|
3471 |
|
|
|
3472 |
|
|
|
3473 |
|
|
|
3474 Desruisseaux Standards Track [Page 62] |
|
|
|
i 3475 |
|
|
|
Err bitreich.org 70 |
|
|
|
3476 RFC 5545 iCalendar September 2009 |
|
|
|
3477 |
|
|
|
3478 |
|
|
|
3479 ; 'last-mod' and 'tzurl' are OPTIONAL, |
|
|
|
3480 ; but MUST NOT occur more than once. |
|
|
|
3481 ; |
|
|
|
3482 last-mod / tzurl / |
|
|
|
3483 ; |
|
|
|
3484 ; One of 'standardc' or 'daylightc' MUST occur |
|
|
|
3485 ; and each MAY occur more than once. |
|
|
|
3486 ; |
|
|
|
3487 standardc / daylightc / |
|
|
|
3488 ; |
|
|
|
3489 ; The following are OPTIONAL, |
|
|
|
3490 ; and MAY occur more than once. |
|
|
|
3491 ; |
|
|
|
3492 x-prop / iana-prop |
|
|
|
3493 ; |
|
|
|
3494 ) |
|
|
|
3495 "END" ":" "VTIMEZONE" CRLF |
|
|
|
3496 |
|
|
|
3497 standardc = "BEGIN" ":" "STANDARD" CRLF |
|
|
|
3498 tzprop |
|
|
|
3499 "END" ":" "STANDARD" CRLF |
|
|
|
3500 |
|
|
|
3501 daylightc = "BEGIN" ":" "DAYLIGHT" CRLF |
|
|
|
3502 tzprop |
|
|
|
3503 "END" ":" "DAYLIGHT" CRLF |
|
|
|
3504 |
|
|
|
3505 tzprop = *( |
|
|
|
3506 ; |
|
|
|
3507 ; The following are REQUIRED, |
|
|
|
3508 ; but MUST NOT occur more than once. |
|
|
|
3509 ; |
|
|
|
3510 dtstart / tzoffsetto / tzoffsetfrom / |
|
|
|
3511 ; |
|
|
|
3512 ; The following is OPTIONAL, |
|
|
|
3513 ; but SHOULD NOT occur more than once. |
|
|
|
3514 ; |
|
|
|
3515 rrule / |
|
|
|
3516 ; |
|
|
|
3517 ; The following are OPTIONAL, |
|
|
|
3518 ; and MAY occur more than once. |
|
|
|
3519 ; |
|
|
|
3520 comment / rdate / tzname / x-prop / iana-prop |
|
|
|
3521 ; |
|
|
|
3522 ) |
|
|
|
3523 |
|
|
|
3524 Description: A time zone is unambiguously defined by the set of time |
|
|
|
3525 measurement rules determined by the governing body for a given |
|
|
|
3526 geographic area. These rules describe, at a minimum, the base |
|
|
|
3527 |
|
|
|
3528 |
|
|
|
3529 |
|
|
|
3530 Desruisseaux Standards Track [Page 63] |
|
|
|
i 3531 |
|
|
|
Err bitreich.org 70 |
|
|
|
3532 RFC 5545 iCalendar September 2009 |
|
|
|
3533 |
|
|
|
3534 |
|
|
|
3535 offset from UTC for the time zone, often referred to as the |
|
|
|
3536 Standard Time offset. Many locations adjust their Standard Time |
|
|
|
3537 forward or backward by one hour, in order to accommodate seasonal |
|
|
|
3538 changes in number of daylight hours, often referred to as Daylight |
|
|
|
3539 Saving Time. Some locations adjust their time by a fraction of an |
|
|
|
3540 hour. Standard Time is also known as Winter Time. Daylight |
|
|
|
3541 Saving Time is also known as Advanced Time, Summer Time, or Legal |
|
|
|
3542 Time in certain countries. The following table shows the changes |
|
|
|
3543 in time zone rules in effect for New York City starting from 1967. |
|
|
|
3544 Each line represents a description or rule for a particular |
|
|
|
3545 observance. |
|
|
|
3546 |
|
|
|
3547 Effective Observance Rule |
|
|
|
3548 |
|
|
|
3549 +-----------+--------------------------+--------+--------------+ |
|
|
|
3550 | Date | (Date-Time) | Offset | Abbreviation | |
|
|
|
3551 +-----------+--------------------------+--------+--------------+ |
|
|
|
3552 | 1967-1973 | last Sun in Apr, 02:00 | -0400 | EDT | |
|
|
|
3553 | | | | | |
|
|
|
3554 | 1967-2006 | last Sun in Oct, 02:00 | -0500 | EST | |
|
|
|
3555 | | | | | |
|
|
|
3556 | 1974-1974 | Jan 6, 02:00 | -0400 | EDT | |
|
|
|
3557 | | | | | |
|
|
|
3558 | 1975-1975 | Feb 23, 02:00 | -0400 | EDT | |
|
|
|
3559 | | | | | |
|
|
|
3560 | 1976-1986 | last Sun in Apr, 02:00 | -0400 | EDT | |
|
|
|
3561 | | | | | |
|
|
|
3562 | 1987-2006 | first Sun in Apr, 02:00 | -0400 | EDT | |
|
|
|
3563 | | | | | |
|
|
|
3564 | 2007-* | second Sun in Mar, 02:00 | -0400 | EDT | |
|
|
|
3565 | | | | | |
|
|
|
3566 | 2007-* | first Sun in Nov, 02:00 | -0500 | EST | |
|
|
|
3567 +-----------+--------------------------+--------+--------------+ |
|
|
|
3568 |
|
|
|
3569 Note: The specification of a global time zone registry is not |
|
|
|
3570 addressed by this document and is left for future study. |
|
|
|
3571 However, implementers may find the TZ database [TZDB] a useful |
|
|
|
3572 reference. It is an informal, public-domain collection of time |
|
|
|
3573 zone information, which is currently being maintained by |
|
|
|
3574 volunteer Internet participants, and is used in several |
|
|
|
3575 operating systems. This database contains current and |
|
|
|
3576 historical time zone information for a wide variety of |
|
|
|
3577 locations around the globe; it provides a time zone identifier |
|
|
|
3578 for every unique time zone rule set in actual use since 1970, |
|
|
|
3579 with historical data going back to the introduction of standard |
|
|
|
3580 time. |
|
|
|
3581 |
|
|
|
3582 |
|
|
|
3583 |
|
|
|
3584 |
|
|
|
3585 |
|
|
|
3586 Desruisseaux Standards Track [Page 64] |
|
|
|
i 3587 |
|
|
|
Err bitreich.org 70 |
|
|
|
3588 RFC 5545 iCalendar September 2009 |
|
|
|
3589 |
|
|
|
3590 |
|
|
|
3591 Interoperability between two calendaring and scheduling |
|
|
|
3592 applications, especially for recurring events, to-dos or journal |
|
|
|
3593 entries, is dependent on the ability to capture and convey date |
|
|
|
3594 and time information in an unambiguous format. The specification |
|
|
|
3595 of current time zone information is integral to this behavior. |
|
|
|
3596 |
|
|
|
3597 If present, the "VTIMEZONE" calendar component defines the set of |
|
|
|
3598 Standard Time and Daylight Saving Time observances (or rules) for |
|
|
|
3599 a particular time zone for a given interval of time. The |
|
|
|
3600 "VTIMEZONE" calendar component cannot be nested within other |
|
|
|
3601 calendar components. Multiple "VTIMEZONE" calendar components can |
|
|
|
3602 exist in an iCalendar object. In this situation, each "VTIMEZONE" |
|
|
|
3603 MUST represent a unique time zone definition. This is necessary |
|
|
|
3604 for some classes of events, such as airline flights, that start in |
|
|
|
3605 one time zone and end in another. |
|
|
|
3606 |
|
|
|
3607 The "VTIMEZONE" calendar component MUST include the "TZID" |
|
|
|
3608 property and at least one definition of a "STANDARD" or "DAYLIGHT" |
|
|
|
3609 sub-component. The "STANDARD" or "DAYLIGHT" sub-component MUST |
|
|
|
3610 include the "DTSTART", "TZOFFSETFROM", and "TZOFFSETTO" |
|
|
|
3611 properties. |
|
|
|
3612 |
|
|
|
3613 An individual "VTIMEZONE" calendar component MUST be specified for |
|
|
|
3614 each unique "TZID" parameter value specified in the iCalendar |
|
|
|
3615 object. In addition, a "VTIMEZONE" calendar component, referred |
|
|
|
3616 to by a recurring calendar component, MUST provide valid time zone |
|
|
|
3617 information for all recurrence instances. |
|
|
|
3618 |
|
|
|
3619 Each "VTIMEZONE" calendar component consists of a collection of |
|
|
|
3620 one or more sub-components that describe the rule for a particular |
|
|
|
3621 observance (either a Standard Time or a Daylight Saving Time |
|
|
|
3622 observance). The "STANDARD" sub-component consists of a |
|
|
|
3623 collection of properties that describe Standard Time. The |
|
|
|
3624 "DAYLIGHT" sub-component consists of a collection of properties |
|
|
|
3625 that describe Daylight Saving Time. In general, this collection |
|
|
|
3626 of properties consists of: |
|
|
|
3627 |
|
|
|
3628 * the first onset DATE-TIME for the observance; |
|
|
|
3629 |
|
|
|
3630 * the last onset DATE-TIME for the observance, if a last onset is |
|
|
|
3631 known; |
|
|
|
3632 |
|
|
|
3633 * the offset to be applied for the observance; |
|
|
|
3634 |
|
|
|
3635 * a rule that describes the day and time when the observance |
|
|
|
3636 takes effect; |
|
|
|
3637 |
|
|
|
3638 * an optional name for the observance. |
|
|
|
3639 |
|
|
|
3640 |
|
|
|
3641 |
|
|
|
3642 Desruisseaux Standards Track [Page 65] |
|
|
|
i 3643 |
|
|
|
Err bitreich.org 70 |
|
|
|
3644 RFC 5545 iCalendar September 2009 |
|
|
|
3645 |
|
|
|
3646 |
|
|
|
3647 For a given time zone, there may be multiple unique definitions of |
|
|
|
3648 the observances over a period of time. Each observance is |
|
|
|
3649 described using either a "STANDARD" or "DAYLIGHT" sub-component. |
|
|
|
3650 The collection of these sub-components is used to describe the |
|
|
|
3651 time zone for a given period of time. The offset to apply at any |
|
|
|
3652 given time is found by locating the observance that has the last |
|
|
|
3653 onset date and time before the time in question, and using the |
|
|
|
3654 offset value from that observance. |
|
|
|
3655 |
|
|
|
3656 The top-level properties in a "VTIMEZONE" calendar component are: |
|
|
|
3657 |
|
|
|
3658 The mandatory "TZID" property is a text value that uniquely |
|
|
|
3659 identifies the "VTIMEZONE" calendar component within the scope of |
|
|
|
3660 an iCalendar object. |
|
|
|
3661 |
|
|
|
3662 The optional "LAST-MODIFIED" property is a UTC value that |
|
|
|
3663 specifies the date and time that this time zone definition was |
|
|
|
3664 last updated. |
|
|
|
3665 |
|
|
|
3666 The optional "TZURL" property is a url value that points to a |
|
|
|
3667 published "VTIMEZONE" definition. "TZURL" SHOULD refer to a |
|
|
|
3668 resource that is accessible by anyone who might need to interpret |
|
|
|
3669 the object. This SHOULD NOT normally be a "file" URL or other URL |
|
|
|
3670 that is not widely accessible. |
|
|
|
3671 |
|
|
|
3672 The collection of properties that are used to define the |
|
|
|
3673 "STANDARD" and "DAYLIGHT" sub-components include: |
|
|
|
3674 |
|
|
|
3675 The mandatory "DTSTART" property gives the effective onset date |
|
|
|
3676 and local time for the time zone sub-component definition. |
|
|
|
3677 "DTSTART" in this usage MUST be specified as a date with a local |
|
|
|
3678 time value. |
|
|
|
3679 |
|
|
|
3680 The mandatory "TZOFFSETFROM" property gives the UTC offset that is |
|
|
|
3681 in use when the onset of this time zone observance begins. |
|
|
|
3682 "TZOFFSETFROM" is combined with "DTSTART" to define the effective |
|
|
|
3683 onset for the time zone sub-component definition. For example, |
|
|
|
3684 the following represents the time at which the observance of |
|
|
|
3685 Standard Time took effect in Fall 1967 for New York City: |
|
|
|
3686 |
|
|
|
3687 DTSTART:19671029T020000 |
|
|
|
3688 |
|
|
|
3689 TZOFFSETFROM:-0400 |
|
|
|
3690 |
|
|
|
3691 The mandatory "TZOFFSETTO" property gives the UTC offset for the |
|
|
|
3692 time zone sub-component (Standard Time or Daylight Saving Time) |
|
|
|
3693 when this observance is in use. |
|
|
|
3694 |
|
|
|
3695 |
|
|
|
3696 |
|
|
|
3697 |
|
|
|
3698 Desruisseaux Standards Track [Page 66] |
|
|
|
i 3699 |
|
|
|
Err bitreich.org 70 |
|
|
|
3700 RFC 5545 iCalendar September 2009 |
|
|
|
3701 |
|
|
|
3702 |
|
|
|
3703 The optional "TZNAME" property is the customary name for the time |
|
|
|
3704 zone. This could be used for displaying dates. |
|
|
|
3705 |
|
|
|
3706 The onset DATE-TIME values for the observance defined by the time |
|
|
|
3707 zone sub-component is defined by the "DTSTART", "RRULE", and |
|
|
|
3708 "RDATE" properties. |
|
|
|
3709 |
|
|
|
3710 The "RRULE" property defines the recurrence rule for the onset of |
|
|
|
3711 the observance defined by this time zone sub-component. Some |
|
|
|
3712 specific requirements for the usage of "RRULE" for this purpose |
|
|
|
3713 include: |
|
|
|
3714 |
|
|
|
3715 * If observance is known to have an effective end date, the |
|
|
|
3716 "UNTIL" recurrence rule parameter MUST be used to specify the |
|
|
|
3717 last valid onset of this observance (i.e., the UNTIL DATE-TIME |
|
|
|
3718 will be equal to the last instance generated by the recurrence |
|
|
|
3719 pattern). It MUST be specified in UTC time. |
|
|
|
3720 |
|
|
|
3721 * The "DTSTART" and the "TZOFFSETFROM" properties MUST be used |
|
|
|
3722 when generating the onset DATE-TIME values (instances) from the |
|
|
|
3723 "RRULE". |
|
|
|
3724 |
|
|
|
3725 The "RDATE" property can also be used to define the onset of the |
|
|
|
3726 observance by giving the individual onset date and times. "RDATE" |
|
|
|
3727 in this usage MUST be specified as a date with local time value, |
|
|
|
3728 relative to the UTC offset specified in the "TZOFFSETFROM" |
|
|
|
3729 property. |
|
|
|
3730 |
|
|
|
3731 The optional "COMMENT" property is also allowed for descriptive |
|
|
|
3732 explanatory text. |
|
|
|
3733 |
|
|
|
3734 Example: The following are examples of the "VTIMEZONE" calendar |
|
|
|
3735 component: |
|
|
|
3736 |
|
|
|
3737 This is an example showing all the time zone rules for New York |
|
|
|
3738 City since April 30, 1967 at 03:00:00 EDT. |
|
|
|
3739 |
|
|
|
3740 BEGIN:VTIMEZONE |
|
|
|
3741 TZID:America/New_York |
|
|
|
3742 LAST-MODIFIED:20050809T050000Z |
|
|
|
3743 BEGIN:DAYLIGHT |
|
|
|
3744 DTSTART:19670430T020000 |
|
|
|
3745 RRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=-1SU;UNTIL=19730429T070000Z |
|
|
|
3746 TZOFFSETFROM:-0500 |
|
|
|
3747 TZOFFSETTO:-0400 |
|
|
|
3748 TZNAME:EDT |
|
|
|
3749 END:DAYLIGHT |
|
|
|
3750 BEGIN:STANDARD |
|
|
|
3751 |
|
|
|
3752 |
|
|
|
3753 |
|
|
|
3754 Desruisseaux Standards Track [Page 67] |
|
|
|
i 3755 |
|
|
|
Err bitreich.org 70 |
|
|
|
3756 RFC 5545 iCalendar September 2009 |
|
|
|
3757 |
|
|
|
3758 |
|
|
|
3759 DTSTART:19671029T020000 |
|
|
|
3760 RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU;UNTIL=20061029T060000Z |
|
|
|
3761 TZOFFSETFROM:-0400 |
|
|
|
3762 TZOFFSETTO:-0500 |
|
|
|
3763 TZNAME:EST |
|
|
|
3764 END:STANDARD |
|
|
|
3765 BEGIN:DAYLIGHT |
|
|
|
3766 DTSTART:19740106T020000 |
|
|
|
3767 RDATE:19750223T020000 |
|
|
|
3768 TZOFFSETFROM:-0500 |
|
|
|
3769 TZOFFSETTO:-0400 |
|
|
|
3770 TZNAME:EDT |
|
|
|
3771 END:DAYLIGHT |
|
|
|
3772 BEGIN:DAYLIGHT |
|
|
|
3773 DTSTART:19760425T020000 |
|
|
|
3774 RRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=-1SU;UNTIL=19860427T070000Z |
|
|
|
3775 TZOFFSETFROM:-0500 |
|
|
|
3776 TZOFFSETTO:-0400 |
|
|
|
3777 TZNAME:EDT |
|
|
|
3778 END:DAYLIGHT |
|
|
|
3779 BEGIN:DAYLIGHT |
|
|
|
3780 DTSTART:19870405T020000 |
|
|
|
3781 RRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU;UNTIL=20060402T070000Z |
|
|
|
3782 TZOFFSETFROM:-0500 |
|
|
|
3783 TZOFFSETTO:-0400 |
|
|
|
3784 TZNAME:EDT |
|
|
|
3785 END:DAYLIGHT |
|
|
|
3786 BEGIN:DAYLIGHT |
|
|
|
3787 DTSTART:20070311T020000 |
|
|
|
3788 RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU |
|
|
|
3789 TZOFFSETFROM:-0500 |
|
|
|
3790 TZOFFSETTO:-0400 |
|
|
|
3791 TZNAME:EDT |
|
|
|
3792 END:DAYLIGHT |
|
|
|
3793 BEGIN:STANDARD |
|
|
|
3794 DTSTART:20071104T020000 |
|
|
|
3795 RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU |
|
|
|
3796 TZOFFSETFROM:-0400 |
|
|
|
3797 TZOFFSETTO:-0500 |
|
|
|
3798 TZNAME:EST |
|
|
|
3799 END:STANDARD |
|
|
|
3800 END:VTIMEZONE |
|
|
|
3801 |
|
|
|
3802 This is an example showing time zone information for New York City |
|
|
|
3803 using only the "DTSTART" property. Note that this is only |
|
|
|
3804 suitable for a recurring event that starts on or later than March |
|
|
|
3805 11, 2007 at 03:00:00 EDT (i.e., the earliest effective transition |
|
|
|
3806 date and time) and ends no later than March 9, 2008 at 01:59:59 |
|
|
|
3807 |
|
|
|
3808 |
|
|
|
3809 |
|
|
|
3810 Desruisseaux Standards Track [Page 68] |
|
|
|
i 3811 |
|
|
|
Err bitreich.org 70 |
|
|
|
3812 RFC 5545 iCalendar September 2009 |
|
|
|
3813 |
|
|
|
3814 |
|
|
|
3815 EST (i.e., latest valid date and time for EST in this scenario). |
|
|
|
3816 For example, this can be used for a recurring event that occurs |
|
|
|
3817 every Friday, 8:00 A.M.-9:00 A.M., starting June 1, 2007, ending |
|
|
|
3818 December 31, 2007, |
|
|
|
3819 |
|
|
|
3820 BEGIN:VTIMEZONE |
|
|
|
3821 TZID:America/New_York |
|
|
|
3822 LAST-MODIFIED:20050809T050000Z |
|
|
|
3823 BEGIN:STANDARD |
|
|
|
3824 DTSTART:20071104T020000 |
|
|
|
3825 TZOFFSETFROM:-0400 |
|
|
|
3826 TZOFFSETTO:-0500 |
|
|
|
3827 TZNAME:EST |
|
|
|
3828 END:STANDARD |
|
|
|
3829 BEGIN:DAYLIGHT |
|
|
|
3830 DTSTART:20070311T020000 |
|
|
|
3831 TZOFFSETFROM:-0500 |
|
|
|
3832 TZOFFSETTO:-0400 |
|
|
|
3833 TZNAME:EDT |
|
|
|
3834 END:DAYLIGHT |
|
|
|
3835 END:VTIMEZONE |
|
|
|
3836 |
|
|
|
3837 This is a simple example showing the current time zone rules for |
|
|
|
3838 New York City using a "RRULE" recurrence pattern. Note that there |
|
|
|
3839 is no effective end date to either of the Standard Time or |
|
|
|
3840 Daylight Time rules. This information would be valid for a |
|
|
|
3841 recurring event starting today and continuing indefinitely. |
|
|
|
3842 |
|
|
|
3843 BEGIN:VTIMEZONE |
|
|
|
3844 TZID:America/New_York |
|
|
|
3845 LAST-MODIFIED:20050809T050000Z |
|
|
|
3846 TZURL:http://zones.example.com/tz/America-New_York.ics |
|
|
|
3847 BEGIN:STANDARD |
|
|
|
3848 DTSTART:20071104T020000 |
|
|
|
3849 RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU |
|
|
|
3850 TZOFFSETFROM:-0400 |
|
|
|
3851 TZOFFSETTO:-0500 |
|
|
|
3852 TZNAME:EST |
|
|
|
3853 END:STANDARD |
|
|
|
3854 BEGIN:DAYLIGHT |
|
|
|
3855 DTSTART:20070311T020000 |
|
|
|
3856 RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU |
|
|
|
3857 TZOFFSETFROM:-0500 |
|
|
|
3858 TZOFFSETTO:-0400 |
|
|
|
3859 TZNAME:EDT |
|
|
|
3860 END:DAYLIGHT |
|
|
|
3861 END:VTIMEZONE |
|
|
|
3862 |
|
|
|
3863 |
|
|
|
3864 |
|
|
|
3865 |
|
|
|
3866 Desruisseaux Standards Track [Page 69] |
|
|
|
i 3867 |
|
|
|
Err bitreich.org 70 |
|
|
|
3868 RFC 5545 iCalendar September 2009 |
|
|
|
3869 |
|
|
|
3870 |
|
|
|
3871 This is an example showing a set of rules for a fictitious time |
|
|
|
3872 zone where the Daylight Time rule has an effective end date (i.e., |
|
|
|
3873 after that date, Daylight Time is no longer observed). |
|
|
|
3874 |
|
|
|
3875 BEGIN:VTIMEZONE |
|
|
|
3876 TZID:Fictitious |
|
|
|
3877 LAST-MODIFIED:19870101T000000Z |
|
|
|
3878 BEGIN:STANDARD |
|
|
|
3879 DTSTART:19671029T020000 |
|
|
|
3880 RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10 |
|
|
|
3881 TZOFFSETFROM:-0400 |
|
|
|
3882 TZOFFSETTO:-0500 |
|
|
|
3883 TZNAME:EST |
|
|
|
3884 END:STANDARD |
|
|
|
3885 BEGIN:DAYLIGHT |
|
|
|
3886 DTSTART:19870405T020000 |
|
|
|
3887 RRULE:FREQ=YEARLY;BYDAY=1SU;BYMONTH=4;UNTIL=19980404T070000Z |
|
|
|
3888 TZOFFSETFROM:-0500 |
|
|
|
3889 TZOFFSETTO:-0400 |
|
|
|
3890 TZNAME:EDT |
|
|
|
3891 END:DAYLIGHT |
|
|
|
3892 END:VTIMEZONE |
|
|
|
3893 |
|
|
|
3894 |
|
|
|
3895 |
|
|
|
3896 |
|
|
|
3897 |
|
|
|
3898 |
|
|
|
3899 |
|
|
|
3900 |
|
|
|
3901 |
|
|
|
3902 |
|
|
|
3903 |
|
|
|
3904 |
|
|
|
3905 |
|
|
|
3906 |
|
|
|
3907 |
|
|
|
3908 |
|
|
|
3909 |
|
|
|
3910 |
|
|
|
3911 |
|
|
|
3912 |
|
|
|
3913 |
|
|
|
3914 |
|
|
|
3915 |
|
|
|
3916 |
|
|
|
3917 |
|
|
|
3918 |
|
|
|
3919 |
|
|
|
3920 |
|
|
|
3921 |
|
|
|
3922 Desruisseaux Standards Track [Page 70] |
|
|
|
i 3923 |
|
|
|
Err bitreich.org 70 |
|
|
|
3924 RFC 5545 iCalendar September 2009 |
|
|
|
3925 |
|
|
|
3926 |
|
|
|
3927 This is an example showing a set of rules for a fictitious time |
|
|
|
3928 zone where the first Daylight Time rule has an effective end date. |
|
|
|
3929 There is a second Daylight Time rule that picks up where the other |
|
|
|
3930 left off. |
|
|
|
3931 |
|
|
|
3932 BEGIN:VTIMEZONE |
|
|
|
3933 TZID:Fictitious |
|
|
|
3934 LAST-MODIFIED:19870101T000000Z |
|
|
|
3935 BEGIN:STANDARD |
|
|
|
3936 DTSTART:19671029T020000 |
|
|
|
3937 RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10 |
|
|
|
3938 TZOFFSETFROM:-0400 |
|
|
|
3939 TZOFFSETTO:-0500 |
|
|
|
3940 TZNAME:EST |
|
|
|
3941 END:STANDARD |
|
|
|
3942 BEGIN:DAYLIGHT |
|
|
|
3943 DTSTART:19870405T020000 |
|
|
|
3944 RRULE:FREQ=YEARLY;BYDAY=1SU;BYMONTH=4;UNTIL=19980404T070000Z |
|
|
|
3945 TZOFFSETFROM:-0500 |
|
|
|
3946 TZOFFSETTO:-0400 |
|
|
|
3947 TZNAME:EDT |
|
|
|
3948 END:DAYLIGHT |
|
|
|
3949 BEGIN:DAYLIGHT |
|
|
|
3950 DTSTART:19990424T020000 |
|
|
|
3951 RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=4 |
|
|
|
3952 TZOFFSETFROM:-0500 |
|
|
|
3953 TZOFFSETTO:-0400 |
|
|
|
3954 TZNAME:EDT |
|
|
|
3955 END:DAYLIGHT |
|
|
|
3956 END:VTIMEZONE |
|
|
|
3957 |
|
|
|
3958 3.6.6. Alarm Component |
|
|
|
3959 |
|
|
|
3960 Component Name: VALARM |
|
|
|
3961 |
|
|
|
3962 Purpose: Provide a grouping of component properties that define an |
|
|
|
3963 alarm. |
|
|
|
3964 |
|
|
|
3965 Format Definition: A "VALARM" calendar component is defined by the |
|
|
|
3966 following notation: |
|
|
|
3967 |
|
|
|
3968 alarmc = "BEGIN" ":" "VALARM" CRLF |
|
|
|
3969 (audioprop / dispprop / emailprop) |
|
|
|
3970 "END" ":" "VALARM" CRLF |
|
|
|
3971 |
|
|
|
3972 audioprop = *( |
|
|
|
3973 ; |
|
|
|
3974 ; 'action' and 'trigger' are both REQUIRED, |
|
|
|
3975 |
|
|
|
3976 |
|
|
|
3977 |
|
|
|
3978 Desruisseaux Standards Track [Page 71] |
|
|
|
i 3979 |
|
|
|
Err bitreich.org 70 |
|
|
|
3980 RFC 5545 iCalendar September 2009 |
|
|
|
3981 |
|
|
|
3982 |
|
|
|
3983 ; but MUST NOT occur more than once. |
|
|
|
3984 ; |
|
|
|
3985 action / trigger / |
|
|
|
3986 ; |
|
|
|
3987 ; 'duration' and 'repeat' are both OPTIONAL, |
|
|
|
3988 ; and MUST NOT occur more than once each; |
|
|
|
3989 ; but if one occurs, so MUST the other. |
|
|
|
3990 ; |
|
|
|
3991 duration / repeat / |
|
|
|
3992 ; |
|
|
|
3993 ; The following is OPTIONAL, |
|
|
|
3994 ; but MUST NOT occur more than once. |
|
|
|
3995 ; |
|
|
|
3996 attach / |
|
|
|
3997 ; |
|
|
|
3998 ; The following is OPTIONAL, |
|
|
|
3999 ; and MAY occur more than once. |
|
|
|
4000 ; |
|
|
|
4001 x-prop / iana-prop |
|
|
|
4002 ; |
|
|
|
4003 ) |
|
|
|
4004 |
|
|
|
4005 dispprop = *( |
|
|
|
4006 ; |
|
|
|
4007 ; The following are REQUIRED, |
|
|
|
4008 ; but MUST NOT occur more than once. |
|
|
|
4009 ; |
|
|
|
4010 action / description / trigger / |
|
|
|
4011 ; |
|
|
|
4012 ; 'duration' and 'repeat' are both OPTIONAL, |
|
|
|
4013 ; and MUST NOT occur more than once each; |
|
|
|
4014 ; but if one occurs, so MUST the other. |
|
|
|
4015 ; |
|
|
|
4016 duration / repeat / |
|
|
|
4017 ; |
|
|
|
4018 ; The following is OPTIONAL, |
|
|
|
4019 ; and MAY occur more than once. |
|
|
|
4020 ; |
|
|
|
4021 x-prop / iana-prop |
|
|
|
4022 ; |
|
|
|
4023 ) |
|
|
|
4024 |
|
|
|
4025 emailprop = *( |
|
|
|
4026 ; |
|
|
|
4027 ; The following are all REQUIRED, |
|
|
|
4028 ; but MUST NOT occur more than once. |
|
|
|
4029 ; |
|
|
|
4030 action / description / trigger / summary / |
|
|
|
4031 |
|
|
|
4032 |
|
|
|
4033 |
|
|
|
4034 Desruisseaux Standards Track [Page 72] |
|
|
|
i 4035 |
|
|
|
Err bitreich.org 70 |
|
|
|
4036 RFC 5545 iCalendar September 2009 |
|
|
|
4037 |
|
|
|
4038 |
|
|
|
4039 ; |
|
|
|
4040 ; The following is REQUIRED, |
|
|
|
4041 ; and MAY occur more than once. |
|
|
|
4042 ; |
|
|
|
4043 attendee / |
|
|
|
4044 ; |
|
|
|
4045 ; 'duration' and 'repeat' are both OPTIONAL, |
|
|
|
4046 ; and MUST NOT occur more than once each; |
|
|
|
4047 ; but if one occurs, so MUST the other. |
|
|
|
4048 ; |
|
|
|
4049 duration / repeat / |
|
|
|
4050 ; |
|
|
|
4051 ; The following are OPTIONAL, |
|
|
|
4052 ; and MAY occur more than once. |
|
|
|
4053 ; |
|
|
|
4054 attach / x-prop / iana-prop |
|
|
|
4055 ; |
|
|
|
4056 ) |
|
|
|
4057 |
|
|
|
4058 Description: A "VALARM" calendar component is a grouping of |
|
|
|
4059 component properties that is a reminder or alarm for an event or a |
|
|
|
4060 to-do. For example, it may be used to define a reminder for a |
|
|
|
4061 pending event or an overdue to-do. |
|
|
|
4062 |
|
|
|
4063 The "VALARM" calendar component MUST include the "ACTION" and |
|
|
|
4064 "TRIGGER" properties. The "ACTION" property further constrains |
|
|
|
4065 the "VALARM" calendar component in the following ways: |
|
|
|
4066 |
|
|
|
4067 When the action is "AUDIO", the alarm can also include one and |
|
|
|
4068 only one "ATTACH" property, which MUST point to a sound resource, |
|
|
|
4069 which is rendered when the alarm is triggered. |
|
|
|
4070 |
|
|
|
4071 When the action is "DISPLAY", the alarm MUST also include a |
|
|
|
4072 "DESCRIPTION" property, which contains the text to be displayed |
|
|
|
4073 when the alarm is triggered. |
|
|
|
4074 |
|
|
|
4075 When the action is "EMAIL", the alarm MUST include a "DESCRIPTION" |
|
|
|
4076 property, which contains the text to be used as the message body, |
|
|
|
4077 a "SUMMARY" property, which contains the text to be used as the |
|
|
|
4078 message subject, and one or more "ATTENDEE" properties, which |
|
|
|
4079 contain the email address of attendees to receive the message. It |
|
|
|
4080 can also include one or more "ATTACH" properties, which are |
|
|
|
4081 intended to be sent as message attachments. When the alarm is |
|
|
|
4082 triggered, the email message is sent. |
|
|
|
4083 |
|
|
|
4084 The "VALARM" calendar component MUST only appear within either a |
|
|
|
4085 "VEVENT" or "VTODO" calendar component. "VALARM" calendar |
|
|
|
4086 components cannot be nested. Multiple mutually independent |
|
|
|
4087 |
|
|
|
4088 |
|
|
|
4089 |
|
|
|
4090 Desruisseaux Standards Track [Page 73] |
|
|
|
i 4091 |
|
|
|
Err bitreich.org 70 |
|
|
|
4092 RFC 5545 iCalendar September 2009 |
|
|
|
4093 |
|
|
|
4094 |
|
|
|
4095 "VALARM" calendar components can be specified for a single |
|
|
|
4096 "VEVENT" or "VTODO" calendar component. |
|
|
|
4097 |
|
|
|
4098 The "TRIGGER" property specifies when the alarm will be triggered. |
|
|
|
4099 The "TRIGGER" property specifies a duration prior to the start of |
|
|
|
4100 an event or a to-do. The "TRIGGER" edge may be explicitly set to |
|
|
|
4101 be relative to the "START" or "END" of the event or to-do with the |
|
|
|
4102 "RELATED" parameter of the "TRIGGER" property. The "TRIGGER" |
|
|
|
4103 property value type can alternatively be set to an absolute |
|
|
|
4104 calendar date with UTC time. |
|
|
|
4105 |
|
|
|
4106 In an alarm set to trigger on the "START" of an event or to-do, |
|
|
|
4107 the "DTSTART" property MUST be present in the associated event or |
|
|
|
4108 to-do. In an alarm in a "VEVENT" calendar component set to |
|
|
|
4109 trigger on the "END" of the event, either the "DTEND" property |
|
|
|
4110 MUST be present, or the "DTSTART" and "DURATION" properties MUST |
|
|
|
4111 both be present. In an alarm in a "VTODO" calendar component set |
|
|
|
4112 to trigger on the "END" of the to-do, either the "DUE" property |
|
|
|
4113 MUST be present, or the "DTSTART" and "DURATION" properties MUST |
|
|
|
4114 both be present. |
|
|
|
4115 |
|
|
|
4116 The alarm can be defined such that it triggers repeatedly. A |
|
|
|
4117 definition of an alarm with a repeating trigger MUST include both |
|
|
|
4118 the "DURATION" and "REPEAT" properties. The "DURATION" property |
|
|
|
4119 specifies the delay period, after which the alarm will repeat. |
|
|
|
4120 The "REPEAT" property specifies the number of additional |
|
|
|
4121 repetitions that the alarm will be triggered. This repetition |
|
|
|
4122 count is in addition to the initial triggering of the alarm. Both |
|
|
|
4123 of these properties MUST be present in order to specify a |
|
|
|
4124 repeating alarm. If one of these two properties is absent, then |
|
|
|
4125 the alarm will not repeat beyond the initial trigger. |
|
|
|
4126 |
|
|
|
4127 The "ACTION" property is used within the "VALARM" calendar |
|
|
|
4128 component to specify the type of action invoked when the alarm is |
|
|
|
4129 triggered. The "VALARM" properties provide enough information for |
|
|
|
4130 a specific action to be invoked. It is typically the |
|
|
|
4131 responsibility of a "Calendar User Agent" (CUA) to deliver the |
|
|
|
4132 alarm in the specified fashion. An "ACTION" property value of |
|
|
|
4133 AUDIO specifies an alarm that causes a sound to be played to alert |
|
|
|
4134 the user; DISPLAY specifies an alarm that causes a text message to |
|
|
|
4135 be displayed to the user; and EMAIL specifies an alarm that causes |
|
|
|
4136 an electronic email message to be delivered to one or more email |
|
|
|
4137 addresses. |
|
|
|
4138 |
|
|
|
4139 In an AUDIO alarm, if the optional "ATTACH" property is included, |
|
|
|
4140 it MUST specify an audio sound resource. The intention is that |
|
|
|
4141 the sound will be played as the alarm effect. If an "ATTACH" |
|
|
|
4142 property is specified that does not refer to a sound resource, or |
|
|
|
4143 |
|
|
|
4144 |
|
|
|
4145 |
|
|
|
4146 Desruisseaux Standards Track [Page 74] |
|
|
|
i 4147 |
|
|
|
Err bitreich.org 70 |
|
|
|
4148 RFC 5545 iCalendar September 2009 |
|
|
|
4149 |
|
|
|
4150 |
|
|
|
4151 if the specified sound resource cannot be rendered (because its |
|
|
|
4152 format is unsupported, or because it cannot be retrieved), then |
|
|
|
4153 the CUA or other entity responsible for playing the sound may |
|
|
|
4154 choose a fallback action, such as playing a built-in default |
|
|
|
4155 sound, or playing no sound at all. |
|
|
|
4156 |
|
|
|
4157 In a DISPLAY alarm, the intended alarm effect is for the text |
|
|
|
4158 value of the "DESCRIPTION" property to be displayed to the user. |
|
|
|
4159 |
|
|
|
4160 In an EMAIL alarm, the intended alarm effect is for an email |
|
|
|
4161 message to be composed and delivered to all the addresses |
|
|
|
4162 specified by the "ATTENDEE" properties in the "VALARM" calendar |
|
|
|
4163 component. The "DESCRIPTION" property of the "VALARM" calendar |
|
|
|
4164 component MUST be used as the body text of the message, and the |
|
|
|
4165 "SUMMARY" property MUST be used as the subject text. Any "ATTACH" |
|
|
|
4166 properties in the "VALARM" calendar component SHOULD be sent as |
|
|
|
4167 attachments to the message. |
|
|
|
4168 |
|
|
|
4169 Note: Implementations should carefully consider whether they |
|
|
|
4170 accept alarm components from untrusted sources, e.g., when |
|
|
|
4171 importing calendar objects from external sources. One |
|
|
|
4172 reasonable policy is to always ignore alarm components that the |
|
|
|
4173 calendar user has not set herself, or at least ask for |
|
|
|
4174 confirmation in such a case. |
|
|
|
4175 |
|
|
|
4176 Example: The following example is for a "VALARM" calendar component |
|
|
|
4177 that specifies an audio alarm that will sound at a precise time |
|
|
|
4178 and repeat 4 more times at 15-minute intervals: |
|
|
|
4179 |
|
|
|
4180 BEGIN:VALARM |
|
|
|
4181 TRIGGER;VALUE=DATE-TIME:19970317T133000Z |
|
|
|
4182 REPEAT:4 |
|
|
|
4183 DURATION:PT15M |
|
|
|
4184 ACTION:AUDIO |
|
|
|
4185 ATTACH;FMTTYPE=audio/basic:ftp://example.com/pub/ |
|
|
|
4186 sounds/bell-01.aud |
|
|
|
4187 END:VALARM |
|
|
|
4188 |
|
|
|
4189 The following example is for a "VALARM" calendar component that |
|
|
|
4190 specifies a display alarm that will trigger 30 minutes before the |
|
|
|
4191 scheduled start of the event or of the to-do it is associated with |
|
|
|
4192 and will repeat 2 more times at 15-minute intervals: |
|
|
|
4193 |
|
|
|
4194 |
|
|
|
4195 |
|
|
|
4196 |
|
|
|
4197 |
|
|
|
4198 |
|
|
|
4199 |
|
|
|
4200 |
|
|
|
4201 |
|
|
|
4202 Desruisseaux Standards Track [Page 75] |
|
|
|
i 4203 |
|
|
|
Err bitreich.org 70 |
|
|
|
4204 RFC 5545 iCalendar September 2009 |
|
|
|
4205 |
|
|
|
4206 |
|
|
|
4207 BEGIN:VALARM |
|
|
|
4208 TRIGGER:-PT30M |
|
|
|
4209 REPEAT:2 |
|
|
|
4210 DURATION:PT15M |
|
|
|
4211 ACTION:DISPLAY |
|
|
|
4212 DESCRIPTION:Breakfast meeting with executive\n |
|
|
|
4213 team at 8:30 AM EST. |
|
|
|
4214 END:VALARM |
|
|
|
4215 |
|
|
|
4216 The following example is for a "VALARM" calendar component that |
|
|
|
4217 specifies an email alarm that will trigger 2 days before the |
|
|
|
4218 scheduled due DATE-TIME of a to-do with which it is associated. |
|
|
|
4219 It does not repeat. The email has a subject, body, and attachment |
|
|
|
4220 link. |
|
|
|
4221 |
|
|
|
4222 BEGIN:VALARM |
|
|
|
4223 TRIGGER;RELATED=END:-P2D |
|
|
|
4224 ACTION:EMAIL |
|
|
|
4225 ATTENDEE:mailto:john_doe@example.com |
|
|
|
4226 SUMMARY:*** REMINDER: SEND AGENDA FOR WEEKLY STAFF MEETING *** |
|
|
|
4227 DESCRIPTION:A draft agenda needs to be sent out to the attendees |
|
|
|
4228 to the weekly managers meeting (MGR-LIST). Attached is a |
|
|
|
4229 pointer the document template for the agenda file. |
|
|
|
4230 ATTACH;FMTTYPE=application/msword:http://example.com/ |
|
|
|
4231 templates/agenda.doc |
|
|
|
4232 END:VALARM |
|
|
|
4233 |
|
|
|
4234 3.7. Calendar Properties |
|
|
|
4235 |
|
|
|
4236 The Calendar Properties are attributes that apply to the iCalendar |
|
|
|
4237 object, as a whole. These properties do not appear within a calendar |
|
|
|
4238 component. They SHOULD be specified after the "BEGIN:VCALENDAR" |
|
|
|
4239 delimiter string and prior to any calendar component. |
|
|
|
4240 |
|
|
|
4241 3.7.1. Calendar Scale |
|
|
|
4242 |
|
|
|
4243 Property Name: CALSCALE |
|
|
|
4244 |
|
|
|
4245 Purpose: This property defines the calendar scale used for the |
|
|
|
4246 calendar information specified in the iCalendar object. |
|
|
|
4247 |
|
|
|
4248 Value Type: TEXT |
|
|
|
4249 |
|
|
|
4250 Property Parameters: IANA and non-standard property parameters can |
|
|
|
4251 be specified on this property. |
|
|
|
4252 |
|
|
|
4253 Conformance: This property can be specified once in an iCalendar |
|
|
|
4254 object. The default value is "GREGORIAN". |
|
|
|
4255 |
|
|
|
4256 |
|
|
|
4257 |
|
|
|
4258 Desruisseaux Standards Track [Page 76] |
|
|
|
i 4259 |
|
|
|
Err bitreich.org 70 |
|
|
|
4260 RFC 5545 iCalendar September 2009 |
|
|
|
4261 |
|
|
|
4262 |
|
|
|
4263 Description: This memo is based on the Gregorian calendar scale. |
|
|
|
4264 The Gregorian calendar scale is assumed if this property is not |
|
|
|
4265 specified in the iCalendar object. It is expected that other |
|
|
|
4266 calendar scales will be defined in other specifications or by |
|
|
|
4267 future versions of this memo. |
|
|
|
4268 |
|
|
|
4269 Format Definition: This property is defined by the following |
|
|
|
4270 notation: |
|
|
|
4271 |
|
|
|
4272 calscale = "CALSCALE" calparam ":" calvalue CRLF |
|
|
|
4273 |
|
|
|
4274 calparam = *(";" other-param) |
|
|
|
4275 |
|
|
|
4276 calvalue = "GREGORIAN" |
|
|
|
4277 |
|
|
|
4278 Example: The following is an example of this property: |
|
|
|
4279 |
|
|
|
4280 CALSCALE:GREGORIAN |
|
|
|
4281 |
|
|
|
4282 3.7.2. Method |
|
|
|
4283 |
|
|
|
4284 Property Name: METHOD |
|
|
|
4285 |
|
|
|
4286 Purpose: This property defines the iCalendar object method |
|
|
|
4287 associated with the calendar object. |
|
|
|
4288 |
|
|
|
4289 Value Type: TEXT |
|
|
|
4290 |
|
|
|
4291 Property Parameters: IANA and non-standard property parameters can |
|
|
|
4292 be specified on this property. |
|
|
|
4293 |
|
|
|
4294 Conformance: This property can be specified once in an iCalendar |
|
|
|
4295 object. |
|
|
|
4296 |
|
|
|
4297 Description: When used in a MIME message entity, the value of this |
|
|
|
4298 property MUST be the same as the Content-Type "method" parameter |
|
|
|
4299 value. If either the "METHOD" property or the Content-Type |
|
|
|
4300 "method" parameter is specified, then the other MUST also be |
|
|
|
4301 specified. |
|
|
|
4302 |
|
|
|
4303 No methods are defined by this specification. This is the subject |
|
|
|
4304 of other specifications, such as the iCalendar Transport- |
|
|
|
4305 independent Interoperability Protocol (iTIP) defined by [2446bis]. |
|
|
|
4306 |
|
|
|
4307 If this property is not present in the iCalendar object, then a |
|
|
|
4308 scheduling transaction MUST NOT be assumed. In such cases, the |
|
|
|
4309 iCalendar object is merely being used to transport a snapshot of |
|
|
|
4310 |
|
|
|
4311 |
|
|
|
4312 |
|
|
|
4313 |
|
|
|
4314 Desruisseaux Standards Track [Page 77] |
|
|
|
i 4315 |
|
|
|
Err bitreich.org 70 |
|
|
|
4316 RFC 5545 iCalendar September 2009 |
|
|
|
4317 |
|
|
|
4318 |
|
|
|
4319 some calendar information; without the intention of conveying a |
|
|
|
4320 scheduling semantic. |
|
|
|
4321 |
|
|
|
4322 Format Definition: This property is defined by the following |
|
|
|
4323 notation: |
|
|
|
4324 |
|
|
|
4325 method = "METHOD" metparam ":" metvalue CRLF |
|
|
|
4326 |
|
|
|
4327 metparam = *(";" other-param) |
|
|
|
4328 |
|
|
|
4329 metvalue = iana-token |
|
|
|
4330 |
|
|
|
4331 Example: The following is a hypothetical example of this property to |
|
|
|
4332 convey that the iCalendar object is a scheduling request: |
|
|
|
4333 |
|
|
|
4334 METHOD:REQUEST |
|
|
|
4335 |
|
|
|
4336 3.7.3. Product Identifier |
|
|
|
4337 |
|
|
|
4338 Property Name: PRODID |
|
|
|
4339 |
|
|
|
4340 Purpose: This property specifies the identifier for the product that |
|
|
|
4341 created the iCalendar object. |
|
|
|
4342 |
|
|
|
4343 Value Type: TEXT |
|
|
|
4344 |
|
|
|
4345 Property Parameters: IANA and non-standard property parameters can |
|
|
|
4346 be specified on this property. |
|
|
|
4347 |
|
|
|
4348 Conformance: The property MUST be specified once in an iCalendar |
|
|
|
4349 object. |
|
|
|
4350 |
|
|
|
4351 Description: The vendor of the implementation SHOULD assure that |
|
|
|
4352 this is a globally unique identifier; using some technique such as |
|
|
|
4353 an FPI value, as defined in [ISO.9070.1991]. |
|
|
|
4354 |
|
|
|
4355 This property SHOULD NOT be used to alter the interpretation of an |
|
|
|
4356 iCalendar object beyond the semantics specified in this memo. For |
|
|
|
4357 example, it is not to be used to further the understanding of non- |
|
|
|
4358 standard properties. |
|
|
|
4359 |
|
|
|
4360 Format Definition: This property is defined by the following |
|
|
|
4361 notation: |
|
|
|
4362 |
|
|
|
4363 prodid = "PRODID" pidparam ":" pidvalue CRLF |
|
|
|
4364 |
|
|
|
4365 pidparam = *(";" other-param) |
|
|
|
4366 |
|
|
|
4367 |
|
|
|
4368 |
|
|
|
4369 |
|
|
|
4370 Desruisseaux Standards Track [Page 78] |
|
|
|
i 4371 |
|
|
|
Err bitreich.org 70 |
|
|
|
4372 RFC 5545 iCalendar September 2009 |
|
|
|
4373 |
|
|
|
4374 |
|
|
|
4375 pidvalue = text |
|
|
|
4376 ;Any text that describes the product and version |
|
|
|
4377 ;and that is generally assured of being unique. |
|
|
|
4378 |
|
|
|
4379 Example: The following is an example of this property. It does not |
|
|
|
4380 imply that English is the default language. |
|
|
|
4381 |
|
|
|
4382 PRODID:-//ABC Corporation//NONSGML My Product//EN |
|
|
|
4383 |
|
|
|
4384 3.7.4. Version |
|
|
|
4385 |
|
|
|
4386 Property Name: VERSION |
|
|
|
4387 |
|
|
|
4388 Purpose: This property specifies the identifier corresponding to the |
|
|
|
4389 highest version number or the minimum and maximum range of the |
|
|
|
4390 iCalendar specification that is required in order to interpret the |
|
|
|
4391 iCalendar object. |
|
|
|
4392 |
|
|
|
4393 Value Type: TEXT |
|
|
|
4394 |
|
|
|
4395 Property Parameters: IANA and non-standard property parameters can |
|
|
|
4396 be specified on this property. |
|
|
|
4397 |
|
|
|
4398 Conformance: This property MUST be specified once in an iCalendar |
|
|
|
4399 object. |
|
|
|
4400 |
|
|
|
4401 Description: A value of "2.0" corresponds to this memo. |
|
|
|
4402 |
|
|
|
4403 Format Definition: This property is defined by the following |
|
|
|
4404 notation: |
|
|
|
4405 |
|
|
|
4406 version = "VERSION" verparam ":" vervalue CRLF |
|
|
|
4407 |
|
|
|
4408 verparam = *(";" other-param) |
|
|
|
4409 |
|
|
|
4410 vervalue = "2.0" ;This memo |
|
|
|
4411 / maxver |
|
|
|
4412 / (minver ";" maxver) |
|
|
|
4413 |
|
|
|
4414 minver = <A IANA-registered iCalendar version identifier> |
|
|
|
4415 ;Minimum iCalendar version needed to parse the iCalendar object. |
|
|
|
4416 |
|
|
|
4417 maxver = <A IANA-registered iCalendar version identifier> |
|
|
|
4418 ;Maximum iCalendar version needed to parse the iCalendar object. |
|
|
|
4419 |
|
|
|
4420 |
|
|
|
4421 |
|
|
|
4422 |
|
|
|
4423 |
|
|
|
4424 |
|
|
|
4425 |
|
|
|
4426 Desruisseaux Standards Track [Page 79] |
|
|
|
i 4427 |
|
|
|
Err bitreich.org 70 |
|
|
|
4428 RFC 5545 iCalendar September 2009 |
|
|
|
4429 |
|
|
|
4430 |
|
|
|
4431 Example: The following is an example of this property: |
|
|
|
4432 |
|
|
|
4433 VERSION:2.0 |
|
|
|
4434 |
|
|
|
4435 3.8. Component Properties |
|
|
|
4436 |
|
|
|
4437 The following properties can appear within calendar components, as |
|
|
|
4438 specified by each component property definition. |
|
|
|
4439 |
|
|
|
4440 3.8.1. Descriptive Component Properties |
|
|
|
4441 |
|
|
|
4442 The following properties specify descriptive information about |
|
|
|
4443 calendar components. |
|
|
|
4444 |
|
|
|
4445 3.8.1.1. Attachment |
|
|
|
4446 |
|
|
|
4447 Property Name: ATTACH |
|
|
|
4448 |
|
|
|
4449 Purpose: This property provides the capability to associate a |
|
|
|
4450 document object with a calendar component. |
|
|
|
4451 |
|
|
|
4452 Value Type: The default value type for this property is URI. The |
|
|
|
4453 value type can also be set to BINARY to indicate inline binary |
|
|
|
4454 encoded content information. |
|
|
|
4455 |
|
|
|
4456 Property Parameters: IANA, non-standard, inline encoding, and value |
|
|
|
4457 data type property parameters can be specified on this property. |
|
|
|
4458 The format type parameter can be specified on this property and is |
|
|
|
4459 RECOMMENDED for inline binary encoded content information. |
|
|
|
4460 |
|
|
|
4461 Conformance: This property can be specified multiple times in a |
|
|
|
4462 "VEVENT", "VTODO", "VJOURNAL", or "VALARM" calendar component with |
|
|
|
4463 the exception of AUDIO alarm that only allows this property to |
|
|
|
4464 occur once. |
|
|
|
4465 |
|
|
|
4466 Description: This property is used in "VEVENT", "VTODO", and |
|
|
|
4467 "VJOURNAL" calendar components to associate a resource (e.g., |
|
|
|
4468 document) with the calendar component. This property is used in |
|
|
|
4469 "VALARM" calendar components to specify an audio sound resource or |
|
|
|
4470 an email message attachment. This property can be specified as a |
|
|
|
4471 URI pointing to a resource or as inline binary encoded content. |
|
|
|
4472 |
|
|
|
4473 When this property is specified as inline binary encoded content, |
|
|
|
4474 calendar applications MAY attempt to guess the media type of the |
|
|
|
4475 resource via inspection of its content if and only if the media |
|
|
|
4476 type of the resource is not given by the "FMTTYPE" parameter. If |
|
|
|
4477 the media type remains unknown, calendar applications SHOULD treat |
|
|
|
4478 it as type "application/octet-stream". |
|
|
|
4479 |
|
|
|
4480 |
|
|
|
4481 |
|
|
|
4482 Desruisseaux Standards Track [Page 80] |
|
|
|
i 4483 |
|
|
|
Err bitreich.org 70 |
|
|
|
4484 RFC 5545 iCalendar September 2009 |
|
|
|
4485 |
|
|
|
4486 |
|
|
|
4487 Format Definition: This property is defined by the following |
|
|
|
4488 notation: |
|
|
|
4489 |
|
|
|
4490 attach = "ATTACH" attachparam ( ":" uri ) / |
|
|
|
4491 ( |
|
|
|
4492 ";" "ENCODING" "=" "BASE64" |
|
|
|
4493 ";" "VALUE" "=" "BINARY" |
|
|
|
4494 ":" binary |
|
|
|
4495 ) |
|
|
|
4496 CRLF |
|
|
|
4497 |
|
|
|
4498 attachparam = *( |
|
|
|
4499 ; |
|
|
|
4500 ; The following is OPTIONAL for a URI value, |
|
|
|
4501 ; RECOMMENDED for a BINARY value, |
|
|
|
4502 ; and MUST NOT occur more than once. |
|
|
|
4503 ; |
|
|
|
4504 (";" fmttypeparam) / |
|
|
|
4505 ; |
|
|
|
4506 ; The following is OPTIONAL, |
|
|
|
4507 ; and MAY occur more than once. |
|
|
|
4508 ; |
|
|
|
4509 (";" other-param) |
|
|
|
4510 ; |
|
|
|
4511 ) |
|
|
|
4512 |
|
|
|
4513 Example: The following are examples of this property: |
|
|
|
4514 |
|
|
|
4515 ATTACH:CID:jsmith.part3.960817T083000.xyzMail@example.com |
|
|
|
4516 |
|
|
|
4517 ATTACH;FMTTYPE=application/postscript:ftp://example.com/pub/ |
|
|
|
4518 reports/r-960812.ps |
|
|
|
4519 |
|
|
|
4520 3.8.1.2. Categories |
|
|
|
4521 |
|
|
|
4522 Property Name: CATEGORIES |
|
|
|
4523 |
|
|
|
4524 Purpose: This property defines the categories for a calendar |
|
|
|
4525 component. |
|
|
|
4526 |
|
|
|
4527 Value Type: TEXT |
|
|
|
4528 |
|
|
|
4529 Property Parameters: IANA, non-standard, and language property |
|
|
|
4530 parameters can be specified on this property. |
|
|
|
4531 |
|
|
|
4532 Conformance: The property can be specified within "VEVENT", "VTODO", |
|
|
|
4533 or "VJOURNAL" calendar components. |
|
|
|
4534 |
|
|
|
4535 |
|
|
|
4536 |
|
|
|
4537 |
|
|
|
4538 Desruisseaux Standards Track [Page 81] |
|
|
|
i 4539 |
|
|
|
Err bitreich.org 70 |
|
|
|
4540 RFC 5545 iCalendar September 2009 |
|
|
|
4541 |
|
|
|
4542 |
|
|
|
4543 Description: This property is used to specify categories or subtypes |
|
|
|
4544 of the calendar component. The categories are useful in searching |
|
|
|
4545 for a calendar component of a particular type and category. |
|
|
|
4546 Within the "VEVENT", "VTODO", or "VJOURNAL" calendar components, |
|
|
|
4547 more than one category can be specified as a COMMA-separated list |
|
|
|
4548 of categories. |
|
|
|
4549 |
|
|
|
4550 Format Definition: This property is defined by the following |
|
|
|
4551 notation: |
|
|
|
4552 |
|
|
|
4553 categories = "CATEGORIES" catparam ":" text *("," text) |
|
|
|
4554 CRLF |
|
|
|
4555 |
|
|
|
4556 catparam = *( |
|
|
|
4557 ; |
|
|
|
4558 ; The following is OPTIONAL, |
|
|
|
4559 ; but MUST NOT occur more than once. |
|
|
|
4560 ; |
|
|
|
4561 (";" languageparam ) / |
|
|
|
4562 ; |
|
|
|
4563 ; The following is OPTIONAL, |
|
|
|
4564 ; and MAY occur more than once. |
|
|
|
4565 ; |
|
|
|
4566 (";" other-param) |
|
|
|
4567 ; |
|
|
|
4568 ) |
|
|
|
4569 |
|
|
|
4570 Example: The following are examples of this property: |
|
|
|
4571 |
|
|
|
4572 CATEGORIES:APPOINTMENT,EDUCATION |
|
|
|
4573 |
|
|
|
4574 CATEGORIES:MEETING |
|
|
|
4575 |
|
|
|
4576 3.8.1.3. Classification |
|
|
|
4577 |
|
|
|
4578 Property Name: CLASS |
|
|
|
4579 |
|
|
|
4580 Purpose: This property defines the access classification for a |
|
|
|
4581 calendar component. |
|
|
|
4582 |
|
|
|
4583 Value Type: TEXT |
|
|
|
4584 |
|
|
|
4585 Property Parameters: IANA and non-standard property parameters can |
|
|
|
4586 be specified on this property. |
|
|
|
4587 |
|
|
|
4588 Conformance: The property can be specified once in a "VEVENT", |
|
|
|
4589 "VTODO", or "VJOURNAL" calendar components. |
|
|
|
4590 |
|
|
|
4591 |
|
|
|
4592 |
|
|
|
4593 |
|
|
|
4594 Desruisseaux Standards Track [Page 82] |
|
|
|
i 4595 |
|
|
|
Err bitreich.org 70 |
|
|
|
4596 RFC 5545 iCalendar September 2009 |
|
|
|
4597 |
|
|
|
4598 |
|
|
|
4599 Description: An access classification is only one component of the |
|
|
|
4600 general security system within a calendar application. It |
|
|
|
4601 provides a method of capturing the scope of the access the |
|
|
|
4602 calendar owner intends for information within an individual |
|
|
|
4603 calendar entry. The access classification of an individual |
|
|
|
4604 iCalendar component is useful when measured along with the other |
|
|
|
4605 security components of a calendar system (e.g., calendar user |
|
|
|
4606 authentication, authorization, access rights, access role, etc.). |
|
|
|
4607 Hence, the semantics of the individual access classifications |
|
|
|
4608 cannot be completely defined by this memo alone. Additionally, |
|
|
|
4609 due to the "blind" nature of most exchange processes using this |
|
|
|
4610 memo, these access classifications cannot serve as an enforcement |
|
|
|
4611 statement for a system receiving an iCalendar object. Rather, |
|
|
|
4612 they provide a method for capturing the intention of the calendar |
|
|
|
4613 owner for the access to the calendar component. If not specified |
|
|
|
4614 in a component that allows this property, the default value is |
|
|
|
4615 PUBLIC. Applications MUST treat x-name and iana-token values they |
|
|
|
4616 don't recognize the same way as they would the PRIVATE value. |
|
|
|
4617 |
|
|
|
4618 Format Definition: This property is defined by the following |
|
|
|
4619 notation: |
|
|
|
4620 |
|
|
|
4621 class = "CLASS" classparam ":" classvalue CRLF |
|
|
|
4622 |
|
|
|
4623 classparam = *(";" other-param) |
|
|
|
4624 |
|
|
|
4625 classvalue = "PUBLIC" / "PRIVATE" / "CONFIDENTIAL" / iana-token |
|
|
|
4626 / x-name |
|
|
|
4627 ;Default is PUBLIC |
|
|
|
4628 |
|
|
|
4629 Example: The following is an example of this property: |
|
|
|
4630 |
|
|
|
4631 CLASS:PUBLIC |
|
|
|
4632 |
|
|
|
4633 3.8.1.4. Comment |
|
|
|
4634 |
|
|
|
4635 Property Name: COMMENT |
|
|
|
4636 |
|
|
|
4637 Purpose: This property specifies non-processing information intended |
|
|
|
4638 to provide a comment to the calendar user. |
|
|
|
4639 |
|
|
|
4640 Value Type: TEXT |
|
|
|
4641 |
|
|
|
4642 Property Parameters: IANA, non-standard, alternate text |
|
|
|
4643 representation, and language property parameters can be specified |
|
|
|
4644 on this property. |
|
|
|
4645 |
|
|
|
4646 |
|
|
|
4647 |
|
|
|
4648 |
|
|
|
4649 |
|
|
|
4650 Desruisseaux Standards Track [Page 83] |
|
|
|
i 4651 |
|
|
|
Err bitreich.org 70 |
|
|
|
4652 RFC 5545 iCalendar September 2009 |
|
|
|
4653 |
|
|
|
4654 |
|
|
|
4655 Conformance: This property can be specified multiple times in |
|
|
|
4656 "VEVENT", "VTODO", "VJOURNAL", and "VFREEBUSY" calendar components |
|
|
|
4657 as well as in the "STANDARD" and "DAYLIGHT" sub-components. |
|
|
|
4658 |
|
|
|
4659 Description: This property is used to specify a comment to the |
|
|
|
4660 calendar user. |
|
|
|
4661 |
|
|
|
4662 Format Definition: This property is defined by the following |
|
|
|
4663 notation: |
|
|
|
4664 |
|
|
|
4665 comment = "COMMENT" commparam ":" text CRLF |
|
|
|
4666 |
|
|
|
4667 commparam = *( |
|
|
|
4668 ; |
|
|
|
4669 ; The following are OPTIONAL, |
|
|
|
4670 ; but MUST NOT occur more than once. |
|
|
|
4671 ; |
|
|
|
4672 (";" altrepparam) / (";" languageparam) / |
|
|
|
4673 ; |
|
|
|
4674 ; The following is OPTIONAL, |
|
|
|
4675 ; and MAY occur more than once. |
|
|
|
4676 ; |
|
|
|
4677 (";" other-param) |
|
|
|
4678 ; |
|
|
|
4679 ) |
|
|
|
4680 |
|
|
|
4681 Example: The following is an example of this property: |
|
|
|
4682 |
|
|
|
4683 COMMENT:The meeting really needs to include both ourselves |
|
|
|
4684 and the customer. We can't hold this meeting without them. |
|
|
|
4685 As a matter of fact\, the venue for the meeting ought to be at |
|
|
|
4686 their site. - - John |
|
|
|
4687 |
|
|
|
4688 3.8.1.5. Description |
|
|
|
4689 |
|
|
|
4690 Property Name: DESCRIPTION |
|
|
|
4691 |
|
|
|
4692 Purpose: This property provides a more complete description of the |
|
|
|
4693 calendar component than that provided by the "SUMMARY" property. |
|
|
|
4694 |
|
|
|
4695 Value Type: TEXT |
|
|
|
4696 |
|
|
|
4697 Property Parameters: IANA, non-standard, alternate text |
|
|
|
4698 representation, and language property parameters can be specified |
|
|
|
4699 on this property. |
|
|
|
4700 |
|
|
|
4701 |
|
|
|
4702 |
|
|
|
4703 |
|
|
|
4704 |
|
|
|
4705 |
|
|
|
4706 Desruisseaux Standards Track [Page 84] |
|
|
|
i 4707 |
|
|
|
Err bitreich.org 70 |
|
|
|
4708 RFC 5545 iCalendar September 2009 |
|
|
|
4709 |
|
|
|
4710 |
|
|
|
4711 Conformance: The property can be specified in the "VEVENT", "VTODO", |
|
|
|
4712 "VJOURNAL", or "VALARM" calendar components. The property can be |
|
|
|
4713 specified multiple times only within a "VJOURNAL" calendar |
|
|
|
4714 component. |
|
|
|
4715 |
|
|
|
4716 Description: This property is used in the "VEVENT" and "VTODO" to |
|
|
|
4717 capture lengthy textual descriptions associated with the activity. |
|
|
|
4718 |
|
|
|
4719 This property is used in the "VJOURNAL" calendar component to |
|
|
|
4720 capture one or more textual journal entries. |
|
|
|
4721 |
|
|
|
4722 This property is used in the "VALARM" calendar component to |
|
|
|
4723 capture the display text for a DISPLAY category of alarm, and to |
|
|
|
4724 capture the body text for an EMAIL category of alarm. |
|
|
|
4725 |
|
|
|
4726 Format Definition: This property is defined by the following |
|
|
|
4727 notation: |
|
|
|
4728 |
|
|
|
4729 description = "DESCRIPTION" descparam ":" text CRLF |
|
|
|
4730 |
|
|
|
4731 descparam = *( |
|
|
|
4732 ; |
|
|
|
4733 ; The following are OPTIONAL, |
|
|
|
4734 ; but MUST NOT occur more than once. |
|
|
|
4735 ; |
|
|
|
4736 (";" altrepparam) / (";" languageparam) / |
|
|
|
4737 ; |
|
|
|
4738 ; The following is OPTIONAL, |
|
|
|
4739 ; and MAY occur more than once. |
|
|
|
4740 ; |
|
|
|
4741 (";" other-param) |
|
|
|
4742 ; |
|
|
|
4743 ) |
|
|
|
4744 |
|
|
|
4745 Example: The following is an example of this property with formatted |
|
|
|
4746 line breaks in the property value: |
|
|
|
4747 |
|
|
|
4748 DESCRIPTION:Meeting to provide technical review for "Phoenix" |
|
|
|
4749 design.\nHappy Face Conference Room. Phoenix design team |
|
|
|
4750 MUST attend this meeting.\nRSVP to team leader. |
|
|
|
4751 |
|
|
|
4752 3.8.1.6. Geographic Position |
|
|
|
4753 |
|
|
|
4754 Property Name: GEO |
|
|
|
4755 |
|
|
|
4756 Purpose: This property specifies information related to the global |
|
|
|
4757 position for the activity specified by a calendar component. |
|
|
|
4758 |
|
|
|
4759 |
|
|
|
4760 |
|
|
|
4761 |
|
|
|
4762 Desruisseaux Standards Track [Page 85] |
|
|
|
i 4763 |
|
|
|
Err bitreich.org 70 |
|
|
|
4764 RFC 5545 iCalendar September 2009 |
|
|
|
4765 |
|
|
|
4766 |
|
|
|
4767 Value Type: FLOAT. The value MUST be two SEMICOLON-separated FLOAT |
|
|
|
4768 values. |
|
|
|
4769 |
|
|
|
4770 Property Parameters: IANA and non-standard property parameters can |
|
|
|
4771 be specified on this property. |
|
|
|
4772 |
|
|
|
4773 Conformance: This property can be specified in "VEVENT" or "VTODO" |
|
|
|
4774 calendar components. |
|
|
|
4775 |
|
|
|
4776 Description: This property value specifies latitude and longitude, |
|
|
|
4777 in that order (i.e., "LAT LON" ordering). The longitude |
|
|
|
4778 represents the location east or west of the prime meridian as a |
|
|
|
4779 positive or negative real number, respectively. The longitude and |
|
|
|
4780 latitude values MAY be specified up to six decimal places, which |
|
|
|
4781 will allow for accuracy to within one meter of geographical |
|
|
|
4782 position. Receiving applications MUST accept values of this |
|
|
|
4783 precision and MAY truncate values of greater precision. |
|
|
|
4784 |
|
|
|
4785 Values for latitude and longitude shall be expressed as decimal |
|
|
|
4786 fractions of degrees. Whole degrees of latitude shall be |
|
|
|
4787 represented by a two-digit decimal number ranging from 0 through |
|
|
|
4788 90. Whole degrees of longitude shall be represented by a decimal |
|
|
|
4789 number ranging from 0 through 180. When a decimal fraction of a |
|
|
|
4790 degree is specified, it shall be separated from the whole number |
|
|
|
4791 of degrees by a decimal point. |
|
|
|
4792 |
|
|
|
4793 Latitudes north of the equator shall be specified by a plus sign |
|
|
|
4794 (+), or by the absence of a minus sign (-), preceding the digits |
|
|
|
4795 designating degrees. Latitudes south of the Equator shall be |
|
|
|
4796 designated by a minus sign (-) preceding the digits designating |
|
|
|
4797 degrees. A point on the Equator shall be assigned to the Northern |
|
|
|
4798 Hemisphere. |
|
|
|
4799 |
|
|
|
4800 Longitudes east of the prime meridian shall be specified by a plus |
|
|
|
4801 sign (+), or by the absence of a minus sign (-), preceding the |
|
|
|
4802 digits designating degrees. Longitudes west of the meridian shall |
|
|
|
4803 be designated by minus sign (-) preceding the digits designating |
|
|
|
4804 degrees. A point on the prime meridian shall be assigned to the |
|
|
|
4805 Eastern Hemisphere. A point on the 180th meridian shall be |
|
|
|
4806 assigned to the Western Hemisphere. One exception to this last |
|
|
|
4807 convention is permitted. For the special condition of describing |
|
|
|
4808 a band of latitude around the earth, the East Bounding Coordinate |
|
|
|
4809 data element shall be assigned the value +180 (180) degrees. |
|
|
|
4810 |
|
|
|
4811 Any spatial address with a latitude of +90 (90) or -90 degrees |
|
|
|
4812 will specify the position at the North or South Pole, |
|
|
|
4813 respectively. The component for longitude may have any legal |
|
|
|
4814 value. |
|
|
|
4815 |
|
|
|
4816 |
|
|
|
4817 |
|
|
|
4818 Desruisseaux Standards Track [Page 86] |
|
|
|
i 4819 |
|
|
|
Err bitreich.org 70 |
|
|
|
4820 RFC 5545 iCalendar September 2009 |
|
|
|
4821 |
|
|
|
4822 |
|
|
|
4823 With the exception of the special condition described above, this |
|
|
|
4824 form is specified in [ANSI INCITS 61-1986]. |
|
|
|
4825 |
|
|
|
4826 The simple formula for converting degrees-minutes-seconds into |
|
|
|
4827 decimal degrees is: |
|
|
|
4828 |
|
|
|
4829 decimal = degrees + minutes/60 + seconds/3600. |
|
|
|
4830 |
|
|
|
4831 Format Definition: This property is defined by the following |
|
|
|
4832 notation: |
|
|
|
4833 |
|
|
|
4834 geo = "GEO" geoparam ":" geovalue CRLF |
|
|
|
4835 |
|
|
|
4836 geoparam = *(";" other-param) |
|
|
|
4837 |
|
|
|
4838 geovalue = float ";" float |
|
|
|
4839 ;Latitude and Longitude components |
|
|
|
4840 |
|
|
|
4841 Example: The following is an example of this property: |
|
|
|
4842 |
|
|
|
4843 GEO:37.386013;-122.082932 |
|
|
|
4844 |
|
|
|
4845 3.8.1.7. Location |
|
|
|
4846 |
|
|
|
4847 Property Name: LOCATION |
|
|
|
4848 |
|
|
|
4849 Purpose: This property defines the intended venue for the activity |
|
|
|
4850 defined by a calendar component. |
|
|
|
4851 |
|
|
|
4852 Value Type: TEXT |
|
|
|
4853 |
|
|
|
4854 Property Parameters: IANA, non-standard, alternate text |
|
|
|
4855 representation, and language property parameters can be specified |
|
|
|
4856 on this property. |
|
|
|
4857 |
|
|
|
4858 Conformance: This property can be specified in "VEVENT" or "VTODO" |
|
|
|
4859 calendar component. |
|
|
|
4860 |
|
|
|
4861 Description: Specific venues such as conference or meeting rooms may |
|
|
|
4862 be explicitly specified using this property. An alternate |
|
|
|
4863 representation may be specified that is a URI that points to |
|
|
|
4864 directory information with more structured specification of the |
|
|
|
4865 location. For example, the alternate representation may specify |
|
|
|
4866 either an LDAP URL [RFC4516] pointing to an LDAP server entry or a |
|
|
|
4867 CID URL [RFC2392] pointing to a MIME body part containing a |
|
|
|
4868 Virtual-Information Card (vCard) [RFC2426] for the location. |
|
|
|
4869 |
|
|
|
4870 |
|
|
|
4871 |
|
|
|
4872 |
|
|
|
4873 |
|
|
|
4874 Desruisseaux Standards Track [Page 87] |
|
|
|
i 4875 |
|
|
|
Err bitreich.org 70 |
|
|
|
4876 RFC 5545 iCalendar September 2009 |
|
|
|
4877 |
|
|
|
4878 |
|
|
|
4879 Format Definition: This property is defined by the following |
|
|
|
4880 notation: |
|
|
|
4881 |
|
|
|
4882 location = "LOCATION" locparam ":" text CRLF |
|
|
|
4883 |
|
|
|
4884 locparam = *( |
|
|
|
4885 ; |
|
|
|
4886 ; The following are OPTIONAL, |
|
|
|
4887 ; but MUST NOT occur more than once. |
|
|
|
4888 ; |
|
|
|
4889 (";" altrepparam) / (";" languageparam) / |
|
|
|
4890 ; |
|
|
|
4891 ; The following is OPTIONAL, |
|
|
|
4892 ; and MAY occur more than once. |
|
|
|
4893 ; |
|
|
|
4894 (";" other-param) |
|
|
|
4895 ; |
|
|
|
4896 ) |
|
|
|
4897 |
|
|
|
4898 Example: The following are some examples of this property: |
|
|
|
4899 |
|
|
|
4900 LOCATION:Conference Room - F123\, Bldg. 002 |
|
|
|
4901 |
|
|
|
4902 LOCATION;ALTREP="http://xyzcorp.com/conf-rooms/f123.vcf": |
|
|
|
4903 Conference Room - F123\, Bldg. 002 |
|
|
|
4904 |
|
|
|
4905 3.8.1.8. Percent Complete |
|
|
|
4906 |
|
|
|
4907 Property Name: PERCENT-COMPLETE |
|
|
|
4908 |
|
|
|
4909 Purpose: This property is used by an assignee or delegatee of a |
|
|
|
4910 to-do to convey the percent completion of a to-do to the |
|
|
|
4911 "Organizer". |
|
|
|
4912 |
|
|
|
4913 Value Type: INTEGER |
|
|
|
4914 |
|
|
|
4915 Property Parameters: IANA and non-standard property parameters can |
|
|
|
4916 be specified on this property. |
|
|
|
4917 |
|
|
|
4918 Conformance: This property can be specified once in a "VTODO" |
|
|
|
4919 calendar component. |
|
|
|
4920 |
|
|
|
4921 Description: The property value is a positive integer between 0 and |
|
|
|
4922 100. A value of "0" indicates the to-do has not yet been started. |
|
|
|
4923 A value of "100" indicates that the to-do has been completed. |
|
|
|
4924 Integer values in between indicate the percent partially complete. |
|
|
|
4925 |
|
|
|
4926 |
|
|
|
4927 |
|
|
|
4928 |
|
|
|
4929 |
|
|
|
4930 Desruisseaux Standards Track [Page 88] |
|
|
|
i 4931 |
|
|
|
Err bitreich.org 70 |
|
|
|
4932 RFC 5545 iCalendar September 2009 |
|
|
|
4933 |
|
|
|
4934 |
|
|
|
4935 When a to-do is assigned to multiple individuals, the property |
|
|
|
4936 value indicates the percent complete for that portion of the to-do |
|
|
|
4937 assigned to the assignee or delegatee. For example, if a to-do is |
|
|
|
4938 assigned to both individuals "A" and "B". A reply from "A" with a |
|
|
|
4939 percent complete of "70" indicates that "A" has completed 70% of |
|
|
|
4940 the to-do assigned to them. A reply from "B" with a percent |
|
|
|
4941 complete of "50" indicates "B" has completed 50% of the to-do |
|
|
|
4942 assigned to them. |
|
|
|
4943 |
|
|
|
4944 Format Definition: This property is defined by the following |
|
|
|
4945 notation: |
|
|
|
4946 |
|
|
|
4947 percent = "PERCENT-COMPLETE" pctparam ":" integer CRLF |
|
|
|
4948 |
|
|
|
4949 pctparam = *(";" other-param) |
|
|
|
4950 |
|
|
|
4951 Example: The following is an example of this property to show 39% |
|
|
|
4952 completion: |
|
|
|
4953 |
|
|
|
4954 PERCENT-COMPLETE:39 |
|
|
|
4955 |
|
|
|
4956 3.8.1.9. Priority |
|
|
|
4957 |
|
|
|
4958 Property Name: PRIORITY |
|
|
|
4959 |
|
|
|
4960 Purpose: This property defines the relative priority for a calendar |
|
|
|
4961 component. |
|
|
|
4962 |
|
|
|
4963 Value Type: INTEGER |
|
|
|
4964 |
|
|
|
4965 Property Parameters: IANA and non-standard property parameters can |
|
|
|
4966 be specified on this property. |
|
|
|
4967 |
|
|
|
4968 Conformance: This property can be specified in "VEVENT" and "VTODO" |
|
|
|
4969 calendar components. |
|
|
|
4970 |
|
|
|
4971 Description: This priority is specified as an integer in the range 0 |
|
|
|
4972 to 9. A value of 0 specifies an undefined priority. A value of 1 |
|
|
|
4973 is the highest priority. A value of 2 is the second highest |
|
|
|
4974 priority. Subsequent numbers specify a decreasing ordinal |
|
|
|
4975 priority. A value of 9 is the lowest priority. |
|
|
|
4976 |
|
|
|
4977 A CUA with a three-level priority scheme of "HIGH", "MEDIUM", and |
|
|
|
4978 "LOW" is mapped into this property such that a property value in |
|
|
|
4979 the range of 1 to 4 specifies "HIGH" priority. A value of 5 is |
|
|
|
4980 the normal or "MEDIUM" priority. A value in the range of 6 to 9 |
|
|
|
4981 is "LOW" priority. |
|
|
|
4982 |
|
|
|
4983 |
|
|
|
4984 |
|
|
|
4985 |
|
|
|
4986 Desruisseaux Standards Track [Page 89] |
|
|
|
i 4987 |
|
|
|
Err bitreich.org 70 |
|
|
|
4988 RFC 5545 iCalendar September 2009 |
|
|
|
4989 |
|
|
|
4990 |
|
|
|
4991 A CUA with a priority schema of "A1", "A2", "A3", "B1", "B2", ..., |
|
|
|
4992 "C3" is mapped into this property such that a property value of 1 |
|
|
|
4993 specifies "A1", a property value of 2 specifies "A2", a property |
|
|
|
4994 value of 3 specifies "A3", and so forth up to a property value of |
|
|
|
4995 9 specifies "C3". |
|
|
|
4996 |
|
|
|
4997 Other integer values are reserved for future use. |
|
|
|
4998 |
|
|
|
4999 Within a "VEVENT" calendar component, this property specifies a |
|
|
|
5000 priority for the event. This property may be useful when more |
|
|
|
5001 than one event is scheduled for a given time period. |
|
|
|
5002 |
|
|
|
5003 Within a "VTODO" calendar component, this property specified a |
|
|
|
5004 priority for the to-do. This property is useful in prioritizing |
|
|
|
5005 multiple action items for a given time period. |
|
|
|
5006 |
|
|
|
5007 Format Definition: This property is defined by the following |
|
|
|
5008 notation: |
|
|
|
5009 |
|
|
|
5010 priority = "PRIORITY" prioparam ":" priovalue CRLF |
|
|
|
5011 ;Default is zero (i.e., undefined). |
|
|
|
5012 |
|
|
|
5013 prioparam = *(";" other-param) |
|
|
|
5014 |
|
|
|
5015 priovalue = integer ;Must be in the range [0..9] |
|
|
|
5016 ; All other values are reserved for future use. |
|
|
|
5017 |
|
|
|
5018 Example: The following is an example of a property with the highest |
|
|
|
5019 priority: |
|
|
|
5020 |
|
|
|
5021 PRIORITY:1 |
|
|
|
5022 |
|
|
|
5023 The following is an example of a property with a next highest |
|
|
|
5024 priority: |
|
|
|
5025 |
|
|
|
5026 PRIORITY:2 |
|
|
|
5027 |
|
|
|
5028 The following is an example of a property with no priority. This |
|
|
|
5029 is equivalent to not specifying the "PRIORITY" property: |
|
|
|
5030 |
|
|
|
5031 PRIORITY:0 |
|
|
|
5032 |
|
|
|
5033 |
|
|
|
5034 |
|
|
|
5035 |
|
|
|
5036 |
|
|
|
5037 |
|
|
|
5038 |
|
|
|
5039 |
|
|
|
5040 |
|
|
|
5041 |
|
|
|
5042 Desruisseaux Standards Track [Page 90] |
|
|
|
i 5043 |
|
|
|
Err bitreich.org 70 |
|
|
|
5044 RFC 5545 iCalendar September 2009 |
|
|
|
5045 |
|
|
|
5046 |
|
|
|
5047 3.8.1.10. Resources |
|
|
|
5048 |
|
|
|
5049 Property Name: RESOURCES |
|
|
|
5050 |
|
|
|
5051 Purpose: This property defines the equipment or resources |
|
|
|
5052 anticipated for an activity specified by a calendar component. |
|
|
|
5053 |
|
|
|
5054 Value Type: TEXT |
|
|
|
5055 |
|
|
|
5056 Property Parameters: IANA, non-standard, alternate text |
|
|
|
5057 representation, and language property parameters can be specified |
|
|
|
5058 on this property. |
|
|
|
5059 |
|
|
|
5060 Conformance: This property can be specified once in "VEVENT" or |
|
|
|
5061 "VTODO" calendar component. |
|
|
|
5062 |
|
|
|
5063 Description: The property value is an arbitrary text. More than one |
|
|
|
5064 resource can be specified as a COMMA-separated list of resources. |
|
|
|
5065 |
|
|
|
5066 Format Definition: This property is defined by the following |
|
|
|
5067 notation: |
|
|
|
5068 |
|
|
|
5069 resources = "RESOURCES" resrcparam ":" text *("," text) CRLF |
|
|
|
5070 |
|
|
|
5071 resrcparam = *( |
|
|
|
5072 ; |
|
|
|
5073 ; The following are OPTIONAL, |
|
|
|
5074 ; but MUST NOT occur more than once. |
|
|
|
5075 ; |
|
|
|
5076 (";" altrepparam) / (";" languageparam) / |
|
|
|
5077 ; |
|
|
|
5078 ; The following is OPTIONAL, |
|
|
|
5079 ; and MAY occur more than once. |
|
|
|
5080 ; |
|
|
|
5081 (";" other-param) |
|
|
|
5082 ; |
|
|
|
5083 ) |
|
|
|
5084 |
|
|
|
5085 Example: The following is an example of this property: |
|
|
|
5086 |
|
|
|
5087 RESOURCES:EASEL,PROJECTOR,VCR |
|
|
|
5088 |
|
|
|
5089 RESOURCES;LANGUAGE=fr:Nettoyeur haute pression |
|
|
|
5090 |
|
|
|
5091 |
|
|
|
5092 |
|
|
|
5093 |
|
|
|
5094 |
|
|
|
5095 |
|
|
|
5096 |
|
|
|
5097 |
|
|
|
5098 Desruisseaux Standards Track [Page 91] |
|
|
|
i 5099 |
|
|
|
Err bitreich.org 70 |
|
|
|
5100 RFC 5545 iCalendar September 2009 |
|
|
|
5101 |
|
|
|
5102 |
|
|
|
5103 3.8.1.11. Status |
|
|
|
5104 |
|
|
|
5105 Property Name: STATUS |
|
|
|
5106 |
|
|
|
5107 Purpose: This property defines the overall status or confirmation |
|
|
|
5108 for the calendar component. |
|
|
|
5109 |
|
|
|
5110 Value Type: TEXT |
|
|
|
5111 |
|
|
|
5112 Property Parameters: IANA and non-standard property parameters can |
|
|
|
5113 be specified on this property. |
|
|
|
5114 |
|
|
|
5115 Conformance: This property can be specified once in "VEVENT", |
|
|
|
5116 "VTODO", or "VJOURNAL" calendar components. |
|
|
|
5117 |
|
|
|
5118 Description: In a group-scheduled calendar component, the property |
|
|
|
5119 is used by the "Organizer" to provide a confirmation of the event |
|
|
|
5120 to the "Attendees". For example in a "VEVENT" calendar component, |
|
|
|
5121 the "Organizer" can indicate that a meeting is tentative, |
|
|
|
5122 confirmed, or cancelled. In a "VTODO" calendar component, the |
|
|
|
5123 "Organizer" can indicate that an action item needs action, is |
|
|
|
5124 completed, is in process or being worked on, or has been |
|
|
|
5125 cancelled. In a "VJOURNAL" calendar component, the "Organizer" |
|
|
|
5126 can indicate that a journal entry is draft, final, or has been |
|
|
|
5127 cancelled or removed. |
|
|
|
5128 |
|
|
|
5129 Format Definition: This property is defined by the following |
|
|
|
5130 notation: |
|
|
|
5131 |
|
|
|
5132 status = "STATUS" statparam ":" statvalue CRLF |
|
|
|
5133 |
|
|
|
5134 statparam = *(";" other-param) |
|
|
|
5135 |
|
|
|
5136 statvalue = (statvalue-event |
|
|
|
5137 / statvalue-todo |
|
|
|
5138 / statvalue-jour) |
|
|
|
5139 |
|
|
|
5140 statvalue-event = "TENTATIVE" ;Indicates event is tentative. |
|
|
|
5141 / "CONFIRMED" ;Indicates event is definite. |
|
|
|
5142 / "CANCELLED" ;Indicates event was cancelled. |
|
|
|
5143 ;Status values for a "VEVENT" |
|
|
|
5144 |
|
|
|
5145 statvalue-todo = "NEEDS-ACTION" ;Indicates to-do needs action. |
|
|
|
5146 / "COMPLETED" ;Indicates to-do completed. |
|
|
|
5147 / "IN-PROCESS" ;Indicates to-do in process of. |
|
|
|
5148 / "CANCELLED" ;Indicates to-do was cancelled. |
|
|
|
5149 ;Status values for "VTODO". |
|
|
|
5150 |
|
|
|
5151 |
|
|
|
5152 |
|
|
|
5153 |
|
|
|
5154 Desruisseaux Standards Track [Page 92] |
|
|
|
i 5155 |
|
|
|
Err bitreich.org 70 |
|
|
|
5156 RFC 5545 iCalendar September 2009 |
|
|
|
5157 |
|
|
|
5158 |
|
|
|
5159 statvalue-jour = "DRAFT" ;Indicates journal is draft. |
|
|
|
5160 / "FINAL" ;Indicates journal is final. |
|
|
|
5161 / "CANCELLED" ;Indicates journal is removed. |
|
|
|
5162 ;Status values for "VJOURNAL". |
|
|
|
5163 |
|
|
|
5164 Example: The following is an example of this property for a "VEVENT" |
|
|
|
5165 calendar component: |
|
|
|
5166 |
|
|
|
5167 STATUS:TENTATIVE |
|
|
|
5168 |
|
|
|
5169 The following is an example of this property for a "VTODO" |
|
|
|
5170 calendar component: |
|
|
|
5171 |
|
|
|
5172 STATUS:NEEDS-ACTION |
|
|
|
5173 |
|
|
|
5174 The following is an example of this property for a "VJOURNAL" |
|
|
|
5175 calendar component: |
|
|
|
5176 |
|
|
|
5177 STATUS:DRAFT |
|
|
|
5178 |
|
|
|
5179 3.8.1.12. Summary |
|
|
|
5180 |
|
|
|
5181 Property Name: SUMMARY |
|
|
|
5182 |
|
|
|
5183 Purpose: This property defines a short summary or subject for the |
|
|
|
5184 calendar component. |
|
|
|
5185 |
|
|
|
5186 Value Type: TEXT |
|
|
|
5187 |
|
|
|
5188 Property Parameters: IANA, non-standard, alternate text |
|
|
|
5189 representation, and language property parameters can be specified |
|
|
|
5190 on this property. |
|
|
|
5191 |
|
|
|
5192 Conformance: The property can be specified in "VEVENT", "VTODO", |
|
|
|
5193 "VJOURNAL", or "VALARM" calendar components. |
|
|
|
5194 |
|
|
|
5195 Description: This property is used in the "VEVENT", "VTODO", and |
|
|
|
5196 "VJOURNAL" calendar components to capture a short, one-line |
|
|
|
5197 summary about the activity or journal entry. |
|
|
|
5198 |
|
|
|
5199 This property is used in the "VALARM" calendar component to |
|
|
|
5200 capture the subject of an EMAIL category of alarm. |
|
|
|
5201 |
|
|
|
5202 Format Definition: This property is defined by the following |
|
|
|
5203 notation: |
|
|
|
5204 |
|
|
|
5205 |
|
|
|
5206 |
|
|
|
5207 |
|
|
|
5208 |
|
|
|
5209 |
|
|
|
5210 Desruisseaux Standards Track [Page 93] |
|
|
|
i 5211 |
|
|
|
Err bitreich.org 70 |
|
|
|
5212 RFC 5545 iCalendar September 2009 |
|
|
|
5213 |
|
|
|
5214 |
|
|
|
5215 summary = "SUMMARY" summparam ":" text CRLF |
|
|
|
5216 |
|
|
|
5217 summparam = *( |
|
|
|
5218 ; |
|
|
|
5219 ; The following are OPTIONAL, |
|
|
|
5220 ; but MUST NOT occur more than once. |
|
|
|
5221 ; |
|
|
|
5222 (";" altrepparam) / (";" languageparam) / |
|
|
|
5223 ; |
|
|
|
5224 ; The following is OPTIONAL, |
|
|
|
5225 ; and MAY occur more than once. |
|
|
|
5226 ; |
|
|
|
5227 (";" other-param) |
|
|
|
5228 ; |
|
|
|
5229 ) |
|
|
|
5230 |
|
|
|
5231 Example: The following is an example of this property: |
|
|
|
5232 |
|
|
|
5233 SUMMARY:Department Party |
|
|
|
5234 |
|
|
|
5235 3.8.2. Date and Time Component Properties |
|
|
|
5236 |
|
|
|
5237 The following properties specify date and time related information in |
|
|
|
5238 calendar components. |
|
|
|
5239 |
|
|
|
5240 3.8.2.1. Date-Time Completed |
|
|
|
5241 |
|
|
|
5242 Property Name: COMPLETED |
|
|
|
5243 |
|
|
|
5244 Purpose: This property defines the date and time that a to-do was |
|
|
|
5245 actually completed. |
|
|
|
5246 |
|
|
|
5247 Value Type: DATE-TIME |
|
|
|
5248 |
|
|
|
5249 Property Parameters: IANA and non-standard property parameters can |
|
|
|
5250 be specified on this property. |
|
|
|
5251 |
|
|
|
5252 Conformance: The property can be specified in a "VTODO" calendar |
|
|
|
5253 component. The value MUST be specified as a date with UTC time. |
|
|
|
5254 |
|
|
|
5255 Description: This property defines the date and time that a to-do |
|
|
|
5256 was actually completed. |
|
|
|
5257 |
|
|
|
5258 Format Definition: This property is defined by the following |
|
|
|
5259 notation: |
|
|
|
5260 |
|
|
|
5261 |
|
|
|
5262 |
|
|
|
5263 |
|
|
|
5264 |
|
|
|
5265 |
|
|
|
5266 Desruisseaux Standards Track [Page 94] |
|
|
|
i 5267 |
|
|
|
Err bitreich.org 70 |
|
|
|
5268 RFC 5545 iCalendar September 2009 |
|
|
|
5269 |
|
|
|
5270 |
|
|
|
5271 completed = "COMPLETED" compparam ":" date-time CRLF |
|
|
|
5272 |
|
|
|
5273 compparam = *(";" other-param) |
|
|
|
5274 |
|
|
|
5275 Example: The following is an example of this property: |
|
|
|
5276 |
|
|
|
5277 COMPLETED:19960401T150000Z |
|
|
|
5278 |
|
|
|
5279 3.8.2.2. Date-Time End |
|
|
|
5280 |
|
|
|
5281 Property Name: DTEND |
|
|
|
5282 |
|
|
|
5283 Purpose: This property specifies the date and time that a calendar |
|
|
|
5284 component ends. |
|
|
|
5285 |
|
|
|
5286 Value Type: The default value type is DATE-TIME. The value type can |
|
|
|
5287 be set to a DATE value type. |
|
|
|
5288 |
|
|
|
5289 Property Parameters: IANA, non-standard, value data type, and time |
|
|
|
5290 zone identifier property parameters can be specified on this |
|
|
|
5291 property. |
|
|
|
5292 |
|
|
|
5293 Conformance: This property can be specified in "VEVENT" or |
|
|
|
5294 "VFREEBUSY" calendar components. |
|
|
|
5295 |
|
|
|
5296 Description: Within the "VEVENT" calendar component, this property |
|
|
|
5297 defines the date and time by which the event ends. The value type |
|
|
|
5298 of this property MUST be the same as the "DTSTART" property, and |
|
|
|
5299 its value MUST be later in time than the value of the "DTSTART" |
|
|
|
5300 property. Furthermore, this property MUST be specified as a date |
|
|
|
5301 with local time if and only if the "DTSTART" property is also |
|
|
|
5302 specified as a date with local time. |
|
|
|
5303 |
|
|
|
5304 Within the "VFREEBUSY" calendar component, this property defines |
|
|
|
5305 the end date and time for the free or busy time information. The |
|
|
|
5306 time MUST be specified in the UTC time format. The value MUST be |
|
|
|
5307 later in time than the value of the "DTSTART" property. |
|
|
|
5308 |
|
|
|
5309 Format Definition: This property is defined by the following |
|
|
|
5310 notation: |
|
|
|
5311 |
|
|
|
5312 |
|
|
|
5313 |
|
|
|
5314 |
|
|
|
5315 |
|
|
|
5316 |
|
|
|
5317 |
|
|
|
5318 |
|
|
|
5319 |
|
|
|
5320 |
|
|
|
5321 |
|
|
|
5322 Desruisseaux Standards Track [Page 95] |
|
|
|
i 5323 |
|
|
|
Err bitreich.org 70 |
|
|
|
5324 RFC 5545 iCalendar September 2009 |
|
|
|
5325 |
|
|
|
5326 |
|
|
|
5327 dtend = "DTEND" dtendparam ":" dtendval CRLF |
|
|
|
5328 |
|
|
|
5329 dtendparam = *( |
|
|
|
5330 ; |
|
|
|
5331 ; The following are OPTIONAL, |
|
|
|
5332 ; but MUST NOT occur more than once. |
|
|
|
5333 ; |
|
|
|
5334 (";" "VALUE" "=" ("DATE-TIME" / "DATE")) / |
|
|
|
5335 (";" tzidparam) / |
|
|
|
5336 ; |
|
|
|
5337 ; The following is OPTIONAL, |
|
|
|
5338 ; and MAY occur more than once. |
|
|
|
5339 ; |
|
|
|
5340 (";" other-param) |
|
|
|
5341 ; |
|
|
|
5342 ) |
|
|
|
5343 |
|
|
|
5344 dtendval = date-time / date |
|
|
|
5345 ;Value MUST match value type |
|
|
|
5346 |
|
|
|
5347 Example: The following is an example of this property: |
|
|
|
5348 |
|
|
|
5349 DTEND:19960401T150000Z |
|
|
|
5350 |
|
|
|
5351 DTEND;VALUE=DATE:19980704 |
|
|
|
5352 |
|
|
|
5353 3.8.2.3. Date-Time Due |
|
|
|
5354 |
|
|
|
5355 Property Name: DUE |
|
|
|
5356 |
|
|
|
5357 Purpose: This property defines the date and time that a to-do is |
|
|
|
5358 expected to be completed. |
|
|
|
5359 |
|
|
|
5360 Value Type: The default value type is DATE-TIME. The value type can |
|
|
|
5361 be set to a DATE value type. |
|
|
|
5362 |
|
|
|
5363 Property Parameters: IANA, non-standard, value data type, and time |
|
|
|
5364 zone identifier property parameters can be specified on this |
|
|
|
5365 property. |
|
|
|
5366 |
|
|
|
5367 Conformance: The property can be specified once in a "VTODO" |
|
|
|
5368 calendar component. |
|
|
|
5369 |
|
|
|
5370 Description: This property defines the date and time before which a |
|
|
|
5371 to-do is expected to be completed. For cases where this property |
|
|
|
5372 is specified in a "VTODO" calendar component that also specifies a |
|
|
|
5373 "DTSTART" property, the value type of this property MUST be the |
|
|
|
5374 same as the "DTSTART" property, and the value of this property |
|
|
|
5375 |
|
|
|
5376 |
|
|
|
5377 |
|
|
|
5378 Desruisseaux Standards Track [Page 96] |
|
|
|
i 5379 |
|
|
|
Err bitreich.org 70 |
|
|
|
5380 RFC 5545 iCalendar September 2009 |
|
|
|
5381 |
|
|
|
5382 |
|
|
|
5383 MUST be later in time than the value of the "DTSTART" property. |
|
|
|
5384 Furthermore, this property MUST be specified as a date with local |
|
|
|
5385 time if and only if the "DTSTART" property is also specified as a |
|
|
|
5386 date with local time. |
|
|
|
5387 |
|
|
|
5388 Format Definition: This property is defined by the following |
|
|
|
5389 notation: |
|
|
|
5390 |
|
|
|
5391 due = "DUE" dueparam ":" dueval CRLF |
|
|
|
5392 |
|
|
|
5393 dueparam = *( |
|
|
|
5394 ; |
|
|
|
5395 ; The following are OPTIONAL, |
|
|
|
5396 ; but MUST NOT occur more than once. |
|
|
|
5397 ; |
|
|
|
5398 (";" "VALUE" "=" ("DATE-TIME" / "DATE")) / |
|
|
|
5399 (";" tzidparam) / |
|
|
|
5400 ; |
|
|
|
5401 ; The following is OPTIONAL, |
|
|
|
5402 ; and MAY occur more than once. |
|
|
|
5403 ; |
|
|
|
5404 (";" other-param) |
|
|
|
5405 ; |
|
|
|
5406 ) |
|
|
|
5407 |
|
|
|
5408 dueval = date-time / date |
|
|
|
5409 ;Value MUST match value type |
|
|
|
5410 |
|
|
|
5411 Example: The following is an example of this property: |
|
|
|
5412 |
|
|
|
5413 DUE:19980430T000000Z |
|
|
|
5414 |
|
|
|
5415 3.8.2.4. Date-Time Start |
|
|
|
5416 |
|
|
|
5417 Property Name: DTSTART |
|
|
|
5418 |
|
|
|
5419 Purpose: This property specifies when the calendar component begins. |
|
|
|
5420 |
|
|
|
5421 Value Type: The default value type is DATE-TIME. The time value |
|
|
|
5422 MUST be one of the forms defined for the DATE-TIME value type. |
|
|
|
5423 The value type can be set to a DATE value type. |
|
|
|
5424 |
|
|
|
5425 Property Parameters: IANA, non-standard, value data type, and time |
|
|
|
5426 zone identifier property parameters can be specified on this |
|
|
|
5427 property. |
|
|
|
5428 |
|
|
|
5429 Conformance: This property can be specified once in the "VEVENT", |
|
|
|
5430 "VTODO", or "VFREEBUSY" calendar components as well as in the |
|
|
|
5431 |
|
|
|
5432 |
|
|
|
5433 |
|
|
|
5434 Desruisseaux Standards Track [Page 97] |
|
|
|
i 5435 |
|
|
|
Err bitreich.org 70 |
|
|
|
5436 RFC 5545 iCalendar September 2009 |
|
|
|
5437 |
|
|
|
5438 |
|
|
|
5439 "STANDARD" and "DAYLIGHT" sub-components. This property is |
|
|
|
5440 REQUIRED in all types of recurring calendar components that |
|
|
|
5441 specify the "RRULE" property. This property is also REQUIRED in |
|
|
|
5442 "VEVENT" calendar components contained in iCalendar objects that |
|
|
|
5443 don't specify the "METHOD" property. |
|
|
|
5444 |
|
|
|
5445 Description: Within the "VEVENT" calendar component, this property |
|
|
|
5446 defines the start date and time for the event. |
|
|
|
5447 |
|
|
|
5448 Within the "VFREEBUSY" calendar component, this property defines |
|
|
|
5449 the start date and time for the free or busy time information. |
|
|
|
5450 The time MUST be specified in UTC time. |
|
|
|
5451 |
|
|
|
5452 Within the "STANDARD" and "DAYLIGHT" sub-components, this property |
|
|
|
5453 defines the effective start date and time for a time zone |
|
|
|
5454 specification. This property is REQUIRED within each "STANDARD" |
|
|
|
5455 and "DAYLIGHT" sub-components included in "VTIMEZONE" calendar |
|
|
|
5456 components and MUST be specified as a date with local time without |
|
|
|
5457 the "TZID" property parameter. |
|
|
|
5458 |
|
|
|
5459 Format Definition: This property is defined by the following |
|
|
|
5460 notation: |
|
|
|
5461 |
|
|
|
5462 dtstart = "DTSTART" dtstparam ":" dtstval CRLF |
|
|
|
5463 |
|
|
|
5464 dtstparam = *( |
|
|
|
5465 ; |
|
|
|
5466 ; The following are OPTIONAL, |
|
|
|
5467 ; but MUST NOT occur more than once. |
|
|
|
5468 ; |
|
|
|
5469 (";" "VALUE" "=" ("DATE-TIME" / "DATE")) / |
|
|
|
5470 (";" tzidparam) / |
|
|
|
5471 ; |
|
|
|
5472 ; The following is OPTIONAL, |
|
|
|
5473 ; and MAY occur more than once. |
|
|
|
5474 ; |
|
|
|
5475 (";" other-param) |
|
|
|
5476 ; |
|
|
|
5477 ) |
|
|
|
5478 |
|
|
|
5479 dtstval = date-time / date |
|
|
|
5480 ;Value MUST match value type |
|
|
|
5481 |
|
|
|
5482 Example: The following is an example of this property: |
|
|
|
5483 |
|
|
|
5484 DTSTART:19980118T073000Z |
|
|
|
5485 |
|
|
|
5486 |
|
|
|
5487 |
|
|
|
5488 |
|
|
|
5489 |
|
|
|
5490 Desruisseaux Standards Track [Page 98] |
|
|
|
i 5491 |
|
|
|
Err bitreich.org 70 |
|
|
|
5492 RFC 5545 iCalendar September 2009 |
|
|
|
5493 |
|
|
|
5494 |
|
|
|
5495 3.8.2.5. Duration |
|
|
|
5496 |
|
|
|
5497 Property Name: DURATION |
|
|
|
5498 |
|
|
|
5499 Purpose: This property specifies a positive duration of time. |
|
|
|
5500 |
|
|
|
5501 Value Type: DURATION |
|
|
|
5502 |
|
|
|
5503 Property Parameters: IANA and non-standard property parameters can |
|
|
|
5504 be specified on this property. |
|
|
|
5505 |
|
|
|
5506 Conformance: This property can be specified in "VEVENT", "VTODO", or |
|
|
|
5507 "VALARM" calendar components. |
|
|
|
5508 |
|
|
|
5509 Description: In a "VEVENT" calendar component the property may be |
|
|
|
5510 used to specify a duration of the event, instead of an explicit |
|
|
|
5511 end DATE-TIME. In a "VTODO" calendar component the property may |
|
|
|
5512 be used to specify a duration for the to-do, instead of an |
|
|
|
5513 explicit due DATE-TIME. In a "VALARM" calendar component the |
|
|
|
5514 property may be used to specify the delay period prior to |
|
|
|
5515 repeating an alarm. When the "DURATION" property relates to a |
|
|
|
5516 "DTSTART" property that is specified as a DATE value, then the |
|
|
|
5517 "DURATION" property MUST be specified as a "dur-day" or "dur-week" |
|
|
|
5518 value. |
|
|
|
5519 |
|
|
|
5520 Format Definition: This property is defined by the following |
|
|
|
5521 notation: |
|
|
|
5522 |
|
|
|
5523 duration = "DURATION" durparam ":" dur-value CRLF |
|
|
|
5524 ;consisting of a positive duration of time. |
|
|
|
5525 |
|
|
|
5526 durparam = *(";" other-param) |
|
|
|
5527 |
|
|
|
5528 Example: The following is an example of this property that specifies |
|
|
|
5529 an interval of time of one hour and zero minutes and zero seconds: |
|
|
|
5530 |
|
|
|
5531 DURATION:PT1H0M0S |
|
|
|
5532 |
|
|
|
5533 The following is an example of this property that specifies an |
|
|
|
5534 interval of time of 15 minutes. |
|
|
|
5535 |
|
|
|
5536 DURATION:PT15M |
|
|
|
5537 |
|
|
|
5538 |
|
|
|
5539 |
|
|
|
5540 |
|
|
|
5541 |
|
|
|
5542 |
|
|
|
5543 |
|
|
|
5544 |
|
|
|
5545 |
|
|
|
5546 Desruisseaux Standards Track [Page 99] |
|
|
|
i 5547 |
|
|
|
Err bitreich.org 70 |
|
|
|
5548 RFC 5545 iCalendar September 2009 |
|
|
|
5549 |
|
|
|
5550 |
|
|
|
5551 3.8.2.6. Free/Busy Time |
|
|
|
5552 |
|
|
|
5553 Property Name: FREEBUSY |
|
|
|
5554 |
|
|
|
5555 Purpose: This property defines one or more free or busy time |
|
|
|
5556 intervals. |
|
|
|
5557 |
|
|
|
5558 Value Type: PERIOD |
|
|
|
5559 |
|
|
|
5560 Property Parameters: IANA, non-standard, and free/busy time type |
|
|
|
5561 property parameters can be specified on this property. |
|
|
|
5562 |
|
|
|
5563 Conformance: The property can be specified in a "VFREEBUSY" calendar |
|
|
|
5564 component. |
|
|
|
5565 |
|
|
|
5566 Description: These time periods can be specified as either a start |
|
|
|
5567 and end DATE-TIME or a start DATE-TIME and DURATION. The date and |
|
|
|
5568 time MUST be a UTC time format. |
|
|
|
5569 |
|
|
|
5570 "FREEBUSY" properties within the "VFREEBUSY" calendar component |
|
|
|
5571 SHOULD be sorted in ascending order, based on start time and then |
|
|
|
5572 end time, with the earliest periods first. |
|
|
|
5573 |
|
|
|
5574 The "FREEBUSY" property can specify more than one value, separated |
|
|
|
5575 by the COMMA character. In such cases, the "FREEBUSY" property |
|
|
|
5576 values MUST all be of the same "FBTYPE" property parameter type |
|
|
|
5577 (e.g., all values of a particular "FBTYPE" listed together in a |
|
|
|
5578 single property). |
|
|
|
5579 |
|
|
|
5580 Format Definition: This property is defined by the following |
|
|
|
5581 notation: |
|
|
|
5582 |
|
|
|
5583 freebusy = "FREEBUSY" fbparam ":" fbvalue CRLF |
|
|
|
5584 |
|
|
|
5585 fbparam = *( |
|
|
|
5586 ; |
|
|
|
5587 ; The following is OPTIONAL, |
|
|
|
5588 ; but MUST NOT occur more than once. |
|
|
|
5589 ; |
|
|
|
5590 (";" fbtypeparam) / |
|
|
|
5591 ; |
|
|
|
5592 ; The following is OPTIONAL, |
|
|
|
5593 ; and MAY occur more than once. |
|
|
|
5594 ; |
|
|
|
5595 (";" other-param) |
|
|
|
5596 ; |
|
|
|
5597 ) |
|
|
|
5598 |
|
|
|
5599 |
|
|
|
5600 |
|
|
|
5601 |
|
|
|
5602 Desruisseaux Standards Track [Page 100] |
|
|
|
i 5603 |
|
|
|
Err bitreich.org 70 |
|
|
|
5604 RFC 5545 iCalendar September 2009 |
|
|
|
5605 |
|
|
|
5606 |
|
|
|
5607 fbvalue = period *("," period) |
|
|
|
5608 ;Time value MUST be in the UTC time format. |
|
|
|
5609 |
|
|
|
5610 Example: The following are some examples of this property: |
|
|
|
5611 |
|
|
|
5612 FREEBUSY;FBTYPE=BUSY-UNAVAILABLE:19970308T160000Z/PT8H30M |
|
|
|
5613 |
|
|
|
5614 FREEBUSY;FBTYPE=FREE:19970308T160000Z/PT3H,19970308T200000Z/PT1H |
|
|
|
5615 |
|
|
|
5616 FREEBUSY;FBTYPE=FREE:19970308T160000Z/PT3H,19970308T200000Z/PT1H |
|
|
|
5617 ,19970308T230000Z/19970309T000000Z |
|
|
|
5618 |
|
|
|
5619 3.8.2.7. Time Transparency |
|
|
|
5620 |
|
|
|
5621 Property Name: TRANSP |
|
|
|
5622 |
|
|
|
5623 Purpose: This property defines whether or not an event is |
|
|
|
5624 transparent to busy time searches. |
|
|
|
5625 |
|
|
|
5626 Value Type: TEXT |
|
|
|
5627 |
|
|
|
5628 Property Parameters: IANA and non-standard property parameters can |
|
|
|
5629 be specified on this property. |
|
|
|
5630 |
|
|
|
5631 Conformance: This property can be specified once in a "VEVENT" |
|
|
|
5632 calendar component. |
|
|
|
5633 |
|
|
|
5634 Description: Time Transparency is the characteristic of an event |
|
|
|
5635 that determines whether it appears to consume time on a calendar. |
|
|
|
5636 Events that consume actual time for the individual or resource |
|
|
|
5637 associated with the calendar SHOULD be recorded as OPAQUE, |
|
|
|
5638 allowing them to be detected by free/busy time searches. Other |
|
|
|
5639 events, which do not take up the individual's (or resource's) time |
|
|
|
5640 SHOULD be recorded as TRANSPARENT, making them invisible to free/ |
|
|
|
5641 busy time searches. |
|
|
|
5642 |
|
|
|
5643 Format Definition: This property is defined by the following |
|
|
|
5644 notation: |
|
|
|
5645 |
|
|
|
5646 transp = "TRANSP" transparam ":" transvalue CRLF |
|
|
|
5647 |
|
|
|
5648 transparam = *(";" other-param) |
|
|
|
5649 |
|
|
|
5650 transvalue = "OPAQUE" |
|
|
|
5651 ;Blocks or opaque on busy time searches. |
|
|
|
5652 / "TRANSPARENT" |
|
|
|
5653 ;Transparent on busy time searches. |
|
|
|
5654 ;Default value is OPAQUE |
|
|
|
5655 |
|
|
|
5656 |
|
|
|
5657 |
|
|
|
5658 Desruisseaux Standards Track [Page 101] |
|
|
|
i 5659 |
|
|
|
Err bitreich.org 70 |
|
|
|
5660 RFC 5545 iCalendar September 2009 |
|
|
|
5661 |
|
|
|
5662 |
|
|
|
5663 Example: The following is an example of this property for an event |
|
|
|
5664 that is transparent or does not block on free/busy time searches: |
|
|
|
5665 |
|
|
|
5666 TRANSP:TRANSPARENT |
|
|
|
5667 |
|
|
|
5668 The following is an example of this property for an event that is |
|
|
|
5669 opaque or blocks on free/busy time searches: |
|
|
|
5670 |
|
|
|
5671 TRANSP:OPAQUE |
|
|
|
5672 |
|
|
|
5673 3.8.3. Time Zone Component Properties |
|
|
|
5674 |
|
|
|
5675 The following properties specify time zone information in calendar |
|
|
|
5676 components. |
|
|
|
5677 |
|
|
|
5678 3.8.3.1. Time Zone Identifier |
|
|
|
5679 |
|
|
|
5680 Property Name: TZID |
|
|
|
5681 |
|
|
|
5682 Purpose: This property specifies the text value that uniquely |
|
|
|
5683 identifies the "VTIMEZONE" calendar component in the scope of an |
|
|
|
5684 iCalendar object. |
|
|
|
5685 |
|
|
|
5686 Value Type: TEXT |
|
|
|
5687 |
|
|
|
5688 Property Parameters: IANA and non-standard property parameters can |
|
|
|
5689 be specified on this property. |
|
|
|
5690 |
|
|
|
5691 Conformance: This property MUST be specified in a "VTIMEZONE" |
|
|
|
5692 calendar component. |
|
|
|
5693 |
|
|
|
5694 Description: This is the label by which a time zone calendar |
|
|
|
5695 component is referenced by any iCalendar properties whose value |
|
|
|
5696 type is either DATE-TIME or TIME and not intended to specify a UTC |
|
|
|
5697 or a "floating" time. The presence of the SOLIDUS character as a |
|
|
|
5698 prefix, indicates that this "TZID" represents an unique ID in a |
|
|
|
5699 globally defined time zone registry (when such registry is |
|
|
|
5700 defined). |
|
|
|
5701 |
|
|
|
5702 Note: This document does not define a naming convention for |
|
|
|
5703 time zone identifiers. Implementers may want to use the naming |
|
|
|
5704 conventions defined in existing time zone specifications such |
|
|
|
5705 as the public-domain TZ database [TZDB]. The specification of |
|
|
|
5706 globally unique time zone identifiers is not addressed by this |
|
|
|
5707 document and is left for future study. |
|
|
|
5708 |
|
|
|
5709 |
|
|
|
5710 |
|
|
|
5711 |
|
|
|
5712 |
|
|
|
5713 |
|
|
|
5714 Desruisseaux Standards Track [Page 102] |
|
|
|
i 5715 |
|
|
|
Err bitreich.org 70 |
|
|
|
5716 RFC 5545 iCalendar September 2009 |
|
|
|
5717 |
|
|
|
5718 |
|
|
|
5719 Format Definition: This property is defined by the following |
|
|
|
5720 notation: |
|
|
|
5721 |
|
|
|
5722 tzid = "TZID" tzidpropparam ":" [tzidprefix] text CRLF |
|
|
|
5723 |
|
|
|
5724 tzidpropparam = *(";" other-param) |
|
|
|
5725 |
|
|
|
5726 ;tzidprefix = "/" |
|
|
|
5727 ; Defined previously. Just listed here for reader convenience. |
|
|
|
5728 |
|
|
|
5729 Example: The following are examples of non-globally unique time zone |
|
|
|
5730 identifiers: |
|
|
|
5731 |
|
|
|
5732 TZID:America/New_York |
|
|
|
5733 |
|
|
|
5734 TZID:America/Los_Angeles |
|
|
|
5735 |
|
|
|
5736 The following is an example of a fictitious globally unique time |
|
|
|
5737 zone identifier: |
|
|
|
5738 |
|
|
|
5739 TZID:/example.org/America/New_York |
|
|
|
5740 |
|
|
|
5741 3.8.3.2. Time Zone Name |
|
|
|
5742 |
|
|
|
5743 Property Name: TZNAME |
|
|
|
5744 |
|
|
|
5745 Purpose: This property specifies the customary designation for a |
|
|
|
5746 time zone description. |
|
|
|
5747 |
|
|
|
5748 Value Type: TEXT |
|
|
|
5749 |
|
|
|
5750 Property Parameters: IANA, non-standard, and language property |
|
|
|
5751 parameters can be specified on this property. |
|
|
|
5752 |
|
|
|
5753 Conformance: This property can be specified in "STANDARD" and |
|
|
|
5754 "DAYLIGHT" sub-components. |
|
|
|
5755 |
|
|
|
5756 Description: This property specifies a customary name that can be |
|
|
|
5757 used when displaying dates that occur during the observance |
|
|
|
5758 defined by the time zone sub-component. |
|
|
|
5759 |
|
|
|
5760 Format Definition: This property is defined by the following |
|
|
|
5761 notation: |
|
|
|
5762 |
|
|
|
5763 |
|
|
|
5764 |
|
|
|
5765 |
|
|
|
5766 |
|
|
|
5767 |
|
|
|
5768 |
|
|
|
5769 |
|
|
|
5770 Desruisseaux Standards Track [Page 103] |
|
|
|
i 5771 |
|
|
|
Err bitreich.org 70 |
|
|
|
5772 RFC 5545 iCalendar September 2009 |
|
|
|
5773 |
|
|
|
5774 |
|
|
|
5775 tzname = "TZNAME" tznparam ":" text CRLF |
|
|
|
5776 |
|
|
|
5777 tznparam = *( |
|
|
|
5778 ; |
|
|
|
5779 ; The following is OPTIONAL, |
|
|
|
5780 ; but MUST NOT occur more than once. |
|
|
|
5781 ; |
|
|
|
5782 (";" languageparam) / |
|
|
|
5783 ; |
|
|
|
5784 ; The following is OPTIONAL, |
|
|
|
5785 ; and MAY occur more than once. |
|
|
|
5786 ; |
|
|
|
5787 (";" other-param) |
|
|
|
5788 ; |
|
|
|
5789 ) |
|
|
|
5790 |
|
|
|
5791 Example: The following are examples of this property: |
|
|
|
5792 |
|
|
|
5793 TZNAME:EST |
|
|
|
5794 |
|
|
|
5795 TZNAME;LANGUAGE=fr-CA:HNE |
|
|
|
5796 |
|
|
|
5797 3.8.3.3. Time Zone Offset From |
|
|
|
5798 |
|
|
|
5799 Property Name: TZOFFSETFROM |
|
|
|
5800 |
|
|
|
5801 Purpose: This property specifies the offset that is in use prior to |
|
|
|
5802 this time zone observance. |
|
|
|
5803 |
|
|
|
5804 Value Type: UTC-OFFSET |
|
|
|
5805 |
|
|
|
5806 Property Parameters: IANA and non-standard property parameters can |
|
|
|
5807 be specified on this property. |
|
|
|
5808 |
|
|
|
5809 Conformance: This property MUST be specified in "STANDARD" and |
|
|
|
5810 "DAYLIGHT" sub-components. |
|
|
|
5811 |
|
|
|
5812 Description: This property specifies the offset that is in use prior |
|
|
|
5813 to this time observance. It is used to calculate the absolute |
|
|
|
5814 time at which the transition to a given observance takes place. |
|
|
|
5815 This property MUST only be specified in a "VTIMEZONE" calendar |
|
|
|
5816 component. A "VTIMEZONE" calendar component MUST include this |
|
|
|
5817 property. The property value is a signed numeric indicating the |
|
|
|
5818 number of hours and possibly minutes from UTC. Positive numbers |
|
|
|
5819 represent time zones east of the prime meridian, or ahead of UTC. |
|
|
|
5820 Negative numbers represent time zones west of the prime meridian, |
|
|
|
5821 or behind UTC. |
|
|
|
5822 |
|
|
|
5823 |
|
|
|
5824 |
|
|
|
5825 |
|
|
|
5826 Desruisseaux Standards Track [Page 104] |
|
|
|
i 5827 |
|
|
|
Err bitreich.org 70 |
|
|
|
5828 RFC 5545 iCalendar September 2009 |
|
|
|
5829 |
|
|
|
5830 |
|
|
|
5831 Format Definition: This property is defined by the following |
|
|
|
5832 notation: |
|
|
|
5833 |
|
|
|
5834 tzoffsetfrom = "TZOFFSETFROM" frmparam ":" utc-offset |
|
|
|
5835 CRLF |
|
|
|
5836 |
|
|
|
5837 frmparam = *(";" other-param) |
|
|
|
5838 |
|
|
|
5839 Example: The following are examples of this property: |
|
|
|
5840 |
|
|
|
5841 TZOFFSETFROM:-0500 |
|
|
|
5842 |
|
|
|
5843 TZOFFSETFROM:+1345 |
|
|
|
5844 |
|
|
|
5845 3.8.3.4. Time Zone Offset To |
|
|
|
5846 |
|
|
|
5847 Property Name: TZOFFSETTO |
|
|
|
5848 |
|
|
|
5849 Purpose: This property specifies the offset that is in use in this |
|
|
|
5850 time zone observance. |
|
|
|
5851 |
|
|
|
5852 Value Type: UTC-OFFSET |
|
|
|
5853 |
|
|
|
5854 Property Parameters: IANA and non-standard property parameters can |
|
|
|
5855 be specified on this property. |
|
|
|
5856 |
|
|
|
5857 Conformance: This property MUST be specified in "STANDARD" and |
|
|
|
5858 "DAYLIGHT" sub-components. |
|
|
|
5859 |
|
|
|
5860 Description: This property specifies the offset that is in use in |
|
|
|
5861 this time zone observance. It is used to calculate the absolute |
|
|
|
5862 time for the new observance. The property value is a signed |
|
|
|
5863 numeric indicating the number of hours and possibly minutes from |
|
|
|
5864 UTC. Positive numbers represent time zones east of the prime |
|
|
|
5865 meridian, or ahead of UTC. Negative numbers represent time zones |
|
|
|
5866 west of the prime meridian, or behind UTC. |
|
|
|
5867 |
|
|
|
5868 Format Definition: This property is defined by the following |
|
|
|
5869 notation: |
|
|
|
5870 |
|
|
|
5871 tzoffsetto = "TZOFFSETTO" toparam ":" utc-offset CRLF |
|
|
|
5872 |
|
|
|
5873 toparam = *(";" other-param) |
|
|
|
5874 |
|
|
|
5875 |
|
|
|
5876 |
|
|
|
5877 |
|
|
|
5878 |
|
|
|
5879 |
|
|
|
5880 |
|
|
|
5881 |
|
|
|
5882 Desruisseaux Standards Track [Page 105] |
|
|
|
i 5883 |
|
|
|
Err bitreich.org 70 |
|
|
|
5884 RFC 5545 iCalendar September 2009 |
|
|
|
5885 |
|
|
|
5886 |
|
|
|
5887 Example: The following are examples of this property: |
|
|
|
5888 |
|
|
|
5889 TZOFFSETTO:-0400 |
|
|
|
5890 |
|
|
|
5891 TZOFFSETTO:+1245 |
|
|
|
5892 |
|
|
|
5893 3.8.3.5. Time Zone URL |
|
|
|
5894 |
|
|
|
5895 Property Name: TZURL |
|
|
|
5896 |
|
|
|
5897 Purpose: This property provides a means for a "VTIMEZONE" component |
|
|
|
5898 to point to a network location that can be used to retrieve an up- |
|
|
|
5899 to-date version of itself. |
|
|
|
5900 |
|
|
|
5901 Value Type: URI |
|
|
|
5902 |
|
|
|
5903 Property Parameters: IANA and non-standard property parameters can |
|
|
|
5904 be specified on this property. |
|
|
|
5905 |
|
|
|
5906 Conformance: This property can be specified in a "VTIMEZONE" |
|
|
|
5907 calendar component. |
|
|
|
5908 |
|
|
|
5909 Description: This property provides a means for a "VTIMEZONE" |
|
|
|
5910 component to point to a network location that can be used to |
|
|
|
5911 retrieve an up-to-date version of itself. This provides a hook to |
|
|
|
5912 handle changes government bodies impose upon time zone |
|
|
|
5913 definitions. Retrieval of this resource results in an iCalendar |
|
|
|
5914 object containing a single "VTIMEZONE" component and a "METHOD" |
|
|
|
5915 property set to PUBLISH. |
|
|
|
5916 |
|
|
|
5917 Format Definition: This property is defined by the following |
|
|
|
5918 notation: |
|
|
|
5919 |
|
|
|
5920 tzurl = "TZURL" tzurlparam ":" uri CRLF |
|
|
|
5921 |
|
|
|
5922 tzurlparam = *(";" other-param) |
|
|
|
5923 |
|
|
|
5924 Example: The following is an example of this property: |
|
|
|
5925 |
|
|
|
5926 TZURL:http://timezones.example.org/tz/America-Los_Angeles.ics |
|
|
|
5927 |
|
|
|
5928 3.8.4. Relationship Component Properties |
|
|
|
5929 |
|
|
|
5930 The following properties specify relationship information in calendar |
|
|
|
5931 components. |
|
|
|
5932 |
|
|
|
5933 |
|
|
|
5934 |
|
|
|
5935 |
|
|
|
5936 |
|
|
|
5937 |
|
|
|
5938 Desruisseaux Standards Track [Page 106] |
|
|
|
i 5939 |
|
|
|
Err bitreich.org 70 |
|
|
|
5940 RFC 5545 iCalendar September 2009 |
|
|
|
5941 |
|
|
|
5942 |
|
|
|
5943 3.8.4.1. Attendee |
|
|
|
5944 |
|
|
|
5945 Property Name: ATTENDEE |
|
|
|
5946 |
|
|
|
5947 Purpose: This property defines an "Attendee" within a calendar |
|
|
|
5948 component. |
|
|
|
5949 |
|
|
|
5950 Value Type: CAL-ADDRESS |
|
|
|
5951 |
|
|
|
5952 Property Parameters: IANA, non-standard, language, calendar user |
|
|
|
5953 type, group or list membership, participation role, participation |
|
|
|
5954 status, RSVP expectation, delegatee, delegator, sent by, common |
|
|
|
5955 name, or directory entry reference property parameters can be |
|
|
|
5956 specified on this property. |
|
|
|
5957 |
|
|
|
5958 Conformance: This property MUST be specified in an iCalendar object |
|
|
|
5959 that specifies a group-scheduled calendar entity. This property |
|
|
|
5960 MUST NOT be specified in an iCalendar object when publishing the |
|
|
|
5961 calendar information (e.g., NOT in an iCalendar object that |
|
|
|
5962 specifies the publication of a calendar user's busy time, event, |
|
|
|
5963 to-do, or journal). This property is not specified in an |
|
|
|
5964 iCalendar object that specifies only a time zone definition or |
|
|
|
5965 that defines calendar components that are not group-scheduled |
|
|
|
5966 components, but are components only on a single user's calendar. |
|
|
|
5967 |
|
|
|
5968 Description: This property MUST only be specified within calendar |
|
|
|
5969 components to specify participants, non-participants, and the |
|
|
|
5970 chair of a group-scheduled calendar entity. The property is |
|
|
|
5971 specified within an "EMAIL" category of the "VALARM" calendar |
|
|
|
5972 component to specify an email address that is to receive the email |
|
|
|
5973 type of iCalendar alarm. |
|
|
|
5974 |
|
|
|
5975 The property parameter "CN" is for the common or displayable name |
|
|
|
5976 associated with the calendar address; "ROLE", for the intended |
|
|
|
5977 role that the attendee will have in the calendar component; |
|
|
|
5978 "PARTSTAT", for the status of the attendee's participation; |
|
|
|
5979 "RSVP", for indicating whether the favor of a reply is requested; |
|
|
|
5980 "CUTYPE", to indicate the type of calendar user; "MEMBER", to |
|
|
|
5981 indicate the groups that the attendee belongs to; "DELEGATED-TO", |
|
|
|
5982 to indicate the calendar users that the original request was |
|
|
|
5983 delegated to; and "DELEGATED-FROM", to indicate whom the request |
|
|
|
5984 was delegated from; "SENT-BY", to indicate whom is acting on |
|
|
|
5985 behalf of the "ATTENDEE"; and "DIR", to indicate the URI that |
|
|
|
5986 points to the directory information corresponding to the attendee. |
|
|
|
5987 These property parameters can be specified on an "ATTENDEE" |
|
|
|
5988 property in either a "VEVENT", "VTODO", or "VJOURNAL" calendar |
|
|
|
5989 component. They MUST NOT be specified in an "ATTENDEE" property |
|
|
|
5990 in a "VFREEBUSY" or "VALARM" calendar component. If the |
|
|
|
5991 |
|
|
|
5992 |
|
|
|
5993 |
|
|
|
5994 Desruisseaux Standards Track [Page 107] |
|
|
|
i 5995 |
|
|
|
Err bitreich.org 70 |
|
|
|
5996 RFC 5545 iCalendar September 2009 |
|
|
|
5997 |
|
|
|
5998 |
|
|
|
5999 "LANGUAGE" property parameter is specified, the identified |
|
|
|
6000 language applies to the "CN" parameter. |
|
|
|
6001 |
|
|
|
6002 A recipient delegated a request MUST inherit the "RSVP" and "ROLE" |
|
|
|
6003 values from the attendee that delegated the request to them. |
|
|
|
6004 |
|
|
|
6005 Multiple attendees can be specified by including multiple |
|
|
|
6006 "ATTENDEE" properties within the calendar component. |
|
|
|
6007 |
|
|
|
6008 Format Definition: This property is defined by the following |
|
|
|
6009 notation: |
|
|
|
6010 |
|
|
|
6011 attendee = "ATTENDEE" attparam ":" cal-address CRLF |
|
|
|
6012 |
|
|
|
6013 attparam = *( |
|
|
|
6014 ; |
|
|
|
6015 ; The following are OPTIONAL, |
|
|
|
6016 ; but MUST NOT occur more than once. |
|
|
|
6017 ; |
|
|
|
6018 (";" cutypeparam) / (";" memberparam) / |
|
|
|
6019 (";" roleparam) / (";" partstatparam) / |
|
|
|
6020 (";" rsvpparam) / (";" deltoparam) / |
|
|
|
6021 (";" delfromparam) / (";" sentbyparam) / |
|
|
|
6022 (";" cnparam) / (";" dirparam) / |
|
|
|
6023 (";" languageparam) / |
|
|
|
6024 ; |
|
|
|
6025 ; The following is OPTIONAL, |
|
|
|
6026 ; and MAY occur more than once. |
|
|
|
6027 ; |
|
|
|
6028 (";" other-param) |
|
|
|
6029 ; |
|
|
|
6030 ) |
|
|
|
6031 |
|
|
|
6032 Example: The following are examples of this property's use for a |
|
|
|
6033 to-do: |
|
|
|
6034 |
|
|
|
6035 ATTENDEE;MEMBER="mailto:DEV-GROUP@example.com": |
|
|
|
6036 mailto:joecool@example.com |
|
|
|
6037 ATTENDEE;DELEGATED-FROM="mailto:immud@example.com": |
|
|
|
6038 mailto:ildoit@example.com |
|
|
|
6039 |
|
|
|
6040 |
|
|
|
6041 |
|
|
|
6042 |
|
|
|
6043 |
|
|
|
6044 |
|
|
|
6045 |
|
|
|
6046 |
|
|
|
6047 |
|
|
|
6048 |
|
|
|
6049 |
|
|
|
6050 Desruisseaux Standards Track [Page 108] |
|
|
|
i 6051 |
|
|
|
Err bitreich.org 70 |
|
|
|
6052 RFC 5545 iCalendar September 2009 |
|
|
|
6053 |
|
|
|
6054 |
|
|
|
6055 The following is an example of this property used for specifying |
|
|
|
6056 multiple attendees to an event: |
|
|
|
6057 |
|
|
|
6058 ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=TENTATIVE;CN=Henry |
|
|
|
6059 Cabot:mailto:hcabot@example.com |
|
|
|
6060 ATTENDEE;ROLE=REQ-PARTICIPANT;DELEGATED-FROM="mailto:bob@ |
|
|
|
6061 example.com";PARTSTAT=ACCEPTED;CN=Jane Doe:mailto:jdoe@ |
|
|
|
6062 example.com |
|
|
|
6063 |
|
|
|
6064 The following is an example of this property with a URI to the |
|
|
|
6065 directory information associated with the attendee: |
|
|
|
6066 |
|
|
|
6067 ATTENDEE;CN=John Smith;DIR="ldap://example.com:6666/o=ABC% |
|
|
|
6068 20Industries,c=US???(cn=Jim%20Dolittle)":mailto:jimdo@ |
|
|
|
6069 example.com |
|
|
|
6070 |
|
|
|
6071 The following is an example of this property with "delegatee" and |
|
|
|
6072 "delegator" information for an event: |
|
|
|
6073 |
|
|
|
6074 ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=TENTATIVE;DELEGATED-FROM= |
|
|
|
6075 "mailto:iamboss@example.com";CN=Henry Cabot:mailto:hcabot@ |
|
|
|
6076 example.com |
|
|
|
6077 ATTENDEE;ROLE=NON-PARTICIPANT;PARTSTAT=DELEGATED;DELEGATED-TO= |
|
|
|
6078 "mailto:hcabot@example.com";CN=The Big Cheese:mailto:iamboss |
|
|
|
6079 @example.com |
|
|
|
6080 ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Jane Doe |
|
|
|
6081 :mailto:jdoe@example.com |
|
|
|
6082 |
|
|
|
6083 Example: The following is an example of this property's use when |
|
|
|
6084 another calendar user is acting on behalf of the "Attendee": |
|
|
|
6085 |
|
|
|
6086 ATTENDEE;SENT-BY=mailto:jan_doe@example.com;CN=John Smith: |
|
|
|
6087 mailto:jsmith@example.com |
|
|
|
6088 |
|
|
|
6089 3.8.4.2. Contact |
|
|
|
6090 |
|
|
|
6091 Property Name: CONTACT |
|
|
|
6092 |
|
|
|
6093 Purpose: This property is used to represent contact information or |
|
|
|
6094 alternately a reference to contact information associated with the |
|
|
|
6095 calendar component. |
|
|
|
6096 |
|
|
|
6097 Value Type: TEXT |
|
|
|
6098 |
|
|
|
6099 Property Parameters: IANA, non-standard, alternate text |
|
|
|
6100 representation, and language property parameters can be specified |
|
|
|
6101 on this property. |
|
|
|
6102 |
|
|
|
6103 |
|
|
|
6104 |
|
|
|
6105 |
|
|
|
6106 Desruisseaux Standards Track [Page 109] |
|
|
|
i 6107 |
|
|
|
Err bitreich.org 70 |
|
|
|
6108 RFC 5545 iCalendar September 2009 |
|
|
|
6109 |
|
|
|
6110 |
|
|
|
6111 Conformance: This property can be specified in a "VEVENT", "VTODO", |
|
|
|
6112 "VJOURNAL", or "VFREEBUSY" calendar component. |
|
|
|
6113 |
|
|
|
6114 Description: The property value consists of textual contact |
|
|
|
6115 information. An alternative representation for the property value |
|
|
|
6116 can also be specified that refers to a URI pointing to an |
|
|
|
6117 alternate form, such as a vCard [RFC2426], for the contact |
|
|
|
6118 information. |
|
|
|
6119 |
|
|
|
6120 Format Definition: This property is defined by the following |
|
|
|
6121 notation: |
|
|
|
6122 |
|
|
|
6123 contact = "CONTACT" contparam ":" text CRLF |
|
|
|
6124 |
|
|
|
6125 contparam = *( |
|
|
|
6126 ; |
|
|
|
6127 ; The following are OPTIONAL, |
|
|
|
6128 ; but MUST NOT occur more than once. |
|
|
|
6129 ; |
|
|
|
6130 (";" altrepparam) / (";" languageparam) / |
|
|
|
6131 ; |
|
|
|
6132 ; The following is OPTIONAL, |
|
|
|
6133 ; and MAY occur more than once. |
|
|
|
6134 ; |
|
|
|
6135 (";" other-param) |
|
|
|
6136 ; |
|
|
|
6137 ) |
|
|
|
6138 |
|
|
|
6139 Example: The following is an example of this property referencing |
|
|
|
6140 textual contact information: |
|
|
|
6141 |
|
|
|
6142 CONTACT:Jim Dolittle\, ABC Industries\, +1-919-555-1234 |
|
|
|
6143 |
|
|
|
6144 The following is an example of this property with an alternate |
|
|
|
6145 representation of an LDAP URI to a directory entry containing the |
|
|
|
6146 contact information: |
|
|
|
6147 |
|
|
|
6148 CONTACT;ALTREP="ldap://example.com:6666/o=ABC%20Industries\, |
|
|
|
6149 c=US???(cn=Jim%20Dolittle)":Jim Dolittle\, ABC Industries\, |
|
|
|
6150 +1-919-555-1234 |
|
|
|
6151 |
|
|
|
6152 The following is an example of this property with an alternate |
|
|
|
6153 representation of a MIME body part containing the contact |
|
|
|
6154 information, such as a vCard [RFC2426] embedded in a text/ |
|
|
|
6155 directory media type [RFC2425]: |
|
|
|
6156 |
|
|
|
6157 CONTACT;ALTREP="CID:part3.msg970930T083000SILVER@example.com": |
|
|
|
6158 Jim Dolittle\, ABC Industries\, +1-919-555-1234 |
|
|
|
6159 |
|
|
|
6160 |
|
|
|
6161 |
|
|
|
6162 Desruisseaux Standards Track [Page 110] |
|
|
|
i 6163 |
|
|
|
Err bitreich.org 70 |
|
|
|
6164 RFC 5545 iCalendar September 2009 |
|
|
|
6165 |
|
|
|
6166 |
|
|
|
6167 The following is an example of this property referencing a network |
|
|
|
6168 resource, such as a vCard [RFC2426] object containing the contact |
|
|
|
6169 information: |
|
|
|
6170 |
|
|
|
6171 CONTACT;ALTREP="http://example.com/pdi/jdoe.vcf":Jim |
|
|
|
6172 Dolittle\, ABC Industries\, +1-919-555-1234 |
|
|
|
6173 |
|
|
|
6174 3.8.4.3. Organizer |
|
|
|
6175 |
|
|
|
6176 Property Name: ORGANIZER |
|
|
|
6177 |
|
|
|
6178 Purpose: This property defines the organizer for a calendar |
|
|
|
6179 component. |
|
|
|
6180 |
|
|
|
6181 Value Type: CAL-ADDRESS |
|
|
|
6182 |
|
|
|
6183 Property Parameters: IANA, non-standard, language, common name, |
|
|
|
6184 directory entry reference, and sent-by property parameters can be |
|
|
|
6185 specified on this property. |
|
|
|
6186 |
|
|
|
6187 Conformance: This property MUST be specified in an iCalendar object |
|
|
|
6188 that specifies a group-scheduled calendar entity. This property |
|
|
|
6189 MUST be specified in an iCalendar object that specifies the |
|
|
|
6190 publication of a calendar user's busy time. This property MUST |
|
|
|
6191 NOT be specified in an iCalendar object that specifies only a time |
|
|
|
6192 zone definition or that defines calendar components that are not |
|
|
|
6193 group-scheduled components, but are components only on a single |
|
|
|
6194 user's calendar. |
|
|
|
6195 |
|
|
|
6196 Description: This property is specified within the "VEVENT", |
|
|
|
6197 "VTODO", and "VJOURNAL" calendar components to specify the |
|
|
|
6198 organizer of a group-scheduled calendar entity. The property is |
|
|
|
6199 specified within the "VFREEBUSY" calendar component to specify the |
|
|
|
6200 calendar user requesting the free or busy time. When publishing a |
|
|
|
6201 "VFREEBUSY" calendar component, the property is used to specify |
|
|
|
6202 the calendar that the published busy time came from. |
|
|
|
6203 |
|
|
|
6204 The property has the property parameters "CN", for specifying the |
|
|
|
6205 common or display name associated with the "Organizer", "DIR", for |
|
|
|
6206 specifying a pointer to the directory information associated with |
|
|
|
6207 the "Organizer", "SENT-BY", for specifying another calendar user |
|
|
|
6208 that is acting on behalf of the "Organizer". The non-standard |
|
|
|
6209 parameters may also be specified on this property. If the |
|
|
|
6210 "LANGUAGE" property parameter is specified, the identified |
|
|
|
6211 language applies to the "CN" parameter value. |
|
|
|
6212 |
|
|
|
6213 |
|
|
|
6214 |
|
|
|
6215 |
|
|
|
6216 |
|
|
|
6217 |
|
|
|
6218 Desruisseaux Standards Track [Page 111] |
|
|
|
i 6219 |
|
|
|
Err bitreich.org 70 |
|
|
|
6220 RFC 5545 iCalendar September 2009 |
|
|
|
6221 |
|
|
|
6222 |
|
|
|
6223 Format Definition: This property is defined by the following |
|
|
|
6224 notation: |
|
|
|
6225 |
|
|
|
6226 organizer = "ORGANIZER" orgparam ":" |
|
|
|
6227 cal-address CRLF |
|
|
|
6228 |
|
|
|
6229 orgparam = *( |
|
|
|
6230 ; |
|
|
|
6231 ; The following are OPTIONAL, |
|
|
|
6232 ; but MUST NOT occur more than once. |
|
|
|
6233 ; |
|
|
|
6234 (";" cnparam) / (";" dirparam) / (";" sentbyparam) / |
|
|
|
6235 (";" languageparam) / |
|
|
|
6236 ; |
|
|
|
6237 ; The following is OPTIONAL, |
|
|
|
6238 ; and MAY occur more than once. |
|
|
|
6239 ; |
|
|
|
6240 (";" other-param) |
|
|
|
6241 ; |
|
|
|
6242 ) |
|
|
|
6243 |
|
|
|
6244 Example: The following is an example of this property: |
|
|
|
6245 |
|
|
|
6246 ORGANIZER;CN=John Smith:mailto:jsmith@example.com |
|
|
|
6247 |
|
|
|
6248 The following is an example of this property with a pointer to the |
|
|
|
6249 directory information associated with the organizer: |
|
|
|
6250 |
|
|
|
6251 ORGANIZER;CN=JohnSmith;DIR="ldap://example.com:6666/o=DC%20Ass |
|
|
|
6252 ociates,c=US???(cn=John%20Smith)":mailto:jsmith@example.com |
|
|
|
6253 |
|
|
|
6254 The following is an example of this property used by another |
|
|
|
6255 calendar user who is acting on behalf of the organizer, with |
|
|
|
6256 responses intended to be sent back to the organizer, not the other |
|
|
|
6257 calendar user: |
|
|
|
6258 |
|
|
|
6259 ORGANIZER;SENT-BY="mailto:jane_doe@example.com": |
|
|
|
6260 mailto:jsmith@example.com |
|
|
|
6261 |
|
|
|
6262 3.8.4.4. Recurrence ID |
|
|
|
6263 |
|
|
|
6264 Property Name: RECURRENCE-ID |
|
|
|
6265 |
|
|
|
6266 Purpose: This property is used in conjunction with the "UID" and |
|
|
|
6267 "SEQUENCE" properties to identify a specific instance of a |
|
|
|
6268 recurring "VEVENT", "VTODO", or "VJOURNAL" calendar component. |
|
|
|
6269 The property value is the original value of the "DTSTART" property |
|
|
|
6270 of the recurrence instance. |
|
|
|
6271 |
|
|
|
6272 |
|
|
|
6273 |
|
|
|
6274 Desruisseaux Standards Track [Page 112] |
|
|
|
i 6275 |
|
|
|
Err bitreich.org 70 |
|
|
|
6276 RFC 5545 iCalendar September 2009 |
|
|
|
6277 |
|
|
|
6278 |
|
|
|
6279 Value Type: The default value type is DATE-TIME. The value type can |
|
|
|
6280 be set to a DATE value type. This property MUST have the same |
|
|
|
6281 value type as the "DTSTART" property contained within the |
|
|
|
6282 recurring component. Furthermore, this property MUST be specified |
|
|
|
6283 as a date with local time if and only if the "DTSTART" property |
|
|
|
6284 contained within the recurring component is specified as a date |
|
|
|
6285 with local time. |
|
|
|
6286 |
|
|
|
6287 Property Parameters: IANA, non-standard, value data type, time zone |
|
|
|
6288 identifier, and recurrence identifier range parameters can be |
|
|
|
6289 specified on this property. |
|
|
|
6290 |
|
|
|
6291 Conformance: This property can be specified in an iCalendar object |
|
|
|
6292 containing a recurring calendar component. |
|
|
|
6293 |
|
|
|
6294 Description: The full range of calendar components specified by a |
|
|
|
6295 recurrence set is referenced by referring to just the "UID" |
|
|
|
6296 property value corresponding to the calendar component. The |
|
|
|
6297 "RECURRENCE-ID" property allows the reference to an individual |
|
|
|
6298 instance within the recurrence set. |
|
|
|
6299 |
|
|
|
6300 If the value of the "DTSTART" property is a DATE type value, then |
|
|
|
6301 the value MUST be the calendar date for the recurrence instance. |
|
|
|
6302 |
|
|
|
6303 The DATE-TIME value is set to the time when the original |
|
|
|
6304 recurrence instance would occur; meaning that if the intent is to |
|
|
|
6305 change a Friday meeting to Thursday, the DATE-TIME is still set to |
|
|
|
6306 the original Friday meeting. |
|
|
|
6307 |
|
|
|
6308 The "RECURRENCE-ID" property is used in conjunction with the "UID" |
|
|
|
6309 and "SEQUENCE" properties to identify a particular instance of a |
|
|
|
6310 recurring event, to-do, or journal. For a given pair of "UID" and |
|
|
|
6311 "SEQUENCE" property values, the "RECURRENCE-ID" value for a |
|
|
|
6312 recurrence instance is fixed. |
|
|
|
6313 |
|
|
|
6314 The "RANGE" parameter is used to specify the effective range of |
|
|
|
6315 recurrence instances from the instance specified by the |
|
|
|
6316 "RECURRENCE-ID" property value. The value for the range parameter |
|
|
|
6317 can only be "THISANDFUTURE" to indicate a range defined by the |
|
|
|
6318 given recurrence instance and all subsequent instances. |
|
|
|
6319 Subsequent instances are determined by their "RECURRENCE-ID" value |
|
|
|
6320 and not their current scheduled start time. Subsequent instances |
|
|
|
6321 defined in separate components are not impacted by the given |
|
|
|
6322 recurrence instance. When the given recurrence instance is |
|
|
|
6323 rescheduled, all subsequent instances are also rescheduled by the |
|
|
|
6324 same time difference. For instance, if the given recurrence |
|
|
|
6325 instance is rescheduled to start 2 hours later, then all |
|
|
|
6326 subsequent instances are also rescheduled 2 hours later. |
|
|
|
6327 |
|
|
|
6328 |
|
|
|
6329 |
|
|
|
6330 Desruisseaux Standards Track [Page 113] |
|
|
|
i 6331 |
|
|
|
Err bitreich.org 70 |
|
|
|
6332 RFC 5545 iCalendar September 2009 |
|
|
|
6333 |
|
|
|
6334 |
|
|
|
6335 Similarly, if the duration of the given recurrence instance is |
|
|
|
6336 modified, then all subsequence instances are also modified to have |
|
|
|
6337 this same duration. |
|
|
|
6338 |
|
|
|
6339 Note: The "RANGE" parameter may not be appropriate to |
|
|
|
6340 reschedule specific subsequent instances of complex recurring |
|
|
|
6341 calendar component. Assuming an unbounded recurring calendar |
|
|
|
6342 component scheduled to occur on Mondays and Wednesdays, the |
|
|
|
6343 "RANGE" parameter could not be used to reschedule only the |
|
|
|
6344 future Monday instances to occur on Tuesday instead. In such |
|
|
|
6345 cases, the calendar application could simply truncate the |
|
|
|
6346 unbounded recurring calendar component (i.e., with the "COUNT" |
|
|
|
6347 or "UNTIL" rule parts), and create two new unbounded recurring |
|
|
|
6348 calendar components for the future instances. |
|
|
|
6349 |
|
|
|
6350 Format Definition: This property is defined by the following |
|
|
|
6351 notation: |
|
|
|
6352 |
|
|
|
6353 recurid = "RECURRENCE-ID" ridparam ":" ridval CRLF |
|
|
|
6354 |
|
|
|
6355 ridparam = *( |
|
|
|
6356 ; |
|
|
|
6357 ; The following are OPTIONAL, |
|
|
|
6358 ; but MUST NOT occur more than once. |
|
|
|
6359 ; |
|
|
|
6360 (";" "VALUE" "=" ("DATE-TIME" / "DATE")) / |
|
|
|
6361 (";" tzidparam) / (";" rangeparam) / |
|
|
|
6362 ; |
|
|
|
6363 ; The following is OPTIONAL, |
|
|
|
6364 ; and MAY occur more than once. |
|
|
|
6365 ; |
|
|
|
6366 (";" other-param) |
|
|
|
6367 ; |
|
|
|
6368 ) |
|
|
|
6369 |
|
|
|
6370 ridval = date-time / date |
|
|
|
6371 ;Value MUST match value type |
|
|
|
6372 |
|
|
|
6373 Example: The following are examples of this property: |
|
|
|
6374 |
|
|
|
6375 RECURRENCE-ID;VALUE=DATE:19960401 |
|
|
|
6376 |
|
|
|
6377 RECURRENCE-ID;RANGE=THISANDFUTURE:19960120T120000Z |
|
|
|
6378 |
|
|
|
6379 |
|
|
|
6380 |
|
|
|
6381 |
|
|
|
6382 |
|
|
|
6383 |
|
|
|
6384 |
|
|
|
6385 |
|
|
|
6386 Desruisseaux Standards Track [Page 114] |
|
|
|
i 6387 |
|
|
|
Err bitreich.org 70 |
|
|
|
6388 RFC 5545 iCalendar September 2009 |
|
|
|
6389 |
|
|
|
6390 |
|
|
|
6391 3.8.4.5. Related To |
|
|
|
6392 |
|
|
|
6393 Property Name: RELATED-TO |
|
|
|
6394 |
|
|
|
6395 Purpose: This property is used to represent a relationship or |
|
|
|
6396 reference between one calendar component and another. |
|
|
|
6397 |
|
|
|
6398 Value Type: TEXT |
|
|
|
6399 |
|
|
|
6400 Property Parameters: IANA, non-standard, and relationship type |
|
|
|
6401 property parameters can be specified on this property. |
|
|
|
6402 |
|
|
|
6403 Conformance: This property can be specified in the "VEVENT", |
|
|
|
6404 "VTODO", and "VJOURNAL" calendar components. |
|
|
|
6405 |
|
|
|
6406 Description: The property value consists of the persistent, globally |
|
|
|
6407 unique identifier of another calendar component. This value would |
|
|
|
6408 be represented in a calendar component by the "UID" property. |
|
|
|
6409 |
|
|
|
6410 By default, the property value points to another calendar |
|
|
|
6411 component that has a PARENT relationship to the referencing |
|
|
|
6412 object. The "RELTYPE" property parameter is used to either |
|
|
|
6413 explicitly state the default PARENT relationship type to the |
|
|
|
6414 referenced calendar component or to override the default PARENT |
|
|
|
6415 relationship type and specify either a CHILD or SIBLING |
|
|
|
6416 relationship. The PARENT relationship indicates that the calendar |
|
|
|
6417 component is a subordinate of the referenced calendar component. |
|
|
|
6418 The CHILD relationship indicates that the calendar component is a |
|
|
|
6419 superior of the referenced calendar component. The SIBLING |
|
|
|
6420 relationship indicates that the calendar component is a peer of |
|
|
|
6421 the referenced calendar component. |
|
|
|
6422 |
|
|
|
6423 Changes to a calendar component referenced by this property can |
|
|
|
6424 have an implicit impact on the related calendar component. For |
|
|
|
6425 example, if a group event changes its start or end date or time, |
|
|
|
6426 then the related, dependent events will need to have their start |
|
|
|
6427 and end dates changed in a corresponding way. Similarly, if a |
|
|
|
6428 PARENT calendar component is cancelled or deleted, then there is |
|
|
|
6429 an implied impact to the related CHILD calendar components. This |
|
|
|
6430 property is intended only to provide information on the |
|
|
|
6431 relationship of calendar components. It is up to the target |
|
|
|
6432 calendar system to maintain any property implications of this |
|
|
|
6433 relationship. |
|
|
|
6434 |
|
|
|
6435 |
|
|
|
6436 |
|
|
|
6437 |
|
|
|
6438 |
|
|
|
6439 |
|
|
|
6440 |
|
|
|
6441 |
|
|
|
6442 Desruisseaux Standards Track [Page 115] |
|
|
|
i 6443 |
|
|
|
Err bitreich.org 70 |
|
|
|
6444 RFC 5545 iCalendar September 2009 |
|
|
|
6445 |
|
|
|
6446 |
|
|
|
6447 Format Definition: This property is defined by the following |
|
|
|
6448 notation: |
|
|
|
6449 |
|
|
|
6450 related = "RELATED-TO" relparam ":" text CRLF |
|
|
|
6451 |
|
|
|
6452 relparam = *( |
|
|
|
6453 ; |
|
|
|
6454 ; The following is OPTIONAL, |
|
|
|
6455 ; but MUST NOT occur more than once. |
|
|
|
6456 ; |
|
|
|
6457 (";" reltypeparam) / |
|
|
|
6458 ; |
|
|
|
6459 ; The following is OPTIONAL, |
|
|
|
6460 ; and MAY occur more than once. |
|
|
|
6461 ; |
|
|
|
6462 (";" other-param) |
|
|
|
6463 ; |
|
|
|
6464 ) |
|
|
|
6465 |
|
|
|
6466 The following is an example of this property: |
|
|
|
6467 |
|
|
|
6468 RELATED-TO:jsmith.part7.19960817T083000.xyzMail@example.com |
|
|
|
6469 |
|
|
|
6470 RELATED-TO:19960401-080045-4000F192713-0052@example.com |
|
|
|
6471 |
|
|
|
6472 3.8.4.6. Uniform Resource Locator |
|
|
|
6473 |
|
|
|
6474 Property Name: URL |
|
|
|
6475 |
|
|
|
6476 Purpose: This property defines a Uniform Resource Locator (URL) |
|
|
|
6477 associated with the iCalendar object. |
|
|
|
6478 |
|
|
|
6479 Value Type: URI |
|
|
|
6480 |
|
|
|
6481 Property Parameters: IANA and non-standard property parameters can |
|
|
|
6482 be specified on this property. |
|
|
|
6483 |
|
|
|
6484 Conformance: This property can be specified once in the "VEVENT", |
|
|
|
6485 "VTODO", "VJOURNAL", or "VFREEBUSY" calendar components. |
|
|
|
6486 |
|
|
|
6487 Description: This property may be used in a calendar component to |
|
|
|
6488 convey a location where a more dynamic rendition of the calendar |
|
|
|
6489 information associated with the calendar component can be found. |
|
|
|
6490 This memo does not attempt to standardize the form of the URI, nor |
|
|
|
6491 the format of the resource pointed to by the property value. If |
|
|
|
6492 the URL property and Content-Location MIME header are both |
|
|
|
6493 specified, they MUST point to the same resource. |
|
|
|
6494 |
|
|
|
6495 |
|
|
|
6496 |
|
|
|
6497 |
|
|
|
6498 Desruisseaux Standards Track [Page 116] |
|
|
|
i 6499 |
|
|
|
Err bitreich.org 70 |
|
|
|
6500 RFC 5545 iCalendar September 2009 |
|
|
|
6501 |
|
|
|
6502 |
|
|
|
6503 Format Definition: This property is defined by the following |
|
|
|
6504 notation: |
|
|
|
6505 |
|
|
|
6506 url = "URL" urlparam ":" uri CRLF |
|
|
|
6507 |
|
|
|
6508 urlparam = *(";" other-param) |
|
|
|
6509 |
|
|
|
6510 Example: The following is an example of this property: |
|
|
|
6511 |
|
|
|
6512 URL:http://example.com/pub/calendars/jsmith/mytime.ics |
|
|
|
6513 |
|
|
|
6514 3.8.4.7. Unique Identifier |
|
|
|
6515 |
|
|
|
6516 Property Name: UID |
|
|
|
6517 |
|
|
|
6518 Purpose: This property defines the persistent, globally unique |
|
|
|
6519 identifier for the calendar component. |
|
|
|
6520 |
|
|
|
6521 Value Type: TEXT |
|
|
|
6522 |
|
|
|
6523 Property Parameters: IANA and non-standard property parameters can |
|
|
|
6524 be specified on this property. |
|
|
|
6525 |
|
|
|
6526 Conformance: The property MUST be specified in the "VEVENT", |
|
|
|
6527 "VTODO", "VJOURNAL", or "VFREEBUSY" calendar components. |
|
|
|
6528 |
|
|
|
6529 Description: The "UID" itself MUST be a globally unique identifier. |
|
|
|
6530 The generator of the identifier MUST guarantee that the identifier |
|
|
|
6531 is unique. There are several algorithms that can be used to |
|
|
|
6532 accomplish this. A good method to assure uniqueness is to put the |
|
|
|
6533 domain name or a domain literal IP address of the host on which |
|
|
|
6534 the identifier was created on the right-hand side of an "@", and |
|
|
|
6535 on the left-hand side, put a combination of the current calendar |
|
|
|
6536 date and time of day (i.e., formatted in as a DATE-TIME value) |
|
|
|
6537 along with some other currently unique (perhaps sequential) |
|
|
|
6538 identifier available on the system (for example, a process id |
|
|
|
6539 number). Using a DATE-TIME value on the left-hand side and a |
|
|
|
6540 domain name or domain literal on the right-hand side makes it |
|
|
|
6541 possible to guarantee uniqueness since no two hosts should be |
|
|
|
6542 using the same domain name or IP address at the same time. Though |
|
|
|
6543 other algorithms will work, it is RECOMMENDED that the right-hand |
|
|
|
6544 side contain some domain identifier (either of the host itself or |
|
|
|
6545 otherwise) such that the generator of the message identifier can |
|
|
|
6546 guarantee the uniqueness of the left-hand side within the scope of |
|
|
|
6547 that domain. |
|
|
|
6548 |
|
|
|
6549 This is the method for correlating scheduling messages with the |
|
|
|
6550 referenced "VEVENT", "VTODO", or "VJOURNAL" calendar component. |
|
|
|
6551 |
|
|
|
6552 |
|
|
|
6553 |
|
|
|
6554 Desruisseaux Standards Track [Page 117] |
|
|
|
i 6555 |
|
|
|
Err bitreich.org 70 |
|
|
|
6556 RFC 5545 iCalendar September 2009 |
|
|
|
6557 |
|
|
|
6558 |
|
|
|
6559 The full range of calendar components specified by a recurrence |
|
|
|
6560 set is referenced by referring to just the "UID" property value |
|
|
|
6561 corresponding to the calendar component. The "RECURRENCE-ID" |
|
|
|
6562 property allows the reference to an individual instance within the |
|
|
|
6563 recurrence set. |
|
|
|
6564 |
|
|
|
6565 This property is an important method for group-scheduling |
|
|
|
6566 applications to match requests with later replies, modifications, |
|
|
|
6567 or deletion requests. Calendaring and scheduling applications |
|
|
|
6568 MUST generate this property in "VEVENT", "VTODO", and "VJOURNAL" |
|
|
|
6569 calendar components to assure interoperability with other group- |
|
|
|
6570 scheduling applications. This identifier is created by the |
|
|
|
6571 calendar system that generates an iCalendar object. |
|
|
|
6572 |
|
|
|
6573 Implementations MUST be able to receive and persist values of at |
|
|
|
6574 least 255 octets for this property, but they MUST NOT truncate |
|
|
|
6575 values in the middle of a UTF-8 multi-octet sequence. |
|
|
|
6576 |
|
|
|
6577 Format Definition: This property is defined by the following |
|
|
|
6578 notation: |
|
|
|
6579 |
|
|
|
6580 uid = "UID" uidparam ":" text CRLF |
|
|
|
6581 |
|
|
|
6582 uidparam = *(";" other-param) |
|
|
|
6583 |
|
|
|
6584 Example: The following is an example of this property: |
|
|
|
6585 |
|
|
|
6586 UID:19960401T080045Z-4000F192713-0052@example.com |
|
|
|
6587 |
|
|
|
6588 3.8.5. Recurrence Component Properties |
|
|
|
6589 |
|
|
|
6590 The following properties specify recurrence information in calendar |
|
|
|
6591 components. |
|
|
|
6592 |
|
|
|
6593 3.8.5.1. Exception Date-Times |
|
|
|
6594 |
|
|
|
6595 Property Name: EXDATE |
|
|
|
6596 |
|
|
|
6597 Purpose: This property defines the list of DATE-TIME exceptions for |
|
|
|
6598 recurring events, to-dos, journal entries, or time zone |
|
|
|
6599 definitions. |
|
|
|
6600 |
|
|
|
6601 Value Type: The default value type for this property is DATE-TIME. |
|
|
|
6602 The value type can be set to DATE. |
|
|
|
6603 |
|
|
|
6604 Property Parameters: IANA, non-standard, value data type, and time |
|
|
|
6605 zone identifier property parameters can be specified on this |
|
|
|
6606 property. |
|
|
|
6607 |
|
|
|
6608 |
|
|
|
6609 |
|
|
|
6610 Desruisseaux Standards Track [Page 118] |
|
|
|
i 6611 |
|
|
|
Err bitreich.org 70 |
|
|
|
6612 RFC 5545 iCalendar September 2009 |
|
|
|
6613 |
|
|
|
6614 |
|
|
|
6615 Conformance: This property can be specified in recurring "VEVENT", |
|
|
|
6616 "VTODO", and "VJOURNAL" calendar components as well as in the |
|
|
|
6617 "STANDARD" and "DAYLIGHT" sub-components of the "VTIMEZONE" |
|
|
|
6618 calendar component. |
|
|
|
6619 |
|
|
|
6620 Description: The exception dates, if specified, are used in |
|
|
|
6621 computing the recurrence set. The recurrence set is the complete |
|
|
|
6622 set of recurrence instances for a calendar component. The |
|
|
|
6623 recurrence set is generated by considering the initial "DTSTART" |
|
|
|
6624 property along with the "RRULE", "RDATE", and "EXDATE" properties |
|
|
|
6625 contained within the recurring component. The "DTSTART" property |
|
|
|
6626 defines the first instance in the recurrence set. The "DTSTART" |
|
|
|
6627 property value SHOULD match the pattern of the recurrence rule, if |
|
|
|
6628 specified. The recurrence set generated with a "DTSTART" property |
|
|
|
6629 value that doesn't match the pattern of the rule is undefined. |
|
|
|
6630 The final recurrence set is generated by gathering all of the |
|
|
|
6631 start DATE-TIME values generated by any of the specified "RRULE" |
|
|
|
6632 and "RDATE" properties, and then excluding any start DATE-TIME |
|
|
|
6633 values specified by "EXDATE" properties. This implies that start |
|
|
|
6634 DATE-TIME values specified by "EXDATE" properties take precedence |
|
|
|
6635 over those specified by inclusion properties (i.e., "RDATE" and |
|
|
|
6636 "RRULE"). When duplicate instances are generated by the "RRULE" |
|
|
|
6637 and "RDATE" properties, only one recurrence is considered. |
|
|
|
6638 Duplicate instances are ignored. |
|
|
|
6639 |
|
|
|
6640 The "EXDATE" property can be used to exclude the value specified |
|
|
|
6641 in "DTSTART". However, in such cases, the original "DTSTART" date |
|
|
|
6642 MUST still be maintained by the calendaring and scheduling system |
|
|
|
6643 because the original "DTSTART" value has inherent usage |
|
|
|
6644 dependencies by other properties such as the "RECURRENCE-ID". |
|
|
|
6645 |
|
|
|
6646 Format Definition: This property is defined by the following |
|
|
|
6647 notation: |
|
|
|
6648 |
|
|
|
6649 |
|
|
|
6650 |
|
|
|
6651 |
|
|
|
6652 |
|
|
|
6653 |
|
|
|
6654 |
|
|
|
6655 |
|
|
|
6656 |
|
|
|
6657 |
|
|
|
6658 |
|
|
|
6659 |
|
|
|
6660 |
|
|
|
6661 |
|
|
|
6662 |
|
|
|
6663 |
|
|
|
6664 |
|
|
|
6665 |
|
|
|
6666 Desruisseaux Standards Track [Page 119] |
|
|
|
i 6667 |
|
|
|
Err bitreich.org 70 |
|
|
|
6668 RFC 5545 iCalendar September 2009 |
|
|
|
6669 |
|
|
|
6670 |
|
|
|
6671 exdate = "EXDATE" exdtparam ":" exdtval *("," exdtval) CRLF |
|
|
|
6672 |
|
|
|
6673 exdtparam = *( |
|
|
|
6674 ; |
|
|
|
6675 ; The following are OPTIONAL, |
|
|
|
6676 ; but MUST NOT occur more than once. |
|
|
|
6677 ; |
|
|
|
6678 (";" "VALUE" "=" ("DATE-TIME" / "DATE")) / |
|
|
|
6679 ; |
|
|
|
6680 (";" tzidparam) / |
|
|
|
6681 ; |
|
|
|
6682 ; The following is OPTIONAL, |
|
|
|
6683 ; and MAY occur more than once. |
|
|
|
6684 ; |
|
|
|
6685 (";" other-param) |
|
|
|
6686 ; |
|
|
|
6687 ) |
|
|
|
6688 |
|
|
|
6689 exdtval = date-time / date |
|
|
|
6690 ;Value MUST match value type |
|
|
|
6691 |
|
|
|
6692 Example: The following is an example of this property: |
|
|
|
6693 |
|
|
|
6694 EXDATE:19960402T010000Z,19960403T010000Z,19960404T010000Z |
|
|
|
6695 |
|
|
|
6696 3.8.5.2. Recurrence Date-Times |
|
|
|
6697 |
|
|
|
6698 Property Name: RDATE |
|
|
|
6699 |
|
|
|
6700 Purpose: This property defines the list of DATE-TIME values for |
|
|
|
6701 recurring events, to-dos, journal entries, or time zone |
|
|
|
6702 definitions. |
|
|
|
6703 |
|
|
|
6704 Value Type: The default value type for this property is DATE-TIME. |
|
|
|
6705 The value type can be set to DATE or PERIOD. |
|
|
|
6706 |
|
|
|
6707 Property Parameters: IANA, non-standard, value data type, and time |
|
|
|
6708 zone identifier property parameters can be specified on this |
|
|
|
6709 property. |
|
|
|
6710 |
|
|
|
6711 Conformance: This property can be specified in recurring "VEVENT", |
|
|
|
6712 "VTODO", and "VJOURNAL" calendar components as well as in the |
|
|
|
6713 "STANDARD" and "DAYLIGHT" sub-components of the "VTIMEZONE" |
|
|
|
6714 calendar component. |
|
|
|
6715 |
|
|
|
6716 Description: This property can appear along with the "RRULE" |
|
|
|
6717 property to define an aggregate set of repeating occurrences. |
|
|
|
6718 When they both appear in a recurring component, the recurrence |
|
|
|
6719 |
|
|
|
6720 |
|
|
|
6721 |
|
|
|
6722 Desruisseaux Standards Track [Page 120] |
|
|
|
i 6723 |
|
|
|
Err bitreich.org 70 |
|
|
|
6724 RFC 5545 iCalendar September 2009 |
|
|
|
6725 |
|
|
|
6726 |
|
|
|
6727 instances are defined by the union of occurrences defined by both |
|
|
|
6728 the "RDATE" and "RRULE". |
|
|
|
6729 |
|
|
|
6730 The recurrence dates, if specified, are used in computing the |
|
|
|
6731 recurrence set. The recurrence set is the complete set of |
|
|
|
6732 recurrence instances for a calendar component. The recurrence set |
|
|
|
6733 is generated by considering the initial "DTSTART" property along |
|
|
|
6734 with the "RRULE", "RDATE", and "EXDATE" properties contained |
|
|
|
6735 within the recurring component. The "DTSTART" property defines |
|
|
|
6736 the first instance in the recurrence set. The "DTSTART" property |
|
|
|
6737 value SHOULD match the pattern of the recurrence rule, if |
|
|
|
6738 specified. The recurrence set generated with a "DTSTART" property |
|
|
|
6739 value that doesn't match the pattern of the rule is undefined. |
|
|
|
6740 The final recurrence set is generated by gathering all of the |
|
|
|
6741 start DATE-TIME values generated by any of the specified "RRULE" |
|
|
|
6742 and "RDATE" properties, and then excluding any start DATE-TIME |
|
|
|
6743 values specified by "EXDATE" properties. This implies that start |
|
|
|
6744 DATE-TIME values specified by "EXDATE" properties take precedence |
|
|
|
6745 over those specified by inclusion properties (i.e., "RDATE" and |
|
|
|
6746 "RRULE"). Where duplicate instances are generated by the "RRULE" |
|
|
|
6747 and "RDATE" properties, only one recurrence is considered. |
|
|
|
6748 Duplicate instances are ignored. |
|
|
|
6749 |
|
|
|
6750 Format Definition: This property is defined by the following |
|
|
|
6751 notation: |
|
|
|
6752 |
|
|
|
6753 rdate = "RDATE" rdtparam ":" rdtval *("," rdtval) CRLF |
|
|
|
6754 |
|
|
|
6755 rdtparam = *( |
|
|
|
6756 ; |
|
|
|
6757 ; The following are OPTIONAL, |
|
|
|
6758 ; but MUST NOT occur more than once. |
|
|
|
6759 ; |
|
|
|
6760 (";" "VALUE" "=" ("DATE-TIME" / "DATE" / "PERIOD")) / |
|
|
|
6761 (";" tzidparam) / |
|
|
|
6762 ; |
|
|
|
6763 ; The following is OPTIONAL, |
|
|
|
6764 ; and MAY occur more than once. |
|
|
|
6765 ; |
|
|
|
6766 (";" other-param) |
|
|
|
6767 ; |
|
|
|
6768 ) |
|
|
|
6769 |
|
|
|
6770 rdtval = date-time / date / period |
|
|
|
6771 ;Value MUST match value type |
|
|
|
6772 |
|
|
|
6773 |
|
|
|
6774 |
|
|
|
6775 |
|
|
|
6776 |
|
|
|
6777 |
|
|
|
6778 Desruisseaux Standards Track [Page 121] |
|
|
|
i 6779 |
|
|
|
Err bitreich.org 70 |
|
|
|
6780 RFC 5545 iCalendar September 2009 |
|
|
|
6781 |
|
|
|
6782 |
|
|
|
6783 Example: The following are examples of this property: |
|
|
|
6784 |
|
|
|
6785 RDATE:19970714T123000Z |
|
|
|
6786 RDATE;TZID=America/New_York:19970714T083000 |
|
|
|
6787 |
|
|
|
6788 RDATE;VALUE=PERIOD:19960403T020000Z/19960403T040000Z, |
|
|
|
6789 19960404T010000Z/PT3H |
|
|
|
6790 |
|
|
|
6791 RDATE;VALUE=DATE:19970101,19970120,19970217,19970421 |
|
|
|
6792 19970526,19970704,19970901,19971014,19971128,19971129,19971225 |
|
|
|
6793 |
|
|
|
6794 3.8.5.3. Recurrence Rule |
|
|
|
6795 |
|
|
|
6796 Property Name: RRULE |
|
|
|
6797 |
|
|
|
6798 Purpose: This property defines a rule or repeating pattern for |
|
|
|
6799 recurring events, to-dos, journal entries, or time zone |
|
|
|
6800 definitions. |
|
|
|
6801 |
|
|
|
6802 Value Type: RECUR |
|
|
|
6803 |
|
|
|
6804 Property Parameters: IANA and non-standard property parameters can |
|
|
|
6805 be specified on this property. |
|
|
|
6806 |
|
|
|
6807 Conformance: This property can be specified in recurring "VEVENT", |
|
|
|
6808 "VTODO", and "VJOURNAL" calendar components as well as in the |
|
|
|
6809 "STANDARD" and "DAYLIGHT" sub-components of the "VTIMEZONE" |
|
|
|
6810 calendar component, but it SHOULD NOT be specified more than once. |
|
|
|
6811 The recurrence set generated with multiple "RRULE" properties is |
|
|
|
6812 undefined. |
|
|
|
6813 |
|
|
|
6814 Description: The recurrence rule, if specified, is used in computing |
|
|
|
6815 the recurrence set. The recurrence set is the complete set of |
|
|
|
6816 recurrence instances for a calendar component. The recurrence set |
|
|
|
6817 is generated by considering the initial "DTSTART" property along |
|
|
|
6818 with the "RRULE", "RDATE", and "EXDATE" properties contained |
|
|
|
6819 within the recurring component. The "DTSTART" property defines |
|
|
|
6820 the first instance in the recurrence set. The "DTSTART" property |
|
|
|
6821 value SHOULD be synchronized with the recurrence rule, if |
|
|
|
6822 specified. The recurrence set generated with a "DTSTART" property |
|
|
|
6823 value not synchronized with the recurrence rule is undefined. The |
|
|
|
6824 final recurrence set is generated by gathering all of the start |
|
|
|
6825 DATE-TIME values generated by any of the specified "RRULE" and |
|
|
|
6826 "RDATE" properties, and then excluding any start DATE-TIME values |
|
|
|
6827 specified by "EXDATE" properties. This implies that start DATE- |
|
|
|
6828 TIME values specified by "EXDATE" properties take precedence over |
|
|
|
6829 those specified by inclusion properties (i.e., "RDATE" and |
|
|
|
6830 "RRULE"). Where duplicate instances are generated by the "RRULE" |
|
|
|
6831 |
|
|
|
6832 |
|
|
|
6833 |
|
|
|
6834 Desruisseaux Standards Track [Page 122] |
|
|
|
i 6835 |
|
|
|
Err bitreich.org 70 |
|
|
|
6836 RFC 5545 iCalendar September 2009 |
|
|
|
6837 |
|
|
|
6838 |
|
|
|
6839 and "RDATE" properties, only one recurrence is considered. |
|
|
|
6840 Duplicate instances are ignored. |
|
|
|
6841 |
|
|
|
6842 The "DTSTART" property specified within the iCalendar object |
|
|
|
6843 defines the first instance of the recurrence. In most cases, a |
|
|
|
6844 "DTSTART" property of DATE-TIME value type used with a recurrence |
|
|
|
6845 rule, should be specified as a date with local time and time zone |
|
|
|
6846 reference to make sure all the recurrence instances start at the |
|
|
|
6847 same local time regardless of time zone changes. |
|
|
|
6848 |
|
|
|
6849 If the duration of the recurring component is specified with the |
|
|
|
6850 "DTEND" or "DUE" property, then the same exact duration will apply |
|
|
|
6851 to all the members of the generated recurrence set. Else, if the |
|
|
|
6852 duration of the recurring component is specified with the |
|
|
|
6853 "DURATION" property, then the same nominal duration will apply to |
|
|
|
6854 all the members of the generated recurrence set and the exact |
|
|
|
6855 duration of each recurrence instance will depend on its specific |
|
|
|
6856 start time. For example, recurrence instances of a nominal |
|
|
|
6857 duration of one day will have an exact duration of more or less |
|
|
|
6858 than 24 hours on a day where a time zone shift occurs. The |
|
|
|
6859 duration of a specific recurrence may be modified in an exception |
|
|
|
6860 component or simply by using an "RDATE" property of PERIOD value |
|
|
|
6861 type. |
|
|
|
6862 |
|
|
|
6863 Format Definition: This property is defined by the following |
|
|
|
6864 notation: |
|
|
|
6865 |
|
|
|
6866 rrule = "RRULE" rrulparam ":" recur CRLF |
|
|
|
6867 |
|
|
|
6868 rrulparam = *(";" other-param) |
|
|
|
6869 |
|
|
|
6870 Example: All examples assume the Eastern United States time zone. |
|
|
|
6871 |
|
|
|
6872 Daily for 10 occurrences: |
|
|
|
6873 |
|
|
|
6874 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
6875 RRULE:FREQ=DAILY;COUNT=10 |
|
|
|
6876 |
|
|
|
6877 ==> (1997 9:00 AM EDT) September 2-11 |
|
|
|
6878 |
|
|
|
6879 Daily until December 24, 1997: |
|
|
|
6880 |
|
|
|
6881 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
6882 RRULE:FREQ=DAILY;UNTIL=19971224T000000Z |
|
|
|
6883 |
|
|
|
6884 ==> (1997 9:00 AM EDT) September 2-30;October 1-25 |
|
|
|
6885 (1997 9:00 AM EST) October 26-31;November 1-30;December 1-23 |
|
|
|
6886 |
|
|
|
6887 |
|
|
|
6888 |
|
|
|
6889 |
|
|
|
6890 Desruisseaux Standards Track [Page 123] |
|
|
|
i 6891 |
|
|
|
Err bitreich.org 70 |
|
|
|
6892 RFC 5545 iCalendar September 2009 |
|
|
|
6893 |
|
|
|
6894 |
|
|
|
6895 Every other day - forever: |
|
|
|
6896 |
|
|
|
6897 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
6898 RRULE:FREQ=DAILY;INTERVAL=2 |
|
|
|
6899 |
|
|
|
6900 ==> (1997 9:00 AM EDT) September 2,4,6,8...24,26,28,30; |
|
|
|
6901 October 2,4,6...20,22,24 |
|
|
|
6902 (1997 9:00 AM EST) October 26,28,30; |
|
|
|
6903 November 1,3,5,7...25,27,29; |
|
|
|
6904 December 1,3,... |
|
|
|
6905 |
|
|
|
6906 Every 10 days, 5 occurrences: |
|
|
|
6907 |
|
|
|
6908 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
6909 RRULE:FREQ=DAILY;INTERVAL=10;COUNT=5 |
|
|
|
6910 |
|
|
|
6911 ==> (1997 9:00 AM EDT) September 2,12,22; |
|
|
|
6912 October 2,12 |
|
|
|
6913 |
|
|
|
6914 Every day in January, for 3 years: |
|
|
|
6915 |
|
|
|
6916 DTSTART;TZID=America/New_York:19980101T090000 |
|
|
|
6917 |
|
|
|
6918 RRULE:FREQ=YEARLY;UNTIL=20000131T140000Z; |
|
|
|
6919 BYMONTH=1;BYDAY=SU,MO,TU,WE,TH,FR,SA |
|
|
|
6920 or |
|
|
|
6921 RRULE:FREQ=DAILY;UNTIL=20000131T140000Z;BYMONTH=1 |
|
|
|
6922 |
|
|
|
6923 ==> (1998 9:00 AM EST)January 1-31 |
|
|
|
6924 (1999 9:00 AM EST)January 1-31 |
|
|
|
6925 (2000 9:00 AM EST)January 1-31 |
|
|
|
6926 |
|
|
|
6927 Weekly for 10 occurrences: |
|
|
|
6928 |
|
|
|
6929 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
6930 RRULE:FREQ=WEEKLY;COUNT=10 |
|
|
|
6931 |
|
|
|
6932 ==> (1997 9:00 AM EDT) September 2,9,16,23,30;October 7,14,21 |
|
|
|
6933 (1997 9:00 AM EST) October 28;November 4 |
|
|
|
6934 |
|
|
|
6935 |
|
|
|
6936 |
|
|
|
6937 |
|
|
|
6938 |
|
|
|
6939 |
|
|
|
6940 |
|
|
|
6941 |
|
|
|
6942 |
|
|
|
6943 |
|
|
|
6944 |
|
|
|
6945 |
|
|
|
6946 Desruisseaux Standards Track [Page 124] |
|
|
|
i 6947 |
|
|
|
Err bitreich.org 70 |
|
|
|
6948 RFC 5545 iCalendar September 2009 |
|
|
|
6949 |
|
|
|
6950 |
|
|
|
6951 Weekly until December 24, 1997: |
|
|
|
6952 |
|
|
|
6953 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
6954 RRULE:FREQ=WEEKLY;UNTIL=19971224T000000Z |
|
|
|
6955 |
|
|
|
6956 ==> (1997 9:00 AM EDT) September 2,9,16,23,30; |
|
|
|
6957 October 7,14,21 |
|
|
|
6958 (1997 9:00 AM EST) October 28; |
|
|
|
6959 November 4,11,18,25; |
|
|
|
6960 December 2,9,16,23 |
|
|
|
6961 |
|
|
|
6962 Every other week - forever: |
|
|
|
6963 |
|
|
|
6964 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
6965 RRULE:FREQ=WEEKLY;INTERVAL=2;WKST=SU |
|
|
|
6966 |
|
|
|
6967 ==> (1997 9:00 AM EDT) September 2,16,30; |
|
|
|
6968 October 14 |
|
|
|
6969 (1997 9:00 AM EST) October 28; |
|
|
|
6970 November 11,25; |
|
|
|
6971 December 9,23 |
|
|
|
6972 (1998 9:00 AM EST) January 6,20; |
|
|
|
6973 February 3, 17 |
|
|
|
6974 ... |
|
|
|
6975 |
|
|
|
6976 Weekly on Tuesday and Thursday for five weeks: |
|
|
|
6977 |
|
|
|
6978 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
6979 RRULE:FREQ=WEEKLY;UNTIL=19971007T000000Z;WKST=SU;BYDAY=TU,TH |
|
|
|
6980 |
|
|
|
6981 or |
|
|
|
6982 |
|
|
|
6983 RRULE:FREQ=WEEKLY;COUNT=10;WKST=SU;BYDAY=TU,TH |
|
|
|
6984 |
|
|
|
6985 ==> (1997 9:00 AM EDT) September 2,4,9,11,16,18,23,25,30; |
|
|
|
6986 October 2 |
|
|
|
6987 |
|
|
|
6988 Every other week on Monday, Wednesday, and Friday until December |
|
|
|
6989 24, 1997, starting on Monday, September 1, 1997: |
|
|
|
6990 |
|
|
|
6991 DTSTART;TZID=America/New_York:19970901T090000 |
|
|
|
6992 RRULE:FREQ=WEEKLY;INTERVAL=2;UNTIL=19971224T000000Z;WKST=SU; |
|
|
|
6993 BYDAY=MO,WE,FR |
|
|
|
6994 |
|
|
|
6995 ==> (1997 9:00 AM EDT) September 1,3,5,15,17,19,29; |
|
|
|
6996 October 1,3,13,15,17 |
|
|
|
6997 (1997 9:00 AM EST) October 27,29,31; |
|
|
|
6998 November 10,12,14,24,26,28; |
|
|
|
6999 |
|
|
|
7000 |
|
|
|
7001 |
|
|
|
7002 Desruisseaux Standards Track [Page 125] |
|
|
|
i 7003 |
|
|
|
Err bitreich.org 70 |
|
|
|
7004 RFC 5545 iCalendar September 2009 |
|
|
|
7005 |
|
|
|
7006 |
|
|
|
7007 December 8,10,12,22 |
|
|
|
7008 |
|
|
|
7009 Every other week on Tuesday and Thursday, for 8 occurrences: |
|
|
|
7010 |
|
|
|
7011 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
7012 RRULE:FREQ=WEEKLY;INTERVAL=2;COUNT=8;WKST=SU;BYDAY=TU,TH |
|
|
|
7013 |
|
|
|
7014 ==> (1997 9:00 AM EDT) September 2,4,16,18,30; |
|
|
|
7015 October 2,14,16 |
|
|
|
7016 |
|
|
|
7017 Monthly on the first Friday for 10 occurrences: |
|
|
|
7018 |
|
|
|
7019 DTSTART;TZID=America/New_York:19970905T090000 |
|
|
|
7020 RRULE:FREQ=MONTHLY;COUNT=10;BYDAY=1FR |
|
|
|
7021 |
|
|
|
7022 ==> (1997 9:00 AM EDT) September 5;October 3 |
|
|
|
7023 (1997 9:00 AM EST) November 7;December 5 |
|
|
|
7024 (1998 9:00 AM EST) January 2;February 6;March 6;April 3 |
|
|
|
7025 (1998 9:00 AM EDT) May 1;June 5 |
|
|
|
7026 |
|
|
|
7027 Monthly on the first Friday until December 24, 1997: |
|
|
|
7028 |
|
|
|
7029 DTSTART;TZID=America/New_York:19970905T090000 |
|
|
|
7030 RRULE:FREQ=MONTHLY;UNTIL=19971224T000000Z;BYDAY=1FR |
|
|
|
7031 |
|
|
|
7032 ==> (1997 9:00 AM EDT) September 5; October 3 |
|
|
|
7033 (1997 9:00 AM EST) November 7; December 5 |
|
|
|
7034 |
|
|
|
7035 Every other month on the first and last Sunday of the month for 10 |
|
|
|
7036 occurrences: |
|
|
|
7037 |
|
|
|
7038 DTSTART;TZID=America/New_York:19970907T090000 |
|
|
|
7039 RRULE:FREQ=MONTHLY;INTERVAL=2;COUNT=10;BYDAY=1SU,-1SU |
|
|
|
7040 |
|
|
|
7041 ==> (1997 9:00 AM EDT) September 7,28 |
|
|
|
7042 (1997 9:00 AM EST) November 2,30 |
|
|
|
7043 (1998 9:00 AM EST) January 4,25;March 1,29 |
|
|
|
7044 (1998 9:00 AM EDT) May 3,31 |
|
|
|
7045 |
|
|
|
7046 Monthly on the second-to-last Monday of the month for 6 months: |
|
|
|
7047 |
|
|
|
7048 DTSTART;TZID=America/New_York:19970922T090000 |
|
|
|
7049 RRULE:FREQ=MONTHLY;COUNT=6;BYDAY=-2MO |
|
|
|
7050 |
|
|
|
7051 ==> (1997 9:00 AM EDT) September 22;October 20 |
|
|
|
7052 (1997 9:00 AM EST) November 17;December 22 |
|
|
|
7053 (1998 9:00 AM EST) January 19;February 16 |
|
|
|
7054 |
|
|
|
7055 |
|
|
|
7056 |
|
|
|
7057 |
|
|
|
7058 Desruisseaux Standards Track [Page 126] |
|
|
|
i 7059 |
|
|
|
Err bitreich.org 70 |
|
|
|
7060 RFC 5545 iCalendar September 2009 |
|
|
|
7061 |
|
|
|
7062 |
|
|
|
7063 Monthly on the third-to-the-last day of the month, forever: |
|
|
|
7064 |
|
|
|
7065 DTSTART;TZID=America/New_York:19970928T090000 |
|
|
|
7066 RRULE:FREQ=MONTHLY;BYMONTHDAY=-3 |
|
|
|
7067 |
|
|
|
7068 ==> (1997 9:00 AM EDT) September 28 |
|
|
|
7069 (1997 9:00 AM EST) October 29;November 28;December 29 |
|
|
|
7070 (1998 9:00 AM EST) January 29;February 26 |
|
|
|
7071 ... |
|
|
|
7072 |
|
|
|
7073 Monthly on the 2nd and 15th of the month for 10 occurrences: |
|
|
|
7074 |
|
|
|
7075 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
7076 RRULE:FREQ=MONTHLY;COUNT=10;BYMONTHDAY=2,15 |
|
|
|
7077 |
|
|
|
7078 ==> (1997 9:00 AM EDT) September 2,15;October 2,15 |
|
|
|
7079 (1997 9:00 AM EST) November 2,15;December 2,15 |
|
|
|
7080 (1998 9:00 AM EST) January 2,15 |
|
|
|
7081 |
|
|
|
7082 Monthly on the first and last day of the month for 10 occurrences: |
|
|
|
7083 |
|
|
|
7084 DTSTART;TZID=America/New_York:19970930T090000 |
|
|
|
7085 RRULE:FREQ=MONTHLY;COUNT=10;BYMONTHDAY=1,-1 |
|
|
|
7086 |
|
|
|
7087 ==> (1997 9:00 AM EDT) September 30;October 1 |
|
|
|
7088 (1997 9:00 AM EST) October 31;November 1,30;December 1,31 |
|
|
|
7089 (1998 9:00 AM EST) January 1,31;February 1 |
|
|
|
7090 |
|
|
|
7091 Every 18 months on the 10th thru 15th of the month for 10 |
|
|
|
7092 occurrences: |
|
|
|
7093 |
|
|
|
7094 DTSTART;TZID=America/New_York:19970910T090000 |
|
|
|
7095 RRULE:FREQ=MONTHLY;INTERVAL=18;COUNT=10;BYMONTHDAY=10,11,12, |
|
|
|
7096 13,14,15 |
|
|
|
7097 |
|
|
|
7098 ==> (1997 9:00 AM EDT) September 10,11,12,13,14,15 |
|
|
|
7099 (1999 9:00 AM EST) March 10,11,12,13 |
|
|
|
7100 |
|
|
|
7101 Every Tuesday, every other month: |
|
|
|
7102 |
|
|
|
7103 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
7104 RRULE:FREQ=MONTHLY;INTERVAL=2;BYDAY=TU |
|
|
|
7105 |
|
|
|
7106 ==> (1997 9:00 AM EDT) September 2,9,16,23,30 |
|
|
|
7107 (1997 9:00 AM EST) November 4,11,18,25 |
|
|
|
7108 (1998 9:00 AM EST) January 6,13,20,27;March 3,10,17,24,31 |
|
|
|
7109 ... |
|
|
|
7110 |
|
|
|
7111 |
|
|
|
7112 |
|
|
|
7113 |
|
|
|
7114 Desruisseaux Standards Track [Page 127] |
|
|
|
i 7115 |
|
|
|
Err bitreich.org 70 |
|
|
|
7116 RFC 5545 iCalendar September 2009 |
|
|
|
7117 |
|
|
|
7118 |
|
|
|
7119 Yearly in June and July for 10 occurrences: |
|
|
|
7120 |
|
|
|
7121 DTSTART;TZID=America/New_York:19970610T090000 |
|
|
|
7122 RRULE:FREQ=YEARLY;COUNT=10;BYMONTH=6,7 |
|
|
|
7123 |
|
|
|
7124 ==> (1997 9:00 AM EDT) June 10;July 10 |
|
|
|
7125 (1998 9:00 AM EDT) June 10;July 10 |
|
|
|
7126 (1999 9:00 AM EDT) June 10;July 10 |
|
|
|
7127 (2000 9:00 AM EDT) June 10;July 10 |
|
|
|
7128 (2001 9:00 AM EDT) June 10;July 10 |
|
|
|
7129 |
|
|
|
7130 Note: Since none of the BYDAY, BYMONTHDAY, or BYYEARDAY |
|
|
|
7131 components are specified, the day is gotten from "DTSTART". |
|
|
|
7132 |
|
|
|
7133 Every other year on January, February, and March for 10 |
|
|
|
7134 occurrences: |
|
|
|
7135 |
|
|
|
7136 DTSTART;TZID=America/New_York:19970310T090000 |
|
|
|
7137 RRULE:FREQ=YEARLY;INTERVAL=2;COUNT=10;BYMONTH=1,2,3 |
|
|
|
7138 |
|
|
|
7139 ==> (1997 9:00 AM EST) March 10 |
|
|
|
7140 (1999 9:00 AM EST) January 10;February 10;March 10 |
|
|
|
7141 (2001 9:00 AM EST) January 10;February 10;March 10 |
|
|
|
7142 (2003 9:00 AM EST) January 10;February 10;March 10 |
|
|
|
7143 |
|
|
|
7144 Every third year on the 1st, 100th, and 200th day for 10 |
|
|
|
7145 occurrences: |
|
|
|
7146 |
|
|
|
7147 DTSTART;TZID=America/New_York:19970101T090000 |
|
|
|
7148 RRULE:FREQ=YEARLY;INTERVAL=3;COUNT=10;BYYEARDAY=1,100,200 |
|
|
|
7149 |
|
|
|
7150 ==> (1997 9:00 AM EST) January 1 |
|
|
|
7151 (1997 9:00 AM EDT) April 10;July 19 |
|
|
|
7152 (2000 9:00 AM EST) January 1 |
|
|
|
7153 (2000 9:00 AM EDT) April 9;July 18 |
|
|
|
7154 (2003 9:00 AM EST) January 1 |
|
|
|
7155 (2003 9:00 AM EDT) April 10;July 19 |
|
|
|
7156 (2006 9:00 AM EST) January 1 |
|
|
|
7157 |
|
|
|
7158 Every 20th Monday of the year, forever: |
|
|
|
7159 |
|
|
|
7160 DTSTART;TZID=America/New_York:19970519T090000 |
|
|
|
7161 RRULE:FREQ=YEARLY;BYDAY=20MO |
|
|
|
7162 |
|
|
|
7163 ==> (1997 9:00 AM EDT) May 19 |
|
|
|
7164 (1998 9:00 AM EDT) May 18 |
|
|
|
7165 (1999 9:00 AM EDT) May 17 |
|
|
|
7166 ... |
|
|
|
7167 |
|
|
|
7168 |
|
|
|
7169 |
|
|
|
7170 Desruisseaux Standards Track [Page 128] |
|
|
|
i 7171 |
|
|
|
Err bitreich.org 70 |
|
|
|
7172 RFC 5545 iCalendar September 2009 |
|
|
|
7173 |
|
|
|
7174 |
|
|
|
7175 Monday of week number 20 (where the default start of the week is |
|
|
|
7176 Monday), forever: |
|
|
|
7177 |
|
|
|
7178 DTSTART;TZID=America/New_York:19970512T090000 |
|
|
|
7179 RRULE:FREQ=YEARLY;BYWEEKNO=20;BYDAY=MO |
|
|
|
7180 |
|
|
|
7181 ==> (1997 9:00 AM EDT) May 12 |
|
|
|
7182 (1998 9:00 AM EDT) May 11 |
|
|
|
7183 (1999 9:00 AM EDT) May 17 |
|
|
|
7184 ... |
|
|
|
7185 |
|
|
|
7186 Every Thursday in March, forever: |
|
|
|
7187 |
|
|
|
7188 DTSTART;TZID=America/New_York:19970313T090000 |
|
|
|
7189 RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=TH |
|
|
|
7190 |
|
|
|
7191 ==> (1997 9:00 AM EST) March 13,20,27 |
|
|
|
7192 (1998 9:00 AM EST) March 5,12,19,26 |
|
|
|
7193 (1999 9:00 AM EST) March 4,11,18,25 |
|
|
|
7194 ... |
|
|
|
7195 |
|
|
|
7196 Every Thursday, but only during June, July, and August, forever: |
|
|
|
7197 |
|
|
|
7198 DTSTART;TZID=America/New_York:19970605T090000 |
|
|
|
7199 RRULE:FREQ=YEARLY;BYDAY=TH;BYMONTH=6,7,8 |
|
|
|
7200 |
|
|
|
7201 ==> (1997 9:00 AM EDT) June 5,12,19,26;July 3,10,17,24,31; |
|
|
|
7202 August 7,14,21,28 |
|
|
|
7203 (1998 9:00 AM EDT) June 4,11,18,25;July 2,9,16,23,30; |
|
|
|
7204 August 6,13,20,27 |
|
|
|
7205 (1999 9:00 AM EDT) June 3,10,17,24;July 1,8,15,22,29; |
|
|
|
7206 August 5,12,19,26 |
|
|
|
7207 ... |
|
|
|
7208 |
|
|
|
7209 Every Friday the 13th, forever: |
|
|
|
7210 |
|
|
|
7211 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
7212 EXDATE;TZID=America/New_York:19970902T090000 |
|
|
|
7213 RRULE:FREQ=MONTHLY;BYDAY=FR;BYMONTHDAY=13 |
|
|
|
7214 |
|
|
|
7215 ==> (1998 9:00 AM EST) February 13;March 13;November 13 |
|
|
|
7216 (1999 9:00 AM EDT) August 13 |
|
|
|
7217 (2000 9:00 AM EDT) October 13 |
|
|
|
7218 ... |
|
|
|
7219 |
|
|
|
7220 |
|
|
|
7221 |
|
|
|
7222 |
|
|
|
7223 |
|
|
|
7224 |
|
|
|
7225 |
|
|
|
7226 Desruisseaux Standards Track [Page 129] |
|
|
|
i 7227 |
|
|
|
Err bitreich.org 70 |
|
|
|
7228 RFC 5545 iCalendar September 2009 |
|
|
|
7229 |
|
|
|
7230 |
|
|
|
7231 The first Saturday that follows the first Sunday of the month, |
|
|
|
7232 forever: |
|
|
|
7233 |
|
|
|
7234 DTSTART;TZID=America/New_York:19970913T090000 |
|
|
|
7235 RRULE:FREQ=MONTHLY;BYDAY=SA;BYMONTHDAY=7,8,9,10,11,12,13 |
|
|
|
7236 |
|
|
|
7237 ==> (1997 9:00 AM EDT) September 13;October 11 |
|
|
|
7238 (1997 9:00 AM EST) November 8;December 13 |
|
|
|
7239 (1998 9:00 AM EST) January 10;February 7;March 7 |
|
|
|
7240 (1998 9:00 AM EDT) April 11;May 9;June 13... |
|
|
|
7241 ... |
|
|
|
7242 |
|
|
|
7243 Every 4 years, the first Tuesday after a Monday in November, |
|
|
|
7244 forever (U.S. Presidential Election day): |
|
|
|
7245 |
|
|
|
7246 DTSTART;TZID=America/New_York:19961105T090000 |
|
|
|
7247 RRULE:FREQ=YEARLY;INTERVAL=4;BYMONTH=11;BYDAY=TU; |
|
|
|
7248 BYMONTHDAY=2,3,4,5,6,7,8 |
|
|
|
7249 |
|
|
|
7250 ==> (1996 9:00 AM EST) November 5 |
|
|
|
7251 (2000 9:00 AM EST) November 7 |
|
|
|
7252 (2004 9:00 AM EST) November 2 |
|
|
|
7253 ... |
|
|
|
7254 |
|
|
|
7255 The third instance into the month of one of Tuesday, Wednesday, or |
|
|
|
7256 Thursday, for the next 3 months: |
|
|
|
7257 |
|
|
|
7258 DTSTART;TZID=America/New_York:19970904T090000 |
|
|
|
7259 RRULE:FREQ=MONTHLY;COUNT=3;BYDAY=TU,WE,TH;BYSETPOS=3 |
|
|
|
7260 |
|
|
|
7261 ==> (1997 9:00 AM EDT) September 4;October 7 |
|
|
|
7262 (1997 9:00 AM EST) November 6 |
|
|
|
7263 |
|
|
|
7264 The second-to-last weekday of the month: |
|
|
|
7265 |
|
|
|
7266 DTSTART;TZID=America/New_York:19970929T090000 |
|
|
|
7267 RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=-2 |
|
|
|
7268 |
|
|
|
7269 ==> (1997 9:00 AM EDT) September 29 |
|
|
|
7270 (1997 9:00 AM EST) October 30;November 27;December 30 |
|
|
|
7271 (1998 9:00 AM EST) January 29;February 26;March 30 |
|
|
|
7272 ... |
|
|
|
7273 |
|
|
|
7274 |
|
|
|
7275 |
|
|
|
7276 |
|
|
|
7277 |
|
|
|
7278 |
|
|
|
7279 |
|
|
|
7280 |
|
|
|
7281 |
|
|
|
7282 Desruisseaux Standards Track [Page 130] |
|
|
|
i 7283 |
|
|
|
Err bitreich.org 70 |
|
|
|
7284 RFC 5545 iCalendar September 2009 |
|
|
|
7285 |
|
|
|
7286 |
|
|
|
7287 Every 3 hours from 9:00 AM to 5:00 PM on a specific day: |
|
|
|
7288 |
|
|
|
7289 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
7290 RRULE:FREQ=HOURLY;INTERVAL=3;UNTIL=19970902T170000Z |
|
|
|
7291 |
|
|
|
7292 ==> (September 2, 1997 EDT) 09:00,12:00,15:00 |
|
|
|
7293 |
|
|
|
7294 Every 15 minutes for 6 occurrences: |
|
|
|
7295 |
|
|
|
7296 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
7297 RRULE:FREQ=MINUTELY;INTERVAL=15;COUNT=6 |
|
|
|
7298 |
|
|
|
7299 ==> (September 2, 1997 EDT) 09:00,09:15,09:30,09:45,10:00,10:15 |
|
|
|
7300 |
|
|
|
7301 Every hour and a half for 4 occurrences: |
|
|
|
7302 |
|
|
|
7303 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
7304 RRULE:FREQ=MINUTELY;INTERVAL=90;COUNT=4 |
|
|
|
7305 |
|
|
|
7306 ==> (September 2, 1997 EDT) 09:00,10:30;12:00;13:30 |
|
|
|
7307 |
|
|
|
7308 Every 20 minutes from 9:00 AM to 4:40 PM every day: |
|
|
|
7309 |
|
|
|
7310 DTSTART;TZID=America/New_York:19970902T090000 |
|
|
|
7311 RRULE:FREQ=DAILY;BYHOUR=9,10,11,12,13,14,15,16;BYMINUTE=0,20,40 |
|
|
|
7312 or |
|
|
|
7313 RRULE:FREQ=MINUTELY;INTERVAL=20;BYHOUR=9,10,11,12,13,14,15,16 |
|
|
|
7314 |
|
|
|
7315 ==> (September 2, 1997 EDT) 9:00,9:20,9:40,10:00,10:20, |
|
|
|
7316 ... 16:00,16:20,16:40 |
|
|
|
7317 (September 3, 1997 EDT) 9:00,9:20,9:40,10:00,10:20, |
|
|
|
7318 ...16:00,16:20,16:40 |
|
|
|
7319 ... |
|
|
|
7320 |
|
|
|
7321 An example where the days generated makes a difference because of |
|
|
|
7322 WKST: |
|
|
|
7323 |
|
|
|
7324 DTSTART;TZID=America/New_York:19970805T090000 |
|
|
|
7325 RRULE:FREQ=WEEKLY;INTERVAL=2;COUNT=4;BYDAY=TU,SU;WKST=MO |
|
|
|
7326 |
|
|
|
7327 ==> (1997 EDT) August 5,10,19,24 |
|
|
|
7328 |
|
|
|
7329 changing only WKST from MO to SU, yields different results... |
|
|
|
7330 |
|
|
|
7331 DTSTART;TZID=America/New_York:19970805T090000 |
|
|
|
7332 RRULE:FREQ=WEEKLY;INTERVAL=2;COUNT=4;BYDAY=TU,SU;WKST=SU |
|
|
|
7333 |
|
|
|
7334 ==> (1997 EDT) August 5,17,19,31 |
|
|
|
7335 |
|
|
|
7336 |
|
|
|
7337 |
|
|
|
7338 Desruisseaux Standards Track [Page 131] |
|
|
|
i 7339 |
|
|
|
Err bitreich.org 70 |
|
|
|
7340 RFC 5545 iCalendar September 2009 |
|
|
|
7341 |
|
|
|
7342 |
|
|
|
7343 An example where an invalid date (i.e., February 30) is ignored. |
|
|
|
7344 |
|
|
|
7345 DTSTART;TZID=America/New_York:20070115T090000 |
|
|
|
7346 RRULE:FREQ=MONTHLY;BYMONTHDAY=15,30;COUNT=5 |
|
|
|
7347 |
|
|
|
7348 ==> (2007 EST) January 15,30 |
|
|
|
7349 (2007 EST) February 15 |
|
|
|
7350 (2007 EDT) March 15,30 |
|
|
|
7351 |
|
|
|
7352 3.8.6. Alarm Component Properties |
|
|
|
7353 |
|
|
|
7354 The following properties specify alarm information in calendar |
|
|
|
7355 components. |
|
|
|
7356 |
|
|
|
7357 3.8.6.1. Action |
|
|
|
7358 |
|
|
|
7359 Property Name: ACTION |
|
|
|
7360 |
|
|
|
7361 Purpose: This property defines the action to be invoked when an |
|
|
|
7362 alarm is triggered. |
|
|
|
7363 |
|
|
|
7364 Value Type: TEXT |
|
|
|
7365 |
|
|
|
7366 Property Parameters: IANA and non-standard property parameters can |
|
|
|
7367 be specified on this property. |
|
|
|
7368 |
|
|
|
7369 Conformance: This property MUST be specified once in a "VALARM" |
|
|
|
7370 calendar component. |
|
|
|
7371 |
|
|
|
7372 Description: Each "VALARM" calendar component has a particular type |
|
|
|
7373 of action with which it is associated. This property specifies |
|
|
|
7374 the type of action. Applications MUST ignore alarms with x-name |
|
|
|
7375 and iana-token values they don't recognize. |
|
|
|
7376 |
|
|
|
7377 Format Definition: This property is defined by the following |
|
|
|
7378 notation: |
|
|
|
7379 |
|
|
|
7380 action = "ACTION" actionparam ":" actionvalue CRLF |
|
|
|
7381 |
|
|
|
7382 actionparam = *(";" other-param) |
|
|
|
7383 |
|
|
|
7384 |
|
|
|
7385 actionvalue = "AUDIO" / "DISPLAY" / "EMAIL" |
|
|
|
7386 / iana-token / x-name |
|
|
|
7387 |
|
|
|
7388 Example: The following are examples of this property in a "VALARM" |
|
|
|
7389 calendar component: |
|
|
|
7390 |
|
|
|
7391 |
|
|
|
7392 |
|
|
|
7393 |
|
|
|
7394 Desruisseaux Standards Track [Page 132] |
|
|
|
i 7395 |
|
|
|
Err bitreich.org 70 |
|
|
|
7396 RFC 5545 iCalendar September 2009 |
|
|
|
7397 |
|
|
|
7398 |
|
|
|
7399 ACTION:AUDIO |
|
|
|
7400 |
|
|
|
7401 ACTION:DISPLAY |
|
|
|
7402 |
|
|
|
7403 3.8.6.2. Repeat Count |
|
|
|
7404 |
|
|
|
7405 Property Name: REPEAT |
|
|
|
7406 |
|
|
|
7407 Purpose: This property defines the number of times the alarm should |
|
|
|
7408 be repeated, after the initial trigger. |
|
|
|
7409 |
|
|
|
7410 Value Type: INTEGER |
|
|
|
7411 |
|
|
|
7412 Property Parameters: IANA and non-standard property parameters can |
|
|
|
7413 be specified on this property. |
|
|
|
7414 |
|
|
|
7415 Conformance: This property can be specified in a "VALARM" calendar |
|
|
|
7416 component. |
|
|
|
7417 |
|
|
|
7418 Description: This property defines the number of times an alarm |
|
|
|
7419 should be repeated after its initial trigger. If the alarm |
|
|
|
7420 triggers more than once, then this property MUST be specified |
|
|
|
7421 along with the "DURATION" property. |
|
|
|
7422 |
|
|
|
7423 Format Definition: This property is defined by the following |
|
|
|
7424 notation: |
|
|
|
7425 |
|
|
|
7426 repeat = "REPEAT" repparam ":" integer CRLF |
|
|
|
7427 ;Default is "0", zero. |
|
|
|
7428 |
|
|
|
7429 repparam = *(";" other-param) |
|
|
|
7430 |
|
|
|
7431 Example: The following is an example of this property for an alarm |
|
|
|
7432 that repeats 4 additional times with a 5-minute delay after the |
|
|
|
7433 initial triggering of the alarm: |
|
|
|
7434 |
|
|
|
7435 REPEAT:4 |
|
|
|
7436 DURATION:PT5M |
|
|
|
7437 |
|
|
|
7438 3.8.6.3. Trigger |
|
|
|
7439 |
|
|
|
7440 Property Name: TRIGGER |
|
|
|
7441 |
|
|
|
7442 Purpose: This property specifies when an alarm will trigger. |
|
|
|
7443 |
|
|
|
7444 Value Type: The default value type is DURATION. The value type can |
|
|
|
7445 be set to a DATE-TIME value type, in which case the value MUST |
|
|
|
7446 specify a UTC-formatted DATE-TIME value. |
|
|
|
7447 |
|
|
|
7448 |
|
|
|
7449 |
|
|
|
7450 Desruisseaux Standards Track [Page 133] |
|
|
|
i 7451 |
|
|
|
Err bitreich.org 70 |
|
|
|
7452 RFC 5545 iCalendar September 2009 |
|
|
|
7453 |
|
|
|
7454 |
|
|
|
7455 Property Parameters: IANA, non-standard, value data type, time zone |
|
|
|
7456 identifier, or trigger relationship property parameters can be |
|
|
|
7457 specified on this property. The trigger relationship property |
|
|
|
7458 parameter MUST only be specified when the value type is |
|
|
|
7459 "DURATION". |
|
|
|
7460 |
|
|
|
7461 Conformance: This property MUST be specified in the "VALARM" |
|
|
|
7462 calendar component. |
|
|
|
7463 |
|
|
|
7464 Description: This property defines when an alarm will trigger. The |
|
|
|
7465 default value type is DURATION, specifying a relative time for the |
|
|
|
7466 trigger of the alarm. The default duration is relative to the |
|
|
|
7467 start of an event or to-do with which the alarm is associated. |
|
|
|
7468 The duration can be explicitly set to trigger from either the end |
|
|
|
7469 or the start of the associated event or to-do with the "RELATED" |
|
|
|
7470 parameter. A value of START will set the alarm to trigger off the |
|
|
|
7471 start of the associated event or to-do. A value of END will set |
|
|
|
7472 the alarm to trigger off the end of the associated event or to-do. |
|
|
|
7473 |
|
|
|
7474 Either a positive or negative duration may be specified for the |
|
|
|
7475 "TRIGGER" property. An alarm with a positive duration is |
|
|
|
7476 triggered after the associated start or end of the event or to-do. |
|
|
|
7477 An alarm with a negative duration is triggered before the |
|
|
|
7478 associated start or end of the event or to-do. |
|
|
|
7479 |
|
|
|
7480 The "RELATED" property parameter is not valid if the value type of |
|
|
|
7481 the property is set to DATE-TIME (i.e., for an absolute date and |
|
|
|
7482 time alarm trigger). If a value type of DATE-TIME is specified, |
|
|
|
7483 then the property value MUST be specified in the UTC time format. |
|
|
|
7484 If an absolute trigger is specified on an alarm for a recurring |
|
|
|
7485 event or to-do, then the alarm will only trigger for the specified |
|
|
|
7486 absolute DATE-TIME, along with any specified repeating instances. |
|
|
|
7487 |
|
|
|
7488 If the trigger is set relative to START, then the "DTSTART" |
|
|
|
7489 property MUST be present in the associated "VEVENT" or "VTODO" |
|
|
|
7490 calendar component. If an alarm is specified for an event with |
|
|
|
7491 the trigger set relative to the END, then the "DTEND" property or |
|
|
|
7492 the "DTSTART" and "DURATION " properties MUST be present in the |
|
|
|
7493 associated "VEVENT" calendar component. If the alarm is specified |
|
|
|
7494 for a to-do with a trigger set relative to the END, then either |
|
|
|
7495 the "DUE" property or the "DTSTART" and "DURATION " properties |
|
|
|
7496 MUST be present in the associated "VTODO" calendar component. |
|
|
|
7497 |
|
|
|
7498 Alarms specified in an event or to-do that is defined in terms of |
|
|
|
7499 a DATE value type will be triggered relative to 00:00:00 of the |
|
|
|
7500 user's configured time zone on the specified date, or relative to |
|
|
|
7501 00:00:00 UTC on the specified date if no configured time zone can |
|
|
|
7502 be found for the user. For example, if "DTSTART" is a DATE value |
|
|
|
7503 |
|
|
|
7504 |
|
|
|
7505 |
|
|
|
7506 Desruisseaux Standards Track [Page 134] |
|
|
|
i 7507 |
|
|
|
Err bitreich.org 70 |
|
|
|
7508 RFC 5545 iCalendar September 2009 |
|
|
|
7509 |
|
|
|
7510 |
|
|
|
7511 set to 19980205 then the duration trigger will be relative to |
|
|
|
7512 19980205T000000 America/New_York for a user configured with the |
|
|
|
7513 America/New_York time zone. |
|
|
|
7514 |
|
|
|
7515 Format Definition: This property is defined by the following |
|
|
|
7516 notation: |
|
|
|
7517 |
|
|
|
7518 trigger = "TRIGGER" (trigrel / trigabs) CRLF |
|
|
|
7519 |
|
|
|
7520 trigrel = *( |
|
|
|
7521 ; |
|
|
|
7522 ; The following are OPTIONAL, |
|
|
|
7523 ; but MUST NOT occur more than once. |
|
|
|
7524 ; |
|
|
|
7525 (";" "VALUE" "=" "DURATION") / |
|
|
|
7526 (";" trigrelparam) / |
|
|
|
7527 ; |
|
|
|
7528 ; The following is OPTIONAL, |
|
|
|
7529 ; and MAY occur more than once. |
|
|
|
7530 ; |
|
|
|
7531 (";" other-param) |
|
|
|
7532 ; |
|
|
|
7533 ) ":" dur-value |
|
|
|
7534 |
|
|
|
7535 trigabs = *( |
|
|
|
7536 ; |
|
|
|
7537 ; The following is REQUIRED, |
|
|
|
7538 ; but MUST NOT occur more than once. |
|
|
|
7539 ; |
|
|
|
7540 (";" "VALUE" "=" "DATE-TIME") / |
|
|
|
7541 ; |
|
|
|
7542 ; The following is OPTIONAL, |
|
|
|
7543 ; and MAY occur more than once. |
|
|
|
7544 ; |
|
|
|
7545 (";" other-param) |
|
|
|
7546 ; |
|
|
|
7547 ) ":" date-time |
|
|
|
7548 |
|
|
|
7549 Example: A trigger set 15 minutes prior to the start of the event or |
|
|
|
7550 to-do. |
|
|
|
7551 |
|
|
|
7552 TRIGGER:-PT15M |
|
|
|
7553 |
|
|
|
7554 A trigger set five minutes after the end of an event or the due |
|
|
|
7555 date of a to-do. |
|
|
|
7556 |
|
|
|
7557 TRIGGER;RELATED=END:PT5M |
|
|
|
7558 |
|
|
|
7559 |
|
|
|
7560 |
|
|
|
7561 |
|
|
|
7562 Desruisseaux Standards Track [Page 135] |
|
|
|
i 7563 |
|
|
|
Err bitreich.org 70 |
|
|
|
7564 RFC 5545 iCalendar September 2009 |
|
|
|
7565 |
|
|
|
7566 |
|
|
|
7567 A trigger set to an absolute DATE-TIME. |
|
|
|
7568 |
|
|
|
7569 TRIGGER;VALUE=DATE-TIME:19980101T050000Z |
|
|
|
7570 |
|
|
|
7571 3.8.7. Change Management Component Properties |
|
|
|
7572 |
|
|
|
7573 The following properties specify change management information in |
|
|
|
7574 calendar components. |
|
|
|
7575 |
|
|
|
7576 3.8.7.1. Date-Time Created |
|
|
|
7577 |
|
|
|
7578 Property Name: CREATED |
|
|
|
7579 |
|
|
|
7580 Purpose: This property specifies the date and time that the calendar |
|
|
|
7581 information was created by the calendar user agent in the calendar |
|
|
|
7582 store. |
|
|
|
7583 |
|
|
|
7584 Note: This is analogous to the creation date and time for a |
|
|
|
7585 file in the file system. |
|
|
|
7586 |
|
|
|
7587 Value Type: DATE-TIME |
|
|
|
7588 |
|
|
|
7589 Property Parameters: IANA and non-standard property parameters can |
|
|
|
7590 be specified on this property. |
|
|
|
7591 |
|
|
|
7592 Conformance: The property can be specified once in "VEVENT", |
|
|
|
7593 "VTODO", or "VJOURNAL" calendar components. The value MUST be |
|
|
|
7594 specified as a date with UTC time. |
|
|
|
7595 |
|
|
|
7596 Description: This property specifies the date and time that the |
|
|
|
7597 calendar information was created by the calendar user agent in the |
|
|
|
7598 calendar store. |
|
|
|
7599 |
|
|
|
7600 Format Definition: This property is defined by the following |
|
|
|
7601 notation: |
|
|
|
7602 |
|
|
|
7603 created = "CREATED" creaparam ":" date-time CRLF |
|
|
|
7604 |
|
|
|
7605 creaparam = *(";" other-param) |
|
|
|
7606 |
|
|
|
7607 Example: The following is an example of this property: |
|
|
|
7608 |
|
|
|
7609 CREATED:19960329T133000Z |
|
|
|
7610 |
|
|
|
7611 |
|
|
|
7612 |
|
|
|
7613 |
|
|
|
7614 |
|
|
|
7615 |
|
|
|
7616 |
|
|
|
7617 |
|
|
|
7618 Desruisseaux Standards Track [Page 136] |
|
|
|
i 7619 |
|
|
|
Err bitreich.org 70 |
|
|
|
7620 RFC 5545 iCalendar September 2009 |
|
|
|
7621 |
|
|
|
7622 |
|
|
|
7623 3.8.7.2. Date-Time Stamp |
|
|
|
7624 |
|
|
|
7625 Property Name: DTSTAMP |
|
|
|
7626 |
|
|
|
7627 Purpose: In the case of an iCalendar object that specifies a |
|
|
|
7628 "METHOD" property, this property specifies the date and time that |
|
|
|
7629 the instance of the iCalendar object was created. In the case of |
|
|
|
7630 an iCalendar object that doesn't specify a "METHOD" property, this |
|
|
|
7631 property specifies the date and time that the information |
|
|
|
7632 associated with the calendar component was last revised in the |
|
|
|
7633 calendar store. |
|
|
|
7634 |
|
|
|
7635 Value Type: DATE-TIME |
|
|
|
7636 |
|
|
|
7637 Property Parameters: IANA and non-standard property parameters can |
|
|
|
7638 be specified on this property. |
|
|
|
7639 |
|
|
|
7640 Conformance: This property MUST be included in the "VEVENT", |
|
|
|
7641 "VTODO", "VJOURNAL", or "VFREEBUSY" calendar components. |
|
|
|
7642 |
|
|
|
7643 Description: The value MUST be specified in the UTC time format. |
|
|
|
7644 |
|
|
|
7645 This property is also useful to protocols such as [2447bis] that |
|
|
|
7646 have inherent latency issues with the delivery of content. This |
|
|
|
7647 property will assist in the proper sequencing of messages |
|
|
|
7648 containing iCalendar objects. |
|
|
|
7649 |
|
|
|
7650 In the case of an iCalendar object that specifies a "METHOD" |
|
|
|
7651 property, this property differs from the "CREATED" and "LAST- |
|
|
|
7652 MODIFIED" properties. These two properties are used to specify |
|
|
|
7653 when the particular calendar data in the calendar store was |
|
|
|
7654 created and last modified. This is different than when the |
|
|
|
7655 iCalendar object representation of the calendar service |
|
|
|
7656 information was created or last modified. |
|
|
|
7657 |
|
|
|
7658 In the case of an iCalendar object that doesn't specify a "METHOD" |
|
|
|
7659 property, this property is equivalent to the "LAST-MODIFIED" |
|
|
|
7660 property. |
|
|
|
7661 |
|
|
|
7662 Format Definition: This property is defined by the following |
|
|
|
7663 notation: |
|
|
|
7664 |
|
|
|
7665 dtstamp = "DTSTAMP" stmparam ":" date-time CRLF |
|
|
|
7666 |
|
|
|
7667 stmparam = *(";" other-param) |
|
|
|
7668 |
|
|
|
7669 |
|
|
|
7670 |
|
|
|
7671 |
|
|
|
7672 |
|
|
|
7673 |
|
|
|
7674 Desruisseaux Standards Track [Page 137] |
|
|
|
i 7675 |
|
|
|
Err bitreich.org 70 |
|
|
|
7676 RFC 5545 iCalendar September 2009 |
|
|
|
7677 |
|
|
|
7678 |
|
|
|
7679 Example: |
|
|
|
7680 |
|
|
|
7681 DTSTAMP:19971210T080000Z |
|
|
|
7682 |
|
|
|
7683 3.8.7.3. Last Modified |
|
|
|
7684 |
|
|
|
7685 Property Name: LAST-MODIFIED |
|
|
|
7686 |
|
|
|
7687 Purpose: This property specifies the date and time that the |
|
|
|
7688 information associated with the calendar component was last |
|
|
|
7689 revised in the calendar store. |
|
|
|
7690 |
|
|
|
7691 Note: This is analogous to the modification date and time for a |
|
|
|
7692 file in the file system. |
|
|
|
7693 |
|
|
|
7694 Value Type: DATE-TIME |
|
|
|
7695 |
|
|
|
7696 Property Parameters: IANA and non-standard property parameters can |
|
|
|
7697 be specified on this property. |
|
|
|
7698 |
|
|
|
7699 Conformance: This property can be specified in the "VEVENT", |
|
|
|
7700 "VTODO", "VJOURNAL", or "VTIMEZONE" calendar components. |
|
|
|
7701 |
|
|
|
7702 Description: The property value MUST be specified in the UTC time |
|
|
|
7703 format. |
|
|
|
7704 |
|
|
|
7705 Format Definition: This property is defined by the following |
|
|
|
7706 notation: |
|
|
|
7707 |
|
|
|
7708 last-mod = "LAST-MODIFIED" lstparam ":" date-time CRLF |
|
|
|
7709 |
|
|
|
7710 lstparam = *(";" other-param) |
|
|
|
7711 |
|
|
|
7712 Example: The following is an example of this property: |
|
|
|
7713 |
|
|
|
7714 LAST-MODIFIED:19960817T133000Z |
|
|
|
7715 |
|
|
|
7716 3.8.7.4. Sequence Number |
|
|
|
7717 |
|
|
|
7718 Property Name: SEQUENCE |
|
|
|
7719 |
|
|
|
7720 Purpose: This property defines the revision sequence number of the |
|
|
|
7721 calendar component within a sequence of revisions. |
|
|
|
7722 |
|
|
|
7723 Value Type: INTEGER |
|
|
|
7724 |
|
|
|
7725 Property Parameters: IANA and non-standard property parameters can |
|
|
|
7726 be specified on this property. |
|
|
|
7727 |
|
|
|
7728 |
|
|
|
7729 |
|
|
|
7730 Desruisseaux Standards Track [Page 138] |
|
|
|
i 7731 |
|
|
|
Err bitreich.org 70 |
|
|
|
7732 RFC 5545 iCalendar September 2009 |
|
|
|
7733 |
|
|
|
7734 |
|
|
|
7735 Conformance: The property can be specified in "VEVENT", "VTODO", or |
|
|
|
7736 "VJOURNAL" calendar component. |
|
|
|
7737 |
|
|
|
7738 Description: When a calendar component is created, its sequence |
|
|
|
7739 number is 0. It is monotonically incremented by the "Organizer's" |
|
|
|
7740 CUA each time the "Organizer" makes a significant revision to the |
|
|
|
7741 calendar component. |
|
|
|
7742 |
|
|
|
7743 The "Organizer" includes this property in an iCalendar object that |
|
|
|
7744 it sends to an "Attendee" to specify the current version of the |
|
|
|
7745 calendar component. |
|
|
|
7746 |
|
|
|
7747 The "Attendee" includes this property in an iCalendar object that |
|
|
|
7748 it sends to the "Organizer" to specify the version of the calendar |
|
|
|
7749 component to which the "Attendee" is referring. |
|
|
|
7750 |
|
|
|
7751 A change to the sequence number is not the mechanism that an |
|
|
|
7752 "Organizer" uses to request a response from the "Attendees". The |
|
|
|
7753 "RSVP" parameter on the "ATTENDEE" property is used by the |
|
|
|
7754 "Organizer" to indicate that a response from the "Attendees" is |
|
|
|
7755 requested. |
|
|
|
7756 |
|
|
|
7757 Recurrence instances of a recurring component MAY have different |
|
|
|
7758 sequence numbers. |
|
|
|
7759 |
|
|
|
7760 Format Definition: This property is defined by the following |
|
|
|
7761 notation: |
|
|
|
7762 |
|
|
|
7763 seq = "SEQUENCE" seqparam ":" integer CRLF |
|
|
|
7764 ; Default is "0" |
|
|
|
7765 |
|
|
|
7766 seqparam = *(";" other-param) |
|
|
|
7767 |
|
|
|
7768 Example: The following is an example of this property for a calendar |
|
|
|
7769 component that was just created by the "Organizer": |
|
|
|
7770 |
|
|
|
7771 SEQUENCE:0 |
|
|
|
7772 |
|
|
|
7773 The following is an example of this property for a calendar |
|
|
|
7774 component that has been revised two different times by the |
|
|
|
7775 "Organizer": |
|
|
|
7776 |
|
|
|
7777 SEQUENCE:2 |
|
|
|
7778 |
|
|
|
7779 3.8.8. Miscellaneous Component Properties |
|
|
|
7780 |
|
|
|
7781 The following properties specify information about a number of |
|
|
|
7782 miscellaneous features of calendar components. |
|
|
|
7783 |
|
|
|
7784 |
|
|
|
7785 |
|
|
|
7786 Desruisseaux Standards Track [Page 139] |
|
|
|
i 7787 |
|
|
|
Err bitreich.org 70 |
|
|
|
7788 RFC 5545 iCalendar September 2009 |
|
|
|
7789 |
|
|
|
7790 |
|
|
|
7791 3.8.8.1. IANA Properties |
|
|
|
7792 |
|
|
|
7793 Property Name: An IANA-registered property name |
|
|
|
7794 |
|
|
|
7795 Value Type: The default value type is TEXT. The value type can be |
|
|
|
7796 set to any value type. |
|
|
|
7797 |
|
|
|
7798 Property Parameters: Any parameter can be specified on this |
|
|
|
7799 property. |
|
|
|
7800 |
|
|
|
7801 Description: This specification allows other properties registered |
|
|
|
7802 with IANA to be specified in any calendar components. Compliant |
|
|
|
7803 applications are expected to be able to parse these other IANA- |
|
|
|
7804 registered properties but can ignore them. |
|
|
|
7805 |
|
|
|
7806 Format Definition: This property is defined by the following |
|
|
|
7807 notation: |
|
|
|
7808 |
|
|
|
7809 iana-prop = iana-token *(";" icalparameter) ":" value CRLF |
|
|
|
7810 |
|
|
|
7811 Example: The following are examples of properties that might be |
|
|
|
7812 registered to IANA: |
|
|
|
7813 |
|
|
|
7814 DRESSCODE:CASUAL |
|
|
|
7815 |
|
|
|
7816 NON-SMOKING;VALUE=BOOLEAN:TRUE |
|
|
|
7817 |
|
|
|
7818 3.8.8.2. Non-Standard Properties |
|
|
|
7819 |
|
|
|
7820 Property Name: Any property name with a "X-" prefix |
|
|
|
7821 |
|
|
|
7822 Purpose: This class of property provides a framework for defining |
|
|
|
7823 non-standard properties. |
|
|
|
7824 |
|
|
|
7825 Value Type: The default value type is TEXT. The value type can be |
|
|
|
7826 set to any value type. |
|
|
|
7827 |
|
|
|
7828 Property Parameters: IANA, non-standard, and language property |
|
|
|
7829 parameters can be specified on this property. |
|
|
|
7830 |
|
|
|
7831 Conformance: This property can be specified in any calendar |
|
|
|
7832 component. |
|
|
|
7833 |
|
|
|
7834 Description: The MIME Calendaring and Scheduling Content Type |
|
|
|
7835 provides a "standard mechanism for doing non-standard things". |
|
|
|
7836 This extension support is provided for implementers to "push the |
|
|
|
7837 envelope" on the existing version of the memo. Extension |
|
|
|
7838 properties are specified by property and/or property parameter |
|
|
|
7839 |
|
|
|
7840 |
|
|
|
7841 |
|
|
|
7842 Desruisseaux Standards Track [Page 140] |
|
|
|
i 7843 |
|
|
|
Err bitreich.org 70 |
|
|
|
7844 RFC 5545 iCalendar September 2009 |
|
|
|
7845 |
|
|
|
7846 |
|
|
|
7847 names that have the prefix text of "X-" (the two-character |
|
|
|
7848 sequence: LATIN CAPITAL LETTER X character followed by the HYPHEN- |
|
|
|
7849 MINUS character). It is recommended that vendors concatenate onto |
|
|
|
7850 this sentinel another short prefix text to identify the vendor. |
|
|
|
7851 This will facilitate readability of the extensions and minimize |
|
|
|
7852 possible collision of names between different vendors. User |
|
|
|
7853 agents that support this content type are expected to be able to |
|
|
|
7854 parse the extension properties and property parameters but can |
|
|
|
7855 ignore them. |
|
|
|
7856 |
|
|
|
7857 At present, there is no registration authority for names of |
|
|
|
7858 extension properties and property parameters. The value type for |
|
|
|
7859 this property is TEXT. Optionally, the value type can be any of |
|
|
|
7860 the other valid value types. |
|
|
|
7861 |
|
|
|
7862 Format Definition: This property is defined by the following |
|
|
|
7863 notation: |
|
|
|
7864 |
|
|
|
7865 x-prop = x-name *(";" icalparameter) ":" value CRLF |
|
|
|
7866 |
|
|
|
7867 Example: The following might be the ABC vendor's extension for an |
|
|
|
7868 audio-clip form of subject property: |
|
|
|
7869 |
|
|
|
7870 X-ABC-MMSUBJ;VALUE=URI;FMTTYPE=audio/basic:http://www.example. |
|
|
|
7871 org/mysubj.au |
|
|
|
7872 |
|
|
|
7873 3.8.8.3. Request Status |
|
|
|
7874 |
|
|
|
7875 Property Name: REQUEST-STATUS |
|
|
|
7876 |
|
|
|
7877 Purpose: This property defines the status code returned for a |
|
|
|
7878 scheduling request. |
|
|
|
7879 |
|
|
|
7880 Value Type: TEXT |
|
|
|
7881 |
|
|
|
7882 Property Parameters: IANA, non-standard, and language property |
|
|
|
7883 parameters can be specified on this property. |
|
|
|
7884 |
|
|
|
7885 Conformance: The property can be specified in the "VEVENT", "VTODO", |
|
|
|
7886 "VJOURNAL", or "VFREEBUSY" calendar component. |
|
|
|
7887 |
|
|
|
7888 Description: This property is used to return status code information |
|
|
|
7889 related to the processing of an associated iCalendar object. The |
|
|
|
7890 value type for this property is TEXT. |
|
|
|
7891 |
|
|
|
7892 |
|
|
|
7893 |
|
|
|
7894 |
|
|
|
7895 |
|
|
|
7896 |
|
|
|
7897 |
|
|
|
7898 Desruisseaux Standards Track [Page 141] |
|
|
|
i 7899 |
|
|
|
Err bitreich.org 70 |
|
|
|
7900 RFC 5545 iCalendar September 2009 |
|
|
|
7901 |
|
|
|
7902 |
|
|
|
7903 The value consists of a short return status component, a longer |
|
|
|
7904 return status description component, and optionally a status- |
|
|
|
7905 specific data component. The components of the value are |
|
|
|
7906 separated by the SEMICOLON character. |
|
|
|
7907 |
|
|
|
7908 The short return status is a PERIOD character separated pair or |
|
|
|
7909 3-tuple of integers. For example, "3.1" or "3.1.1". The |
|
|
|
7910 successive levels of integers provide for a successive level of |
|
|
|
7911 status code granularity. |
|
|
|
7912 |
|
|
|
7913 The following are initial classes for the return status code. |
|
|
|
7914 Individual iCalendar object methods will define specific return |
|
|
|
7915 status codes for these classes. In addition, other classes for |
|
|
|
7916 the return status code may be defined using the registration |
|
|
|
7917 process defined later in this memo. |
|
|
|
7918 |
|
|
|
7919 +--------+----------------------------------------------------------+ |
|
|
|
7920 | Short | Longer Return Status Description | |
|
|
|
7921 | Return | | |
|
|
|
7922 | Status | | |
|
|
|
7923 | Code | | |
|
|
|
7924 +--------+----------------------------------------------------------+ |
|
|
|
7925 | 1.xx | Preliminary success. This class of status code | |
|
|
|
7926 | | indicates that the request has been initially processed | |
|
|
|
7927 | | but that completion is pending. | |
|
|
|
7928 | | | |
|
|
|
7929 | 2.xx | Successful. This class of status code indicates that | |
|
|
|
7930 | | the request was completed successfully. However, the | |
|
|
|
7931 | | exact status code can indicate that a fallback has been | |
|
|
|
7932 | | taken. | |
|
|
|
7933 | | | |
|
|
|
7934 | 3.xx | Client Error. This class of status code indicates that | |
|
|
|
7935 | | the request was not successful. The error is the result | |
|
|
|
7936 | | of either a syntax or a semantic error in the client- | |
|
|
|
7937 | | formatted request. Request should not be retried until | |
|
|
|
7938 | | the condition in the request is corrected. | |
|
|
|
7939 | | | |
|
|
|
7940 | 4.xx | Scheduling Error. This class of status code indicates | |
|
|
|
7941 | | that the request was not successful. Some sort of error | |
|
|
|
7942 | | occurred within the calendaring and scheduling service, | |
|
|
|
7943 | | not directly related to the request itself. | |
|
|
|
7944 +--------+----------------------------------------------------------+ |
|
|
|
7945 |
|
|
|
7946 |
|
|
|
7947 |
|
|
|
7948 |
|
|
|
7949 |
|
|
|
7950 |
|
|
|
7951 |
|
|
|
7952 |
|
|
|
7953 |
|
|
|
7954 Desruisseaux Standards Track [Page 142] |
|
|
|
i 7955 |
|
|
|
Err bitreich.org 70 |
|
|
|
7956 RFC 5545 iCalendar September 2009 |
|
|
|
7957 |
|
|
|
7958 |
|
|
|
7959 Format Definition: This property is defined by the following |
|
|
|
7960 notation: |
|
|
|
7961 |
|
|
|
7962 rstatus = "REQUEST-STATUS" rstatparam ":" |
|
|
|
7963 statcode ";" statdesc [";" extdata] |
|
|
|
7964 |
|
|
|
7965 rstatparam = *( |
|
|
|
7966 ; |
|
|
|
7967 ; The following is OPTIONAL, |
|
|
|
7968 ; but MUST NOT occur more than once. |
|
|
|
7969 ; |
|
|
|
7970 (";" languageparam) / |
|
|
|
7971 ; |
|
|
|
7972 ; The following is OPTIONAL, |
|
|
|
7973 ; and MAY occur more than once. |
|
|
|
7974 ; |
|
|
|
7975 (";" other-param) |
|
|
|
7976 ; |
|
|
|
7977 ) |
|
|
|
7978 |
|
|
|
7979 statcode = 1*DIGIT 1*2("." 1*DIGIT) |
|
|
|
7980 ;Hierarchical, numeric return status code |
|
|
|
7981 |
|
|
|
7982 statdesc = text |
|
|
|
7983 ;Textual status description |
|
|
|
7984 |
|
|
|
7985 extdata = text |
|
|
|
7986 ;Textual exception data. For example, the offending property |
|
|
|
7987 ;name and value or complete property line. |
|
|
|
7988 |
|
|
|
7989 Example: The following are some possible examples of this property. |
|
|
|
7990 |
|
|
|
7991 The COMMA and SEMICOLON separator characters in the property value |
|
|
|
7992 are BACKSLASH character escaped because they appear in a text |
|
|
|
7993 value. |
|
|
|
7994 |
|
|
|
7995 REQUEST-STATUS:2.0;Success |
|
|
|
7996 |
|
|
|
7997 REQUEST-STATUS:3.1;Invalid property value;DTSTART:96-Apr-01 |
|
|
|
7998 |
|
|
|
7999 REQUEST-STATUS:2.8; Success\, repeating event ignored. Scheduled |
|
|
|
8000 as a single event.;RRULE:FREQ=WEEKLY\;INTERVAL=2 |
|
|
|
8001 |
|
|
|
8002 REQUEST-STATUS:4.1;Event conflict. Date-time is busy. |
|
|
|
8003 |
|
|
|
8004 REQUEST-STATUS:3.7;Invalid calendar user;ATTENDEE: |
|
|
|
8005 mailto:jsmith@example.com |
|
|
|
8006 |
|
|
|
8007 |
|
|
|
8008 |
|
|
|
8009 |
|
|
|
8010 Desruisseaux Standards Track [Page 143] |
|
|
|
i 8011 |
|
|
|
Err bitreich.org 70 |
|
|
|
8012 RFC 5545 iCalendar September 2009 |
|
|
|
8013 |
|
|
|
8014 |
|
|
|
8015 4. iCalendar Object Examples |
|
|
|
8016 |
|
|
|
8017 The following examples are provided as an informational source of |
|
|
|
8018 illustrative iCalendar objects consistent with this content type. |
|
|
|
8019 |
|
|
|
8020 The following example specifies a three-day conference that begins at |
|
|
|
8021 2:30 P.M. UTC, September 18, 1996 and ends at 10:00 P.M. UTC, |
|
|
|
8022 September 20, 1996. |
|
|
|
8023 |
|
|
|
8024 BEGIN:VCALENDAR |
|
|
|
8025 PRODID:-//xyz Corp//NONSGML PDA Calendar Version 1.0//EN |
|
|
|
8026 VERSION:2.0 |
|
|
|
8027 BEGIN:VEVENT |
|
|
|
8028 DTSTAMP:19960704T120000Z |
|
|
|
8029 UID:uid1@example.com |
|
|
|
8030 ORGANIZER:mailto:jsmith@example.com |
|
|
|
8031 DTSTART:19960918T143000Z |
|
|
|
8032 DTEND:19960920T220000Z |
|
|
|
8033 STATUS:CONFIRMED |
|
|
|
8034 CATEGORIES:CONFERENCE |
|
|
|
8035 SUMMARY:Networld+Interop Conference |
|
|
|
8036 DESCRIPTION:Networld+Interop Conference |
|
|
|
8037 and Exhibit\nAtlanta World Congress Center\n |
|
|
|
8038 Atlanta\, Georgia |
|
|
|
8039 END:VEVENT |
|
|
|
8040 END:VCALENDAR |
|
|
|
8041 |
|
|
|
8042 The following example specifies a group-scheduled meeting that begins |
|
|
|
8043 at 8:30 AM EST on March 12, 1998 and ends at 9:30 AM EST on March 12, |
|
|
|
8044 1998. The "Organizer" has scheduled the meeting with one or more |
|
|
|
8045 calendar users in a group. A time zone specification for Eastern |
|
|
|
8046 United States has been specified. |
|
|
|
8047 |
|
|
|
8048 BEGIN:VCALENDAR |
|
|
|
8049 PRODID:-//RDU Software//NONSGML HandCal//EN |
|
|
|
8050 VERSION:2.0 |
|
|
|
8051 BEGIN:VTIMEZONE |
|
|
|
8052 TZID:America/New_York |
|
|
|
8053 BEGIN:STANDARD |
|
|
|
8054 DTSTART:19981025T020000 |
|
|
|
8055 TZOFFSETFROM:-0400 |
|
|
|
8056 TZOFFSETTO:-0500 |
|
|
|
8057 TZNAME:EST |
|
|
|
8058 END:STANDARD |
|
|
|
8059 BEGIN:DAYLIGHT |
|
|
|
8060 DTSTART:19990404T020000 |
|
|
|
8061 TZOFFSETFROM:-0500 |
|
|
|
8062 TZOFFSETTO:-0400 |
|
|
|
8063 |
|
|
|
8064 |
|
|
|
8065 |
|
|
|
8066 Desruisseaux Standards Track [Page 144] |
|
|
|
i 8067 |
|
|
|
Err bitreich.org 70 |
|
|
|
8068 RFC 5545 iCalendar September 2009 |
|
|
|
8069 |
|
|
|
8070 |
|
|
|
8071 TZNAME:EDT |
|
|
|
8072 END:DAYLIGHT |
|
|
|
8073 END:VTIMEZONE |
|
|
|
8074 BEGIN:VEVENT |
|
|
|
8075 DTSTAMP:19980309T231000Z |
|
|
|
8076 UID:guid-1.example.com |
|
|
|
8077 ORGANIZER:mailto:mrbig@example.com |
|
|
|
8078 ATTENDEE;RSVP=TRUE;ROLE=REQ-PARTICIPANT;CUTYPE=GROUP: |
|
|
|
8079 mailto:employee-A@example.com |
|
|
|
8080 DESCRIPTION:Project XYZ Review Meeting |
|
|
|
8081 CATEGORIES:MEETING |
|
|
|
8082 CLASS:PUBLIC |
|
|
|
8083 CREATED:19980309T130000Z |
|
|
|
8084 SUMMARY:XYZ Project Review |
|
|
|
8085 DTSTART;TZID=America/New_York:19980312T083000 |
|
|
|
8086 DTEND;TZID=America/New_York:19980312T093000 |
|
|
|
8087 LOCATION:1CP Conference Room 4350 |
|
|
|
8088 END:VEVENT |
|
|
|
8089 END:VCALENDAR |
|
|
|
8090 |
|
|
|
8091 The following is an example of an iCalendar object passed in a MIME |
|
|
|
8092 message with a single body part consisting of a "text/calendar" |
|
|
|
8093 Content Type. |
|
|
|
8094 |
|
|
|
8095 TO:jsmith@example.com |
|
|
|
8096 FROM:jdoe@example.com |
|
|
|
8097 MIME-VERSION:1.0 |
|
|
|
8098 MESSAGE-ID:<id3@example.com> |
|
|
|
8099 CONTENT-TYPE:text/calendar; method="xyz"; component="VEVENT" |
|
|
|
8100 |
|
|
|
8101 BEGIN:VCALENDAR |
|
|
|
8102 METHOD:xyz |
|
|
|
8103 VERSION:2.0 |
|
|
|
8104 PRODID:-//ABC Corporation//NONSGML My Product//EN |
|
|
|
8105 BEGIN:VEVENT |
|
|
|
8106 DTSTAMP:19970324T120000Z |
|
|
|
8107 SEQUENCE:0 |
|
|
|
8108 UID:uid3@example.com |
|
|
|
8109 ORGANIZER:mailto:jdoe@example.com |
|
|
|
8110 ATTENDEE;RSVP=TRUE:mailto:jsmith@example.com |
|
|
|
8111 DTSTART:19970324T123000Z |
|
|
|
8112 DTEND:19970324T210000Z |
|
|
|
8113 CATEGORIES:MEETING,PROJECT |
|
|
|
8114 CLASS:PUBLIC |
|
|
|
8115 SUMMARY:Calendaring Interoperability Planning Meeting |
|
|
|
8116 DESCRIPTION:Discuss how we can test c&s interoperability\n |
|
|
|
8117 using iCalendar and other IETF standards. |
|
|
|
8118 LOCATION:LDB Lobby |
|
|
|
8119 |
|
|
|
8120 |
|
|
|
8121 |
|
|
|
8122 Desruisseaux Standards Track [Page 145] |
|
|
|
i 8123 |
|
|
|
Err bitreich.org 70 |
|
|
|
8124 RFC 5545 iCalendar September 2009 |
|
|
|
8125 |
|
|
|
8126 |
|
|
|
8127 ATTACH;FMTTYPE=application/postscript:ftp://example.com/pub/ |
|
|
|
8128 conf/bkgrnd.ps |
|
|
|
8129 END:VEVENT |
|
|
|
8130 END:VCALENDAR |
|
|
|
8131 |
|
|
|
8132 The following is an example of a to-do due on April 15, 1998. An |
|
|
|
8133 audio alarm has been specified to remind the calendar user at noon, |
|
|
|
8134 the day before the to-do is expected to be completed and repeat |
|
|
|
8135 hourly, four additional times. The to-do definition has been |
|
|
|
8136 modified twice since it was initially created. |
|
|
|
8137 |
|
|
|
8138 BEGIN:VCALENDAR |
|
|
|
8139 VERSION:2.0 |
|
|
|
8140 PRODID:-//ABC Corporation//NONSGML My Product//EN |
|
|
|
8141 BEGIN:VTODO |
|
|
|
8142 DTSTAMP:19980130T134500Z |
|
|
|
8143 SEQUENCE:2 |
|
|
|
8144 UID:uid4@example.com |
|
|
|
8145 ORGANIZER:mailto:unclesam@example.com |
|
|
|
8146 ATTENDEE;PARTSTAT=ACCEPTED:mailto:jqpublic@example.com |
|
|
|
8147 DUE:19980415T000000 |
|
|
|
8148 STATUS:NEEDS-ACTION |
|
|
|
8149 SUMMARY:Submit Income Taxes |
|
|
|
8150 BEGIN:VALARM |
|
|
|
8151 ACTION:AUDIO |
|
|
|
8152 TRIGGER:19980403T120000Z |
|
|
|
8153 ATTACH;FMTTYPE=audio/basic:http://example.com/pub/audio- |
|
|
|
8154 files/ssbanner.aud |
|
|
|
8155 REPEAT:4 |
|
|
|
8156 DURATION:PT1H |
|
|
|
8157 END:VALARM |
|
|
|
8158 END:VTODO |
|
|
|
8159 END:VCALENDAR |
|
|
|
8160 |
|
|
|
8161 The following is an example of a journal entry: |
|
|
|
8162 |
|
|
|
8163 BEGIN:VCALENDAR |
|
|
|
8164 VERSION:2.0 |
|
|
|
8165 PRODID:-//ABC Corporation//NONSGML My Product//EN |
|
|
|
8166 BEGIN:VJOURNAL |
|
|
|
8167 DTSTAMP:19970324T120000Z |
|
|
|
8168 UID:uid5@example.com |
|
|
|
8169 ORGANIZER:mailto:jsmith@example.com |
|
|
|
8170 STATUS:DRAFT |
|
|
|
8171 CLASS:PUBLIC |
|
|
|
8172 CATEGORIES:Project Report,XYZ,Weekly Meeting |
|
|
|
8173 DESCRIPTION:Project xyz Review Meeting Minutes\n |
|
|
|
8174 Agenda\n1. Review of project version 1.0 requirements.\n2. |
|
|
|
8175 |
|
|
|
8176 |
|
|
|
8177 |
|
|
|
8178 Desruisseaux Standards Track [Page 146] |
|
|
|
i 8179 |
|
|
|
Err bitreich.org 70 |
|
|
|
8180 RFC 5545 iCalendar September 2009 |
|
|
|
8181 |
|
|
|
8182 |
|
|
|
8183 Definition |
|
|
|
8184 of project processes.\n3. Review of project schedule.\n |
|
|
|
8185 Participants: John Smith\, Jane Doe\, Jim Dandy\n-It was |
|
|
|
8186 decided that the requirements need to be signed off by |
|
|
|
8187 product marketing.\n-Project processes were accepted.\n |
|
|
|
8188 -Project schedule needs to account for scheduled holidays |
|
|
|
8189 and employee vacation time. Check with HR for specific |
|
|
|
8190 dates.\n-New schedule will be distributed by Friday.\n- |
|
|
|
8191 Next weeks meeting is cancelled. No meeting until 3/23. |
|
|
|
8192 END:VJOURNAL |
|
|
|
8193 END:VCALENDAR |
|
|
|
8194 |
|
|
|
8195 The following is an example of published busy time information. The |
|
|
|
8196 iCalendar object might be placed in the network resource |
|
|
|
8197 http://www.example.com/calendar/busytime/jsmith.ifb. |
|
|
|
8198 |
|
|
|
8199 BEGIN:VCALENDAR |
|
|
|
8200 VERSION:2.0 |
|
|
|
8201 PRODID:-//RDU Software//NONSGML HandCal//EN |
|
|
|
8202 BEGIN:VFREEBUSY |
|
|
|
8203 ORGANIZER:mailto:jsmith@example.com |
|
|
|
8204 DTSTART:19980313T141711Z |
|
|
|
8205 DTEND:19980410T141711Z |
|
|
|
8206 FREEBUSY:19980314T233000Z/19980315T003000Z |
|
|
|
8207 FREEBUSY:19980316T153000Z/19980316T163000Z |
|
|
|
8208 FREEBUSY:19980318T030000Z/19980318T040000Z |
|
|
|
8209 URL:http://www.example.com/calendar/busytime/jsmith.ifb |
|
|
|
8210 END:VFREEBUSY |
|
|
|
8211 END:VCALENDAR |
|
|
|
8212 |
|
|
|
8213 5. Recommended Practices |
|
|
|
8214 |
|
|
|
8215 These recommended practices should be followed in order to assure |
|
|
|
8216 consistent handling of the following cases for an iCalendar object. |
|
|
|
8217 |
|
|
|
8218 1. Content lines longer than 75 octets SHOULD be folded. |
|
|
|
8219 |
|
|
|
8220 2. When the combination of the "RRULE" and "RDATE" properties in a |
|
|
|
8221 recurring component produces multiple instances having the same |
|
|
|
8222 start DATE-TIME value, they should be collapsed to, and |
|
|
|
8223 considered as, a single instance. If the "RDATE" property is |
|
|
|
8224 specified as a PERIOD value the duration of the recurrence |
|
|
|
8225 instance will be the one specified by the "RDATE" property, and |
|
|
|
8226 not the duration of the recurrence instance defined by the |
|
|
|
8227 "DTSTART" property. |
|
|
|
8228 |
|
|
|
8229 3. When a calendar user receives multiple requests for the same |
|
|
|
8230 calendar component (e.g., REQUEST for a "VEVENT" calendar |
|
|
|
8231 |
|
|
|
8232 |
|
|
|
8233 |
|
|
|
8234 Desruisseaux Standards Track [Page 147] |
|
|
|
i 8235 |
|
|
|
Err bitreich.org 70 |
|
|
|
8236 RFC 5545 iCalendar September 2009 |
|
|
|
8237 |
|
|
|
8238 |
|
|
|
8239 component) as a result of being on multiple mailing lists |
|
|
|
8240 specified by "ATTENDEE" properties in the request, they SHOULD |
|
|
|
8241 respond to only one of the requests. The calendar user SHOULD |
|
|
|
8242 also specify (using the "MEMBER" parameter of the "ATTENDEE" |
|
|
|
8243 property) of which mailing list they are a member. |
|
|
|
8244 |
|
|
|
8245 4. An implementation can truncate a "SUMMARY" property value to 255 |
|
|
|
8246 octets, but it MUST NOT truncate the value in the middle of a |
|
|
|
8247 UTF-8 multi-octet sequence. |
|
|
|
8248 |
|
|
|
8249 5. If seconds of the minute are not supported by an implementation, |
|
|
|
8250 then a value of "00" SHOULD be specified for the seconds |
|
|
|
8251 component in a time value. |
|
|
|
8252 |
|
|
|
8253 6. "TZURL" values SHOULD NOT be specified as a file URI type. This |
|
|
|
8254 URI form can be useful within an organization, but is problematic |
|
|
|
8255 in the Internet. |
|
|
|
8256 |
|
|
|
8257 7. Some possible English values for "CATEGORIES" property include: |
|
|
|
8258 "ANNIVERSARY", "APPOINTMENT", "BUSINESS", "EDUCATION", "HOLIDAY", |
|
|
|
8259 "MEETING", "MISCELLANEOUS", "NON-WORKING HOURS", "NOT IN OFFICE", |
|
|
|
8260 "PERSONAL", "PHONE CALL", "SICK DAY", "SPECIAL OCCASION", |
|
|
|
8261 "TRAVEL", "VACATION". Categories can be specified in any |
|
|
|
8262 registered language. |
|
|
|
8263 |
|
|
|
8264 8. Some possible English values for the "RESOURCES" property |
|
|
|
8265 include: "CATERING", "CHAIRS", "COMPUTER PROJECTOR", "EASEL", |
|
|
|
8266 "OVERHEAD PROJECTOR", "SPEAKER PHONE", "TABLE", "TV", "VCR", |
|
|
|
8267 "VIDEO PHONE", "VEHICLE". Resources can be specified in any |
|
|
|
8268 registered language. |
|
|
|
8269 |
|
|
|
8270 6. Internationalization Considerations |
|
|
|
8271 |
|
|
|
8272 Applications MUST generate iCalendar streams in the UTF-8 charset and |
|
|
|
8273 MUST accept an iCalendar stream in the UTF-8 or US-ASCII charset. |
|
|
|
8274 |
|
|
|
8275 7. Security Considerations |
|
|
|
8276 |
|
|
|
8277 Because calendaring and scheduling information is very privacy- |
|
|
|
8278 sensitive, the protocol used for the transmission of calendaring and |
|
|
|
8279 scheduling information should have capabilities to protect the |
|
|
|
8280 information from possible threats, such as eavesdropping, replay, |
|
|
|
8281 message insertion, deletion, modification, and man-in-the-middle |
|
|
|
8282 attacks. |
|
|
|
8283 |
|
|
|
8284 As this document only defines the data format and media type of text/ |
|
|
|
8285 calendar that is independent of any calendar service or protocol, it |
|
|
|
8286 is up to the actual protocol specifications such as iTIP [2446bis], |
|
|
|
8287 |
|
|
|
8288 |
|
|
|
8289 |
|
|
|
8290 Desruisseaux Standards Track [Page 148] |
|
|
|
i 8291 |
|
|
|
Err bitreich.org 70 |
|
|
|
8292 RFC 5545 iCalendar September 2009 |
|
|
|
8293 |
|
|
|
8294 |
|
|
|
8295 iMIP [2447bis], and "Calendaring Extensions to WebDAV (CalDAV)" |
|
|
|
8296 [RFC4791] to describe the threats that the above attacks present, as |
|
|
|
8297 well as ways in which to mitigate them. |
|
|
|
8298 |
|
|
|
8299 8. IANA Considerations |
|
|
|
8300 |
|
|
|
8301 8.1. iCalendar Media Type Registration |
|
|
|
8302 |
|
|
|
8303 The Calendaring and Scheduling Core Object Specification is intended |
|
|
|
8304 for use as a MIME content type. |
|
|
|
8305 |
|
|
|
8306 To: ietf-types@iana.org |
|
|
|
8307 |
|
|
|
8308 Subject: Registration of media type text/calendar |
|
|
|
8309 |
|
|
|
8310 Type name: text |
|
|
|
8311 |
|
|
|
8312 Subtype name: calendar |
|
|
|
8313 |
|
|
|
8314 Required parameters: none |
|
|
|
8315 |
|
|
|
8316 Optional parameters: charset, method, component, and optinfo |
|
|
|
8317 |
|
|
|
8318 The "charset" parameter is defined in [RFC2046] for subtypes of |
|
|
|
8319 the "text" media type. It is used to indicate the charset used in |
|
|
|
8320 the body part. The charset supported by this revision of |
|
|
|
8321 iCalendar is UTF-8. The use of any other charset is deprecated by |
|
|
|
8322 this revision of iCalendar; however, note that this revision |
|
|
|
8323 requires that compliant applications MUST accept iCalendar streams |
|
|
|
8324 using either the UTF-8 or US-ASCII charset. |
|
|
|
8325 |
|
|
|
8326 The "method" parameter is used to convey the iCalendar object |
|
|
|
8327 method or transaction semantics for the calendaring and scheduling |
|
|
|
8328 information. It also is an identifier for the restricted set of |
|
|
|
8329 properties and values of which the iCalendar object consists. The |
|
|
|
8330 parameter is to be used as a guide for applications interpreting |
|
|
|
8331 the information contained within the body part. It SHOULD NOT be |
|
|
|
8332 used to exclude or require particular pieces of information unless |
|
|
|
8333 the identified method definition specifically calls for this |
|
|
|
8334 behavior. Unless specifically forbidden by a particular method |
|
|
|
8335 definition, a text/calendar content type can contain any set of |
|
|
|
8336 properties permitted by the Calendaring and Scheduling Core Object |
|
|
|
8337 Specification. The "method" parameter MUST be specified and MUST |
|
|
|
8338 be set to the same value as the "METHOD" component property of the |
|
|
|
8339 iCalendar objects of the iCalendar stream if and only if the |
|
|
|
8340 iCalendar objects in the iCalendar stream all have a "METHOD" |
|
|
|
8341 component property set to the same value. |
|
|
|
8342 |
|
|
|
8343 |
|
|
|
8344 |
|
|
|
8345 |
|
|
|
8346 Desruisseaux Standards Track [Page 149] |
|
|
|
i 8347 |
|
|
|
Err bitreich.org 70 |
|
|
|
8348 RFC 5545 iCalendar September 2009 |
|
|
|
8349 |
|
|
|
8350 |
|
|
|
8351 The value for the "method" parameter is defined as follows: |
|
|
|
8352 |
|
|
|
8353 method = 1*(ALPHA / DIGIT / "-") |
|
|
|
8354 ; IANA-registered iCalendar object method |
|
|
|
8355 |
|
|
|
8356 The "component" parameter conveys the type of iCalendar calendar |
|
|
|
8357 component within the body part. If the iCalendar object contains |
|
|
|
8358 more than one calendar component type, then multiple component |
|
|
|
8359 parameters MUST be specified. |
|
|
|
8360 |
|
|
|
8361 The value for the "component" parameter is defined as follows: |
|
|
|
8362 |
|
|
|
8363 component = "VEVENT" |
|
|
|
8364 / "VTODO" |
|
|
|
8365 / "VJOURNAL" |
|
|
|
8366 / "VFREEBUSY" |
|
|
|
8367 / "VTIMEZONE" |
|
|
|
8368 / iana-token |
|
|
|
8369 / x-name |
|
|
|
8370 |
|
|
|
8371 The "optinfo" parameter conveys optional information about the |
|
|
|
8372 iCalendar object within the body part. This parameter can only |
|
|
|
8373 specify semantics already specified by the iCalendar object and |
|
|
|
8374 that can be otherwise determined by parsing the body part. In |
|
|
|
8375 addition, the optional information specified by this parameter |
|
|
|
8376 MUST be consistent with that information specified by the |
|
|
|
8377 iCalendar object. For example, it can be used to convey the |
|
|
|
8378 "Attendee" response status to a meeting request. The parameter |
|
|
|
8379 value consists of a string value. |
|
|
|
8380 |
|
|
|
8381 The parameter can be specified multiple times. |
|
|
|
8382 |
|
|
|
8383 The value for the "optinfo" parameter is defined as follows: |
|
|
|
8384 |
|
|
|
8385 optinfo = infovalue / qinfovalue |
|
|
|
8386 |
|
|
|
8387 infovalue = iana-token / x-name |
|
|
|
8388 |
|
|
|
8389 qinfovalue = DQUOTE (infovalue) DQUOTE |
|
|
|
8390 |
|
|
|
8391 Encoding considerations: This media type can contain 8bit |
|
|
|
8392 characters, so the use of quoted-printable or base64 MIME Content- |
|
|
|
8393 Transfer-Encodings might be necessary when iCalendar objects are |
|
|
|
8394 transferred across protocols restricted to the 7bit repertoire. |
|
|
|
8395 Note that a text valued property in the content entity can also |
|
|
|
8396 have content encoding of special characters using a BACKSLASH |
|
|
|
8397 character escapement technique. This means that content values |
|
|
|
8398 can end up being encoded twice. |
|
|
|
8399 |
|
|
|
8400 |
|
|
|
8401 |
|
|
|
8402 Desruisseaux Standards Track [Page 150] |
|
|
|
i 8403 |
|
|
|
Err bitreich.org 70 |
|
|
|
8404 RFC 5545 iCalendar September 2009 |
|
|
|
8405 |
|
|
|
8406 |
|
|
|
8407 Security considerations: See Section 7. |
|
|
|
8408 |
|
|
|
8409 Interoperability considerations: This media type is intended to |
|
|
|
8410 define a common format for conveying calendaring and scheduling |
|
|
|
8411 information between different systems. It is heavily based on the |
|
|
|
8412 earlier [VCAL] industry specification. |
|
|
|
8413 |
|
|
|
8414 Published specification: This specification. |
|
|
|
8415 |
|
|
|
8416 Applications that use this media type: This media type is designed |
|
|
|
8417 for widespread use by Internet calendaring and scheduling |
|
|
|
8418 applications. In addition, applications in the workflow and |
|
|
|
8419 document management area might find this content-type applicable. |
|
|
|
8420 The iTIP [2446bis], iMIP [2447bis], and CalDAV [RFC4791] Internet |
|
|
|
8421 protocols directly use this media type also. |
|
|
|
8422 |
|
|
|
8423 Additional information: |
|
|
|
8424 |
|
|
|
8425 Magic number(s): None. |
|
|
|
8426 |
|
|
|
8427 File extension(s): The file extension of "ics" is to be used to |
|
|
|
8428 designate a file containing (an arbitrary set of) calendaring |
|
|
|
8429 and scheduling information consistent with this MIME content |
|
|
|
8430 type. |
|
|
|
8431 |
|
|
|
8432 The file extension of "ifb" is to be used to designate a file |
|
|
|
8433 containing free or busy time information consistent with this |
|
|
|
8434 MIME content type. |
|
|
|
8435 |
|
|
|
8436 Macintosh file type code(s): The file type code of "iCal" is to |
|
|
|
8437 be used in Apple MacIntosh operating system environments to |
|
|
|
8438 designate a file containing calendaring and scheduling |
|
|
|
8439 information consistent with this MIME media type. |
|
|
|
8440 |
|
|
|
8441 The file type code of "iFBf" is to be used in Apple MacIntosh |
|
|
|
8442 operating system environments to designate a file containing |
|
|
|
8443 free or busy time information consistent with this MIME media |
|
|
|
8444 type. |
|
|
|
8445 |
|
|
|
8446 Person & email address to contact for further information: See the |
|
|
|
8447 "Author's Address" section of this document. |
|
|
|
8448 |
|
|
|
8449 Intended usage: COMMON |
|
|
|
8450 |
|
|
|
8451 Restrictions on usage: There are no restrictions on where this media |
|
|
|
8452 type can be used. |
|
|
|
8453 |
|
|
|
8454 Author: See the "Author's Address" section of this document. |
|
|
|
8455 |
|
|
|
8456 |
|
|
|
8457 |
|
|
|
8458 Desruisseaux Standards Track [Page 151] |
|
|
|
i 8459 |
|
|
|
Err bitreich.org 70 |
|
|
|
8460 RFC 5545 iCalendar September 2009 |
|
|
|
8461 |
|
|
|
8462 |
|
|
|
8463 Change controller: IETF |
|
|
|
8464 |
|
|
|
8465 8.2. New iCalendar Elements Registration |
|
|
|
8466 |
|
|
|
8467 This section defines the process to register new or modified |
|
|
|
8468 iCalendar elements, that is, components, properties, parameters, |
|
|
|
8469 value data types, and values, with IANA. |
|
|
|
8470 |
|
|
|
8471 8.2.1. iCalendar Elements Registration Procedure |
|
|
|
8472 |
|
|
|
8473 The IETF will create a mailing list, icalendar@ietf.org, which can be |
|
|
|
8474 used for public discussion of iCalendar elements proposals prior to |
|
|
|
8475 registration. Use of the mailing list is strongly encouraged. The |
|
|
|
8476 IESG will appoint a designated expert who will monitor the |
|
|
|
8477 icalendar@ietf.org mailing list and review registrations. |
|
|
|
8478 |
|
|
|
8479 Registration of new iCalendar elements MUST be reviewed by the |
|
|
|
8480 designated expert and published in an RFC. A Standards Track RFC is |
|
|
|
8481 REQUIRED for the registration of new value data types that modify |
|
|
|
8482 existing properties, as well as for the registration of participation |
|
|
|
8483 status values to be used in "VEVENT" calendar components. A |
|
|
|
8484 Standards Track RFC is also REQUIRED for registration of iCalendar |
|
|
|
8485 elements that modify iCalendar elements previously documented in a |
|
|
|
8486 Standards Track RFC. |
|
|
|
8487 |
|
|
|
8488 The registration procedure begins when a completed registration |
|
|
|
8489 template, defined in the sections below, is sent to |
|
|
|
8490 icalendar@ietf.org and iana@iana.org. The designated expert is |
|
|
|
8491 expected to tell IANA and the submitter of the registration within |
|
|
|
8492 two weeks whether the registration is approved, approved with minor |
|
|
|
8493 changes, or rejected with cause. When a registration is rejected |
|
|
|
8494 with cause, it can be re-submitted if the concerns listed in the |
|
|
|
8495 cause are addressed. Decisions made by the designated expert can be |
|
|
|
8496 appealed to the IESG Applications Area Director, then to the IESG. |
|
|
|
8497 They follow the normal appeals procedure for IESG decisions. |
|
|
|
8498 |
|
|
|
8499 8.2.2. Registration Template for Components |
|
|
|
8500 |
|
|
|
8501 A component is defined by completing the following template. |
|
|
|
8502 |
|
|
|
8503 Component name: The name of the component. |
|
|
|
8504 |
|
|
|
8505 Purpose: The purpose of the component. Give a short but clear |
|
|
|
8506 description. |
|
|
|
8507 |
|
|
|
8508 Format definition: The ABNF for the component definition needs to be |
|
|
|
8509 specified. |
|
|
|
8510 |
|
|
|
8511 |
|
|
|
8512 |
|
|
|
8513 |
|
|
|
8514 Desruisseaux Standards Track [Page 152] |
|
|
|
i 8515 |
|
|
|
Err bitreich.org 70 |
|
|
|
8516 RFC 5545 iCalendar September 2009 |
|
|
|
8517 |
|
|
|
8518 |
|
|
|
8519 Description: Any special notes about the component, how it is to be |
|
|
|
8520 used, etc. |
|
|
|
8521 |
|
|
|
8522 Example(s): One or more examples of instances of the component need |
|
|
|
8523 to be specified. |
|
|
|
8524 |
|
|
|
8525 8.2.3. Registration Template for Properties |
|
|
|
8526 |
|
|
|
8527 A property is defined by completing the following template. |
|
|
|
8528 |
|
|
|
8529 Property name: The name of the property. |
|
|
|
8530 |
|
|
|
8531 Purpose: The purpose of the property. Give a short but clear |
|
|
|
8532 description. |
|
|
|
8533 |
|
|
|
8534 Value type: Any of the valid value types for the property value need |
|
|
|
8535 to be specified. The default value type also needs to be |
|
|
|
8536 specified. |
|
|
|
8537 |
|
|
|
8538 Property parameters: Any of the valid property parameters for the |
|
|
|
8539 property MUST be specified. |
|
|
|
8540 |
|
|
|
8541 Conformance: The calendar components in which the property can |
|
|
|
8542 appear MUST be specified. |
|
|
|
8543 |
|
|
|
8544 Description: Any special notes about the property, how it is to be |
|
|
|
8545 used, etc. |
|
|
|
8546 |
|
|
|
8547 Format definition: The ABNF for the property definition needs to be |
|
|
|
8548 specified. |
|
|
|
8549 |
|
|
|
8550 Example(s): One or more examples of instances of the property need |
|
|
|
8551 to be specified. |
|
|
|
8552 |
|
|
|
8553 8.2.4. Registration Template for Parameters |
|
|
|
8554 |
|
|
|
8555 A parameter is defined by completing the following template. |
|
|
|
8556 |
|
|
|
8557 Parameter name: The name of the parameter. |
|
|
|
8558 |
|
|
|
8559 Purpose: The purpose of the parameter. Give a short but clear |
|
|
|
8560 description. |
|
|
|
8561 |
|
|
|
8562 Format definition: The ABNF for the parameter definition needs to be |
|
|
|
8563 specified. |
|
|
|
8564 |
|
|
|
8565 Description: Any special notes about the parameter, how it is to be |
|
|
|
8566 used, etc. |
|
|
|
8567 |
|
|
|
8568 |
|
|
|
8569 |
|
|
|
8570 Desruisseaux Standards Track [Page 153] |
|
|
|
i 8571 |
|
|
|
Err bitreich.org 70 |
|
|
|
8572 RFC 5545 iCalendar September 2009 |
|
|
|
8573 |
|
|
|
8574 |
|
|
|
8575 Example(s): One or more examples of instances of the parameter need |
|
|
|
8576 to be specified. |
|
|
|
8577 |
|
|
|
8578 8.2.5. Registration Template for Value Data Types |
|
|
|
8579 |
|
|
|
8580 A value data type is defined by completing the following template. |
|
|
|
8581 |
|
|
|
8582 Value name: The name of the value type. |
|
|
|
8583 |
|
|
|
8584 Purpose: The purpose of the value type. Give a short but clear |
|
|
|
8585 description. |
|
|
|
8586 |
|
|
|
8587 Format definition: The ABNF for the value type definition needs to |
|
|
|
8588 be specified. |
|
|
|
8589 |
|
|
|
8590 Description: Any special notes about the value type, how it is to be |
|
|
|
8591 used, etc. |
|
|
|
8592 |
|
|
|
8593 Example(s): One or more examples of instances of the value type need |
|
|
|
8594 to be specified. |
|
|
|
8595 |
|
|
|
8596 8.2.6. Registration Template for Values |
|
|
|
8597 |
|
|
|
8598 A value is defined by completing the following template. |
|
|
|
8599 |
|
|
|
8600 Value: The value literal. |
|
|
|
8601 |
|
|
|
8602 Purpose: The purpose of the value. Give a short but clear |
|
|
|
8603 description. |
|
|
|
8604 |
|
|
|
8605 Conformance: The calendar properties and/or parameters that can take |
|
|
|
8606 this value need to be specified. |
|
|
|
8607 |
|
|
|
8608 Example(s): One or more examples of instances of the value need to |
|
|
|
8609 be specified. |
|
|
|
8610 |
|
|
|
8611 The following is a fictitious example of a registration of an |
|
|
|
8612 iCalendar value: |
|
|
|
8613 |
|
|
|
8614 Value: TOP-SECRET |
|
|
|
8615 |
|
|
|
8616 Purpose: This value is used to specify the access classification of |
|
|
|
8617 top-secret calendar components. |
|
|
|
8618 |
|
|
|
8619 Conformance: This value can be used with the "CLASS" property. |
|
|
|
8620 |
|
|
|
8621 |
|
|
|
8622 |
|
|
|
8623 |
|
|
|
8624 |
|
|
|
8625 |
|
|
|
8626 Desruisseaux Standards Track [Page 154] |
|
|
|
i 8627 |
|
|
|
Err bitreich.org 70 |
|
|
|
8628 RFC 5545 iCalendar September 2009 |
|
|
|
8629 |
|
|
|
8630 |
|
|
|
8631 Example(s): The following is an example of this value used with the |
|
|
|
8632 "CLASS" property: |
|
|
|
8633 |
|
|
|
8634 CLASS:TOP-SECRET |
|
|
|
8635 |
|
|
|
8636 8.3. Initial iCalendar Elements Registries |
|
|
|
8637 |
|
|
|
8638 The IANA created and maintains the following registries for iCalendar |
|
|
|
8639 elements with pointers to appropriate reference documents. |
|
|
|
8640 |
|
|
|
8641 8.3.1. Components Registry |
|
|
|
8642 |
|
|
|
8643 The following table has been used to initialize the components |
|
|
|
8644 registry. |
|
|
|
8645 |
|
|
|
8646 +-----------+---------+-------------------------+ |
|
|
|
8647 | Component | Status | Reference | |
|
|
|
8648 +-----------+---------+-------------------------+ |
|
|
|
8649 | VCALENDAR | Current | RFC 5545, Section 3.4 | |
|
|
|
8650 | | | | |
|
|
|
8651 | VEVENT | Current | RFC 5545, Section 3.6.1 | |
|
|
|
8652 | | | | |
|
|
|
8653 | VTODO | Current | RFC 5545, Section 3.6.2 | |
|
|
|
8654 | | | | |
|
|
|
8655 | VJOURNAL | Current | RFC 5545, Section 3.6.3 | |
|
|
|
8656 | | | | |
|
|
|
8657 | VFREEBUSY | Current | RFC 5545, Section 3.6.4 | |
|
|
|
8658 | | | | |
|
|
|
8659 | VTIMEZONE | Current | RFC 5545, Section 3.6.5 | |
|
|
|
8660 | | | | |
|
|
|
8661 | VALARM | Current | RFC 5545, Section 3.6.6 | |
|
|
|
8662 | | | | |
|
|
|
8663 | STANDARD | Current | RFC 5545, Section 3.6.5 | |
|
|
|
8664 | | | | |
|
|
|
8665 | DAYLIGHT | Current | RFC 5545, Section 3.6.5 | |
|
|
|
8666 +-----------+---------+-------------------------+ |
|
|
|
8667 |
|
|
|
8668 |
|
|
|
8669 |
|
|
|
8670 |
|
|
|
8671 |
|
|
|
8672 |
|
|
|
8673 |
|
|
|
8674 |
|
|
|
8675 |
|
|
|
8676 |
|
|
|
8677 |
|
|
|
8678 |
|
|
|
8679 |
|
|
|
8680 |
|
|
|
8681 |
|
|
|
8682 Desruisseaux Standards Track [Page 155] |
|
|
|
i 8683 |
|
|
|
Err bitreich.org 70 |
|
|
|
8684 RFC 5545 iCalendar September 2009 |
|
|
|
8685 |
|
|
|
8686 |
|
|
|
8687 8.3.2. Properties Registry |
|
|
|
8688 |
|
|
|
8689 The following table is has been used to initialize the properties |
|
|
|
8690 registry. |
|
|
|
8691 |
|
|
|
8692 +------------------+------------+----------------------------+ |
|
|
|
8693 | Property | Status | Reference | |
|
|
|
8694 +------------------+------------+----------------------------+ |
|
|
|
8695 | CALSCALE | Current | RFC 5545, Section 3.7.1 | |
|
|
|
8696 | METHOD | Current | RFC 5545, Section 3.7.2 | |
|
|
|
8697 | | | | |
|
|
|
8698 | PRODID | Current | RFC 5545, Section 3.7.3 | |
|
|
|
8699 | | | | |
|
|
|
8700 | VERSION | Current | RFC 5545, Section 3.7.4 | |
|
|
|
8701 | | | | |
|
|
|
8702 | ATTACH | Current | RFC 5545, Section 3.8.1.1 | |
|
|
|
8703 | | | | |
|
|
|
8704 | CATEGORIES | Current | RFC 5545, Section 3.8.1.2 | |
|
|
|
8705 | | | | |
|
|
|
8706 | CLASS | Current | RFC 5545, Section 3.8.1.3 | |
|
|
|
8707 | | | | |
|
|
|
8708 | COMMENT | Current | RFC 5545, Section 3.8.1.4 | |
|
|
|
8709 | | | | |
|
|
|
8710 | DESCRIPTION | Current | RFC 5545, Section 3.8.1.5 | |
|
|
|
8711 | | | | |
|
|
|
8712 | GEO | Current | RFC 5545, Section 3.8.1.6 | |
|
|
|
8713 | | | | |
|
|
|
8714 | LOCATION | Current | RFC 5545, Section 3.8.1.7 | |
|
|
|
8715 | | | | |
|
|
|
8716 | PERCENT-COMPLETE | Current | RFC 5545, Section 3.8.1.8 | |
|
|
|
8717 | | | | |
|
|
|
8718 | PRIORITY | Current | RFC 5545, Section 3.8.1.9 | |
|
|
|
8719 | | | | |
|
|
|
8720 | RESOURCES | Current | RFC 5545, Section 3.8.1.10 | |
|
|
|
8721 | | | | |
|
|
|
8722 | STATUS | Current | RFC 5545, Section 3.8.1.11 | |
|
|
|
8723 | | | | |
|
|
|
8724 | SUMMARY | Current | RFC 5545, Section 3.8.1.12 | |
|
|
|
8725 | | | | |
|
|
|
8726 | COMPLETED | Current | RFC 5545, Section 3.8.2.1 | |
|
|
|
8727 | | | | |
|
|
|
8728 | DTEND | Current | RFC 5545, Section 3.8.2.2 | |
|
|
|
8729 | | | | |
|
|
|
8730 | DUE | Current | RFC 5545, Section 3.8.2.3 | |
|
|
|
8731 | | | | |
|
|
|
8732 | DTSTART | Current | RFC 5545, Section 3.8.2.4 | |
|
|
|
8733 | | | | |
|
|
|
8734 | DURATION | Current | RFC 5545, Section 3.8.2.5 | |
|
|
|
8735 |
|
|
|
8736 |
|
|
|
8737 |
|
|
|
8738 Desruisseaux Standards Track [Page 156] |
|
|
|
i 8739 |
|
|
|
Err bitreich.org 70 |
|
|
|
8740 RFC 5545 iCalendar September 2009 |
|
|
|
8741 |
|
|
|
8742 |
|
|
|
8743 | | | | |
|
|
|
8744 | FREEBUSY | Current | RFC 5545, Section 3.8.2.6 | |
|
|
|
8745 | | | | |
|
|
|
8746 | TRANSP | Current | RFC 5545, Section 3.8.2.7 | |
|
|
|
8747 | | | | |
|
|
|
8748 | TZID | Current | RFC 5545, Section 3.8.3.1 | |
|
|
|
8749 | | | | |
|
|
|
8750 | TZNAME | Current | RFC 5545, Section 3.8.3.2 | |
|
|
|
8751 | | | | |
|
|
|
8752 | TZOFFSETFROM | Current | RFC 5545, Section 3.8.3.3 | |
|
|
|
8753 | | | | |
|
|
|
8754 | TZOFFSETTO | Current | RFC 5545, Section 3.8.3.4 | |
|
|
|
8755 | | | | |
|
|
|
8756 | TZURL | Current | RFC 5545, Section 3.8.3.5 | |
|
|
|
8757 | | | | |
|
|
|
8758 | ATTENDEE | Current | RFC 5545, Section 3.8.4.1 | |
|
|
|
8759 | | | | |
|
|
|
8760 | CONTACT | Current | RFC 5545, Section 3.8.4.2 | |
|
|
|
8761 | | | | |
|
|
|
8762 | ORGANIZER | Current | RFC 5545, Section 3.8.4.3 | |
|
|
|
8763 | | | | |
|
|
|
8764 | RECURRENCE-ID | Current | RFC 5545, Section 3.8.4.4 | |
|
|
|
8765 | | | | |
|
|
|
8766 | RELATED-TO | Current | RFC 5545, Section 3.8.4.5 | |
|
|
|
8767 | | | | |
|
|
|
8768 | URL | Current | RFC 5545, Section 3.8.4.6 | |
|
|
|
8769 | | | | |
|
|
|
8770 | UID | Current | RFC 5545, Section 3.8.4.7 | |
|
|
|
8771 | | | | |
|
|
|
8772 | EXDATE | Current | RFC 5545, Section 3.8.5.1 | |
|
|
|
8773 | | | | |
|
|
|
8774 | EXRULE | Deprecated | [RFC2445], Section 4.8.5.2 | |
|
|
|
8775 | | | | |
|
|
|
8776 | RDATE | Current | RFC 5545, Section 3.8.5.2 | |
|
|
|
8777 | | | | |
|
|
|
8778 | RRULE | Current | RFC 5545, Section 3.8.5.3 | |
|
|
|
8779 | | | | |
|
|
|
8780 | ACTION | Current | RFC 5545, Section 3.8.6.1 | |
|
|
|
8781 | | | | |
|
|
|
8782 | REPEAT | Current | RFC 5545, Section 3.8.6.2 | |
|
|
|
8783 | | | | |
|
|
|
8784 | TRIGGER | Current | RFC 5545, Section 3.8.6.3 | |
|
|
|
8785 | | | | |
|
|
|
8786 | CREATED | Current | RFC 5545, Section 3.8.7.1 | |
|
|
|
8787 | | | | |
|
|
|
8788 | DTSTAMP | Current | RFC 5545, Section 3.8.7.2 | |
|
|
|
8789 | | | | |
|
|
|
8790 | LAST-MODIFIED | Current | RFC 5545, Section 3.8.7.3 | |
|
|
|
8791 |
|
|
|
8792 |
|
|
|
8793 |
|
|
|
8794 Desruisseaux Standards Track [Page 157] |
|
|
|
i 8795 |
|
|
|
Err bitreich.org 70 |
|
|
|
8796 RFC 5545 iCalendar September 2009 |
|
|
|
8797 |
|
|
|
8798 |
|
|
|
8799 | | | | |
|
|
|
8800 | SEQUENCE | Current | RFC 5545, Section 3.8.7.4 | |
|
|
|
8801 | | | | |
|
|
|
8802 | REQUEST-STATUS | Current | RFC 5545, Section 3.8.8.3 | |
|
|
|
8803 +------------------+------------+----------------------------+ |
|
|
|
8804 |
|
|
|
8805 8.3.3. Parameters Registry |
|
|
|
8806 |
|
|
|
8807 The following table has been used to initialize the parameters |
|
|
|
8808 registry. |
|
|
|
8809 |
|
|
|
8810 +----------------+---------+--------------------------+ |
|
|
|
8811 | Parameter | Status | Reference | |
|
|
|
8812 +----------------+---------+--------------------------+ |
|
|
|
8813 | ALTREP | Current | RFC 5545, Section 3.2.1 | |
|
|
|
8814 | | | | |
|
|
|
8815 | CN | Current | RFC 5545, Section 3.2.2 | |
|
|
|
8816 | | | | |
|
|
|
8817 | CUTYPE | Current | RFC 5545, Section 3.2.3 | |
|
|
|
8818 | | | | |
|
|
|
8819 | DELEGATED-FROM | Current | RFC 5545, Section 3.2.4 | |
|
|
|
8820 | | | | |
|
|
|
8821 | DELEGATED-TO | Current | RFC 5545, Section 3.2.5 | |
|
|
|
8822 | | | | |
|
|
|
8823 | DIR | Current | RFC 5545, Section 3.2.6 | |
|
|
|
8824 | | | | |
|
|
|
8825 | ENCODING | Current | RFC 5545, Section 3.2.7 | |
|
|
|
8826 | | | | |
|
|
|
8827 | FMTTYPE | Current | RFC 5545, Section 3.2.8 | |
|
|
|
8828 | | | | |
|
|
|
8829 | FBTYPE | Current | RFC 5545, Section 3.2.9 | |
|
|
|
8830 | | | | |
|
|
|
8831 | LANGUAGE | Current | RFC 5545, Section 3.2.10 | |
|
|
|
8832 | | | | |
|
|
|
8833 | MEMBER | Current | RFC 5545, Section 3.2.11 | |
|
|
|
8834 | | | | |
|
|
|
8835 | PARTSTAT | Current | RFC 5545, Section 3.2.12 | |
|
|
|
8836 | | | | |
|
|
|
8837 | RANGE | Current | RFC 5545, Section 3.2.13 | |
|
|
|
8838 | | | | |
|
|
|
8839 | RELATED | Current | RFC 5545, Section 3.2.14 | |
|
|
|
8840 | | | | |
|
|
|
8841 | RELTYPE | Current | RFC 5545, Section 3.2.15 | |
|
|
|
8842 | | | | |
|
|
|
8843 | ROLE | Current | RFC 5545, Section 3.2.16 | |
|
|
|
8844 | | | | |
|
|
|
8845 | RSVP | Current | RFC 5545, Section 3.2.17 | |
|
|
|
8846 | | | | |
|
|
|
8847 |
|
|
|
8848 |
|
|
|
8849 |
|
|
|
8850 Desruisseaux Standards Track [Page 158] |
|
|
|
i 8851 |
|
|
|
Err bitreich.org 70 |
|
|
|
8852 RFC 5545 iCalendar September 2009 |
|
|
|
8853 |
|
|
|
8854 |
|
|
|
8855 | SENT-BY | Current | RFC 5545, Section 3.2.18 | |
|
|
|
8856 | | | | |
|
|
|
8857 | TZID | Current | RFC 5545, Section 3.2.19 | |
|
|
|
8858 | | | | |
|
|
|
8859 | VALUE | Current | RFC 5545, Section 3.2.20 | |
|
|
|
8860 +----------------+---------+--------------------------+ |
|
|
|
8861 |
|
|
|
8862 8.3.4. Value Data Types Registry |
|
|
|
8863 |
|
|
|
8864 The following table has been used to initialize the value data types |
|
|
|
8865 registry. |
|
|
|
8866 |
|
|
|
8867 +-----------------+---------+--------------------------+ |
|
|
|
8868 | Value Data Type | Status | Reference | |
|
|
|
8869 +-----------------+---------+--------------------------+ |
|
|
|
8870 | BINARY | Current | RFC 5545, Section 3.3.1 | |
|
|
|
8871 | | | | |
|
|
|
8872 | BOOLEAN | Current | RFC 5545, Section 3.3.2 | |
|
|
|
8873 | | | | |
|
|
|
8874 | CAL-ADDRESS | Current | RFC 5545, Section 3.3.3 | |
|
|
|
8875 | | | | |
|
|
|
8876 | DATE | Current | RFC 5545, Section 3.3.4 | |
|
|
|
8877 | | | | |
|
|
|
8878 | DATE-TIME | Current | RFC 5545, Section 3.3.5 | |
|
|
|
8879 | | | | |
|
|
|
8880 | DURATION | Current | RFC 5545, Section 3.3.6 | |
|
|
|
8881 | | | | |
|
|
|
8882 | FLOAT | Current | RFC 5545, Section 3.3.7 | |
|
|
|
8883 | | | | |
|
|
|
8884 | INTEGER | Current | RFC 5545, Section 3.3.8 | |
|
|
|
8885 | | | | |
|
|
|
8886 | PERIOD | Current | RFC 5545, Section 3.3.9 | |
|
|
|
8887 | | | | |
|
|
|
8888 | RECUR | Current | RFC 5545, Section 3.3.10 | |
|
|
|
8889 | | | | |
|
|
|
8890 | TEXT | Current | RFC 5545, Section 3.3.11 | |
|
|
|
8891 | | | | |
|
|
|
8892 | TIME | Current | RFC 5545, Section 3.3.12 | |
|
|
|
8893 | | | | |
|
|
|
8894 | URI | Current | RFC 5545, Section 3.3.13 | |
|
|
|
8895 | | | | |
|
|
|
8896 | UTC-OFFSET | Current | RFC 5545, Section 3.3.14 | |
|
|
|
8897 +-----------------+---------+--------------------------+ |
|
|
|
8898 |
|
|
|
8899 |
|
|
|
8900 |
|
|
|
8901 |
|
|
|
8902 |
|
|
|
8903 |
|
|
|
8904 |
|
|
|
8905 |
|
|
|
8906 Desruisseaux Standards Track [Page 159] |
|
|
|
i 8907 |
|
|
|
Err bitreich.org 70 |
|
|
|
8908 RFC 5545 iCalendar September 2009 |
|
|
|
8909 |
|
|
|
8910 |
|
|
|
8911 8.3.5. Calendar User Types Registry |
|
|
|
8912 |
|
|
|
8913 The following table has been used to initialize the calendar user |
|
|
|
8914 types registry. |
|
|
|
8915 |
|
|
|
8916 +--------------------+---------+-------------------------+ |
|
|
|
8917 | Calendar User Type | Status | Reference | |
|
|
|
8918 +--------------------+---------+-------------------------+ |
|
|
|
8919 | INDIVIDUAL | Current | RFC 5545, Section 3.2.3 | |
|
|
|
8920 | | | | |
|
|
|
8921 | GROUP | Current | RFC 5545, Section 3.2.3 | |
|
|
|
8922 | | | | |
|
|
|
8923 | RESOURCE | Current | RFC 5545, Section 3.2.3 | |
|
|
|
8924 | | | | |
|
|
|
8925 | ROOM | Current | RFC 5545, Section 3.2.3 | |
|
|
|
8926 | | | | |
|
|
|
8927 | UNKNOWN | Current | RFC 5545, Section 3.2.3 | |
|
|
|
8928 +--------------------+---------+-------------------------+ |
|
|
|
8929 |
|
|
|
8930 8.3.6. Free/Busy Time Types Registry |
|
|
|
8931 |
|
|
|
8932 The following table has been used to initialize the free/busy time |
|
|
|
8933 types registry. |
|
|
|
8934 |
|
|
|
8935 +---------------------+---------+-------------------------+ |
|
|
|
8936 | Free/Busy Time Type | Status | Reference | |
|
|
|
8937 +---------------------+---------+-------------------------+ |
|
|
|
8938 | FREE | Current | RFC 5545, Section 3.2.9 | |
|
|
|
8939 | | | | |
|
|
|
8940 | BUSY | Current | RFC 5545, Section 3.2.9 | |
|
|
|
8941 | | | | |
|
|
|
8942 | BUSY-UNAVAILABLE | Current | RFC 5545, Section 3.2.9 | |
|
|
|
8943 | | | | |
|
|
|
8944 | BUSY-TENTATIVE | Current | RFC 5545, Section 3.2.9 | |
|
|
|
8945 +---------------------+---------+-------------------------+ |
|
|
|
8946 |
|
|
|
8947 |
|
|
|
8948 |
|
|
|
8949 |
|
|
|
8950 |
|
|
|
8951 |
|
|
|
8952 |
|
|
|
8953 |
|
|
|
8954 |
|
|
|
8955 |
|
|
|
8956 |
|
|
|
8957 |
|
|
|
8958 |
|
|
|
8959 |
|
|
|
8960 |
|
|
|
8961 |
|
|
|
8962 Desruisseaux Standards Track [Page 160] |
|
|
|
i 8963 |
|
|
|
Err bitreich.org 70 |
|
|
|
8964 RFC 5545 iCalendar September 2009 |
|
|
|
8965 |
|
|
|
8966 |
|
|
|
8967 8.3.7. Participation Statuses Registry |
|
|
|
8968 |
|
|
|
8969 The following table has been used to initialize the participation |
|
|
|
8970 statuses registry. |
|
|
|
8971 |
|
|
|
8972 +--------------------+---------+--------------------------+ |
|
|
|
8973 | Participant Status | Status | Reference | |
|
|
|
8974 +--------------------+---------+--------------------------+ |
|
|
|
8975 | NEEDS-ACTION | Current | RFC 5545, Section 3.2.12 | |
|
|
|
8976 | | | | |
|
|
|
8977 | ACCEPTED | Current | RFC 5545, Section 3.2.12 | |
|
|
|
8978 | | | | |
|
|
|
8979 | DECLINED | Current | RFC 5545, Section 3.2.12 | |
|
|
|
8980 | | | | |
|
|
|
8981 | TENTATIVE | Current | RFC 5545, Section 3.2.12 | |
|
|
|
8982 | | | | |
|
|
|
8983 | DELEGATED | Current | RFC 5545, Section 3.2.12 | |
|
|
|
8984 | | | | |
|
|
|
8985 | COMPLETED | Current | RFC 5545, Section 3.2.12 | |
|
|
|
8986 | | | | |
|
|
|
8987 | IN-PROCESS | Current | RFC 5545, Section 3.2.12 | |
|
|
|
8988 +--------------------+---------+--------------------------+ |
|
|
|
8989 |
|
|
|
8990 8.3.8. Relationship Types Registry |
|
|
|
8991 |
|
|
|
8992 The following table has been used to initialize the relationship |
|
|
|
8993 types registry. |
|
|
|
8994 |
|
|
|
8995 +-------------------+---------+--------------------------+ |
|
|
|
8996 | Relationship Type | Status | Reference | |
|
|
|
8997 +-------------------+---------+--------------------------+ |
|
|
|
8998 | CHILD | Current | RFC 5545, Section 3.2.15 | |
|
|
|
8999 | | | | |
|
|
|
9000 | PARENT | Current | RFC 5545, Section 3.2.15 | |
|
|
|
9001 | | | | |
|
|
|
9002 | SIBLING | Current | RFC 5545, Section 3.2.15 | |
|
|
|
9003 +-------------------+---------+--------------------------+ |
|
|
|
9004 |
|
|
|
9005 |
|
|
|
9006 |
|
|
|
9007 |
|
|
|
9008 |
|
|
|
9009 |
|
|
|
9010 |
|
|
|
9011 |
|
|
|
9012 |
|
|
|
9013 |
|
|
|
9014 |
|
|
|
9015 |
|
|
|
9016 |
|
|
|
9017 |
|
|
|
9018 Desruisseaux Standards Track [Page 161] |
|
|
|
i 9019 |
|
|
|
Err bitreich.org 70 |
|
|
|
9020 RFC 5545 iCalendar September 2009 |
|
|
|
9021 |
|
|
|
9022 |
|
|
|
9023 8.3.9. Participation Roles Registry |
|
|
|
9024 |
|
|
|
9025 The following table has been used to initialize the participation |
|
|
|
9026 roles registry. |
|
|
|
9027 |
|
|
|
9028 +-----------------+---------+--------------------------+ |
|
|
|
9029 | Role Type | Status | Reference | |
|
|
|
9030 +-----------------+---------+--------------------------+ |
|
|
|
9031 | CHAIR | Current | RFC 5545, Section 3.2.16 | |
|
|
|
9032 | | | | |
|
|
|
9033 | REQ-PARTICIPANT | Current | RFC 5545, Section 3.2.16 | |
|
|
|
9034 | | | | |
|
|
|
9035 | OPT-PARTICIPANT | Current | RFC 5545, Section 3.2.16 | |
|
|
|
9036 | | | | |
|
|
|
9037 | NON-PARTICIPANT | Current | RFC 5545, Section 3.2.16 | |
|
|
|
9038 +-----------------+---------+--------------------------+ |
|
|
|
9039 |
|
|
|
9040 8.3.10. Actions Registry |
|
|
|
9041 |
|
|
|
9042 The following table has been used to initialize the actions registry. |
|
|
|
9043 |
|
|
|
9044 +-----------+------------+----------------------------+ |
|
|
|
9045 | Action | Status | Reference | |
|
|
|
9046 +-----------+------------+----------------------------+ |
|
|
|
9047 | AUDIO | Current | RFC 5545, Section 3.8.6.1 | |
|
|
|
9048 | | | | |
|
|
|
9049 | DISPLAY | Current | RFC 5545, Section 3.8.6.1 | |
|
|
|
9050 | | | | |
|
|
|
9051 | EMAIL | Current | RFC 5545, Section 3.8.6.1 | |
|
|
|
9052 | | | | |
|
|
|
9053 | PROCEDURE | Deprecated | [RFC2445], Section 4.8.6.1 | |
|
|
|
9054 +-----------+------------+----------------------------+ |
|
|
|
9055 |
|
|
|
9056 8.3.11. Classifications Registry |
|
|
|
9057 |
|
|
|
9058 The following table has been used to initialize the classifications |
|
|
|
9059 registry. |
|
|
|
9060 |
|
|
|
9061 +----------------+---------+---------------------------+ |
|
|
|
9062 | Classification | Status | Reference | |
|
|
|
9063 +----------------+---------+---------------------------+ |
|
|
|
9064 | PUBLIC | Current | RFC 5545, Section 3.8.1.3 | |
|
|
|
9065 | | | | |
|
|
|
9066 | PRIVATE | Current | RFC 5545, Section 3.8.1.3 | |
|
|
|
9067 | | | | |
|
|
|
9068 | CONFIDENTIAL | Current | RFC 5545, Section 3.8.1.3 | |
|
|
|
9069 +----------------+---------+---------------------------+ |
|
|
|
9070 |
|
|
|
9071 |
|
|
|
9072 |
|
|
|
9073 |
|
|
|
9074 Desruisseaux Standards Track [Page 162] |
|
|
|
i 9075 |
|
|
|
Err bitreich.org 70 |
|
|
|
9076 RFC 5545 iCalendar September 2009 |
|
|
|
9077 |
|
|
|
9078 |
|
|
|
9079 8.3.12. Methods Registry |
|
|
|
9080 |
|
|
|
9081 No values are defined in this document for the "METHOD" property. |
|
|
|
9082 |
|
|
|
9083 9. Acknowledgments |
|
|
|
9084 |
|
|
|
9085 The editor of this document wishes to thank Frank Dawson and Derik |
|
|
|
9086 Stenerson, the original authors of RFC 2445, as well as the following |
|
|
|
9087 individuals who have participated in the drafting, review, and |
|
|
|
9088 discussion of this memo: |
|
|
|
9089 |
|
|
|
9090 Joe Abley, Hervey Allen, Steve Allen, Jay Batson, Oliver Block, |
|
|
|
9091 Stephane Bortzmeyer, Chris Bryant, Tantek Celik, Mark Crispin, Cyrus |
|
|
|
9092 Daboo, Mike Douglass, Andrew N. Dowden, Lisa Dusseault, Lars Eggert, |
|
|
|
9093 Gren Eliot, Pasi Eronen, Ben Fortuna, Ned Freed, Neal Gafter, Ted |
|
|
|
9094 Hardie, Tim Hare, Jeffrey Harris, Helge Hess, Paul B. Hill, Thomas |
|
|
|
9095 Hnetila, Russ Housley, Leif Johansson, Ciny Joy, Bruce Kahn, Reinhold |
|
|
|
9096 Kainhofer, Martin Kiff, Patrice Lapierre, Michiel van Leeuwen, |
|
|
|
9097 Jonathan Lennox, Jeff McCullough, Bill McQuillan, Alexey Melnikov, |
|
|
|
9098 John W. Noerenberg II, Chuck Norris, Mark Paterson, Simon Pilette, |
|
|
|
9099 Arnaud Quillaud, Robert Ransdell, Julian F. Reschke, Caleb |
|
|
|
9100 Richardson, Sam Roberts, Dan Romascanu, Mike Samuel, George Sexton, |
|
|
|
9101 Nigel Swinson, Clint Talbert, Simon Vaillancourt, Magnus Westerlund, |
|
|
|
9102 and Sandy Wills. |
|
|
|
9103 |
|
|
|
9104 A special thanks to the working group chairs Aki Niemi and Eliot Lear |
|
|
|
9105 for their support and guidance. |
|
|
|
9106 |
|
|
|
9107 The editor would also like to thank the Calendaring and Scheduling |
|
|
|
9108 Consortium for advice with this specification, and for organizing |
|
|
|
9109 interoperability testing events to help refine it. |
|
|
|
9110 |
|
|
|
9111 |
|
|
|
9112 |
|
|
|
9113 |
|
|
|
9114 |
|
|
|
9115 |
|
|
|
9116 |
|
|
|
9117 |
|
|
|
9118 |
|
|
|
9119 |
|
|
|
9120 |
|
|
|
9121 |
|
|
|
9122 |
|
|
|
9123 |
|
|
|
9124 |
|
|
|
9125 |
|
|
|
9126 |
|
|
|
9127 |
|
|
|
9128 |
|
|
|
9129 |
|
|
|
9130 Desruisseaux Standards Track [Page 163] |
|
|
|
i 9131 |
|
|
|
Err bitreich.org 70 |
|
|
|
9132 RFC 5545 iCalendar September 2009 |
|
|
|
9133 |
|
|
|
9134 |
|
|
|
9135 10. References |
|
|
|
9136 |
|
|
|
9137 10.1. Normative References |
|
|
|
9138 |
|
|
|
9139 [ISO.8601.2004] International Organization for |
|
|
|
9140 Standardization, "Data elements and |
|
|
|
9141 interchange formats -- Information interchange |
|
|
|
9142 -- Representation of dates and times", 2004. |
|
|
|
9143 |
|
|
|
9144 [ISO.9070.1991] International Organization for |
|
|
|
9145 Standardization, "Information Technology_SGML |
|
|
|
9146 Support Facilities -- Registration Procedures |
|
|
|
9147 for Public Text Owner Identifiers, Second |
|
|
|
9148 Edition", April 1991. |
|
|
|
9149 |
|
|
|
9150 [RFC2045] Freed, N. and N. Borenstein, "Multipurpose |
|
|
|
9151 Internet Mail Extensions (MIME) Part One: |
|
|
|
9152 Format of Internet Message Bodies", RFC 2045, |
|
|
|
9153 November 1996. |
|
|
|
9154 |
|
|
|
9155 [RFC2046] Freed, N. and N. Borenstein, "Multipurpose |
|
|
|
9156 Internet Mail Extensions (MIME) Part Two: |
|
|
|
9157 Media Types", RFC 2046, November 1996. |
|
|
|
9158 |
|
|
|
9159 [RFC2119] Bradner, S., "Key words for use in RFCs to |
|
|
|
9160 Indicate Requirement Levels", BCP 14, |
|
|
|
9161 RFC 2119, March 1997. |
|
|
|
9162 |
|
|
|
9163 [RFC2368] Hoffman, P., Masinter, L., and J. Zawinski, |
|
|
|
9164 "The mailto URL scheme", RFC 2368, July 1998. |
|
|
|
9165 |
|
|
|
9166 [RFC3629] Yergeau, F., "UTF-8, a transformation format |
|
|
|
9167 of ISO 10646", STD 63, RFC 3629, |
|
|
|
9168 November 2003. |
|
|
|
9169 |
|
|
|
9170 [RFC3986] Berners-Lee, T., Fielding, R., and L. |
|
|
|
9171 Masinter, "Uniform Resource Identifier (URI): |
|
|
|
9172 Generic Syntax", STD 66, RFC 3986, |
|
|
|
9173 January 2005. |
|
|
|
9174 |
|
|
|
9175 [RFC4288] Freed, N. and J. Klensin, "Media Type |
|
|
|
9176 Specifications and Registration Procedures", |
|
|
|
9177 BCP 13, RFC 4288, December 2005. |
|
|
|
9178 |
|
|
|
9179 [RFC4648] Josefsson, S., "The Base16, Base32, and Base64 |
|
|
|
9180 Data Encodings", RFC 4648, October 2006. |
|
|
|
9181 |
|
|
|
9182 |
|
|
|
9183 |
|
|
|
9184 |
|
|
|
9185 |
|
|
|
9186 Desruisseaux Standards Track [Page 164] |
|
|
|
i 9187 |
|
|
|
Err bitreich.org 70 |
|
|
|
9188 RFC 5545 iCalendar September 2009 |
|
|
|
9189 |
|
|
|
9190 |
|
|
|
9191 [RFC5234] Crocker, D. and P. Overell, "Augmented BNF for |
|
|
|
9192 Syntax Specifications: ABNF", STD 68, |
|
|
|
9193 RFC 5234, January 2008. |
|
|
|
9194 |
|
|
|
9195 [RFC5646] Phillips, A., Ed., and M. Davis, Ed., "Tags |
|
|
|
9196 for Identifying Languages", BCP 47, RFC 5646, |
|
|
|
9197 September 2009. |
|
|
|
9198 |
|
|
|
9199 [US-ASCII] American National Standards Institute, "Coded |
|
|
|
9200 Character Set - 7-bit American Standard Code |
|
|
|
9201 for Information Interchange", ANSI X3.4, 1986. |
|
|
|
9202 |
|
|
|
9203 10.2. Informative References |
|
|
|
9204 |
|
|
|
9205 [2446bis] Daboo, C., "iCalendar Transport-Independent |
|
|
|
9206 Interoperability Protocol (iTIP)", Work |
|
|
|
9207 in Progress, April 2009. |
|
|
|
9208 |
|
|
|
9209 [2447bis] Melnikov, A., "iCalendar Message-Based |
|
|
|
9210 Interoperability Protocol (iMIP)", Work |
|
|
|
9211 in Progress, June 2008. |
|
|
|
9212 |
|
|
|
9213 [ANSI INCITS 61-1986] International Committee for Information |
|
|
|
9214 Technology, "Representation of Geographic |
|
|
|
9215 Point Locations for Information Interchange |
|
|
|
9216 (formerly ANSI X3.61-1986 (R1997))", ANSI |
|
|
|
9217 INCITS 61-1986 (R2007), 2007. |
|
|
|
9218 |
|
|
|
9219 [RFC1738] Berners-Lee, T., Masinter, L., and M. |
|
|
|
9220 McCahill, "Uniform Resource Locators (URL)", |
|
|
|
9221 RFC 1738, December 1994. |
|
|
|
9222 |
|
|
|
9223 [RFC2392] Levinson, E., "Content-ID and Message-ID |
|
|
|
9224 Uniform Resource Locators", RFC 2392, |
|
|
|
9225 August 1998. |
|
|
|
9226 |
|
|
|
9227 [RFC2397] Masinter, L., "The "data" URL scheme", |
|
|
|
9228 RFC 2397, August 1998. |
|
|
|
9229 |
|
|
|
9230 [RFC2425] Howes, T., Smith, M., and F. Dawson, "A MIME |
|
|
|
9231 Content-Type for Directory Information", |
|
|
|
9232 RFC 2425, September 1998. |
|
|
|
9233 |
|
|
|
9234 [RFC2426] Dawson, F. and T. Howes, "vCard MIME Directory |
|
|
|
9235 Profile", RFC 2426, September 1998. |
|
|
|
9236 |
|
|
|
9237 |
|
|
|
9238 |
|
|
|
9239 |
|
|
|
9240 |
|
|
|
9241 |
|
|
|
9242 Desruisseaux Standards Track [Page 165] |
|
|
|
i 9243 |
|
|
|
Err bitreich.org 70 |
|
|
|
9244 RFC 5545 iCalendar September 2009 |
|
|
|
9245 |
|
|
|
9246 |
|
|
|
9247 [RFC2445] Dawson, F. and Stenerson, D., "Internet |
|
|
|
9248 Calendaring and Scheduling Core Object |
|
|
|
9249 Specification (iCalendar)", RFC 2445, |
|
|
|
9250 November 1998. |
|
|
|
9251 |
|
|
|
9252 [RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, |
|
|
|
9253 H., Masinter, L., Leach, P., and T. Berners- |
|
|
|
9254 Lee, "Hypertext Transfer Protocol -- |
|
|
|
9255 HTTP/1.1", RFC 2616, June 1999. |
|
|
|
9256 |
|
|
|
9257 [RFC2818] Rescorla, E., "HTTP Over TLS", RFC 2818, |
|
|
|
9258 May 2000. |
|
|
|
9259 |
|
|
|
9260 [RFC4516] Smith, M. and T. Howes, "Lightweight Directory |
|
|
|
9261 Access Protocol (LDAP): Uniform Resource |
|
|
|
9262 Locator", RFC 4516, June 2006. |
|
|
|
9263 |
|
|
|
9264 [RFC4791] Daboo, C., Desruisseaux, B., and L. Dusseault, |
|
|
|
9265 "Calendaring Extensions to WebDAV (CalDAV)", |
|
|
|
9266 RFC 4791, March 2007. |
|
|
|
9267 |
|
|
|
9268 [TZDB] Eggert, P. and A.D. Olson, "Sources for Time |
|
|
|
9269 Zone and Daylight Saving Time Data", |
|
|
|
9270 July 2009, |
|
|
|
9271 <http://www.twinsun.com/tz/tz-link.htm>. |
|
|
|
9272 |
|
|
|
9273 [VCAL] Internet Mail Consortium, "vCalendar: The |
|
|
|
9274 Electronic Calendaring and Scheduling Exchange |
|
|
|
9275 Format", September 1996, |
|
|
|
9276 <http://www.imc.org/pdi/vcal-10.txt>. |
|
|
|
9277 |
|
|
|
9278 |
|
|
|
9279 |
|
|
|
9280 |
|
|
|
9281 |
|
|
|
9282 |
|
|
|
9283 |
|
|
|
9284 |
|
|
|
9285 |
|
|
|
9286 |
|
|
|
9287 |
|
|
|
9288 |
|
|
|
9289 |
|
|
|
9290 |
|
|
|
9291 |
|
|
|
9292 |
|
|
|
9293 |
|
|
|
9294 |
|
|
|
9295 |
|
|
|
9296 |
|
|
|
9297 |
|
|
|
9298 Desruisseaux Standards Track [Page 166] |
|
|
|
i 9299 |
|
|
|
Err bitreich.org 70 |
|
|
|
9300 RFC 5545 iCalendar September 2009 |
|
|
|
9301 |
|
|
|
9302 |
|
|
|
9303 Appendix A. Differences from RFC 2445 |
|
|
|
9304 |
|
|
|
9305 This appendix contains a list of changes that have been made in the |
|
|
|
9306 Internet Calendaring and Scheduling Core Object Specification from |
|
|
|
9307 RFC 2445. |
|
|
|
9308 |
|
|
|
9309 A.1. New Restrictions |
|
|
|
9310 |
|
|
|
9311 1. The "DTSTART" property SHOULD be synchronized with the recurrence |
|
|
|
9312 rule, if specified. |
|
|
|
9313 |
|
|
|
9314 2. The "RRULE" property SHOULD NOT occur more than once in a |
|
|
|
9315 component. |
|
|
|
9316 |
|
|
|
9317 3. The BYHOUR, BYMINUTE, and BYSECOND rule parts MUST NOT be |
|
|
|
9318 specified in the "RRULE" property when the "DTSTART" property is |
|
|
|
9319 specified as a DATE value. |
|
|
|
9320 |
|
|
|
9321 4. The value type of the "DTEND" or "DUE" properties MUST match the |
|
|
|
9322 value type of "DTSTART" property. |
|
|
|
9323 |
|
|
|
9324 5. The "DURATION" property can no longer appear in "VFREEBUSY" |
|
|
|
9325 components. |
|
|
|
9326 |
|
|
|
9327 A.2. Restrictions Removed |
|
|
|
9328 |
|
|
|
9329 1. The "DTSTART" and "DTEND" properties are no longer required to be |
|
|
|
9330 specified as date with local time and time zone reference when |
|
|
|
9331 used with a recurrence rule. |
|
|
|
9332 |
|
|
|
9333 A.3. Deprecated Features |
|
|
|
9334 |
|
|
|
9335 1. The "EXRULE" property can no longer be specified in a component. |
|
|
|
9336 |
|
|
|
9337 2. The "THISANDPRIOR" value can no longer be used with the "RANGE" |
|
|
|
9338 parameter. |
|
|
|
9339 |
|
|
|
9340 3. The "PROCEDURE" value can no longer be used with the "ACTION" |
|
|
|
9341 property. |
|
|
|
9342 |
|
|
|
9343 4. The value type RECUR no longer allows multiple values to be |
|
|
|
9344 specified by a COMMA-separated list of values. |
|
|
|
9345 |
|
|
|
9346 5. x-name rule parts can no longer be specified in properties of |
|
|
|
9347 RECUR value type (e.g., "RRULE"). x-param can be used on RECUR |
|
|
|
9348 value type properties instead. |
|
|
|
9349 |
|
|
|
9350 |
|
|
|
9351 |
|
|
|
9352 |
|
|
|
9353 |
|
|
|
9354 Desruisseaux Standards Track [Page 167] |
|
|
|
i 9355 |
|
|
|
Err bitreich.org 70 |
|
|
|
9356 RFC 5545 iCalendar September 2009 |
|
|
|
9357 |
|
|
|
9358 |
|
|
|
9359 Author's Address |
|
|
|
9360 |
|
|
|
9361 Bernard Desruisseaux (editor) |
|
|
|
9362 Oracle Corporation |
|
|
|
9363 600 blvd. de Maisonneuve West |
|
|
|
9364 Suite 1900 |
|
|
|
9365 Montreal, QC H3A 3J2 |
|
|
|
9366 CANADA |
|
|
|
9367 |
|
|
|
9368 EMail: bernard.desruisseaux@oracle.com |
|
|
|
9369 URI: http://www.oracle.com/ |
|
|
|
9370 |
|
|
|
9371 |
|
|
|
9372 |
|
|
|
9373 |
|
|
|
9374 |
|
|
|
9375 |
|
|
|
9376 |
|
|
|
9377 |
|
|
|
9378 |
|
|
|
9379 |
|
|
|
9380 |
|
|
|
9381 |
|
|
|
9382 |
|
|
|
9383 |
|
|
|
9384 |
|
|
|
9385 |
|
|
|
9386 |
|
|
|
9387 |
|
|
|
9388 |
|
|
|
9389 |
|
|
|
9390 |
|
|
|
9391 |
|
|
|
9392 |
|
|
|
9393 |
|
|
|
9394 |
|
|
|
9395 |
|
|
|
9396 |
|
|
|
9397 |
|
|
|
9398 |
|
|
|
9399 |
|
|
|
9400 |
|
|
|
9401 |
|
|
|
9402 |
|
|
|
9403 |
|
|
|
9404 |
|
|
|
9405 |
|
|
|
9406 |
|
|
|
9407 |
|
|
|
9408 |
|
|
|
9409 |
|
|
|
9410 Desruisseaux Standards Track [Page 168] |
|
|
|
i 9411 |
|
|
|
Err bitreich.org 70 |
|