rfc2445.txt
来自「<VC++网络游戏建摸与实现>源代码」· 文本 代码 · 共 1,631 行 · 第 1/5 页
TXT
1,631 行
Network Working Group F. DawsonRequest for Comments: 2445 LotusCategory: Standards Track D. Stenerson Microsoft November 1998 Internet Calendaring and Scheduling Core Object Specification (iCalendar)Status of this Memo This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.Copyright Notice Copyright (C) The Internet Society (1998). All Rights Reserved.Abstract There is a clear need to provide and deploy interoperable calendaring and scheduling services for the Internet. Current group scheduling and Personal Information Management (PIM) products are being extended for use across the Internet, today, in proprietary ways. This memo has been defined to provide the definition of a common format for openly exchanging calendaring and scheduling information across the Internet. This memo is formatted as a registration for a MIME media type per [RFC 2048]. However, the format in this memo is equally applicable for use outside of a MIME message content type. The proposed media type value is 'text/calendar'. This string would label a media type containing calendaring and scheduling information encoded as text characters formatted in a manner outlined below. This MIME media type provides a standard content type for capturing calendar event, to-do and journal entry information. It also can be used to convey free/busy time information. The content type is suitable as a MIME message entity that can be transferred over MIME based email systems, using HTTP or some other Internet transport. InDawson & Stenerson Standards Track [Page 1]RFC 2445 iCalendar November 1998 addition, the content type is useful as an object for interactions between desktop applications using the operating system clipboard, drag/drop or file systems capabilities. This memo is based on the earlier work of the vCalendar specification for the exchange of personal calendaring and scheduling information. In order to avoid confusion with this referenced work, this memo is to be known as the iCalendar specification. This memo defines the format for specifying iCalendar object methods. An iCalendar object method is a set of usage constraints for the iCalendar object. For example, these methods might define scheduling messages that request an event be scheduled, reply to an event request, send a cancellation notice for an event, modify or replace the definition of an event, provide a counter proposal for an original event request, delegate an event request to another individual, request free or busy time, reply to a free or busy time request, or provide similar scheduling messages for a to-do or journal entry calendar component. The iCalendar Transport-indendent Interoperability Protocol (iTIP) defined in [ITIP] is one such scheduling protocol.Table of Contents 1 Introduction.....................................................5 2 Basic Grammar and Conventions....................................6 2.1 Formatting Conventions .......................................7 2.2 Related Memos ................................................8 2.3 International Considerations .................................8 3 Registration Information.........................................8 3.1 Content Type .................................................8 3.2 Parameters ...................................................9 3.3 Content Header Fields .......................................10 3.4 Encoding Considerations .....................................10 3.5 Security Considerations .....................................10 3.6 Interoperability Considerations .............................11 3.7 Applications Which Use This Media Type ......................11 3.8 Additional Information ......................................11 3.9 Magic Numbers ...............................................11 3.10 File Extensions ............................................11 3.11 Contact for Further Information: ...........................12 3.12 Intended Usage .............................................12 3.13 Authors/Change Controllers .................................12 4 iCalendar Object Specification..................................13 4.1 Content Lines ...............................................13 4.1.1 List and Field Separators ................................16 4.1.2 Multiple Values ..........................................16 4.1.3 Binary Content ...........................................16Dawson & Stenerson Standards Track [Page 2]RFC 2445 iCalendar November 1998 4.1.4 Character Set ............................................17 4.2 Property Parameters .........................................17 4.2.1 Alternate Text Representation ............................18 4.2.2 Common Name ..............................................19 4.2.3 Calendar User Type .......................................20 4.2.4 Delegators ...............................................20 4.2.5 Delegatees ...............................................21 4.2.6 Directory Entry Reference ................................21 4.2.7 Inline Encoding ..........................................22 4.2.8 Format Type ..............................................23 4.2.9 Free/Busy Time Type ......................................23 4.2.10 Language ................................................24 4.2.11 Group or List Membership ................................25 4.2.12 Participation Status ....................................25 4.2.13 Recurrence Identifier Range .............................27 4.2.14 Alarm Trigger Relationship ..............................27 4.2.15 Relationship Type .......................................28 4.2.16 Participation Role ......................................29 4.2.17 RSVP Expectation ........................................29 4.2.18 Sent By .................................................30 4.2.19 Time Zone Identifier ....................................30 4.2.20 Value Data Types ........................................32 4.3 Property Value Data Types ...................................32 4.3.1 Binary ...................................................33 4.3.2 Boolean ..................................................33 4.3.3 Calendar User Address ....................................34 4.3.4 Date .....................................................34 4.3.5 Date-Time ................................................35 4.3.6 Duration .................................................37 4.3.7 Float ....................................................38 4.3.8 Integer ..................................................38 4.3.9 Period of Time ...........................................39 4.3.10 Recurrence Rule .........................................40 4.3.11 Text ....................................................45 4.3.12 Time ....................................................47 4.3.13 URI .....................................................49 4.3.14 UTC Offset ..............................................49 4.4 iCalendar Object ............................................50 4.5 Property ....................................................51 4.6 Calendar Components .........................................51 4.6.1 Event Component ..........................................52 4.6.2 To-do Component ..........................................55 4.6.3 Journal Component ........................................56 4.6.4 Free/Busy Component ......................................58 4.6.5 Time Zone Component ......................................60 4.6.6 Alarm Component ..........................................67 4.7 Calendar Properties .........................................73 4.7.1 Calendar Scale ...........................................73Dawson & Stenerson Standards Track [Page 3]RFC 2445 iCalendar November 1998 4.7.2 Method ...................................................74 4.7.3 Product Identifier .......................................75 4.7.4 Version ..................................................76 4.8 Component Properties ........................................77 4.8.1 Descriptive Component Properties .........................77 4.8.1.1 Attachment ...........................................77 4.8.1.2 Categories ...........................................78 4.8.1.3 Classification .......................................79 4.8.1.4 Comment ..............................................80 4.8.1.5 Description ..........................................81 4.8.1.6 Geographic Position ..................................82 4.8.1.7 Location .............................................84 4.8.1.8 Percent Complete .....................................85 4.8.1.9 Priority .............................................85 4.8.1.10 Resources ...........................................87 4.8.1.11 Status ..............................................88 4.8.1.12 Summary .............................................89 4.8.2 Date and Time Component Properties .......................90 4.8.2.1 Date/Time Completed ..................................90 4.8.2.2 Date/Time End ........................................91 4.8.2.3 Date/Time Due ........................................92 4.8.2.4 Date/Time Start ......................................93 4.8.2.5 Duration .............................................94 4.8.2.6 Free/Busy Time .......................................95 4.8.2.7 Time Transparency ....................................96 4.8.3 Time Zone Component Properties ...........................97 4.8.3.1 Time Zone Identifier .................................97 4.8.3.2 Time Zone Name .......................................98 4.8.3.3 Time Zone Offset From ................................99 4.8.3.4 Time Zone Offset To .................................100 4.8.3.5 Time Zone URL .......................................101 4.8.4 Relationship Component Properties .......................102 4.8.4.1 Attendee ............................................102 4.8.4.2 Contact .............................................104 4.8.4.3 Organizer ...........................................106 4.8.4.4 Recurrence ID .......................................107 4.8.4.5 Related To ..........................................109 4.8.4.6 Uniform Resource Locator ............................110 4.8.4.7 Unique Identifier ...................................111 4.8.5 Recurrence Component Properties .........................112 4.8.5.1 Exception Date/Times ................................112 4.8.5.2 Exception Rule ......................................114 4.8.5.3 Recurrence Date/Times ...............................115 4.8.5.4 Recurrence Rule .....................................117 4.8.6 Alarm Component Properties ..............................126 4.8.6.1 Action ..............................................126 4.8.6.2 Repeat Count ........................................126 4.8.6.3 Trigger .............................................127Dawson & Stenerson Standards Track [Page 4]RFC 2445 iCalendar November 1998 4.8.7 Change Management Component Properties ..................129 4.8.7.1 Date/Time Created ...................................129 4.8.7.2 Date/Time Stamp .....................................130 4.8.7.3 Last Modified .......................................131 4.8.7.4 Sequence Number .....................................131 4.8.8 Miscellaneous Component Properties ......................133 4.8.8.1 Non-standard Properties .............................133 4.8.8.2 Request Status ......................................134 5 iCalendar Object Examples......................................136 6 Recommended Practices..........................................140 7 Registration of Content Type Elements..........................141 7.1 Registration of New and Modified iCalendar Object Methods ..141 7.2 Registration of New Properties .............................141 7.2.1 Define the property .....................................142 7.2.2 Post the Property definition ............................143 7.2.3 Allow a comment period ..................................143 7.2.4 Submit the property for approval ........................143 7.3 Property Change Control ....................................143 8 References.....................................................144 9 Acknowledgments................................................145 10 Authors' and Chairs' Addresses................................146 11 Full Copyright Statement......................................1481 Introduction The use of calendaring and scheduling has grown considerably in the last decade. Enterprise and inter-enterprise business has become dependent on rapid scheduling of events and actions using this information technology. However, the longer term growth of calendaring and scheduling, is currently limited by the lack of Internet standards for the message content types that are central to these knowledgeware applications. This memo is intended to progress the level of interoperability possible between dissimilar calendaring and scheduling applications. This memo defines a MIME content type for exchanging electronic calendaring and scheduling information. The Internet Calendaring and Scheduling Core Object Specification, or iCalendar, allows for the capture and exchange of information normally stored within a calendaring and scheduling application; such as a Personal Information Manager (PIM) or a Group Scheduling product. The iCalendar format is suitable as an exchange format between applications or systems. The format is defined in terms of a MIME content type. This will enable the object to be exchanged using several transports, including but not limited to SMTP, HTTP, a file system, desktop interactive protocols such as the use of a memory- based clipboard or drag/drop interactions, point-to-point asynchronous communication, wired-network transport, or some form ofDawson & Stenerson Standards Track [Page 5]RFC 2445 iCalendar November 1998 unwired transport such as infrared might also be used. The memo also provides for the definition of iCalendar object methods that will map this content type to a set of messages for supporting calendaring and scheduling operations such as requesting, replying to, modifying, and canceling meetings or appointments, to-dos and journal entries. The iCalendar object methods can be used to define other calendaring and scheduling operations such a requesting for and replying with free/busy time data. Such a scheduling protocol is defined in the iCalendar Transport-independent Interoperability Protocol (iTIP) defined in [ITIP]. The memo also includes a formal grammar for the content type based on the Internet ABNF defined in [RFC 2234]. This ABNF is required for the implementation of parsers and to serve as the definitive reference when ambiguities or questions arise in interpreting the descriptive prose definition of the memo.2 Basic Grammar and Conventions The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY" and "OPTIONAL" in this document are to be interoperated as described in [RFC 2119]. This memo makes use of both a descriptive prose and a more formal notation for defining the calendaring and scheduling format. The notation used in this memo is the ABNF notation of [RFC 2234]. Readers intending on implementing this format defined in this memo should be familiar with this notation in order to properly interpret the specifications of this memo. All numeric and hexadecimal values used in this memo are given in decimal notation. All names of properties, property parameters, enumerated property values and property parameter values are case-insensitive. However, all other property values are case-sensitive, unless otherwise stated.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?