rfc2445.txt
来自「著名的RFC文档,其中有一些文档是已经翻译成中文的的.」· 文本 代码 · 共 1,631 行 · 第 1/5 页
TXT
1,631 行
3.13 Authors/Change Controllers Frank Dawson 6544 Battleford Drive Raleigh, NC 27613-3502 919-676-9515 (Telephone) 919-676-9564 (Data/Facsimile) Frank_Dawson@Lotus.com (Internet Mail) Derik Stenerson One Microsoft Way Redmond, WA 98052-6399 425-936-5522 (Telephone) 425-936-7329 (Facsimile) deriks@microsoft.com (Internet Mail)Dawson & Stenerson Standards Track [Page 12]RFC 2445 iCalendar November 19984 iCalendar Object Specification The following sections define the details of a Calendaring and Scheduling Core Object Specification. This information is intended to be an integral part of the MIME content type registration. In addition, this information can be used independent of such content registration. In particular, this memo has direct applicability for use as a calendaring and scheduling exchange format in file-, memory- or network-based transport mechanisms.4.1 Content Lines The iCalendar object is organized into individual lines of text, called content lines. Content lines are delimited by a line break, which is a CRLF sequence (US-ASCII decimal 13, followed by US-ASCII decimal 10). Lines of text SHOULD NOT be longer than 75 octets, excluding the line break. Long content lines SHOULD be split into a multiple line representations using a line "folding" technique. That is, a long line can be split between any two characters by inserting a CRLF immediately followed by a single linear white space character (i.e., SPACE, US-ASCII decimal 32 or HTAB, US-ASCII decimal 9). Any sequence of CRLF followed immediately by a single linear white space character is ignored (i.e., removed) when processing the content type. For example the line: DESCRIPTION:This is a long description that exists on a long line. Can be represented as: DESCRIPTION:This is a lo ng description that exists on a long line. The process of moving from this folded multiple line representation to its single line representation is called "unfolding". Unfolding is accomplished by removing the CRLF character and the linear white space character that immediately follows. When parsing a content line, folded lines MUST first be unfolded according to the unfolding procedure described above. When generating a content line, lines longer than 75 octets SHOULD be folded according to the folding procedure described above.Dawson & Stenerson Standards Track [Page 13]RFC 2445 iCalendar November 1998 The content information associated with an iCalendar object is formatted using a syntax similar to that defined by [RFC 2425]. That is, the content information consists of CRLF-separated content lines. The following notation defines the lines of content in an iCalendar object: contentline = name *(";" param ) ":" value CRLF ; This ABNF is just a general definition for an initial parsing ; of the content line into its property name, parameter list, ; and value string ; When parsing a content line, folded lines MUST first ; be unfolded according to the unfolding procedure ; described above. When generating a content line, lines ; longer than 75 octets SHOULD be folded according to ; the folding procedure described above. name = x-name / iana-token iana-token = 1*(ALPHA / DIGIT / "-") ; iCalendar identifier registered with IANA x-name = "X-" [vendorid "-"] 1*(ALPHA / DIGIT / "-") ; Reservered for experimental use. Not intended for use in ; released products. vendorid = 3*(ALPHA / DIGIT) ;Vendor identification param = param-name "=" param-value *("," param-value) ; Each property defines the specific ABNF for the parameters ; allowed on the property. Refer to specific properties for ; precise parameter ABNF. param-name = iana-token / x-token param-value = paramtext / quoted-string paramtext = *SAFE-CHAR value = *VALUE-CHAR quoted-string = DQUOTE *QSAFE-CHAR DQUOTE NON-US-ASCII = %x80-F8 ; Use restricted by charset parameter ; on outer MIME object (UTF-8 preferred)Dawson & Stenerson Standards Track [Page 14]RFC 2445 iCalendar November 1998 QSAFE-CHAR = WSP / %x21 / %x23-7E / NON-US-ASCII ; Any character except CTLs and DQUOTE SAFE-CHAR = WSP / %x21 / %x23-2B / %x2D-39 / %x3C-7E / NON-US-ASCII ; Any character except CTLs, DQUOTE, ";", ":", "," VALUE-CHAR = WSP / %x21-7E / NON-US-ASCII ; Any textual character CR = %x0D ; carriage return LF = %x0A ; line feed CRLF = CR LF ; Internet standard newline CTL = %x00-08 / %x0A-1F / %x7F ; Controls ALPHA = %x41-5A / %x61-7A ; A-Z / a-z DIGIT = %x30-39 ; 0-9 DQUOTE = %x22 ; Quotation Mark WSP = SPACE / HTAB SPACE = %x20 HTAB = %x09 The property value component of a content line has a format that is property specific. Refer to the section describing each property for a definition of this format. 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.Dawson & Stenerson Standards Track [Page 15]RFC 2445 iCalendar November 19984.1.1 List and Field Separators Some properties and parameters allow a list of values. Values in a list of values MUST be separated by a COMMA character (US-ASCII decimal 44). There is no significance to the order of values in a list. For those parameter values (such as those that specify URI values) that are specified in quoted-strings, the individual quoted- strings are separated by a COMMA character (US-ASCII decimal 44). Some property values are defined in terms of multiple parts. These structured property values MUST have their value parts separated by a SEMICOLON character (US-ASCII decimal 59). Some properties allow a list of parameters. Each property parameter in a list of property parameters MUST be separated by a SEMICOLON character (US-ASCII decimal 59). Property parameters with values containing a COLON, a SEMICOLON or a COMMA character MUST be placed in quoted text. For example, in the following properties a SEMICOLON is used to separate property parameters from each other, and a COMMA is used to separate property values in a value list. ATTENDEE;RSVP=TRUE;ROLE=REQ-PARTICIPANT:MAILTO: jsmith@host.com RDATE;VALUE=DATE:19970304,19970504,19970704,199709044.1.2 Multiple Values Some properties defined in the iCalendar object can have multiple values. The general rule for encoding multi-valued items is to simply create a new content line for each value, including the property name. However, it should be noted that some properties support encoding multiple values in a single property by separating the values with a COMMA character (US-ASCII decimal 44). Individual property definitions should be consulted for determining whether a specific property allows multiple values and in which of these two forms.4.1.3 Binary Content Binary content information in an iCalendar object SHOULD be referenced using a URI within a property value. That is the binary content information SHOULD be placed in an external MIME entity that can be referenced by a URI from within the iCalendar object. In applications where this is not feasible, binary content informationDawson & Stenerson Standards Track [Page 16]RFC 2445 iCalendar November 1998 can be included within an iCalendar object, but only after first encoding it into text using the "BASE64" encoding method defined in [RFC 2045]. Inline binary contact SHOULD only be used in applications whose special circumstances demand that an iCalendar object be expressed as a single entity. A property containing inline binary content information MUST specify the "ENCODING" property parameter. Binary content information placed external to the iCalendar object MUST be referenced by a uniform resource identifier (URI). The following example specifies an "ATTACH" property that references an attachment external to the iCalendar object with a URI reference: ATTACH:http://xyz.com/public/quarterly-report.doc The following example specifies an "ATTACH" property with inline binary encoded content information: ATTACH;FMTTYPE=image/basic;ENCODING=BASE64;VALUE=BINARY: MIICajCCAdOgAwIBAgICBEUwDQYJKoZIhvcNAQEEBQAwdzELMAkGA1U EBhMCVVMxLDAqBgNVBAoTI05ldHNjYXBlIENvbW11bmljYXRpb25zIE <...remainder of "BASE64" encoded binary data...>4.1.4 Character Set There is not a property parameter to declare the character set used in a property value. The default character set for an iCalendar object is UTF-8 as defined in [RFC 2279]. The "charset" Content-Type parameter can be used in MIME transports to specify any other IANA registered character set.4.2 Property Parameters A property can have attributes associated with it. These "property parameters" contain meta-information about the property or the property value. Property parameters are provided to specify such information as the location of an alternate text representation for a property value, the language of a text property value, the data type of the property value and other attributes. Property parameter values that contain the COLON (US-ASCII decimal 58), SEMICOLON (US-ASCII decimal 59) or COMMA (US-ASCII decimal 44) character separators MUST be specified as quoted-string text values. Property parameter values MUST NOT contain the DOUBLE-QUOTE (US-ASCII decimal 22) character. The DOUBLE-QUOTE (US-ASCII decimal 22) character is used as a delimiter for parameter values that contain restricted characters or URI text. For example:Dawson & Stenerson Standards Track [Page 17]RFC 2445 iCalendar November 1998 DESCRIPTION;ALTREP="http://www.wiz.org":The Fall'98 Wild Wizards Conference - - Las Vegas, NV, USA Property parameter values that are not in quoted strings are case insensitive. The general property parameters defined by this memo are defined by the following notation: parameter = altrepparam ; Alternate text representation / cnparam ; Common name / cutypeparam ; Calendar user type / delfromparam ; Delegator / deltoparam ; Delegatee / dirparam ; Directory entry / encodingparam ; Inline encoding / fmttypeparam ; Format type / fbtypeparam ; Free/busy time type / languageparam ; Language for text / memberparam ; Group or list membership / partstatparam ; Participation status / rangeparam ; Recurrence identifier range / trigrelparam ; Alarm trigger relationship
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?