]>
Commit | Line | Data |
---|---|---|
a5eae6b7 MR |
1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
2 | <html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en"><head> | |
3 | ||
4 | ||
5 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> | |
6 | <meta name="robots" content="index,follow"> | |
7 | <meta name="creator" content="rfcmarkup version 1.74"> | |
8 | <link rel="icon" href="http://tools.ietf.org/images/rfc.png" type="image/png"> | |
9 | <link rel="shortcut icon" href="http://tools.ietf.org/images/rfc.png" type="image/png"> | |
10 | <title>RFC 2445 - Internet Calendaring and Scheduling Core Object Specification (iCalendar)</title> | |
11 | ||
12 | <style type="text/css"> | |
13 | body { | |
14 | margin: 0px 8px; | |
15 | font-size: 1em; | |
16 | } | |
17 | h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { | |
18 | font-weight: bold; | |
19 | line-height: 0pt; | |
20 | display: inline; | |
21 | white-space: pre; | |
22 | font-family: monospace; | |
23 | font-size: 1em; | |
24 | font-weight: bold; | |
25 | } | |
26 | pre { | |
27 | font-size: 1em; | |
28 | margin-top: 0px; | |
29 | margin-bottom: 0px; | |
30 | } | |
31 | .pre { | |
32 | white-space: pre; | |
33 | font-family: monospace; | |
34 | } | |
35 | .header{ | |
36 | font-weight: bold; | |
37 | } | |
38 | .newpage { | |
39 | page-break-before: always; | |
40 | } | |
41 | .invisible { | |
42 | text-decoration: none; | |
43 | color: white; | |
44 | } | |
45 | @media print { | |
46 | body { | |
47 | font-size: 10.5pt; | |
48 | } | |
49 | h1, h2, h3, h4, h5, h6 { | |
50 | font-size: 10.5pt; | |
51 | } | |
52 | ||
53 | a:link, a:visited { | |
54 | color: inherit; | |
55 | text-decoration: none; | |
56 | } | |
57 | .noprint { | |
58 | display: none; | |
59 | } | |
60 | } | |
61 | @media screen { | |
62 | .grey, .grey a:link, .grey a:visited { | |
63 | color: #777; | |
64 | } | |
65 | .docinfo { | |
66 | background-color: #EEE; | |
67 | } | |
68 | .top { | |
69 | border-top: 7px solid #EEE; | |
70 | } | |
71 | .bgwhite { background-color: white; } | |
72 | .bgred { background-color: #F44; } | |
73 | .bggrey { background-color: #666; } | |
74 | .bgbrown { background-color: #840; } | |
75 | .bgorange { background-color: #FA0; } | |
76 | .bgyellow { background-color: #EE0; } | |
77 | .bgmagenta{ background-color: #F4F; } | |
78 | .bgblue { background-color: #66F; } | |
79 | .bgcyan { background-color: #4DD; } | |
80 | .bggreen { background-color: #4F4; } | |
81 | ||
82 | .legend { font-size: 90%; } | |
83 | .cplate { font-size: 70%; border: solid grey 1px; } | |
84 | } | |
85 | </style> | |
86 | ||
87 | <script type="text/javascript"><!-- | |
88 | function addHeaderTags() { | |
89 | var spans = document.getElementsByTagName("span"); | |
90 | for (var i=0; i < spans.length; i++) { | |
91 | var elem = spans[i]; | |
92 | if (elem) { | |
93 | var level = elem.getAttribute("class"); | |
94 | if (level == "h1" || level == "h2" || level == "h3" || level == "h4" || level == "h5" || level == "h6") { | |
95 | elem.innerHTML = "<"+level+">"+elem.innerHTML+"</"+level+">"; | |
96 | } | |
97 | } | |
98 | } | |
99 | } | |
100 | var legend_html = "Colour legend:<br /> <table> <tr><td>Unknown:</td> <td><span class='cplate bgwhite'> </span></td></tr> <tr><td>Draft:</td> <td><span class='cplate bgred'> </span></td></tr> <tr><td>Informational:</td> <td><span class='cplate bgorange'> </span></td></tr> <tr><td>Experimental:</td> <td><span class='cplate bgyellow'> </span></td></tr> <tr><td>Best Common Practice:</td><td><span class='cplate bgmagenta'> </span></td></tr> <tr><td>Proposed Standard:</td><td><span class='cplate bgblue'> </span></td></tr> <tr><td>Draft Standard:</td> <td><span class='cplate bgcyan'> </span></td></tr> <tr><td>Standard:</td> <td><span class='cplate bggreen'> </span></td></tr> <tr><td>Historic:</td> <td><span class='cplate bggrey'> </span></td></tr> <tr><td>Obsolete:</td> <td><span class='cplate bgbrown'> </span></td></tr> </table>"; | |
101 | function showElem(id) { | |
102 | var elem = document.getElementById(id); | |
103 | elem.innerHTML = eval(id+"_html"); | |
104 | elem.style.visibility='visible'; | |
105 | } | |
106 | function hideElem(id) { | |
107 | var elem = document.getElementById(id); | |
108 | elem.style.visibility='hidden'; | |
109 | elem.innerHTML = ""; | |
110 | } | |
111 | // --> | |
112 | </script> | |
113 | </head><body onload="addHeaderTags()"> | |
114 | <div style="height: 13px;"> | |
115 | <div onmouseover="this.style.cursor='pointer';" onclick="showElem('legend');" onmouseout="hideElem('legend')" style="height: 6px; position: absolute; cursor: pointer;" class="pre noprint docinfo bgblue" title="Click for colour legend."> </div> | |
116 | <div id="legend" class="docinfo noprint pre legend" style="border: 1px solid rgb(51, 68, 85); padding: 4px 9px 5px 7px; position: absolute; top: 4px; left: 4ex; visibility: hidden; background-color: white;" onmouseover="showElem('legend');" onmouseout="hideElem('legend');"></div> | |
117 | </div> | |
118 | <span class="pre noprint docinfo top">[<a style="" href="http://tools.ietf.org/html/" title="Document search and retrieval page">RFCs/IDs</a>] [<a href="http://tools.ietf.org/rfc/rfc2445.txt" title="Plaintext version of this document">Plain</a>] [From <a href="http://tools.ietf.org/html/draft-ietf-calsch-ical">draft-ietf-calsch-ical</a>] </span><br> | |
119 | <span class="pre noprint docinfo"> </span><br> | |
120 | <span class="pre noprint docinfo"> PROPOSED STANDARD</span><br> | |
121 | <span class="pre noprint docinfo"> <a style="" href="http://www.rfc-editor.org/errata_search.php?rfc=2445">Errata</a></span><br> | |
122 | <pre>Network Working Group F. Dawson | |
123 | Request for Comments: 2445 Lotus | |
124 | Category: Standards Track D. Stenerson | |
125 | Microsoft | |
126 | November 1998 | |
127 | ||
128 | ||
129 | <span class="h1"><h1>Internet Calendaring and Scheduling Core Object Specification</h1></span> | |
130 | <span class="h1"><h1>(iCalendar)</h1></span> | |
131 | ||
132 | Status of this Memo | |
133 | ||
134 | This document specifies an Internet standards track protocol for the | |
135 | Internet community, and requests discussion and suggestions for | |
136 | improvements. Please refer to the current edition of the "Internet | |
137 | Official Protocol Standards" (STD 1) for the standardization state | |
138 | and status of this protocol. Distribution of this memo is unlimited. | |
139 | ||
140 | Copyright Notice | |
141 | ||
142 | Copyright (C) The Internet Society (1998). All Rights Reserved. | |
143 | ||
144 | Abstract | |
145 | ||
146 | There is a clear need to provide and deploy interoperable calendaring | |
147 | and scheduling services for the Internet. Current group scheduling | |
148 | and Personal Information Management (PIM) products are being extended | |
149 | for use across the Internet, today, in proprietary ways. This memo | |
150 | has been defined to provide the definition of a common format for | |
151 | openly exchanging calendaring and scheduling information across the | |
152 | Internet. | |
153 | ||
154 | This memo is formatted as a registration for a MIME media type per | |
155 | [<a href="http://tools.ietf.org/html/rfc2048" title=""Multipurpose Internet Mail Extensions (MIME) - Part Four: Registration Procedures"">RFC 2048</a>]. However, the format in this memo is equally applicable | |
156 | for use outside of a MIME message content type. | |
157 | ||
158 | The proposed media type value is 'text/calendar'. This string would | |
159 | label a media type containing calendaring and scheduling information | |
160 | encoded as text characters formatted in a manner outlined below. | |
161 | ||
162 | This MIME media type provides a standard content type for capturing | |
163 | calendar event, to-do and journal entry information. It also can be | |
164 | used to convey free/busy time information. The content type is | |
165 | suitable as a MIME message entity that can be transferred over MIME | |
166 | based email systems, using HTTP or some other Internet transport. In | |
167 | ||
168 | ||
169 | ||
170 | ||
171 | ||
172 | ||
173 | <span class="grey">Dawson & Stenerson Standards Track [Page 1]</span> | |
174 | </pre><pre class="newpage"><a name="page-2" id="page-2" href="#page-2" class="invisible"> </a> | |
175 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
176 | ||
177 | ||
178 | addition, the content type is useful as an object for interactions | |
179 | between desktop applications using the operating system clipboard, | |
180 | drag/drop or file systems capabilities. | |
181 | ||
182 | This memo is based on the earlier work of the vCalendar specification | |
183 | for the exchange of personal calendaring and scheduling information. | |
184 | In order to avoid confusion with this referenced work, this memo is | |
185 | to be known as the iCalendar specification. | |
186 | ||
187 | This memo defines the format for specifying iCalendar object methods. | |
188 | An iCalendar object method is a set of usage constraints for the | |
189 | iCalendar object. For example, these methods might define scheduling | |
190 | messages that request an event be scheduled, reply to an event | |
191 | request, send a cancellation notice for an event, modify or replace | |
192 | the definition of an event, provide a counter proposal for an | |
193 | original event request, delegate an event request to another | |
194 | individual, request free or busy time, reply to a free or busy time | |
195 | request, or provide similar scheduling messages for a to-do or | |
196 | journal entry calendar component. The iCalendar Transport-indendent | |
197 | Interoperability Protocol (iTIP) defined in [<a href="#ref-ITIP" title=""iCalendar Transport-Independent Interoperability Protocol (iTIP) : Scheduling Events, Busy Time, To-dos and Journal Entries"">ITIP</a>] is one such | |
198 | scheduling protocol. | |
199 | ||
200 | Table of Contents | |
201 | ||
202 | <a href="#section-1">1</a> Introduction.....................................................<a href="#page-5">5</a> | |
203 | <a href="#section-2">2</a> Basic Grammar and Conventions....................................<a href="#page-6">6</a> | |
204 | <a href="#section-2.1">2.1</a> Formatting Conventions .......................................<a href="#page-7">7</a> | |
205 | <a href="#section-2.2">2.2</a> Related Memos ................................................<a href="#page-8">8</a> | |
206 | <a href="#section-2.3">2.3</a> International Considerations .................................<a href="#page-8">8</a> | |
207 | <a href="#section-3">3</a> Registration Information.........................................<a href="#page-8">8</a> | |
208 | <a href="#section-3.1">3.1</a> Content Type .................................................<a href="#page-8">8</a> | |
209 | <a href="#section-3.2">3.2</a> Parameters ...................................................<a href="#page-9">9</a> | |
210 | <a href="#section-3.3">3.3</a> Content Header Fields .......................................<a href="#page-10">10</a> | |
211 | <a href="#section-3.4">3.4</a> Encoding Considerations .....................................<a href="#page-10">10</a> | |
212 | <a href="#section-3.5">3.5</a> Security Considerations .....................................<a href="#page-10">10</a> | |
213 | <a href="#section-3.6">3.6</a> Interoperability Considerations .............................<a href="#page-11">11</a> | |
214 | <a href="#section-3.7">3.7</a> Applications Which Use This Media Type ......................<a href="#page-11">11</a> | |
215 | <a href="#section-3.8">3.8</a> Additional Information ......................................<a href="#page-11">11</a> | |
216 | <a href="#section-3.9">3.9</a> Magic Numbers ...............................................<a href="#page-11">11</a> | |
217 | <a href="#section-3.10">3.10</a> File Extensions ............................................<a href="#page-11">11</a> | |
218 | <a href="#section-3.11">3.11</a> Contact for Further Information: ...........................<a href="#page-12">12</a> | |
219 | <a href="#section-3.12">3.12</a> Intended Usage .............................................<a href="#page-12">12</a> | |
220 | <a href="#section-3.13">3.13</a> Authors/Change Controllers .................................<a href="#page-12">12</a> | |
221 | <a href="#section-4">4</a> iCalendar Object Specification..................................<a href="#page-13">13</a> | |
222 | <a href="#section-4.1">4.1</a> Content Lines ...............................................<a href="#page-13">13</a> | |
223 | <a href="#section-4.1.1">4.1.1</a> List and Field Separators ................................<a href="#page-16">16</a> | |
224 | <a href="#section-4.1.2">4.1.2</a> Multiple Values ..........................................<a href="#page-16">16</a> | |
225 | <a href="#section-4.1.3">4.1.3</a> Binary Content ...........................................<a href="#page-16">16</a> | |
226 | ||
227 | ||
228 | ||
229 | <span class="grey">Dawson & Stenerson Standards Track [Page 2]</span> | |
230 | </pre><pre class="newpage"><a name="page-3" id="page-3" href="#page-3" class="invisible"> </a> | |
231 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
232 | ||
233 | ||
234 | <a href="#section-4.1.4">4.1.4</a> Character Set ............................................<a href="#page-17">17</a> | |
235 | <a href="#section-4.2">4.2</a> Property Parameters .........................................<a href="#page-17">17</a> | |
236 | <a href="#section-4.2.1">4.2.1</a> Alternate Text Representation ............................<a href="#page-18">18</a> | |
237 | <a href="#section-4.2.2">4.2.2</a> Common Name ..............................................<a href="#page-19">19</a> | |
238 | <a href="#section-4.2.3">4.2.3</a> Calendar User Type .......................................<a href="#page-20">20</a> | |
239 | <a href="#section-4.2.4">4.2.4</a> Delegators ...............................................<a href="#page-20">20</a> | |
240 | <a href="#section-4.2.5">4.2.5</a> Delegatees ...............................................<a href="#page-21">21</a> | |
241 | <a href="#section-4.2.6">4.2.6</a> Directory Entry Reference ................................<a href="#page-21">21</a> | |
242 | <a href="#section-4.2.7">4.2.7</a> Inline Encoding ..........................................<a href="#page-22">22</a> | |
243 | <a href="#section-4.2.8">4.2.8</a> Format Type ..............................................<a href="#page-23">23</a> | |
244 | <a href="#section-4.2.9">4.2.9</a> Free/Busy Time Type ......................................<a href="#page-23">23</a> | |
245 | <a href="#section-4.2.10">4.2.10</a> Language ................................................<a href="#page-24">24</a> | |
246 | <a href="#section-4.2.11">4.2.11</a> Group or List Membership ................................<a href="#page-25">25</a> | |
247 | <a href="#section-4.2.12">4.2.12</a> Participation Status ....................................<a href="#page-25">25</a> | |
248 | <a href="#section-4.2.13">4.2.13</a> Recurrence Identifier Range .............................<a href="#page-27">27</a> | |
249 | <a href="#section-4.2.14">4.2.14</a> Alarm Trigger Relationship ..............................<a href="#page-27">27</a> | |
250 | <a href="#section-4.2.15">4.2.15</a> Relationship Type .......................................<a href="#page-28">28</a> | |
251 | <a href="#section-4.2.16">4.2.16</a> Participation Role ......................................<a href="#page-29">29</a> | |
252 | <a href="#section-4.2.17">4.2.17</a> RSVP Expectation ........................................<a href="#page-29">29</a> | |
253 | <a href="#section-4.2.18">4.2.18</a> Sent By .................................................<a href="#page-30">30</a> | |
254 | <a href="#section-4.2.19">4.2.19</a> Time Zone Identifier ....................................<a href="#page-30">30</a> | |
255 | <a href="#section-4.2.20">4.2.20</a> Value Data Types ........................................<a href="#page-32">32</a> | |
256 | <a href="#section-4.3">4.3</a> Property Value Data Types ...................................<a href="#page-32">32</a> | |
257 | <a href="#section-4.3.1">4.3.1</a> Binary ...................................................<a href="#page-33">33</a> | |
258 | <a href="#section-4.3.2">4.3.2</a> Boolean ..................................................<a href="#page-33">33</a> | |
259 | <a href="#section-4.3.3">4.3.3</a> Calendar User Address ....................................<a href="#page-34">34</a> | |
260 | <a href="#section-4.3.4">4.3.4</a> Date .....................................................<a href="#page-34">34</a> | |
261 | <a href="#section-4.3.5">4.3.5</a> Date-Time ................................................<a href="#page-35">35</a> | |
262 | <a href="#section-4.3.6">4.3.6</a> Duration .................................................<a href="#page-37">37</a> | |
263 | <a href="#section-4.3.7">4.3.7</a> Float ....................................................<a href="#page-38">38</a> | |
264 | <a href="#section-4.3.8">4.3.8</a> Integer ..................................................<a href="#page-38">38</a> | |
265 | <a href="#section-4.3.9">4.3.9</a> Period of Time ...........................................<a href="#page-39">39</a> | |
266 | <a href="#section-4.3.10">4.3.10</a> Recurrence Rule .........................................<a href="#page-40">40</a> | |
267 | <a href="#section-4.3.11">4.3.11</a> Text ....................................................<a href="#page-45">45</a> | |
268 | <a href="#section-4.3.12">4.3.12</a> Time ....................................................<a href="#page-47">47</a> | |
269 | <a href="#section-4.3.13">4.3.13</a> URI .....................................................<a href="#page-49">49</a> | |
270 | <a href="#section-4.3.14">4.3.14</a> UTC Offset ..............................................<a href="#page-49">49</a> | |
271 | <a href="#section-4.4">4.4</a> iCalendar Object ............................................<a href="#page-50">50</a> | |
272 | <a href="#section-4.5">4.5</a> Property ....................................................<a href="#page-51">51</a> | |
273 | <a href="#section-4.6">4.6</a> Calendar Components .........................................<a href="#page-51">51</a> | |
274 | <a href="#section-4.6.1">4.6.1</a> Event Component ..........................................<a href="#page-52">52</a> | |
275 | <a href="#section-4.6.2">4.6.2</a> To-do Component ..........................................<a href="#page-55">55</a> | |
276 | <a href="#section-4.6.3">4.6.3</a> Journal Component ........................................<a href="#page-56">56</a> | |
277 | <a href="#section-4.6.4">4.6.4</a> Free/Busy Component ......................................<a href="#page-58">58</a> | |
278 | <a href="#section-4.6.5">4.6.5</a> Time Zone Component ......................................<a href="#page-60">60</a> | |
279 | <a href="#section-4.6.6">4.6.6</a> Alarm Component ..........................................<a href="#page-67">67</a> | |
280 | <a href="#section-4.7">4.7</a> Calendar Properties .........................................<a href="#page-73">73</a> | |
281 | <a href="#section-4.7.1">4.7.1</a> Calendar Scale ...........................................<a href="#page-73">73</a> | |
282 | ||
283 | ||
284 | ||
285 | <span class="grey">Dawson & Stenerson Standards Track [Page 3]</span> | |
286 | </pre><pre class="newpage"><a name="page-4" id="page-4" href="#page-4" class="invisible"> </a> | |
287 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
288 | ||
289 | ||
290 | <a href="#section-4.7.2">4.7.2</a> Method ...................................................<a href="#page-74">74</a> | |
291 | <a href="#section-4.7.3">4.7.3</a> Product Identifier .......................................<a href="#page-75">75</a> | |
292 | <a href="#section-4.7.4">4.7.4</a> Version ..................................................<a href="#page-76">76</a> | |
293 | <a href="#section-4.8">4.8</a> Component Properties ........................................<a href="#page-77">77</a> | |
294 | <a href="#section-4.8.1">4.8.1</a> Descriptive Component Properties .........................<a href="#page-77">77</a> | |
295 | <a href="#section-4.8.1.1">4.8.1.1</a> Attachment ...........................................<a href="#page-77">77</a> | |
296 | <a href="#section-4.8.1.2">4.8.1.2</a> Categories ...........................................<a href="#page-78">78</a> | |
297 | <a href="#section-4.8.1.3">4.8.1.3</a> Classification .......................................<a href="#page-79">79</a> | |
298 | <a href="#section-4.8.1.4">4.8.1.4</a> Comment ..............................................<a href="#page-80">80</a> | |
299 | <a href="#section-4.8.1.5">4.8.1.5</a> Description ..........................................<a href="#page-81">81</a> | |
300 | <a href="#section-4.8.1.6">4.8.1.6</a> Geographic Position ..................................<a href="#page-82">82</a> | |
301 | <a href="#section-4.8.1.7">4.8.1.7</a> Location .............................................<a href="#page-84">84</a> | |
302 | <a href="#section-4.8.1.8">4.8.1.8</a> Percent Complete .....................................<a href="#page-85">85</a> | |
303 | <a href="#section-4.8.1.9">4.8.1.9</a> Priority .............................................<a href="#page-85">85</a> | |
304 | <a href="#section-4.8.1.10">4.8.1.10</a> Resources ...........................................<a href="#page-87">87</a> | |
305 | <a href="#section-4.8.1.11">4.8.1.11</a> Status ..............................................<a href="#page-88">88</a> | |
306 | <a href="#section-4.8.1.12">4.8.1.12</a> Summary .............................................<a href="#page-89">89</a> | |
307 | <a href="#section-4.8.2">4.8.2</a> Date and Time Component Properties .......................<a href="#page-90">90</a> | |
308 | <a href="#section-4.8.2.1">4.8.2.1</a> Date/Time Completed ..................................<a href="#page-90">90</a> | |
309 | <a href="#section-4.8.2.2">4.8.2.2</a> Date/Time End ........................................<a href="#page-91">91</a> | |
310 | <a href="#section-4.8.2.3">4.8.2.3</a> Date/Time Due ........................................<a href="#page-92">92</a> | |
311 | <a href="#section-4.8.2.4">4.8.2.4</a> Date/Time Start ......................................<a href="#page-93">93</a> | |
312 | <a href="#section-4.8.2.5">4.8.2.5</a> Duration .............................................<a href="#page-94">94</a> | |
313 | <a href="#section-4.8.2.6">4.8.2.6</a> Free/Busy Time .......................................<a href="#page-95">95</a> | |
314 | <a href="#section-4.8.2.7">4.8.2.7</a> Time Transparency ....................................<a href="#page-96">96</a> | |
315 | <a href="#section-4.8.3">4.8.3</a> Time Zone Component Properties ...........................<a href="#page-97">97</a> | |
316 | <a href="#section-4.8.3.1">4.8.3.1</a> Time Zone Identifier .................................<a href="#page-97">97</a> | |
317 | <a href="#section-4.8.3.2">4.8.3.2</a> Time Zone Name .......................................<a href="#page-98">98</a> | |
318 | <a href="#section-4.8.3.3">4.8.3.3</a> Time Zone Offset From ................................<a href="#page-99">99</a> | |
319 | <a href="#section-4.8.3.4">4.8.3.4</a> Time Zone Offset To .................................<a href="#page-100">100</a> | |
320 | <a href="#section-4.8.3.5">4.8.3.5</a> Time Zone URL .......................................<a href="#page-101">101</a> | |
321 | <a href="#section-4.8.4">4.8.4</a> Relationship Component Properties .......................<a href="#page-102">102</a> | |
322 | <a href="#section-4.8.4.1">4.8.4.1</a> Attendee ............................................<a href="#page-102">102</a> | |
323 | <a href="#section-4.8.4.2">4.8.4.2</a> Contact .............................................<a href="#page-104">104</a> | |
324 | <a href="#section-4.8.4.3">4.8.4.3</a> Organizer ...........................................<a href="#page-106">106</a> | |
325 | <a href="#section-4.8.4.4">4.8.4.4</a> Recurrence ID .......................................<a href="#page-107">107</a> | |
326 | <a href="#section-4.8.4.5">4.8.4.5</a> Related To ..........................................<a href="#page-109">109</a> | |
327 | <a href="#section-4.8.4.6">4.8.4.6</a> Uniform Resource Locator ............................<a href="#page-110">110</a> | |
328 | <a href="#section-4.8.4.7">4.8.4.7</a> Unique Identifier ...................................<a href="#page-111">111</a> | |
329 | <a href="#section-4.8.5">4.8.5</a> Recurrence Component Properties .........................<a href="#page-112">112</a> | |
330 | <a href="#section-4.8.5.1">4.8.5.1</a> Exception Date/Times ................................<a href="#page-112">112</a> | |
331 | <a href="#section-4.8.5.2">4.8.5.2</a> Exception Rule ......................................<a href="#page-114">114</a> | |
332 | <a href="#section-4.8.5.3">4.8.5.3</a> Recurrence Date/Times ...............................<a href="#page-115">115</a> | |
333 | <a href="#section-4.8.5.4">4.8.5.4</a> Recurrence Rule .....................................<a href="#page-117">117</a> | |
334 | <a href="#section-4.8.6">4.8.6</a> Alarm Component Properties ..............................<a href="#page-126">126</a> | |
335 | <a href="#section-4.8.6.1">4.8.6.1</a> Action ..............................................<a href="#page-126">126</a> | |
336 | <a href="#section-4.8.6.2">4.8.6.2</a> Repeat Count ........................................<a href="#page-126">126</a> | |
337 | <a href="#section-4.8.6.3">4.8.6.3</a> Trigger .............................................<a href="#page-127">127</a> | |
338 | ||
339 | ||
340 | ||
341 | <span class="grey">Dawson & Stenerson Standards Track [Page 4]</span> | |
342 | </pre><pre class="newpage"><a name="page-5" id="page-5" href="#page-5" class="invisible"> </a> | |
343 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
344 | ||
345 | ||
346 | <a href="#section-4.8.7">4.8.7</a> Change Management Component Properties ..................<a href="#page-129">129</a> | |
347 | <a href="#section-4.8.7.1">4.8.7.1</a> Date/Time Created ...................................<a href="#page-129">129</a> | |
348 | <a href="#section-4.8.7.2">4.8.7.2</a> Date/Time Stamp .....................................<a href="#page-130">130</a> | |
349 | <a href="#section-4.8.7.3">4.8.7.3</a> Last Modified .......................................<a href="#page-131">131</a> | |
350 | <a href="#section-4.8.7.4">4.8.7.4</a> Sequence Number .....................................<a href="#page-131">131</a> | |
351 | <a href="#section-4.8.8">4.8.8</a> Miscellaneous Component Properties ......................<a href="#page-133">133</a> | |
352 | <a href="#section-4.8.8.1">4.8.8.1</a> Non-standard Properties .............................<a href="#page-133">133</a> | |
353 | <a href="#section-4.8.8.2">4.8.8.2</a> Request Status ......................................<a href="#page-134">134</a> | |
354 | <a href="#section-5">5</a> iCalendar Object Examples......................................<a href="#page-136">136</a> | |
355 | <a href="#section-6">6</a> Recommended Practices..........................................<a href="#page-140">140</a> | |
356 | <a href="#section-7">7</a> Registration of Content Type Elements..........................<a href="#page-141">141</a> | |
357 | <a href="#section-7.1">7.1</a> Registration of New and Modified iCalendar Object Methods ..<a href="#page-141">141</a> | |
358 | <a href="#section-7.2">7.2</a> Registration of New Properties .............................<a href="#page-141">141</a> | |
359 | <a href="#section-7.2.1">7.2.1</a> Define the property .....................................<a href="#page-142">142</a> | |
360 | <a href="#section-7.2.2">7.2.2</a> Post the Property definition ............................<a href="#page-143">143</a> | |
361 | <a href="#section-7.2.3">7.2.3</a> Allow a comment period ..................................<a href="#page-143">143</a> | |
362 | <a href="#section-7.2.4">7.2.4</a> Submit the property for approval ........................<a href="#page-143">143</a> | |
363 | <a href="#section-7.3">7.3</a> Property Change Control ....................................<a href="#page-143">143</a> | |
364 | <a href="#section-8">8</a> References.....................................................<a href="#page-144">144</a> | |
365 | <a href="#section-9">9</a> Acknowledgments................................................<a href="#page-145">145</a> | |
366 | <a href="#section-10">10</a> Authors' and Chairs' Addresses................................<a href="#page-146">146</a> | |
367 | <a href="#section-11">11</a> Full Copyright Statement......................................<a href="#page-148">148</a> | |
368 | ||
369 | <span class="h2"><h2><a name="section-1">1</a> Introduction</h2></span> | |
370 | ||
371 | The use of calendaring and scheduling has grown considerably in the | |
372 | last decade. Enterprise and inter-enterprise business has become | |
373 | dependent on rapid scheduling of events and actions using this | |
374 | information technology. However, the longer term growth of | |
375 | calendaring and scheduling, is currently limited by the lack of | |
376 | Internet standards for the message content types that are central to | |
377 | these knowledgeware applications. This memo is intended to progress | |
378 | the level of interoperability possible between dissimilar calendaring | |
379 | and scheduling applications. This memo defines a MIME content type | |
380 | for exchanging electronic calendaring and scheduling information. The | |
381 | Internet Calendaring and Scheduling Core Object Specification, or | |
382 | iCalendar, allows for the capture and exchange of information | |
383 | normally stored within a calendaring and scheduling application; such | |
384 | as a Personal Information Manager (PIM) or a Group Scheduling | |
385 | product. | |
386 | ||
387 | The iCalendar format is suitable as an exchange format between | |
388 | applications or systems. The format is defined in terms of a MIME | |
389 | content type. This will enable the object to be exchanged using | |
390 | several transports, including but not limited to SMTP, HTTP, a file | |
391 | system, desktop interactive protocols such as the use of a memory- | |
392 | based clipboard or drag/drop interactions, point-to-point | |
393 | asynchronous communication, wired-network transport, or some form of | |
394 | ||
395 | ||
396 | ||
397 | <span class="grey">Dawson & Stenerson Standards Track [Page 5]</span> | |
398 | </pre><pre class="newpage"><a name="page-6" id="page-6" href="#page-6" class="invisible"> </a> | |
399 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
400 | ||
401 | ||
402 | unwired transport such as infrared might also be used. | |
403 | ||
404 | The memo also provides for the definition of iCalendar object methods | |
405 | that will map this content type to a set of messages for supporting | |
406 | calendaring and scheduling operations such as requesting, replying | |
407 | to, modifying, and canceling meetings or appointments, to-dos and | |
408 | journal entries. The iCalendar object methods can be used to define | |
409 | other calendaring and scheduling operations such a requesting for and | |
410 | replying with free/busy time data. Such a scheduling protocol is | |
411 | defined in the iCalendar Transport-independent Interoperability | |
412 | Protocol (iTIP) defined in [<a href="#ref-ITIP" title=""iCalendar Transport-Independent Interoperability Protocol (iTIP) : Scheduling Events, Busy Time, To-dos and Journal Entries"">ITIP</a>]. | |
413 | ||
414 | The memo also includes a formal grammar for the content type based on | |
415 | the Internet ABNF defined in [<a href="http://tools.ietf.org/html/rfc2234" title=""Augmented BNF for Syntax Specifications: ABNF"">RFC 2234</a>]. This ABNF is required for | |
416 | the implementation of parsers and to serve as the definitive | |
417 | reference when ambiguities or questions arise in interpreting the | |
418 | descriptive prose definition of the memo. | |
419 | ||
420 | <span class="h2"><h2><a name="section-2">2</a> Basic Grammar and Conventions</h2></span> | |
421 | ||
422 | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |
423 | "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY" and | |
424 | "OPTIONAL" in this document are to be interoperated as described in | |
425 | [<a href="http://tools.ietf.org/html/rfc2119" title=""Key words for use in RFCs to Indicate Requirement Levels"">RFC 2119</a>]. | |
426 | ||
427 | This memo makes use of both a descriptive prose and a more formal | |
428 | notation for defining the calendaring and scheduling format. | |
429 | ||
430 | The notation used in this memo is the ABNF notation of [<a href="http://tools.ietf.org/html/rfc2234" title=""Augmented BNF for Syntax Specifications: ABNF"">RFC 2234</a>]. | |
431 | Readers intending on implementing this format defined in this memo | |
432 | should be familiar with this notation in order to properly interpret | |
433 | the specifications of this memo. | |
434 | ||
435 | All numeric and hexadecimal values used in this memo are given in | |
436 | decimal notation. | |
437 | ||
438 | All names of properties, property parameters, enumerated property | |
439 | values and property parameter values are case-insensitive. However, | |
440 | all other property values are case-sensitive, unless otherwise | |
441 | stated. | |
442 | ||
443 | Note: All indented editorial notes, such as this one, are | |
444 | intended to provide the reader with additional information. The | |
445 | information is not essential to the building of an | |
446 | implementation conformant with this memo. The information is | |
447 | provided to highlight a particular feature or characteristic of | |
448 | the memo. | |
449 | ||
450 | ||
451 | ||
452 | ||
453 | <span class="grey">Dawson & Stenerson Standards Track [Page 6]</span> | |
454 | </pre><pre class="newpage"><a name="page-7" id="page-7" href="#page-7" class="invisible"> </a> | |
455 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
456 | ||
457 | ||
458 | The format for the iCalendar object is based on the syntax of the | |
459 | [<a href="http://tools.ietf.org/html/rfc2425" title=""A MIME Content-Type for Directory Information"">RFC 2425</a>] content type. While the iCalendar object is not a profile | |
460 | of the [<a href="http://tools.ietf.org/html/rfc2425" title=""A MIME Content-Type for Directory Information"">RFC 2425</a>] content type, it does reuse a number of the | |
461 | elements from the [<a href="http://tools.ietf.org/html/rfc2425" title=""A MIME Content-Type for Directory Information"">RFC 2425</a>] specification. | |
462 | ||
463 | <span class="h3"><h3><a name="section-2.1">2.1</a> Formatting Conventions</h3></span> | |
464 | ||
465 | The mechanisms defined in this memo are defined in prose. Many of the | |
466 | terms used to describe these have common usage that is different than | |
467 | the standards usage of this memo. In order to reference within this | |
468 | memo elements of the calendaring and scheduling model, core object | |
469 | (this memo) or interoperability protocol [<a href="#ref-ITIP" title=""iCalendar Transport-Independent Interoperability Protocol (iTIP) : Scheduling Events, Busy Time, To-dos and Journal Entries"">ITIP</a>] some formatting | |
470 | conventions have been used. Calendaring and scheduling roles are | |
471 | referred to in quoted-strings of text with the first character of | |
472 | each word in upper case. For example, "Organizer" refers to a role of | |
473 | a "Calendar User" within the scheduling protocol defined by [<a href="#ref-ITIP" title=""iCalendar Transport-Independent Interoperability Protocol (iTIP) : Scheduling Events, Busy Time, To-dos and Journal Entries"">ITIP</a>]. | |
474 | Calendar components defined by this memo are referred to with | |
475 | capitalized, quoted-strings of text. All calendar components start | |
476 | with the letter "V". For example, "VEVENT" refers to the event | |
477 | calendar component, "VTODO" refers to the to-do calendar component | |
478 | and "VJOURNAL" refers to the daily journal calendar component. | |
479 | Scheduling methods defined by [<a href="#ref-ITIP" title=""iCalendar Transport-Independent Interoperability Protocol (iTIP) : Scheduling Events, Busy Time, To-dos and Journal Entries"">ITIP</a>] are referred to with | |
480 | capitalized, quoted-strings of text. For example, "REQUEST" refers to | |
481 | the method for requesting a scheduling calendar component be created | |
482 | or modified, "REPLY" refers to the method a recipient of a request | |
483 | uses to update their status with the "Organizer" of the calendar | |
484 | component. | |
485 | ||
486 | The properties defined by this memo are referred to with capitalized, | |
487 | quoted-strings of text, followed by the word "property". For example, | |
488 | "ATTENDEE" property refers to the iCalendar property used to convey | |
489 | the calendar address of a calendar user. Property parameters defined | |
490 | by this memo are referred to with lowercase, quoted-strings of text, | |
491 | followed by the word "parameter". For example, "value" parameter | |
492 | refers to the iCalendar property parameter used to override the | |
493 | default data type for a property value. Enumerated values defined by | |
494 | this memo are referred to with capitalized text, either alone or | |
495 | followed by the word "value". For example, the "MINUTELY" value can | |
496 | be used with the "FREQ" component of the "RECUR" data type to specify | |
497 | repeating components based on an interval of one minute or more. | |
498 | ||
499 | ||
500 | ||
501 | ||
502 | ||
503 | ||
504 | ||
505 | ||
506 | ||
507 | ||
508 | ||
509 | <span class="grey">Dawson & Stenerson Standards Track [Page 7]</span> | |
510 | </pre><pre class="newpage"><a name="page-8" id="page-8" href="#page-8" class="invisible"> </a> | |
511 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
512 | ||
513 | ||
514 | <span class="h3"><h3><a name="section-2.2">2.2</a> Related Memos</h3></span> | |
515 | ||
516 | Implementers will need to be familiar with several other memos that, | |
517 | along with this memo, form a framework for Internet calendaring and | |
518 | scheduling standards. This memo, [<a href="#ref-ICAL">ICAL</a>], specifies a core | |
519 | specification of objects, data types, properties and property | |
520 | parameters. | |
521 | ||
522 | [<a name="ref-ITIP" id="ref-ITIP">ITIP</a>] - specifies an interoperability protocol for scheduling | |
523 | between different implementations; | |
524 | ||
525 | [<a name="ref-IMIP" id="ref-IMIP">IMIP</a>] specifies an Internet email binding for [<a href="#ref-ITIP" title=""iCalendar Transport-Independent Interoperability Protocol (iTIP) : Scheduling Events, Busy Time, To-dos and Journal Entries"">ITIP</a>]. | |
526 | ||
527 | This memo does not attempt to repeat the specification of concepts or | |
528 | definitions from these other memos. Where possible, references are | |
529 | made to the memo that provides for the specification of these | |
530 | concepts or definitions. | |
531 | ||
532 | <span class="h3"><h3><a name="section-2.3">2.3</a> International Considerations</h3></span> | |
533 | ||
534 | In the rest of this document, descriptions of characters are of the | |
535 | form "character name (codepoint)", where "codepoint" is from the US- | |
536 | ASCII character set. The "character name" is the authoritative | |
537 | description; (codepoint) is a reference to that character in US-ASCII | |
538 | or US-ASCII compatible sets (for example the ISO-8859-x family, UTF- | |
539 | 8, ISO-2022-xx, KOI8-R). If a non-US-ASCII compatible character set | |
540 | is used, appropriate code-point from that character set MUST be | |
541 | chosen instead. Use of non-US-ASCII-compatible character sets is NOT | |
542 | recommended. | |
543 | ||
544 | <span class="h2"><h2><a name="section-3">3</a> Registration Information</h2></span> | |
545 | ||
546 | The Calendaring and Scheduling Core Object Specification is intended | |
547 | for use as a MIME content type. However, the implementation of the | |
548 | memo is in no way limited solely as a MIME content type. | |
549 | ||
550 | <span class="h3"><h3><a name="section-3.1">3.1</a> Content Type</h3></span> | |
551 | ||
552 | The following text is intended to register this memo as the MIME | |
553 | content type "text/calendar". | |
554 | ||
555 | To: ietf-types@uninett.no | |
556 | ||
557 | Subject: Registration of MIME content type text/calendar. | |
558 | ||
559 | MIME media type name: text | |
560 | ||
561 | MIME subtype name: calendar | |
562 | ||
563 | ||
564 | ||
565 | <span class="grey">Dawson & Stenerson Standards Track [Page 8]</span> | |
566 | </pre><pre class="newpage"><a name="page-9" id="page-9" href="#page-9" class="invisible"> </a> | |
567 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
568 | ||
569 | ||
570 | <span class="h3"><h3><a name="section-3.2">3.2</a> Parameters</h3></span> | |
571 | ||
572 | Required parameters: none | |
573 | ||
574 | Optional parameters: charset, method, component and optinfo | |
575 | ||
576 | The "charset" parameter is defined in [<a href="http://tools.ietf.org/html/rfc2046" title="" Multipurpose Internet Mail Extensions (MIME) - Part Two: Media Types"">RFC 2046</a>] for other body | |
577 | parts. It is used to identify the default character set used within | |
578 | the body part. | |
579 | ||
580 | The "method" parameter is used to convey the iCalendar object method | |
581 | or transaction semantics for the calendaring and scheduling | |
582 | information. It also is an identifier for the restricted set of | |
583 | properties and values that the iCalendar object consists of. The | |
584 | parameter is to be used as a guide for applications interpreting the | |
585 | information contained within the body part. It SHOULD NOT be used to | |
586 | exclude or require particular pieces of information unless the | |
587 | identified method definition specifically calls for this behavior. | |
588 | Unless specifically forbidden by a particular method definition, a | |
589 | text/calendar content type can contain any set of properties | |
590 | permitted by the Calendaring and Scheduling Core Object | |
591 | Specification. The "method" parameter MUST be the same value as that | |
592 | specified in the "METHOD" component property in the iCalendar object. | |
593 | If one is present, the other MUST also be present. | |
594 | ||
595 | The value for the "method" parameter is defined as follows: | |
596 | ||
597 | method = 1*(ALPHA / DIGIT / "-") | |
598 | ; IANA registered iCalendar object method | |
599 | ||
600 | The "component" parameter conveys the type of iCalendar calendar | |
601 | component within the body part. If the iCalendar object contains more | |
602 | than one calendar component type, then multiple component parameters | |
603 | MUST be specified. | |
604 | ||
605 | The value for the "component" parameter is defined as follows: | |
606 | ||
607 | component = ("VEVENT" / "VTODO" / "VJOURNAL" / "VFREEBUSY" | |
608 | / "VTIMEZONE" / x-name / iana-token) | |
609 | ||
610 | The "optinfo" parameter conveys optional information about the | |
611 | iCalendar object within the body part. This parameter can only | |
612 | specify semantics already specified by the iCalendar object and that | |
613 | can be otherwise determined by parsing the body part. In addition, | |
614 | the optional information specified by this parameter MUST be | |
615 | consistent with that information specified by the iCalendar object. | |
616 | For example, it can be used to convey the "Attendee" response status | |
617 | to a meeting request. The parameter value consists of a string value. | |
618 | ||
619 | ||
620 | ||
621 | <span class="grey">Dawson & Stenerson Standards Track [Page 9]</span> | |
622 | </pre><pre class="newpage"><a name="page-10" id="page-10" href="#page-10" class="invisible"> </a> | |
623 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
624 | ||
625 | ||
626 | The parameter can be specified multiple times. | |
627 | ||
628 | This parameter MAY only specify semantics already specified by the | |
629 | iCalendar object and that can be otherwise determined by parsing the | |
630 | body part. | |
631 | ||
632 | The value for the "optinfo" parameter is defined as follows: | |
633 | ||
634 | optinfo = infovalue / qinfovalue | |
635 | ||
636 | infovalue = iana-token / x-name | |
637 | ||
638 | qinfovalue = DQUOTE (infovalue) DQUOTE | |
639 | ||
640 | <span class="h3"><h3><a name="section-3.3">3.3</a> Content Header Fields</h3></span> | |
641 | ||
642 | Optional content header fields: Any header fields defined by [RFC | |
643 | 2045]. | |
644 | ||
645 | <span class="h3"><h3><a name="section-3.4">3.4</a> Encoding Considerations</h3></span> | |
646 | ||
647 | This MIME content type can contain 8bit characters, so the use of | |
648 | quoted-printable or BASE64 MIME content-transfer-encodings might be | |
649 | necessary when iCalendar objects are transferred across protocols | |
650 | restricted to the 7bit repertoire. Note that a text valued property | |
651 | in the content entity can also have content encoding of special | |
652 | characters using a BACKSLASH character (US-ASCII decimal 92) | |
653 | escapement technique. This means that content values can end up | |
654 | encoded twice. | |
655 | ||
656 | <span class="h3"><h3><a name="section-3.5">3.5</a> Security Considerations</h3></span> | |
657 | ||
658 | SPOOFING - - In this memo, the "Organizer" is the only person | |
659 | authorized to make changes to an existing "VEVENT", "VTODO", | |
660 | "VJOURNAL" calendar component and redistribute the updates to the | |
661 | "Attendees". An iCalendar object that maliciously changes or cancels | |
662 | an existing "VEVENT", "VTODO" or "VJOURNAL" or "VFREEBUSY" calendar | |
663 | component might be constructed by someone other than the "Organizer" | |
664 | and sent to the "Attendees". In addition in this memo, other than the | |
665 | "Organizer", an "Attendee" of a "VEVENT", "VTODO", "VJOURNAL" | |
666 | calendar component is the only other person authorized to update any | |
667 | parameter associated with their "ATTENDEE" property and send it to | |
668 | the "Organizer". An iCalendar object that maliciously changes the | |
669 | "ATTENDEE" parameters can be constructed by someone other than the | |
670 | real "Attendee" and sent to the "Organizer". | |
671 | ||
672 | ||
673 | ||
674 | ||
675 | ||
676 | ||
677 | <span class="grey">Dawson & Stenerson Standards Track [Page 10]</span> | |
678 | </pre><pre class="newpage"><a name="page-11" id="page-11" href="#page-11" class="invisible"> </a> | |
679 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
680 | ||
681 | ||
682 | PROCEDURAL ALARMS - - An iCalendar object can be created that | |
683 | contains a "VEVENT" and "VTODO" calendar component with "VALARM" | |
684 | calendar components. The "VALARM" calendar component can be of type | |
685 | PROCEDURE and can have an attachment containing some sort of | |
686 | executable program. Implementations that incorporate these types of | |
687 | alarms are subject to any virus or malicious attack that might occur | |
688 | as a result of executing the attachment. | |
689 | ||
690 | ATTACHMENTS - - An iCalendar object can include references to Uniform | |
691 | Resource Locators that can be programmed resources. | |
692 | ||
693 | Implementers and users of this memo should be aware of the network | |
694 | security implications of accepting and parsing such information. In | |
695 | addition, the security considerations observed by implementations of | |
696 | electronic mail systems should be followed for this memo. | |
697 | ||
698 | <span class="h3"><h3><a name="section-3.6">3.6</a> Interoperability Considerations</h3></span> | |
699 | ||
700 | This MIME content type is intended to define a common format for | |
701 | conveying calendaring and scheduling information between different | |
702 | systems. It is heavily based on the earlier [<a href="#ref-VCAL" title=""vCalendar - The Electronic Calendaring and Scheduling Exchange Format"">VCAL</a>] industry | |
703 | specification. | |
704 | ||
705 | <span class="h3"><h3><a name="section-3.7">3.7</a> Applications Which Use This Media Type</h3></span> | |
706 | ||
707 | This content-type is designed for widespread use by Internet | |
708 | calendaring and scheduling applications. In addition, applications in | |
709 | the workflow and document management area might find this content- | |
710 | type applicable. The [<a href="#ref-ITIP" title=""iCalendar Transport-Independent Interoperability Protocol (iTIP) : Scheduling Events, Busy Time, To-dos and Journal Entries"">ITIP</a>] and [<a href="#ref-IMIP" title=""iCalendar Message-based Interoperability Protocol (IMIP)"">IMIP</a>] Internet protocols directly | |
711 | use this content-type also. Future work on an Internet calendar | |
712 | access protocol will utilize this content-type too. | |
713 | ||
714 | <span class="h3"><h3><a name="section-3.8">3.8</a> Additional Information</h3></span> | |
715 | ||
716 | This memo defines this content-type. | |
717 | ||
718 | <span class="h3"><h3><a name="section-3.9">3.9</a> Magic Numbers</h3></span> | |
719 | ||
720 | None. | |
721 | ||
722 | <span class="h3"><h3><a name="section-3.10">3.10</a> File Extensions</h3></span> | |
723 | ||
724 | The file extension of "ics" is to be used to designate a file | |
725 | containing (an arbitrary set of) calendaring and scheduling | |
726 | information consistent with this MIME content type. | |
727 | ||
728 | ||
729 | ||
730 | ||
731 | ||
732 | ||
733 | <span class="grey">Dawson & Stenerson Standards Track [Page 11]</span> | |
734 | </pre><pre class="newpage"><a name="page-12" id="page-12" href="#page-12" class="invisible"> </a> | |
735 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
736 | ||
737 | ||
738 | The file extension of "ifb" is to be used to designate a file | |
739 | containing free or busy time information consistent with this MIME | |
740 | content type. | |
741 | ||
742 | Macintosh file type codes: The file type code of "iCal" is to be used | |
743 | in Apple MacIntosh operating system environments to designate a file | |
744 | containing calendaring and scheduling information consistent with | |
745 | this MIME media type. | |
746 | ||
747 | The file type code of "iFBf" is to be used in Apple MacIntosh | |
748 | operating system environments to designate a file containing free or | |
749 | busy time information consistent with this MIME media type. | |
750 | ||
751 | <span class="h3"><h3><a name="section-3.11">3.11</a> Contact for Further Information:</h3></span> | |
752 | ||
753 | Frank Dawson | |
754 | 6544 Battleford Drive | |
755 | Raleigh, NC 27613-3502 | |
756 | 919-676-9515 (Telephone) | |
757 | 919-676-9564 (Data/Facsimile) | |
758 | Frank_Dawson@Lotus.com (Internet Mail) | |
759 | ||
760 | Derik Stenerson | |
761 | One Microsoft Way | |
762 | Redmond, WA 98052-6399 | |
763 | 425-936-5522 (Telephone) | |
764 | 425-936-7329 (Facsimile) | |
765 | deriks@microsoft.com (Internet Mail) | |
766 | ||
767 | <span class="h3"><h3><a name="section-3.12">3.12</a> Intended Usage</h3></span> | |
768 | ||
769 | COMMON | |
770 | ||
771 | <span class="h3"><h3><a name="section-3.13">3.13</a> Authors/Change Controllers</h3></span> | |
772 | ||
773 | Frank Dawson | |
774 | 6544 Battleford Drive | |
775 | Raleigh, NC 27613-3502 | |
776 | 919-676-9515 (Telephone) | |
777 | 919-676-9564 (Data/Facsimile) | |
778 | Frank_Dawson@Lotus.com (Internet Mail) | |
779 | ||
780 | Derik Stenerson | |
781 | One Microsoft Way | |
782 | Redmond, WA 98052-6399 | |
783 | 425-936-5522 (Telephone) | |
784 | 425-936-7329 (Facsimile) | |
785 | deriks@microsoft.com (Internet Mail) | |
786 | ||
787 | ||
788 | ||
789 | <span class="grey">Dawson & Stenerson Standards Track [Page 12]</span> | |
790 | </pre><pre class="newpage"><a name="page-13" id="page-13" href="#page-13" class="invisible"> </a> | |
791 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
792 | ||
793 | ||
794 | <span class="h2"><h2><a name="section-4">4</a> iCalendar Object Specification</h2></span> | |
795 | ||
796 | The following sections define the details of a Calendaring and | |
797 | Scheduling Core Object Specification. This information is intended to | |
798 | be an integral part of the MIME content type registration. In | |
799 | addition, this information can be used independent of such content | |
800 | registration. In particular, this memo has direct applicability for | |
801 | use as a calendaring and scheduling exchange format in file-, memory- | |
802 | or network-based transport mechanisms. | |
803 | ||
804 | <span class="h3"><h3><a name="section-4.1">4.1</a> Content Lines</h3></span> | |
805 | ||
806 | The iCalendar object is organized into individual lines of text, | |
807 | called content lines. Content lines are delimited by a line break, | |
808 | which is a CRLF sequence (US-ASCII decimal 13, followed by US-ASCII | |
809 | decimal 10). | |
810 | ||
811 | Lines of text SHOULD NOT be longer than 75 octets, excluding the line | |
812 | break. Long content lines SHOULD be split into a multiple line | |
813 | representations using a line "folding" technique. That is, a long | |
814 | line can be split between any two characters by inserting a CRLF | |
815 | immediately followed by a single linear white space character (i.e., | |
816 | SPACE, US-ASCII decimal 32 or HTAB, US-ASCII decimal 9). Any sequence | |
817 | of CRLF followed immediately by a single linear white space character | |
818 | is ignored (i.e., removed) when processing the content type. | |
819 | ||
820 | For example the line: | |
821 | ||
822 | DESCRIPTION:This is a long description that exists on a long line. | |
823 | ||
824 | Can be represented as: | |
825 | ||
826 | DESCRIPTION:This is a lo | |
827 | ng description | |
828 | that exists on a long line. | |
829 | ||
830 | The process of moving from this folded multiple line representation | |
831 | to its single line representation is called "unfolding". Unfolding is | |
832 | accomplished by removing the CRLF character and the linear white | |
833 | space character that immediately follows. | |
834 | ||
835 | When parsing a content line, folded lines MUST first be unfolded | |
836 | according to the unfolding procedure described above. When generating | |
837 | a content line, lines longer than 75 octets SHOULD be folded | |
838 | according to the folding procedure described above. | |
839 | ||
840 | ||
841 | ||
842 | ||
843 | ||
844 | ||
845 | <span class="grey">Dawson & Stenerson Standards Track [Page 13]</span> | |
846 | </pre><pre class="newpage"><a name="page-14" id="page-14" href="#page-14" class="invisible"> </a> | |
847 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
848 | ||
849 | ||
850 | The content information associated with an iCalendar object is | |
851 | formatted using a syntax similar to that defined by [<a href="http://tools.ietf.org/html/rfc2425" title=""A MIME Content-Type for Directory Information"">RFC 2425</a>]. That | |
852 | is, the content information consists of CRLF-separated content lines. | |
853 | ||
854 | The following notation defines the lines of content in an iCalendar | |
855 | object: | |
856 | ||
857 | contentline = name *(";" param ) ":" value CRLF | |
858 | ; This ABNF is just a general definition for an initial parsing | |
859 | ; of the content line into its property name, parameter list, | |
860 | ; and value string | |
861 | ||
862 | ; When parsing a content line, folded lines MUST first | |
863 | ; be unfolded according to the unfolding procedure | |
864 | ; described above. When generating a content line, lines | |
865 | ; longer than 75 octets SHOULD be folded according to | |
866 | ; the folding procedure described above. | |
867 | ||
868 | name = x-name / iana-token | |
869 | ||
870 | iana-token = 1*(ALPHA / DIGIT / "-") | |
871 | ; iCalendar identifier registered with IANA | |
872 | ||
873 | x-name = "X-" [vendorid "-"] 1*(ALPHA / DIGIT / "-") | |
874 | ; Reservered for experimental use. Not intended for use in | |
875 | ; released products. | |
876 | ||
877 | vendorid = 3*(ALPHA / DIGIT) ;Vendor identification | |
878 | ||
879 | param = param-name "=" param-value | |
880 | *("," param-value) | |
881 | ; Each property defines the specific ABNF for the parameters | |
882 | ; allowed on the property. Refer to specific properties for | |
883 | ; precise parameter ABNF. | |
884 | ||
885 | param-name = iana-token / x-token | |
886 | ||
887 | param-value = paramtext / quoted-string | |
888 | ||
889 | paramtext = *SAFE-CHAR | |
890 | ||
891 | value = *VALUE-CHAR | |
892 | ||
893 | quoted-string = DQUOTE *QSAFE-CHAR DQUOTE | |
894 | ||
895 | NON-US-ASCII = %x80-F8 | |
896 | ; Use restricted by charset parameter | |
897 | ; on outer MIME object (UTF-8 preferred) | |
898 | ||
899 | ||
900 | ||
901 | <span class="grey">Dawson & Stenerson Standards Track [Page 14]</span> | |
902 | </pre><pre class="newpage"><a name="page-15" id="page-15" href="#page-15" class="invisible"> </a> | |
903 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
904 | ||
905 | ||
906 | QSAFE-CHAR = WSP / %x21 / %x23-7E / NON-US-ASCII | |
907 | ; Any character except CTLs and DQUOTE | |
908 | ||
909 | SAFE-CHAR = WSP / %x21 / %x23-2B / %x2D-39 / %x3C-7E | |
910 | / NON-US-ASCII | |
911 | ; Any character except CTLs, DQUOTE, ";", ":", "," | |
912 | ||
913 | VALUE-CHAR = WSP / %x21-7E / NON-US-ASCII | |
914 | ; Any textual character | |
915 | ||
916 | CR = %x0D | |
917 | ; carriage return | |
918 | ||
919 | LF = %x0A | |
920 | ; line feed | |
921 | ||
922 | CRLF = CR LF | |
923 | ; Internet standard newline | |
924 | ||
925 | CTL = %x00-08 / %x0A-1F / %x7F | |
926 | ; Controls | |
927 | ||
928 | ALPHA = %x41-5A / %x61-7A ; A-Z / a-z | |
929 | ||
930 | DIGIT = %x30-39 | |
931 | ; 0-9 | |
932 | ||
933 | DQUOTE = %x22 | |
934 | ; Quotation Mark | |
935 | ||
936 | WSP = SPACE / HTAB | |
937 | ||
938 | SPACE = %x20 | |
939 | ||
940 | HTAB = %x09 | |
941 | ||
942 | The property value component of a content line has a format that is | |
943 | property specific. Refer to the section describing each property for | |
944 | a definition of this format. | |
945 | ||
946 | All names of properties, property parameters, enumerated property | |
947 | values and property parameter values are case-insensitive. However, | |
948 | all other property values are case-sensitive, unless otherwise | |
949 | stated. | |
950 | ||
951 | ||
952 | ||
953 | ||
954 | ||
955 | ||
956 | ||
957 | <span class="grey">Dawson & Stenerson Standards Track [Page 15]</span> | |
958 | </pre><pre class="newpage"><a name="page-16" id="page-16" href="#page-16" class="invisible"> </a> | |
959 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
960 | ||
961 | ||
962 | <span class="h4"><h4><a name="section-4.1.1">4.1.1</a> List and Field Separators</h4></span> | |
963 | ||
964 | Some properties and parameters allow a list of values. Values in a | |
965 | list of values MUST be separated by a COMMA character (US-ASCII | |
966 | decimal 44). There is no significance to the order of values in a | |
967 | list. For those parameter values (such as those that specify URI | |
968 | values) that are specified in quoted-strings, the individual quoted- | |
969 | strings are separated by a COMMA character (US-ASCII decimal 44). | |
970 | ||
971 | Some property values are defined in terms of multiple parts. These | |
972 | structured property values MUST have their value parts separated by a | |
973 | SEMICOLON character (US-ASCII decimal 59). | |
974 | ||
975 | Some properties allow a list of parameters. Each property parameter | |
976 | in a list of property parameters MUST be separated by a SEMICOLON | |
977 | character (US-ASCII decimal 59). | |
978 | ||
979 | Property parameters with values containing a COLON, a SEMICOLON or a | |
980 | COMMA character MUST be placed in quoted text. | |
981 | ||
982 | For example, in the following properties a SEMICOLON is used to | |
983 | separate property parameters from each other, and a COMMA is used to | |
984 | separate property values in a value list. | |
985 | ||
986 | ATTENDEE;RSVP=TRUE;ROLE=REQ-PARTICIPANT:MAILTO: | |
987 | jsmith@host.com | |
988 | ||
989 | RDATE;VALUE=DATE:19970304,19970504,19970704,19970904 | |
990 | ||
991 | <span class="h4"><h4><a name="section-4.1.2">4.1.2</a> Multiple Values</h4></span> | |
992 | ||
993 | Some properties defined in the iCalendar object can have multiple | |
994 | values. The general rule for encoding multi-valued items is to simply | |
995 | create a new content line for each value, including the property | |
996 | name. However, it should be noted that some properties support | |
997 | encoding multiple values in a single property by separating the | |
998 | values with a COMMA character (US-ASCII decimal 44). Individual | |
999 | property definitions should be consulted for determining whether a | |
1000 | specific property allows multiple values and in which of these two | |
1001 | forms. | |
1002 | ||
1003 | <span class="h4"><h4><a name="section-4.1.3">4.1.3</a> Binary Content</h4></span> | |
1004 | ||
1005 | Binary content information in an iCalendar object SHOULD be | |
1006 | referenced using a URI within a property value. That is the binary | |
1007 | content information SHOULD be placed in an external MIME entity that | |
1008 | can be referenced by a URI from within the iCalendar object. In | |
1009 | applications where this is not feasible, binary content information | |
1010 | ||
1011 | ||
1012 | ||
1013 | <span class="grey">Dawson & Stenerson Standards Track [Page 16]</span> | |
1014 | </pre><pre class="newpage"><a name="page-17" id="page-17" href="#page-17" class="invisible"> </a> | |
1015 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1016 | ||
1017 | ||
1018 | can be included within an iCalendar object, but only after first | |
1019 | encoding it into text using the "BASE64" encoding method defined in | |
1020 | [<a href="http://tools.ietf.org/html/rfc2045" title="" Multipurpose Internet Mail Extensions (MIME) - Part One: Format of Internet Message Bodies"">RFC 2045</a>]. Inline binary contact SHOULD only be used in applications | |
1021 | whose special circumstances demand that an iCalendar object be | |
1022 | expressed as a single entity. A property containing inline binary | |
1023 | content information MUST specify the "ENCODING" property parameter. | |
1024 | Binary content information placed external to the iCalendar object | |
1025 | MUST be referenced by a uniform resource identifier (URI). | |
1026 | ||
1027 | The following example specifies an "ATTACH" property that references | |
1028 | an attachment external to the iCalendar object with a URI reference: | |
1029 | ||
1030 | ATTACH:http://xyz.com/public/quarterly-report.doc | |
1031 | ||
1032 | The following example specifies an "ATTACH" property with inline | |
1033 | binary encoded content information: | |
1034 | ||
1035 | ATTACH;FMTTYPE=image/basic;ENCODING=BASE64;VALUE=BINARY: | |
1036 | MIICajCCAdOgAwIBAgICBEUwDQYJKoZIhvcNAQEEBQAwdzELMAkGA1U | |
1037 | EBhMCVVMxLDAqBgNVBAoTI05ldHNjYXBlIENvbW11bmljYXRpb25zIE | |
1038 | <...remainder of "BASE64" encoded binary data...> | |
1039 | ||
1040 | <span class="h4"><h4><a name="section-4.1.4">4.1.4</a> Character Set</h4></span> | |
1041 | ||
1042 | There is not a property parameter to declare the character set used | |
1043 | in a property value. The default character set for an iCalendar | |
1044 | object is UTF-8 as defined in [<a href="http://tools.ietf.org/html/rfc2279" title=""UTF-8, a transformation format of ISO 10646"">RFC 2279</a>]. | |
1045 | ||
1046 | The "charset" Content-Type parameter can be used in MIME transports | |
1047 | to specify any other IANA registered character set. | |
1048 | ||
1049 | <span class="h3"><h3><a name="section-4.2">4.2</a> Property Parameters</h3></span> | |
1050 | ||
1051 | A property can have attributes associated with it. These "property | |
1052 | parameters" contain meta-information about the property or the | |
1053 | property value. Property parameters are provided to specify such | |
1054 | information as the location of an alternate text representation for a | |
1055 | property value, the language of a text property value, the data type | |
1056 | of the property value and other attributes. | |
1057 | ||
1058 | Property parameter values that contain the COLON (US-ASCII decimal | |
1059 | 58), SEMICOLON (US-ASCII decimal 59) or COMMA (US-ASCII decimal 44) | |
1060 | character separators MUST be specified as quoted-string text values. | |
1061 | Property parameter values MUST NOT contain the DOUBLE-QUOTE (US-ASCII | |
1062 | decimal 22) character. The DOUBLE-QUOTE (US-ASCII decimal 22) | |
1063 | character is used as a delimiter for parameter values that contain | |
1064 | restricted characters or URI text. For example: | |
1065 | ||
1066 | ||
1067 | ||
1068 | ||
1069 | <span class="grey">Dawson & Stenerson Standards Track [Page 17]</span> | |
1070 | </pre><pre class="newpage"><a name="page-18" id="page-18" href="#page-18" class="invisible"> </a> | |
1071 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1072 | ||
1073 | ||
1074 | DESCRIPTION;ALTREP="http://www.wiz.org":The Fall'98 Wild Wizards | |
1075 | Conference - - Las Vegas, NV, USA | |
1076 | ||
1077 | Property parameter values that are not in quoted strings are case | |
1078 | insensitive. | |
1079 | ||
1080 | The general property parameters defined by this memo are defined by | |
1081 | the following notation: | |
1082 | ||
1083 | parameter = altrepparam ; Alternate text representation | |
1084 | / cnparam ; Common name | |
1085 | / cutypeparam ; Calendar user type | |
1086 | / delfromparam ; Delegator | |
1087 | / deltoparam ; Delegatee | |
1088 | / dirparam ; Directory entry | |
1089 | / encodingparam ; Inline encoding | |
1090 | / fmttypeparam ; Format type | |
1091 | / fbtypeparam ; Free/busy time type | |
1092 | / languageparam ; Language for text | |
1093 | / memberparam ; Group or list membership | |
1094 | / partstatparam ; Participation status | |
1095 | / rangeparam ; Recurrence identifier range | |
1096 | / trigrelparam ; Alarm trigger relationship | |
1097 | / reltypeparam ; Relationship type | |
1098 | / roleparam ; Participation role | |
1099 | / rsvpparam ; RSVP expectation | |
1100 | / sentbyparam ; Sent by | |
1101 | / tzidparam ; Reference to time zone object | |
1102 | / valuetypeparam ; Property value data type | |
1103 | / ianaparam | |
1104 | ; Some other IANA registered iCalendar parameter. | |
1105 | / xparam | |
1106 | ; A non-standard, experimental parameter. | |
1107 | ||
1108 | ianaparam = iana-token "=" param-value *("," param-value) | |
1109 | ||
1110 | xparam =x-name "=" param-value *("," param-value) | |
1111 | ||
1112 | <span class="h4"><h4><a name="section-4.2.1">4.2.1</a> Alternate Text Representation</h4></span> | |
1113 | ||
1114 | Parameter Name: ALTREP | |
1115 | ||
1116 | Purpose: To specify an alternate text representation for the property | |
1117 | value. | |
1118 | ||
1119 | Format Definition: The property parameter is defined by the following | |
1120 | notation: | |
1121 | ||
1122 | ||
1123 | ||
1124 | ||
1125 | <span class="grey">Dawson & Stenerson Standards Track [Page 18]</span> | |
1126 | </pre><pre class="newpage"><a name="page-19" id="page-19" href="#page-19" class="invisible"> </a> | |
1127 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1128 | ||
1129 | ||
1130 | altrepparam = "ALTREP" "=" DQUOTE uri DQUOTE | |
1131 | ||
1132 | Description: The parameter specifies a URI that points to an | |
1133 | alternate representation for a textual property value. A property | |
1134 | specifying this parameter MUST also include a value that reflects the | |
1135 | default representation of the text value. The individual URI | |
1136 | parameter values MUST each be specified in a quoted-string. | |
1137 | ||
1138 | Example: | |
1139 | ||
1140 | DESCRIPTION;ALTREP="CID:<part3.msg.970415T083000@host.com>":Project | |
1141 | XYZ Review Meeting will include the following agenda items: (a) | |
1142 | Market Overview, (b) Finances, (c) Project Management | |
1143 | ||
1144 | The "ALTREP" property parameter value might point to a "text/html" | |
1145 | content portion. | |
1146 | ||
1147 | Content-Type:text/html | |
1148 | Content-Id:<part3.msg.970415T083000@host.com> | |
1149 | ||
1150 | <html><body> | |
1151 | <p><b>Project XYZ Review Meeting</b> will include the following | |
1152 | agenda items:<ol><li>Market | |
1153 | Overview</li><li>Finances</li><li>Project Management</li></ol></p> | |
1154 | </body></html> | |
1155 | ||
1156 | <span class="h4"><h4><a name="section-4.2.2">4.2.2</a> Common Name</h4></span> | |
1157 | ||
1158 | Parameter Name: CN | |
1159 | ||
1160 | Purpose: To specify the common name to be associated with the | |
1161 | calendar user specified by the property. | |
1162 | ||
1163 | Format Definition: The property parameter is defined by the following | |
1164 | notation: | |
1165 | ||
1166 | cnparam = "CN" "=" param-value | |
1167 | ||
1168 | Description: This parameter can be specified on properties with a | |
1169 | CAL-ADDRESS value type. The parameter specifies the common name to be | |
1170 | associated with the calendar user specified by the property. The | |
1171 | parameter value is text. The parameter value can be used for display | |
1172 | text to be associated with the calendar address specified by the | |
1173 | property. | |
1174 | ||
1175 | ||
1176 | ||
1177 | ||
1178 | ||
1179 | ||
1180 | ||
1181 | <span class="grey">Dawson & Stenerson Standards Track [Page 19]</span> | |
1182 | </pre><pre class="newpage"><a name="page-20" id="page-20" href="#page-20" class="invisible"> </a> | |
1183 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1184 | ||
1185 | ||
1186 | Example: | |
1187 | ||
1188 | ORGANIZER;CN="John Smith":MAILTO:jsmith@host.com | |
1189 | ||
1190 | <span class="h4"><h4><a name="section-4.2.3">4.2.3</a> Calendar User Type</h4></span> | |
1191 | ||
1192 | Parameter Name: CUTYPE | |
1193 | ||
1194 | Purpose: To specify the type of calendar user specified by the | |
1195 | property. | |
1196 | ||
1197 | Format Definition: The property parameter is defined by the following | |
1198 | notation: | |
1199 | ||
1200 | cutypeparam = "CUTYPE" "=" | |
1201 | ("INDIVIDUAL" ; An individual | |
1202 | / "GROUP" ; A group of individuals | |
1203 | / "RESOURCE" ; A physical resource | |
1204 | / "ROOM" ; A room resource | |
1205 | / "UNKNOWN" ; Otherwise not known | |
1206 | / x-name ; Experimental type | |
1207 | / iana-token) ; Other IANA registered | |
1208 | ; type | |
1209 | ; Default is INDIVIDUAL | |
1210 | ||
1211 | Description: This parameter can be specified on properties with a | |
1212 | CAL-ADDRESS value type. The parameter identifies the type of calendar | |
1213 | user specified by the property. If not specified on a property that | |
1214 | allows this parameter, the default is INDIVIDUAL. | |
1215 | ||
1216 | Example: | |
1217 | ||
1218 | ATTENDEE;CUTYPE=GROUP:MAILTO:ietf-calsch@imc.org | |
1219 | ||
1220 | <span class="h4"><h4><a name="section-4.2.4">4.2.4</a> Delegators</h4></span> | |
1221 | ||
1222 | Parameter Name: DELEGATED-FROM | |
1223 | ||
1224 | Purpose: To specify the calendar users that have delegated their | |
1225 | participation to the calendar user specified by the property. | |
1226 | ||
1227 | Format Definition: The property parameter is defined by the following | |
1228 | notation: | |
1229 | ||
1230 | delfromparam = "DELEGATED-FROM" "=" DQUOTE cal-address DQUOTE | |
1231 | *("," DQUOTE cal-address DQUOTE) | |
1232 | ||
1233 | ||
1234 | ||
1235 | ||
1236 | ||
1237 | <span class="grey">Dawson & Stenerson Standards Track [Page 20]</span> | |
1238 | </pre><pre class="newpage"><a name="page-21" id="page-21" href="#page-21" class="invisible"> </a> | |
1239 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1240 | ||
1241 | ||
1242 | Description: This parameter can be specified on properties with a | |
1243 | CAL-ADDRESS value type. This parameter can be specified on a property | |
1244 | that has a value type of calendar address. This parameter specifies | |
1245 | those calendar uses that have delegated their participation in a | |
1246 | group scheduled event or to-do to the calendar user specified by the | |
1247 | property. The value MUST be a MAILTO URI as defined in [<a href="http://tools.ietf.org/html/rfc1738" title=""Uniform Resource Locators (URL)"">RFC 1738</a>]. | |
1248 | The individual calendar address parameter values MUST each be | |
1249 | specified in a quoted-string. | |
1250 | ||
1251 | Example: | |
1252 | ||
1253 | ATTENDEE;DELEGATED-FROM="MAILTO:jsmith@host.com":MAILTO: | |
1254 | jdoe@host.com | |
1255 | ||
1256 | <span class="h4"><h4><a name="section-4.2.5">4.2.5</a> Delegatees</h4></span> | |
1257 | ||
1258 | Parameter Name: DELEGATED-TO | |
1259 | ||
1260 | Purpose: To specify the calendar users to whom the calendar user | |
1261 | specified by the property has delegated participation. | |
1262 | ||
1263 | Format Definition: The property parameter is defined by the following | |
1264 | notation: | |
1265 | ||
1266 | deltoparam = "DELEGATED-TO" "=" DQUOTE cal-address DQUOTE | |
1267 | *("," DQUOTE cal-address DQUOTE) | |
1268 | ||
1269 | Description: This parameter can be specified on properties with a | |
1270 | CAL-ADDRESS value type. This parameter specifies those calendar users | |
1271 | whom have been delegated participation in a group scheduled event or | |
1272 | to-do by the calendar user specified by the property. The value MUST | |
1273 | be a MAILTO URI as defined in [<a href="http://tools.ietf.org/html/rfc1738" title=""Uniform Resource Locators (URL)"">RFC 1738</a>]. The individual calendar | |
1274 | address parameter values MUST each be specified in a quoted-string. | |
1275 | ||
1276 | Example: | |
1277 | ||
1278 | ATTENDEE;DELEGATED-TO="MAILTO:jdoe@host.com","MAILTO:jqpublic@ | |
1279 | host.com":MAILTO:jsmith@host.com | |
1280 | ||
1281 | <span class="h4"><h4><a name="section-4.2.6">4.2.6</a> Directory Entry Reference</h4></span> | |
1282 | ||
1283 | Parameter Name: DIR | |
1284 | ||
1285 | Purpose: To specify reference to a directory entry associated with | |
1286 | the calendar user specified by the property. | |
1287 | ||
1288 | Format Definition: The property parameter is defined by the following | |
1289 | notation: | |
1290 | ||
1291 | ||
1292 | ||
1293 | <span class="grey">Dawson & Stenerson Standards Track [Page 21]</span> | |
1294 | </pre><pre class="newpage"><a name="page-22" id="page-22" href="#page-22" class="invisible"> </a> | |
1295 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1296 | ||
1297 | ||
1298 | dirparam = "DIR" "=" DQUOTE uri DQUOTE | |
1299 | ||
1300 | Description: This parameter can be specified on properties with a | |
1301 | CAL-ADDRESS value type. The parameter specifies a reference to the | |
1302 | directory entry associated with the calendar user specified by the | |
1303 | property. The parameter value is a URI. The individual URI parameter | |
1304 | values MUST each be specified in a quoted-string. | |
1305 | ||
1306 | Example: | |
1307 | ||
1308 | ORGANIZER;DIR="ldap://host.com:6666/o=eDABC%20Industries,c=3DUS?? | |
1309 | (cn=3DBJim%20Dolittle)":MAILTO:jimdo@host1.com | |
1310 | ||
1311 | <span class="h4"><h4><a name="section-4.2.7">4.2.7</a> Inline Encoding</h4></span> | |
1312 | ||
1313 | Parameter Name: ENCODING | |
1314 | ||
1315 | Purpose: To specify an alternate inline encoding for the property | |
1316 | value. | |
1317 | ||
1318 | Format Definition: The property parameter is defined by the following | |
1319 | notation: | |
1320 | ||
1321 | encodingparam = "ENCODING" "=" | |
1322 | ("8BIT" | |
1323 | ; "8bit" text encoding is defined in [<a href="http://tools.ietf.org/html/rfc2045" title="" Multipurpose Internet Mail Extensions (MIME) - Part One: Format of Internet Message Bodies"">RFC 2045</a>] | |
1324 | / "BASE64" | |
1325 | ; "BASE64" binary encoding format is defined in [<a href="http://tools.ietf.org/html/rfc2045" title="" Multipurpose Internet Mail Extensions (MIME) - Part One: Format of Internet Message Bodies"">RFC 2045</a>] | |
1326 | / iana-token | |
1327 | ; Some other IANA registered iCalendar encoding type | |
1328 | / x-name) | |
1329 | ; A non-standard, experimental encoding type | |
1330 | ||
1331 | Description: The property parameter identifies the inline encoding | |
1332 | used in a property value. The default encoding is "8BIT", | |
1333 | corresponding to a property value consisting of text. The "BASE64" | |
1334 | encoding type corresponds to a property value encoded using the | |
1335 | "BASE64" encoding defined in [<a href="http://tools.ietf.org/html/rfc2045" title="" Multipurpose Internet Mail Extensions (MIME) - Part One: Format of Internet Message Bodies"">RFC 2045</a>]. | |
1336 | ||
1337 | If the value type parameter is ";VALUE=BINARY", then the inline | |
1338 | encoding parameter MUST be specified with the value | |
1339 | ";ENCODING=BASE64". | |
1340 | ||
1341 | ||
1342 | ||
1343 | ||
1344 | ||
1345 | ||
1346 | ||
1347 | ||
1348 | ||
1349 | <span class="grey">Dawson & Stenerson Standards Track [Page 22]</span> | |
1350 | </pre><pre class="newpage"><a name="page-23" id="page-23" href="#page-23" class="invisible"> </a> | |
1351 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1352 | ||
1353 | ||
1354 | Example: | |
1355 | ||
1356 | ATTACH;FMTYPE=IMAGE/JPEG;ENCODING=BASE64;VALUE=BINARY:MIICajC | |
1357 | CAdOgAwIBAgICBEUwDQYJKoZIhvcNAQEEBQAwdzELMAkGA1UEBhMCVVMxLDA | |
1358 | qBgNVBAoTI05ldHNjYXBlIENvbW11bmljYXRpb25zIENvcnBvcmF0aW9uMRw | |
1359 | <...remainder of "BASE64" encoded binary data...> | |
1360 | ||
1361 | <span class="h4"><h4><a name="section-4.2.8">4.2.8</a> Format Type</h4></span> | |
1362 | ||
1363 | Parameter Name: FMTTYPE | |
1364 | ||
1365 | Purpose: To specify the content type of a referenced object. | |
1366 | ||
1367 | Format Definition: The property parameter is defined by the following | |
1368 | notation: | |
1369 | ||
1370 | fmttypeparam = "FMTTYPE" "=" iana-token | |
1371 | ; A IANA registered content type | |
1372 | / x-name | |
1373 | ; A non-standard content type | |
1374 | ||
1375 | Description: This parameter can be specified on properties that are | |
1376 | used to reference an object. The parameter specifies the content type | |
1377 | of the referenced object. For example, on the "ATTACH" property, a | |
1378 | FTP type URI value does not, by itself, necessarily convey the type | |
1379 | of content associated with the resource. The parameter value MUST be | |
1380 | the TEXT for either an IANA registered content type or a non-standard | |
1381 | content type. | |
1382 | ||
1383 | Example: | |
1384 | ||
1385 | ATTACH;FMTTYPE=application/binary:ftp://domain.com/pub/docs/ | |
1386 | agenda.doc | |
1387 | ||
1388 | <span class="h4"><h4><a name="section-4.2.9">4.2.9</a> Free/Busy Time Type</h4></span> | |
1389 | ||
1390 | Parameter Name: FBTYPE | |
1391 | ||
1392 | Purpose: To specify the free or busy time type. | |
1393 | ||
1394 | Format Definition: The property parameter is defined by the following | |
1395 | notation: | |
1396 | ||
1397 | fbtypeparam = "FBTYPE" "=" ("FREE" / "BUSY" | |
1398 | / "BUSY-UNAVAILABLE" / "BUSY-TENTATIVE" | |
1399 | / x-name | |
1400 | ; Some experimental iCalendar data type. | |
1401 | / iana-token) | |
1402 | ||
1403 | ||
1404 | ||
1405 | <span class="grey">Dawson & Stenerson Standards Track [Page 23]</span> | |
1406 | </pre><pre class="newpage"><a name="page-24" id="page-24" href="#page-24" class="invisible"> </a> | |
1407 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1408 | ||
1409 | ||
1410 | ; Some other IANA registered iCalendar data type. | |
1411 | ||
1412 | Description: The parameter specifies the free or busy time type. The | |
1413 | value FREE indicates that the time interval is free for scheduling. | |
1414 | The value BUSY indicates that the time interval is busy because one | |
1415 | or more events have been scheduled for that interval. The value | |
1416 | BUSY-UNAVAILABLE indicates that the time interval is busy and that | |
1417 | the interval can not be scheduled. The value BUSY-TENTATIVE indicates | |
1418 | that the time interval is busy because one or more events have been | |
1419 | tentatively scheduled for that interval. If not specified on a | |
1420 | property that allows this parameter, the default is BUSY. | |
1421 | ||
1422 | Example: The following is an example of this parameter on a FREEBUSY | |
1423 | property. | |
1424 | ||
1425 | FREEBUSY;FBTYPE=BUSY:19980415T133000Z/19980415T170000Z | |
1426 | ||
1427 | <span class="h4"><h4><a name="section-4.2.10">4.2.10</a> Language</h4></span> | |
1428 | ||
1429 | Parameter Name: LANGUAGE | |
1430 | ||
1431 | Purpose: To specify the language for text values in a property or | |
1432 | property parameter. | |
1433 | ||
1434 | Format Definition: The property parameter is defined by the following | |
1435 | notation: | |
1436 | ||
1437 | languageparam = "LANGUAGE" "=" language | |
1438 | ||
1439 | language = <Text identifying a language, as defined in [<a href="http://tools.ietf.org/html/rfc1766" title=""Tags for the Identification of Languages"">RFC 1766</a>]> | |
1440 | ||
1441 | Description: This parameter can be specified on properties with a | |
1442 | text value type. The parameter identifies the language of the text in | |
1443 | the property or property parameter value. The value of the "language" | |
1444 | property parameter is that defined in [<a href="http://tools.ietf.org/html/rfc1766" title=""Tags for the Identification of Languages"">RFC 1766</a>]. | |
1445 | ||
1446 | For transport in a MIME entity, the Content-Language header field can | |
1447 | be used to set the default language for the entire body part. | |
1448 | Otherwise, no default language is assumed. | |
1449 | ||
1450 | Example: | |
1451 | ||
1452 | SUMMARY;LANGUAGE=us-EN:Company Holiday Party | |
1453 | ||
1454 | LOCATION;LANGUAGE=en:Germany | |
1455 | LOCATION;LANGUAGE=no:Tyskland | |
1456 | ||
1457 | ||
1458 | ||
1459 | ||
1460 | ||
1461 | <span class="grey">Dawson & Stenerson Standards Track [Page 24]</span> | |
1462 | </pre><pre class="newpage"><a name="page-25" id="page-25" href="#page-25" class="invisible"> </a> | |
1463 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1464 | ||
1465 | ||
1466 | The following example makes use of the Quoted-Printable encoding in | |
1467 | order to represent non-ASCII characters. | |
1468 | ||
1469 | LOCATION;LANGUAGE=da:K=F8benhavn | |
1470 | LOCATION;LANGUAGE=en:Copenhagen | |
1471 | ||
1472 | <span class="h4"><h4><a name="section-4.2.11">4.2.11</a> Group or List Membership</h4></span> | |
1473 | ||
1474 | Parameter Name: MEMBER | |
1475 | ||
1476 | Purpose: To specify the group or list membership of the calendar user | |
1477 | specified by the property. | |
1478 | ||
1479 | Format Definition: The property parameter is defined by the following | |
1480 | notation: | |
1481 | ||
1482 | memberparam = "MEMBER" "=" DQUOTE cal-address DQUOTE | |
1483 | *("," DQUOTE cal-address DQUOTE) | |
1484 | ||
1485 | Description: This parameter can be specified on properties with a | |
1486 | CAL-ADDRESS value type. The parameter identifies the groups or list | |
1487 | membership for the calendar user specified by the property. The | |
1488 | parameter value either a single calendar address in a quoted-string | |
1489 | or a COMMA character (US-ASCII decimal 44) list of calendar | |
1490 | addresses, each in a quoted-string. The individual calendar address | |
1491 | parameter values MUST each be specified in a quoted-string. | |
1492 | ||
1493 | Example: | |
1494 | ||
1495 | ATTENDEE;MEMBER="MAILTO:ietf-calsch@imc.org":MAILTO:jsmith@host.com | |
1496 | ||
1497 | ATTENDEE;MEMBER="MAILTO:projectA@host.com","MAILTO:projectB@host. | |
1498 | com":MAILTO:janedoe@host.com | |
1499 | ||
1500 | <span class="h4"><h4><a name="section-4.2.12">4.2.12</a> Participation Status</h4></span> | |
1501 | ||
1502 | Parameter Name: PARTSTAT | |
1503 | ||
1504 | Purpose: To specify the participation status for the calendar user | |
1505 | specified by the property. | |
1506 | ||
1507 | Format Definition: The property parameter is defined by the following | |
1508 | notation: | |
1509 | ||
1510 | partstatparam = "PARTSTAT" "=" | |
1511 | ("NEEDS-ACTION" ; Event needs action | |
1512 | / "ACCEPTED" ; Event accepted | |
1513 | / "DECLINED" ; Event declined | |
1514 | ||
1515 | ||
1516 | ||
1517 | <span class="grey">Dawson & Stenerson Standards Track [Page 25]</span> | |
1518 | </pre><pre class="newpage"><a name="page-26" id="page-26" href="#page-26" class="invisible"> </a> | |
1519 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1520 | ||
1521 | ||
1522 | / "TENTATIVE" ; Event tentatively | |
1523 | ; accepted | |
1524 | / "DELEGATED" ; Event delegated | |
1525 | / x-name ; Experimental status | |
1526 | / iana-token) ; Other IANA registered | |
1527 | ; status | |
1528 | ; These are the participation statuses for a "VEVENT". Default is | |
1529 | ; NEEDS-ACTION | |
1530 | partstatparam /= "PARTSTAT" "=" | |
1531 | ("NEEDS-ACTION" ; To-do needs action | |
1532 | / "ACCEPTED" ; To-do accepted | |
1533 | / "DECLINED" ; To-do declined | |
1534 | / "TENTATIVE" ; To-do tentatively | |
1535 | ; accepted | |
1536 | / "DELEGATED" ; To-do delegated | |
1537 | / "COMPLETED" ; To-do completed. | |
1538 | ; COMPLETED property has | |
1539 | ;date/time completed. | |
1540 | / "IN-PROCESS" ; To-do in process of | |
1541 | ; being completed | |
1542 | / x-name ; Experimental status | |
1543 | / iana-token) ; Other IANA registered | |
1544 | ; status | |
1545 | ; These are the participation statuses for a "VTODO". Default is | |
1546 | ; NEEDS-ACTION | |
1547 | ||
1548 | partstatparam /= "PARTSTAT" "=" | |
1549 | ("NEEDS-ACTION" ; Journal needs action | |
1550 | / "ACCEPTED" ; Journal accepted | |
1551 | / "DECLINED" ; Journal declined | |
1552 | / x-name ; Experimental status | |
1553 | / iana-token) ; Other IANA registered | |
1554 | ; status | |
1555 | ; These are the participation statuses for a "VJOURNAL". Default is | |
1556 | ; NEEDS-ACTION | |
1557 | ||
1558 | Description: This parameter can be specified on properties with a | |
1559 | CAL-ADDRESS value type. The parameter identifies the participation | |
1560 | status for the calendar user specified by the property value. The | |
1561 | parameter values differ depending on whether they are associated with | |
1562 | a group scheduled "VEVENT", "VTODO" or "VJOURNAL". The values MUST | |
1563 | match one of the values allowed for the given calendar component. If | |
1564 | not specified on a property that allows this parameter, the default | |
1565 | value is NEEDS-ACTION. | |
1566 | ||
1567 | Example: | |
1568 | ||
1569 | ATTENDEE;PARTSTAT=DECLINED:MAILTO:jsmith@host.com | |
1570 | ||
1571 | ||
1572 | ||
1573 | <span class="grey">Dawson & Stenerson Standards Track [Page 26]</span> | |
1574 | </pre><pre class="newpage"><a name="page-27" id="page-27" href="#page-27" class="invisible"> </a> | |
1575 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1576 | ||
1577 | ||
1578 | <span class="h4"><h4><a name="section-4.2.13">4.2.13</a> Recurrence Identifier Range</h4></span> | |
1579 | ||
1580 | Parameter Name: RANGE | |
1581 | ||
1582 | Purpose: To specify the effective range of recurrence instances from | |
1583 | the instance specified by the recurrence identifier specified by the | |
1584 | property. | |
1585 | ||
1586 | Format Definition: The property parameter is defined by the following | |
1587 | notation: | |
1588 | ||
1589 | rangeparam = "RANGE" "=" ("THISANDPRIOR" | |
1590 | ; To specify all instances prior to the recurrence identifier | |
1591 | / "THISANDFUTURE") | |
1592 | ; To specify the instance specified by the recurrence identifier | |
1593 | ; and all subsequent recurrence instances | |
1594 | ||
1595 | Description: The parameter can be specified on a property that | |
1596 | specifies a recurrence identifier. The parameter specifies the | |
1597 | effective range of recurrence instances that is specified by the | |
1598 | property. The effective range is from the recurrence identified | |
1599 | specified by the property. If this parameter is not specified an | |
1600 | allowed property, then the default range is the single instance | |
1601 | specified by the recurrence identifier value of the property. The | |
1602 | parameter value can be "THISANDPRIOR" to indicate a range defined by | |
1603 | the recurrence identified value of the property and all prior | |
1604 | instances. The parameter value can also be "THISANDFUTURE" to | |
1605 | indicate a range defined by the recurrence identifier and all | |
1606 | subsequent instances. | |
1607 | ||
1608 | Example: | |
1609 | ||
1610 | RECURRENCE-ID;RANGE=THISANDPRIOR:19980401T133000Z | |
1611 | ||
1612 | <span class="h4"><h4><a name="section-4.2.14">4.2.14</a> Alarm Trigger Relationship</h4></span> | |
1613 | ||
1614 | Parameter Name: RELATED | |
1615 | ||
1616 | Purpose: To specify the relationship of the alarm trigger with | |
1617 | respect to the start or end of the calendar component. | |
1618 | ||
1619 | Format Definition: The property parameter is defined by the following | |
1620 | notation: | |
1621 | ||
1622 | trigrelparam = "RELATED" "=" | |
1623 | ("START" ; Trigger off of start | |
1624 | / "END") ; Trigger off of end | |
1625 | ||
1626 | ||
1627 | ||
1628 | ||
1629 | <span class="grey">Dawson & Stenerson Standards Track [Page 27]</span> | |
1630 | </pre><pre class="newpage"><a name="page-28" id="page-28" href="#page-28" class="invisible"> </a> | |
1631 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1632 | ||
1633 | ||
1634 | Description: The parameter can be specified on properties that | |
1635 | specify an alarm trigger with a DURATION value type. The parameter | |
1636 | specifies whether the alarm will trigger relative to the start or end | |
1637 | of the calendar component. The parameter value START will set the | |
1638 | alarm to trigger off the start of the calendar component; the | |
1639 | parameter value END will set the alarm to trigger off the end of the | |
1640 | calendar component. If the parameter is not specified on an allowable | |
1641 | property, then the default is START. | |
1642 | ||
1643 | Example: | |
1644 | ||
1645 | TRIGGER;RELATED=END:PT5M | |
1646 | ||
1647 | <span class="h4"><h4><a name="section-4.2.15">4.2.15</a> Relationship Type</h4></span> | |
1648 | ||
1649 | Parameter Name: RELTYPE | |
1650 | ||
1651 | Purpose: To specify the type of hierarchical relationship associated | |
1652 | with the calendar component specified by the property. | |
1653 | ||
1654 | Format Definition: The property parameter is defined by the following | |
1655 | notation: | |
1656 | ||
1657 | reltypeparam = "RELTYPE" "=" | |
1658 | ("PARENT" ; Parent relationship. Default. | |
1659 | / "CHILD" ; Child relationship | |
1660 | / "SIBLING ; Sibling relationship | |
1661 | / iana-token ; Some other IANA registered | |
1662 | ; iCalendar relationship type | |
1663 | / x-name) ; A non-standard, experimental | |
1664 | ; relationship type | |
1665 | ||
1666 | Description: This parameter can be specified on a property that | |
1667 | references another related calendar. The parameter specifies the | |
1668 | hierarchical relationship type of the calendar component referenced | |
1669 | by the property. The parameter value can be PARENT, to indicate that | |
1670 | the referenced calendar component is a superior of calendar | |
1671 | component; CHILD to indicate that the referenced calendar component | |
1672 | is a subordinate of the calendar component; SIBLING to indicate that | |
1673 | the referenced calendar component is a peer of the calendar | |
1674 | component. If this parameter is not specified on an allowable | |
1675 | property, the default relationship type is PARENT. | |
1676 | ||
1677 | Example: | |
1678 | ||
1679 | RELATED-TO;RELTYPE=SIBLING:<19960401-080045-4000F192713@host.com> | |
1680 | ||
1681 | ||
1682 | ||
1683 | ||
1684 | ||
1685 | <span class="grey">Dawson & Stenerson Standards Track [Page 28]</span> | |
1686 | </pre><pre class="newpage"><a name="page-29" id="page-29" href="#page-29" class="invisible"> </a> | |
1687 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1688 | ||
1689 | ||
1690 | <span class="h4"><h4><a name="section-4.2.16">4.2.16</a> Participation Role</h4></span> | |
1691 | ||
1692 | Parameter Name: ROLE | |
1693 | ||
1694 | Purpose: To specify the participation role for the calendar user | |
1695 | specified by the property. | |
1696 | ||
1697 | Format Definition: The property parameter is defined by the following | |
1698 | notation: | |
1699 | ||
1700 | roleparam = "ROLE" "=" | |
1701 | ("CHAIR" ; Indicates chair of the | |
1702 | ; calendar entity | |
1703 | / "REQ-PARTICIPANT" ; Indicates a participant whose | |
1704 | ; participation is required | |
1705 | / "OPT-PARTICIPANT" ; Indicates a participant whose | |
1706 | ; participation is optional | |
1707 | / "NON-PARTICIPANT" ; Indicates a participant who is | |
1708 | ; copied for information | |
1709 | ; purposes only | |
1710 | / x-name ; Experimental role | |
1711 | / iana-token) ; Other IANA role | |
1712 | ; Default is REQ-PARTICIPANT | |
1713 | ||
1714 | Description: This parameter can be specified on properties with a | |
1715 | CAL-ADDRESS value type. The parameter specifies the participation | |
1716 | role for the calendar user specified by the property in the group | |
1717 | schedule calendar component. If not specified on a property that | |
1718 | allows this parameter, the default value is REQ-PARTICIPANT. | |
1719 | ||
1720 | Example: | |
1721 | ||
1722 | ATTENDEE;ROLE=CHAIR:MAILTO:mrbig@host.com | |
1723 | ||
1724 | <span class="h4"><h4><a name="section-4.2.17">4.2.17</a> RSVP Expectation</h4></span> | |
1725 | ||
1726 | Parameter Name: RSVP | |
1727 | ||
1728 | Purpose: To specify whether there is an expectation of a favor of a | |
1729 | reply from the calendar user specified by the property value. | |
1730 | ||
1731 | Format Definition: The property parameter is defined by the following | |
1732 | notation: | |
1733 | ||
1734 | rsvpparam = "RSVP" "=" ("TRUE" / "FALSE") | |
1735 | ; Default is FALSE | |
1736 | ||
1737 | ||
1738 | ||
1739 | ||
1740 | ||
1741 | <span class="grey">Dawson & Stenerson Standards Track [Page 29]</span> | |
1742 | </pre><pre class="newpage"><a name="page-30" id="page-30" href="#page-30" class="invisible"> </a> | |
1743 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1744 | ||
1745 | ||
1746 | Description: This parameter can be specified on properties with a | |
1747 | CAL-ADDRESS value type. The parameter identifies the expectation of a | |
1748 | reply from the calendar user specified by the property value. This | |
1749 | parameter is used by the "Organizer" to request a participation | |
1750 | status reply from an "Attendee" of a group scheduled event or to-do. | |
1751 | If not specified on a property that allows this parameter, the | |
1752 | default value is FALSE. | |
1753 | ||
1754 | Example: | |
1755 | ||
1756 | ATTENDEE;RSVP=TRUE:MAILTO:jsmith@host.com | |
1757 | ||
1758 | <span class="h4"><h4><a name="section-4.2.18">4.2.18</a> Sent By</h4></span> | |
1759 | ||
1760 | Parameter Name: SENT-BY | |
1761 | ||
1762 | Purpose: To specify the calendar user that is acting on behalf of the | |
1763 | calendar user specified by the property. | |
1764 | ||
1765 | Format Definition: The property parameter is defined by the following | |
1766 | notation: | |
1767 | ||
1768 | sentbyparam = "SENT-BY" "=" DQUOTE cal-address DQUOTE | |
1769 | ||
1770 | Description: This parameter can be specified on properties with a | |
1771 | CAL-ADDRESS value type. The parameter specifies the calendar user | |
1772 | that is acting on behalf of the calendar user specified by the | |
1773 | property. The parameter value MUST be a MAILTO URI as defined in [RFC | |
1774 | 1738]. The individual calendar address parameter values MUST each be | |
1775 | specified in a quoted-string. | |
1776 | ||
1777 | Example: | |
1778 | ||
1779 | ORGANIZER;SENT-BY:"MAILTO:sray@host.com":MAILTO:jsmith@host.com | |
1780 | ||
1781 | <span class="h4"><h4><a name="section-4.2.19">4.2.19</a> Time Zone Identifier</h4></span> | |
1782 | ||
1783 | Parameter Name: TZID | |
1784 | ||
1785 | Purpose: To specify the identifier for the time zone definition for a | |
1786 | time component in the property value. | |
1787 | ||
1788 | Format Definition: This property parameter is defined by the | |
1789 | following notation: | |
1790 | ||
1791 | tzidparam = "TZID" "=" [<a href="#ref-tzidprefix">tzidprefix</a>] paramtext CRLF | |
1792 | ||
1793 | tzidprefix = "/" | |
1794 | ||
1795 | ||
1796 | ||
1797 | <span class="grey">Dawson & Stenerson Standards Track [Page 30]</span> | |
1798 | </pre><pre class="newpage"><a name="page-31" id="page-31" href="#page-31" class="invisible"> </a> | |
1799 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1800 | ||
1801 | ||
1802 | Description: The parameter MUST be specified on the "DTSTART", | |
1803 | "DTEND", "DUE", "EXDATE" and "RDATE" properties when either a DATE- | |
1804 | TIME or TIME value type is specified and when the value is not either | |
1805 | a UTC or a "floating" time. Refer to the DATE-TIME or TIME value type | |
1806 | definition for a description of UTC and "floating time" formats. This | |
1807 | property parameter specifies a text value which uniquely identifies | |
1808 | the "VTIMEZONE" calendar component to be used when evaluating the | |
1809 | time portion of the property. The value of the TZID property | |
1810 | parameter will be equal to the value of the TZID property for the | |
1811 | matching time zone definition. An individual "VTIMEZONE" calendar | |
1812 | component MUST be specified for each unique "TZID" parameter value | |
1813 | specified in the iCalendar object. | |
1814 | ||
1815 | The parameter MUST be specified on properties with a DATE-TIME value | |
1816 | if the DATE-TIME is not either a UTC or a "floating" time. | |
1817 | ||
1818 | The presence of the SOLIDUS character (US-ASCII decimal 47) as a | |
1819 | prefix, indicates that this TZID represents a unique ID in a globally | |
1820 | defined time zone registry (when such registry is defined). | |
1821 | ||
1822 | Note: This document does not define a naming convention for time | |
1823 | zone identifiers. Implementers may want to use the naming | |
1824 | conventions defined in existing time zone specifications such as | |
1825 | the public-domain Olson database [<a href="#ref-TZ" title=""ftp://elsie.nci.nih.gov/pub/"">TZ</a>]. The specification of | |
1826 | globally unique time zone identifiers is not addressed by this | |
1827 | document and is left for future study. | |
1828 | ||
1829 | The following are examples of this property parameter: | |
1830 | ||
1831 | DTSTART;TZID=US-Eastern:19980119T020000 | |
1832 | ||
1833 | DTEND;TZID=US-Eastern:19980119T030000 | |
1834 | ||
1835 | The TZID property parameter MUST NOT be applied to DATE-TIME or TIME | |
1836 | properties whose time values are specified in UTC. | |
1837 | ||
1838 | The use of local time in a DATE-TIME or TIME value without the TZID | |
1839 | property parameter is to be interpreted as a local time value, | |
1840 | regardless of the existence of "VTIMEZONE" calendar components in the | |
1841 | iCalendar object. | |
1842 | ||
1843 | For more information see the sections on the data types DATE-TIME and | |
1844 | TIME. | |
1845 | ||
1846 | ||
1847 | ||
1848 | ||
1849 | ||
1850 | ||
1851 | ||
1852 | ||
1853 | <span class="grey">Dawson & Stenerson Standards Track [Page 31]</span> | |
1854 | </pre><pre class="newpage"><a name="page-32" id="page-32" href="#page-32" class="invisible"> </a> | |
1855 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1856 | ||
1857 | ||
1858 | <span class="h4"><h4><a name="section-4.2.20">4.2.20</a> Value Data Types</h4></span> | |
1859 | ||
1860 | Parameter Name: VALUE | |
1861 | ||
1862 | Purpose: To explicitly specify the data type format for a property | |
1863 | value. | |
1864 | ||
1865 | Format Definition: The "VALUE" property parameter is defined by the | |
1866 | following notation: | |
1867 | ||
1868 | valuetypeparam = "VALUE" "=" valuetype | |
1869 | ||
1870 | valuetype = ("BINARY" | |
1871 | / "BOOLEAN" | |
1872 | / "CAL-ADDRESS" | |
1873 | / "DATE" | |
1874 | / "DATE-TIME" | |
1875 | / "DURATION" | |
1876 | / "FLOAT" | |
1877 | / "INTEGER" | |
1878 | / "PERIOD" | |
1879 | / "RECUR" | |
1880 | / "TEXT" | |
1881 | / "TIME" | |
1882 | / "URI" | |
1883 | / "UTC-OFFSET" | |
1884 | / x-name | |
1885 | ; Some experimental iCalendar data type. | |
1886 | / iana-token) | |
1887 | ; Some other IANA registered iCalendar data type. | |
1888 | ||
1889 | Description: The parameter specifies the data type and format of the | |
1890 | property value. The property values MUST be of a single value type. | |
1891 | For example, a "RDATE" property cannot have a combination of DATE- | |
1892 | TIME and TIME value types. | |
1893 | ||
1894 | If the property's value is the default value type, then this | |
1895 | parameter need not be specified. However, if the property's default | |
1896 | value type is overridden by some other allowable value type, then | |
1897 | this parameter MUST be specified. | |
1898 | ||
1899 | <span class="h3"><h3><a name="section-4.3">4.3</a> Property Value Data Types</h3></span> | |
1900 | ||
1901 | The properties in an iCalendar object are strongly typed. The | |
1902 | definition of each property restricts the value to be one of the | |
1903 | value data types, or simply value types, defined in this section. The | |
1904 | value type for a property will either be specified implicitly as the | |
1905 | default value type or will be explicitly specified with the "VALUE" | |
1906 | ||
1907 | ||
1908 | ||
1909 | <span class="grey">Dawson & Stenerson Standards Track [Page 32]</span> | |
1910 | </pre><pre class="newpage"><a name="page-33" id="page-33" href="#page-33" class="invisible"> </a> | |
1911 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1912 | ||
1913 | ||
1914 | parameter. If the value type of a property is one of the alternate | |
1915 | valid types, then it MUST be explicitly specified with the "VALUE" | |
1916 | parameter. | |
1917 | ||
1918 | <span class="h4"><h4><a name="section-4.3.1">4.3.1</a> Binary</h4></span> | |
1919 | ||
1920 | Value Name: BINARY | |
1921 | ||
1922 | Purpose: This value type is used to identify properties that contain | |
1923 | a character encoding of inline binary data. For example, an inline | |
1924 | attachment of an object code might be included in an iCalendar | |
1925 | object. | |
1926 | ||
1927 | Formal Definition: The value type is defined by the following | |
1928 | notation: | |
1929 | ||
1930 | binary = *(4b-char) [<a href="#ref-b-end">b-end</a>] | |
1931 | ; A "BASE64" encoded character string, as defined by [<a href="http://tools.ietf.org/html/rfc2045" title="" Multipurpose Internet Mail Extensions (MIME) - Part One: Format of Internet Message Bodies"">RFC 2045</a>]. | |
1932 | ||
1933 | b-end = (2b-char "==") / (3b-char "=") | |
1934 | ||
1935 | b-char = ALPHA / DIGIT / "+" / "/" | |
1936 | ||
1937 | Description: Property values with this value type MUST also include | |
1938 | the inline encoding parameter sequence of ";ENCODING=BASE64". That | |
1939 | is, all inline binary data MUST first be character encoded using the | |
1940 | "BASE64" encoding method defined in [<a href="http://tools.ietf.org/html/rfc2045" title="" Multipurpose Internet Mail Extensions (MIME) - Part One: Format of Internet Message Bodies"">RFC 2045</a>]. No additional content | |
1941 | value encoding (i.e., BACKSLASH character encoding) is defined for | |
1942 | this value type. | |
1943 | ||
1944 | Example: The following is an abridged example of a "BASE64" encoded | |
1945 | binary value data. | |
1946 | ||
1947 | ATTACH;VALUE=BINARY;ENCODING=BASE64:MIICajCCAdOgAwIBAgICBEUwDQY | |
1948 | JKoZIhvcNAQEEBQAwdzELMAkGA1UEBhMCVVMxLDAqBgNVBAoTI05ldHNjYXBlI | |
1949 | ENvbW11bmljYXRpb25zIENvcnBvcmF0aW9uMRwwGgYDVQQLExNJbmZv | |
1950 | <...remainder of "BASE64" encoded binary data...> | |
1951 | ||
1952 | <span class="h4"><h4><a name="section-4.3.2">4.3.2</a> Boolean</h4></span> | |
1953 | ||
1954 | Value Name: BOOLEAN | |
1955 | ||
1956 | Purpose: This value type is used to identify properties that contain | |
1957 | either a "TRUE" or "FALSE" Boolean value. | |
1958 | ||
1959 | Formal Definition: The value type is defined by the following | |
1960 | notation: | |
1961 | ||
1962 | ||
1963 | ||
1964 | ||
1965 | <span class="grey">Dawson & Stenerson Standards Track [Page 33]</span> | |
1966 | </pre><pre class="newpage"><a name="page-34" id="page-34" href="#page-34" class="invisible"> </a> | |
1967 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
1968 | ||
1969 | ||
1970 | boolean = "TRUE" / "FALSE" | |
1971 | ||
1972 | Description: These values are case insensitive text. No additional | |
1973 | content value encoding (i.e., BACKSLASH character encoding) is | |
1974 | defined for this value type. | |
1975 | ||
1976 | Example: The following is an example of a hypothetical property that | |
1977 | has a BOOLEAN value type: | |
1978 | ||
1979 | GIBBERISH:TRUE | |
1980 | ||
1981 | <span class="h4"><h4><a name="section-4.3.3">4.3.3</a> Calendar User Address</h4></span> | |
1982 | ||
1983 | Value Name: CAL-ADDRESS | |
1984 | ||
1985 | Purpose: This value type is used to identify properties that contain | |
1986 | a calendar user address. | |
1987 | ||
1988 | Formal Definition: The value type is as defined by the following | |
1989 | notation: | |
1990 | ||
1991 | cal-address = uri | |
1992 | ||
1993 | Description: The value is a URI as defined by [<a href="http://tools.ietf.org/html/rfc1738" title=""Uniform Resource Locators (URL)"">RFC 1738</a>] or any other | |
1994 | IANA registered form for a URI. When used to address an Internet | |
1995 | email transport address for a calendar user, the value MUST be a | |
1996 | MAILTO URI, as defined by [<a href="http://tools.ietf.org/html/rfc1738" title=""Uniform Resource Locators (URL)"">RFC 1738</a>]. No additional content value | |
1997 | encoding (i.e., BACKSLASH character encoding) is defined for this | |
1998 | value type. | |
1999 | ||
2000 | Example: | |
2001 | ||
2002 | ATTENDEE:MAILTO:jane_doe@host.com | |
2003 | ||
2004 | <span class="h4"><h4><a name="section-4.3.4">4.3.4</a> Date</h4></span> | |
2005 | ||
2006 | Value Name: DATE | |
2007 | ||
2008 | Purpose: This value type is used to identify values that contain a | |
2009 | calendar date. | |
2010 | ||
2011 | Formal Definition: The value type is defined by the following | |
2012 | notation: | |
2013 | ||
2014 | date = date-value | |
2015 | ||
2016 | date-value = date-fullyear date-month date-mday | |
2017 | date-fullyear = 4DIGIT | |
2018 | ||
2019 | ||
2020 | ||
2021 | <span class="grey">Dawson & Stenerson Standards Track [Page 34]</span> | |
2022 | </pre><pre class="newpage"><a name="page-35" id="page-35" href="#page-35" class="invisible"> </a> | |
2023 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2024 | ||
2025 | ||
2026 | date-month = 2DIGIT ;01-12 | |
2027 | date-mday = 2DIGIT ;01-28, 01-29, 01-30, 01-31 | |
2028 | ;based on month/year | |
2029 | ||
2030 | Description: If the property permits, multiple "date" values are | |
2031 | specified as a COMMA character (US-ASCII decimal 44) separated list | |
2032 | of values. The format for the value type is expressed as the [ISO | |
2033 | 8601] complete representation, basic format for a calendar date. The | |
2034 | textual format specifies a four-digit year, two-digit month, and | |
2035 | two-digit day of the month. There are no separator characters between | |
2036 | the year, month and day component text. | |
2037 | ||
2038 | No additional content value encoding (i.e., BACKSLASH character | |
2039 | encoding) is defined for this value type. | |
2040 | ||
2041 | Example: The following represents July 14, 1997: | |
2042 | ||
2043 | 19970714 | |
2044 | ||
2045 | <span class="h4"><h4><a name="section-4.3.5">4.3.5</a> Date-Time</h4></span> | |
2046 | ||
2047 | Value Name: DATE-TIME | |
2048 | ||
2049 | Purpose: This value type is used to identify values that specify a | |
2050 | precise calendar date and time of day. | |
2051 | ||
2052 | Formal Definition: The value type is defined by the following | |
2053 | notation: | |
2054 | ||
2055 | date-time = date "T" time ;As specified in the date and time | |
2056 | ;value definitions | |
2057 | ||
2058 | Description: If the property permits, multiple "date-time" values are | |
2059 | specified as a COMMA character (US-ASCII decimal 44) separated list | |
2060 | of values. No additional content value encoding (i.e., BACKSLASH | |
2061 | character encoding) is defined for this value type. | |
2062 | ||
2063 | The "DATE-TIME" data type is used to identify values that contain a | |
2064 | precise calendar date and time of day. The format is based on the | |
2065 | [ISO 8601] complete representation, basic format for a calendar date | |
2066 | and time of day. The text format is a concatenation of the "date", | |
2067 | followed by the LATIN CAPITAL LETTER T character (US-ASCII decimal | |
2068 | 84) time designator, followed by the "time" format. | |
2069 | ||
2070 | The "DATE-TIME" data type expresses time values in three forms: | |
2071 | ||
2072 | The form of date and time with UTC offset MUST NOT be used. For | |
2073 | example, the following is not valid for a date-time value: | |
2074 | ||
2075 | ||
2076 | ||
2077 | <span class="grey">Dawson & Stenerson Standards Track [Page 35]</span> | |
2078 | </pre><pre class="newpage"><a name="page-36" id="page-36" href="#page-36" class="invisible"> </a> | |
2079 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2080 | ||
2081 | ||
2082 | DTSTART:19980119T230000-0800 ;Invalid time format | |
2083 | ||
2084 | FORM #1: DATE WITH LOCAL TIME | |
2085 | ||
2086 | The date with local time form is simply a date-time value that does | |
2087 | not contain the UTC designator nor does it reference a time zone. For | |
2088 | example, the following represents Janurary 18, 1998, at 11 PM: | |
2089 | ||
2090 | DTSTART:19980118T230000 | |
2091 | ||
2092 | Date-time values of this type are said to be "floating" and are not | |
2093 | bound to any time zone in particular. They are used to represent the | |
2094 | same hour, minute, and second value regardless of which time zone is | |
2095 | currently being observed. For example, an event can be defined that | |
2096 | indicates that an individual will be busy from 11:00 AM to 1:00 PM | |
2097 | every day, no matter which time zone the person is in. In these | |
2098 | cases, a local time can be specified. The recipient of an iCalendar | |
2099 | object with a property value consisting of a local time, without any | |
2100 | relative time zone information, SHOULD interpret the value as being | |
2101 | fixed to whatever time zone the ATTENDEE is in at any given moment. | |
2102 | This means that two ATTENDEEs, in different time zones, receiving the | |
2103 | same event definition as a floating time, may be participating in the | |
2104 | event at different actual times. Floating time SHOULD only be used | |
2105 | where that is the reasonable behavior. | |
2106 | ||
2107 | In most cases, a fixed time is desired. To properly communicate a | |
2108 | fixed time in a property value, either UTC time or local time with | |
2109 | time zone reference MUST be specified. | |
2110 | ||
2111 | The use of local time in a DATE-TIME value without the TZID property | |
2112 | parameter is to be interpreted as floating time, regardless of the | |
2113 | existence of "VTIMEZONE" calendar components in the iCalendar object. | |
2114 | ||
2115 | FORM #2: DATE WITH UTC TIME | |
2116 | ||
2117 | The date with UTC time, or absolute time, is identified by a LATIN | |
2118 | CAPITAL LETTER Z suffix character (US-ASCII decimal 90), the UTC | |
2119 | designator, appended to the time value. For example, the following | |
2120 | represents January 19, 1998, at 0700 UTC: | |
2121 | ||
2122 | DTSTART:19980119T070000Z | |
2123 | ||
2124 | The TZID property parameter MUST NOT be applied to DATE-TIME | |
2125 | properties whose time values are specified in UTC. | |
2126 | ||
2127 | FORM #3: DATE WITH LOCAL TIME AND TIME ZONE REFERENCE | |
2128 | ||
2129 | ||
2130 | ||
2131 | ||
2132 | ||
2133 | <span class="grey">Dawson & Stenerson Standards Track [Page 36]</span> | |
2134 | </pre><pre class="newpage"><a name="page-37" id="page-37" href="#page-37" class="invisible"> </a> | |
2135 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2136 | ||
2137 | ||
2138 | The date and local time with reference to time zone information is | |
2139 | identified by the use the TZID property parameter to reference the | |
2140 | appropriate time zone definition. TZID is discussed in detail in the | |
2141 | section on Time Zone. For example, the following represents 2 AM in | |
2142 | New York on Janurary 19, 1998: | |
2143 | ||
2144 | DTSTART;TZID=US-Eastern:19980119T020000 | |
2145 | ||
2146 | Example: The following represents July 14, 1997, at 1:30 PM in New | |
2147 | York City in each of the three time formats, using the "DTSTART" | |
2148 | property. | |
2149 | ||
2150 | DTSTART:19970714T133000 ;Local time | |
2151 | DTSTART:19970714T173000Z ;UTC time | |
2152 | DTSTART;TZID=US-Eastern:19970714T133000 ;Local time and time | |
2153 | ; zone reference | |
2154 | ||
2155 | A time value MUST ONLY specify 60 seconds when specifying the | |
2156 | periodic "leap second" in the time value. For example: | |
2157 | ||
2158 | COMPLETED:19970630T235960Z | |
2159 | ||
2160 | <span class="h4"><h4><a name="section-4.3.6">4.3.6</a> Duration</h4></span> | |
2161 | ||
2162 | Value Name: DURATION | |
2163 | ||
2164 | Purpose: This value type is used to identify properties that contain | |
2165 | a duration of time. | |
2166 | ||
2167 | Formal Definition: The value type is defined by the following | |
2168 | notation: | |
2169 | ||
2170 | dur-value = (["+"] / "-") "P" (dur-date / dur-time / dur-week) | |
2171 | ||
2172 | dur-date = dur-day [<a href="#ref-dur-time">dur-time</a>] | |
2173 | dur-time = "T" (dur-hour / dur-minute / dur-second) | |
2174 | dur-week = 1*DIGIT "W" | |
2175 | dur-hour = 1*DIGIT "H" [<a href="#ref-dur-minute">dur-minute</a>] | |
2176 | dur-minute = 1*DIGIT "M" [<a href="#ref-dur-second">dur-second</a>] | |
2177 | dur-second = 1*DIGIT "S" | |
2178 | dur-day = 1*DIGIT "D" | |
2179 | ||
2180 | Description: If the property permits, multiple "duration" values are | |
2181 | specified by a COMMA character (US-ASCII decimal 44) separated list | |
2182 | of values. The format is expressed as the [ISO 8601] basic format for | |
2183 | the duration of time. The format can represent durations in terms of | |
2184 | weeks, days, hours, minutes, and seconds. | |
2185 | ||
2186 | ||
2187 | ||
2188 | ||
2189 | <span class="grey">Dawson & Stenerson Standards Track [Page 37]</span> | |
2190 | </pre><pre class="newpage"><a name="page-38" id="page-38" href="#page-38" class="invisible"> </a> | |
2191 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2192 | ||
2193 | ||
2194 | No additional content value encoding (i.e., BACKSLASH character | |
2195 | encoding) are defined for this value type. | |
2196 | ||
2197 | Example: A duration of 15 days, 5 hours and 20 seconds would be: | |
2198 | ||
2199 | P15DT5H0M20S | |
2200 | ||
2201 | A duration of 7 weeks would be: | |
2202 | ||
2203 | P7W | |
2204 | ||
2205 | <span class="h4"><h4><a name="section-4.3.7">4.3.7</a> Float</h4></span> | |
2206 | ||
2207 | Value Name: FLOAT | |
2208 | ||
2209 | Purpose: This value type is used to identify properties that contain | |
2210 | a real number value. | |
2211 | ||
2212 | Formal Definition: The value type is defined by the following | |
2213 | notation: | |
2214 | ||
2215 | float = (["+"] / "-") 1*DIGIT ["." 1*DIGIT] | |
2216 | ||
2217 | Description: If the property permits, multiple "float" values are | |
2218 | specified by a COMMA character (US-ASCII decimal 44) separated list | |
2219 | of values. | |
2220 | ||
2221 | No additional content value encoding (i.e., BACKSLASH character | |
2222 | encoding) is defined for this value type. | |
2223 | ||
2224 | Example: | |
2225 | ||
2226 | 1000000.0000001 | |
2227 | 1.333 | |
2228 | -3.14 | |
2229 | ||
2230 | <span class="h4"><h4><a name="section-4.3.8">4.3.8</a> Integer</h4></span> | |
2231 | ||
2232 | Value Name:INTEGER | |
2233 | ||
2234 | Purpose: This value type is used to identify properties that contain | |
2235 | a signed integer value. | |
2236 | ||
2237 | Formal Definition: The value type is defined by the following | |
2238 | notation: | |
2239 | ||
2240 | integer = (["+"] / "-") 1*DIGIT | |
2241 | ||
2242 | ||
2243 | ||
2244 | ||
2245 | <span class="grey">Dawson & Stenerson Standards Track [Page 38]</span> | |
2246 | </pre><pre class="newpage"><a name="page-39" id="page-39" href="#page-39" class="invisible"> </a> | |
2247 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2248 | ||
2249 | ||
2250 | Description: If the property permits, multiple "integer" values are | |
2251 | specified by a COMMA character (US-ASCII decimal 44) separated list | |
2252 | of values. The valid range for "integer" is -2147483648 to | |
2253 | 2147483647. If the sign is not specified, then the value is assumed | |
2254 | to be positive. | |
2255 | ||
2256 | No additional content value encoding (i.e., BACKSLASH character | |
2257 | encoding) is defined for this value type. | |
2258 | ||
2259 | Example: | |
2260 | ||
2261 | 1234567890 | |
2262 | -1234567890 | |
2263 | +1234567890 | |
2264 | 432109876 | |
2265 | ||
2266 | <span class="h4"><h4><a name="section-4.3.9">4.3.9</a> Period of Time</h4></span> | |
2267 | ||
2268 | Value Name: PERIOD | |
2269 | ||
2270 | Purpose: This value type is used to identify values that contain a | |
2271 | precise period of time. | |
2272 | ||
2273 | Formal Definition: The data type is defined by the following | |
2274 | notation: | |
2275 | ||
2276 | period = period-explicit / period-start | |
2277 | ||
2278 | period-explicit = date-time "/" date-time | |
2279 | ; [ISO 8601] complete representation basic format for a period of | |
2280 | ; time consisting of a start and end. The start MUST be before the | |
2281 | ; end. | |
2282 | ||
2283 | period-start = date-time "/" dur-value | |
2284 | ; [ISO 8601] complete representation basic format for a period of | |
2285 | ; time consisting of a start and positive duration of time. | |
2286 | ||
2287 | Description: If the property permits, multiple "period" values are | |
2288 | specified by a COMMA character (US-ASCII decimal 44) separated list | |
2289 | of values. There are two forms of a period of time. First, a period | |
2290 | of time is identified by its start and its end. This format is | |
2291 | expressed as the [ISO 8601] complete representation, basic format for | |
2292 | "DATE-TIME" start of the period, followed by a SOLIDUS character | |
2293 | (US-ASCII decimal 47), followed by the "DATE-TIME" of the end of the | |
2294 | period. The start of the period MUST be before the end of the period. | |
2295 | Second, a period of time can also be defined by a start and a | |
2296 | positive duration of time. The format is expressed as the [ISO 8601] | |
2297 | complete representation, basic format for the "DATE-TIME" start of | |
2298 | ||
2299 | ||
2300 | ||
2301 | <span class="grey">Dawson & Stenerson Standards Track [Page 39]</span> | |
2302 | </pre><pre class="newpage"><a name="page-40" id="page-40" href="#page-40" class="invisible"> </a> | |
2303 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2304 | ||
2305 | ||
2306 | the period, followed by a SOLIDUS character (US-ASCII decimal 47), | |
2307 | followed by the [ISO 8601] basic format for "DURATION" of the period. | |
2308 | ||
2309 | Example: The period starting at 18:00:00 UTC, on January 1, 1997 and | |
2310 | ending at 07:00:00 UTC on January 2, 1997 would be: | |
2311 | ||
2312 | 19970101T180000Z/19970102T070000Z | |
2313 | ||
2314 | The period start at 18:00:00 on January 1, 1997 and lasting 5 hours | |
2315 | and 30 minutes would be: | |
2316 | ||
2317 | 19970101T180000Z/PT5H30M | |
2318 | ||
2319 | No additional content value encoding (i.e., BACKSLASH character | |
2320 | encoding) is defined for this value type. | |
2321 | ||
2322 | <span class="h4"><h4><a name="section-4.3.10">4.3.10</a> Recurrence Rule</h4></span> | |
2323 | ||
2324 | Value Name: RECUR | |
2325 | ||
2326 | Purpose: This value type is used to identify properties that contain | |
2327 | a recurrence rule specification. | |
2328 | ||
2329 | Formal Definition: The value type is defined by the following | |
2330 | notation: | |
2331 | ||
2332 | recur = "FREQ"=freq *( | |
2333 | ||
2334 | ; either UNTIL or COUNT may appear in a 'recur', | |
2335 | ; but UNTIL and COUNT MUST NOT occur in the same 'recur' | |
2336 | ||
2337 | ( ";" "UNTIL" "=" enddate ) / | |
2338 | ( ";" "COUNT" "=" 1*DIGIT ) / | |
2339 | ||
2340 | ; the rest of these keywords are optional, | |
2341 | ; but MUST NOT occur more than once | |
2342 | ||
2343 | ( ";" "INTERVAL" "=" 1*DIGIT ) / | |
2344 | ( ";" "BYSECOND" "=" byseclist ) / | |
2345 | ( ";" "BYMINUTE" "=" byminlist ) / | |
2346 | ( ";" "BYHOUR" "=" byhrlist ) / | |
2347 | ( ";" "BYDAY" "=" bywdaylist ) / | |
2348 | ( ";" "BYMONTHDAY" "=" bymodaylist ) / | |
2349 | ( ";" "BYYEARDAY" "=" byyrdaylist ) / | |
2350 | ( ";" "BYWEEKNO" "=" bywknolist ) / | |
2351 | ( ";" "BYMONTH" "=" bymolist ) / | |
2352 | ( ";" "BYSETPOS" "=" bysplist ) / | |
2353 | ( ";" "WKST" "=" weekday ) / | |
2354 | ||
2355 | ||
2356 | ||
2357 | <span class="grey">Dawson & Stenerson Standards Track [Page 40]</span> | |
2358 | </pre><pre class="newpage"><a name="page-41" id="page-41" href="#page-41" class="invisible"> </a> | |
2359 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2360 | ||
2361 | ||
2362 | ( ";" x-name "=" text ) | |
2363 | ) | |
2364 | ||
2365 | freq = "SECONDLY" / "MINUTELY" / "HOURLY" / "DAILY" | |
2366 | / "WEEKLY" / "MONTHLY" / "YEARLY" | |
2367 | ||
2368 | enddate = date | |
2369 | enddate =/ date-time ;An UTC value | |
2370 | ||
2371 | byseclist = seconds / ( seconds *("," seconds) ) | |
2372 | ||
2373 | seconds = 1DIGIT / 2DIGIT ;0 to 59 | |
2374 | ||
2375 | byminlist = minutes / ( minutes *("," minutes) ) | |
2376 | ||
2377 | minutes = 1DIGIT / 2DIGIT ;0 to 59 | |
2378 | ||
2379 | byhrlist = hour / ( hour *("," hour) ) | |
2380 | ||
2381 | hour = 1DIGIT / 2DIGIT ;0 to 23 | |
2382 | ||
2383 | bywdaylist = weekdaynum / ( weekdaynum *("," weekdaynum) ) | |
2384 | ||
2385 | weekdaynum = [([<a href="#ref-plus">plus</a>] ordwk / minus ordwk)] weekday | |
2386 | ||
2387 | plus = "+" | |
2388 | ||
2389 | minus = "-" | |
2390 | ||
2391 | ordwk = 1DIGIT / 2DIGIT ;1 to 53 | |
2392 | ||
2393 | weekday = "SU" / "MO" / "TU" / "WE" / "TH" / "FR" / "SA" | |
2394 | ;Corresponding to SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, | |
2395 | ;FRIDAY, SATURDAY and SUNDAY days of the week. | |
2396 | ||
2397 | bymodaylist = monthdaynum / ( monthdaynum *("," monthdaynum) ) | |
2398 | ||
2399 | monthdaynum = ([<a href="#ref-plus">plus</a>] ordmoday) / (minus ordmoday) | |
2400 | ||
2401 | ordmoday = 1DIGIT / 2DIGIT ;1 to 31 | |
2402 | ||
2403 | byyrdaylist = yeardaynum / ( yeardaynum *("," yeardaynum) ) | |
2404 | ||
2405 | yeardaynum = ([<a href="#ref-plus">plus</a>] ordyrday) / (minus ordyrday) | |
2406 | ||
2407 | ordyrday = 1DIGIT / 2DIGIT / 3DIGIT ;1 to 366 | |
2408 | ||
2409 | bywknolist = weeknum / ( weeknum *("," weeknum) ) | |
2410 | ||
2411 | ||
2412 | ||
2413 | <span class="grey">Dawson & Stenerson Standards Track [Page 41]</span> | |
2414 | </pre><pre class="newpage"><a name="page-42" id="page-42" href="#page-42" class="invisible"> </a> | |
2415 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2416 | ||
2417 | ||
2418 | weeknum = ([<a href="#ref-plus">plus</a>] ordwk) / (minus ordwk) | |
2419 | ||
2420 | bymolist = monthnum / ( monthnum *("," monthnum) ) | |
2421 | ||
2422 | monthnum = 1DIGIT / 2DIGIT ;1 to 12 | |
2423 | ||
2424 | bysplist = setposday / ( setposday *("," setposday) ) | |
2425 | ||
2426 | setposday = yeardaynum | |
2427 | ||
2428 | Description: If the property permits, multiple "recur" values are | |
2429 | specified by a COMMA character (US-ASCII decimal 44) separated list | |
2430 | of values. The value type is a structured value consisting of a list | |
2431 | of one or more recurrence grammar parts. Each rule part is defined by | |
2432 | a NAME=VALUE pair. The rule parts are separated from each other by | |
2433 | the SEMICOLON character (US-ASCII decimal 59). The rule parts are not | |
2434 | ordered in any particular sequence. Individual rule parts MUST only | |
2435 | be specified once. | |
2436 | ||
2437 | The FREQ rule part identifies the type of recurrence rule. This rule | |
2438 | part MUST be specified in the recurrence rule. Valid values include | |
2439 | SECONDLY, to specify repeating events based on an interval of a | |
2440 | second or more; MINUTELY, to specify repeating events based on an | |
2441 | interval of a minute or more; HOURLY, to specify repeating events | |
2442 | based on an interval of an hour or more; DAILY, to specify repeating | |
2443 | events based on an interval of a day or more; WEEKLY, to specify | |
2444 | repeating events based on an interval of a week or more; MONTHLY, to | |
2445 | specify repeating events based on an interval of a month or more; and | |
2446 | YEARLY, to specify repeating events based on an interval of a year or | |
2447 | more. | |
2448 | ||
2449 | The INTERVAL rule part contains a positive integer representing how | |
2450 | often the recurrence rule repeats. The default value is "1", meaning | |
2451 | every second for a SECONDLY rule, or every minute for a MINUTELY | |
2452 | rule, every hour for an HOURLY rule, every day for a DAILY rule, | |
2453 | every week for a WEEKLY rule, every month for a MONTHLY rule and | |
2454 | every year for a YEARLY rule. | |
2455 | ||
2456 | The UNTIL rule part defines a date-time value which bounds the | |
2457 | recurrence rule in an inclusive manner. If the value specified by | |
2458 | UNTIL is synchronized with the specified recurrence, this date or | |
2459 | date-time becomes the last instance of the recurrence. If specified | |
2460 | as a date-time value, then it MUST be specified in an UTC time | |
2461 | format. If not present, and the COUNT rule part is also not present, | |
2462 | the RRULE is considered to repeat forever. | |
2463 | ||
2464 | The COUNT rule part defines the number of occurrences at which to | |
2465 | range-bound the recurrence. The "DTSTART" property value, if | |
2466 | ||
2467 | ||
2468 | ||
2469 | <span class="grey">Dawson & Stenerson Standards Track [Page 42]</span> | |
2470 | </pre><pre class="newpage"><a name="page-43" id="page-43" href="#page-43" class="invisible"> </a> | |
2471 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2472 | ||
2473 | ||
2474 | specified, counts as the first occurrence. | |
2475 | ||
2476 | The BYSECOND rule part specifies a COMMA character (US-ASCII decimal | |
2477 | 44) separated list of seconds within a minute. Valid values are 0 to | |
2478 | 59. The BYMINUTE rule part specifies a COMMA character (US-ASCII | |
2479 | decimal 44) separated list of minutes within an hour. Valid values | |
2480 | are 0 to 59. The BYHOUR rule part specifies a COMMA character (US- | |
2481 | ASCII decimal 44) separated list of hours of the day. Valid values | |
2482 | are 0 to 23. | |
2483 | ||
2484 | The BYDAY rule part specifies a COMMA character (US-ASCII decimal 44) | |
2485 | separated list of days of the week; MO indicates Monday; TU indicates | |
2486 | Tuesday; WE indicates Wednesday; TH indicates Thursday; FR indicates | |
2487 | Friday; SA indicates Saturday; SU indicates Sunday. | |
2488 | ||
2489 | Each BYDAY value can also be preceded by a positive (+n) or negative | |
2490 | (-n) integer. If present, this indicates the nth occurrence of the | |
2491 | specific day within the MONTHLY or YEARLY RRULE. For example, within | |
2492 | a MONTHLY rule, +1MO (or simply 1MO) represents the first Monday | |
2493 | within the month, whereas -1MO represents the last Monday of the | |
2494 | month. If an integer modifier is not present, it means all days of | |
2495 | this type within the specified frequency. For example, within a | |
2496 | MONTHLY rule, MO represents all Mondays within the month. | |
2497 | ||
2498 | The BYMONTHDAY rule part specifies a COMMA character (ASCII decimal | |
2499 | 44) separated list of days of the month. Valid values are 1 to 31 or | |
2500 | -31 to -1. For example, -10 represents the tenth to the last day of | |
2501 | the month. | |
2502 | ||
2503 | The BYYEARDAY rule part specifies a COMMA character (US-ASCII decimal | |
2504 | 44) separated list of days of the year. Valid values are 1 to 366 or | |
2505 | -366 to -1. For example, -1 represents the last day of the year | |
2506 | (December 31st) and -306 represents the 306th to the last day of the | |
2507 | year (March 1st). | |
2508 | ||
2509 | The BYWEEKNO rule part specifies a COMMA character (US-ASCII decimal | |
2510 | 44) separated list of ordinals specifying weeks of the year. Valid | |
2511 | values are 1 to 53 or -53 to -1. This corresponds to weeks according | |
2512 | to week numbering as defined in [ISO 8601]. A week is defined as a | |
2513 | seven day period, starting on the day of the week defined to be the | |
2514 | week start (see WKST). Week number one of the calendar year is the | |
2515 | first week which contains at least four (4) days in that calendar | |
2516 | year. This rule part is only valid for YEARLY rules. For example, 3 | |
2517 | represents the third week of the year. | |
2518 | ||
2519 | Note: Assuming a Monday week start, week 53 can only occur when | |
2520 | Thursday is January 1 or if it is a leap year and Wednesday is | |
2521 | January 1. | |
2522 | ||
2523 | ||
2524 | ||
2525 | <span class="grey">Dawson & Stenerson Standards Track [Page 43]</span> | |
2526 | </pre><pre class="newpage"><a name="page-44" id="page-44" href="#page-44" class="invisible"> </a> | |
2527 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2528 | ||
2529 | ||
2530 | The BYMONTH rule part specifies a COMMA character (US-ASCII decimal | |
2531 | 44) separated list of months of the year. Valid values are 1 to 12. | |
2532 | ||
2533 | The WKST rule part specifies the day on which the workweek starts. | |
2534 | Valid values are MO, TU, WE, TH, FR, SA and SU. This is significant | |
2535 | when a WEEKLY RRULE has an interval greater than 1, and a BYDAY rule | |
2536 | part is specified. This is also significant when in a YEARLY RRULE | |
2537 | when a BYWEEKNO rule part is specified. The default value is MO. | |
2538 | ||
2539 | The BYSETPOS rule part specifies a COMMA character (US-ASCII decimal | |
2540 | 44) separated list of values which corresponds to the nth occurrence | |
2541 | within the set of events specified by the rule. Valid values are 1 to | |
2542 | 366 or -366 to -1. It MUST only be used in conjunction with another | |
2543 | BYxxx rule part. For example "the last work day of the month" could | |
2544 | be represented as: | |
2545 | ||
2546 | RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=-1 | |
2547 | ||
2548 | Each BYSETPOS value can include a positive (+n) or negative (-n) | |
2549 | integer. If present, this indicates the nth occurrence of the | |
2550 | specific occurrence within the set of events specified by the rule. | |
2551 | ||
2552 | If BYxxx rule part values are found which are beyond the available | |
2553 | scope (ie, BYMONTHDAY=30 in February), they are simply ignored. | |
2554 | ||
2555 | Information, not contained in the rule, necessary to determine the | |
2556 | various recurrence instance start time and dates are derived from the | |
2557 | Start Time (DTSTART) entry attribute. For example, | |
2558 | "FREQ=YEARLY;BYMONTH=1" doesn't specify a specific day within the | |
2559 | month or a time. This information would be the same as what is | |
2560 | specified for DTSTART. | |
2561 | ||
2562 | BYxxx rule parts modify the recurrence in some manner. BYxxx rule | |
2563 | parts for a period of time which is the same or greater than the | |
2564 | frequency generally reduce or limit the number of occurrences of the | |
2565 | recurrence generated. For example, "FREQ=DAILY;BYMONTH=1" reduces the | |
2566 | number of recurrence instances from all days (if BYMONTH tag is not | |
2567 | present) to all days in January. BYxxx rule parts for a period of | |
2568 | time less than the frequency generally increase or expand the number | |
2569 | of occurrences of the recurrence. For example, | |
2570 | "FREQ=YEARLY;BYMONTH=1,2" increases the number of days within the | |
2571 | yearly recurrence set from 1 (if BYMONTH tag is not present) to 2. | |
2572 | ||
2573 | If multiple BYxxx rule parts are specified, then after evaluating the | |
2574 | specified FREQ and INTERVAL rule parts, the BYxxx rule parts are | |
2575 | applied to the current set of evaluated occurrences in the following | |
2576 | order: BYMONTH, BYWEEKNO, BYYEARDAY, BYMONTHDAY, BYDAY, BYHOUR, | |
2577 | BYMINUTE, BYSECOND and BYSETPOS; then COUNT and UNTIL are evaluated. | |
2578 | ||
2579 | ||
2580 | ||
2581 | <span class="grey">Dawson & Stenerson Standards Track [Page 44]</span> | |
2582 | </pre><pre class="newpage"><a name="page-45" id="page-45" href="#page-45" class="invisible"> </a> | |
2583 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2584 | ||
2585 | ||
2586 | Here is an example of evaluating multiple BYxxx rule parts. | |
2587 | ||
2588 | DTSTART;TZID=US-Eastern:19970105T083000 | |
2589 | RRULE:FREQ=YEARLY;INTERVAL=2;BYMONTH=1;BYDAY=SU;BYHOUR=8,9; | |
2590 | BYMINUTE=30 | |
2591 | ||
2592 | First, the "INTERVAL=2" would be applied to "FREQ=YEARLY" to arrive | |
2593 | at "every other year". Then, "BYMONTH=1" would be applied to arrive | |
2594 | at "every January, every other year". Then, "BYDAY=SU" would be | |
2595 | applied to arrive at "every Sunday in January, every other year". | |
2596 | Then, "BYHOUR=8,9" would be applied to arrive at "every Sunday in | |
2597 | January at 8 AM and 9 AM, every other year". Then, "BYMINUTE=30" | |
2598 | would be applied to arrive at "every Sunday in January at 8:30 AM and | |
2599 | 9:30 AM, every other year". Then, lacking information from RRULE, the | |
2600 | second is derived from DTSTART, to end up in "every Sunday in January | |
2601 | at 8:30:00 AM and 9:30:00 AM, every other year". Similarly, if the | |
2602 | BYMINUTE, BYHOUR, BYDAY, BYMONTHDAY or BYMONTH rule part were | |
2603 | missing, the appropriate minute, hour, day or month would have been | |
2604 | retrieved from the "DTSTART" property. | |
2605 | ||
2606 | No additional content value encoding (i.e., BACKSLASH character | |
2607 | encoding) is defined for this value type. | |
2608 | ||
2609 | Example: The following is a rule which specifies 10 meetings which | |
2610 | occur every other day: | |
2611 | ||
2612 | FREQ=DAILY;COUNT=10;INTERVAL=2 | |
2613 | ||
2614 | There are other examples specified in the "RRULE" specification. | |
2615 | ||
2616 | <span class="h4"><h4><a name="section-4.3.11">4.3.11</a> Text</h4></span> | |
2617 | ||
2618 | Value Name: TEXT | |
2619 | ||
2620 | Purpose This value type is used to identify values that contain human | |
2621 | readable text. | |
2622 | ||
2623 | Formal Definition: The character sets supported by this revision of | |
2624 | iCalendar are UTF-8 and US ASCII thereof. The applicability to other | |
2625 | character sets is for future work. The value type is defined by the | |
2626 | following notation. | |
2627 | ||
2628 | text = *(TSAFE-CHAR / ":" / DQUOTE / ESCAPED-CHAR) | |
2629 | ; Folded according to description above | |
2630 | ||
2631 | ESCAPED-CHAR = "\\" / "\;" / "\," / "\N" / "\n") | |
2632 | ; \\ encodes \, \N or \n encodes newline | |
2633 | ; \; encodes ;, \, encodes , | |
2634 | ||
2635 | ||
2636 | ||
2637 | <span class="grey">Dawson & Stenerson Standards Track [Page 45]</span> | |
2638 | </pre><pre class="newpage"><a name="page-46" id="page-46" href="#page-46" class="invisible"> </a> | |
2639 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2640 | ||
2641 | ||
2642 | TSAFE-CHAR = %x20-21 / %x23-2B / %x2D-39 / %x3C-5B | |
2643 | %x5D-7E / NON-US-ASCII | |
2644 | ; Any character except CTLs not needed by the current | |
2645 | ; character set, DQUOTE, ";", ":", "\", "," | |
2646 | ||
2647 | Note: Certain other character sets may require modification of the | |
2648 | above definitions, but this is beyond the scope of this document. | |
2649 | ||
2650 | Description: If the property permits, multiple "text" values are | |
2651 | specified by a COMMA character (US-ASCII decimal 44) separated list | |
2652 | of values. | |
2653 | ||
2654 | The language in which the text is represented can be controlled by | |
2655 | the "LANGUAGE" property parameter. | |
2656 | ||
2657 | An intentional formatted text line break MUST only be included in a | |
2658 | "TEXT" property value by representing the line break with the | |
2659 | character sequence of BACKSLASH (US-ASCII decimal 92), followed by a | |
2660 | LATIN SMALL LETTER N (US-ASCII decimal 110) or a LATIN CAPITAL LETTER | |
2661 | N (US-ASCII decimal 78), that is "\n" or "\N". | |
2662 | ||
2663 | The "TEXT" property values may also contain special characters that | |
2664 | are used to signify delimiters, such as a COMMA character for lists | |
2665 | of values or a SEMICOLON character for structured values. In order to | |
2666 | support the inclusion of these special characters in "TEXT" property | |
2667 | values, they MUST be escaped with a BACKSLASH character. A BACKSLASH | |
2668 | character (US-ASCII decimal 92) in a "TEXT" property value MUST be | |
2669 | escaped with another BACKSLASH character. A COMMA character in a | |
2670 | "TEXT" property value MUST be escaped with a BACKSLASH character | |
2671 | (US-ASCII decimal 92). A SEMICOLON character in a "TEXT" property | |
2672 | value MUST be escaped with a BACKSLASH character (US-ASCII decimal | |
2673 | 92). However, a COLON character in a "TEXT" property value SHALL NOT | |
2674 | be escaped with a BACKSLASH character.Example: A multiple line value | |
2675 | of: | |
2676 | ||
2677 | Project XYZ Final Review | |
2678 | Conference Room - 3B | |
2679 | Come Prepared. | |
2680 | ||
2681 | would be represented as: | |
2682 | ||
2683 | Project XYZ Final Review\nConference Room - 3B\nCome Prepared. | |
2684 | ||
2685 | ||
2686 | ||
2687 | ||
2688 | ||
2689 | ||
2690 | ||
2691 | ||
2692 | ||
2693 | <span class="grey">Dawson & Stenerson Standards Track [Page 46]</span> | |
2694 | </pre><pre class="newpage"><a name="page-47" id="page-47" href="#page-47" class="invisible"> </a> | |
2695 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2696 | ||
2697 | ||
2698 | <span class="h4"><h4><a name="section-4.3.12">4.3.12</a> Time</h4></span> | |
2699 | ||
2700 | Value Name: TIME | |
2701 | ||
2702 | Purpose: This value type is used to identify values that contain a | |
2703 | time of day. | |
2704 | ||
2705 | Formal Definition: The data type is defined by the following | |
2706 | notation: | |
2707 | ||
2708 | time = time-hour time-minute time-second [<a href="#ref-time-utc">time-utc</a>] | |
2709 | ||
2710 | time-hour = 2DIGIT ;00-23 | |
2711 | time-minute = 2DIGIT ;00-59 | |
2712 | time-second = 2DIGIT ;00-60 | |
2713 | ;The "60" value is used to account for "leap" seconds. | |
2714 | ||
2715 | time-utc = "Z" | |
2716 | ||
2717 | Description: If the property permits, multiple "time" values are | |
2718 | specified by a COMMA character (US-ASCII decimal 44) separated list | |
2719 | of values. No additional content value encoding (i.e., BACKSLASH | |
2720 | character encoding) is defined for this value type. | |
2721 | ||
2722 | The "TIME" data type is used to identify values that contain a time | |
2723 | of day. The format is based on the [ISO 8601] complete | |
2724 | representation, basic format for a time of day. The text format | |
2725 | consists of a two-digit 24-hour of the day (i.e., values 0-23), two- | |
2726 | digit minute in the hour (i.e., values 0-59), and two-digit seconds | |
2727 | in the minute (i.e., values 0-60). The seconds value of 60 MUST only | |
2728 | to be used to account for "leap" seconds. Fractions of a second are | |
2729 | not supported by this format. | |
2730 | ||
2731 | In parallel to the "DATE-TIME" definition above, the "TIME" data type | |
2732 | expresses time values in three forms: | |
2733 | ||
2734 | The form of time with UTC offset MUST NOT be used. For example, the | |
2735 | following is NOT VALID for a time value: | |
2736 | ||
2737 | 230000-0800 ;Invalid time format | |
2738 | ||
2739 | FORM #1 LOCAL TIME | |
2740 | ||
2741 | The local time form is simply a time value that does not contain the | |
2742 | UTC designator nor does it reference a time zone. For example, 11:00 | |
2743 | PM: | |
2744 | ||
2745 | 230000 | |
2746 | ||
2747 | ||
2748 | ||
2749 | <span class="grey">Dawson & Stenerson Standards Track [Page 47]</span> | |
2750 | </pre><pre class="newpage"><a name="page-48" id="page-48" href="#page-48" class="invisible"> </a> | |
2751 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2752 | ||
2753 | ||
2754 | Time values of this type are said to be "floating" and are not bound | |
2755 | to any time zone in particular. They are used to represent the same | |
2756 | hour, minute, and second value regardless of which time zone is | |
2757 | currently being observed. For example, an event can be defined that | |
2758 | indicates that an individual will be busy from 11:00 AM to 1:00 PM | |
2759 | every day, no matter which time zone the person is in. In these | |
2760 | cases, a local time can be specified. The recipient of an iCalendar | |
2761 | object with a property value consisting of a local time, without any | |
2762 | relative time zone information, SHOULD interpret the value as being | |
2763 | fixed to whatever time zone the ATTENDEE is in at any given moment. | |
2764 | This means that two ATTENDEEs may participate in the same event at | |
2765 | different UTC times; floating time SHOULD only be used where that is | |
2766 | reasonable behavior. | |
2767 | ||
2768 | In most cases, a fixed time is desired. To properly communicate a | |
2769 | fixed time in a property value, either UTC time or local time with | |
2770 | time zone reference MUST be specified. | |
2771 | ||
2772 | The use of local time in a TIME value without the TZID property | |
2773 | parameter is to be interpreted as a local time value, regardless of | |
2774 | the existence of "VTIMEZONE" calendar components in the iCalendar | |
2775 | object. | |
2776 | ||
2777 | FORM #2: UTC TIME | |
2778 | ||
2779 | UTC time, or absolute time, is identified by a LATIN CAPITAL LETTER Z | |
2780 | suffix character (US-ASCII decimal 90), the UTC designator, appended | |
2781 | to the time value. For example, the following represents 07:00 AM | |
2782 | UTC: | |
2783 | ||
2784 | 070000Z | |
2785 | ||
2786 | The TZID property parameter MUST NOT be applied to TIME properties | |
2787 | whose time values are specified in UTC. | |
2788 | ||
2789 | FORM #3: LOCAL TIME AND TIME ZONE REFERENCE | |
2790 | ||
2791 | The local time with reference to time zone information form is | |
2792 | identified by the use the TZID property parameter to reference the | |
2793 | appropriate time zone definition. TZID is discussed in detail in the | |
2794 | section on Time Zone. | |
2795 | ||
2796 | Example: The following represents 8:30 AM in New York in Winter, five | |
2797 | hours behind UTC, in each of the three formats using the "X- | |
2798 | TIMEOFDAY" non-standard property: | |
2799 | ||
2800 | ||
2801 | ||
2802 | ||
2803 | ||
2804 | ||
2805 | <span class="grey">Dawson & Stenerson Standards Track [Page 48]</span> | |
2806 | </pre><pre class="newpage"><a name="page-49" id="page-49" href="#page-49" class="invisible"> </a> | |
2807 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2808 | ||
2809 | ||
2810 | X-TIMEOFDAY:083000 | |
2811 | ||
2812 | X-TIMEOFDAY:133000Z | |
2813 | ||
2814 | X-TIMEOFDAY;TZID=US-Eastern:083000 | |
2815 | ||
2816 | <span class="h4"><h4><a name="section-4.3.13">4.3.13</a> URI</h4></span> | |
2817 | ||
2818 | Value Name: URI | |
2819 | ||
2820 | Purpose: This value type is used to identify values that contain a | |
2821 | uniform resource identifier (URI) type of reference to the property | |
2822 | value. | |
2823 | ||
2824 | Formal Definition: The data type is defined by the following | |
2825 | notation: | |
2826 | ||
2827 | uri = <As defined by any IETF RFC> | |
2828 | ||
2829 | Description: This data type might be used to reference binary | |
2830 | information, for values that are large, or otherwise undesirable to | |
2831 | include directly in the iCalendar object. | |
2832 | ||
2833 | The URI value formats in <a href="http://tools.ietf.org/html/rfc1738">RFC 1738</a>, <a href="http://tools.ietf.org/html/rfc2111">RFC 2111</a> and any other IETF | |
2834 | registered value format can be specified. | |
2835 | ||
2836 | Any IANA registered URI format can be used. These include, but are | |
2837 | not limited to, those defined in <a href="http://tools.ietf.org/html/rfc1738">RFC 1738</a> and <a href="http://tools.ietf.org/html/rfc2111">RFC 2111</a>. | |
2838 | ||
2839 | When a property parameter value is a URI value type, the URI MUST be | |
2840 | specified as a quoted-string value. | |
2841 | ||
2842 | No additional content value encoding (i.e., BACKSLASH character | |
2843 | encoding) is defined for this value type. | |
2844 | ||
2845 | Example: The following is a URI for a network file: | |
2846 | ||
2847 | <a href="http://host1.com/my-report.txt">http://host1.com/my-report.txt</a> | |
2848 | ||
2849 | <span class="h4"><h4><a name="section-4.3.14">4.3.14</a> UTC Offset</h4></span> | |
2850 | ||
2851 | Value Name: UTC-OFFSET | |
2852 | ||
2853 | Purpose: This value type is used to identify properties that contain | |
2854 | an offset from UTC to local time. | |
2855 | ||
2856 | Formal Definition: The data type is defined by the following | |
2857 | notation: | |
2858 | ||
2859 | ||
2860 | ||
2861 | <span class="grey">Dawson & Stenerson Standards Track [Page 49]</span> | |
2862 | </pre><pre class="newpage"><a name="page-50" id="page-50" href="#page-50" class="invisible"> </a> | |
2863 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2864 | ||
2865 | ||
2866 | utc-offset = time-numzone ;As defined above in time data type | |
2867 | ||
2868 | time-numzone = ("+" / "-") time-hour time-minute [time- | |
2869 | second] | |
2870 | ||
2871 | Description: The PLUS SIGN character MUST be specified for positive | |
2872 | UTC offsets (i.e., ahead of UTC). The value of "-0000" and "-000000" | |
2873 | are not allowed. The time-second, if present, may not be 60; if | |
2874 | absent, it defaults to zero. | |
2875 | ||
2876 | No additional content value encoding (i.e., BACKSLASH character | |
2877 | encoding) is defined for this value type. | |
2878 | ||
2879 | Example: The following UTC offsets are given for standard time for | |
2880 | New York (five hours behind UTC) and Geneva (one hour ahead of UTC): | |
2881 | ||
2882 | -0500 | |
2883 | ||
2884 | +0100 | |
2885 | ||
2886 | <span class="h3"><h3><a name="section-4.4">4.4</a> iCalendar Object</h3></span> | |
2887 | ||
2888 | The Calendaring and Scheduling Core Object is a collection of | |
2889 | calendaring and scheduling information. Typically, this information | |
2890 | will consist of a single iCalendar object. However, multiple | |
2891 | iCalendar objects can be sequentially grouped together. The first | |
2892 | line and last line of the iCalendar object MUST contain a pair of | |
2893 | iCalendar object delimiter strings. The syntax for an iCalendar | |
2894 | object is as follows: | |
2895 | ||
2896 | icalobject = 1*("BEGIN" ":" "VCALENDAR" CRLF | |
2897 | icalbody | |
2898 | "END" ":" "VCALENDAR" CRLF) | |
2899 | ||
2900 | The following is a simple example of an iCalendar object: | |
2901 | ||
2902 | BEGIN:VCALENDAR | |
2903 | VERSION:2.0 | |
2904 | PRODID:-//hacksw/handcal//NONSGML v1.0//EN | |
2905 | BEGIN:VEVENT | |
2906 | DTSTART:19970714T170000Z | |
2907 | DTEND:19970715T035959Z | |
2908 | SUMMARY:Bastille Day Party | |
2909 | END:VEVENT | |
2910 | END:VCALENDAR | |
2911 | ||
2912 | ||
2913 | ||
2914 | ||
2915 | ||
2916 | ||
2917 | <span class="grey">Dawson & Stenerson Standards Track [Page 50]</span> | |
2918 | </pre><pre class="newpage"><a name="page-51" id="page-51" href="#page-51" class="invisible"> </a> | |
2919 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2920 | ||
2921 | ||
2922 | <span class="h3"><h3><a name="section-4.5">4.5</a> Property</h3></span> | |
2923 | ||
2924 | A property is the definition of an individual attribute describing a | |
2925 | calendar or a calendar component. A property takes the form defined | |
2926 | by the "contentline" notation defined in <a href="#section-4.1.1">section 4.1.1</a>. | |
2927 | ||
2928 | The following is an example of a property: | |
2929 | ||
2930 | DTSTART:19960415T133000Z | |
2931 | ||
2932 | This memo imposes no ordering of properties within an iCalendar | |
2933 | object. | |
2934 | ||
2935 | Property names, parameter names and enumerated parameter values are | |
2936 | case insensitive. For example, the property name "DUE" is the same as | |
2937 | "due" and "Due", DTSTART;TZID=US-Eastern:19980714T120000 is the same | |
2938 | as DtStart;TzID=US-Eastern:19980714T120000. | |
2939 | ||
2940 | <span class="h3"><h3><a name="section-4.6">4.6</a> Calendar Components</h3></span> | |
2941 | ||
2942 | The body of the iCalendar object consists of a sequence of calendar | |
2943 | properties and one or more calendar components. The calendar | |
2944 | properties are attributes that apply to the calendar as a whole. The | |
2945 | calendar components are collections of properties that express a | |
2946 | particular calendar semantic. For example, the calendar component can | |
2947 | specify an event, a to-do, a journal entry, time zone information, or | |
2948 | free/busy time information, or an alarm. | |
2949 | ||
2950 | The body of the iCalendar object is defined by the following | |
2951 | notation: | |
2952 | ||
2953 | icalbody = calprops component | |
2954 | ||
2955 | calprops = 2*( | |
2956 | ||
2957 | ; 'prodid' and 'version' are both REQUIRED, | |
2958 | ; but MUST NOT occur more than once | |
2959 | ||
2960 | prodid /version / | |
2961 | ||
2962 | ; 'calscale' and 'method' are optional, | |
2963 | ; but MUST NOT occur more than once | |
2964 | ||
2965 | calscale / | |
2966 | method / | |
2967 | ||
2968 | x-prop | |
2969 | ||
2970 | ||
2971 | ||
2972 | ||
2973 | <span class="grey">Dawson & Stenerson Standards Track [Page 51]</span> | |
2974 | </pre><pre class="newpage"><a name="page-52" id="page-52" href="#page-52" class="invisible"> </a> | |
2975 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
2976 | ||
2977 | ||
2978 | ) | |
2979 | ||
2980 | component = 1*(eventc / todoc / journalc / freebusyc / | |
2981 | / timezonec / iana-comp / x-comp) | |
2982 | ||
2983 | iana-comp = "BEGIN" ":" iana-token CRLF | |
2984 | ||
2985 | 1*contentline | |
2986 | ||
2987 | "END" ":" iana-token CRLF | |
2988 | ||
2989 | x-comp = "BEGIN" ":" x-name CRLF | |
2990 | ||
2991 | 1*contentline | |
2992 | ||
2993 | "END" ":" x-name CRLF | |
2994 | ||
2995 | An iCalendar object MUST include the "PRODID" and "VERSION" calendar | |
2996 | properties. In addition, it MUST include at least one calendar | |
2997 | component. Special forms of iCalendar objects are possible to publish | |
2998 | just busy time (i.e., only a "VFREEBUSY" calendar component) or time | |
2999 | zone (i.e., only a "VTIMEZONE" calendar component) information. In | |
3000 | addition, a complex iCalendar object is possible that is used to | |
3001 | capture a complete snapshot of the contents of a calendar (e.g., | |
3002 | composite of many different calendar components). More commonly, an | |
3003 | iCalendar object will consist of just a single "VEVENT", "VTODO" or | |
3004 | "VJOURNAL" calendar component. | |
3005 | ||
3006 | <span class="h4"><h4><a name="section-4.6.1">4.6.1</a> Event Component</h4></span> | |
3007 | ||
3008 | Component Name: "VEVENT" | |
3009 | ||
3010 | Purpose: Provide a grouping of component properties that describe an | |
3011 | event. | |
3012 | ||
3013 | Format Definition: A "VEVENT" calendar component is defined by the | |
3014 | following notation: | |
3015 | ||
3016 | eventc = "BEGIN" ":" "VEVENT" CRLF | |
3017 | eventprop *alarmc | |
3018 | "END" ":" "VEVENT" CRLF | |
3019 | ||
3020 | eventprop = *( | |
3021 | ||
3022 | ; the following are optional, | |
3023 | ; but MUST NOT occur more than once | |
3024 | ||
3025 | class / created / description / dtstart / geo / | |
3026 | ||
3027 | ||
3028 | ||
3029 | <span class="grey">Dawson & Stenerson Standards Track [Page 52]</span> | |
3030 | </pre><pre class="newpage"><a name="page-53" id="page-53" href="#page-53" class="invisible"> </a> | |
3031 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3032 | ||
3033 | ||
3034 | last-mod / location / organizer / priority / | |
3035 | dtstamp / seq / status / summary / transp / | |
3036 | uid / url / recurid / | |
3037 | ||
3038 | ; either 'dtend' or 'duration' may appear in | |
3039 | ; a 'eventprop', but 'dtend' and 'duration' | |
3040 | ; MUST NOT occur in the same 'eventprop' | |
3041 | ||
3042 | dtend / duration / | |
3043 | ||
3044 | ; the following are optional, | |
3045 | ; and MAY occur more than once | |
3046 | ||
3047 | attach / attendee / categories / comment / | |
3048 | contact / exdate / exrule / rstatus / related / | |
3049 | resources / rdate / rrule / x-prop | |
3050 | ||
3051 | ) | |
3052 | ||
3053 | Description: A "VEVENT" calendar component is a grouping of component | |
3054 | properties, and possibly including "VALARM" calendar components, that | |
3055 | represents a scheduled amount of time on a calendar. For example, it | |
3056 | can be an activity; such as a one-hour long, department meeting from | |
3057 | 8:00 AM to 9:00 AM, tomorrow. Generally, an event will take up time | |
3058 | on an individual calendar. Hence, the event will appear as an opaque | |
3059 | interval in a search for busy time. Alternately, the event can have | |
3060 | its Time Transparency set to "TRANSPARENT" in order to prevent | |
3061 | blocking of the event in searches for busy time. | |
3062 | ||
3063 | The "VEVENT" is also the calendar component used to specify an | |
3064 | anniversary or daily reminder within a calendar. These events have a | |
3065 | DATE value type for the "DTSTART" property instead of the default | |
3066 | data type of DATE-TIME. If such a "VEVENT" has a "DTEND" property, it | |
3067 | MUST be specified as a DATE value also. The anniversary type of | |
3068 | "VEVENT" can span more than one date (i.e, "DTEND" property value is | |
3069 | set to a calendar date after the "DTSTART" property value). | |
3070 | ||
3071 | The "DTSTART" property for a "VEVENT" specifies the inclusive start | |
3072 | of the event. For recurring events, it also specifies the very first | |
3073 | instance in the recurrence set. The "DTEND" property for a "VEVENT" | |
3074 | calendar component specifies the non-inclusive end of the event. For | |
3075 | cases where a "VEVENT" calendar component specifies a "DTSTART" | |
3076 | property with a DATE data type but no "DTEND" property, the events | |
3077 | non-inclusive end is the end of the calendar date specified by the | |
3078 | "DTSTART" property. For cases where a "VEVENT" calendar component | |
3079 | specifies a "DTSTART" property with a DATE-TIME data type but no | |
3080 | "DTEND" property, the event ends on the same calendar date and time | |
3081 | of day specified by the "DTSTART" property. | |
3082 | ||
3083 | ||
3084 | ||
3085 | <span class="grey">Dawson & Stenerson Standards Track [Page 53]</span> | |
3086 | </pre><pre class="newpage"><a name="page-54" id="page-54" href="#page-54" class="invisible"> </a> | |
3087 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3088 | ||
3089 | ||
3090 | The "VEVENT" calendar component cannot be nested within another | |
3091 | calendar component. However, "VEVENT" calendar components can be | |
3092 | related to each other or to a "VTODO" or to a "VJOURNAL" calendar | |
3093 | component with the "RELATED-TO" property. | |
3094 | ||
3095 | Example: The following is an example of the "VEVENT" calendar | |
3096 | component used to represent a meeting that will also be opaque to | |
3097 | searches for busy time: | |
3098 | ||
3099 | BEGIN:VEVENT | |
3100 | UID:19970901T130000Z-123401@host.com | |
3101 | DTSTAMP:19970901T1300Z | |
3102 | DTSTART:19970903T163000Z | |
3103 | DTEND:19970903T190000Z | |
3104 | SUMMARY:Annual Employee Review | |
3105 | CLASS:PRIVATE | |
3106 | CATEGORIES:BUSINESS,HUMAN RESOURCES | |
3107 | END:VEVENT | |
3108 | ||
3109 | The following is an example of the "VEVENT" calendar component used | |
3110 | to represent a reminder that will not be opaque, but rather | |
3111 | transparent, to searches for busy time: | |
3112 | ||
3113 | BEGIN:VEVENT | |
3114 | UID:19970901T130000Z-123402@host.com | |
3115 | DTSTAMP:19970901T1300Z | |
3116 | DTSTART:19970401T163000Z | |
3117 | DTEND:19970402T010000Z | |
3118 | SUMMARY:Laurel is in sensitivity awareness class. | |
3119 | CLASS:PUBLIC | |
3120 | CATEGORIES:BUSINESS,HUMAN RESOURCES | |
3121 | TRANSP:TRANSPARENT | |
3122 | END:VEVENT | |
3123 | ||
3124 | The following is an example of the "VEVENT" calendar component used | |
3125 | to represent an anniversary that will occur annually. Since it takes | |
3126 | up no time, it will not appear as opaque in a search for busy time; | |
3127 | no matter what the value of the "TRANSP" property indicates: | |
3128 | ||
3129 | BEGIN:VEVENT | |
3130 | UID:19970901T130000Z-123403@host.com | |
3131 | DTSTAMP:19970901T1300Z | |
3132 | DTSTART:19971102 | |
3133 | SUMMARY:Our Blissful Anniversary | |
3134 | CLASS:CONFIDENTIAL | |
3135 | CATEGORIES:ANNIVERSARY,PERSONAL,SPECIAL OCCASION | |
3136 | RRULE:FREQ=YEARLY | |
3137 | END:VEVENT | |
3138 | ||
3139 | ||
3140 | ||
3141 | <span class="grey">Dawson & Stenerson Standards Track [Page 54]</span> | |
3142 | </pre><pre class="newpage"><a name="page-55" id="page-55" href="#page-55" class="invisible"> </a> | |
3143 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3144 | ||
3145 | ||
3146 | <span class="h4"><h4><a name="section-4.6.2">4.6.2</a> To-do Component</h4></span> | |
3147 | ||
3148 | Component Name: VTODO | |
3149 | ||
3150 | Purpose: Provide a grouping of calendar properties that describe a | |
3151 | to-do. | |
3152 | ||
3153 | Formal Definition: A "VTODO" calendar component is defined by the | |
3154 | following notation: | |
3155 | ||
3156 | todoc = "BEGIN" ":" "VTODO" CRLF | |
3157 | todoprop *alarmc | |
3158 | "END" ":" "VTODO" CRLF | |
3159 | ||
3160 | todoprop = *( | |
3161 | ||
3162 | ; the following are optional, | |
3163 | ; but MUST NOT occur more than once | |
3164 | ||
3165 | class / completed / created / description / dtstamp / | |
3166 | dtstart / geo / last-mod / location / organizer / | |
3167 | percent / priority / recurid / seq / status / | |
3168 | summary / uid / url / | |
3169 | ||
3170 | ; either 'due' or 'duration' may appear in | |
3171 | ; a 'todoprop', but 'due' and 'duration' | |
3172 | ; MUST NOT occur in the same 'todoprop' | |
3173 | ||
3174 | due / duration / | |
3175 | ||
3176 | ; the following are optional, | |
3177 | ; and MAY occur more than once | |
3178 | attach / attendee / categories / comment / contact / | |
3179 | exdate / exrule / rstatus / related / resources / | |
3180 | rdate / rrule / x-prop | |
3181 | ||
3182 | ) | |
3183 | ||
3184 | Description: A "VTODO" calendar component is a grouping of component | |
3185 | properties and possibly "VALARM" calendar components that represent | |
3186 | an action-item or assignment. For example, it can be used to | |
3187 | represent an item of work assigned to an individual; such as "turn in | |
3188 | travel expense today". | |
3189 | ||
3190 | The "VTODO" calendar component cannot be nested within another | |
3191 | calendar component. However, "VTODO" calendar components can be | |
3192 | related to each other or to a "VTODO" or to a "VJOURNAL" calendar | |
3193 | component with the "RELATED-TO" property. | |
3194 | ||
3195 | ||
3196 | ||
3197 | <span class="grey">Dawson & Stenerson Standards Track [Page 55]</span> | |
3198 | </pre><pre class="newpage"><a name="page-56" id="page-56" href="#page-56" class="invisible"> </a> | |
3199 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3200 | ||
3201 | ||
3202 | A "VTODO" calendar component without the "DTSTART" and "DUE" (or | |
3203 | "DURATION") properties specifies a to-do that will be associated with | |
3204 | each successive calendar date, until it is completed. | |
3205 | ||
3206 | Example: The following is an example of a "VTODO" calendar component: | |
3207 | ||
3208 | BEGIN:VTODO | |
3209 | UID:19970901T130000Z-123404@host.com | |
3210 | DTSTAMP:19970901T1300Z | |
3211 | DTSTART:19970415T133000Z | |
3212 | DUE:19970416T045959Z | |
3213 | SUMMARY:1996 Income Tax Preparation | |
3214 | CLASS:CONFIDENTIAL | |
3215 | CATEGORIES:FAMILY,FINANCE | |
3216 | PRIORITY:1 | |
3217 | STATUS:NEEDS-ACTION | |
3218 | END:VTODO | |
3219 | ||
3220 | <span class="h4"><h4><a name="section-4.6.3">4.6.3</a> Journal Component</h4></span> | |
3221 | ||
3222 | Component Name: VJOURNAL | |
3223 | ||
3224 | Purpose: Provide a grouping of component properties that describe a | |
3225 | journal entry. | |
3226 | ||
3227 | Formal Definition: A "VJOURNAL" calendar component is defined by the | |
3228 | following notation: | |
3229 | ||
3230 | journalc = "BEGIN" ":" "VJOURNAL" CRLF | |
3231 | jourprop | |
3232 | "END" ":" "VJOURNAL" CRLF | |
3233 | ||
3234 | jourprop = *( | |
3235 | ||
3236 | ; the following are optional, | |
3237 | ; but MUST NOT occur more than once | |
3238 | ||
3239 | class / created / description / dtstart / dtstamp / | |
3240 | last-mod / organizer / recurid / seq / status / | |
3241 | summary / uid / url / | |
3242 | ||
3243 | ; the following are optional, | |
3244 | ; and MAY occur more than once | |
3245 | ||
3246 | attach / attendee / categories / comment / | |
3247 | contact / exdate / exrule / related / rdate / | |
3248 | rrule / rstatus / x-prop | |
3249 | ||
3250 | ||
3251 | ||
3252 | ||
3253 | <span class="grey">Dawson & Stenerson Standards Track [Page 56]</span> | |
3254 | </pre><pre class="newpage"><a name="page-57" id="page-57" href="#page-57" class="invisible"> </a> | |
3255 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3256 | ||
3257 | ||
3258 | ) | |
3259 | ||
3260 | Description: A "VJOURNAL" calendar component is a grouping of | |
3261 | component properties that represent one or more descriptive text | |
3262 | notes associated with a particular calendar date. The "DTSTART" | |
3263 | property is used to specify the calendar date that the journal entry | |
3264 | is associated with. Generally, it will have a DATE value data type, | |
3265 | but it can also be used to specify a DATE-TIME value data type. | |
3266 | Examples of a journal entry include a daily record of a legislative | |
3267 | body or a journal entry of individual telephone contacts for the day | |
3268 | or an ordered list of accomplishments for the day. The "VJOURNAL" | |
3269 | calendar component can also be used to associate a document with a | |
3270 | calendar date. | |
3271 | ||
3272 | The "VJOURNAL" calendar component does not take up time on a | |
3273 | calendar. Hence, it does not play a role in free or busy time | |
3274 | searches - - it is as though it has a time transparency value of | |
3275 | TRANSPARENT. It is transparent to any such searches. | |
3276 | ||
3277 | The "VJOURNAL" calendar component cannot be nested within another | |
3278 | calendar component. However, "VJOURNAL" calendar components can be | |
3279 | related to each other or to a "VEVENT" or to a "VTODO" calendar | |
3280 | component, with the "RELATED-TO" property. | |
3281 | ||
3282 | Example: The following is an example of the "VJOURNAL" calendar | |
3283 | component: | |
3284 | ||
3285 | BEGIN:VJOURNAL | |
3286 | UID:19970901T130000Z-123405@host.com | |
3287 | DTSTAMP:19970901T1300Z | |
3288 | DTSTART;VALUE=DATE:19970317 | |
3289 | SUMMARY:Staff meeting minutes | |
3290 | DESCRIPTION:1. Staff meeting: Participants include Joe\, Lisa | |
3291 | and Bob. Aurora project plans were reviewed. There is currently | |
3292 | no budget reserves for this project. Lisa will escalate to | |
3293 | management. Next meeting on Tuesday.\n | |
3294 | 2. Telephone Conference: ABC Corp. sales representative called | |
3295 | to discuss new printer. Promised to get us a demo by Friday.\n | |
3296 | 3. Henry Miller (Handsoff Insurance): Car was totaled by tree. | |
3297 | Is looking into a loaner car. 654-2323 (tel). | |
3298 | END:VJOURNAL | |
3299 | ||
3300 | ||
3301 | ||
3302 | ||
3303 | ||
3304 | ||
3305 | ||
3306 | ||
3307 | ||
3308 | ||
3309 | <span class="grey">Dawson & Stenerson Standards Track [Page 57]</span> | |
3310 | </pre><pre class="newpage"><a name="page-58" id="page-58" href="#page-58" class="invisible"> </a> | |
3311 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3312 | ||
3313 | ||
3314 | <span class="h4"><h4><a name="section-4.6.4">4.6.4</a> Free/Busy Component</h4></span> | |
3315 | ||
3316 | Component Name: VFREEBUSY | |
3317 | ||
3318 | Purpose: Provide a grouping of component properties that describe | |
3319 | either a request for free/busy time, describe a response to a request | |
3320 | for free/busy time or describe a published set of busy time. | |
3321 | ||
3322 | Formal Definition: A "VFREEBUSY" calendar component is defined by the | |
3323 | following notation: | |
3324 | ||
3325 | freebusyc = "BEGIN" ":" "VFREEBUSY" CRLF | |
3326 | fbprop | |
3327 | "END" ":" "VFREEBUSY" CRLF | |
3328 | ||
3329 | fbprop = *( | |
3330 | ||
3331 | ; the following are optional, | |
3332 | ; but MUST NOT occur more than once | |
3333 | ||
3334 | contact / dtstart / dtend / duration / dtstamp / | |
3335 | organizer / uid / url / | |
3336 | ||
3337 | ; the following are optional, | |
3338 | ; and MAY occur more than once | |
3339 | ||
3340 | attendee / comment / freebusy / rstatus / x-prop | |
3341 | ||
3342 | ) | |
3343 | ||
3344 | Description: A "VFREEBUSY" calendar component is a grouping of | |
3345 | component properties that represents either a request for, a reply to | |
3346 | a request for free or busy time information or a published set of | |
3347 | busy time information. | |
3348 | ||
3349 | When used to request free/busy time information, the "ATTENDEE" | |
3350 | property specifies the calendar users whose free/busy time is being | |
3351 | requested; the "ORGANIZER" property specifies the calendar user who | |
3352 | is requesting the free/busy time; the "DTSTART" and "DTEND" | |
3353 | properties specify the window of time for which the free/busy time is | |
3354 | being requested; the "UID" and "DTSTAMP" properties are specified to | |
3355 | assist in proper sequencing of multiple free/busy time requests. | |
3356 | ||
3357 | When used to reply to a request for free/busy time, the "ATTENDEE" | |
3358 | property specifies the calendar user responding to the free/busy time | |
3359 | request; the "ORGANIZER" property specifies the calendar user that | |
3360 | originally requested the free/busy time; the "FREEBUSY" property | |
3361 | specifies the free/busy time information (if it exists); and the | |
3362 | ||
3363 | ||
3364 | ||
3365 | <span class="grey">Dawson & Stenerson Standards Track [Page 58]</span> | |
3366 | </pre><pre class="newpage"><a name="page-59" id="page-59" href="#page-59" class="invisible"> </a> | |
3367 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3368 | ||
3369 | ||
3370 | "UID" and "DTSTAMP" properties are specified to assist in proper | |
3371 | sequencing of multiple free/busy time replies. | |
3372 | ||
3373 | When used to publish busy time, the "ORGANIZER" property specifies | |
3374 | the calendar user associated with the published busy time; the | |
3375 | "DTSTART" and "DTEND" properties specify an inclusive time window | |
3376 | that surrounds the busy time information; the "FREEBUSY" property | |
3377 | specifies the published busy time information; and the "DTSTAMP" | |
3378 | property specifies the date/time that iCalendar object was created. | |
3379 | ||
3380 | The "VFREEBUSY" calendar component cannot be nested within another | |
3381 | calendar component. Multiple "VFREEBUSY" calendar components can be | |
3382 | specified within an iCalendar object. This permits the grouping of | |
3383 | Free/Busy information into logical collections, such as monthly | |
3384 | groups of busy time information. | |
3385 | ||
3386 | The "VFREEBUSY" calendar component is intended for use in iCalendar | |
3387 | object methods involving requests for free time, requests for busy | |
3388 | time, requests for both free and busy, and the associated replies. | |
3389 | ||
3390 | Free/Busy information is represented with the "FREEBUSY" property. | |
3391 | This property provides a terse representation of time periods. One or | |
3392 | more "FREEBUSY" properties can be specified in the "VFREEBUSY" | |
3393 | calendar component. | |
3394 | ||
3395 | When present in a "VFREEBUSY" calendar component, the "DTSTART" and | |
3396 | "DTEND" properties SHOULD be specified prior to any "FREEBUSY" | |
3397 | properties. In a free time request, these properties can be used in | |
3398 | combination with the "DURATION" property to represent a request for a | |
3399 | duration of free time within a specified window of time. | |
3400 | ||
3401 | The recurrence properties ("RRULE", "EXRULE", "RDATE", "EXDATE") are | |
3402 | not permitted within a "VFREEBUSY" calendar component. Any recurring | |
3403 | events are resolved into their individual busy time periods using the | |
3404 | "FREEBUSY" property. | |
3405 | ||
3406 | Example: The following is an example of a "VFREEBUSY" calendar | |
3407 | component used to request free or busy time information: | |
3408 | ||
3409 | BEGIN:VFREEBUSY | |
3410 | ORGANIZER:MAILTO:jane_doe@host1.com | |
3411 | ATTENDEE:MAILTO:john_public@host2.com | |
3412 | DTSTART:19971015T050000Z | |
3413 | DTEND:19971016T050000Z | |
3414 | DTSTAMP:19970901T083000Z | |
3415 | END:VFREEBUSY | |
3416 | ||
3417 | ||
3418 | ||
3419 | ||
3420 | ||
3421 | <span class="grey">Dawson & Stenerson Standards Track [Page 59]</span> | |
3422 | </pre><pre class="newpage"><a name="page-60" id="page-60" href="#page-60" class="invisible"> </a> | |
3423 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3424 | ||
3425 | ||
3426 | The following is an example of a "VFREEBUSY" calendar component used | |
3427 | to reply to the request with busy time information: | |
3428 | ||
3429 | BEGIN:VFREEBUSY | |
3430 | ORGANIZER:MAILTO:jane_doe@host1.com | |
3431 | ATTENDEE:MAILTO:john_public@host2.com | |
3432 | DTSTAMP:19970901T100000Z | |
3433 | FREEBUSY;VALUE=PERIOD:19971015T050000Z/PT8H30M, | |
3434 | 19971015T160000Z/PT5H30M,19971015T223000Z/PT6H30M | |
3435 | URL:http://host2.com/pub/busy/jpublic-01.ifb | |
3436 | COMMENT:This iCalendar file contains busy time information for | |
3437 | the next three months. | |
3438 | END:VFREEBUSY | |
3439 | ||
3440 | The following is an example of a "VFREEBUSY" calendar component used | |
3441 | to publish busy time information. | |
3442 | ||
3443 | BEGIN:VFREEBUSY | |
3444 | ORGANIZER:jsmith@host.com | |
3445 | DTSTART:19980313T141711Z | |
3446 | DTEND:19980410T141711Z | |
3447 | FREEBUSY:19980314T233000Z/19980315T003000Z | |
3448 | FREEBUSY:19980316T153000Z/19980316T163000Z | |
3449 | FREEBUSY:19980318T030000Z/19980318T040000Z | |
3450 | URL:http://www.host.com/calendar/busytime/jsmith.ifb | |
3451 | END:VFREEBUSY | |
3452 | ||
3453 | <span class="h4"><h4><a name="section-4.6.5">4.6.5</a> Time Zone Component</h4></span> | |
3454 | ||
3455 | Component Name: VTIMEZONE | |
3456 | ||
3457 | Purpose: Provide a grouping of component properties that defines a | |
3458 | time zone. | |
3459 | ||
3460 | Formal Definition: A "VTIMEZONE" calendar component is defined by the | |
3461 | following notation: | |
3462 | ||
3463 | timezonec = "BEGIN" ":" "VTIMEZONE" CRLF | |
3464 | ||
3465 | 2*( | |
3466 | ||
3467 | ; 'tzid' is required, but MUST NOT occur more | |
3468 | ; than once | |
3469 | ||
3470 | tzid / | |
3471 | ||
3472 | ; 'last-mod' and 'tzurl' are optional, | |
3473 | but MUST NOT occur more than once | |
3474 | ||
3475 | ||
3476 | ||
3477 | <span class="grey">Dawson & Stenerson Standards Track [Page 60]</span> | |
3478 | </pre><pre class="newpage"><a name="page-61" id="page-61" href="#page-61" class="invisible"> </a> | |
3479 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3480 | ||
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 is optional, | |
3490 | ; and MAY occur more than once | |
3491 | ||
3492 | x-prop | |
3493 | ||
3494 | ) | |
3495 | ||
3496 | "END" ":" "VTIMEZONE" CRLF | |
3497 | ||
3498 | standardc = "BEGIN" ":" "STANDARD" CRLF | |
3499 | ||
3500 | tzprop | |
3501 | ||
3502 | "END" ":" "STANDARD" CRLF | |
3503 | ||
3504 | daylightc = "BEGIN" ":" "DAYLIGHT" CRLF | |
3505 | ||
3506 | tzprop | |
3507 | ||
3508 | "END" ":" "DAYLIGHT" CRLF | |
3509 | ||
3510 | tzprop = 3*( | |
3511 | ||
3512 | ; the following are each REQUIRED, | |
3513 | ; but MUST NOT occur more than once | |
3514 | ||
3515 | dtstart / tzoffsetto / tzoffsetfrom / | |
3516 | ||
3517 | ; the following are optional, | |
3518 | ; and MAY occur more than once | |
3519 | ||
3520 | comment / rdate / rrule / tzname / x-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 offset | |
3527 | from UTC for the time zone, often referred to as the Standard Time | |
3528 | offset. Many locations adjust their Standard Time forward or backward | |
3529 | by one hour, in order to accommodate seasonal changes in number of | |
3530 | ||
3531 | ||
3532 | ||
3533 | <span class="grey">Dawson & Stenerson Standards Track [Page 61]</span> | |
3534 | </pre><pre class="newpage"><a name="page-62" id="page-62" href="#page-62" class="invisible"> </a> | |
3535 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3536 | ||
3537 | ||
3538 | daylight hours, often referred to as Daylight Saving Time. Some | |
3539 | locations adjust their time by a fraction of an hour. Standard Time | |
3540 | is also known as Winter Time. Daylight Saving Time is also known as | |
3541 | Advanced Time, Summer Time, or Legal Time in certain countries. The | |
3542 | following table shows the changes in time zone rules in effect for | |
3543 | New York City starting from 1967. Each line represents a description | |
3544 | or rule for a particular observance. | |
3545 | ||
3546 | Effective Observance Rule | |
3547 | ||
3548 | Date (Date/Time) Offset Abbreviation | |
3549 | ||
3550 | 1967-* last Sun in Oct, 02:00 -0500 EST | |
3551 | ||
3552 | 1967-1973 last Sun in Apr, 02:00 -0400 EDT | |
3553 | ||
3554 | 1974-1974 Jan 6, 02:00 -0400 EDT | |
3555 | ||
3556 | 1975-1975 Feb 23, 02:00 -0400 EDT | |
3557 | ||
3558 | 1976-1986 last Sun in Apr, 02:00 -0400 EDT | |
3559 | ||
3560 | 1987-* first Sun in Apr, 02:00 -0400 EDT | |
3561 | ||
3562 | Note: The specification of a global time zone registry is not | |
3563 | addressed by this document and is left for future study. | |
3564 | However, implementers may find the Olson time zone database [<a href="#ref-TZ" title=""ftp://elsie.nci.nih.gov/pub/"">TZ</a>] | |
3565 | a useful reference. It is an informal, public-domain collection | |
3566 | of time zone information, which is currently being maintained by | |
3567 | volunteer Internet participants, and is used in several | |
3568 | operating systems. This database contains current and historical | |
3569 | time zone information for a wide variety of locations around the | |
3570 | globe; it provides a time zone identifier for every unique time | |
3571 | zone rule set in actual use since 1970, with historical data | |
3572 | going back to the introduction of standard time. | |
3573 | ||
3574 | Interoperability between two calendaring and scheduling applications, | |
3575 | especially for recurring events, to-dos or journal entries, is | |
3576 | dependent on the ability to capture and convey date and time | |
3577 | information in an unambiguous format. The specification of current | |
3578 | time zone information is integral to this behavior. | |
3579 | ||
3580 | If present, the "VTIMEZONE" calendar component defines the set of | |
3581 | Standard Time and Daylight Saving Time observances (or rules) for a | |
3582 | particular time zone for a given interval of time. The "VTIMEZONE" | |
3583 | calendar component cannot be nested within other calendar components. | |
3584 | Multiple "VTIMEZONE" calendar components can exist in an iCalendar | |
3585 | object. In this situation, each "VTIMEZONE" MUST represent a unique | |
3586 | ||
3587 | ||
3588 | ||
3589 | <span class="grey">Dawson & Stenerson Standards Track [Page 62]</span> | |
3590 | </pre><pre class="newpage"><a name="page-63" id="page-63" href="#page-63" class="invisible"> </a> | |
3591 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3592 | ||
3593 | ||
3594 | time zone definition. This is necessary for some classes of events, | |
3595 | such as airline flights, that start in one time zone and end in | |
3596 | another. | |
3597 | ||
3598 | The "VTIMEZONE" calendar component MUST be present if the iCalendar | |
3599 | object contains an RRULE that generates dates on both sides of a time | |
3600 | zone shift (e.g. both in Standard Time and Daylight Saving Time) | |
3601 | unless the iCalendar object intends to convey a floating time (See | |
3602 | the section "4.1.10.11 Time" for proper interpretation of floating | |
3603 | time). It can be present if the iCalendar object does not contain | |
3604 | such a RRULE. In addition, if a RRULE is present, there MUST be valid | |
3605 | time zone information for all recurrence instances. | |
3606 | ||
3607 | The "VTIMEZONE" calendar component MUST include the "TZID" property | |
3608 | and at least one definition of a standard or daylight component. The | |
3609 | standard or daylight component MUST include the "DTSTART", | |
3610 | "TZOFFSETFROM" and "TZOFFSETTO" properties. | |
3611 | ||
3612 | An individual "VTIMEZONE" calendar component MUST be specified for | |
3613 | each unique "TZID" parameter value specified in the iCalendar object. | |
3614 | ||
3615 | Each "VTIMEZONE" calendar component consists of a collection of one | |
3616 | or more sub-components that describe the rule for a particular | |
3617 | observance (either a Standard Time or a Daylight Saving Time | |
3618 | observance). The "STANDARD" sub-component consists of a collection of | |
3619 | properties that describe Standard Time. The "DAYLIGHT" sub-component | |
3620 | consists of a collection of properties that describe Daylight Saving | |
3621 | Time. In general this collection of properties consists of: | |
3622 | ||
3623 | - the first onset date-time for the observance | |
3624 | ||
3625 | - the last onset date-time for the observance, if a last onset | |
3626 | is known. | |
3627 | ||
3628 | - the offset to be applied for the observance | |
3629 | ||
3630 | - a rule that describes the day and time when the observance | |
3631 | takes effect | |
3632 | ||
3633 | - an optional name for the observance | |
3634 | ||
3635 | For a given time zone, there may be multiple unique definitions of | |
3636 | the observances over a period of time. Each observance is described | |
3637 | using either a "STANDARD" or "DAYLIGHT" sub-component. The collection | |
3638 | of these sub-components is used to describe the time zone for a given | |
3639 | period of time. The offset to apply at any given time is found by | |
3640 | locating the observance that has the last onset date and time before | |
3641 | the time in question, and using the offset value from that | |
3642 | ||
3643 | ||
3644 | ||
3645 | <span class="grey">Dawson & Stenerson Standards Track [Page 63]</span> | |
3646 | </pre><pre class="newpage"><a name="page-64" id="page-64" href="#page-64" class="invisible"> </a> | |
3647 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3648 | ||
3649 | ||
3650 | observance. | |
3651 | ||
3652 | The top-level properties in a "VTIMEZONE" calendar component are: | |
3653 | ||
3654 | The mandatory "TZID" property is a text value that uniquely | |
3655 | identifies the VTIMZONE calendar component within the scope of an | |
3656 | iCalendar object. | |
3657 | ||
3658 | The optional "LAST-MODIFIED" property is a UTC value that specifies | |
3659 | the date and time that this time zone definition was last updated. | |
3660 | ||
3661 | The optional "TZURL" property is url value that points to a published | |
3662 | VTIMEZONE definition. TZURL SHOULD refer to a resource that is | |
3663 | accessible by anyone who might need to interpret the object. This | |
3664 | SHOULD NOT normally be a file: URL or other URL that is not widely- | |
3665 | accessible. | |
3666 | ||
3667 | The collection of properties that are used to define the STANDARD and | |
3668 | DAYLIGHT sub-components include: | |
3669 | ||
3670 | The mandatory "DTSTART" property gives the effective onset date and | |
3671 | local time for the time zone sub-component definition. "DTSTART" in | |
3672 | this usage MUST be specified as a local DATE-TIME value. | |
3673 | ||
3674 | The mandatory "TZOFFSETFROM" property gives the UTC offset which is | |
3675 | in use when the onset of this time zone observance begins. | |
3676 | "TZOFFSETFROM" is combined with "DTSTART" to define the effective | |
3677 | onset for the time zone sub-component definition. For example, the | |
3678 | following represents the time at which the observance of Standard | |
3679 | Time took effect in Fall 1967 for New York City: | |
3680 | ||
3681 | DTSTART:19671029T020000 | |
3682 | ||
3683 | TZOFFSETFROM:-0400 | |
3684 | ||
3685 | The mandatory "TZOFFSETTO " property gives the UTC offset for the | |
3686 | time zone sub-component (Standard Time or Daylight Saving Time) when | |
3687 | this observance is in use. | |
3688 | ||
3689 | The optional "TZNAME" property is the customary name for the time | |
3690 | zone. It may be specified multiple times, to allow for specifying | |
3691 | multiple language variants of the time zone names. This could be used | |
3692 | for displaying dates. | |
3693 | ||
3694 | If specified, the onset for the observance defined by the time zone | |
3695 | sub-component is defined by either the "RRULE" or "RDATE" property. | |
3696 | If neither is specified, only one sub-component can be specified in | |
3697 | the "VTIMEZONE" calendar component and it is assumed that the single | |
3698 | ||
3699 | ||
3700 | ||
3701 | <span class="grey">Dawson & Stenerson Standards Track [Page 64]</span> | |
3702 | </pre><pre class="newpage"><a name="page-65" id="page-65" href="#page-65" class="invisible"> </a> | |
3703 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3704 | ||
3705 | ||
3706 | observance specified is always in effect. | |
3707 | ||
3708 | The "RRULE" property defines the recurrence rule for the onset of the | |
3709 | observance defined by this time zone sub-component. Some specific | |
3710 | requirements for the usage of RRULE for this purpose include: | |
3711 | ||
3712 | - If observance is known to have an effective end date, the | |
3713 | "UNTIL" recurrence rule parameter MUST be used to specify the | |
3714 | last valid onset of this observance (i.e., the UNTIL date-time | |
3715 | will be equal to the last instance generated by the recurrence | |
3716 | pattern). It MUST be specified in UTC time. | |
3717 | ||
3718 | - The "DTSTART" and the "TZOFFSETTO" properties MUST be used | |
3719 | when generating the onset date-time values (instances) from the | |
3720 | RRULE. | |
3721 | ||
3722 | Alternatively, the "RDATE" property can be used to define the onset | |
3723 | of the observance by giving the individual onset date and times. | |
3724 | "RDATE" in this usage MUST be specified as a local DATE-TIME value in | |
3725 | UTC time. | |
3726 | ||
3727 | The optional "COMMENT" property is also allowed for descriptive | |
3728 | explanatory text. | |
3729 | ||
3730 | Example: The following are examples of the "VTIMEZONE" calendar | |
3731 | component: | |
3732 | ||
3733 | This is an example showing time zone information for the Eastern | |
3734 | United States using "RDATE" property. Note that this is only suitable | |
3735 | for a recurring event that starts on or later than April 6, 1997 at | |
3736 | 03:00:00 EDT (i.e., the earliest effective transition date and time) | |
3737 | and ends no later than April 7, 1998 02:00:00 EST (i.e., latest valid | |
3738 | date and time for EST in this scenario). For example, this can be | |
3739 | used for a recurring event that occurs every Friday, 8am-9:00 AM, | |
3740 | starting June 1, 1997, ending December 31, 1997. | |
3741 | ||
3742 | BEGIN:VTIMEZONE | |
3743 | TZID:US-Eastern | |
3744 | LAST-MODIFIED:19870101T000000Z | |
3745 | BEGIN:STANDARD | |
3746 | DTSTART:19971026T020000 | |
3747 | RDATE:19971026T020000 | |
3748 | TZOFFSETFROM:-0400 | |
3749 | TZOFFSETTO:-0500 | |
3750 | TZNAME:EST | |
3751 | END:STANDARD | |
3752 | BEGIN:DAYLIGHT | |
3753 | DTSTART:19971026T020000 | |
3754 | ||
3755 | ||
3756 | ||
3757 | <span class="grey">Dawson & Stenerson Standards Track [Page 65]</span> | |
3758 | </pre><pre class="newpage"><a name="page-66" id="page-66" href="#page-66" class="invisible"> </a> | |
3759 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3760 | ||
3761 | ||
3762 | RDATE:19970406T020000 | |
3763 | TZOFFSETFROM:-0500 | |
3764 | TZOFFSETTO:-0400 | |
3765 | TZNAME:EDT | |
3766 | END:DAYLIGHT | |
3767 | END:VTIMEZONE | |
3768 | ||
3769 | This is a simple example showing the current time zone rules for the | |
3770 | Eastern United States using a RRULE recurrence pattern. Note that | |
3771 | there is no effective end date to either of the Standard Time or | |
3772 | Daylight Time rules. This information would be valid for a recurring | |
3773 | event starting today and continuing indefinitely. | |
3774 | ||
3775 | BEGIN:VTIMEZONE | |
3776 | TZID:US-Eastern | |
3777 | LAST-MODIFIED:19870101T000000Z | |
3778 | TZURL:http://zones.stds_r_us.net/tz/US-Eastern | |
3779 | BEGIN:STANDARD | |
3780 | DTSTART:19671029T020000 | |
3781 | RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10 | |
3782 | TZOFFSETFROM:-0400 | |
3783 | TZOFFSETTO:-0500 | |
3784 | TZNAME:EST | |
3785 | END:STANDARD | |
3786 | BEGIN:DAYLIGHT | |
3787 | DTSTART:19870405T020000 | |
3788 | RRULE:FREQ=YEARLY;BYDAY=1SU;BYMONTH=4 | |
3789 | TZOFFSETFROM:-0500 | |
3790 | TZOFFSETTO:-0400 | |
3791 | TZNAME:EDT | |
3792 | END:DAYLIGHT | |
3793 | END:VTIMEZONE | |
3794 | ||
3795 | This is an example showing a fictitious set of rules for the Eastern | |
3796 | United States, where the Daylight Time rule has an effective end date | |
3797 | (i.e., after that date, Daylight Time is no longer observed). | |
3798 | ||
3799 | BEGIN:VTIMEZONE | |
3800 | TZID:US--Fictitious-Eastern | |
3801 | LAST-MODIFIED:19870101T000000Z | |
3802 | BEGIN:STANDARD | |
3803 | DTSTART:19671029T020000 | |
3804 | RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10 | |
3805 | TZOFFSETFROM:-0400 | |
3806 | TZOFFSETTO:-0500 | |
3807 | TZNAME:EST | |
3808 | END:STANDARD | |
3809 | ||
3810 | ||
3811 | ||
3812 | ||
3813 | <span class="grey">Dawson & Stenerson Standards Track [Page 66]</span> | |
3814 | </pre><pre class="newpage"><a name="page-67" id="page-67" href="#page-67" class="invisible"> </a> | |
3815 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3816 | ||
3817 | ||
3818 | BEGIN:DAYLIGHT | |
3819 | DTSTART:19870405T020000 | |
3820 | RRULE:FREQ=YEARLY;BYDAY=1SU;BYMONTH=4;UNTIL=19980404T070000Z | |
3821 | TZOFFSETFROM:-0500 | |
3822 | TZOFFSETTO:-0400 | |
3823 | TZNAME:EDT | |
3824 | END:DAYLIGHT | |
3825 | END:VTIMEZONE | |
3826 | ||
3827 | This is an example showing a fictitious set of rules for the Eastern | |
3828 | United States, where the first Daylight Time rule has an effective | |
3829 | end date. There is a second Daylight Time rule that picks up where | |
3830 | the other left off. | |
3831 | ||
3832 | BEGIN:VTIMEZONE | |
3833 | TZID:US--Fictitious-Eastern | |
3834 | LAST-MODIFIED:19870101T000000Z | |
3835 | BEGIN:STANDARD | |
3836 | DTSTART:19671029T020000 | |
3837 | RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10 | |
3838 | TZOFFSETFROM:-0400 | |
3839 | TZOFFSETTO:-0500 | |
3840 | TZNAME:EST | |
3841 | END:STANDARD | |
3842 | BEGIN:DAYLIGHT | |
3843 | DTSTART:19870405T020000 | |
3844 | RRULE:FREQ=YEARLY;BYDAY=1SU;BYMONTH=4;UNTIL=19980404T070000Z | |
3845 | TZOFFSETFROM:-0500 | |
3846 | TZOFFSETTO:-0400 | |
3847 | TZNAME:EDT | |
3848 | END:DAYLIGHT | |
3849 | BEGIN:DAYLIGHT | |
3850 | DTSTART:19990424T020000 | |
3851 | RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=4 | |
3852 | TZOFFSETFROM:-0500 | |
3853 | TZOFFSETTO:-0400 | |
3854 | TZNAME:EDT | |
3855 | END:DAYLIGHT | |
3856 | END:VTIMEZONE | |
3857 | ||
3858 | <span class="h4"><h4><a name="section-4.6.6">4.6.6</a> Alarm Component</h4></span> | |
3859 | ||
3860 | Component Name: VALARM | |
3861 | ||
3862 | Purpose: Provide a grouping of component properties that define an | |
3863 | alarm. | |
3864 | ||
3865 | ||
3866 | ||
3867 | ||
3868 | ||
3869 | <span class="grey">Dawson & Stenerson Standards Track [Page 67]</span> | |
3870 | </pre><pre class="newpage"><a name="page-68" id="page-68" href="#page-68" class="invisible"> </a> | |
3871 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3872 | ||
3873 | ||
3874 | Formal Definition: A "VALARM" calendar component is defined by the | |
3875 | following notation: | |
3876 | ||
3877 | alarmc = "BEGIN" ":" "VALARM" CRLF | |
3878 | (audioprop / dispprop / emailprop / procprop) | |
3879 | "END" ":" "VALARM" CRLF | |
3880 | ||
3881 | audioprop = 2*( | |
3882 | ||
3883 | ; 'action' and 'trigger' are both REQUIRED, | |
3884 | ; but MUST NOT occur more than once | |
3885 | ||
3886 | action / trigger / | |
3887 | ||
3888 | ; 'duration' and 'repeat' are both optional, | |
3889 | ; and MUST NOT occur more than once each, | |
3890 | ; but if one occurs, so MUST the other | |
3891 | ||
3892 | duration / repeat / | |
3893 | ||
3894 | ; the following is optional, | |
3895 | ; but MUST NOT occur more than once | |
3896 | ||
3897 | attach / | |
3898 | ||
3899 | ; the following is optional, | |
3900 | ; and MAY occur more than once | |
3901 | ||
3902 | x-prop | |
3903 | ||
3904 | ) | |
3905 | ||
3906 | ||
3907 | ||
3908 | dispprop = 3*( | |
3909 | ||
3910 | ; the following are all REQUIRED, | |
3911 | ; but MUST NOT occur more than once | |
3912 | ||
3913 | action / description / trigger / | |
3914 | ||
3915 | ; 'duration' and 'repeat' are both optional, | |
3916 | ; and MUST NOT occur more than once each, | |
3917 | ; but if one occurs, so MUST the other | |
3918 | ||
3919 | duration / repeat / | |
3920 | ||
3921 | ; the following is optional, | |
3922 | ||
3923 | ||
3924 | ||
3925 | <span class="grey">Dawson & Stenerson Standards Track [Page 68]</span> | |
3926 | </pre><pre class="newpage"><a name="page-69" id="page-69" href="#page-69" class="invisible"> </a> | |
3927 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3928 | ||
3929 | ||
3930 | ; and MAY occur more than once | |
3931 | ||
3932 | *x-prop | |
3933 | ||
3934 | ) | |
3935 | ||
3936 | ||
3937 | ||
3938 | emailprop = 5*( | |
3939 | ||
3940 | ; the following are all REQUIRED, | |
3941 | ; but MUST NOT occur more than once | |
3942 | ||
3943 | action / description / trigger / summary | |
3944 | ||
3945 | ; the following is REQUIRED, | |
3946 | ; and MAY occur more than once | |
3947 | ||
3948 | attendee / | |
3949 | ||
3950 | ; 'duration' and 'repeat' are both optional, | |
3951 | ; and MUST NOT occur more than once each, | |
3952 | ; but if one occurs, so MUST the other | |
3953 | ||
3954 | duration / repeat / | |
3955 | ||
3956 | ; the following are optional, | |
3957 | ; and MAY occur more than once | |
3958 | ||
3959 | attach / x-prop | |
3960 | ||
3961 | ) | |
3962 | ||
3963 | ||
3964 | ||
3965 | procprop = 3*( | |
3966 | ||
3967 | ; the following are all REQUIRED, | |
3968 | ; but MUST NOT occur more than once | |
3969 | ||
3970 | action / attach / trigger / | |
3971 | ||
3972 | ; 'duration' and 'repeat' are both optional, | |
3973 | ; and MUST NOT occur more than once each, | |
3974 | ; but if one occurs, so MUST the other | |
3975 | ||
3976 | duration / repeat / | |
3977 | ||
3978 | ||
3979 | ||
3980 | ||
3981 | <span class="grey">Dawson & Stenerson Standards Track [Page 69]</span> | |
3982 | </pre><pre class="newpage"><a name="page-70" id="page-70" href="#page-70" class="invisible"> </a> | |
3983 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
3984 | ||
3985 | ||
3986 | ; 'description' is optional, | |
3987 | ; and MUST NOT occur more than once | |
3988 | ||
3989 | description / | |
3990 | ||
3991 | ; the following is optional, | |
3992 | ; and MAY occur more than once | |
3993 | ||
3994 | x-prop | |
3995 | ||
3996 | ) | |
3997 | ||
3998 | Description: A "VALARM" calendar component is a grouping of component | |
3999 | properties that is a reminder or alarm for an event or a to-do. For | |
4000 | example, it may be used to define a reminder for a pending event or | |
4001 | an overdue to-do. | |
4002 | ||
4003 | The "VALARM" calendar component MUST include the "ACTION" and | |
4004 | "TRIGGER" properties. The "ACTION" property further constrains the | |
4005 | "VALARM" calendar component in the following ways: | |
4006 | ||
4007 | When the action is "AUDIO", the alarm can also include one and only | |
4008 | one "ATTACH" property, which MUST point to a sound resource, which is | |
4009 | rendered when the alarm is triggered. | |
4010 | ||
4011 | When the action is "DISPLAY", the alarm MUST also include a | |
4012 | "DESCRIPTION" property, which contains the text to be displayed when | |
4013 | the alarm is triggered. | |
4014 | ||
4015 | When the action is "EMAIL", the alarm MUST include a "DESCRIPTION" | |
4016 | property, which contains the text to be used as the message body, a | |
4017 | "SUMMARY" property, which contains the text to be used as the message | |
4018 | subject, and one or more "ATTENDEE" properties, which contain the | |
4019 | email address of attendees to receive the message. It can also | |
4020 | include one or more "ATTACH" properties, which are intended to be | |
4021 | sent as message attachments. When the alarm is triggered, the email | |
4022 | message is sent. | |
4023 | ||
4024 | When the action is "PROCEDURE", the alarm MUST include one and only | |
4025 | one "ATTACH" property, which MUST point to a procedure resource, | |
4026 | which is invoked when the alarm is triggered. | |
4027 | ||
4028 | The "VALARM" calendar component MUST only appear within either a | |
4029 | "VEVENT" or "VTODO" calendar component. "VALARM" calendar components | |
4030 | cannot be nested. Multiple mutually independent "VALARM" calendar | |
4031 | components can be specified for a single "VEVENT" or "VTODO" calendar | |
4032 | component. | |
4033 | ||
4034 | ||
4035 | ||
4036 | ||
4037 | <span class="grey">Dawson & Stenerson Standards Track [Page 70]</span> | |
4038 | </pre><pre class="newpage"><a name="page-71" id="page-71" href="#page-71" class="invisible"> </a> | |
4039 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4040 | ||
4041 | ||
4042 | The "TRIGGER" property specifies when the alarm will be triggered. | |
4043 | The "TRIGGER" property specifies a duration prior to the start of an | |
4044 | event or a to-do. The "TRIGGER" edge may be explicitly set to be | |
4045 | relative to the "START" or "END" of the event or to-do with the | |
4046 | "RELATED" parameter of the "TRIGGER" property. The "TRIGGER" property | |
4047 | value type can alternatively be set to an absolute calendar date and | |
4048 | time of day value. | |
4049 | ||
4050 | In an alarm set to trigger on the "START" of an event or to-do, the | |
4051 | "DTSTART" property MUST be present in the associated event or to-do. | |
4052 | In an alarm in a "VEVENT" calendar component set to trigger on the | |
4053 | "END" of the event, either the "DTEND" property MUST be present, or | |
4054 | the "DTSTART" and "DURATION" properties MUST both be present. In an | |
4055 | alarm in a "VTODO" calendar component set to trigger on the "END" of | |
4056 | the to-do, either the "DUE" property MUST be present, or the | |
4057 | "DTSTART" and "DURATION" properties MUST both be present. | |
4058 | ||
4059 | The alarm can be defined such that it triggers repeatedly. A | |
4060 | definition of an alarm with a repeating trigger MUST include both the | |
4061 | "DURATION" and "REPEAT" properties. The "DURATION" property specifies | |
4062 | the delay period, after which the alarm will repeat. The "REPEAT" | |
4063 | property specifies the number of additional repetitions that the | |
4064 | alarm will triggered. This repitition count is in addition to the | |
4065 | initial triggering of the alarm. Both of these properties MUST be | |
4066 | present in order to specify a repeating alarm. If one of these two | |
4067 | properties is absent, then the alarm will not repeat beyond the | |
4068 | initial trigger. | |
4069 | ||
4070 | The "ACTION" property is used within the "VALARM" calendar component | |
4071 | to specify the type of action invoked when the alarm is triggered. | |
4072 | The "VALARM" properties provide enough information for a specific | |
4073 | action to be invoked. It is typically the responsibility of a | |
4074 | "Calendar User Agent" (CUA) to deliver the alarm in the specified | |
4075 | fashion. An "ACTION" property value of AUDIO specifies an alarm that | |
4076 | causes a sound to be played to alert the user; DISPLAY specifies an | |
4077 | alarm that causes a text message to be displayed to the user; EMAIL | |
4078 | specifies an alarm that causes an electronic email message to be | |
4079 | delivered to one or more email addresses; and PROCEDURE specifies an | |
4080 | alarm that causes a procedure to be executed. The "ACTION" property | |
4081 | MUST specify one and only one of these values. | |
4082 | ||
4083 | In an AUDIO alarm, if the optional "ATTACH" property is included, it | |
4084 | MUST specify an audio sound resource. The intention is that the sound | |
4085 | will be played as the alarm effect. If an "ATTACH" property is | |
4086 | specified that does not refer to a sound resource, or if the | |
4087 | specified sound resource cannot be rendered (because its format is | |
4088 | unsupported, or because it cannot be retrieved), then the CUA or | |
4089 | other entity responsible for playing the sound may choose a fallback | |
4090 | ||
4091 | ||
4092 | ||
4093 | <span class="grey">Dawson & Stenerson Standards Track [Page 71]</span> | |
4094 | </pre><pre class="newpage"><a name="page-72" id="page-72" href="#page-72" class="invisible"> </a> | |
4095 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4096 | ||
4097 | ||
4098 | action, such as playing a built-in default sound, or playing no sound | |
4099 | at all. | |
4100 | ||
4101 | In a DISPLAY alarm, the intended alarm effect is for the text value | |
4102 | of the "DESCRIPTION" property to be displayed to the user. | |
4103 | ||
4104 | In an EMAIL alarm, the intended alarm effect is for an email message | |
4105 | to be composed and delivered to all the addresses specified by the | |
4106 | "ATTENDEE" properties in the "VALARM" calendar component. The | |
4107 | "DESCRIPTION" property of the "VALARM" calendar component MUST be | |
4108 | used as the body text of the message, and the "SUMMARY" property MUST | |
4109 | be used as the subject text. Any "ATTACH" properties in the "VALARM" | |
4110 | calendar component SHOULD be sent as attachments to the message. | |
4111 | ||
4112 | In a PROCEDURE alarm, the "ATTACH" property in the "VALARM" calendar | |
4113 | component MUST specify a procedure or program that is intended to be | |
4114 | invoked as the alarm effect. If the procedure or program is in a | |
4115 | format that cannot be rendered, then no procedure alarm will be | |
4116 | invoked. If the "DESCRIPTION" property is present, its value | |
4117 | specifies the argument string to be passed to the procedure or | |
4118 | program. "Calendar User Agents" that receive an iCalendar object with | |
4119 | this category of alarm, can disable or allow the "Calendar User" to | |
4120 | disable, or otherwise ignore this type of alarm. While a very useful | |
4121 | alarm capability, the PROCEDURE type of alarm SHOULD be treated by | |
4122 | the "Calendar User Agent" as a potential security risk. | |
4123 | ||
4124 | Example: The following example is for a "VALARM" calendar component | |
4125 | that specifies an audio alarm that will sound at a precise time and | |
4126 | repeat 4 more times at 15 minute intervals: | |
4127 | ||
4128 | BEGIN:VALARM | |
4129 | TRIGGER;VALUE=DATE-TIME:19970317T133000Z | |
4130 | REPEAT:4 | |
4131 | DURATION:PT15M | |
4132 | ACTION:AUDIO | |
4133 | ATTACH;FMTTYPE=audio/basic:ftp://host.com/pub/sounds/bell-01.aud | |
4134 | END:VALARM | |
4135 | ||
4136 | The following example is for a "VALARM" calendar component that | |
4137 | specifies a display alarm that will trigger 30 minutes before the | |
4138 | scheduled start of the event or the due date/time of the to-do it is | |
4139 | associated with and will repeat 2 more times at 15 minute intervals: | |
4140 | ||
4141 | BEGIN:VALARM | |
4142 | TRIGGER:-PT30M | |
4143 | REPEAT:2 | |
4144 | DURATION:PT15M | |
4145 | ACTION:DISPLAY | |
4146 | ||
4147 | ||
4148 | ||
4149 | <span class="grey">Dawson & Stenerson Standards Track [Page 72]</span> | |
4150 | </pre><pre class="newpage"><a name="page-73" id="page-73" href="#page-73" class="invisible"> </a> | |
4151 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4152 | ||
4153 | ||
4154 | DESCRIPTION:Breakfast meeting with executive\n | |
4155 | team at 8:30 AM EST. | |
4156 | END:VALARM | |
4157 | ||
4158 | The following example is for a "VALARM" calendar component that | |
4159 | specifies an email alarm that will trigger 2 days before the | |
4160 | scheduled due date/time of a to-do it is associated with. It does not | |
4161 | repeat. The email has a subject, body and attachment link. | |
4162 | ||
4163 | BEGIN:VALARM | |
4164 | TRIGGER:-P2D | |
4165 | ACTION:EMAIL | |
4166 | ATTENDEE:MAILTO:john_doe@host.com | |
4167 | SUMMARY:*** REMINDER: SEND AGENDA FOR WEEKLY STAFF MEETING *** | |
4168 | DESCRIPTION:A draft agenda needs to be sent out to the attendees | |
4169 | to the weekly managers meeting (MGR-LIST). Attached is a | |
4170 | pointer the document template for the agenda file. | |
4171 | ATTACH;FMTTYPE=application/binary:http://host.com/templates/agen | |
4172 | da.doc | |
4173 | END:VALARM | |
4174 | ||
4175 | The following example is for a "VALARM" calendar component that | |
4176 | specifies a procedural alarm that will trigger at a precise date/time | |
4177 | and will repeat 23 more times at one hour intervals. The alarm will | |
4178 | invoke a procedure file. | |
4179 | ||
4180 | BEGIN:VALARM | |
4181 | TRIGGER;VALUE=DATE-TIME:19980101T050000Z | |
4182 | REPEAT:23 | |
4183 | DURATION:PT1H | |
4184 | ACTION:PROCEDURE | |
4185 | ATTACH;FMTTYPE=application/binary:ftp://host.com/novo- | |
4186 | procs/felizano.exe | |
4187 | END:VALARM | |
4188 | ||
4189 | <span class="h3"><h3><a name="section-4.7">4.7</a> Calendar Properties</h3></span> | |
4190 | ||
4191 | The Calendar Properties are attributes that apply to the iCalendar | |
4192 | object, as a whole. These properties do not appear within a calendar | |
4193 | component. They SHOULD be specified after the "BEGIN:VCALENDAR" | |
4194 | property and prior to any calendar component. | |
4195 | ||
4196 | <span class="h4"><h4><a name="section-4.7.1">4.7.1</a> Calendar Scale</h4></span> | |
4197 | ||
4198 | Property Name: CALSCALE | |
4199 | ||
4200 | Purpose: This property defines the calendar scale used for the | |
4201 | calendar information specified in the iCalendar object. | |
4202 | ||
4203 | ||
4204 | ||
4205 | <span class="grey">Dawson & Stenerson Standards Track [Page 73]</span> | |
4206 | </pre><pre class="newpage"><a name="page-74" id="page-74" href="#page-74" class="invisible"> </a> | |
4207 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4208 | ||
4209 | ||
4210 | Value Type: TEXT | |
4211 | ||
4212 | Property Parameters: Non-standard property parameters can be | |
4213 | specified on this property. | |
4214 | ||
4215 | Conformance: Property can be specified in an iCalendar object. The | |
4216 | default value is "GREGORIAN". | |
4217 | ||
4218 | Description: This memo is based on the Gregorian calendar scale. The | |
4219 | Gregorian calendar scale is assumed if this property is not specified | |
4220 | in the iCalendar object. It is expected that other calendar scales | |
4221 | will be defined in other specifications or by future versions of this | |
4222 | memo. | |
4223 | ||
4224 | Format Definition: The property is defined by the following notation: | |
4225 | ||
4226 | calscale = "CALSCALE" calparam ":" calvalue CRLF | |
4227 | ||
4228 | calparam = *(";" xparam) | |
4229 | ||
4230 | calvalue = "GREGORIAN" / iana-token | |
4231 | ||
4232 | Example: The following is an example of this property: | |
4233 | ||
4234 | CALSCALE:GREGORIAN | |
4235 | ||
4236 | <span class="h4"><h4><a name="section-4.7.2">4.7.2</a> Method</h4></span> | |
4237 | ||
4238 | Property Name: METHOD | |
4239 | ||
4240 | Purpose: This property defines the iCalendar object method associated | |
4241 | with the calendar object. | |
4242 | ||
4243 | Value Type: TEXT | |
4244 | ||
4245 | Property Parameters: Non-standard property parameters can be | |
4246 | specified on this property. | |
4247 | ||
4248 | Conformance: The property can be specified in an iCalendar object. | |
4249 | ||
4250 | Description: When used in a MIME message entity, the value of this | |
4251 | property MUST be the same as the Content-Type "method" parameter | |
4252 | value. This property can only appear once within the iCalendar | |
4253 | object. If either the "METHOD" property or the Content-Type "method" | |
4254 | parameter is specified, then the other MUST also be specified. | |
4255 | ||
4256 | No methods are defined by this specification. This is the subject of | |
4257 | other specifications, such as the iCalendar Transport-independent | |
4258 | ||
4259 | ||
4260 | ||
4261 | <span class="grey">Dawson & Stenerson Standards Track [Page 74]</span> | |
4262 | </pre><pre class="newpage"><a name="page-75" id="page-75" href="#page-75" class="invisible"> </a> | |
4263 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4264 | ||
4265 | ||
4266 | Interoperability Protocol (iTIP) defined by [<a href="#ref-ITIP" title=""iCalendar Transport-Independent Interoperability Protocol (iTIP) : Scheduling Events, Busy Time, To-dos and Journal Entries"">ITIP</a>]. | |
4267 | ||
4268 | If this property is not present in the iCalendar object, then a | |
4269 | scheduling transaction MUST NOT be assumed. In such cases, the | |
4270 | iCalendar object is merely being used to transport a snapshot of some | |
4271 | calendar information; without the intention of conveying a scheduling | |
4272 | semantic. | |
4273 | ||
4274 | Format Definition: The property is defined by the following notation: | |
4275 | ||
4276 | method = "METHOD" metparam ":" metvalue CRLF | |
4277 | ||
4278 | metparam = *(";" xparam) | |
4279 | ||
4280 | metvalue = iana-token | |
4281 | ||
4282 | Example: The following is a hypothetical example of this property to | |
4283 | convey that the iCalendar object is a request for a meeting: | |
4284 | ||
4285 | METHOD:REQUEST | |
4286 | ||
4287 | <span class="h4"><h4><a name="section-4.7.3">4.7.3</a> Product Identifier</h4></span> | |
4288 | ||
4289 | Property Name: PRODID | |
4290 | ||
4291 | Purpose: This property specifies the identifier for the product that | |
4292 | created the iCalendar object. | |
4293 | ||
4294 | Value Type: TEXT | |
4295 | ||
4296 | Property Parameters: Non-standard property parameters can be | |
4297 | specified on this property. | |
4298 | ||
4299 | Conformance: The property MUST be specified once in an iCalendar | |
4300 | object. | |
4301 | ||
4302 | Description: The vendor of the implementation SHOULD assure that this | |
4303 | is a globally unique identifier; using some technique such as an FPI | |
4304 | value, as defined in [ISO 9070]. | |
4305 | ||
4306 | This property SHOULD not be used to alter the interpretation of an | |
4307 | iCalendar object beyond the semantics specified in this memo. For | |
4308 | example, it is not to be used to further the understanding of non- | |
4309 | standard properties. | |
4310 | ||
4311 | Format Definition: The property is defined by the following notation: | |
4312 | ||
4313 | prodid = "PRODID" pidparam ":" pidvalue CRLF | |
4314 | ||
4315 | ||
4316 | ||
4317 | <span class="grey">Dawson & Stenerson Standards Track [Page 75]</span> | |
4318 | </pre><pre class="newpage"><a name="page-76" id="page-76" href="#page-76" class="invisible"> </a> | |
4319 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4320 | ||
4321 | ||
4322 | pidparam = *(";" xparam) | |
4323 | ||
4324 | pidvalue = text | |
4325 | ;Any text that describes the product and version | |
4326 | ;and that is generally assured of being unique. | |
4327 | ||
4328 | Example: The following is an example of this property. It does not | |
4329 | imply that English is the default language. | |
4330 | ||
4331 | PRODID:-//ABC Corporation//NONSGML My Product//EN | |
4332 | ||
4333 | <span class="h4"><h4><a name="section-4.7.4">4.7.4</a> Version</h4></span> | |
4334 | ||
4335 | Property Name: VERSION | |
4336 | ||
4337 | Purpose: This property specifies the identifier corresponding to the | |
4338 | highest version number or the minimum and maximum range of the | |
4339 | iCalendar specification that is required in order to interpret the | |
4340 | iCalendar object. | |
4341 | ||
4342 | Value Type: TEXT | |
4343 | ||
4344 | Property Parameters: Non-standard property parameters can be | |
4345 | specified on this property. | |
4346 | ||
4347 | Conformance: This property MUST be specified by an iCalendar object, | |
4348 | but MUST only be specified once. | |
4349 | ||
4350 | Description: A value of "2.0" corresponds to this memo. | |
4351 | ||
4352 | Format Definition: The property is defined by the following notation: | |
4353 | ||
4354 | version = "VERSION" verparam ":" vervalue CRLF | |
4355 | ||
4356 | verparam = *(";" xparam) | |
4357 | ||
4358 | vervalue = "2.0" ;This memo | |
4359 | / maxver | |
4360 | / (minver ";" maxver) | |
4361 | ||
4362 | minver = <A IANA registered iCalendar version identifier> | |
4363 | ;Minimum iCalendar version needed to parse the iCalendar object | |
4364 | ||
4365 | maxver = <A IANA registered iCalendar version identifier> | |
4366 | ;Maximum iCalendar version needed to parse the iCalendar object | |
4367 | ||
4368 | Example: The following is an example of this property: | |
4369 | ||
4370 | ||
4371 | ||
4372 | ||
4373 | <span class="grey">Dawson & Stenerson Standards Track [Page 76]</span> | |
4374 | </pre><pre class="newpage"><a name="page-77" id="page-77" href="#page-77" class="invisible"> </a> | |
4375 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4376 | ||
4377 | ||
4378 | VERSION:2.0 | |
4379 | ||
4380 | <span class="h3"><h3><a name="section-4.8">4.8</a> Component Properties</h3></span> | |
4381 | ||
4382 | The following properties can appear within calendar components, as | |
4383 | specified by each component property definition. | |
4384 | ||
4385 | <span class="h4"><h4><a name="section-4.8.1">4.8.1</a> Descriptive Component Properties</h4></span> | |
4386 | ||
4387 | The following properties specify descriptive information about | |
4388 | calendar components. | |
4389 | ||
4390 | <span class="h5"><h5><a name="section-4.8.1.1">4.8.1.1</a> Attachment</h5></span> | |
4391 | ||
4392 | Property Name: ATTACH | |
4393 | ||
4394 | Purpose: The property provides the capability to associate a document | |
4395 | object with a calendar component. | |
4396 | ||
4397 | Value Type: The default value type for this property is URI. The | |
4398 | value type can also be set to BINARY to indicate inline binary | |
4399 | encoded content information. | |
4400 | ||
4401 | Property Parameters: Non-standard, inline encoding, format type and | |
4402 | value data type property parameters can be specified on this | |
4403 | property. | |
4404 | ||
4405 | Conformance: The property can be specified in a "VEVENT", "VTODO", | |
4406 | "VJOURNAL" or "VALARM" calendar components. | |
4407 | ||
4408 | Description: The property can be specified within "VEVENT", "VTODO", | |
4409 | "VJOURNAL", or "VALARM" calendar components. This property can be | |
4410 | specified multiple times within an iCalendar object. | |
4411 | ||
4412 | Format Definition: The property is defined by the following notation: | |
4413 | ||
4414 | attach = "ATTACH" attparam ":" uri CRLF | |
4415 | ||
4416 | attach =/ "ATTACH" attparam ";" "ENCODING" "=" "BASE64" | |
4417 | ";" "VALUE" "=" "BINARY" ":" binary | |
4418 | ||
4419 | attparam = *( | |
4420 | ||
4421 | ; the following is optional, | |
4422 | ; but MUST NOT occur more than once | |
4423 | ||
4424 | (";" fmttypeparam) / | |
4425 | ||
4426 | ||
4427 | ||
4428 | ||
4429 | <span class="grey">Dawson & Stenerson Standards Track [Page 77]</span> | |
4430 | </pre><pre class="newpage"><a name="page-78" id="page-78" href="#page-78" class="invisible"> </a> | |
4431 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4432 | ||
4433 | ||
4434 | ; the following is optional, | |
4435 | ; and MAY occur more than once | |
4436 | ||
4437 | (";" xparam) | |
4438 | ||
4439 | ) | |
4440 | ||
4441 | Example: The following are examples of this property: | |
4442 | ||
4443 | ATTACH:CID:jsmith.part3.960817T083000.xyzMail@host1.com | |
4444 | ||
4445 | ATTACH;FMTTYPE=application/postscript:ftp://xyzCorp.com/pub/ | |
4446 | reports/r-960812.ps | |
4447 | ||
4448 | <span class="h5"><h5><a name="section-4.8.1.2">4.8.1.2</a> Categories</h5></span> | |
4449 | ||
4450 | Property Name: CATEGORIES | |
4451 | ||
4452 | Purpose: This property defines the categories for a calendar | |
4453 | component. | |
4454 | ||
4455 | Value Type: TEXT | |
4456 | ||
4457 | Property Parameters: Non-standard and language property parameters | |
4458 | can be specified on this property. | |
4459 | ||
4460 | Conformance: The property can be specified within "VEVENT", "VTODO" | |
4461 | or "VJOURNAL" calendar components. | |
4462 | ||
4463 | Description: This property is used to specify categories or subtypes | |
4464 | of the calendar component. The categories are useful in searching for | |
4465 | a calendar component of a particular type and category. Within the | |
4466 | "VEVENT", "VTODO" or "VJOURNAL" calendar components, more than one | |
4467 | category can be specified as a list of categories separated by the | |
4468 | COMMA character (US-ASCII decimal 44). | |
4469 | ||
4470 | Format Definition: The property is defined by the following notation: | |
4471 | ||
4472 | categories = "CATEGORIES" catparam ":" text *("," text) | |
4473 | CRLF | |
4474 | ||
4475 | catparam = *( | |
4476 | ||
4477 | ; the following is optional, | |
4478 | ; but MUST NOT occur more than once | |
4479 | ||
4480 | (";" languageparam ) / | |
4481 | ||
4482 | ||
4483 | ||
4484 | ||
4485 | <span class="grey">Dawson & Stenerson Standards Track [Page 78]</span> | |
4486 | </pre><pre class="newpage"><a name="page-79" id="page-79" href="#page-79" class="invisible"> </a> | |
4487 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4488 | ||
4489 | ||
4490 | ; the following is optional, | |
4491 | ; and MAY occur more than once | |
4492 | ||
4493 | (";" xparam) | |
4494 | ||
4495 | ) | |
4496 | ||
4497 | Example: The following are examples of this property: | |
4498 | ||
4499 | CATEGORIES:APPOINTMENT,EDUCATION | |
4500 | ||
4501 | CATEGORIES:MEETING | |
4502 | ||
4503 | <span class="h5"><h5><a name="section-4.8.1.3">4.8.1.3</a> Classification</h5></span> | |
4504 | ||
4505 | Property Name: CLASS | |
4506 | ||
4507 | Purpose: This property defines the access classification for a | |
4508 | calendar component. | |
4509 | ||
4510 | Value Type: TEXT | |
4511 | ||
4512 | Property Parameters: Non-standard property parameters can be | |
4513 | specified on this property. | |
4514 | ||
4515 | Conformance: The property can be specified once in a "VEVENT", | |
4516 | "VTODO" or "VJOURNAL" calendar components. | |
4517 | ||
4518 | Description: An access classification is only one component of the | |
4519 | general security system within a calendar application. It provides a | |
4520 | method of capturing the scope of the access the calendar owner | |
4521 | intends for information within an individual calendar entry. The | |
4522 | access classification of an individual iCalendar component is useful | |
4523 | when measured along with the other security components of a calendar | |
4524 | system (e.g., calendar user authentication, authorization, access | |
4525 | rights, access role, etc.). Hence, the semantics of the individual | |
4526 | access classifications cannot be completely defined by this memo | |
4527 | alone. Additionally, due to the "blind" nature of most exchange | |
4528 | processes using this memo, these access classifications cannot serve | |
4529 | as an enforcement statement for a system receiving an iCalendar | |
4530 | object. Rather, they provide a method for capturing the intention of | |
4531 | the calendar owner for the access to the calendar component. | |
4532 | ||
4533 | Format Definition: The property is defined by the following notation: | |
4534 | ||
4535 | class = "CLASS" classparam ":" classvalue CRLF | |
4536 | ||
4537 | classparam = *(";" xparam) | |
4538 | ||
4539 | ||
4540 | ||
4541 | <span class="grey">Dawson & Stenerson Standards Track [Page 79]</span> | |
4542 | </pre><pre class="newpage"><a name="page-80" id="page-80" href="#page-80" class="invisible"> </a> | |
4543 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4544 | ||
4545 | ||
4546 | classvalue = "PUBLIC" / "PRIVATE" / "CONFIDENTIAL" / iana-token | |
4547 | / x-name | |
4548 | ;Default is PUBLIC | |
4549 | ||
4550 | Example: The following is an example of this property: | |
4551 | ||
4552 | CLASS:PUBLIC | |
4553 | ||
4554 | <span class="h5"><h5><a name="section-4.8.1.4">4.8.1.4</a> Comment</h5></span> | |
4555 | ||
4556 | Property Name: COMMENT | |
4557 | ||
4558 | Purpose: This property specifies non-processing information intended | |
4559 | to provide a comment to the calendar user. | |
4560 | ||
4561 | Value Type: TEXT | |
4562 | ||
4563 | Property Parameters: Non-standard, alternate text representation and | |
4564 | language property parameters can be specified on this property. | |
4565 | ||
4566 | Conformance: This property can be specified in "VEVENT", "VTODO", | |
4567 | "VJOURNAL", "VTIMEZONE" or "VFREEBUSY" calendar components. | |
4568 | ||
4569 | Description: The property can be specified multiple times. | |
4570 | ||
4571 | Format Definition: The property is defined by the following notation: | |
4572 | ||
4573 | comment = "COMMENT" commparam ":" text CRLF | |
4574 | ||
4575 | commparam = *( | |
4576 | ||
4577 | ; the following are optional, | |
4578 | ; but MUST NOT occur more than once | |
4579 | ||
4580 | (";" altrepparam) / (";" languageparam) / | |
4581 | ||
4582 | ; the following is optional, | |
4583 | ; and MAY occur more than once | |
4584 | ||
4585 | (";" xparam) | |
4586 | ||
4587 | ) | |
4588 | ||
4589 | Example: The following is an example of this property: | |
4590 | ||
4591 | COMMENT:The meeting really needs to include both ourselves | |
4592 | and the customer. We can't hold this meeting without them. | |
4593 | As a matter of fact\, the venue for the meeting ought to be at | |
4594 | ||
4595 | ||
4596 | ||
4597 | <span class="grey">Dawson & Stenerson Standards Track [Page 80]</span> | |
4598 | </pre><pre class="newpage"><a name="page-81" id="page-81" href="#page-81" class="invisible"> </a> | |
4599 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4600 | ||
4601 | ||
4602 | their site. - - John | |
4603 | ||
4604 | The data type for this property is TEXT. | |
4605 | ||
4606 | <span class="h5"><h5><a name="section-4.8.1.5">4.8.1.5</a> Description</h5></span> | |
4607 | ||
4608 | Property Name: DESCRIPTION | |
4609 | ||
4610 | Purpose: This property provides a more complete description of the | |
4611 | calendar component, than that provided by the "SUMMARY" property. | |
4612 | ||
4613 | Value Type: TEXT | |
4614 | ||
4615 | Property Parameters: Non-standard, alternate text representation and | |
4616 | language property parameters can be specified on this property. | |
4617 | ||
4618 | Conformance: The property can be specified in the "VEVENT", "VTODO", | |
4619 | "VJOURNAL" or "VALARM" calendar components. The property can be | |
4620 | specified multiple times only within a "VJOURNAL" calendar component. | |
4621 | ||
4622 | Description: This property is used in the "VEVENT" and "VTODO" to | |
4623 | capture lengthy textual decriptions associated with the activity. | |
4624 | ||
4625 | This property is used in the "VJOURNAL" calendar component to capture | |
4626 | one more textual journal entries. | |
4627 | ||
4628 | This property is used in the "VALARM" calendar component to capture | |
4629 | the display text for a DISPLAY category of alarm, to capture the body | |
4630 | text for an EMAIL category of alarm and to capture the argument | |
4631 | string for a PROCEDURE category of alarm. | |
4632 | ||
4633 | Format Definition: The property is defined by the following notation: | |
4634 | ||
4635 | description = "DESCRIPTION" descparam ":" text CRLF | |
4636 | ||
4637 | descparam = *( | |
4638 | ||
4639 | ; the following are optional, | |
4640 | ; but MUST NOT occur more than once | |
4641 | ||
4642 | (";" altrepparam) / (";" languageparam) / | |
4643 | ||
4644 | ; the following is optional, | |
4645 | ; and MAY occur more than once | |
4646 | ||
4647 | (";" xparam) | |
4648 | ||
4649 | ) | |
4650 | ||
4651 | ||
4652 | ||
4653 | <span class="grey">Dawson & Stenerson Standards Track [Page 81]</span> | |
4654 | </pre><pre class="newpage"><a name="page-82" id="page-82" href="#page-82" class="invisible"> </a> | |
4655 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4656 | ||
4657 | ||
4658 | Example: The following is an example of the property with formatted | |
4659 | line breaks in the property value: | |
4660 | ||
4661 | DESCRIPTION:Meeting to provide technical review for "Phoenix" | |
4662 | design.\n Happy Face Conference Room. Phoenix design team | |
4663 | MUST attend this meeting.\n RSVP to team leader. | |
4664 | ||
4665 | The following is an example of the property with folding of long | |
4666 | lines: | |
4667 | ||
4668 | DESCRIPTION:Last draft of the new novel is to be completed | |
4669 | for the editor's proof today. | |
4670 | ||
4671 | <span class="h5"><h5><a name="section-4.8.1.6">4.8.1.6</a> Geographic Position</h5></span> | |
4672 | ||
4673 | Property Name: GEO | |
4674 | ||
4675 | Purpose: This property specifies information related to the global | |
4676 | position for the activity specified by a calendar component. | |
4677 | ||
4678 | Value Type: FLOAT. The value MUST be two SEMICOLON separated FLOAT | |
4679 | values. | |
4680 | ||
4681 | Property Parameters: Non-standard property parameters can be | |
4682 | specified on this property. | |
4683 | ||
4684 | Conformance: This property can be specified in "VEVENT" or "VTODO" | |
4685 | calendar components. | |
4686 | ||
4687 | Description: The property value specifies latitude and longitude, in | |
4688 | that order (i.e., "LAT LON" ordering). The longitude represents the | |
4689 | location east or west of the prime meridian as a positive or negative | |
4690 | real number, respectively. The longitude and latitude values MAY be | |
4691 | specified up to six decimal places, which will allow for accuracy to | |
4692 | within one meter of geographical position. Receiving applications | |
4693 | MUST accept values of this precision and MAY truncate values of | |
4694 | greater precision. | |
4695 | ||
4696 | Values for latitude and longitude shall be expressed as decimal | |
4697 | fractions of degrees. Whole degrees of latitude shall be represented | |
4698 | by a two-digit decimal number ranging from 0 through 90. Whole | |
4699 | degrees of longitude shall be represented by a decimal number ranging | |
4700 | from 0 through 180. When a decimal fraction of a degree is specified, | |
4701 | it shall be separated from the whole number of degrees by a decimal | |
4702 | point. | |
4703 | ||
4704 | ||
4705 | ||
4706 | ||
4707 | ||
4708 | ||
4709 | <span class="grey">Dawson & Stenerson Standards Track [Page 82]</span> | |
4710 | </pre><pre class="newpage"><a name="page-83" id="page-83" href="#page-83" class="invisible"> </a> | |
4711 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4712 | ||
4713 | ||
4714 | Latitudes north of the equator shall be specified by a plus sign (+), | |
4715 | or by the absence of a minus sign (-), preceding the digits | |
4716 | designating degrees. Latitudes south of the Equator shall be | |
4717 | designated by a minus sign (-) preceding the digits designating | |
4718 | degrees. A point on the Equator shall be assigned to the Northern | |
4719 | Hemisphere. | |
4720 | ||
4721 | Longitudes east of the prime meridian shall be specified by a plus | |
4722 | sign (+), or by the absence of a minus sign (-), preceding the digits | |
4723 | designating degrees. Longitudes west of the meridian shall be | |
4724 | designated by minus sign (-) preceding the digits designating | |
4725 | degrees. A point on the prime meridian shall be assigned to the | |
4726 | Eastern Hemisphere. A point on the 180th meridian shall be assigned | |
4727 | to the Western Hemisphere. One exception to this last convention is | |
4728 | permitted. For the special condition of describing a band of latitude | |
4729 | around the earth, the East Bounding Coordinate data element shall be | |
4730 | assigned the value +180 (180) degrees. | |
4731 | ||
4732 | Any spatial address with a latitude of +90 (90) or -90 degrees will | |
4733 | specify the position at the North or South Pole, respectively. The | |
4734 | component for longitude may have any legal value. | |
4735 | ||
4736 | With the exception of the special condition described above, this | |
4737 | form is specified in Department of Commerce, 1986, Representation of | |
4738 | geographic point locations for information interchange (Federal | |
4739 | Information Processing Standard 70-1): Washington, Department of | |
4740 | Commerce, National Institute of Standards and Technology. | |
4741 | ||
4742 | The simple formula for converting degrees-minutes-seconds into | |
4743 | decimal degrees is: | |
4744 | ||
4745 | decimal = degrees + minutes/60 + seconds/3600. | |
4746 | ||
4747 | Format Definition: The property is defined by the following notation: | |
4748 | ||
4749 | geo = "GEO" geoparam ":" geovalue CRLF | |
4750 | ||
4751 | geoparam = *(";" xparam) | |
4752 | ||
4753 | geovalue = float ";" float | |
4754 | ;Latitude and Longitude components | |
4755 | ||
4756 | Example: The following is an example of this property: | |
4757 | ||
4758 | GEO:37.386013;-122.082932 | |
4759 | ||
4760 | ||
4761 | ||
4762 | ||
4763 | ||
4764 | ||
4765 | <span class="grey">Dawson & Stenerson Standards Track [Page 83]</span> | |
4766 | </pre><pre class="newpage"><a name="page-84" id="page-84" href="#page-84" class="invisible"> </a> | |
4767 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4768 | ||
4769 | ||
4770 | <span class="h5"><h5><a name="section-4.8.1.7">4.8.1.7</a> Location</h5></span> | |
4771 | ||
4772 | Property Name: LOCATION | |
4773 | ||
4774 | Purpose: The property defines the intended venue for the activity | |
4775 | defined by a calendar component. | |
4776 | ||
4777 | Value Type: TEXT | |
4778 | ||
4779 | Property Parameters: Non-standard, alternate text representation and | |
4780 | language property parameters can be specified on this property. | |
4781 | ||
4782 | Conformance: This property can be specified in "VEVENT" or "VTODO" | |
4783 | calendar component. | |
4784 | ||
4785 | Description: Specific venues such as conference or meeting rooms may | |
4786 | be explicitly specified using this property. An alternate | |
4787 | representation may be specified that is a URI that points to | |
4788 | directory information with more structured specification of the | |
4789 | location. For example, the alternate representation may specify | |
4790 | either an LDAP URI pointing to an LDAP server entry or a CID URI | |
4791 | pointing to a MIME body part containing a vCard [<a href="http://tools.ietf.org/html/rfc2426" title=""vCard MIME Directory Profile"">RFC 2426</a>] for the | |
4792 | location. | |
4793 | ||
4794 | Format Definition: The property is defined by the following notation: | |
4795 | ||
4796 | location = "LOCATION locparam ":" text CRLF | |
4797 | ||
4798 | locparam = *( | |
4799 | ||
4800 | ; the following are optional, | |
4801 | ; but MUST NOT occur more than once | |
4802 | ||
4803 | (";" altrepparam) / (";" languageparam) / | |
4804 | ||
4805 | ; the following is optional, | |
4806 | ; and MAY occur more than once | |
4807 | ||
4808 | (";" xparam) | |
4809 | ||
4810 | ) | |
4811 | ||
4812 | Example: The following are some examples of this property: | |
4813 | ||
4814 | LOCATION:Conference Room - F123, Bldg. 002 | |
4815 | ||
4816 | LOCATION;ALTREP="http://xyzcorp.com/conf-rooms/f123.vcf": | |
4817 | Conference Room - F123, Bldg. 002 | |
4818 | ||
4819 | ||
4820 | ||
4821 | <span class="grey">Dawson & Stenerson Standards Track [Page 84]</span> | |
4822 | </pre><pre class="newpage"><a name="page-85" id="page-85" href="#page-85" class="invisible"> </a> | |
4823 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4824 | ||
4825 | ||
4826 | <span class="h5"><h5><a name="section-4.8.1.8">4.8.1.8</a> Percent Complete</h5></span> | |
4827 | ||
4828 | Property Name: PERCENT-COMPLETE | |
4829 | ||
4830 | Purpose: This property is used by an assignee or delegatee of a to-do | |
4831 | to convey the percent completion of a to-do to the Organizer. | |
4832 | ||
4833 | Value Type: INTEGER | |
4834 | ||
4835 | Property Parameters: Non-standard property parameters can be | |
4836 | specified on this property. | |
4837 | ||
4838 | Conformance: This property can be specified in a "VTODO" calendar | |
4839 | component. | |
4840 | ||
4841 | Description: The property value is a positive integer between zero | |
4842 | and one hundred. A value of "0" indicates the to-do has not yet been | |
4843 | started. A value of "100" indicates that the to-do has been | |
4844 | completed. Integer values in between indicate the percent partially | |
4845 | complete. | |
4846 | ||
4847 | When a to-do is assigned to multiple individuals, the property value | |
4848 | indicates the percent complete for that portion of the to-do assigned | |
4849 | to the assignee or delegatee. For example, if a to-do is assigned to | |
4850 | both individuals "A" and "B". A reply from "A" with a percent | |
4851 | complete of "70" indicates that "A" has completed 70% of the to-do | |
4852 | assigned to them. A reply from "B" with a percent complete of "50" | |
4853 | indicates "B" has completed 50% of the to-do assigned to them. | |
4854 | ||
4855 | Format Definition: The property is defined by the following notation: | |
4856 | ||
4857 | percent = "PERCENT-COMPLETE" pctparam ":" integer CRLF | |
4858 | ||
4859 | pctparam = *(";" xparam) | |
4860 | ||
4861 | Example: The following is an example of this property to show 39% | |
4862 | completion: | |
4863 | ||
4864 | PERCENT-COMPLETE:39 | |
4865 | ||
4866 | <span class="h5"><h5><a name="section-4.8.1.9">4.8.1.9</a> Priority</h5></span> | |
4867 | ||
4868 | Property Name: PRIORITY | |
4869 | ||
4870 | Purpose: The property defines the relative priority for a calendar | |
4871 | component. | |
4872 | ||
4873 | Value Type: INTEGER | |
4874 | ||
4875 | ||
4876 | ||
4877 | <span class="grey">Dawson & Stenerson Standards Track [Page 85]</span> | |
4878 | </pre><pre class="newpage"><a name="page-86" id="page-86" href="#page-86" class="invisible"> </a> | |
4879 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4880 | ||
4881 | ||
4882 | Property Parameters: Non-standard property parameters can be | |
4883 | specified on this property. | |
4884 | ||
4885 | Conformance: The property can be specified in a "VEVENT" or "VTODO" | |
4886 | calendar component. | |
4887 | ||
4888 | Description: The priority is specified as an integer in the range | |
4889 | zero to nine. A value of zero (US-ASCII decimal 48) specifies an | |
4890 | undefined priority. A value of one (US-ASCII decimal 49) is the | |
4891 | highest priority. A value of two (US-ASCII decimal 50) is the second | |
4892 | highest priority. Subsequent numbers specify a decreasing ordinal | |
4893 | priority. A value of nine (US-ASCII decimal 58) is the lowest | |
4894 | priority. | |
4895 | ||
4896 | A CUA with a three-level priority scheme of "HIGH", "MEDIUM" and | |
4897 | "LOW" is mapped into this property such that a property value in the | |
4898 | range of one (US-ASCII decimal 49) to four (US-ASCII decimal 52) | |
4899 | specifies "HIGH" priority. A value of five (US-ASCII decimal 53) is | |
4900 | the normal or "MEDIUM" priority. A value in the range of six (US- | |
4901 | ASCII decimal 54) to nine (US-ASCII decimal 58) is "LOW" priority. | |
4902 | ||
4903 | A CUA with a priority schema of "A1", "A2", "A3", "B1", "B2", ..., | |
4904 | "C3" is mapped into this property such that a property value of one | |
4905 | (US-ASCII decimal 49) specifies "A1", a property value of two (US- | |
4906 | ASCII decimal 50) specifies "A2", a property value of three (US-ASCII | |
4907 | decimal 51) specifies "A3", and so forth up to a property value of 9 | |
4908 | (US-ASCII decimal 58) specifies "C3". | |
4909 | ||
4910 | Other integer values are reserved for future use. | |
4911 | ||
4912 | Within a "VEVENT" calendar component, this property specifies a | |
4913 | priority for the event. This property may be useful when more than | |
4914 | one event is scheduled for a given time period. | |
4915 | ||
4916 | Within a "VTODO" calendar component, this property specified a | |
4917 | priority for the to-do. This property is useful in prioritizing | |
4918 | multiple action items for a given time period. | |
4919 | ||
4920 | Format Definition: The property is specified by the following | |
4921 | notation: | |
4922 | ||
4923 | priority = "PRIORITY" prioparam ":" privalue CRLF | |
4924 | ;Default is zero | |
4925 | ||
4926 | prioparam = *(";" xparam) | |
4927 | ||
4928 | privalue = integer ;Must be in the range [<a href="#ref-0..9">0..9</a>] | |
4929 | ; All other values are reserved for future use | |
4930 | ||
4931 | ||
4932 | ||
4933 | <span class="grey">Dawson & Stenerson Standards Track [Page 86]</span> | |
4934 | </pre><pre class="newpage"><a name="page-87" id="page-87" href="#page-87" class="invisible"> </a> | |
4935 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4936 | ||
4937 | ||
4938 | The following is an example of a property with the highest priority: | |
4939 | ||
4940 | PRIORITY:1 | |
4941 | ||
4942 | The following is an example of a property with a next highest | |
4943 | priority: | |
4944 | ||
4945 | PRIORITY:2 | |
4946 | ||
4947 | Example: The following is an example of a property with no priority. | |
4948 | This is equivalent to not specifying the "PRIORITY" property: | |
4949 | ||
4950 | PRIORITY:0 | |
4951 | ||
4952 | <span class="h5"><h5><a name="section-4.8.1.10">4.8.1.10</a> Resources</h5></span> | |
4953 | ||
4954 | Property Name: RESOURCES | |
4955 | ||
4956 | Purpose: This property defines the equipment or resources anticipated | |
4957 | for an activity specified by a calendar entity.. | |
4958 | ||
4959 | Value Type: TEXT | |
4960 | ||
4961 | Property Parameters: Non-standard, alternate text representation and | |
4962 | language property parameters can be specified on this property. | |
4963 | ||
4964 | Conformance: This property can be specified in "VEVENT" or "VTODO" | |
4965 | calendar component. | |
4966 | ||
4967 | Description: The property value is an arbitrary text. More than one | |
4968 | resource can be specified as a list of resources separated by the | |
4969 | COMMA character (US-ASCII decimal 44). | |
4970 | ||
4971 | Format Definition: The property is defined by the following notation: | |
4972 | ||
4973 | resources = "RESOURCES" resrcparam ":" text *("," text) CRLF | |
4974 | ||
4975 | resrcparam = *( | |
4976 | ||
4977 | ; the following are optional, | |
4978 | ; but MUST NOT occur more than once | |
4979 | ||
4980 | (";" altrepparam) / (";" languageparam) / | |
4981 | ||
4982 | ; the following is optional, | |
4983 | ; and MAY occur more than once | |
4984 | ||
4985 | ||
4986 | ||
4987 | ||
4988 | ||
4989 | <span class="grey">Dawson & Stenerson Standards Track [Page 87]</span> | |
4990 | </pre><pre class="newpage"><a name="page-88" id="page-88" href="#page-88" class="invisible"> </a> | |
4991 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
4992 | ||
4993 | ||
4994 | (";" xparam) | |
4995 | ||
4996 | ) | |
4997 | ||
4998 | Example: The following is an example of this property: | |
4999 | ||
5000 | RESOURCES:EASEL,PROJECTOR,VCR | |
5001 | ||
5002 | RESOURCES;LANGUAGE=fr:1 raton-laveur | |
5003 | ||
5004 | <span class="h5"><h5><a name="section-4.8.1.11">4.8.1.11</a> Status</h5></span> | |
5005 | ||
5006 | Property Name: STATUS | |
5007 | ||
5008 | Purpose: This property defines the overall status or confirmation for | |
5009 | the calendar component. | |
5010 | ||
5011 | Value Type: TEXT | |
5012 | ||
5013 | Property Parameters: Non-standard property parameters can be | |
5014 | specified on this property. | |
5015 | ||
5016 | Conformance: This property can be specified in "VEVENT", "VTODO" or | |
5017 | "VJOURNAL" calendar components. | |
5018 | ||
5019 | Description: In a group scheduled calendar component, the property is | |
5020 | used by the "Organizer" to provide a confirmation of the event to the | |
5021 | "Attendees". For example in a "VEVENT" calendar component, the | |
5022 | "Organizer" can indicate that a meeting is tentative, confirmed or | |
5023 | cancelled. In a "VTODO" calendar component, the "Organizer" can | |
5024 | indicate that an action item needs action, is completed, is in | |
5025 | process or being worked on, or has been cancelled. In a "VJOURNAL" | |
5026 | calendar component, the "Organizer" can indicate that a journal entry | |
5027 | is draft, final or has been cancelled or removed. | |
5028 | ||
5029 | Format Definition: The property is defined by the following notation: | |
5030 | ||
5031 | status = "STATUS" statparam] ":" statvalue CRLF | |
5032 | ||
5033 | statparam = *(";" xparam) | |
5034 | ||
5035 | statvalue = "TENTATIVE" ;Indicates event is | |
5036 | ;tentative. | |
5037 | / "CONFIRMED" ;Indicates event is | |
5038 | ;definite. | |
5039 | / "CANCELLED" ;Indicates event was | |
5040 | ;cancelled. | |
5041 | ;Status values for a "VEVENT" | |
5042 | ||
5043 | ||
5044 | ||
5045 | <span class="grey">Dawson & Stenerson Standards Track [Page 88]</span> | |
5046 | </pre><pre class="newpage"><a name="page-89" id="page-89" href="#page-89" class="invisible"> </a> | |
5047 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5048 | ||
5049 | ||
5050 | statvalue =/ "NEEDS-ACTION" ;Indicates to-do needs action. | |
5051 | / "COMPLETED" ;Indicates to-do completed. | |
5052 | / "IN-PROCESS" ;Indicates to-do in process of | |
5053 | / "CANCELLED" ;Indicates to-do was cancelled. | |
5054 | ;Status values for "VTODO". | |
5055 | ||
5056 | statvalue =/ "DRAFT" ;Indicates journal is draft. | |
5057 | / "FINAL" ;Indicates journal is final. | |
5058 | / "CANCELLED" ;Indicates journal is removed. | |
5059 | ;Status values for "VJOURNAL". | |
5060 | ||
5061 | Example: The following is an example of this property for a "VEVENT" | |
5062 | calendar component: | |
5063 | ||
5064 | STATUS:TENTATIVE | |
5065 | ||
5066 | The following is an example of this property for a "VTODO" calendar | |
5067 | component: | |
5068 | ||
5069 | STATUS:NEEDS-ACTION | |
5070 | ||
5071 | The following is an example of this property for a "VJOURNAL" | |
5072 | calendar component: | |
5073 | ||
5074 | STATUS:DRAFT | |
5075 | ||
5076 | <span class="h5"><h5><a name="section-4.8.1.12">4.8.1.12</a> Summary</h5></span> | |
5077 | ||
5078 | Property Name: SUMMARY | |
5079 | ||
5080 | Purpose: This property defines a short summary or subject for the | |
5081 | calendar component. | |
5082 | ||
5083 | Value Type: TEXT | |
5084 | ||
5085 | Property Parameters: Non-standard, alternate text representation and | |
5086 | language property parameters can be specified on this property. | |
5087 | ||
5088 | Conformance: The property can be specified in "VEVENT", "VTODO", | |
5089 | "VJOURNAL" or "VALARM" calendar components. | |
5090 | ||
5091 | Description: This property is used in the "VEVENT", "VTODO" and | |
5092 | "VJOURNAL" calendar components to capture a short, one line summary | |
5093 | about the activity or journal entry. | |
5094 | ||
5095 | This property is used in the "VALARM" calendar component to capture | |
5096 | the subject of an EMAIL category of alarm. | |
5097 | ||
5098 | ||
5099 | ||
5100 | ||
5101 | <span class="grey">Dawson & Stenerson Standards Track [Page 89]</span> | |
5102 | </pre><pre class="newpage"><a name="page-90" id="page-90" href="#page-90" class="invisible"> </a> | |
5103 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5104 | ||
5105 | ||
5106 | Format Definition: The property is defined by the following notation: | |
5107 | ||
5108 | summary = "SUMMARY" summparam ":" text CRLF | |
5109 | ||
5110 | summparam = *( | |
5111 | ||
5112 | ; the following are optional, | |
5113 | ; but MUST NOT occur more than once | |
5114 | ||
5115 | (";" altrepparam) / (";" languageparam) / | |
5116 | ||
5117 | ; the following is optional, | |
5118 | ; and MAY occur more than once | |
5119 | ||
5120 | (";" xparam) | |
5121 | ||
5122 | ) | |
5123 | ||
5124 | Example: The following is an example of this property: | |
5125 | ||
5126 | SUMMARY:Department Party | |
5127 | ||
5128 | <span class="h4"><h4><a name="section-4.8.2">4.8.2</a> Date and Time Component Properties</h4></span> | |
5129 | ||
5130 | The following properties specify date and time related information in | |
5131 | calendar components. | |
5132 | ||
5133 | <span class="h5"><h5><a name="section-4.8.2.1">4.8.2.1</a> Date/Time Completed</h5></span> | |
5134 | ||
5135 | Property Name: COMPLETED | |
5136 | ||
5137 | Purpose: This property defines the date and time that a to-do was | |
5138 | actually completed. | |
5139 | ||
5140 | Value Type: DATE-TIME | |
5141 | ||
5142 | Property Parameters: Non-standard property parameters can be | |
5143 | specified on this property. | |
5144 | ||
5145 | Conformance: The property can be specified in a "VTODO" calendar | |
5146 | component. | |
5147 | ||
5148 | Description: The date and time MUST be in a UTC format. | |
5149 | ||
5150 | Format Definition: The property is defined by the following notation: | |
5151 | ||
5152 | completed = "COMPLETED" compparam ":" date-time CRLF | |
5153 | ||
5154 | ||
5155 | ||
5156 | ||
5157 | <span class="grey">Dawson & Stenerson Standards Track [Page 90]</span> | |
5158 | </pre><pre class="newpage"><a name="page-91" id="page-91" href="#page-91" class="invisible"> </a> | |
5159 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5160 | ||
5161 | ||
5162 | compparam = *(";" xparam) | |
5163 | ||
5164 | Example: The following is an example of this property: | |
5165 | ||
5166 | COMPLETED:19960401T235959Z | |
5167 | ||
5168 | <span class="h5"><h5><a name="section-4.8.2.2">4.8.2.2</a> Date/Time End</h5></span> | |
5169 | ||
5170 | Property Name: DTEND | |
5171 | ||
5172 | Purpose: This property specifies the date and time that a calendar | |
5173 | component ends. | |
5174 | ||
5175 | Value Type: The default value type is DATE-TIME. The value type can | |
5176 | be set to a DATE value type. | |
5177 | ||
5178 | Property Parameters: Non-standard, value data type, time zone | |
5179 | identifier property parameters can be specified on this property. | |
5180 | ||
5181 | Conformance: This property can be specified in "VEVENT" or | |
5182 | "VFREEBUSY" calendar components. | |
5183 | ||
5184 | Description: Within the "VEVENT" calendar component, this property | |
5185 | defines the date and time by which the event ends. The value MUST be | |
5186 | later in time than the value of the "DTSTART" property. | |
5187 | ||
5188 | Within the "VFREEBUSY" calendar component, this property defines the | |
5189 | end date and time for the free or busy time information. The time | |
5190 | MUST be specified in the UTC time format. The value MUST be later in | |
5191 | time than the value of the "DTSTART" property. | |
5192 | ||
5193 | Format Definition: The property is defined by the following notation: | |
5194 | ||
5195 | dtend = "DTEND" dtendparam":" dtendval CRLF | |
5196 | ||
5197 | dtendparam = *( | |
5198 | ||
5199 | ; the following are optional, | |
5200 | ; but MUST NOT occur more than once | |
5201 | ||
5202 | (";" "VALUE" "=" ("DATE-TIME" / "DATE")) / | |
5203 | (";" tzidparam) / | |
5204 | ||
5205 | ; the following is optional, | |
5206 | ; and MAY occur more than once | |
5207 | ||
5208 | ||
5209 | ||
5210 | ||
5211 | ||
5212 | ||
5213 | <span class="grey">Dawson & Stenerson Standards Track [Page 91]</span> | |
5214 | </pre><pre class="newpage"><a name="page-92" id="page-92" href="#page-92" class="invisible"> </a> | |
5215 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5216 | ||
5217 | ||
5218 | (";" xparam) | |
5219 | ||
5220 | ) | |
5221 | ||
5222 | ||
5223 | ||
5224 | dtendval = date-time / date | |
5225 | ;Value MUST match value type | |
5226 | ||
5227 | Example: The following is an example of this property: | |
5228 | ||
5229 | DTEND:19960401T235959Z | |
5230 | ||
5231 | DTEND;VALUE=DATE:19980704 | |
5232 | ||
5233 | <span class="h5"><h5><a name="section-4.8.2.3">4.8.2.3</a> Date/Time Due</h5></span> | |
5234 | ||
5235 | Property Name: DUE | |
5236 | ||
5237 | Purpose: This property defines the date and time that a to-do is | |
5238 | expected to be completed. | |
5239 | ||
5240 | Value Type: The default value type is DATE-TIME. The value type can | |
5241 | be set to a DATE value type. | |
5242 | ||
5243 | Property Parameters: Non-standard, value data type, time zone | |
5244 | identifier property parameters can be specified on this property. | |
5245 | ||
5246 | Conformance: The property can be specified once in a "VTODO" calendar | |
5247 | component. | |
5248 | ||
5249 | Description: The value MUST be a date/time equal to or after the | |
5250 | DTSTART value, if specified. | |
5251 | ||
5252 | Format Definition: The property is defined by the following notation: | |
5253 | ||
5254 | due = "DUE" dueparam":" dueval CRLF | |
5255 | ||
5256 | dueparam = *( | |
5257 | ; the following are optional, | |
5258 | ; but MUST NOT occur more than once | |
5259 | ||
5260 | (";" "VALUE" "=" ("DATE-TIME" / "DATE")) / | |
5261 | (";" tzidparam) / | |
5262 | ||
5263 | ; the following is optional, | |
5264 | ; and MAY occur more than once | |
5265 | ||
5266 | ||
5267 | ||
5268 | ||
5269 | <span class="grey">Dawson & Stenerson Standards Track [Page 92]</span> | |
5270 | </pre><pre class="newpage"><a name="page-93" id="page-93" href="#page-93" class="invisible"> </a> | |
5271 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5272 | ||
5273 | ||
5274 | *(";" xparam) | |
5275 | ||
5276 | ) | |
5277 | ||
5278 | ||
5279 | ||
5280 | dueval = date-time / date | |
5281 | ;Value MUST match value type | |
5282 | ||
5283 | Example: The following is an example of this property: | |
5284 | ||
5285 | DUE:19980430T235959Z | |
5286 | ||
5287 | <span class="h5"><h5><a name="section-4.8.2.4">4.8.2.4</a> Date/Time Start</h5></span> | |
5288 | ||
5289 | Property Name: DTSTART | |
5290 | ||
5291 | Purpose: This property specifies when the calendar component begins. | |
5292 | ||
5293 | Value Type: The default value type is DATE-TIME. The time value MUST | |
5294 | be one of the forms defined for the DATE-TIME value type. The value | |
5295 | type can be set to a DATE value type. | |
5296 | ||
5297 | Property Parameters: Non-standard, value data type, time zone | |
5298 | identifier property parameters can be specified on this property. | |
5299 | ||
5300 | Conformance: This property can be specified in the "VEVENT", "VTODO", | |
5301 | "VFREEBUSY", or "VTIMEZONE" calendar components. | |
5302 | ||
5303 | Description: Within the "VEVENT" calendar component, this property | |
5304 | defines the start date and time for the event. The property is | |
5305 | REQUIRED in "VEVENT" calendar components. Events can have a start | |
5306 | date/time but no end date/time. In that case, the event does not take | |
5307 | up any time. | |
5308 | ||
5309 | Within the "VFREEBUSY" calendar component, this property defines the | |
5310 | start date and time for the free or busy time information. The time | |
5311 | MUST be specified in UTC time. | |
5312 | ||
5313 | Within the "VTIMEZONE" calendar component, this property defines the | |
5314 | effective start date and time for a time zone specification. This | |
5315 | property is REQUIRED within each STANDARD and DAYLIGHT part included | |
5316 | in "VTIMEZONE" calendar components and MUST be specified as a local | |
5317 | DATE-TIME without the "TZID" property parameter. | |
5318 | ||
5319 | Format Definition: The property is defined by the following notation: | |
5320 | ||
5321 | dtstart = "DTSTART" dtstparam ":" dtstval CRLF | |
5322 | ||
5323 | ||
5324 | ||
5325 | <span class="grey">Dawson & Stenerson Standards Track [Page 93]</span> | |
5326 | </pre><pre class="newpage"><a name="page-94" id="page-94" href="#page-94" class="invisible"> </a> | |
5327 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5328 | ||
5329 | ||
5330 | dtstparam = *( | |
5331 | ||
5332 | ; the following are optional, | |
5333 | ; but MUST NOT occur more than once | |
5334 | ||
5335 | (";" "VALUE" "=" ("DATE-TIME" / "DATE")) / | |
5336 | (";" tzidparam) / | |
5337 | ||
5338 | ; the following is optional, | |
5339 | ; and MAY occur more than once | |
5340 | ||
5341 | *(";" xparam) | |
5342 | ||
5343 | ) | |
5344 | ||
5345 | ||
5346 | ||
5347 | dtstval = date-time / date | |
5348 | ;Value MUST match value type | |
5349 | ||
5350 | Example: The following is an example of this property: | |
5351 | ||
5352 | DTSTART:19980118T073000Z | |
5353 | ||
5354 | <span class="h5"><h5><a name="section-4.8.2.5">4.8.2.5</a> Duration</h5></span> | |
5355 | ||
5356 | Property Name: DURATION | |
5357 | ||
5358 | Purpose: The property specifies a positive duration of time. | |
5359 | ||
5360 | Value Type: DURATION | |
5361 | ||
5362 | Property Parameters: Non-standard property parameters can be | |
5363 | specified on this property. | |
5364 | ||
5365 | Conformance: The property can be specified in "VEVENT", "VTODO", | |
5366 | "VFREEBUSY" or "VALARM" calendar components. | |
5367 | ||
5368 | Description: In a "VEVENT" calendar component the property may be | |
5369 | used to specify a duration of the event, instead of an explicit end | |
5370 | date/time. In a "VTODO" calendar component the property may be used | |
5371 | to specify a duration for the to-do, instead of an explicit due | |
5372 | date/time. In a "VFREEBUSY" calendar component the property may be | |
5373 | used to specify the interval of free time being requested. In a | |
5374 | "VALARM" calendar component the property may be used to specify the | |
5375 | delay period prior to repeating an alarm. | |
5376 | ||
5377 | Format Definition: The property is defined by the following notation: | |
5378 | ||
5379 | ||
5380 | ||
5381 | <span class="grey">Dawson & Stenerson Standards Track [Page 94]</span> | |
5382 | </pre><pre class="newpage"><a name="page-95" id="page-95" href="#page-95" class="invisible"> </a> | |
5383 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5384 | ||
5385 | ||
5386 | duration = "DURATION" durparam ":" dur-value CRLF | |
5387 | ;consisting of a positive duration of time. | |
5388 | ||
5389 | durparam = *(";" xparam) | |
5390 | ||
5391 | Example: The following is an example of this property that specifies | |
5392 | an interval of time of 1 hour and zero minutes and zero seconds: | |
5393 | ||
5394 | DURATION:PT1H0M0S | |
5395 | ||
5396 | The following is an example of this property that specifies an | |
5397 | interval of time of 15 minutes. | |
5398 | ||
5399 | DURATION:PT15M | |
5400 | ||
5401 | <span class="h5"><h5><a name="section-4.8.2.6">4.8.2.6</a> Free/Busy Time</h5></span> | |
5402 | ||
5403 | Property Name: FREEBUSY | |
5404 | ||
5405 | Purpose: The property defines one or more free or busy time | |
5406 | intervals. | |
5407 | ||
5408 | Value Type: PERIOD. The date and time values MUST be in an UTC time | |
5409 | format. | |
5410 | ||
5411 | Property Parameters: Non-standard or free/busy time type property | |
5412 | parameters can be specified on this property. | |
5413 | ||
5414 | Conformance: The property can be specified in a "VFREEBUSY" calendar | |
5415 | component. | |
5416 | ||
5417 | Property Parameter: "FBTYPE" and non-standard parameters can be | |
5418 | specified on this property. | |
5419 | ||
5420 | Description: These time periods can be specified as either a start | |
5421 | and end date-time or a start date-time and duration. The date and | |
5422 | time MUST be a UTC time format. | |
5423 | ||
5424 | "FREEBUSY" properties within the "VFREEBUSY" calendar component | |
5425 | SHOULD be sorted in ascending order, based on start time and then end | |
5426 | time, with the earliest periods first. | |
5427 | ||
5428 | The "FREEBUSY" property can specify more than one value, separated by | |
5429 | the COMMA character (US-ASCII decimal 44). In such cases, the | |
5430 | "FREEBUSY" property values SHOULD all be of the same "FBTYPE" | |
5431 | property parameter type (e.g., all values of a particular "FBTYPE" | |
5432 | listed together in a single property). | |
5433 | ||
5434 | ||
5435 | ||
5436 | ||
5437 | <span class="grey">Dawson & Stenerson Standards Track [Page 95]</span> | |
5438 | </pre><pre class="newpage"><a name="page-96" id="page-96" href="#page-96" class="invisible"> </a> | |
5439 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5440 | ||
5441 | ||
5442 | Format Definition: The property is defined by the following notation: | |
5443 | ||
5444 | freebusy = "FREEBUSY" fbparam ":" fbvalue | |
5445 | CRLF | |
5446 | ||
5447 | fbparam = *( | |
5448 | ; the following is optional, | |
5449 | ; but MUST NOT occur more than once | |
5450 | ||
5451 | (";" fbtypeparam) / | |
5452 | ||
5453 | ; the following is optional, | |
5454 | ; and MAY occur more than once | |
5455 | ||
5456 | (";" xparam) | |
5457 | ||
5458 | ) | |
5459 | ||
5460 | fbvalue = period *["," period] | |
5461 | ;Time value MUST be in the UTC time format. | |
5462 | ||
5463 | Example: The following are some examples of this property: | |
5464 | ||
5465 | FREEBUSY;FBTYPE=BUSY-UNAVAILABLE:19970308T160000Z/PT8H30M | |
5466 | ||
5467 | FREEBUSY;FBTYPE=FREE:19970308T160000Z/PT3H,19970308T200000Z/PT1H | |
5468 | ||
5469 | FREEBUSY;FBTYPE=FREE:19970308T160000Z/PT3H,19970308T200000Z/PT1H, | |
5470 | 19970308T230000Z/19970309T000000Z | |
5471 | ||
5472 | <span class="h5"><h5><a name="section-4.8.2.7">4.8.2.7</a> Time Transparency</h5></span> | |
5473 | ||
5474 | Property Name: TRANSP | |
5475 | ||
5476 | Purpose: This property defines whether an event is transparent or not | |
5477 | to busy time searches. | |
5478 | ||
5479 | Value Type: TEXT | |
5480 | ||
5481 | Property Parameters: Non-standard property parameters can be | |
5482 | specified on this property. | |
5483 | ||
5484 | Conformance: This property can be specified once in a "VEVENT" | |
5485 | calendar component. | |
5486 | ||
5487 | Description: Time Transparency is the characteristic of an event that | |
5488 | determines whether it appears to consume time on a calendar. Events | |
5489 | that consume actual time for the individual or resource associated | |
5490 | ||
5491 | ||
5492 | ||
5493 | <span class="grey">Dawson & Stenerson Standards Track [Page 96]</span> | |
5494 | </pre><pre class="newpage"><a name="page-97" id="page-97" href="#page-97" class="invisible"> </a> | |
5495 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5496 | ||
5497 | ||
5498 | with the calendar SHOULD be recorded as OPAQUE, allowing them to be | |
5499 | detected by free-busy time searches. Other events, which do not take | |
5500 | up the individual's (or resource's) time SHOULD be recorded as | |
5501 | TRANSPARENT, making them invisible to free-busy time searches. | |
5502 | ||
5503 | Format Definition: The property is specified by the following | |
5504 | notation: | |
5505 | ||
5506 | transp = "TRANSP" tranparam ":" transvalue CRLF | |
5507 | ||
5508 | tranparam = *(";" xparam) | |
5509 | ||
5510 | transvalue = "OPAQUE" ;Blocks or opaque on busy time searches. | |
5511 | / "TRANSPARENT" ;Transparent on busy time searches. | |
5512 | ;Default value is OPAQUE | |
5513 | ||
5514 | Example: The following is an example of this property for an event | |
5515 | that is transparent or does not block on free/busy time searches: | |
5516 | ||
5517 | TRANSP:TRANSPARENT | |
5518 | ||
5519 | The following is an example of this property for an event that is | |
5520 | opaque or blocks on free/busy time searches: | |
5521 | ||
5522 | TRANSP:OPAQUE | |
5523 | ||
5524 | <span class="h4"><h4><a name="section-4.8.3">4.8.3</a> Time Zone Component Properties</h4></span> | |
5525 | ||
5526 | The following properties specify time zone information in calendar | |
5527 | components. | |
5528 | ||
5529 | <span class="h5"><h5><a name="section-4.8.3.1">4.8.3.1</a> Time Zone Identifier</h5></span> | |
5530 | ||
5531 | Property Name: TZID | |
5532 | ||
5533 | Purpose: This property specifies the text value that uniquely | |
5534 | identifies the "VTIMEZONE" calendar component. | |
5535 | ||
5536 | Value Type: TEXT | |
5537 | ||
5538 | Property Parameters: Non-standard property parameters can be | |
5539 | specified on this property. | |
5540 | ||
5541 | Conformance: This property MUST be specified in a "VTIMEZONE" | |
5542 | calendar component. | |
5543 | ||
5544 | ||
5545 | ||
5546 | ||
5547 | ||
5548 | ||
5549 | <span class="grey">Dawson & Stenerson Standards Track [Page 97]</span> | |
5550 | </pre><pre class="newpage"><a name="page-98" id="page-98" href="#page-98" class="invisible"> </a> | |
5551 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5552 | ||
5553 | ||
5554 | Description: This is the label by which a time zone calendar | |
5555 | component is referenced by any iCalendar properties whose data type | |
5556 | is either DATE-TIME or TIME and not intended to specify a UTC or a | |
5557 | "floating" time. The presence of the SOLIDUS character (US-ASCII | |
5558 | decimal 47) as a prefix, indicates that this TZID represents an | |
5559 | unique ID in a globally defined time zone registry (when such | |
5560 | registry is defined). | |
5561 | ||
5562 | Note: This document does not define a naming convention for time | |
5563 | zone identifiers. Implementers may want to use the naming | |
5564 | conventions defined in existing time zone specifications such as | |
5565 | the public-domain Olson database [<a href="#ref-TZ" title=""ftp://elsie.nci.nih.gov/pub/"">TZ</a>]. The specification of | |
5566 | globally unique time zone identifiers is not addressed by this | |
5567 | document and is left for future study. | |
5568 | ||
5569 | Format Definition: This property is defined by the following | |
5570 | notation: | |
5571 | ||
5572 | tzid = "TZID" tzidpropparam ":" [<a href="#ref-tzidprefix">tzidprefix</a>] text CRLF | |
5573 | ||
5574 | tzidpropparam = *(";" xparam) | |
5575 | ||
5576 | ;tzidprefix = "/" | |
5577 | ; Defined previously. Just listed here for reader convenience. | |
5578 | ||
5579 | Example: The following are examples of non-globally unique time zone | |
5580 | identifiers: | |
5581 | ||
5582 | TZID:US-Eastern | |
5583 | ||
5584 | TZID:California-Los_Angeles | |
5585 | ||
5586 | The following is an example of a fictitious globally unique time zone | |
5587 | identifier: | |
5588 | ||
5589 | TZID:/US-New_York-New_York | |
5590 | ||
5591 | <span class="h5"><h5><a name="section-4.8.3.2">4.8.3.2</a> Time Zone Name</h5></span> | |
5592 | ||
5593 | Property Name: TZNAME | |
5594 | ||
5595 | Purpose: This property specifies the customary designation for a time | |
5596 | zone description. | |
5597 | ||
5598 | Value Type: TEXT | |
5599 | ||
5600 | Property Parameters: Non-standard and language property parameters | |
5601 | can be specified on this property. | |
5602 | ||
5603 | ||
5604 | ||
5605 | <span class="grey">Dawson & Stenerson Standards Track [Page 98]</span> | |
5606 | </pre><pre class="newpage"><a name="page-99" id="page-99" href="#page-99" class="invisible"> </a> | |
5607 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5608 | ||
5609 | ||
5610 | Conformance: This property can be specified in a "VTIMEZONE" calendar | |
5611 | component. | |
5612 | ||
5613 | Description: This property may be specified in multiple languages; in | |
5614 | order to provide for different language requirements. | |
5615 | ||
5616 | Format Definition: This property is defined by the following | |
5617 | notation: | |
5618 | ||
5619 | tzname = "TZNAME" tznparam ":" text CRLF | |
5620 | ||
5621 | tznparam = *( | |
5622 | ||
5623 | ; the following is optional, | |
5624 | ; but MUST NOT occur more than once | |
5625 | ||
5626 | (";" languageparam) / | |
5627 | ||
5628 | ; the following is optional, | |
5629 | ; and MAY occur more than once | |
5630 | ||
5631 | (";" xparam) | |
5632 | ||
5633 | ) | |
5634 | ||
5635 | Example: The following are example of this property: | |
5636 | ||
5637 | TZNAME:EST | |
5638 | ||
5639 | The following is an example of this property when two different | |
5640 | languages for the time zone name are specified: | |
5641 | ||
5642 | TZNAME;LANGUAGE=en:EST | |
5643 | TZNAME;LANGUAGE=fr-CA:HNE | |
5644 | ||
5645 | <span class="h5"><h5><a name="section-4.8.3.3">4.8.3.3</a> Time Zone Offset From</h5></span> | |
5646 | ||
5647 | Property Name: TZOFFSETFROM | |
5648 | ||
5649 | Purpose: This property specifies the offset which is in use prior to | |
5650 | this time zone observance. | |
5651 | ||
5652 | Value Type: UTC-OFFSET | |
5653 | ||
5654 | Property Parameters: Non-standard property parameters can be | |
5655 | specified on this property. | |
5656 | ||
5657 | ||
5658 | ||
5659 | ||
5660 | ||
5661 | <span class="grey">Dawson & Stenerson Standards Track [Page 99]</span> | |
5662 | </pre><pre class="newpage"><a name="page-100" id="page-100" href="#page-100" class="invisible"> </a> | |
5663 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5664 | ||
5665 | ||
5666 | Conformance: This property MUST be specified in a "VTIMEZONE" | |
5667 | calendar component. | |
5668 | ||
5669 | Description: This property specifies the offset which is in use prior | |
5670 | to this time observance. It is used to calculate the absolute time at | |
5671 | which the transition to a given observance takes place. This property | |
5672 | MUST only be specified in a "VTIMEZONE" calendar component. A | |
5673 | "VTIMEZONE" calendar component MUST include this property. The | |
5674 | property value is a signed numeric indicating the number of hours and | |
5675 | possibly minutes from UTC. Positive numbers represent time zones east | |
5676 | of the prime meridian, or ahead of UTC. Negative numbers represent | |
5677 | time zones west of the prime meridian, or behind UTC. | |
5678 | ||
5679 | Format Definition: The property is defined by the following notation: | |
5680 | ||
5681 | tzoffsetfrom = "TZOFFSETFROM" frmparam ":" utc-offset | |
5682 | CRLF | |
5683 | ||
5684 | frmparam = *(";" xparam) | |
5685 | ||
5686 | Example: The following are examples of this property: | |
5687 | ||
5688 | TZOFFSETFROM:-0500 | |
5689 | ||
5690 | TZOFFSETFROM:+1345 | |
5691 | ||
5692 | <span class="h5"><h5><a name="section-4.8.3.4">4.8.3.4</a> Time Zone Offset To</h5></span> | |
5693 | ||
5694 | Property Name: TZOFFSETTO | |
5695 | ||
5696 | Purpose: This property specifies the offset which is in use in this | |
5697 | time zone observance. | |
5698 | ||
5699 | Value Type: UTC-OFFSET | |
5700 | ||
5701 | Property Parameters: Non-standard property parameters can be | |
5702 | specified on this property. | |
5703 | ||
5704 | Conformance: This property MUST be specified in a "VTIMEZONE" | |
5705 | calendar component. | |
5706 | ||
5707 | Description: This property specifies the offset which is in use in | |
5708 | this time zone observance. It is used to calculate the absolute time | |
5709 | for the new observance. The property value is a signed numeric | |
5710 | indicating the number of hours and possibly minutes from UTC. | |
5711 | Positive numbers represent time zones east of the prime meridian, or | |
5712 | ahead of UTC. Negative numbers represent time zones west of the prime | |
5713 | meridian, or behind UTC. | |
5714 | ||
5715 | ||
5716 | ||
5717 | <span class="grey">Dawson & Stenerson Standards Track [Page 100]</span> | |
5718 | </pre><pre class="newpage"><a name="page-101" id="page-101" href="#page-101" class="invisible"> </a> | |
5719 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5720 | ||
5721 | ||
5722 | Format Definition: The property is defined by the following notation: | |
5723 | ||
5724 | tzoffsetto = "TZOFFSETTO" toparam ":" utc-offset CRLF | |
5725 | ||
5726 | toparam = *(";" xparam) | |
5727 | ||
5728 | Example: The following are examples of this property: | |
5729 | ||
5730 | TZOFFSETTO:-0400 | |
5731 | ||
5732 | TZOFFSETTO:+1245 | |
5733 | ||
5734 | <span class="h5"><h5><a name="section-4.8.3.5">4.8.3.5</a> Time Zone URL</h5></span> | |
5735 | ||
5736 | Property Name: TZURL | |
5737 | ||
5738 | Purpose: The TZURL provides a means for a VTIMEZONE component to | |
5739 | point to a network location that can be used to retrieve an up-to- | |
5740 | date version of itself. | |
5741 | ||
5742 | Value Type: URI | |
5743 | ||
5744 | Property Parameters: Non-standard property parameters can be | |
5745 | specified on this property. | |
5746 | ||
5747 | Conformance: This property can be specified in a "VTIMEZONE" calendar | |
5748 | component. | |
5749 | ||
5750 | Description: The TZURL provides a means for a VTIMEZONE component to | |
5751 | point to a network location that can be used to retrieve an up-to- | |
5752 | date version of itself. This provides a hook to handle changes | |
5753 | government bodies impose upon time zone definitions. Retrieval of | |
5754 | this resource results in an iCalendar object containing a single | |
5755 | VTIMEZONE component and a METHOD property set to PUBLISH. | |
5756 | ||
5757 | Format Definition: The property is defined by the following notation: | |
5758 | ||
5759 | tzurl = "TZURL" tzurlparam ":" uri CRLF | |
5760 | ||
5761 | tzurlparam = *(";" xparam) | |
5762 | ||
5763 | Example: The following is an example of this property: | |
5764 | ||
5765 | TZURL:http://timezones.r.us.net/tz/US-California-Los_Angeles | |
5766 | ||
5767 | ||
5768 | ||
5769 | ||
5770 | ||
5771 | ||
5772 | ||
5773 | <span class="grey">Dawson & Stenerson Standards Track [Page 101]</span> | |
5774 | </pre><pre class="newpage"><a name="page-102" id="page-102" href="#page-102" class="invisible"> </a> | |
5775 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5776 | ||
5777 | ||
5778 | <span class="h4"><h4><a name="section-4.8.4">4.8.4</a> Relationship Component Properties</h4></span> | |
5779 | ||
5780 | The following properties specify relationship information in calendar | |
5781 | components. | |
5782 | ||
5783 | <span class="h5"><h5><a name="section-4.8.4.1">4.8.4.1</a> Attendee</h5></span> | |
5784 | ||
5785 | Property Name: ATTENDEE | |
5786 | ||
5787 | Purpose: The property defines an "Attendee" within a calendar | |
5788 | component. | |
5789 | ||
5790 | Value Type: CAL-ADDRESS | |
5791 | ||
5792 | Property Parameters: Non-standard, language, calendar user type, | |
5793 | group or list membership, participation role, participation status, | |
5794 | RSVP expectation, delegatee, delegator, sent by, common name or | |
5795 | directory entry reference property parameters can be specified on | |
5796 | this property. | |
5797 | ||
5798 | Conformance: This property MUST be specified in an iCalendar object | |
5799 | that specifies a group scheduled calendar entity. This property MUST | |
5800 | NOT be specified in an iCalendar object when publishing the calendar | |
5801 | information (e.g., NOT in an iCalendar object that specifies the | |
5802 | publication of a calendar user's busy time, event, to-do or journal). | |
5803 | This property is not specified in an iCalendar object that specifies | |
5804 | only a time zone definition or that defines calendar entities that | |
5805 | are not group scheduled entities, but are entities only on a single | |
5806 | user's calendar. | |
5807 | ||
5808 | Description: The property MUST only be specified within calendar | |
5809 | components to specify participants, non-participants and the chair of | |
5810 | a group scheduled calendar entity. The property is specified within | |
5811 | an "EMAIL" category of the "VALARM" calendar component to specify an | |
5812 | email address that is to receive the email type of iCalendar alarm. | |
5813 | ||
5814 | The property parameter CN is for the common or displayable name | |
5815 | associated with the calendar address; ROLE, for the intended role | |
5816 | that the attendee will have in the calendar component; PARTSTAT, for | |
5817 | the status of the attendee's participation; RSVP, for indicating | |
5818 | whether the favor of a reply is requested; CUTYPE, to indicate the | |
5819 | type of calendar user; MEMBER, to indicate the groups that the | |
5820 | attendee belongs to; DELEGATED-TO, to indicate the calendar users | |
5821 | that the original request was delegated to; and DELEGATED-FROM, to | |
5822 | indicate whom the request was delegated from; SENT-BY, to indicate | |
5823 | whom is acting on behalf of the ATTENDEE; and DIR, to indicate the | |
5824 | URI that points to the directory information corresponding to the | |
5825 | attendee. These property parameters can be specified on an "ATTENDEE" | |
5826 | ||
5827 | ||
5828 | ||
5829 | <span class="grey">Dawson & Stenerson Standards Track [Page 102]</span> | |
5830 | </pre><pre class="newpage"><a name="page-103" id="page-103" href="#page-103" class="invisible"> </a> | |
5831 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5832 | ||
5833 | ||
5834 | property in either a "VEVENT", "VTODO" or "VJOURNAL" calendar | |
5835 | component. They MUST not be specified in an "ATTENDEE" property in a | |
5836 | "VFREEBUSY" or "VALARM" calendar component. If the LANGUAGE property | |
5837 | parameter is specified, the identified language applies to the CN | |
5838 | parameter. | |
5839 | ||
5840 | A recipient delegated a request MUST inherit the RSVP and ROLE values | |
5841 | from the attendee that delegated the request to them. | |
5842 | ||
5843 | Multiple attendees can be specified by including multiple "ATTENDEE" | |
5844 | properties within the calendar component. | |
5845 | ||
5846 | Format Definition: The property is defined by the following notation: | |
5847 | ||
5848 | attendee = "ATTENDEE" attparam ":" cal-address CRLF | |
5849 | ||
5850 | attparam = *( | |
5851 | ||
5852 | ; the following are optional, | |
5853 | ; but MUST NOT occur more than once | |
5854 | ||
5855 | (";" cutypeparam) / (";"memberparam) / | |
5856 | (";" roleparam) / (";" partstatparam) / | |
5857 | (";" rsvpparam) / (";" deltoparam) / | |
5858 | (";" delfromparam) / (";" sentbyparam) / | |
5859 | (";"cnparam) / (";" dirparam) / | |
5860 | (";" languageparam) / | |
5861 | ||
5862 | ; the following is optional, | |
5863 | ; and MAY occur more than once | |
5864 | ||
5865 | (";" xparam) | |
5866 | ||
5867 | ) | |
5868 | ||
5869 | Example: The following are examples of this property's use for a to- | |
5870 | do: | |
5871 | ||
5872 | ORGANIZER:MAILTO:jsmith@host1.com | |
5873 | ATTENDEE;MEMBER="MAILTO:DEV-GROUP@host2.com": | |
5874 | MAILTO:joecool@host2.com | |
5875 | ATTENDEE;DELEGATED-FROM="MAILTO:immud@host3.com": | |
5876 | MAILTO:ildoit@host1.com | |
5877 | ||
5878 | The following is an example of this property used for specifying | |
5879 | multiple attendees to an event: | |
5880 | ||
5881 | ||
5882 | ||
5883 | ||
5884 | ||
5885 | <span class="grey">Dawson & Stenerson Standards Track [Page 103]</span> | |
5886 | </pre><pre class="newpage"><a name="page-104" id="page-104" href="#page-104" class="invisible"> </a> | |
5887 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5888 | ||
5889 | ||
5890 | ORGANIZER:MAILTO:jsmith@host1.com | |
5891 | ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=TENTATIVE;CN=Henry Cabot | |
5892 | :MAILTO:hcabot@host2.com | |
5893 | ATTENDEE;ROLE=REQ-PARTICIPANT;DELEGATED-FROM="MAILTO:bob@host.com" | |
5894 | ;PARTSTAT=ACCEPTED;CN=Jane Doe:MAILTO:jdoe@host1.com | |
5895 | ||
5896 | The following is an example of this property with a URI to the | |
5897 | directory information associated with the attendee: | |
5898 | ||
5899 | ATTENDEE;CN=John Smith;DIR="ldap://host.com:6666/o=eDABC% | |
5900 | 20Industries,c=3DUS??(cn=3DBJim%20Dolittle)":MAILTO:jimdo@ | |
5901 | host1.com | |
5902 | ||
5903 | The following is an example of this property with "delegatee" and | |
5904 | "delegator" information for an event: | |
5905 | ||
5906 | ORGANIZER;CN=John Smith:MAILTO:jsmith@host.com | |
5907 | ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=TENTATIVE;DELEGATED-FROM= | |
5908 | "MAILTO:iamboss@host2.com";CN=Henry Cabot:MAILTO:hcabot@ | |
5909 | host2.com | |
5910 | ATTENDEE;ROLE=NON-PARTICIPANT;PARTSTAT=DELEGATED;DELEGATED-TO= | |
5911 | "MAILTO:hcabot@host2.com";CN=The Big Cheese:MAILTO:iamboss | |
5912 | @host2.com | |
5913 | ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Jane Doe | |
5914 | :MAILTO:jdoe@host1.com | |
5915 | ||
5916 | Example: The following is an example of this property's use when | |
5917 | another calendar user is acting on behalf of the "Attendee": | |
5918 | ||
5919 | ATTENDEE;SENT-BY=MAILTO:jan_doe@host1.com;CN=John Smith:MAILTO: | |
5920 | jsmith@host1.com | |
5921 | ||
5922 | <span class="h5"><h5><a name="section-4.8.4.2">4.8.4.2</a> Contact</h5></span> | |
5923 | ||
5924 | Property Name: CONTACT | |
5925 | ||
5926 | Purpose: The property is used to represent contact information or | |
5927 | alternately a reference to contact information associated with the | |
5928 | calendar component. | |
5929 | ||
5930 | Value Type: TEXT | |
5931 | ||
5932 | Property Parameters: Non-standard, alternate text representation and | |
5933 | language property parameters can be specified on this property. | |
5934 | ||
5935 | Conformance: The property can be specified in a "VEVENT", "VTODO", | |
5936 | "VJOURNAL" or "VFREEBUSY" calendar component. | |
5937 | ||
5938 | ||
5939 | ||
5940 | ||
5941 | <span class="grey">Dawson & Stenerson Standards Track [Page 104]</span> | |
5942 | </pre><pre class="newpage"><a name="page-105" id="page-105" href="#page-105" class="invisible"> </a> | |
5943 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
5944 | ||
5945 | ||
5946 | Description: The property value consists of textual contact | |
5947 | information. An alternative representation for the property value can | |
5948 | also be specified that refers to a URI pointing to an alternate form, | |
5949 | such as a vCard [<a href="http://tools.ietf.org/html/rfc2426" title=""vCard MIME Directory Profile"">RFC 2426</a>], for the contact information. | |
5950 | ||
5951 | Format Definition: The property is defined by the following notation: | |
5952 | ||
5953 | contact = "CONTACT" contparam ":" text CRLF | |
5954 | ||
5955 | contparam = *( | |
5956 | ; the following are optional, | |
5957 | ; but MUST NOT occur more than once | |
5958 | ||
5959 | (";" altrepparam) / (";" languageparam) / | |
5960 | ||
5961 | ; the following is optional, | |
5962 | ; and MAY occur more than once | |
5963 | ||
5964 | (";" xparam) | |
5965 | ||
5966 | ) | |
5967 | ||
5968 | Example: The following is an example of this property referencing | |
5969 | textual contact information: | |
5970 | ||
5971 | CONTACT:Jim Dolittle\, ABC Industries\, +1-919-555-1234 | |
5972 | ||
5973 | The following is an example of this property with an alternate | |
5974 | representation of a LDAP URI to a directory entry containing the | |
5975 | contact information: | |
5976 | ||
5977 | CONTACT;ALTREP="ldap://host.com:6666/o=3DABC%20Industries\, | |
5978 | c=3DUS??(cn=3DBJim%20Dolittle)":Jim Dolittle\, ABC Industries\, | |
5979 | +1-919-555-1234 | |
5980 | ||
5981 | The following is an example of this property with an alternate | |
5982 | representation of a MIME body part containing the contact | |
5983 | information, such as a vCard [<a href="http://tools.ietf.org/html/rfc2426" title=""vCard MIME Directory Profile"">RFC 2426</a>] embedded in a [<a href="#ref-MIME-DIR">MIME-DIR</a>] | |
5984 | content-type: | |
5985 | ||
5986 | CONTACT;ALTREP="CID=<part3.msg970930T083000SILVER@host.com>":Jim | |
5987 | Dolittle\, ABC Industries\, +1-919-555-1234 | |
5988 | ||
5989 | The following is an example of this property referencing a network | |
5990 | resource, such as a vCard [<a href="http://tools.ietf.org/html/rfc2426" title=""vCard MIME Directory Profile"">RFC 2426</a>] object containing the contact | |
5991 | information: | |
5992 | ||
5993 | ||
5994 | ||
5995 | ||
5996 | ||
5997 | <span class="grey">Dawson & Stenerson Standards Track [Page 105]</span> | |
5998 | </pre><pre class="newpage"><a name="page-106" id="page-106" href="#page-106" class="invisible"> </a> | |
5999 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6000 | ||
6001 | ||
6002 | CONTACT;ALTREP="http://host.com/pdi/jdoe.vcf":Jim | |
6003 | Dolittle\, ABC Industries\, +1-919-555-1234 | |
6004 | ||
6005 | <span class="h5"><h5><a name="section-4.8.4.3">4.8.4.3</a> Organizer</h5></span> | |
6006 | ||
6007 | Property Name: ORGANIZER | |
6008 | ||
6009 | Purpose: The property defines the organizer for a calendar component. | |
6010 | ||
6011 | Value Type: CAL-ADDRESS | |
6012 | ||
6013 | Property Parameters: Non-standard, language, common name, directory | |
6014 | entry reference, sent by property parameters can be specified on this | |
6015 | property. | |
6016 | ||
6017 | Conformance: This property MUST be specified in an iCalendar object | |
6018 | that specifies a group scheduled calendar entity. This property MUST | |
6019 | be specified in an iCalendar object that specifies the publication of | |
6020 | a calendar user's busy time. This property MUST NOT be specified in | |
6021 | an iCalendar object that specifies only a time zone definition or | |
6022 | that defines calendar entities that are not group scheduled entities, | |
6023 | but are entities only on a single user's calendar. | |
6024 | ||
6025 | Description: The property is specified within the "VEVENT", "VTODO", | |
6026 | "VJOURNAL calendar components to specify the organizer of a group | |
6027 | scheduled calendar entity. The property is specified within the | |
6028 | "VFREEBUSY" calendar component to specify the calendar user | |
6029 | requesting the free or busy time. When publishing a "VFREEBUSY" | |
6030 | calendar component, the property is used to specify the calendar that | |
6031 | the published busy time came from. | |
6032 | ||
6033 | The property has the property parameters CN, for specifying the | |
6034 | common or display name associated with the "Organizer", DIR, for | |
6035 | specifying a pointer to the directory information associated with the | |
6036 | "Organizer", SENT-BY, for specifying another calendar user that is | |
6037 | acting on behalf of the "Organizer". The non-standard parameters may | |
6038 | also be specified on this property. If the LANGUAGE property | |
6039 | parameter is specified, the identified language applies to the CN | |
6040 | parameter value. | |
6041 | ||
6042 | Format Definition: The property is defined by the following notation: | |
6043 | ||
6044 | organizer = "ORGANIZER" orgparam ":" | |
6045 | cal-address CRLF | |
6046 | ||
6047 | orgparam = *( | |
6048 | ||
6049 | ; the following are optional, | |
6050 | ||
6051 | ||
6052 | ||
6053 | <span class="grey">Dawson & Stenerson Standards Track [Page 106]</span> | |
6054 | </pre><pre class="newpage"><a name="page-107" id="page-107" href="#page-107" class="invisible"> </a> | |
6055 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6056 | ||
6057 | ||
6058 | ; but MUST NOT occur more than once | |
6059 | ||
6060 | (";" cnparam) / (";" dirparam) / (";" sentbyparam) / | |
6061 | (";" languageparam) / | |
6062 | ||
6063 | ; the following is optional, | |
6064 | ; and MAY occur more than once | |
6065 | ||
6066 | (";" xparam) | |
6067 | ||
6068 | ) | |
6069 | ||
6070 | Example: The following is an example of this property: | |
6071 | ||
6072 | ORGANIZER;CN=John Smith:MAILTO:jsmith@host1.com | |
6073 | ||
6074 | The following is an example of this property with a pointer to the | |
6075 | directory information associated with the organizer: | |
6076 | ||
6077 | ORGANIZER;CN=JohnSmith;DIR="ldap://host.com:6666/o=3DDC%20Associ | |
6078 | ates,c=3DUS??(cn=3DJohn%20Smith)":MAILTO:jsmith@host1.com | |
6079 | ||
6080 | The following is an example of this property used by another calendar | |
6081 | user who is acting on behalf of the organizer, with responses | |
6082 | intended to be sent back to the organizer, not the other calendar | |
6083 | user: | |
6084 | ||
6085 | ORGANIZER;SENT-BY="MAILTO:jane_doe@host.com": | |
6086 | MAILTO:jsmith@host1.com | |
6087 | ||
6088 | <span class="h5"><h5><a name="section-4.8.4.4">4.8.4.4</a> Recurrence ID</h5></span> | |
6089 | ||
6090 | Property Name: RECURRENCE-ID | |
6091 | ||
6092 | Purpose: This property is used in conjunction with the "UID" and | |
6093 | "SEQUENCE" property to identify a specific instance of a recurring | |
6094 | "VEVENT", "VTODO" or "VJOURNAL" calendar component. The property | |
6095 | value is the effective value of the "DTSTART" property of the | |
6096 | recurrence instance. | |
6097 | ||
6098 | Value Type: The default value type for this property is DATE-TIME. | |
6099 | The time format can be any of the valid forms defined for a DATE-TIME | |
6100 | value type. See DATE-TIME value type definition for specific | |
6101 | interpretations of the various forms. The value type can be set to | |
6102 | DATE. | |
6103 | ||
6104 | ||
6105 | ||
6106 | ||
6107 | ||
6108 | ||
6109 | <span class="grey">Dawson & Stenerson Standards Track [Page 107]</span> | |
6110 | </pre><pre class="newpage"><a name="page-108" id="page-108" href="#page-108" class="invisible"> </a> | |
6111 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6112 | ||
6113 | ||
6114 | Property Parameters: Non-standard property, value data type, time | |
6115 | zone identifier and recurrence identifier range parameters can be | |
6116 | specified on this property. | |
6117 | ||
6118 | Conformance: This property can be specified in an iCalendar object | |
6119 | containing a recurring calendar component. | |
6120 | ||
6121 | Description: The full range of calendar components specified by a | |
6122 | recurrence set is referenced by referring to just the "UID" property | |
6123 | value corresponding to the calendar component. The "RECURRENCE-ID" | |
6124 | property allows the reference to an individual instance within the | |
6125 | recurrence set. | |
6126 | ||
6127 | If the value of the "DTSTART" property is a DATE type value, then the | |
6128 | value MUST be the calendar date for the recurrence instance. | |
6129 | ||
6130 | The date/time value is set to the time when the original recurrence | |
6131 | instance would occur; meaning that if the intent is to change a | |
6132 | Friday meeting to Thursday, the date/time is still set to the | |
6133 | original Friday meeting. | |
6134 | ||
6135 | The "RECURRENCE-ID" property is used in conjunction with the "UID" | |
6136 | and "SEQUENCE" property to identify a particular instance of a | |
6137 | recurring event, to-do or journal. For a given pair of "UID" and | |
6138 | "SEQUENCE" property values, the "RECURRENCE-ID" value for a | |
6139 | recurrence instance is fixed. When the definition of the recurrence | |
6140 | set for a calendar component changes, and hence the "SEQUENCE" | |
6141 | property value changes, the "RECURRENCE-ID" for a given recurrence | |
6142 | instance might also change.The "RANGE" parameter is used to specify | |
6143 | the effective range of recurrence instances from the instance | |
6144 | specified by the "RECURRENCE-ID" property value. The default value | |
6145 | for the range parameter is the single recurrence instance only. The | |
6146 | value can also be "THISANDPRIOR" to indicate a range defined by the | |
6147 | given recurrence instance and all prior instances or the value can be | |
6148 | "THISANDFUTURE" to indicate a range defined by the given recurrence | |
6149 | instance and all subsequent instances. | |
6150 | ||
6151 | Format Definition: The property is defined by the following notation: | |
6152 | ||
6153 | recurid = "RECURRENCE-ID" ridparam ":" ridval CRLF | |
6154 | ||
6155 | ridparam = *( | |
6156 | ||
6157 | ; the following are optional, | |
6158 | ; but MUST NOT occur more than once | |
6159 | ||
6160 | (";" "VALUE" "=" ("DATE-TIME" / "DATE)) / | |
6161 | (";" tzidparam) / (";" rangeparam) / | |
6162 | ||
6163 | ||
6164 | ||
6165 | <span class="grey">Dawson & Stenerson Standards Track [Page 108]</span> | |
6166 | </pre><pre class="newpage"><a name="page-109" id="page-109" href="#page-109" class="invisible"> </a> | |
6167 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6168 | ||
6169 | ||
6170 | ; the following is optional, | |
6171 | ; and MAY occur more than once | |
6172 | ||
6173 | (";" xparam) | |
6174 | ||
6175 | ) | |
6176 | ||
6177 | ridval = date-time / date | |
6178 | ;Value MUST match value type | |
6179 | ||
6180 | Example: The following are examples of this property: | |
6181 | ||
6182 | RECURRENCE-ID;VALUE=DATE:19960401 | |
6183 | ||
6184 | RECURRENCE-ID;RANGE=THISANDFUTURE:19960120T120000Z | |
6185 | ||
6186 | <span class="h5"><h5><a name="section-4.8.4.5">4.8.4.5</a> Related To</h5></span> | |
6187 | ||
6188 | Property Name: RELATED-TO | |
6189 | ||
6190 | Purpose: The property is used to represent a relationship or | |
6191 | reference between one calendar component and another. | |
6192 | ||
6193 | Value Type: TEXT | |
6194 | ||
6195 | Property Parameters: Non-standard and relationship type property | |
6196 | parameters can be specified on this property. | |
6197 | ||
6198 | Conformance: The property can be specified one or more times in the | |
6199 | "VEVENT", "VTODO" or "VJOURNAL" calendar components. | |
6200 | ||
6201 | Description: The property value consists of the persistent, globally | |
6202 | unique identifier of another calendar component. This value would be | |
6203 | represented in a calendar component by the "UID" property. | |
6204 | ||
6205 | By default, the property value points to another calendar component | |
6206 | that has a PARENT relationship to the referencing object. The | |
6207 | "RELTYPE" property parameter is used to either explicitly state the | |
6208 | default PARENT relationship type to the referenced calendar component | |
6209 | or to override the default PARENT relationship type and specify | |
6210 | either a CHILD or SIBLING relationship. The PARENT relationship | |
6211 | indicates that the calendar component is a subordinate of the | |
6212 | referenced calendar component. The CHILD relationship indicates that | |
6213 | the calendar component is a superior of the referenced calendar | |
6214 | component. The SIBLING relationship indicates that the calendar | |
6215 | component is a peer of the referenced calendar component. | |
6216 | ||
6217 | ||
6218 | ||
6219 | ||
6220 | ||
6221 | <span class="grey">Dawson & Stenerson Standards Track [Page 109]</span> | |
6222 | </pre><pre class="newpage"><a name="page-110" id="page-110" href="#page-110" class="invisible"> </a> | |
6223 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6224 | ||
6225 | ||
6226 | Changes to a calendar component referenced by this property can have | |
6227 | an implicit impact on the related calendar component. For example, if | |
6228 | a group event changes its start or end date or time, then the | |
6229 | related, dependent events will need to have their start and end dates | |
6230 | changed in a corresponding way. Similarly, if a PARENT calendar | |
6231 | component is canceled or deleted, then there is an implied impact to | |
6232 | the related CHILD calendar components. This property is intended only | |
6233 | to provide information on the relationship of calendar components. It | |
6234 | is up to the target calendar system to maintain any property | |
6235 | implications of this relationship. | |
6236 | ||
6237 | Format Definition: The property is defined by the following notation: | |
6238 | ||
6239 | related = "RELATED-TO" [<a href="#ref-relparam">relparam</a>] ":" text CRLF | |
6240 | ||
6241 | relparam = *( | |
6242 | ||
6243 | ; the following is optional, | |
6244 | ; but MUST NOT occur more than once | |
6245 | ||
6246 | (";" reltypeparam) / | |
6247 | ||
6248 | ; the following is optional, | |
6249 | ; and MAY occur more than once | |
6250 | ||
6251 | (";" xparm) | |
6252 | ||
6253 | ) | |
6254 | ||
6255 | The following is an example of this property: | |
6256 | ||
6257 | RELATED-TO:<jsmith.part7.19960817T083000.xyzMail@host3.com> | |
6258 | ||
6259 | RELATED-TO:<19960401-080045-4000F192713-0052@host1.com> | |
6260 | ||
6261 | <span class="h5"><h5><a name="section-4.8.4.6">4.8.4.6</a> Uniform Resource Locator</h5></span> | |
6262 | ||
6263 | Property Name: URL | |
6264 | ||
6265 | Purpose: This property defines a Uniform Resource Locator (URL) | |
6266 | associated with the iCalendar object. | |
6267 | ||
6268 | Value Type: URI | |
6269 | ||
6270 | Property Parameters: Non-standard property parameters can be | |
6271 | specified on this property. | |
6272 | ||
6273 | ||
6274 | ||
6275 | ||
6276 | ||
6277 | <span class="grey">Dawson & Stenerson Standards Track [Page 110]</span> | |
6278 | </pre><pre class="newpage"><a name="page-111" id="page-111" href="#page-111" class="invisible"> </a> | |
6279 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6280 | ||
6281 | ||
6282 | Conformance: This property can be specified once in the "VEVENT", | |
6283 | "VTODO", "VJOURNAL" or "VFREEBUSY" calendar components. | |
6284 | ||
6285 | Description: This property may be used in a calendar component to | |
6286 | convey a location where a more dynamic rendition of the calendar | |
6287 | information associated with the calendar component can be found. This | |
6288 | memo does not attempt to standardize the form of the URI, nor the | |
6289 | format of the resource pointed to by the property value. If the URL | |
6290 | property and Content-Location MIME header are both specified, they | |
6291 | MUST point to the same resource. | |
6292 | ||
6293 | Format Definition: The property is defined by the following notation: | |
6294 | ||
6295 | url = "URL" urlparam ":" uri CRLF | |
6296 | ||
6297 | urlparam = *(";" xparam) | |
6298 | ||
6299 | Example: The following is an example of this property: | |
6300 | ||
6301 | URL:http://abc.com/pub/calendars/jsmith/mytime.ics | |
6302 | ||
6303 | <span class="h5"><h5><a name="section-4.8.4.7">4.8.4.7</a> Unique Identifier</h5></span> | |
6304 | ||
6305 | Property Name: UID | |
6306 | ||
6307 | Purpose: This property defines the persistent, globally unique | |
6308 | identifier for the calendar component. | |
6309 | ||
6310 | Value Type: TEXT | |
6311 | ||
6312 | Property Parameters: Non-standard property parameters can be | |
6313 | specified on this property. | |
6314 | ||
6315 | Conformance: The property MUST be specified in the "VEVENT", "VTODO", | |
6316 | "VJOURNAL" or "VFREEBUSY" calendar components. | |
6317 | ||
6318 | Description: The UID itself MUST be a globally unique identifier. The | |
6319 | generator of the identifier MUST guarantee that the identifier is | |
6320 | unique. There are several algorithms that can be used to accomplish | |
6321 | this. The identifier is RECOMMENDED to be the identical syntax to the | |
6322 | [<a href="http://tools.ietf.org/html/rfc822" title=""Standard for the Format of ARPA Internet Text Messages"">RFC 822</a>] addr-spec. A good method to assure uniqueness is to put the | |
6323 | domain name or a domain literal IP address of the host on which the | |
6324 | identifier was created on the right hand side of the "@", and on the | |
6325 | left hand side, put a combination of the current calendar date and | |
6326 | time of day (i.e., formatted in as a DATE-TIME value) along with some | |
6327 | other currently unique (perhaps sequential) identifier available on | |
6328 | the system (for example, a process id number). Using a date/time | |
6329 | value on the left hand side and a domain name or domain literal on | |
6330 | ||
6331 | ||
6332 | ||
6333 | <span class="grey">Dawson & Stenerson Standards Track [Page 111]</span> | |
6334 | </pre><pre class="newpage"><a name="page-112" id="page-112" href="#page-112" class="invisible"> </a> | |
6335 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6336 | ||
6337 | ||
6338 | the right hand side makes it possible to guarantee uniqueness since | |
6339 | no two hosts should be using the same domain name or IP address at | |
6340 | the same time. Though other algorithms will work, it is RECOMMENDED | |
6341 | that the right hand side contain some domain identifier (either of | |
6342 | the host itself or otherwise) such that the generator of the message | |
6343 | identifier can guarantee the uniqueness of the left hand side within | |
6344 | the scope of that domain. | |
6345 | ||
6346 | This is the method for correlating scheduling messages with the | |
6347 | referenced "VEVENT", "VTODO", or "VJOURNAL" calendar component. | |
6348 | ||
6349 | The full range of calendar components specified by a recurrence set | |
6350 | is referenced by referring to just the "UID" property value | |
6351 | corresponding to the calendar component. The "RECURRENCE-ID" property | |
6352 | allows the reference to an individual instance within the recurrence | |
6353 | set. | |
6354 | ||
6355 | This property is an important method for group scheduling | |
6356 | applications to match requests with later replies, modifications or | |
6357 | deletion requests. Calendaring and scheduling applications MUST | |
6358 | generate this property in "VEVENT", "VTODO" and "VJOURNAL" calendar | |
6359 | components to assure interoperability with other group scheduling | |
6360 | applications. This identifier is created by the calendar system that | |
6361 | generates an iCalendar object. | |
6362 | ||
6363 | Implementations MUST be able to receive and persist values of at | |
6364 | least 255 characters for this property. | |
6365 | ||
6366 | Format Definition: The property is defined by the following notation: | |
6367 | ||
6368 | uid = "UID" uidparam ":" text CRLF | |
6369 | ||
6370 | uidparam = *(";" xparam) | |
6371 | ||
6372 | Example: The following is an example of this property: | |
6373 | ||
6374 | UID:19960401T080045Z-4000F192713-0052@host1.com | |
6375 | ||
6376 | <span class="h4"><h4><a name="section-4.8.5">4.8.5</a> Recurrence Component Properties</h4></span> | |
6377 | ||
6378 | The following properties specify recurrence information in calendar | |
6379 | components. | |
6380 | ||
6381 | <span class="h5"><h5><a name="section-4.8.5.1">4.8.5.1</a> Exception Date/Times</h5></span> | |
6382 | ||
6383 | Property Name: EXDATE | |
6384 | ||
6385 | ||
6386 | ||
6387 | ||
6388 | ||
6389 | <span class="grey">Dawson & Stenerson Standards Track [Page 112]</span> | |
6390 | </pre><pre class="newpage"><a name="page-113" id="page-113" href="#page-113" class="invisible"> </a> | |
6391 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6392 | ||
6393 | ||
6394 | Purpose: This property defines the list of date/time exceptions for a | |
6395 | recurring calendar component. | |
6396 | ||
6397 | Value Type: The default value type for this property is DATE-TIME. | |
6398 | The value type can be set to DATE. | |
6399 | ||
6400 | Property Parameters: Non-standard, value data type and time zone | |
6401 | identifier property parameters can be specified on this property. | |
6402 | ||
6403 | Conformance: This property can be specified in an iCalendar object | |
6404 | that includes a recurring calendar component. | |
6405 | ||
6406 | Description: The exception dates, if specified, are used in computing | |
6407 | the recurrence set. The recurrence set is the complete set of | |
6408 | recurrence instances for a calendar component. The recurrence set is | |
6409 | generated by considering the initial "DTSTART" property along with | |
6410 | the "RRULE", "RDATE", "EXDATE" and "EXRULE" properties contained | |
6411 | within the iCalendar object. The "DTSTART" property defines the first | |
6412 | instance in the recurrence set. Multiple instances of the "RRULE" and | |
6413 | "EXRULE" properties can also be specified to define more | |
6414 | sophisticated recurrence sets. The final recurrence set is generated | |
6415 | by gathering all of the start date-times generated by any of the | |
6416 | specified "RRULE" and "RDATE" properties, and then excluding any | |
6417 | start date and times which fall within the union of start date and | |
6418 | times generated by any specified "EXRULE" and "EXDATE" properties. | |
6419 | This implies that start date and times within exclusion related | |
6420 | properties (i.e., "EXDATE" and "EXRULE") take precedence over those | |
6421 | specified by inclusion properties (i.e., "RDATE" and "RRULE"). Where | |
6422 | duplicate instances are generated by the "RRULE" and "RDATE" | |
6423 | properties, only one recurrence is considered. Duplicate instances | |
6424 | are ignored. | |
6425 | ||
6426 | The "EXDATE" property can be used to exclude the value specified in | |
6427 | "DTSTART". However, in such cases the original "DTSTART" date MUST | |
6428 | still be maintained by the calendaring and scheduling system because | |
6429 | the original "DTSTART" value has inherent usage dependencies by other | |
6430 | properties such as the "RECURRENCE-ID". | |
6431 | ||
6432 | Format Definition: The property is defined by the following notation: | |
6433 | ||
6434 | exdate = "EXDATE" exdtparam ":" exdtval *("," exdtval) CRLF | |
6435 | ||
6436 | exdtparam = *( | |
6437 | ||
6438 | ; the following are optional, | |
6439 | ; but MUST NOT occur more than once | |
6440 | ||
6441 | (";" "VALUE" "=" ("DATE-TIME" / "DATE")) / | |
6442 | ||
6443 | ||
6444 | ||
6445 | <span class="grey">Dawson & Stenerson Standards Track [Page 113]</span> | |
6446 | </pre><pre class="newpage"><a name="page-114" id="page-114" href="#page-114" class="invisible"> </a> | |
6447 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6448 | ||
6449 | ||
6450 | (";" tzidparam) / | |
6451 | ||
6452 | ; the following is optional, | |
6453 | ; and MAY occur more than once | |
6454 | ||
6455 | (";" xparam) | |
6456 | ||
6457 | ) | |
6458 | ||
6459 | exdtval = date-time / date | |
6460 | ;Value MUST match value type | |
6461 | ||
6462 | Example: The following is an example of this property: | |
6463 | ||
6464 | EXDATE:19960402T010000Z,19960403T010000Z,19960404T010000Z | |
6465 | ||
6466 | <span class="h5"><h5><a name="section-4.8.5.2">4.8.5.2</a> Exception Rule</h5></span> | |
6467 | ||
6468 | Property Name: EXRULE | |
6469 | ||
6470 | Purpose: This property defines a rule or repeating pattern for an | |
6471 | exception to a recurrence set. | |
6472 | ||
6473 | Value Type: RECUR | |
6474 | ||
6475 | Property Parameters: Non-standard property parameters can be | |
6476 | specified on this property. | |
6477 | ||
6478 | Conformance: This property can be specified in "VEVENT", "VTODO" or | |
6479 | "VJOURNAL" calendar components. | |
6480 | ||
6481 | Description: The exception rule, if specified, is used in computing | |
6482 | the recurrence set. The recurrence set is the complete set of | |
6483 | recurrence instances for a calendar component. The recurrence set is | |
6484 | generated by considering the initial "DTSTART" property along with | |
6485 | the "RRULE", "RDATE", "EXDATE" and "EXRULE" properties contained | |
6486 | within the iCalendar object. The "DTSTART" defines the first instance | |
6487 | in the recurrence set. Multiple instances of the "RRULE" and "EXRULE" | |
6488 | properties can also be specified to define more sophisticated | |
6489 | recurrence sets. The final recurrence set is generated by gathering | |
6490 | all of the start date-times generated by any of the specified "RRULE" | |
6491 | and "RDATE" properties, and excluding any start date and times which | |
6492 | fall within the union of start date and times generated by any | |
6493 | specified "EXRULE" and "EXDATE" properties. This implies that start | |
6494 | date and times within exclusion related properties (i.e., "EXDATE" | |
6495 | and "EXRULE") take precedence over those specified by inclusion | |
6496 | ||
6497 | ||
6498 | ||
6499 | ||
6500 | ||
6501 | <span class="grey">Dawson & Stenerson Standards Track [Page 114]</span> | |
6502 | </pre><pre class="newpage"><a name="page-115" id="page-115" href="#page-115" class="invisible"> </a> | |
6503 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6504 | ||
6505 | ||
6506 | properties (i.e., "RDATE" and "RRULE"). Where duplicate instances are | |
6507 | generated by the "RRULE" and "RDATE" properties, only one recurrence | |
6508 | is considered. Duplicate instances are ignored. | |
6509 | ||
6510 | The "EXRULE" property can be used to exclude the value specified in | |
6511 | "DTSTART". However, in such cases the original "DTSTART" date MUST | |
6512 | still be maintained by the calendaring and scheduling system because | |
6513 | the original "DTSTART" value has inherent usage dependencies by other | |
6514 | properties such as the "RECURRENCE-ID". | |
6515 | ||
6516 | Format Definition: The property is defined by the following notation: | |
6517 | ||
6518 | exrule = "EXRULE" exrparam ":" recur CRLF | |
6519 | ||
6520 | exrparam = *(";" xparam) | |
6521 | ||
6522 | Example: The following are examples of this property. Except every | |
6523 | other week, on Tuesday and Thursday for 4 occurrences: | |
6524 | ||
6525 | EXRULE:FREQ=WEEKLY;COUNT=4;INTERVAL=2;BYDAY=TU,TH | |
6526 | ||
6527 | Except daily for 10 occurrences: | |
6528 | ||
6529 | EXRULE:FREQ=DAILY;COUNT=10 | |
6530 | ||
6531 | Except yearly in June and July for 8 occurrences: | |
6532 | ||
6533 | EXRULE:FREQ=YEARLY;COUNT=8;BYMONTH=6,7 | |
6534 | ||
6535 | <span class="h5"><h5><a name="section-4.8.5.3">4.8.5.3</a> Recurrence Date/Times</h5></span> | |
6536 | ||
6537 | Property Name: RDATE | |
6538 | ||
6539 | Purpose: This property defines the list of date/times for a | |
6540 | recurrence set. | |
6541 | ||
6542 | Value Type: The default value type for this property is DATE-TIME. | |
6543 | The value type can be set to DATE or PERIOD. | |
6544 | ||
6545 | Property Parameters: Non-standard, value data type and time zone | |
6546 | identifier property parameters can be specified on this property. | |
6547 | ||
6548 | Conformance: The property can be specified in "VEVENT", "VTODO", | |
6549 | "VJOURNAL" or "VTIMEZONE" calendar components. | |
6550 | ||
6551 | ||
6552 | ||
6553 | ||
6554 | ||
6555 | ||
6556 | ||
6557 | <span class="grey">Dawson & Stenerson Standards Track [Page 115]</span> | |
6558 | </pre><pre class="newpage"><a name="page-116" id="page-116" href="#page-116" class="invisible"> </a> | |
6559 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6560 | ||
6561 | ||
6562 | Description: This property can appear along with the "RRULE" property | |
6563 | to define an aggregate set of repeating occurrences. When they both | |
6564 | appear in an iCalendar object, the recurring events are defined by | |
6565 | the union of occurrences defined by both the "RDATE" and "RRULE". | |
6566 | ||
6567 | The recurrence dates, if specified, are used in computing the | |
6568 | recurrence set. The recurrence set is the complete set of recurrence | |
6569 | instances for a calendar component. The recurrence set is generated | |
6570 | by considering the initial "DTSTART" property along with the "RRULE", | |
6571 | "RDATE", "EXDATE" and "EXRULE" properties contained within the | |
6572 | iCalendar object. The "DTSTART" property defines the first instance | |
6573 | in the recurrence set. Multiple instances of the "RRULE" and "EXRULE" | |
6574 | properties can also be specified to define more sophisticated | |
6575 | recurrence sets. The final recurrence set is generated by gathering | |
6576 | all of the start date/times generated by any of the specified "RRULE" | |
6577 | and "RDATE" properties, and excluding any start date/times which fall | |
6578 | within the union of start date/times generated by any specified | |
6579 | "EXRULE" and "EXDATE" properties. This implies that start date/times | |
6580 | within exclusion related properties (i.e., "EXDATE" and "EXRULE") | |
6581 | take precedence over those specified by inclusion properties (i.e., | |
6582 | "RDATE" and "RRULE"). Where duplicate instances are generated by the | |
6583 | "RRULE" and "RDATE" properties, only one recurrence is considered. | |
6584 | Duplicate instances are ignored. | |
6585 | ||
6586 | Format Definition: The property is defined by the following notation: | |
6587 | ||
6588 | rdate = "RDATE" rdtparam ":" rdtval *("," rdtval) CRLF | |
6589 | ||
6590 | rdtparam = *( | |
6591 | ||
6592 | ; the following are optional, | |
6593 | ; but MUST NOT occur more than once | |
6594 | ||
6595 | (";" "VALUE" "=" ("DATE-TIME" / "DATE" / "PERIOD")) / | |
6596 | (";" tzidparam) / | |
6597 | ||
6598 | ; the following is optional, | |
6599 | ; and MAY occur more than once | |
6600 | ||
6601 | (";" xparam) | |
6602 | ||
6603 | ) | |
6604 | ||
6605 | rdtval = date-time / date / period | |
6606 | ;Value MUST match value type | |
6607 | ||
6608 | Example: The following are examples of this property: | |
6609 | ||
6610 | ||
6611 | ||
6612 | ||
6613 | <span class="grey">Dawson & Stenerson Standards Track [Page 116]</span> | |
6614 | </pre><pre class="newpage"><a name="page-117" id="page-117" href="#page-117" class="invisible"> </a> | |
6615 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6616 | ||
6617 | ||
6618 | RDATE:19970714T123000Z | |
6619 | ||
6620 | RDATE;TZID=US-EASTERN:19970714T083000 | |
6621 | ||
6622 | RDATE;VALUE=PERIOD:19960403T020000Z/19960403T040000Z, | |
6623 | 19960404T010000Z/PT3H | |
6624 | ||
6625 | RDATE;VALUE=DATE:19970101,19970120,19970217,19970421 | |
6626 | 19970526,19970704,19970901,19971014,19971128,19971129,19971225 | |
6627 | ||
6628 | <span class="h5"><h5><a name="section-4.8.5.4">4.8.5.4</a> Recurrence Rule</h5></span> | |
6629 | ||
6630 | Property Name: RRULE | |
6631 | ||
6632 | Purpose: This property defines a rule or repeating pattern for | |
6633 | recurring events, to-dos, or time zone definitions. | |
6634 | ||
6635 | Value Type: RECUR | |
6636 | ||
6637 | Property Parameters: Non-standard property parameters can be | |
6638 | specified on this property. | |
6639 | ||
6640 | Conformance: This property can be specified one or more times in | |
6641 | recurring "VEVENT", "VTODO" and "VJOURNAL" calendar components. It | |
6642 | can also be specified once in each STANDARD or DAYLIGHT sub-component | |
6643 | of the "VTIMEZONE" calendar component. | |
6644 | ||
6645 | Description: The recurrence rule, if specified, is used in computing | |
6646 | the recurrence set. The recurrence set is the complete set of | |
6647 | recurrence instances for a calendar component. The recurrence set is | |
6648 | generated by considering the initial "DTSTART" property along with | |
6649 | the "RRULE", "RDATE", "EXDATE" and "EXRULE" properties contained | |
6650 | within the iCalendar object. The "DTSTART" property defines the first | |
6651 | instance in the recurrence set. Multiple instances of the "RRULE" and | |
6652 | "EXRULE" properties can also be specified to define more | |
6653 | sophisticated recurrence sets. The final recurrence set is generated | |
6654 | by gathering all of the start date/times generated by any of the | |
6655 | specified "RRULE" and "RDATE" properties, and excluding any start | |
6656 | date/times which fall within the union of start date/times generated | |
6657 | by any specified "EXRULE" and "EXDATE" properties. This implies that | |
6658 | start date/times within exclusion related properties (i.e., "EXDATE" | |
6659 | and "EXRULE") take precedence over those specified by inclusion | |
6660 | properties (i.e., "RDATE" and "RRULE"). Where duplicate instances are | |
6661 | generated by the "RRULE" and "RDATE" properties, only one recurrence | |
6662 | is considered. Duplicate instances are ignored. | |
6663 | ||
6664 | ||
6665 | ||
6666 | ||
6667 | ||
6668 | ||
6669 | <span class="grey">Dawson & Stenerson Standards Track [Page 117]</span> | |
6670 | </pre><pre class="newpage"><a name="page-118" id="page-118" href="#page-118" class="invisible"> </a> | |
6671 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6672 | ||
6673 | ||
6674 | The "DTSTART" and "DTEND" property pair or "DTSTART" and "DURATION" | |
6675 | property pair, specified within the iCalendar object defines the | |
6676 | first instance of the recurrence. When used with a recurrence rule, | |
6677 | the "DTSTART" and "DTEND" properties MUST be specified in local time | |
6678 | and the appropriate set of "VTIMEZONE" calendar components MUST be | |
6679 | included. For detail on the usage of the "VTIMEZONE" calendar | |
6680 | component, see the "VTIMEZONE" calendar component definition. | |
6681 | ||
6682 | Any duration associated with the iCalendar object applies to all | |
6683 | members of the generated recurrence set. Any modified duration for | |
6684 | specific recurrences MUST be explicitly specified using the "RDATE" | |
6685 | property. | |
6686 | ||
6687 | Format Definition: This property is defined by the following | |
6688 | notation: | |
6689 | ||
6690 | rrule = "RRULE" rrulparam ":" recur CRLF | |
6691 | ||
6692 | rrulparam = *(";" xparam) | |
6693 | ||
6694 | Example: All examples assume the Eastern United States time zone. | |
6695 | ||
6696 | Daily for 10 occurrences: | |
6697 | ||
6698 | DTSTART;TZID=US-Eastern:19970902T090000 | |
6699 | RRULE:FREQ=DAILY;COUNT=10 | |
6700 | ||
6701 | ==> (1997 9:00 AM EDT)September 2-11 | |
6702 | ||
6703 | Daily until December 24, 1997: | |
6704 | ||
6705 | DTSTART;TZID=US-Eastern:19970902T090000 | |
6706 | RRULE:FREQ=DAILY;UNTIL=19971224T000000Z | |
6707 | ||
6708 | ==> (1997 9:00 AM EDT)September 2-30;October 1-25 | |
6709 | (1997 9:00 AM EST)October 26-31;November 1-30;December 1-23 | |
6710 | ||
6711 | Every other day - forever: | |
6712 | ||
6713 | DTSTART;TZID=US-Eastern:19970902T090000 | |
6714 | RRULE:FREQ=DAILY;INTERVAL=2 | |
6715 | ==> (1997 9:00 AM EDT)September2,4,6,8...24,26,28,30; | |
6716 | October 2,4,6...20,22,24 | |
6717 | (1997 9:00 AM EST)October 26,28,30;November 1,3,5,7...25,27,29; | |
6718 | Dec 1,3,... | |
6719 | ||
6720 | Every 10 days, 5 occurrences: | |
6721 | ||
6722 | ||
6723 | ||
6724 | ||
6725 | <span class="grey">Dawson & Stenerson Standards Track [Page 118]</span> | |
6726 | </pre><pre class="newpage"><a name="page-119" id="page-119" href="#page-119" class="invisible"> </a> | |
6727 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6728 | ||
6729 | ||
6730 | DTSTART;TZID=US-Eastern:19970902T090000 | |
6731 | RRULE:FREQ=DAILY;INTERVAL=10;COUNT=5 | |
6732 | ||
6733 | ==> (1997 9:00 AM EDT)September 2,12,22;October 2,12 | |
6734 | ||
6735 | Everyday in January, for 3 years: | |
6736 | ||
6737 | DTSTART;TZID=US-Eastern:19980101T090000 | |
6738 | RRULE:FREQ=YEARLY;UNTIL=20000131T090000Z; | |
6739 | BYMONTH=1;BYDAY=SU,MO,TU,WE,TH,FR,SA | |
6740 | or | |
6741 | RRULE:FREQ=DAILY;UNTIL=20000131T090000Z;BYMONTH=1 | |
6742 | ||
6743 | ==> (1998 9:00 AM EDT)January 1-31 | |
6744 | (1999 9:00 AM EDT)January 1-31 | |
6745 | (2000 9:00 AM EDT)January 1-31 | |
6746 | ||
6747 | Weekly for 10 occurrences | |
6748 | ||
6749 | DTSTART;TZID=US-Eastern:19970902T090000 | |
6750 | RRULE:FREQ=WEEKLY;COUNT=10 | |
6751 | ||
6752 | ==> (1997 9:00 AM EDT)September 2,9,16,23,30;October 7,14,21 | |
6753 | (1997 9:00 AM EST)October 28;November 4 | |
6754 | ||
6755 | Weekly until December 24, 1997 | |
6756 | ||
6757 | DTSTART;TZID=US-Eastern:19970902T090000 | |
6758 | RRULE:FREQ=WEEKLY;UNTIL=19971224T000000Z | |
6759 | ||
6760 | ==> (1997 9:00 AM EDT)September 2,9,16,23,30;October 7,14,21 | |
6761 | (1997 9:00 AM EST)October 28;November 4,11,18,25; | |
6762 | December 2,9,16,23 | |
6763 | Every other week - forever: | |
6764 | ||
6765 | DTSTART;TZID=US-Eastern:19970902T090000 | |
6766 | RRULE:FREQ=WEEKLY;INTERVAL=2;WKST=SU | |
6767 | ||
6768 | ==> (1997 9:00 AM EDT)September 2,16,30;October 14 | |
6769 | (1997 9:00 AM EST)October 28;November 11,25;December 9,23 | |
6770 | (1998 9:00 AM EST)January 6,20;February | |
6771 | ... | |
6772 | ||
6773 | Weekly on Tuesday and Thursday for 5 weeks: | |
6774 | ||
6775 | DTSTART;TZID=US-Eastern:19970902T090000 | |
6776 | RRULE:FREQ=WEEKLY;UNTIL=19971007T000000Z;WKST=SU;BYDAY=TU,TH | |
6777 | or | |
6778 | ||
6779 | ||
6780 | ||
6781 | <span class="grey">Dawson & Stenerson Standards Track [Page 119]</span> | |
6782 | </pre><pre class="newpage"><a name="page-120" id="page-120" href="#page-120" class="invisible"> </a> | |
6783 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6784 | ||
6785 | ||
6786 | RRULE:FREQ=WEEKLY;COUNT=10;WKST=SU;BYDAY=TU,TH | |
6787 | ||
6788 | ==> (1997 9:00 AM EDT)September 2,4,9,11,16,18,23,25,30;October 2 | |
6789 | ||
6790 | Every other week on Monday, Wednesday and Friday until December 24, | |
6791 | 1997, but starting on Tuesday, September 2, 1997: | |
6792 | ||
6793 | DTSTART;TZID=US-Eastern:19970902T090000 | |
6794 | RRULE:FREQ=WEEKLY;INTERVAL=2;UNTIL=19971224T000000Z;WKST=SU; | |
6795 | BYDAY=MO,WE,FR | |
6796 | ==> (1997 9:00 AM EDT)September 2,3,5,15,17,19,29;October | |
6797 | 1,3,13,15,17 | |
6798 | (1997 9:00 AM EST)October 27,29,31;November 10,12,14,24,26,28; | |
6799 | December 8,10,12,22 | |
6800 | ||
6801 | Every other week on Tuesday and Thursday, for 8 occurrences: | |
6802 | ||
6803 | DTSTART;TZID=US-Eastern:19970902T090000 | |
6804 | RRULE:FREQ=WEEKLY;INTERVAL=2;COUNT=8;WKST=SU;BYDAY=TU,TH | |
6805 | ||
6806 | ==> (1997 9:00 AM EDT)September 2,4,16,18,30;October 2,14,16 | |
6807 | ||
6808 | Monthly on the 1st Friday for ten occurrences: | |
6809 | ||
6810 | DTSTART;TZID=US-Eastern:19970905T090000 | |
6811 | RRULE:FREQ=MONTHLY;COUNT=10;BYDAY=1FR | |
6812 | ||
6813 | ==> (1997 9:00 AM EDT)September 5;October 3 | |
6814 | (1997 9:00 AM EST)November 7;Dec 5 | |
6815 | (1998 9:00 AM EST)January 2;February 6;March 6;April 3 | |
6816 | (1998 9:00 AM EDT)May 1;June 5 | |
6817 | ||
6818 | Monthly on the 1st Friday until December 24, 1997: | |
6819 | ||
6820 | DTSTART;TZID=US-Eastern:19970905T090000 | |
6821 | RRULE:FREQ=MONTHLY;UNTIL=19971224T000000Z;BYDAY=1FR | |
6822 | ||
6823 | ==> (1997 9:00 AM EDT)September 5;October 3 | |
6824 | (1997 9:00 AM EST)November 7;December 5 | |
6825 | ||
6826 | Every other month on the 1st and last Sunday of the month for 10 | |
6827 | occurrences: | |
6828 | ||
6829 | DTSTART;TZID=US-Eastern:19970907T090000 | |
6830 | RRULE:FREQ=MONTHLY;INTERVAL=2;COUNT=10;BYDAY=1SU,-1SU | |
6831 | ||
6832 | ==> (1997 9:00 AM EDT)September 7,28 | |
6833 | (1997 9:00 AM EST)November 2,30 | |
6834 | ||
6835 | ||
6836 | ||
6837 | <span class="grey">Dawson & Stenerson Standards Track [Page 120]</span> | |
6838 | </pre><pre class="newpage"><a name="page-121" id="page-121" href="#page-121" class="invisible"> </a> | |
6839 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6840 | ||
6841 | ||
6842 | (1998 9:00 AM EST)January 4,25;March 1,29 | |
6843 | (1998 9:00 AM EDT)May 3,31 | |
6844 | ||
6845 | Monthly on the second to last Monday of the month for 6 months: | |
6846 | ||
6847 | DTSTART;TZID=US-Eastern:19970922T090000 | |
6848 | RRULE:FREQ=MONTHLY;COUNT=6;BYDAY=-2MO | |
6849 | ||
6850 | ==> (1997 9:00 AM EDT)September 22;October 20 | |
6851 | (1997 9:00 AM EST)November 17;December 22 | |
6852 | (1998 9:00 AM EST)January 19;February 16 | |
6853 | ||
6854 | Monthly on the third to the last day of the month, forever: | |
6855 | ||
6856 | DTSTART;TZID=US-Eastern:19970928T090000 | |
6857 | RRULE:FREQ=MONTHLY;BYMONTHDAY=-3 | |
6858 | ||
6859 | ==> (1997 9:00 AM EDT)September 28 | |
6860 | (1997 9:00 AM EST)October 29;November 28;December 29 | |
6861 | (1998 9:00 AM EST)January 29;February 26 | |
6862 | ... | |
6863 | ||
6864 | Monthly on the 2nd and 15th of the month for 10 occurrences: | |
6865 | ||
6866 | DTSTART;TZID=US-Eastern:19970902T090000 | |
6867 | RRULE:FREQ=MONTHLY;COUNT=10;BYMONTHDAY=2,15 | |
6868 | ||
6869 | ==> (1997 9:00 AM EDT)September 2,15;October 2,15 | |
6870 | (1997 9:00 AM EST)November 2,15;December 2,15 | |
6871 | (1998 9:00 AM EST)January 2,15 | |
6872 | ||
6873 | Monthly on the first and last day of the month for 10 occurrences: | |
6874 | ||
6875 | DTSTART;TZID=US-Eastern:19970930T090000 | |
6876 | RRULE:FREQ=MONTHLY;COUNT=10;BYMONTHDAY=1,-1 | |
6877 | ||
6878 | ==> (1997 9:00 AM EDT)September 30;October 1 | |
6879 | (1997 9:00 AM EST)October 31;November 1,30;December 1,31 | |
6880 | (1998 9:00 AM EST)January 1,31;February 1 | |
6881 | ||
6882 | Every 18 months on the 10th thru 15th of the month for 10 | |
6883 | occurrences: | |
6884 | ||
6885 | DTSTART;TZID=US-Eastern:19970910T090000 | |
6886 | RRULE:FREQ=MONTHLY;INTERVAL=18;COUNT=10;BYMONTHDAY=10,11,12,13,14, | |
6887 | 15 | |
6888 | ||
6889 | ==> (1997 9:00 AM EDT)September 10,11,12,13,14,15 | |
6890 | ||
6891 | ||
6892 | ||
6893 | <span class="grey">Dawson & Stenerson Standards Track [Page 121]</span> | |
6894 | </pre><pre class="newpage"><a name="page-122" id="page-122" href="#page-122" class="invisible"> </a> | |
6895 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6896 | ||
6897 | ||
6898 | (1999 9:00 AM EST)March 10,11,12,13 | |
6899 | ||
6900 | Every Tuesday, every other month: | |
6901 | ||
6902 | DTSTART;TZID=US-Eastern:19970902T090000 | |
6903 | RRULE:FREQ=MONTHLY;INTERVAL=2;BYDAY=TU | |
6904 | ||
6905 | ==> (1997 9:00 AM EDT)September 2,9,16,23,30 | |
6906 | (1997 9:00 AM EST)November 4,11,18,25 | |
6907 | (1998 9:00 AM EST)January 6,13,20,27;March 3,10,17,24,31 | |
6908 | ... | |
6909 | ||
6910 | Yearly in June and July for 10 occurrences: | |
6911 | ||
6912 | DTSTART;TZID=US-Eastern:19970610T090000 | |
6913 | RRULE:FREQ=YEARLY;COUNT=10;BYMONTH=6,7 | |
6914 | ==> (1997 9:00 AM EDT)June 10;July 10 | |
6915 | (1998 9:00 AM EDT)June 10;July 10 | |
6916 | (1999 9:00 AM EDT)June 10;July 10 | |
6917 | (2000 9:00 AM EDT)June 10;July 10 | |
6918 | (2001 9:00 AM EDT)June 10;July 10 | |
6919 | Note: Since none of the BYDAY, BYMONTHDAY or BYYEARDAY components | |
6920 | are specified, the day is gotten from DTSTART | |
6921 | ||
6922 | Every other year on January, February, and March for 10 occurrences: | |
6923 | ||
6924 | DTSTART;TZID=US-Eastern:19970310T090000 | |
6925 | RRULE:FREQ=YEARLY;INTERVAL=2;COUNT=10;BYMONTH=1,2,3 | |
6926 | ||
6927 | ==> (1997 9:00 AM EST)March 10 | |
6928 | (1999 9:00 AM EST)January 10;February 10;March 10 | |
6929 | (2001 9:00 AM EST)January 10;February 10;March 10 | |
6930 | (2003 9:00 AM EST)January 10;February 10;March 10 | |
6931 | ||
6932 | Every 3rd year on the 1st, 100th and 200th day for 10 occurrences: | |
6933 | ||
6934 | DTSTART;TZID=US-Eastern:19970101T090000 | |
6935 | RRULE:FREQ=YEARLY;INTERVAL=3;COUNT=10;BYYEARDAY=1,100,200 | |
6936 | ||
6937 | ==> (1997 9:00 AM EST)January 1 | |
6938 | (1997 9:00 AM EDT)April 10;July 19 | |
6939 | (2000 9:00 AM EST)January 1 | |
6940 | (2000 9:00 AM EDT)April 9;July 18 | |
6941 | (2003 9:00 AM EST)January 1 | |
6942 | (2003 9:00 AM EDT)April 10;July 19 | |
6943 | (2006 9:00 AM EST)January 1 | |
6944 | ||
6945 | Every 20th Monday of the year, forever: | |
6946 | ||
6947 | ||
6948 | ||
6949 | <span class="grey">Dawson & Stenerson Standards Track [Page 122]</span> | |
6950 | </pre><pre class="newpage"><a name="page-123" id="page-123" href="#page-123" class="invisible"> </a> | |
6951 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
6952 | ||
6953 | ||
6954 | DTSTART;TZID=US-Eastern:19970519T090000 | |
6955 | RRULE:FREQ=YEARLY;BYDAY=20MO | |
6956 | ||
6957 | ==> (1997 9:00 AM EDT)May 19 | |
6958 | (1998 9:00 AM EDT)May 18 | |
6959 | (1999 9:00 AM EDT)May 17 | |
6960 | ... | |
6961 | ||
6962 | Monday of week number 20 (where the default start of the week is | |
6963 | Monday), forever: | |
6964 | ||
6965 | DTSTART;TZID=US-Eastern:19970512T090000 | |
6966 | RRULE:FREQ=YEARLY;BYWEEKNO=20;BYDAY=MO | |
6967 | ||
6968 | ==> (1997 9:00 AM EDT)May 12 | |
6969 | (1998 9:00 AM EDT)May 11 | |
6970 | (1999 9:00 AM EDT)May 17 | |
6971 | ... | |
6972 | ||
6973 | Every Thursday in March, forever: | |
6974 | ||
6975 | DTSTART;TZID=US-Eastern:19970313T090000 | |
6976 | RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=TH | |
6977 | ||
6978 | ==> (1997 9:00 AM EST)March 13,20,27 | |
6979 | (1998 9:00 AM EST)March 5,12,19,26 | |
6980 | (1999 9:00 AM EST)March 4,11,18,25 | |
6981 | ... | |
6982 | ||
6983 | Every Thursday, but only during June, July, and August, forever: | |
6984 | ||
6985 | DTSTART;TZID=US-Eastern:19970605T090000 | |
6986 | RRULE:FREQ=YEARLY;BYDAY=TH;BYMONTH=6,7,8 | |
6987 | ||
6988 | ==> (1997 9:00 AM EDT)June 5,12,19,26;July 3,10,17,24,31; | |
6989 | August 7,14,21,28 | |
6990 | (1998 9:00 AM EDT)June 4,11,18,25;July 2,9,16,23,30; | |
6991 | August 6,13,20,27 | |
6992 | (1999 9:00 AM EDT)June 3,10,17,24;July 1,8,15,22,29; | |
6993 | August 5,12,19,26 | |
6994 | ... | |
6995 | ||
6996 | Every Friday the 13th, forever: | |
6997 | ||
6998 | DTSTART;TZID=US-Eastern:19970902T090000 | |
6999 | EXDATE;TZID=US-Eastern:19970902T090000 | |
7000 | RRULE:FREQ=MONTHLY;BYDAY=FR;BYMONTHDAY=13 | |
7001 | ||
7002 | ||
7003 | ||
7004 | ||
7005 | <span class="grey">Dawson & Stenerson Standards Track [Page 123]</span> | |
7006 | </pre><pre class="newpage"><a name="page-124" id="page-124" href="#page-124" class="invisible"> </a> | |
7007 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7008 | ||
7009 | ||
7010 | ==> (1998 9:00 AM EST)February 13;March 13;November 13 | |
7011 | (1999 9:00 AM EDT)August 13 | |
7012 | (2000 9:00 AM EDT)October 13 | |
7013 | ... | |
7014 | ||
7015 | The first Saturday that follows the first Sunday of the month, | |
7016 | forever: | |
7017 | ||
7018 | DTSTART;TZID=US-Eastern:19970913T090000 | |
7019 | RRULE:FREQ=MONTHLY;BYDAY=SA;BYMONTHDAY=7,8,9,10,11,12,13 | |
7020 | ||
7021 | ==> (1997 9:00 AM EDT)September 13;October 11 | |
7022 | (1997 9:00 AM EST)November 8;December 13 | |
7023 | (1998 9:00 AM EST)January 10;February 7;March 7 | |
7024 | (1998 9:00 AM EDT)April 11;May 9;June 13... | |
7025 | ... | |
7026 | ||
7027 | Every four years, the first Tuesday after a Monday in November, | |
7028 | forever (U.S. Presidential Election day): | |
7029 | ||
7030 | DTSTART;TZID=US-Eastern:19961105T090000 | |
7031 | RRULE:FREQ=YEARLY;INTERVAL=4;BYMONTH=11;BYDAY=TU;BYMONTHDAY=2,3,4, | |
7032 | 5,6,7,8 | |
7033 | ||
7034 | ==> (1996 9:00 AM EST)November 5 | |
7035 | (2000 9:00 AM EST)November 7 | |
7036 | (2004 9:00 AM EST)November 2 | |
7037 | ... | |
7038 | ||
7039 | The 3rd instance into the month of one of Tuesday, Wednesday or | |
7040 | Thursday, for the next 3 months: | |
7041 | ||
7042 | DTSTART;TZID=US-Eastern:19970904T090000 | |
7043 | RRULE:FREQ=MONTHLY;COUNT=3;BYDAY=TU,WE,TH;BYSETPOS=3 | |
7044 | ||
7045 | ==> (1997 9:00 AM EDT)September 4;October 7 | |
7046 | (1997 9:00 AM EST)November 6 | |
7047 | ||
7048 | The 2nd to last weekday of the month: | |
7049 | ||
7050 | DTSTART;TZID=US-Eastern:19970929T090000 | |
7051 | RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=-2 | |
7052 | ||
7053 | ==> (1997 9:00 AM EDT)September 29 | |
7054 | (1997 9:00 AM EST)October 30;November 27;December 30 | |
7055 | (1998 9:00 AM EST)January 29;February 26;March 30 | |
7056 | ... | |
7057 | ||
7058 | ||
7059 | ||
7060 | ||
7061 | <span class="grey">Dawson & Stenerson Standards Track [Page 124]</span> | |
7062 | </pre><pre class="newpage"><a name="page-125" id="page-125" href="#page-125" class="invisible"> </a> | |
7063 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7064 | ||
7065 | ||
7066 | Every 3 hours from 9:00 AM to 5:00 PM on a specific day: | |
7067 | ||
7068 | DTSTART;TZID=US-Eastern:19970902T090000 | |
7069 | RRULE:FREQ=HOURLY;INTERVAL=3;UNTIL=19970902T170000Z | |
7070 | ||
7071 | ==> (September 2, 1997 EDT)09:00,12:00,15:00 | |
7072 | ||
7073 | Every 15 minutes for 6 occurrences: | |
7074 | ||
7075 | DTSTART;TZID=US-Eastern:19970902T090000 | |
7076 | RRULE:FREQ=MINUTELY;INTERVAL=15;COUNT=6 | |
7077 | ||
7078 | ==> (September 2, 1997 EDT)09:00,09:15,09:30,09:45,10:00,10:15 | |
7079 | ||
7080 | Every hour and a half for 4 occurrences: | |
7081 | ||
7082 | DTSTART;TZID=US-Eastern:19970902T090000 | |
7083 | RRULE:FREQ=MINUTELY;INTERVAL=90;COUNT=4 | |
7084 | ||
7085 | ==> (September 2, 1997 EDT)09:00,10:30;12:00;13:30 | |
7086 | ||
7087 | Every 20 minutes from 9:00 AM to 4:40 PM every day: | |
7088 | ||
7089 | DTSTART;TZID=US-Eastern:19970902T090000 | |
7090 | RRULE:FREQ=DAILY;BYHOUR=9,10,11,12,13,14,15,16;BYMINUTE=0,20,40 | |
7091 | or | |
7092 | RRULE:FREQ=MINUTELY;INTERVAL=20;BYHOUR=9,10,11,12,13,14,15,16 | |
7093 | ||
7094 | ==> (September 2, 1997 EDT)9:00,9:20,9:40,10:00,10:20, | |
7095 | ... 16:00,16:20,16:40 | |
7096 | (September 3, 1997 EDT)9:00,9:20,9:40,10:00,10:20, | |
7097 | ...16:00,16:20,16:40 | |
7098 | ... | |
7099 | ||
7100 | An example where the days generated makes a difference because of | |
7101 | WKST: | |
7102 | ||
7103 | DTSTART;TZID=US-Eastern:19970805T090000 | |
7104 | RRULE:FREQ=WEEKLY;INTERVAL=2;COUNT=4;BYDAY=TU,SU;WKST=MO | |
7105 | ||
7106 | ==> (1997 EDT)Aug 5,10,19,24 | |
7107 | ||
7108 | changing only WKST from MO to SU, yields different results... | |
7109 | ||
7110 | DTSTART;TZID=US-Eastern:19970805T090000 | |
7111 | RRULE:FREQ=WEEKLY;INTERVAL=2;COUNT=4;BYDAY=TU,SU;WKST=SU | |
7112 | ==> (1997 EDT)August 5,17,19,31 | |
7113 | ||
7114 | ||
7115 | ||
7116 | ||
7117 | <span class="grey">Dawson & Stenerson Standards Track [Page 125]</span> | |
7118 | </pre><pre class="newpage"><a name="page-126" id="page-126" href="#page-126" class="invisible"> </a> | |
7119 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7120 | ||
7121 | ||
7122 | <span class="h4"><h4><a name="section-4.8.6">4.8.6</a> Alarm Component Properties</h4></span> | |
7123 | ||
7124 | The following properties specify alarm information in calendar | |
7125 | components. | |
7126 | ||
7127 | <span class="h5"><h5><a name="section-4.8.6.1">4.8.6.1</a> Action</h5></span> | |
7128 | ||
7129 | Property Name: ACTION | |
7130 | ||
7131 | Purpose: This property defines the action to be invoked when an alarm | |
7132 | is triggered. | |
7133 | ||
7134 | Value Type: TEXT | |
7135 | ||
7136 | Property Parameters: Non-standard property parameters can be | |
7137 | specified on this property. | |
7138 | ||
7139 | Conformance: This property MUST be specified once in a "VALARM" | |
7140 | calendar component. | |
7141 | ||
7142 | Description: Each "VALARM" calendar component has a particular type | |
7143 | of action associated with it. This property specifies the type of | |
7144 | action | |
7145 | ||
7146 | Format Definition: The property is defined by the following notation: | |
7147 | ||
7148 | action = "ACTION" actionparam ":" actionvalue CRLF | |
7149 | ||
7150 | actionparam = *(";" xparam) | |
7151 | ||
7152 | actionvalue = "AUDIO" / "DISPLAY" / "EMAIL" / "PROCEDURE" | |
7153 | / iana-token / x-name | |
7154 | ||
7155 | Example: The following are examples of this property in a "VALARM" | |
7156 | calendar component: | |
7157 | ||
7158 | ACTION:AUDIO | |
7159 | ||
7160 | ACTION:DISPLAY | |
7161 | ||
7162 | ACTION:PROCEDURE | |
7163 | ||
7164 | <span class="h5"><h5><a name="section-4.8.6.2">4.8.6.2</a> Repeat Count</h5></span> | |
7165 | ||
7166 | Property Name: REPEAT | |
7167 | ||
7168 | Purpose: This property defines the number of time the alarm should be | |
7169 | repeated, after the initial trigger. | |
7170 | ||
7171 | ||
7172 | ||
7173 | <span class="grey">Dawson & Stenerson Standards Track [Page 126]</span> | |
7174 | </pre><pre class="newpage"><a name="page-127" id="page-127" href="#page-127" class="invisible"> </a> | |
7175 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7176 | ||
7177 | ||
7178 | Value Type: INTEGER | |
7179 | ||
7180 | Property Parameters: Non-standard property parameters can be | |
7181 | specified on this property. | |
7182 | ||
7183 | Conformance: This property can be specified in a "VALARM" calendar | |
7184 | component. | |
7185 | ||
7186 | Description: If the alarm triggers more than once, then this property | |
7187 | MUST be specified along with the "DURATION" property. | |
7188 | ||
7189 | Format Definition: The property is defined by the following notation: | |
7190 | ||
7191 | repeatcnt = "REPEAT" repparam ":" integer CRLF | |
7192 | ;Default is "0", zero. | |
7193 | ||
7194 | repparam = *(";" xparam) | |
7195 | ||
7196 | Example: The following is an example of this property for an alarm | |
7197 | that repeats 4 additional times with a 5 minute delay after the | |
7198 | initial triggering of the alarm: | |
7199 | ||
7200 | REPEAT:4 | |
7201 | DURATION:PT5M | |
7202 | ||
7203 | <span class="h5"><h5><a name="section-4.8.6.3">4.8.6.3</a> Trigger</h5></span> | |
7204 | ||
7205 | Property Name: TRIGGER | |
7206 | ||
7207 | Purpose: This property specifies when an alarm will trigger. | |
7208 | ||
7209 | Value Type: The default value type is DURATION. The value type can be | |
7210 | set to a DATE-TIME value type, in which case the value MUST specify a | |
7211 | UTC formatted DATE-TIME value. | |
7212 | ||
7213 | Property Parameters: Non-standard, value data type, time zone | |
7214 | identifier or trigger relationship property parameters can be | |
7215 | specified on this property. The trigger relationship property | |
7216 | parameter MUST only be specified when the value type is DURATION. | |
7217 | ||
7218 | Conformance: This property MUST be specified in the "VALARM" calendar | |
7219 | component. | |
7220 | ||
7221 | Description: Within the "VALARM" calendar component, this property | |
7222 | defines when the alarm will trigger. The default value type is | |
7223 | DURATION, specifying a relative time for the trigger of the alarm. | |
7224 | The default duration is relative to the start of an event or to-do | |
7225 | that the alarm is associated with. The duration can be explicitly set | |
7226 | ||
7227 | ||
7228 | ||
7229 | <span class="grey">Dawson & Stenerson Standards Track [Page 127]</span> | |
7230 | </pre><pre class="newpage"><a name="page-128" id="page-128" href="#page-128" class="invisible"> </a> | |
7231 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7232 | ||
7233 | ||
7234 | to trigger from either the end or the start of the associated event | |
7235 | or to-do with the "RELATED" parameter. A value of START will set the | |
7236 | alarm to trigger off the start of the associated event or to-do. A | |
7237 | value of END will set the alarm to trigger off the end of the | |
7238 | associated event or to-do. | |
7239 | ||
7240 | Either a positive or negative duration may be specified for the | |
7241 | "TRIGGER" property. An alarm with a positive duration is triggered | |
7242 | after the associated start or end of the event or to-do. An alarm | |
7243 | with a negative duration is triggered before the associated start or | |
7244 | end of the event or to-do. | |
7245 | ||
7246 | The "RELATED" property parameter is not valid if the value type of | |
7247 | the property is set to DATE-TIME (i.e., for an absolute date and time | |
7248 | alarm trigger). If a value type of DATE-TIME is specified, then the | |
7249 | property value MUST be specified in the UTC time format. If an | |
7250 | absolute trigger is specified on an alarm for a recurring event or | |
7251 | to-do, then the alarm will only trigger for the specified absolute | |
7252 | date/time, along with any specified repeating instances. | |
7253 | ||
7254 | If the trigger is set relative to START, then the "DTSTART" property | |
7255 | MUST be present in the associated "VEVENT" or "VTODO" calendar | |
7256 | component. If an alarm is specified for an event with the trigger set | |
7257 | relative to the END, then the "DTEND" property or the "DSTART" and | |
7258 | "DURATION' properties MUST be present in the associated "VEVENT" | |
7259 | calendar component. If the alarm is specified for a to-do with a | |
7260 | trigger set relative to the END, then either the "DUE" property or | |
7261 | the "DSTART" and "DURATION' properties MUST be present in the | |
7262 | associated "VTODO" calendar component. | |
7263 | ||
7264 | Alarms specified in an event or to-do which is defined in terms of a | |
7265 | DATE value type will be triggered relative to 00:00:00 UTC on the | |
7266 | specified date. For example, if "DTSTART:19980205, then the duration | |
7267 | trigger will be relative to19980205T000000Z. | |
7268 | ||
7269 | Format Definition: The property is defined by the following notation: | |
7270 | ||
7271 | trigger = "TRIGGER" (trigrel / trigabs) | |
7272 | ||
7273 | trigrel = *( | |
7274 | ||
7275 | ; the following are optional, | |
7276 | ; but MUST NOT occur more than once | |
7277 | ||
7278 | (";" "VALUE" "=" "DURATION") / | |
7279 | (";" trigrelparam) / | |
7280 | ||
7281 | ; the following is optional, | |
7282 | ||
7283 | ||
7284 | ||
7285 | <span class="grey">Dawson & Stenerson Standards Track [Page 128]</span> | |
7286 | </pre><pre class="newpage"><a name="page-129" id="page-129" href="#page-129" class="invisible"> </a> | |
7287 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7288 | ||
7289 | ||
7290 | ; and MAY occur more than once | |
7291 | ||
7292 | (";" xparam) | |
7293 | ) ":" dur-value | |
7294 | ||
7295 | trigabs = 1*( | |
7296 | ||
7297 | ; the following is REQUIRED, | |
7298 | ; but MUST NOT occur more than once | |
7299 | ||
7300 | (";" "VALUE" "=" "DATE-TIME") / | |
7301 | ||
7302 | ; the following is optional, | |
7303 | ; and MAY occur more than once | |
7304 | ||
7305 | (";" xparam) | |
7306 | ||
7307 | ) ":" date-time | |
7308 | ||
7309 | Example: A trigger set 15 minutes prior to the start of the event or | |
7310 | to-do. | |
7311 | ||
7312 | TRIGGER:-P15M | |
7313 | ||
7314 | A trigger set 5 minutes after the end of the event or to-do. | |
7315 | ||
7316 | TRIGGER;RELATED=END:P5M | |
7317 | ||
7318 | A trigger set to an absolute date/time. | |
7319 | ||
7320 | TRIGGER;VALUE=DATE-TIME:19980101T050000Z | |
7321 | ||
7322 | <span class="h4"><h4><a name="section-4.8.7">4.8.7</a> Change Management Component Properties</h4></span> | |
7323 | ||
7324 | The following properties specify change management information in | |
7325 | calendar components. | |
7326 | ||
7327 | <span class="h5"><h5><a name="section-4.8.7.1">4.8.7.1</a> Date/Time Created</h5></span> | |
7328 | ||
7329 | Property Name: CREATED | |
7330 | ||
7331 | Purpose: This property specifies the date and time that the calendar | |
7332 | information was created by the calendar user agent in the calendar | |
7333 | store. | |
7334 | ||
7335 | Note: This is analogous to the creation date and time for a file | |
7336 | in the file system. | |
7337 | ||
7338 | ||
7339 | ||
7340 | ||
7341 | <span class="grey">Dawson & Stenerson Standards Track [Page 129]</span> | |
7342 | </pre><pre class="newpage"><a name="page-130" id="page-130" href="#page-130" class="invisible"> </a> | |
7343 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7344 | ||
7345 | ||
7346 | Value Type: DATE-TIME | |
7347 | ||
7348 | Property Parameters: Non-standard property parameters can be | |
7349 | specified on this property. | |
7350 | ||
7351 | Conformance: The property can be specified once in "VEVENT", "VTODO" | |
7352 | or "VJOURNAL" calendar components. | |
7353 | ||
7354 | Description: The date and time is a UTC value. | |
7355 | ||
7356 | Format Definition: The property is defined by the following notation: | |
7357 | ||
7358 | created = "CREATED" creaparam ":" date-time CRLF | |
7359 | ||
7360 | creaparam = *(";" xparam) | |
7361 | ||
7362 | Example: The following is an example of this property: | |
7363 | ||
7364 | CREATED:19960329T133000Z | |
7365 | ||
7366 | <span class="h5"><h5><a name="section-4.8.7.2">4.8.7.2</a> Date/Time Stamp</h5></span> | |
7367 | ||
7368 | Property Name: DTSTAMP | |
7369 | ||
7370 | Purpose: The property indicates the date/time that the instance of | |
7371 | the iCalendar object was created. | |
7372 | ||
7373 | Value Type: DATE-TIME | |
7374 | ||
7375 | Property Parameters: Non-standard property parameters can be | |
7376 | specified on this property. | |
7377 | ||
7378 | Conformance: This property MUST be included in the "VEVENT", "VTODO", | |
7379 | "VJOURNAL" or "VFREEBUSY" calendar components. | |
7380 | ||
7381 | Description: The value MUST be specified in the UTC time format. | |
7382 | ||
7383 | This property is also useful to protocols such as [<a href="#ref-IMIP" title=""iCalendar Message-based Interoperability Protocol (IMIP)"">IMIP</a>] that have | |
7384 | inherent latency issues with the delivery of content. This property | |
7385 | will assist in the proper sequencing of messages containing iCalendar | |
7386 | objects. | |
7387 | ||
7388 | This property is different than the "CREATED" and "LAST-MODIFIED" | |
7389 | properties. These two properties are used to specify when the | |
7390 | particular calendar data in the calendar store was created and last | |
7391 | modified. This is different than when the iCalendar object | |
7392 | representation of the calendar service information was created or | |
7393 | last modified. | |
7394 | ||
7395 | ||
7396 | ||
7397 | <span class="grey">Dawson & Stenerson Standards Track [Page 130]</span> | |
7398 | </pre><pre class="newpage"><a name="page-131" id="page-131" href="#page-131" class="invisible"> </a> | |
7399 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7400 | ||
7401 | ||
7402 | Format Definition: The property is defined by the following notation: | |
7403 | ||
7404 | dtstamp = "DTSTAMP" stmparam ":" date-time CRLF | |
7405 | ||
7406 | stmparam = *(";" xparam) | |
7407 | ||
7408 | Example: | |
7409 | ||
7410 | DTSTAMP:19971210T080000Z | |
7411 | ||
7412 | <span class="h5"><h5><a name="section-4.8.7.3">4.8.7.3</a> Last Modified</h5></span> | |
7413 | ||
7414 | Property Name: LAST-MODIFIED | |
7415 | ||
7416 | Purpose: The property specifies the date and time that the | |
7417 | information associated with the calendar component was last revised | |
7418 | in the calendar store. | |
7419 | ||
7420 | Note: This is analogous to the modification date and time for a | |
7421 | file in the file system. | |
7422 | ||
7423 | Value Type: DATE-TIME | |
7424 | ||
7425 | Property Parameters: Non-standard property parameters can be | |
7426 | specified on this property. | |
7427 | ||
7428 | Conformance: This property can be specified in the "EVENT", "VTODO", | |
7429 | "VJOURNAL" or "VTIMEZONE" calendar components. | |
7430 | ||
7431 | Description: The property value MUST be specified in the UTC time | |
7432 | format. | |
7433 | ||
7434 | Format Definition: The property is defined by the following notation: | |
7435 | ||
7436 | last-mod = "LAST-MODIFIED" lstparam ":" date-time CRLF | |
7437 | ||
7438 | lstparam = *(";" xparam) | |
7439 | ||
7440 | Example: The following is are examples of this property: | |
7441 | ||
7442 | LAST-MODIFIED:19960817T133000Z | |
7443 | ||
7444 | <span class="h5"><h5><a name="section-4.8.7.4">4.8.7.4</a> Sequence Number</h5></span> | |
7445 | ||
7446 | Property Name: SEQUENCE | |
7447 | ||
7448 | Purpose: This property defines the revision sequence number of the | |
7449 | calendar component within a sequence of revisions. | |
7450 | ||
7451 | ||
7452 | ||
7453 | <span class="grey">Dawson & Stenerson Standards Track [Page 131]</span> | |
7454 | </pre><pre class="newpage"><a name="page-132" id="page-132" href="#page-132" class="invisible"> </a> | |
7455 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7456 | ||
7457 | ||
7458 | Value Type: integer | |
7459 | ||
7460 | Property Parameters: Non-standard property parameters can be | |
7461 | specified on this property. | |
7462 | ||
7463 | Conformance: The property can be specified in "VEVENT", "VTODO" or | |
7464 | "VJOURNAL" calendar component. | |
7465 | ||
7466 | Description: When a calendar component is created, its sequence | |
7467 | number is zero (US-ASCII decimal 48). It is monotonically incremented | |
7468 | by the "Organizer's" CUA each time the "Organizer" makes a | |
7469 | significant revision to the calendar component. When the "Organizer" | |
7470 | makes changes to one of the following properties, the sequence number | |
7471 | MUST be incremented: | |
7472 | ||
7473 | . "DTSTART" | |
7474 | ||
7475 | . "DTEND" | |
7476 | ||
7477 | . "DUE" | |
7478 | ||
7479 | . "RDATE" | |
7480 | ||
7481 | . "RRULE" | |
7482 | ||
7483 | . "EXDATE" | |
7484 | ||
7485 | . "EXRULE" | |
7486 | ||
7487 | . "STATUS" | |
7488 | ||
7489 | In addition, changes made by the "Organizer" to other properties can | |
7490 | also force the sequence number to be incremented. The "Organizer" CUA | |
7491 | MUST increment the sequence number when ever it makes changes to | |
7492 | properties in the calendar component that the "Organizer" deems will | |
7493 | jeopardize the validity of the participation status of the | |
7494 | "Attendees". For example, changing the location of a meeting from one | |
7495 | locale to another distant locale could effectively impact the | |
7496 | participation status of the "Attendees". | |
7497 | ||
7498 | The "Organizer" includes this property in an iCalendar object that it | |
7499 | sends to an "Attendee" to specify the current version of the calendar | |
7500 | component. | |
7501 | ||
7502 | The "Attendee" includes this property in an iCalendar object that it | |
7503 | sends to the "Organizer" to specify the version of the calendar | |
7504 | component that the "Attendee" is referring to. | |
7505 | ||
7506 | ||
7507 | ||
7508 | ||
7509 | <span class="grey">Dawson & Stenerson Standards Track [Page 132]</span> | |
7510 | </pre><pre class="newpage"><a name="page-133" id="page-133" href="#page-133" class="invisible"> </a> | |
7511 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7512 | ||
7513 | ||
7514 | A change to the sequence number is not the mechanism that an | |
7515 | "Organizer" uses to request a response from the "Attendees". The | |
7516 | "RSVP" parameter on the "ATTENDEE" property is used by the | |
7517 | "Organizer" to indicate that a response from the "Attendees" is | |
7518 | requested. | |
7519 | ||
7520 | Format Definition: This property is defined by the following | |
7521 | notation: | |
7522 | ||
7523 | seq = "SEQUENCE" seqparam ":" integer CRLF | |
7524 | ; Default is "0" | |
7525 | ||
7526 | seqparam = *(";" xparam) | |
7527 | ||
7528 | Example: The following is an example of this property for a calendar | |
7529 | component that was just created by the "Organizer". | |
7530 | ||
7531 | SEQUENCE:0 | |
7532 | ||
7533 | The following is an example of this property for a calendar component | |
7534 | that has been revised two different times by the "Organizer". | |
7535 | ||
7536 | SEQUENCE:2 | |
7537 | ||
7538 | <span class="h4"><h4><a name="section-4.8.8">4.8.8</a> Miscellaneous Component Properties</h4></span> | |
7539 | ||
7540 | The following properties specify information about a number of | |
7541 | miscellaneous features of calendar components. | |
7542 | ||
7543 | <span class="h5"><h5><a name="section-4.8.8.1">4.8.8.1</a> Non-standard Properties</h5></span> | |
7544 | ||
7545 | Property Name: Any property name with a "X-" prefix | |
7546 | ||
7547 | Purpose: This class of property provides a framework for defining | |
7548 | non-standard properties. | |
7549 | ||
7550 | Value Type: TEXT | |
7551 | ||
7552 | Property Parameters: Non-standard and language property parameters | |
7553 | can be specified on this property. | |
7554 | ||
7555 | Conformance: This property can be specified in any calendar | |
7556 | component. | |
7557 | ||
7558 | Description: The MIME Calendaring and Scheduling Content Type | |
7559 | provides a "standard mechanism for doing non-standard things". This | |
7560 | extension support is provided for implementers to "push the envelope" | |
7561 | on the existing version of the memo. Extension properties are | |
7562 | ||
7563 | ||
7564 | ||
7565 | <span class="grey">Dawson & Stenerson Standards Track [Page 133]</span> | |
7566 | </pre><pre class="newpage"><a name="page-134" id="page-134" href="#page-134" class="invisible"> </a> | |
7567 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7568 | ||
7569 | ||
7570 | specified by property and/or property parameter names that have the | |
7571 | prefix text of "X-" (the two character sequence: LATIN CAPITAL LETTER | |
7572 | X character followed by the HYPEN-MINUS character). It is recommended | |
7573 | that vendors concatenate onto this sentinel another short prefix text | |
7574 | to identify the vendor. This will facilitate readability of the | |
7575 | extensions and minimize possible collision of names between different | |
7576 | vendors. User agents that support this content type are expected to | |
7577 | be able to parse the extension properties and property parameters but | |
7578 | can ignore them. | |
7579 | ||
7580 | At present, there is no registration authority for names of extension | |
7581 | properties and property parameters. The data type for this property | |
7582 | is TEXT. Optionally, the data type can be any of the other valid data | |
7583 | types. | |
7584 | ||
7585 | Format Definition: The property is defined by the following notation: | |
7586 | ||
7587 | x-prop = x-name *(";" xparam) [";" languageparam] ":" text CRLF | |
7588 | ; Lines longer than 75 octets should be folded | |
7589 | ||
7590 | Example: The following might be the ABC vendor's extension for an | |
7591 | audio-clip form of subject property: | |
7592 | ||
7593 | X-ABC-MMSUBJ;X-ABC-MMSUBJTYPE=wave:http://load.noise.org/mysubj.wav | |
7594 | ||
7595 | <span class="h5"><h5><a name="section-4.8.8.2">4.8.8.2</a> Request Status</h5></span> | |
7596 | ||
7597 | Property Name: REQUEST-STATUS | |
7598 | ||
7599 | Purpose: This property defines the status code returned for a | |
7600 | scheduling request. | |
7601 | ||
7602 | Value Type: TEXT | |
7603 | ||
7604 | Property Parameters: Non-standard and language property parameters | |
7605 | can be specified on this property. | |
7606 | ||
7607 | Conformance: The property can be specified in "VEVENT", "VTODO", | |
7608 | "VJOURNAL" or "VFREEBUSY" calendar component. | |
7609 | ||
7610 | Description: This property is used to return status code information | |
7611 | related to the processing of an associated iCalendar object. The data | |
7612 | type for this property is TEXT. | |
7613 | ||
7614 | The value consists of a short return status component, a longer | |
7615 | return status description component, and optionally a status-specific | |
7616 | data component. The components of the value are separated by the | |
7617 | SEMICOLON character (US-ASCII decimal 59). | |
7618 | ||
7619 | ||
7620 | ||
7621 | <span class="grey">Dawson & Stenerson Standards Track [Page 134]</span> | |
7622 | </pre><pre class="newpage"><a name="page-135" id="page-135" href="#page-135" class="invisible"> </a> | |
7623 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7624 | ||
7625 | ||
7626 | The short return status is a PERIOD character (US-ASCII decimal 46) | |
7627 | separated 3-tuple of integers. For example, "3.1.1". The successive | |
7628 | levels of integers provide for a successive level of status code | |
7629 | granularity. | |
7630 | ||
7631 | The following are initial classes for the return status code. | |
7632 | Individual iCalendar object methods will define specific return | |
7633 | status codes for these classes. In addition, other classes for the | |
7634 | return status code may be defined using the registration process | |
7635 | defined later in this memo. | |
7636 | ||
7637 | |==============+===============================================| | |
7638 | | Short Return | Longer Return Status Description | | |
7639 | | Status Code | | | |
7640 | |==============+===============================================| | |
7641 | | 1.xx | Preliminary success. This class of status | | |
7642 | | | of status code indicates that the request has | | |
7643 | | | request has been initially processed but that | | |
7644 | | | completion is pending. | | |
7645 | |==============+===============================================| | |
7646 | | 2.xx | Successful. This class of status code | | |
7647 | | | indicates that the request was completed | | |
7648 | | | successfuly. However, the exact status code | | |
7649 | | | can indicate that a fallback has been taken. | | |
7650 | |==============+===============================================| | |
7651 | | 3.xx | Client Error. This class of status code | | |
7652 | | | indicates that the request was not successful.| | |
7653 | | | The error is the result of either a syntax or | | |
7654 | | | a semantic error in the client formatted | | |
7655 | | | request. Request should not be retried until | | |
7656 | | | the condition in the request is corrected. | | |
7657 | |==============+===============================================| | |
7658 | | 4.xx | Scheduling Error. This class of status code | | |
7659 | | | indicates that the request was not successful.| | |
7660 | | | Some sort of error occurred within the | | |
7661 | | | calendaring and scheduling service, not | | |
7662 | | | directly related to the request itself. | | |
7663 | |==============+===============================================| | |
7664 | ||
7665 | Format Definition: The property is defined by the following notation: | |
7666 | ||
7667 | rstatus = "REQUEST-STATUS" rstatparam ":" | |
7668 | statcode ";" statdesc [";" extdata] | |
7669 | ||
7670 | rstatparam = *( | |
7671 | ||
7672 | ; the following is optional, | |
7673 | ; but MUST NOT occur more than once | |
7674 | ||
7675 | ||
7676 | ||
7677 | <span class="grey">Dawson & Stenerson Standards Track [Page 135]</span> | |
7678 | </pre><pre class="newpage"><a name="page-136" id="page-136" href="#page-136" class="invisible"> </a> | |
7679 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7680 | ||
7681 | ||
7682 | (";" languageparm) / | |
7683 | ||
7684 | ; the following is optional, | |
7685 | ; and MAY occur more than once | |
7686 | ||
7687 | (";" xparam) | |
7688 | ||
7689 | ) | |
7690 | ||
7691 | statcode = 1*DIGIT *("." 1*DIGIT) | |
7692 | ;Hierarchical, numeric return status code | |
7693 | ||
7694 | statdesc = text | |
7695 | ;Textual status description | |
7696 | ||
7697 | extdata = text | |
7698 | ;Textual exception data. For example, the offending property | |
7699 | ;name and value or complete property line. | |
7700 | ||
7701 | Example: The following are some possible examples of this property. | |
7702 | The COMMA and SEMICOLON separator characters in the property value | |
7703 | are BACKSLASH character escaped because they appear in a text value. | |
7704 | ||
7705 | REQUEST-STATUS:2.0;Success | |
7706 | ||
7707 | REQUEST-STATUS:3.1;Invalid property value;DTSTART:96-Apr-01 | |
7708 | ||
7709 | REQUEST-STATUS:2.8; Success\, repeating event ignored. Scheduled | |
7710 | as a single event.;RRULE:FREQ=WEEKLY\;INTERVAL=2 | |
7711 | ||
7712 | REQUEST-STATUS:4.1;Event conflict. Date/time is busy. | |
7713 | ||
7714 | REQUEST-STATUS:3.7;Invalid calendar user;ATTENDEE: | |
7715 | MAILTO:jsmith@host.com | |
7716 | ||
7717 | <span class="h2"><h2><a name="section-5">5</a> iCalendar Object Examples</h2></span> | |
7718 | ||
7719 | The following examples are provided as an informational source of | |
7720 | illustrative iCalendar objects consistent with this content type. | |
7721 | ||
7722 | The following example specifies a three-day conference that begins at | |
7723 | 8:00 AM EDT, September 18, 1996 and end at 6:00 PM EDT, September 20, | |
7724 | 1996. | |
7725 | ||
7726 | BEGIN:VCALENDAR PRODID:-//xyz Corp//NONSGML PDA Calendar Verson | |
7727 | 1.0//EN VERSION:2.0 BEGIN:VEVENT DTSTAMP:19960704T120000Z | |
7728 | UID:uid1@host.com ORGANIZER:MAILTO:jsmith@host.com | |
7729 | DTSTART:19960918T143000Z DTEND:19960920T220000Z STATUS:CONFIRMED | |
7730 | ||
7731 | ||
7732 | ||
7733 | <span class="grey">Dawson & Stenerson Standards Track [Page 136]</span> | |
7734 | </pre><pre class="newpage"><a name="page-137" id="page-137" href="#page-137" class="invisible"> </a> | |
7735 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7736 | ||
7737 | ||
7738 | CATEGORIES:CONFERENCE SUMMARY:Networld+Interop Conference | |
7739 | DESCRIPTION:Networld+Interop Conference | |
7740 | and Exhibit\nAtlanta World Congress Center\n | |
7741 | Atlanta, Georgia END:VEVENT END:VCALENDAR | |
7742 | ||
7743 | The following example specifies a group scheduled meeting that begin | |
7744 | at 8:30 AM EST on March 12, 1998 and end at 9:30 AM EST on March 12, | |
7745 | 1998. The "Organizer" has scheduled the meeting with one or more | |
7746 | calendar users in a group. A time zone specification for Eastern | |
7747 | United States has been specified. | |
7748 | ||
7749 | BEGIN:VCALENDAR | |
7750 | PRODID:-//RDU Software//NONSGML HandCal//EN | |
7751 | VERSION:2.0 | |
7752 | BEGIN:VTIMEZONE | |
7753 | TZID:US-Eastern | |
7754 | BEGIN:STANDARD | |
7755 | DTSTART:19981025T020000 | |
7756 | RDATE:19981025T020000 | |
7757 | TZOFFSETFROM:-0400 | |
7758 | TZOFFSETTO:-0500 | |
7759 | TZNAME:EST | |
7760 | END:STANDARD | |
7761 | BEGIN:DAYLIGHT | |
7762 | DTSTART:19990404T020000 | |
7763 | RDATE:19990404T020000 | |
7764 | TZOFFSETFROM:-0500 | |
7765 | TZOFFSETTO:-0400 | |
7766 | TZNAME:EDT | |
7767 | END:DAYLIGHT | |
7768 | END:VTIMEZONE | |
7769 | BEGIN:VEVENT | |
7770 | DTSTAMP:19980309T231000Z | |
7771 | UID:guid-1.host1.com | |
7772 | ORGANIZER;ROLE=CHAIR:MAILTO:mrbig@host.com | |
7773 | ATTENDEE;RSVP=TRUE;ROLE=REQ-PARTICIPANT;CUTYPE=GROUP: | |
7774 | MAILTO:employee-A@host.com | |
7775 | DESCRIPTION:Project XYZ Review Meeting | |
7776 | CATEGORIES:MEETING | |
7777 | CLASS:PUBLIC | |
7778 | CREATED:19980309T130000Z | |
7779 | SUMMARY:XYZ Project Review | |
7780 | DTSTART;TZID=US-Eastern:19980312T083000 | |
7781 | DTEND;TZID=US-Eastern:19980312T093000 | |
7782 | LOCATION:1CP Conference Room 4350 | |
7783 | END:VEVENT | |
7784 | END:VCALENDAR | |
7785 | ||
7786 | ||
7787 | ||
7788 | ||
7789 | <span class="grey">Dawson & Stenerson Standards Track [Page 137]</span> | |
7790 | </pre><pre class="newpage"><a name="page-138" id="page-138" href="#page-138" class="invisible"> </a> | |
7791 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7792 | ||
7793 | ||
7794 | The following is an example of an iCalendar object passed in a MIME | |
7795 | message with a single body part consisting of a "text/calendar" | |
7796 | Content Type. | |
7797 | ||
7798 | TO:jsmith@host1.com | |
7799 | FROM:jdoe@host1.com | |
7800 | MIME-VERSION:1.0 | |
7801 | MESSAGE-ID:<id3@host1.com> | |
7802 | CONTENT-TYPE:text/calendar | |
7803 | ||
7804 | BEGIN:VCALENDAR | |
7805 | METHOD:xyz | |
7806 | VERSION:2.0 | |
7807 | PRODID:-//ABC Corporation//NONSGML My Product//EN | |
7808 | BEGIN:VEVENT | |
7809 | DTSTAMP:19970324T1200Z | |
7810 | SEQUENCE:0 | |
7811 | UID:uid3@host1.com | |
7812 | ORGANIZER:MAILTO:jdoe@host1.com | |
7813 | ATTENDEE;RSVP=TRUE:MAILTO:jsmith@host1.com | |
7814 | DTSTART:19970324T123000Z | |
7815 | DTEND:19970324T210000Z | |
7816 | CATEGORIES:MEETING,PROJECT | |
7817 | CLASS:PUBLIC | |
7818 | SUMMARY:Calendaring Interoperability Planning Meeting | |
7819 | DESCRIPTION:Discuss how we can test c&s interoperability\n | |
7820 | using iCalendar and other IETF standards. | |
7821 | LOCATION:LDB Lobby | |
7822 | ATTACH;FMTTYPE=application/postscript:ftp://xyzCorp.com/pub/ | |
7823 | conf/bkgrnd.ps | |
7824 | END:VEVENT | |
7825 | END:VCALENDAR | |
7826 | ||
7827 | The following is an example of a to-do due on April 15, 1998. An | |
7828 | audio alarm has been specified to remind the calendar user at noon, | |
7829 | the day before the to-do is expected to be completed and repeat | |
7830 | hourly, four additional times. The to-do definition has been modified | |
7831 | twice since it was initially created. | |
7832 | ||
7833 | BEGIN:VCALENDAR | |
7834 | VERSION:2.0 | |
7835 | PRODID:-//ABC Corporation//NONSGML My Product//EN | |
7836 | BEGIN:VTODO | |
7837 | DTSTAMP:19980130T134500Z | |
7838 | SEQUENCE:2 | |
7839 | UID:uid4@host1.com | |
7840 | ORGANIZER:MAILTO:unclesam@us.gov | |
7841 | ATTENDEE;PARTSTAT=ACCEPTED:MAILTO:jqpublic@host.com | |
7842 | ||
7843 | ||
7844 | ||
7845 | <span class="grey">Dawson & Stenerson Standards Track [Page 138]</span> | |
7846 | </pre><pre class="newpage"><a name="page-139" id="page-139" href="#page-139" class="invisible"> </a> | |
7847 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7848 | ||
7849 | ||
7850 | DUE:19980415T235959 | |
7851 | STATUS:NEEDS-ACTION | |
7852 | SUMMARY:Submit Income Taxes | |
7853 | BEGIN:VALARM | |
7854 | ACTION:AUDIO | |
7855 | TRIGGER:19980403T120000 | |
7856 | ATTACH;FMTTYPE=audio/basic:http://host.com/pub/audio- | |
7857 | files/ssbanner.aud | |
7858 | REPEAT:4 | |
7859 | DURATION:PT1H | |
7860 | END:VALARM | |
7861 | END:VTODO | |
7862 | END:VCALENDAR | |
7863 | ||
7864 | The following is an example of a journal entry. | |
7865 | ||
7866 | BEGIN:VCALENDAR | |
7867 | VERSION:2.0 | |
7868 | PRODID:-//ABC Corporation//NONSGML My Product//EN | |
7869 | BEGIN:VJOURNAL | |
7870 | DTSTAMP:19970324T120000Z | |
7871 | UID:uid5@host1.com | |
7872 | ORGANIZER:MAILTO:jsmith@host.com | |
7873 | STATUS:DRAFT | |
7874 | CLASS:PUBLIC | |
7875 | CATEGORY:Project Report, XYZ, Weekly Meeting | |
7876 | DESCRIPTION:Project xyz Review Meeting Minutes\n | |
7877 | Agenda\n1. Review of project version 1.0 requirements.\n2. | |
7878 | Definition | |
7879 | of project processes.\n3. Review of project schedule.\n | |
7880 | Participants: John Smith, Jane Doe, Jim Dandy\n-It was | |
7881 | decided that the requirements need to be signed off by | |
7882 | product marketing.\n-Project processes were accepted.\n | |
7883 | -Project schedule needs to account for scheduled holidays | |
7884 | and employee vacation time. Check with HR for specific | |
7885 | dates.\n-New schedule will be distributed by Friday.\n- | |
7886 | Next weeks meeting is cancelled. No meeting until 3/23. | |
7887 | END:VJOURNAL | |
7888 | END:VCALENDAR | |
7889 | ||
7890 | The following is an example of published busy time information. The | |
7891 | iCalendar object might be placed in the network resource | |
7892 | www.host.com/calendar/busytime/jsmith.ifb. | |
7893 | ||
7894 | BEGIN:VCALENDAR | |
7895 | VERSION:2.0 | |
7896 | PRODID:-//RDU Software//NONSGML HandCal//EN | |
7897 | BEGIN:VFREEBUSY | |
7898 | ||
7899 | ||
7900 | ||
7901 | <span class="grey">Dawson & Stenerson Standards Track [Page 139]</span> | |
7902 | </pre><pre class="newpage"><a name="page-140" id="page-140" href="#page-140" class="invisible"> </a> | |
7903 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7904 | ||
7905 | ||
7906 | ORGANIZER:MAILTO:jsmith@host.com | |
7907 | DTSTART:19980313T141711Z | |
7908 | DTEND:19980410T141711Z | |
7909 | FREEBUSY:19980314T233000Z/19980315T003000Z | |
7910 | FREEBUSY:19980316T153000Z/19980316T163000Z | |
7911 | FREEBUSY:19980318T030000Z/19980318T040000Z | |
7912 | URL:http://www.host.com/calendar/busytime/jsmith.ifb | |
7913 | END:VFREEBUSY | |
7914 | END:VCALENDAR | |
7915 | ||
7916 | <span class="h2"><h2><a name="section-6">6</a> Recommended Practices</h2></span> | |
7917 | ||
7918 | These recommended practices should be followed in order to assure | |
7919 | consistent handling of the following cases for an iCalendar object. | |
7920 | ||
7921 | 1. Content lines longer than 75 octets SHOULD be folded. | |
7922 | ||
7923 | 2. A calendar entry with a "DTSTART" property but no "DTEND" | |
7924 | property does not take up any time. It is intended to represent | |
7925 | an event that is associated with a given calendar date and time | |
7926 | of day, such as an anniversary. Since the event does not take up | |
7927 | any time, it MUST NOT be used to record busy time no matter what | |
7928 | the value for the "TRANSP" property. | |
7929 | ||
7930 | 3. When the "DTSTART" and "DTEND", for "VEVENT", "VJOURNAL" and | |
7931 | "VFREEBUSY" calendar components, and "DTSTART" and "DUE", for | |
7932 | "VTODO" calendar components, have the same value data type (e.g., | |
7933 | DATE-TIME), they SHOULD specify values in the same time format | |
7934 | (e.g., UTC time format). | |
7935 | ||
7936 | 4. When the combination of the "RRULE" and "RDATE" properties on an | |
7937 | iCalendar object produces multiple instances having the same | |
7938 | start date/time, they should be collapsed to, and considered as, | |
7939 | a single instance. | |
7940 | ||
7941 | 5. When a calendar user receives multiple requests for the same | |
7942 | calendar component (e.g., REQUEST for a "VEVENT" calendar | |
7943 | component) as a result of being on multiple mailing lists | |
7944 | specified by "ATTENDEE" properties in the request, they SHOULD | |
7945 | respond to only one of the requests. The calendar user SHOULD | |
7946 | also specify (using the "MEMBER" parameter of the "ATTENDEE" | |
7947 | property) which mailing list they are a member of. | |
7948 | ||
7949 | 6. An implementation can truncate a "SUMMARY" property value to 255 | |
7950 | characters. | |
7951 | ||
7952 | ||
7953 | ||
7954 | ||
7955 | ||
7956 | ||
7957 | <span class="grey">Dawson & Stenerson Standards Track [Page 140]</span> | |
7958 | </pre><pre class="newpage"><a name="page-141" id="page-141" href="#page-141" class="invisible"> </a> | |
7959 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
7960 | ||
7961 | ||
7962 | 7. If seconds of the minute are not supported by an implementation, | |
7963 | then a value of "00" SHOULD be specified for the seconds | |
7964 | component in a time value. | |
7965 | ||
7966 | 8. If the value type parameter (VALUE=) contains an unknown value | |
7967 | type, it SHOULD be treated as TEXT. | |
7968 | ||
7969 | 9. TZURL values SHOULD NOT be specified as a FILE URI type. This URI | |
7970 | form can be useful within an organization, but is problematic in | |
7971 | the Internet. | |
7972 | ||
7973 | 10. Some possible English values for CATEGORIES property include | |
7974 | "ANNIVERSARY", "APPOINTMENT", "BUSINESS", "EDUCATION", | |
7975 | "HOLIDAY", "MEETING", "MISCELLANEOUS", "NON-WORKING HOURS", "NOT | |
7976 | IN OFFICE", "PERSONAL", "PHONE CALL", "SICK DAY", "SPECIAL | |
7977 | OCCASION", "TRAVEL", "VACATION". Categories can be specified in | |
7978 | any registered language. | |
7979 | ||
7980 | 11. Some possible English values for RESOURCES property include | |
7981 | "CATERING", "CHAIRS", "COMPUTER PROJECTOR", "EASEL", "OVERHEAD | |
7982 | PROJECTOR", "SPEAKER PHONE", "TABLE", "TV", "VCR", "VIDEO | |
7983 | PHONE", "VEHICLE". Resources can be specified in any registered | |
7984 | language. | |
7985 | ||
7986 | <span class="h2"><h2><a name="section-7">7</a> Registration of Content Type Elements</h2></span> | |
7987 | ||
7988 | This section provides the process for registration of MIME | |
7989 | Calendaring and Scheduling Content Type iCalendar object methods and | |
7990 | new or modified properties. | |
7991 | ||
7992 | <span class="h3"><h3><a name="section-7.1">7.1</a> Registration of New and Modified iCalendar Object Methods</h3></span> | |
7993 | ||
7994 | New MIME Calendaring and Scheduling Content Type iCalendar object | |
7995 | methods are registered by the publication of an IETF Request for | |
7996 | Comments (RFC). Changes to an iCalendar object method are registered | |
7997 | by the publication of a revision of the RFC defining the method. | |
7998 | ||
7999 | <span class="h3"><h3><a name="section-7.2">7.2</a> Registration of New Properties</h3></span> | |
8000 | ||
8001 | This section defines procedures by which new properties or enumerated | |
8002 | property values for the MIME Calendaring and Scheduling Content Type | |
8003 | can be registered with the IANA. Non-IANA properties can be used by | |
8004 | bilateral agreement, provided the associated properties names follow | |
8005 | the "X-" convention. | |
8006 | ||
8007 | The procedures defined here are designed to allow public comment and | |
8008 | review of new properties, while posing only a small impediment to the | |
8009 | definition of new properties. | |
8010 | ||
8011 | ||
8012 | ||
8013 | <span class="grey">Dawson & Stenerson Standards Track [Page 141]</span> | |
8014 | </pre><pre class="newpage"><a name="page-142" id="page-142" href="#page-142" class="invisible"> </a> | |
8015 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
8016 | ||
8017 | ||
8018 | Registration of a new property is accomplished by the following | |
8019 | steps. | |
8020 | ||
8021 | <span class="h4"><h4><a name="section-7.2.1">7.2.1</a> Define the property</h4></span> | |
8022 | ||
8023 | A property is defined by completing the following template. | |
8024 | ||
8025 | To: ietf-calendar@imc.org | |
8026 | ||
8027 | Subject: Registration of text/calendar MIME property XXX | |
8028 | ||
8029 | Property name: | |
8030 | ||
8031 | Property purpose: | |
8032 | ||
8033 | Property value type(s): | |
8034 | ||
8035 | Property parameter (s): | |
8036 | ||
8037 | Conformance: | |
8038 | ||
8039 | Description: | |
8040 | ||
8041 | Format definition: | |
8042 | ||
8043 | Examples: | |
8044 | ||
8045 | The meaning of each field in the template is as follows. | |
8046 | ||
8047 | Property name: The name of the property, as it will appear in the | |
8048 | body of an text/calendar MIME Content-Type "property: value" line to | |
8049 | the left of the colon ":". | |
8050 | ||
8051 | Property purpose: The purpose of the property (e.g., to indicate a | |
8052 | delegate for the event or to-do, etc.). Give a short but clear | |
8053 | description. | |
8054 | ||
8055 | Property value type (s): Any of the valid value types for the | |
8056 | property value needs to be specified. The default value type also | |
8057 | needs to be specified. If a new value type is specified, it needs to | |
8058 | be declared in this section. | |
8059 | ||
8060 | Property parameter (s): Any of the valid property parameters for the | |
8061 | property needs to be specified. | |
8062 | ||
8063 | Conformance: The calendar components that the property can appear in | |
8064 | needs to be specified. | |
8065 | ||
8066 | ||
8067 | ||
8068 | ||
8069 | <span class="grey">Dawson & Stenerson Standards Track [Page 142]</span> | |
8070 | </pre><pre class="newpage"><a name="page-143" id="page-143" href="#page-143" class="invisible"> </a> | |
8071 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
8072 | ||
8073 | ||
8074 | Description: Any special notes about the property, how it is to be | |
8075 | used, etc. | |
8076 | ||
8077 | Format definition: The ABNF for the property definition needs to be | |
8078 | specified. | |
8079 | ||
8080 | Examples: One or more examples of instances of the property needs to | |
8081 | be specified. | |
8082 | ||
8083 | <span class="h4"><h4><a name="section-7.2.2">7.2.2</a> Post the Property definition</h4></span> | |
8084 | ||
8085 | The property description MUST be posted to the new property | |
8086 | discussion list, ietf-calendar@imc.org. | |
8087 | ||
8088 | <span class="h4"><h4><a name="section-7.2.3">7.2.3</a> Allow a comment period</h4></span> | |
8089 | ||
8090 | Discussion on the new property MUST be allowed to take place on the | |
8091 | list for a minimum of two weeks. Consensus MUST be reached on the | |
8092 | property before proceeding to the next step. | |
8093 | ||
8094 | <span class="h4"><h4><a name="section-7.2.4">7.2.4</a> Submit the property for approval</h4></span> | |
8095 | ||
8096 | Once the two-week comment period has elapsed, and the proposer is | |
8097 | convinced consensus has been reached on the property, the | |
8098 | registration application should be submitted to the Method Reviewer | |
8099 | for approval. The Method Reviewer is appointed to the Application | |
8100 | Area Directors and can either accept or reject the property | |
8101 | registration. An accepted registration should be passed on by the | |
8102 | Method Reviewer to the IANA for inclusion in the official IANA method | |
8103 | registry. The registration can be rejected for any of the following | |
8104 | reasons. 1) Insufficient comment period; 2) Consensus not reached; 3) | |
8105 | Technical deficiencies raised on the list or elsewhere have not been | |
8106 | addressed. The Method Reviewer's decision to reject a property can be | |
8107 | appealed by the proposer to the IESG, or the objections raised can be | |
8108 | addressed by the proposer and the property resubmitted. | |
8109 | ||
8110 | <span class="h3"><h3><a name="section-7.3">7.3</a> Property Change Control</h3></span> | |
8111 | ||
8112 | Existing properties can be changed using the same process by which | |
8113 | they were registered. | |
8114 | ||
8115 | 1. Define the change | |
8116 | ||
8117 | 2. Post the change | |
8118 | ||
8119 | 3. Allow a comment period | |
8120 | ||
8121 | 4. Submit the property for approval | |
8122 | ||
8123 | ||
8124 | ||
8125 | <span class="grey">Dawson & Stenerson Standards Track [Page 143]</span> | |
8126 | </pre><pre class="newpage"><a name="page-144" id="page-144" href="#page-144" class="invisible"> </a> | |
8127 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
8128 | ||
8129 | ||
8130 | Note that the original author or any other interested party can | |
8131 | propose a change to an existing property, but that such changes | |
8132 | should only be proposed when there are serious omissions or errors in | |
8133 | the published memo. The Method Reviewer can object to a change if it | |
8134 | is not backward compatible, but is not required to do so. | |
8135 | ||
8136 | Property definitions can never be deleted from the IANA registry, but | |
8137 | properties which are no longer believed to be useful can be declared | |
8138 | OBSOLETE by a change to their "intended use" field. | |
8139 | ||
8140 | <span class="h2"><h2><a name="section-8">8</a> References</h2></span> | |
8141 | ||
8142 | [<a name="ref-IMIP" id="ref-IMIP">IMIP</a>] Dawson, F., Mansour, S. and S. Silverberg, "iCalendar | |
8143 | Message-based Interoperability Protocol (IMIP)", <a href="http://tools.ietf.org/html/rfc2447">RFC 2447</a>, | |
8144 | November 1998. | |
8145 | ||
8146 | [<a name="ref-ITIP" id="ref-ITIP">ITIP</a>] Silverberg, S., Mansour, S., Dawson, F. and R. Hopson, | |
8147 | "iCalendar Transport-Independent Interoperability Protocol | |
8148 | (iTIP) : Scheduling Events, Busy Time, To-dos and Journal | |
8149 | Entries", <a href="http://tools.ietf.org/html/rfc2446">RFC 2446</a>, November 1998. | |
8150 | ||
8151 | [ISO 8601] ISO 8601, "Data elements and interchange formats- | |
8152 | Information interchange--Representation of dates and | |
8153 | times", International Organization for Standardization, | |
8154 | June, 1988. | |
8155 | ||
8156 | [ISO 9070] ISO/IEC 9070, "Information Technology_SGML Support | |
8157 | Facilities--Registration Procedures for Public Text Owner | |
8158 | Identifiers", Second Edition, International Organization | |
8159 | for Standardization, April 1991. | |
8160 | ||
8161 | [<a name="ref-RFC 822" id="ref-RFC 822">RFC 822</a>] Crocker, D., "Standard for the Format of ARPA Internet | |
8162 | Text Messages", STD 11, <a href="http://tools.ietf.org/html/rfc822">RFC 822</a>, August 1982. | |
8163 | ||
8164 | [<a name="ref-RFC 1738" id="ref-RFC 1738">RFC 1738</a>] Berners-Lee, T., Masinter, L. and M. McCahill, "Uniform | |
8165 | Resource Locators (URL)", <a href="http://tools.ietf.org/html/rfc1738">RFC 1738</a>, December 1994. | |
8166 | ||
8167 | [<a name="ref-RFC 1766" id="ref-RFC 1766">RFC 1766</a>] Alvestrand, H., "Tags for the Identification of | |
8168 | Languages", <a href="http://tools.ietf.org/html/rfc1766">RFC 1766</a>, March 1995. | |
8169 | ||
8170 | [<a name="ref-RFC 2045" id="ref-RFC 2045">RFC 2045</a>] Freed, N. and N. Borenstein, " Multipurpose Internet Mail | |
8171 | Extensions (MIME) - Part One: Format of Internet Message | |
8172 | Bodies", <a href="http://tools.ietf.org/html/rfc2045">RFC 2045</a>, November 1996. | |
8173 | ||
8174 | [<a name="ref-RFC 2046" id="ref-RFC 2046">RFC 2046</a>] Freed, N. and N. Borenstein, " Multipurpose Internet Mail | |
8175 | Extensions (MIME) - Part Two: Media Types", <a href="http://tools.ietf.org/html/rfc2046">RFC 2046</a>, | |
8176 | November 1996. | |
8177 | ||
8178 | ||
8179 | ||
8180 | ||
8181 | <span class="grey">Dawson & Stenerson Standards Track [Page 144]</span> | |
8182 | </pre><pre class="newpage"><a name="page-145" id="page-145" href="#page-145" class="invisible"> </a> | |
8183 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
8184 | ||
8185 | ||
8186 | [<a name="ref-RFC 2048" id="ref-RFC 2048">RFC 2048</a>] Freed, N., Klensin, J. and J. Postel, "Multipurpose | |
8187 | Internet Mail Extensions (MIME) - Part Four: Registration | |
8188 | Procedures", <a href="http://tools.ietf.org/html/rfc2048">RFC 2048</a>, January 1997. | |
8189 | ||
8190 | [<a name="ref-RFC 2119" id="ref-RFC 2119">RFC 2119</a>] Bradner, S., "Key words for use in RFCs to Indicate | |
8191 | Requirement Levels", <a href="http://tools.ietf.org/html/bcp14">BCP 14</a>, <a href="http://tools.ietf.org/html/rfc2119">RFC 2119</a>, March 1997. | |
8192 | ||
8193 | [<a name="ref-RFC 2234" id="ref-RFC 2234">RFC 2234</a>] Crocker, D. and P. Overell, "Augmented BNF for Syntax | |
8194 | Specifications: ABNF", <a href="http://tools.ietf.org/html/rfc2234">RFC 2234</a>, November 1997. | |
8195 | ||
8196 | [<a name="ref-RFC 2279" id="ref-RFC 2279">RFC 2279</a>] Yergeau, F., "UTF-8, a transformation format of ISO | |
8197 | 10646", <a href="http://tools.ietf.org/html/rfc2279">RFC 2279</a>, January 1998. | |
8198 | ||
8199 | [<a name="ref-RFC 2425" id="ref-RFC 2425">RFC 2425</a>] Howes, T., Smith, M. and F. Dawson, "A MIME Content-Type | |
8200 | for Directory Information", <a href="http://tools.ietf.org/html/rfc2425">RFC 2425</a>, September 1998. | |
8201 | ||
8202 | [<a name="ref-RFC 2426" id="ref-RFC 2426">RFC 2426</a>] Dawson, F. and T. Howes, "vCard MIME Directory Profile", | |
8203 | <a href="http://tools.ietf.org/html/rfc2426">RFC 2426</a>, September 1998. | |
8204 | ||
8205 | [<a name="ref-TZ" id="ref-TZ">TZ</a>] Olson, A.D., et al, Time zone code and data, | |
8206 | <a href="ftp://elsie.nci.nih.gov/pub/">ftp://elsie.nci.nih.gov/pub/</a>, updated periodically. | |
8207 | ||
8208 | [<a name="ref-VCAL" id="ref-VCAL">VCAL</a>] Internet Mail Consortium, "vCalendar - The Electronic | |
8209 | Calendaring and Scheduling Exchange Format", | |
8210 | <a href="http://www.imc.org/pdi/vcal-10.txt">http://www.imc.org/pdi/vcal-10.txt</a>, September 18, 1996. | |
8211 | ||
8212 | <span class="h2"><h2><a name="section-9">9</a> Acknowledgments</h2></span> | |
8213 | ||
8214 | A hearty thanks to the IETF Calendaring and Scheduling Working Group | |
8215 | and also the following individuals who have participated in the | |
8216 | drafting, review and discussion of this memo: | |
8217 | ||
8218 | Roland Alden, Harald T. Alvestrand, Eric Berman, Denis Bigorgne, John | |
8219 | Binici, Bill Bliss, Philippe Boucher, Steve Carter, Andre | |
8220 | Courtemanche, Dave Crocker, David Curley, Alec Dun, John Evans, Ross | |
8221 | Finlayson, Randell Flint, Ned Freed, Patrik Faltstrom, Chuck | |
8222 | Grandgent, Mark Handley, Steve Hanna, Paul B. Hill, Paul Hoffman, | |
8223 | Ross Hopson, Mark Horton, Daryl Huff, Bruce Kahn, C. Harald Koch, | |
8224 | Ryan Jansen, Don Lavange, Antoine Leca, Theodore Lorek, Steve | |
8225 | Mansour, Skip Montanaro, Keith Moore, Cecil Murray, Chris Newman, | |
8226 | John Noerenberg, Ralph Patterson, Pete Resnick, Keith Rhodes, Robert | |
8227 | Ripberger, John Rose, Doug Royer, Andras Salamar, Ted Schuh, Vinod | |
8228 | Seraphin, Derrick Shadel, Ken Shan, Andrew Shuman, Steve Silverberg, | |
8229 | William P. Spencer, John Sun, Mark Towfiq, Yvonne Tso, Robert Visnov, | |
8230 | James L. Weiner, Mike Weston, William Wyatt. | |
8231 | ||
8232 | ||
8233 | ||
8234 | ||
8235 | ||
8236 | ||
8237 | <span class="grey">Dawson & Stenerson Standards Track [Page 145]</span> | |
8238 | </pre><pre class="newpage"><a name="page-146" id="page-146" href="#page-146" class="invisible"> </a> | |
8239 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
8240 | ||
8241 | ||
8242 | <span class="h2"><h2><a name="section-10">10</a> Authors' and Chairs' Addresses</h2></span> | |
8243 | ||
8244 | The following address information is provided in a MIME-VCARD, | |
8245 | Electronic Business Card, format. | |
8246 | ||
8247 | The authors of this memo are: | |
8248 | ||
8249 | BEGIN:VCARD | |
8250 | VERSION:3.0 | |
8251 | N:Dawson;Frank | |
8252 | FN:Frank Dawson | |
8253 | ORG:Lotus Development Corporation | |
8254 | ADR;TYPE=WORK,POSTAL,PARCEL:;;6544 Battleford Drive; | |
8255 | Raleigh;NC;27613-3502;USA | |
8256 | TEL;TYPE=WORK,MSG:+1-919-676-9515 | |
8257 | TEL;TYPE=WORK,FAX:+1-919-676-9564 | |
8258 | EMAIL;TYPE=PREF,INTERNET:Frank_Dawson@Lotus.com | |
8259 | EMAIL;TYPE=INTERNET:fdawson@earthlink.net | |
8260 | URL:http://home.earthlink.net/~fdawson | |
8261 | END:VCARD | |
8262 | ||
8263 | BEGIN:VCARD | |
8264 | VERSION:3.0 | |
8265 | N:Stenerson;Derik | |
8266 | FN:Derik Stenerson | |
8267 | ORG:Microsoft Corporation | |
8268 | ADR;TYPE=WORK,POSTAL,PARCEL:;;One Microsoft Way; | |
8269 | Redmond;WA;98052-6399;USA | |
8270 | TEL;TYPE=WORK,MSG:+1-425-936-5522 | |
8271 | TEL;TYPE=WORK,FAX:+1-425-936-7329 | |
8272 | EMAIL;TYPE=INTERNET:deriks@Microsoft.com | |
8273 | END:VCARD | |
8274 | ||
8275 | The iCalendar object is a result of the work of the Internet | |
8276 | Engineering Task Force Calendaring and Scheduling Working Group. The | |
8277 | chairmen of that working group are: | |
8278 | ||
8279 | BEGIN:VCARD | |
8280 | VERSION:3.0 | |
8281 | N:Ganguly;Anik | |
8282 | FN:Anik Ganguly | |
8283 | ORG: Open Text Inc. | |
8284 | ADR;TYPE=WORK,POSTAL,PARCEL:;Suite 101;38777 West Six Mile Road; | |
8285 | Livonia;MI;48152;USA | |
8286 | TEL;TYPE=WORK,MSG:+1-734-542-5955 | |
8287 | EMAIL;TYPE=INTERNET:ganguly@acm.org | |
8288 | END:VCARD | |
8289 | ||
8290 | ||
8291 | ||
8292 | ||
8293 | <span class="grey">Dawson & Stenerson Standards Track [Page 146]</span> | |
8294 | </pre><pre class="newpage"><a name="page-147" id="page-147" href="#page-147" class="invisible"> </a> | |
8295 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
8296 | ||
8297 | ||
8298 | The co-chairman of that working group is: | |
8299 | ||
8300 | BEGIN:VCARD | |
8301 | VERSION:3.0 | |
8302 | N:Moskowitz;Robert | |
8303 | FN:Robert Moskowitz | |
8304 | EMAIL;TYPE=INTERNET:rgm-ietf@htt-consult.com | |
8305 | END:VCARD | |
8306 | ||
8307 | ||
8308 | ||
8309 | ||
8310 | ||
8311 | ||
8312 | ||
8313 | ||
8314 | ||
8315 | ||
8316 | ||
8317 | ||
8318 | ||
8319 | ||
8320 | ||
8321 | ||
8322 | ||
8323 | ||
8324 | ||
8325 | ||
8326 | ||
8327 | ||
8328 | ||
8329 | ||
8330 | ||
8331 | ||
8332 | ||
8333 | ||
8334 | ||
8335 | ||
8336 | ||
8337 | ||
8338 | ||
8339 | ||
8340 | ||
8341 | ||
8342 | ||
8343 | ||
8344 | ||
8345 | ||
8346 | ||
8347 | ||
8348 | ||
8349 | <span class="grey">Dawson & Stenerson Standards Track [Page 147]</span> | |
8350 | </pre><pre class="newpage"><a name="page-148" id="page-148" href="#page-148" class="invisible"> </a> | |
8351 | <span class="grey"><a href="http://tools.ietf.org/html/rfc2445">RFC 2445</a> iCalendar November 1998</span> | |
8352 | ||
8353 | ||
8354 | <span class="h2"><h2><a name="section-11">11</a>. Full Copyright Statement</h2></span> | |
8355 | ||
8356 | Copyright (C) The Internet Society (1998). All Rights Reserved. | |
8357 | ||
8358 | This document and translations of it may be copied and furnished to | |
8359 | others, and derivative works that comment on or otherwise explain it | |
8360 | or assist in its implementation may be prepared, copied, published | |
8361 | and distributed, in whole or in part, without restriction of any | |
8362 | kind, provided that the above copyright notice and this paragraph are | |
8363 | included on all such copies and derivative works. However, this | |
8364 | document itself may not be modified in any way, such as by removing | |
8365 | the copyright notice or references to the Internet Society or other | |
8366 | Internet organizations, except as needed for the purpose of | |
8367 | developing Internet standards in which case the procedures for | |
8368 | copyrights defined in the Internet Standards process must be | |
8369 | followed, or as required to translate it into languages other than | |
8370 | English. | |
8371 | ||
8372 | The limited permissions granted above are perpetual and will not be | |
8373 | revoked by the Internet Society or its successors or assigns. | |
8374 | ||
8375 | This document and the information contained herein is provided on an | |
8376 | "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING | |
8377 | TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING | |
8378 | BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION | |
8379 | HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF | |
8380 | MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. | |
8381 | ||
8382 | ||
8383 | ||
8384 | ||
8385 | ||
8386 | ||
8387 | ||
8388 | ||
8389 | ||
8390 | ||
8391 | ||
8392 | ||
8393 | ||
8394 | ||
8395 | ||
8396 | ||
8397 | ||
8398 | ||
8399 | ||
8400 | ||
8401 | ||
8402 | ||
8403 | ||
8404 | ||
8405 | Dawson & Stenerson Standards Track [Page 148] | |
8406 | </pre><pre class="newpage"> | |
8407 | </pre><br> | |
8408 | <span class="noprint"><small><small>Html markup produced by rfcmarkup 1.74, available from | |
8409 | <a href="http://tools.ietf.org/tools/rfcmarkup/">http://tools.ietf.org/tools/rfcmarkup/</a> | |
8410 | </small></small></span> | |
8411 | </body></html> |