draft-ietf-vcarddav-vcardrev-01.txt   draft-ietf-vcarddav-vcardrev-02.txt 
Network Working Group P. Resnick Network Working Group S. Perreault
Internet-Draft QUALCOMM Incorporated Internet-Draft Viagenie
Obsoletes: 2425, 2426, 4770 S. Perreault Obsoletes: 2425, 2426, 4770 P. Resnick
(if approved) Viagenie (if approved) QUALCOMM Incorporated
Updates: 2739 (if approved) April 9, 2008 Updates: 2739 (if approved) June 25, 2008
Intended status: Standards Track Intended status: Standards Track
Expires: October 11, 2008 Expires: December 27, 2008
vCard Format Specification vCard Format Specification
draft-ietf-vcarddav-vcardrev-01 draft-ietf-vcarddav-vcardrev-02
Status of This Memo Status of This Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 1, line 37 skipping to change at page 1, line 37
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on October 11, 2008. This Internet-Draft will expire on December 27, 2008.
Copyright Notice Copyright Notice
Copyright (C) The IETF Trust (2008). Copyright (C) The IETF Trust (2008).
Abstract Abstract
This document defines the vCard data format for representing and This document defines the vCard data format for representing and
exchanging a variety of information about an individual (e.g., exchanging a variety of information about an individual (e.g.,
formatted and structured name and delivery addresses, email address, formatted and structured name and delivery addresses, email address,
skipping to change at page 2, line 21 skipping to change at page 2, line 21
4.1. Line Delimiting and Folding . . . . . . . . . . . . . . . 7 4.1. Line Delimiting and Folding . . . . . . . . . . . . . . . 7
4.2. ABNF Format Definition . . . . . . . . . . . . . . . . . . 8 4.2. ABNF Format Definition . . . . . . . . . . . . . . . . . . 8
5. Property Value Data Types . . . . . . . . . . . . . . . . . . 10 5. Property Value Data Types . . . . . . . . . . . . . . . . . . 10
5.1. TEXT . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 5.1. TEXT . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
5.2. URI . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 5.2. URI . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
5.3. DATE, TIME, and DATE-TIME . . . . . . . . . . . . . . . . 13 5.3. DATE, TIME, and DATE-TIME . . . . . . . . . . . . . . . . 13
5.4. BOOLEAN . . . . . . . . . . . . . . . . . . . . . . . . . 13 5.4. BOOLEAN . . . . . . . . . . . . . . . . . . . . . . . . . 13
5.5. INTEGER . . . . . . . . . . . . . . . . . . . . . . . . . 14 5.5. INTEGER . . . . . . . . . . . . . . . . . . . . . . . . . 14
5.6. FLOAT . . . . . . . . . . . . . . . . . . . . . . . . . . 14 5.6. FLOAT . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5.7. BINARY . . . . . . . . . . . . . . . . . . . . . . . . . . 14 5.7. BINARY . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5.8. VCARD . . . . . . . . . . . . . . . . . . . . . . . . . . 14 5.8. UTC-OFFSET . . . . . . . . . . . . . . . . . . . . . . . . 14
5.9. UTC-OFFSET . . . . . . . . . . . . . . . . . . . . . . . . 15
6. Property Parameters . . . . . . . . . . . . . . . . . . . . . 15 6. Property Parameters . . . . . . . . . . . . . . . . . . . . . 15
6.1. LANGUAGE . . . . . . . . . . . . . . . . . . . . . . . . . 16 6.1. LANGUAGE . . . . . . . . . . . . . . . . . . . . . . . . . 16
6.2. ENCODING . . . . . . . . . . . . . . . . . . . . . . . . . 16 6.2. ENCODING . . . . . . . . . . . . . . . . . . . . . . . . . 16
6.3. VALUE . . . . . . . . . . . . . . . . . . . . . . . . . . 17 6.3. VALUE . . . . . . . . . . . . . . . . . . . . . . . . . . 17
6.4. UID . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 6.4. PID . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
6.5. TYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 6.5. TYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
7. vCard Properties . . . . . . . . . . . . . . . . . . . . . . . 18 7. vCard Properties . . . . . . . . . . . . . . . . . . . . . . . 18
7.1. General Properties . . . . . . . . . . . . . . . . . . . . 18 7.1. General Properties . . . . . . . . . . . . . . . . . . . . 18
7.1.1. BEGIN . . . . . . . . . . . . . . . . . . . . . . . . 18 7.1.1. BEGIN . . . . . . . . . . . . . . . . . . . . . . . . 18
7.1.2. END . . . . . . . . . . . . . . . . . . . . . . . . . 18 7.1.2. END . . . . . . . . . . . . . . . . . . . . . . . . . 18
7.1.3. SOURCE . . . . . . . . . . . . . . . . . . . . . . . . 19 7.1.3. SOURCE . . . . . . . . . . . . . . . . . . . . . . . . 19
7.1.4. NAME . . . . . . . . . . . . . . . . . . . . . . . . . 19 7.1.4. NAME . . . . . . . . . . . . . . . . . . . . . . . . . 19
7.1.5. KIND . . . . . . . . . . . . . . . . . . . . . . . . . 20 7.1.5. KIND . . . . . . . . . . . . . . . . . . . . . . . . . 20
7.2. Identification Properties . . . . . . . . . . . . . . . . 21 7.2. Identification Properties . . . . . . . . . . . . . . . . 21
7.2.1. FN . . . . . . . . . . . . . . . . . . . . . . . . . . 21 7.2.1. FN . . . . . . . . . . . . . . . . . . . . . . . . . . 21
skipping to change at page 3, line 14 skipping to change at page 3, line 13
7.4.4. LANG . . . . . . . . . . . . . . . . . . . . . . . . . 27 7.4.4. LANG . . . . . . . . . . . . . . . . . . . . . . . . . 27
7.5. Geographical Properties . . . . . . . . . . . . . . . . . 28 7.5. Geographical Properties . . . . . . . . . . . . . . . . . 28
7.5.1. TZ . . . . . . . . . . . . . . . . . . . . . . . . . . 28 7.5.1. TZ . . . . . . . . . . . . . . . . . . . . . . . . . . 28
7.5.2. GEO . . . . . . . . . . . . . . . . . . . . . . . . . 28 7.5.2. GEO . . . . . . . . . . . . . . . . . . . . . . . . . 28
7.6. Organizational Properties . . . . . . . . . . . . . . . . 29 7.6. Organizational Properties . . . . . . . . . . . . . . . . 29
7.6.1. TITLE . . . . . . . . . . . . . . . . . . . . . . . . 29 7.6.1. TITLE . . . . . . . . . . . . . . . . . . . . . . . . 29
7.6.2. ROLE . . . . . . . . . . . . . . . . . . . . . . . . . 29 7.6.2. ROLE . . . . . . . . . . . . . . . . . . . . . . . . . 29
7.6.3. LOGO . . . . . . . . . . . . . . . . . . . . . . . . . 30 7.6.3. LOGO . . . . . . . . . . . . . . . . . . . . . . . . . 30
7.6.4. AGENT . . . . . . . . . . . . . . . . . . . . . . . . 30 7.6.4. AGENT . . . . . . . . . . . . . . . . . . . . . . . . 30
7.6.5. ORG . . . . . . . . . . . . . . . . . . . . . . . . . 31 7.6.5. ORG . . . . . . . . . . . . . . . . . . . . . . . . . 31
7.7. Explanatory Properties . . . . . . . . . . . . . . . . . . 31 7.6.6. MEMBER . . . . . . . . . . . . . . . . . . . . . . . . 31
7.7.1. CATEGORIES . . . . . . . . . . . . . . . . . . . . . . 31 7.6.7. RELATED . . . . . . . . . . . . . . . . . . . . . . . 32
7.7.2. NOTE . . . . . . . . . . . . . . . . . . . . . . . . . 32 7.7. Explanatory Properties . . . . . . . . . . . . . . . . . . 33
7.7.3. PRODID . . . . . . . . . . . . . . . . . . . . . . . . 32 7.7.1. CATEGORIES . . . . . . . . . . . . . . . . . . . . . . 33
7.7.4. REV . . . . . . . . . . . . . . . . . . . . . . . . . 32 7.7.2. NOTE . . . . . . . . . . . . . . . . . . . . . . . . . 33
7.7.5. SORT-STRING . . . . . . . . . . . . . . . . . . . . . 33 7.7.3. PRODID . . . . . . . . . . . . . . . . . . . . . . . . 34
7.7.6. SOUND . . . . . . . . . . . . . . . . . . . . . . . . 33 7.7.4. REV . . . . . . . . . . . . . . . . . . . . . . . . . 34
7.7.7. UID . . . . . . . . . . . . . . . . . . . . . . . . . 34 7.7.5. SORT-STRING . . . . . . . . . . . . . . . . . . . . . 34
7.7.8. URL . . . . . . . . . . . . . . . . . . . . . . . . . 35 7.7.6. SOUND . . . . . . . . . . . . . . . . . . . . . . . . 35
7.7.9. VERSION . . . . . . . . . . . . . . . . . . . . . . . 35 7.7.7. UID . . . . . . . . . . . . . . . . . . . . . . . . . 36
7.8. Security Properties . . . . . . . . . . . . . . . . . . . 35 7.7.8. URL . . . . . . . . . . . . . . . . . . . . . . . . . 36
7.8.1. CLASS . . . . . . . . . . . . . . . . . . . . . . . . 35 7.7.9. VERSION . . . . . . . . . . . . . . . . . . . . . . . 36
7.8.2. KEY . . . . . . . . . . . . . . . . . . . . . . . . . 36 7.8. Security Properties . . . . . . . . . . . . . . . . . . . 37
7.9. Calendar Properties . . . . . . . . . . . . . . . . . . . 36 7.8.1. CLASS . . . . . . . . . . . . . . . . . . . . . . . . 37
7.9.1. FBURL . . . . . . . . . . . . . . . . . . . . . . . . 36 7.8.2. KEY . . . . . . . . . . . . . . . . . . . . . . . . . 37
7.9.2. CALADRURI . . . . . . . . . . . . . . . . . . . . . . 37 7.9. Calendar Properties . . . . . . . . . . . . . . . . . . . 38
7.9.3. CAPURI . . . . . . . . . . . . . . . . . . . . . . . . 37 7.9.1. FBURL . . . . . . . . . . . . . . . . . . . . . . . . 38
7.9.4. CALURI . . . . . . . . . . . . . . . . . . . . . . . . 37 7.9.2. CALADRURI . . . . . . . . . . . . . . . . . . . . . . 39
7.10. Extended Properties and Parameters . . . . . . . . . . . . 38 7.9.3. CALURI . . . . . . . . . . . . . . . . . . . . . . . . 39
8. Synchronization . . . . . . . . . . . . . . . . . . . . . . . 38 7.10. Extended Properties and Parameters . . . . . . . . . . . . 39
8.1. Mechanisms . . . . . . . . . . . . . . . . . . . . . . . . 38 8. Synchronization . . . . . . . . . . . . . . . . . . . . . . . 39
8.2. Example . . . . . . . . . . . . . . . . . . . . . . . . . 39 8.1. Mechanisms . . . . . . . . . . . . . . . . . . . . . . . . 40
9. Formal Grammar . . . . . . . . . . . . . . . . . . . . . . . . 40 8.2. Example . . . . . . . . . . . . . . . . . . . . . . . . . 40
10. Example: Authors' vCards . . . . . . . . . . . . . . . . . . . 49 9. Formal Grammar . . . . . . . . . . . . . . . . . . . . . . . . 41
11. Security Considerations . . . . . . . . . . . . . . . . . . . 49 10. Example: Authors' vCards . . . . . . . . . . . . . . . . . . . 50
12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 50 11. Security Considerations . . . . . . . . . . . . . . . . . . . 50
12.1. Registering New vCard Elements . . . . . . . . . . . . . . 50 12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 51
12.1.1. Registration Procedure . . . . . . . . . . . . . . . . 50 12.1. Registering New vCard Elements . . . . . . . . . . . . . . 51
12.1.2. Vendor Namespace . . . . . . . . . . . . . . . . . . . 51 12.1.1. Registration Procedure . . . . . . . . . . . . . . . . 51
12.1.3. Registration Template for Properties . . . . . . . . . 51 12.1.2. Vendor Namespace . . . . . . . . . . . . . . . . . . . 52
12.1.4. Registration Template for Parameters . . . . . . . . . 52 12.1.3. Registration Template for Properties . . . . . . . . . 52
12.1.5. Registration Template for Value Data Types . . . . . . 52 12.1.4. Registration Template for Parameters . . . . . . . . . 53
12.1.6. Registration Template for Values . . . . . . . . . . . 52 12.1.5. Registration Template for Value Data Types . . . . . . 53
12.2. Initial vCard Elements Registries . . . . . . . . . . . . 53 12.1.6. Registration Template for Values . . . . . . . . . . . 54
12.2.1. Properties Registry . . . . . . . . . . . . . . . . . 53 12.2. Initial vCard Elements Registries . . . . . . . . . . . . 54
12.2.2. Parameters Registry . . . . . . . . . . . . . . . . . 55 12.2.1. Properties Registry . . . . . . . . . . . . . . . . . 54
12.2.3. Value Data Types Registry . . . . . . . . . . . . . . 55 12.2.2. Parameters Registry . . . . . . . . . . . . . . . . . 56
13. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 55 12.2.3. Value Data Types Registry . . . . . . . . . . . . . . 56
14. References . . . . . . . . . . . . . . . . . . . . . . . . . . 56 13. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 56
14.1. Normative References . . . . . . . . . . . . . . . . . . . 56 14. References . . . . . . . . . . . . . . . . . . . . . . . . . . 57
14.2. Informative References . . . . . . . . . . . . . . . . . . 58 14.1. Normative References . . . . . . . . . . . . . . . . . . . 57
Appendix A. Differences from RFCs 2425 and 2426 . . . . . . . . . 58 14.2. Informative References . . . . . . . . . . . . . . . . . . 59
A.1. New Structure . . . . . . . . . . . . . . . . . . . . . . 58 Appendix A. Differences from RFCs 2425 and 2426 . . . . . . . . . 59
A.2. Removed Features . . . . . . . . . . . . . . . . . . . . . 59 A.1. New Structure . . . . . . . . . . . . . . . . . . . . . . 59
A.3. New Properties and Parameters . . . . . . . . . . . . . . 59 A.2. Removed Features . . . . . . . . . . . . . . . . . . . . . 60
A.4. Other Changes . . . . . . . . . . . . . . . . . . . . . . 59 A.3. New Properties and Parameters . . . . . . . . . . . . . . 60
A.4. Other Changes . . . . . . . . . . . . . . . . . . . . . . 60
Appendix B. Change Log (to be removed by RFC Editor prior to Appendix B. Change Log (to be removed by RFC Editor prior to
publication) . . . . . . . . . . . . . . . . . . . . 59 publication) . . . . . . . . . . . . . . . . . . . . 60
B.1. Changes in -01 . . . . . . . . . . . . . . . . . . . . . . 59 B.1. Changes in -02 . . . . . . . . . . . . . . . . . . . . . . 60
B.2. Changes in -00 . . . . . . . . . . . . . . . . . . . . . . 60 B.2. Changes in -01 . . . . . . . . . . . . . . . . . . . . . . 61
B.3. Changes in -00 . . . . . . . . . . . . . . . . . . . . . . 62
1. Introduction 1. Introduction
Note: This draft contains much of the same text as 2425 and 2426 Note: This draft contains much of the same text as 2425 and 2426
which may not be correct. Those two RFCs have been merged and the which may not be correct. Those two RFCs have been merged and the
structure of this draft is what's new. Some vCard-specific structure of this draft is what's new. Some vCard-specific
suggestions have been added, but for the most part this is still very suggestions have been added, but for the most part this is still very
open. But we'd like to get feedback on the structure mostly so that open. But we'd like to get feedback on the structure mostly so that
it may be fixed. it may be fixed.
skipping to change at page 6, line 16 skipping to change at page 6, line 16
In addition, the following media types are known to have been used In addition, the following media types are known to have been used
to refer to vCard data. They should be considered deprecated in to refer to vCard data. They should be considered deprecated in
favor of text/vcard. favor of text/vcard.
* text/directory * text/directory
* text/directory; type=vcard * text/directory; type=vcard
* text/x-vcard * text/x-vcard
Published specification: draft-ietf-vcarddav-vcardrev-01 Published specification: draft-ietf-vcarddav-vcardrev-02
Applications that use this media type: They are numerous, diverse, Applications that use this media type: They are numerous, diverse,
and include mail user agents, instant messaging clients, address and include mail user agents, instant messaging clients, address
book applications, directory servers, customer relationship book applications, directory servers, customer relationship
management software, etc. management software, etc.
Additional information: Additional information:
Magic number(s): Magic number(s):
skipping to change at page 6, line 38 skipping to change at page 6, line 38
Macintosh file type code(s): Macintosh file type code(s):
Person & email address to contact for further information: Simon Person & email address to contact for further information: Simon
Perreault <simon.perreault@viagenie.ca> Perreault <simon.perreault@viagenie.ca>
Intended usage: COMMON Intended usage: COMMON
Restrictions on usage: none Restrictions on usage: none
Author: Pete Resnick and Simon Perreault Author: Simon Perreault and Pete Resnick
Change controller: IETF Change controller: IETF
4. vCard Format Specification 4. vCard Format Specification
The text/vcard MIME content type (hereafter known as "vCard") The text/vcard MIME content type (hereafter known as "vCard")
contains contact information, typically pertaining to a single contains contact information, typically pertaining to a single
contact or group of contacts. The content consists of one or more contact or group of contacts. The content consists of one or more
lines in the format given below. lines in the format given below.
skipping to change at page 10, line 44 skipping to change at page 10, line 44
valuespec = text-list valuespec = text-list
/ URI ; from Appendix A of [RFC3986] / URI ; from Appendix A of [RFC3986]
/ date-list / date-list
/ time-list / time-list
/ date-time-list / date-time-list
/ boolean / boolean
/ integer-list / integer-list
/ float-list / float-list
/ binary / binary
/ vcard
/ utc-offset / utc-offset
/ iana-valuespec / iana-valuespec
text-list = *TEXT-LIST-CHAR *("," *TEXT-LIST-CHAR) text-list = *TEXT-LIST-CHAR *("," *TEXT-LIST-CHAR)
TEXT-LIST-CHAR = "\\" / "\," / "\n" TEXT-LIST-CHAR = "\\" / "\," / "\n"
/ <any VALUE-CHAR except , or \ or newline> / <any VALUE-CHAR except , or \ or newline>
; Backslashes, newlines, and commas must be encoded. ; Backslashes, newlines, and commas must be encoded.
; \n or \N can be used to encode a newline. ; \n or \N can be used to encode a newline.
date-list = date *("," date) date-list = date *("," date)
time-list = time *("," time) time-list = time *("," time)
date-time-list = date "T" time *("," date "T" time) date-time-list = date "T" time *("," date "T" time)
boolean = "TRUE" / "FALSE" boolean = "TRUE" / "FALSE"
skipping to change at page 11, line 27 skipping to change at page 11, line 27
integer = [sign] 1*DIGIT integer = [sign] 1*DIGIT
float-list = float *("," float) float-list = float *("," float)
float = [sign] 1*DIGIT ["." 1*DIGIT] float = [sign] 1*DIGIT ["." 1*DIGIT]
sign = "+" / "-" sign = "+" / "-"
binary = <A "B" binary encoded string as defined by [RFC2047].> binary = <A "B" binary encoded string as defined by [RFC2047].>
vcard = <vCard data encoded as specified below.> date = date-fullyear ["-" date-month ["-" date-mday]]
date = date-fullyear ["-"] date-month ["-"] date-mday
date-fullyear = 4 DIGIT date-fullyear = 4 DIGIT
date-month = 2 DIGIT ;01-12 date-month = 2 DIGIT ;01-12
date-mday = 2 DIGIT ;01-28, 01-29, 01-30, 01-31 date-mday = 2 DIGIT ;01-28, 01-29, 01-30, 01-31
;based on month/year ;based on month/year
time = time-hour [":"] time-minute [":"] time-second [time-secfrac] time = time-hour [":" time-minute [":" time-second [time-secfrac]]]
[time-zone] [time-zone]
time-hour = 2 DIGIT ;00-23 time-hour = 2 DIGIT ;00-23
time-minute = 2 DIGIT ;00-59 time-minute = 2 DIGIT ;00-59
time-second = 2 DIGIT ;00-60 (leap second) time-second = 2 DIGIT ;00-60 (leap second)
time-secfrac = "," 1*DIGIT time-secfrac = "," 1*DIGIT
time-zone = "Z" / time-numzone time-zone = "Z" / time-numzone
time-numzome = sign time-hour [":"] time-minute time-numzome = sign time-hour [":"] time-minute
utc-offset = ("+" / "-") time-hour ":" time-minute
utc-offset = ("+" / "-") time-hour ":" time-minute
iana-valuespec = <a publicly-defined valuetype format, registered iana-valuespec = <a publicly-defined valuetype format, registered
with IANA, as defined in section 15 of this with IANA, as defined in section 12 of this
document> document>
5.1. TEXT 5.1. TEXT
"text": The "text" value type should be used to identify values that "text": The "text" value type should be used to identify values that
contain human-readable text. The character set in which the text is contain human-readable text. The character set in which the text is
represented is controlled by the "charset" MIME type parameter. Note represented is controlled by the "charset" MIME type parameter. Note
that there is no way to override this parameter on a per-property that there is no way to override this parameter on a per-property
basis. As for the language, it is controlled by the "language" basis. As for the language, it is controlled by the "language"
property parameter defined in Section 6.1. property parameter defined in Section 6.1.
skipping to change at page 14, line 42 skipping to change at page 14, line 42
"binary": The "binary" value type specifies that the type value is "binary": The "binary" value type specifies that the type value is
inline, encoded binary data. This value type can be specified in the inline, encoded binary data. This value type can be specified in the
PHOTO, LOGO, SOUND, and KEY types. PHOTO, LOGO, SOUND, and KEY types.
If inline encoded binary data is specified, the ENCODING type If inline encoded binary data is specified, the ENCODING type
parameter MUST be used to specify the encoding format. The binary parameter MUST be used to specify the encoding format. The binary
data MUST be encoded using the "B" encoding format. Long lines of data MUST be encoded using the "B" encoding format. Long lines of
encoded binary data SHOULD BE folded to 75 characters using the encoded binary data SHOULD BE folded to 75 characters using the
folding method defined in Section 4.1. folding method defined in Section 4.1.
5.8. VCARD 5.8. UTC-OFFSET
"vcard": The "vcard" value type specifies that the type value is
another vCard. This value type can be specified in the AGENT
property. The value type is defined by this specification. Since
each of the type declarations within the vcard value type are being
specified within a text value themselves, they MUST be terminated
with the backslash escape sequence "\n" or "\N", instead of the
normal newline character sequence CRLF. In addition, any COMMA
character (ASCII decimal 44), SEMI-COLON character (ASCII decimal 59)
and COLON character (ASCII decimal 58) MUST be escaped with the
BACKSLASH character (ASCII decimal 92). For example, with the AGENT
property a value would be specified as:
AGENT:BEGIN:VCARD\nFN:Joe Friday\nTEL:tel:+1-919-555-7878\n
TITLE:Area Administrator\, Assistant\n EMAIL\;TYPE=INTERN\n
ET:jfriday@example.com\nEND:VCARD\n
5.9. UTC-OFFSET
"utc-offset": The "utc-offset" value type specifies that the type "utc-offset": The "utc-offset" value type specifies that the type
value is a signed offset from UTC. This value type can be specified value is a signed offset from UTC. This value type can be specified
in the TZ type. in the TZ type.
The value type is an offset from Coordinated Universal Time (UTC). The value type is an offset from Coordinated Universal Time (UTC).
It is specified as a positive or negative difference in units of It is specified as a positive or negative difference in units of
hours and minutes (e.g., +hh:mm). The time is specified as a 24-hour hours and minutes (e.g., +hh:mm). The time is specified as a 24-hour
clock. Hour values are from 00 to 23, and minute values are from 00 clock. Hour values are from 00 to 23, and minute values are from 00
to 59. Hour and minutes are 2-digits with high order zeroes required to 59. Hour and minutes are 2-digits with high order zeroes required
skipping to change at page 15, line 40 skipping to change at page 15, line 22
property value. property value.
Property parameter values that contain the COLON (US-ASCII decimal Property parameter values that contain the COLON (US-ASCII decimal
58), SEMICOLON (US-ASCII decimal 59) or COMMA (US-ASCII decimal 44) 58), SEMICOLON (US-ASCII decimal 59) or COMMA (US-ASCII decimal 44)
character separators MUST be specified as quoted-string text values. character separators MUST be specified as quoted-string text values.
Property parameter values MUST NOT contain the DQUOTE (US-ASCII Property parameter values MUST NOT contain the DQUOTE (US-ASCII
decimal 22) character. The DQUOTE (US-ASCII decimal 22) character is decimal 22) character. The DQUOTE (US-ASCII decimal 22) character is
used as a delimiter for parameter values that contain restricted used as a delimiter for parameter values that contain restricted
characters or URI text. For example: characters or URI text. For example:
FN;UID="urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6":Jane Doe FN;PID=8:Jane Doe
Property parameter values that are not in quoted strings are case Property parameter values that are not in quoted strings are case
insensitive. insensitive.
The general property parameters defined by this memo are defined by The general property parameters defined by this memo are defined by
the following notation: the following notation:
vcardparameter = encodingparam vcardparameter = encodingparam
/ valuetypeparam / valuetypeparam
/ languageparam / languageparam
/ uidparam / uidparam
encodingparam = "encoding" "=" encodingtype encodingparam = "encoding" "=" encodingtype
encodingtype = "b" ; from [RFC2047] encodingtype = "b" ; from [RFC2047]
/ iana-token ; registered as described in / iana-token ; registered as described in
; section 15 of this document ; section 12 of this document
valuetypeparam = "value" "=" valuetype valuetypeparam = "value" "=" valuetype
valuetype = "uri" ; URI from Appendix A of [RFC3986] valuetype = "uri" ; URI from Appendix A of [RFC3986]
/ "text" / "text"
/ "date" / "date"
/ "time" / "time"
/ "date-time" ; date time / "date-time" ; date time
/ "integer" / "integer"
/ "boolean" / "boolean"
/ "float" / "float"
/ x-name / x-name
/ iana-token ; registered as described in / iana-token ; registered as described in
; section 15 of this document ; section 12 of this document
languageparam = "language" "=" Language-Tag languageparam = "language" "=" Language-Tag
; Language-Tag is defined in section 2.1 of RFC 4646 ; Language-Tag is defined in section 2.1 of RFC 4646
uidparam = "uid" "=" URI ; from Appendix A of [RFC3986] uidparam = "uid" "=" URI ; from Appendix A of [RFC3986]
Applications MUST ignore x-param and iana-param value they don't Applications MUST ignore x-param and iana-param value they don't
recognize. recognize.
6.1. LANGUAGE 6.1. LANGUAGE
skipping to change at page 17, line 47 skipping to change at page 17, line 47
properties. properties.
Including the value type explicitly as part of each property provides Including the value type explicitly as part of each property provides
an extra hint to keep parsing simple and support more generalized an extra hint to keep parsing simple and support more generalized
applications. For example a search engine would not have to know the applications. For example a search engine would not have to know the
particular value types for all of the items for which it is particular value types for all of the items for which it is
searching. Because the value type is explicit in the definition, the searching. Because the value type is explicit in the definition, the
search engine could look for dates in any item type and provide search engine could look for dates in any item type and provide
results that can still be interpreted. results that can still be interpreted.
6.4. UID 6.4. PID
The "uid" parameter is used to uniquely identify the property. It The "pid" parameter is used to uniquely identify the property. It
plays a role analogous to the UID property (Section 7.7.7) on a per- plays a role analogous to the UID property (Section 7.7.7) on a per-
property instead of per-vCard basis. It MUST NOT appear more than property instead of per-vCard basis. It MUST NOT appear more than
once in a given property, and MUST be present if synchronization is once in a given property, and SHOULD be present if synchronization is
to be used. See Section 8. to be used. See Section 8. Its value is a small integer.
6.5. TYPE 6.5. TYPE
The "type" parameter has multiple, different uses. In general, it is The "type" parameter has multiple, different uses. In general, it is
a way of specifying class characteristics of the associated property. a way of specifying class characteristics of the associated property.
Most of the time, its value is a comma-separated subset of a pre- Most of the time, its value is a comma-separated subset of a pre-
defined enumeration. In this document, the following properties make defined enumeration. In this document, the following properties make
use of this parameter: PHOTO, ADR, LABEL, TEL, EMAIL, IMPP, LOGO, use of this parameter: PHOTO, ADR, LABEL, TEL, EMAIL, IMPP, LOGO,
SOUND, and KEY. MEMBER, SOUND, and KEY.
7. vCard Properties 7. vCard Properties
What follows is an enumeration of the standard vCard properties. What follows is an enumeration of the standard vCard properties.
7.1. General Properties 7.1. General Properties
7.1.1. BEGIN 7.1.1. BEGIN
Purpose: To denote the beginning of a syntactic entity within a Purpose: To denote the beginning of a syntactic entity within a
skipping to change at page 27, line 19 skipping to change at page 27, line 19
EMAIL;TYPE=internet,pref:jane_doe@example.com EMAIL;TYPE=internet,pref:jane_doe@example.com
EMAIL;TYPE=uri,work:http://example.com/contact.php EMAIL;TYPE=uri,work:http://example.com/contact.php
7.4.3. IMPP 7.4.3. IMPP
Purpose: To specify the URI for instant messaging and presence Purpose: To specify the URI for instant messaging and presence
protocol communications with the object the vCard represents. protocol communications with the object the vCard represents.
Value type: A single URI. The type of the URI indicates the Value type: A single URI.
protocol that can be used for this contact.
Special notes: The property may include the type parameter "TYPE" to Special notes: The property may include the type parameter "TYPE" to
specify an intended use for the URI. The TYPE parameter values specify an intended use for the URI. The TYPE parameter values
include one or more of the following: include one or more of the following:
* An indication of the type of communication for which this URI * An indication of the type of communication for which this URI
is appropriate. This can be a value of "personal" or is appropriate. This can be a value of "personal" or
"business". "business".
* An indication of the location of a device associated with this * An indication of the location of a device associated with this
skipping to change at page 30, line 39 skipping to change at page 30, line 39
LOGO;ENCODING=b;TYPE=image/jpeg:MIICajCCAdOgAwIBAgICBEUwDQYJKoZ LOGO;ENCODING=b;TYPE=image/jpeg:MIICajCCAdOgAwIBAgICBEUwDQYJKoZ
AQEEBQAwdzELMAkGA1UEBhMCVVMxLDAqBgNVBAoTI05ldHNjYXBlIENvbW11bm AQEEBQAwdzELMAkGA1UEBhMCVVMxLDAqBgNVBAoTI05ldHNjYXBlIENvbW11bm
ljYXRpb25zIENvcnBvcmF0aW9uMRwwGgYDVQQLExNJbmZvcm1hdGlvbiBTeXN0 ljYXRpb25zIENvcnBvcmF0aW9uMRwwGgYDVQQLExNJbmZvcm1hdGlvbiBTeXN0
<...the remainder of "B" encoded binary data...> <...the remainder of "B" encoded binary data...>
7.6.4. AGENT 7.6.4. AGENT
Purpose: To specify information about another person who will act on Purpose: To specify information about another person who will act on
behalf of the individual or resource associated with the vCard. behalf of the individual or resource associated with the vCard.
Value type: The default is a single vcard value. It can also be Value type: The default is a single URI value. It can also be reset
reset to either a single text or uri value. The text value can be to a single text value. The text value can be used to specify
used to specify textual information. The uri value can be used to textual information.
specify information outside of this MIME entity.
Special notes: This property typically is used to specify an area Special notes: This property typically is used to specify an area
administrator, assistant, or secretary for the individual administrator, assistant, or secretary for the individual
associated with the vCard. A key characteristic of the AGENT associated with the vCard. A key characteristic of the AGENT
property is that it represents somebody or something that is property is that it represents somebody or something that is
separately addressable. separately addressable.
Example: Examples:
AGENT;VALUE=uri: AGENT:urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6
CID:JQPUBLIC.part3.960129T083020.xyzMail@example.com AGENT:http://example.com/directory/jdoe.vcf
AGENT:BEGIN:VCARD\nFN:Susan Thomas\nTEL:tel:+1-919-555- AGENT;VALUE=text:Please contact my assistant Jane Doe for any
1234\nEMAIL\;INTERNET:sthomas@example.com\nEND:VCARD\n inquiries.
7.6.5. ORG 7.6.5. ORG
Purpose: To specify the organizational name and units associated Purpose: To specify the organizational name and units associated
with the vCard. with the vCard.
Value type: A single structured text value consisting of components Value type: A single structured text value consisting of components
separated the SEMI-COLON character (ASCII decimal 59). separated the SEMI-COLON character (ASCII decimal 59).
Special notes: The property is based on the X.520 Organization Name Special notes: The property is based on the X.520 Organization Name
and Organization Unit attributes. The property value is a and Organization Unit attributes. The property value is a
structured type consisting of the organization name, followed by structured type consisting of the organization name, followed by
one or more levels of organizational unit names. one or more levels of organizational unit names.
Example: A property value consisting of an organizational name, Example: A property value consisting of an organizational name,
organizational unit #1 name and organizational unit #2 name. organizational unit #1 name and organizational unit #2 name.
ORG:ABC\, Inc.;North American Division;Marketing ORG:ABC\, Inc.;North American Division;Marketing
7.6.6. MEMBER
Purpose: To include a member in the group this vCard represents.
Value tpe: A single URI. It MAY refer to something other than a
vCard object. For example, an e-mail distribution list could
employ the "mailto" URI scheme for efficiency.
Special notes: This property MUST NOT be present unless the value of
the KIND property is "group".
Examples:
BEGIN:VCARD
VERSION:4.0
KIND:group
FN:The Doe family
MEMBER:urn:uuid:03a0e51f-d1aa-4385-8a53-e29025acd8af
MEMBER:urn:uuid:b8767877-b4a1-4c70-9acc-505d3819e519
END:VCARD
BEGIN:VCARD
VERSION:4.0
FN:John Doe
UID:urn:uuid:03a0e51f-d1aa-4385-8a53-e29025acd8af
END:VCARD
BEGIN:VCARD
VERSION:4.0
FN:Jane Doe
UID:urn:uuid:b8767877-b4a1-4c70-9acc-505d3819e519
END:VCARD
BEGIN:VCARD
VERSION:4.0
KIND:group
FN:Funky distribution list
MEMBER:mailto:subscriber1@example.com
MEMBER:xmpp:subscriber2@example.com
MEMBER:sip:subscriber3@example.com
MEMBER:tel:+1-418-555-5555
END:VCARD
7.6.7. RELATED
Purpose: To specify a relationship the individual this vCard
represents has with another.
Value type: A single URI.
Special notes: The TYPE parameter MAY be used to characterize the
related individual. The understood types are:
* "parent" means that the related individual is the parent of the
individual this vCard represents.
* "child" means the opposite of "parent".
* "sibling" means that the two individuals are siblings.
* "manager" means that the related individual is the direct
hierarchical superior (i.e. supervisor or manager) of the
individual this vCard represents.
* "assistant" for an assistant or secretary.
Other types may be registered to IANA as described in
Section 12.1, and private extensions starting with "X-" may be
used.
Examples:
RELATED;TYPE=manager:urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6
RELATED;TYPE=assistant:http://example.com/directory/jdoe.vcf
7.7. Explanatory Properties 7.7. Explanatory Properties
These properties are concerned with additional explanations, such as These properties are concerned with additional explanations, such as
that related to informational notes or revisions specific to the that related to informational notes or revisions specific to the
vCard. vCard.
7.7.1. CATEGORIES 7.7.1. CATEGORIES
Purpose: To specify application category information about the Purpose: To specify application category information about the
vCard. vCard.
skipping to change at page 34, line 46 skipping to change at page 36, line 29
Value type: A single URI value. Value type: A single URI value.
Special notes: The type is used to uniquely identify the object that Special notes: The type is used to uniquely identify the object that
the vCard represents. The "uuid" URN namespace defined in the vCard represents. The "uuid" URN namespace defined in
[RFC4122] is particularly well-suited to this task, but other URI [RFC4122] is particularly well-suited to this task, but other URI
schemes MAY be used. schemes MAY be used.
This property MUST NOT appear more than once in a given vCard, and This property MUST NOT appear more than once in a given vCard, and
MUST be present if synchronization is to be used. See Section 8. MUST be present if synchronization is to be used. See Section 8.
The UID parameter MUST NOT be applied to this property. The PID parameter MUST NOT be applied to this property.
Example: Example:
UID:urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6 UID:urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6
7.7.8. URL 7.7.8. URL
Purpose: To specify a uniform resource locator associated with the Purpose: To specify a uniform resource locator associated with the
object that the vCard refers to. object that the vCard refers to.
skipping to change at page 37, line 35 skipping to change at page 39, line 19
Value type: A single URI value. Value type: A single URI value.
Special notes: Where multiple CALADRURI properties are specified, Special notes: Where multiple CALADRURI properties are specified,
the default CALADRURI property is indicated with the PREF the default CALADRURI property is indicated with the PREF
parameter. parameter.
Example: Example:
CALADRURI;PREF:mailto:janedoe@example.com CALADRURI;PREF:mailto:janedoe@example.com
CALDARURI:http://example.com/calendar/jdoe
7.9.3. CAPURI 7.9.3. CALURI
Purpose: To specify a protocol independent location from which a
calendaring and scheduling client (i.e., CUA) can communicate with
a user's entire calendar.
Value type: A single URI value.
Special notes: Where multiple CAPURI properties are specified, the
default CAPURI property is indicated with the PREF parameter.
7.9.4. CALURI
Purpose: To specify the URI for a user's calendar in a vCard object. Purpose: To specify the URI for a user's calendar in a vCard object.
Value type: A single URI value. Value type: A single URI value.
Special notes: Where multiple CALURI properties are specified, the Special notes: Where multiple CALURI properties are specified, the
default CALURI property is indicated with the PREF parameter. The default CALURI property is indicated with the PREF parameter. The
property should contain a URI pointing to an iCalendar object property should contain a URI pointing to an iCalendar object
associated with a snapshot of the user's calendar store. If the associated with a snapshot of the user's calendar store. If the
iCalendar object is represented as a file or document, it's file iCalendar object is represented as a file or document, it's file
type should be "ics". type should be "ics".
skipping to change at page 38, line 40 skipping to change at page 40, line 11
context, synchronization is defined as the intelligent merging of two context, synchronization is defined as the intelligent merging of two
representations of the same object. vCard 4.0 includes mechanisms to representations of the same object. vCard 4.0 includes mechanisms to
aid this process. aid this process.
8.1. Mechanisms 8.1. Mechanisms
Two vCards for which the UID properties (Section 7.7.7) are Two vCards for which the UID properties (Section 7.7.7) are
equivalent MUST be considered representations of the same object. equivalent MUST be considered representations of the same object.
Equivalence is determined as specified in [RFC3986], Section 6. A Equivalence is determined as specified in [RFC3986], Section 6. A
missing UID property MUST NOT be considered equivalent to any other. missing UID property MUST NOT be considered equivalent to any other.
Hence, the UID property MUST be present if synchronization is to be Hence, the UID property SHOULD be present if synchronization is to be
used. used.
Pairs of properties, one from each of a pair of vCards representing Pairs of properties, one from each of a pair of vCards representing
the same object, having equivalent names and UID parameter values the same object, having equivalent names and PID parameter values
MUST be considered representations of the same object. A missing UID MUST be considered representations of the same object. A missing PID
parameter MUST NOT be considered equivalent to any other. Hence, the parameter MUST NOT be considered equivalent to any other. Hence, the
UID parameter MUST be present if synchronization is to be used. PID parameter SHOULD be present if synchronization is to be used.
It is expected that a synchronization engine will exploit such It is expected that a synchronization engine will exploit such
property associations by e.g. overwriting the destination property property associations by e.g. overwriting the destination property
value and parameters with the source destination property value and value and parameters with the source destination property value and
parameters. The particular merging strategy is out of scope for this parameters. The particular merging strategy is out of scope for this
document. document.
8.2. Example 8.2. Example
Two vCards are to by synchronized: Two vCards are to by synchronized:
BEGIN:VCARD BEGIN:VCARD
VERSION:4.0 VERSION:4.0
UID:urn:uuid:77a01597-0603-40f3-8138-36deca8618da UID:urn:uuid:77a01597-0603-40f3-8138-36deca8618da
FN;UID="urn:uuid:dade7896-81bd-4a3c-950e-bdfc04f15b61":Jane Doe FN;PID=1:Jane Doe
EMAIL;UID="urn:uuid:69531f4a-c34d-4a1e-8922-bd38a9476a53": EMAIL;PID=1:jdoe1@example.com
jdoe1@example.com EMAIL;PID=2:jdoe2@example.com
EMAIL;UID="urn:uuid:48a28f93-d4a4-4430-a7c6-a784ecb3f865":
jdoe2@example.com
END:VCARD END:VCARD
BEGIN:VCARD BEGIN:VCARD
VERSION:4.0 VERSION:4.0
UID:urn:uuid:77a01597-0603-40f3-8138-36deca8618da UID:urn:uuid:77a01597-0603-40f3-8138-36deca8618da
FN;UID="urn:uuid:dade7896-81bd-4a3c-950e-bdfc04f15b61":Jane Doe FN;PID=1:Jane Doe
EMAIL;UID="urn:uuid:69531f4a-c34d-4a1e-8922-bd38a9476a53": EMAIL;PID=1:jdoe3@example.com
jdoe3@example.com EMAIL;PID=3:jdoe4@example.com
EMAIL;UID="urn:uuid:a69f4bff-49c5-4829-8c95-63db67c85bd6":
jdoe4@example.com
END:VCARD END:VCARD
Assuming the first one is the source and the other is the Assuming the first one is the source and the other is the
destination, a synchronization engine may produce the following destination, a synchronization engine may produce the following
merged vCard: merged vCard:
BEGIN:VCARD BEGIN:VCARD
VERSION:4.0 VERSION:4.0
UID:urn:uuid:77a01597-0603-40f3-8138-36deca8618da UID:urn:uuid:77a01597-0603-40f3-8138-36deca8618da
FN;UID="urn:uuid:dade7896-81bd-4a3c-950e-bdfc04f15b61":Jane Doe FN;PID=1:Jane Doe
EMAIL;UID="urn:uuid:69531f4a-c34d-4a1e-8922-bd38a9476a53": EMAIL;PID=1:jdoe1@example.com
jdoe1@example.com EMAIL;PID=2:jdoe2@example.com
EMAIL;UID="urn:uuid:48a28f93-d4a4-4430-a7c6-a784ecb3f865": EMAIL;PID=3:jdoe4@example.com
jdoe2@example.com
EMAIL;UID="urn:uuid:a69f4bff-49c5-4829-8c95-63db67c85bd6":
jdoe4@example.com
END:VCARD END:VCARD
9. Formal Grammar 9. Formal Grammar
The following formal grammar is provided to assist developers in The following formal grammar is provided to assist developers in
building parsers for the vCard. building parsers for the vCard.
This syntax is written according to the form described in [RFC5234], This syntax is written according to the form described in [RFC5234],
but it references just this small subset of [RFC5234] literals: but it references just this small subset of [RFC5234] literals:
;******************************************* ;*******************************************
; Basic vCard Definition ; Basic vCard Definition
;******************************************* ;*******************************************
vcard_entity = 1*(vcard) vcard-entity = 1*(vcard)
vcard = "BEGIN" ":" "VCARD" 1*CRLF vcard = "BEGIN" ":" "VCARD" 1*CRLF
1*(contentline) 1*(contentline)
;A vCard object MUST include the VERSION, FN and N types. ;A vCard object MUST include the VERSION and FN properties.
"END" ":" "VCARD" 1*CRLF "END" ":" "VCARD" 1*CRLF
contentline = name *(";" param ) ":" value CRLF contentline = name *(";" param ) ":" value CRLF
; When parsing a content line, folded lines must first ; When parsing a content line, folded lines must first
; be unfolded according to the unfolding procedure ; be unfolded according to the unfolding procedure
; described above. When generating a content line, lines ; described above. When generating a content line, lines
; longer than 75 characters SHOULD be folded according to ; longer than 75 characters SHOULD be folded according to
; the folding procedure described in [MIME DIR]. ; the folding procedure described in [MIME DIR].
name = iana-token / x-name name = iana-token / x-name
skipping to change at page 41, line 22 skipping to change at page 42, line 32
VALUE-CHAR = WSP / VCHAR / NON-ASCII VALUE-CHAR = WSP / VCHAR / NON-ASCII
; Any textual character ; Any textual character
;******************************************* ;*******************************************
; vCard Type Definition ; vCard Type Definition
; ;
; Provides type-specific definitions for how the ; Provides type-specific definitions for how the
; "value" and "param" are defined. ; "value" and "param" are defined.
;******************************************* ;*******************************************
;For name="NAME" ; **** NAME ****
param = "" param = ""
; No parameters allowed ; No parameters allowed
value = text-value value = text-value
;For name="KIND" ; **** KIND ****
param = "" param = ""
; No parameters allowed ; No parameters allowed
value = kind-value value = kind-value
kind-value = "individual" / "group" / "org" / x-name / iana-token kind-value = "individual" / "group" / "org" / x-name / iana-token
;For name="PROFILE" ; **** PROFILE ****
param = "" param = ""
; No parameters allowed ; No parameters allowed
value = text-value value = text-value
; Value MUST be the case insensitive value "VCARD ; Value MUST be the case insensitive value "VCARD
; **** SOURCE ****
;For name="SOURCE"
param = source-param param = source-param
; Only source parameters allowed ; Only source parameters allowed
value = uri value = uri
source-param = ("VALUE" "=" "uri") source-param = ("VALUE" "=" "uri")
/ (x-name "=" *SAFE-CHAR) / (x-name "=" *SAFE-CHAR)
;For name="FN"
; **** FN ****
;This type MUST be included in a vCard object. ;This type MUST be included in a vCard object.
param = text-param param = text-param
; Text parameters allowed ; Text parameters allowed
value = text-value value = text-value
;For name="N" ; **** N ****
;This type MUST be included in a vCard object. ;This type MUST be included in a vCard object.
param = text-param param = text-param
; Text parameters allowed ; Text parameters allowed
value = n-value value = n-value
n-value = 0*4(text-value *("," text-value) ";") n-value = 0*4(text-value *("," text-value) ";")
text-value *("," text-value) text-value *("," text-value)
; Family; Given; Middle; Prefix; Suffix. ; Family; Given; Middle; Prefix; Suffix.
; Example: Public;John;Quincy,Adams;Reverend Dr. III ; Example: Public;John;Quincy,Adams;Reverend Dr. III
;For name="NICKNAME" ; **** NICKNAME ****
param = text-param param = text-param
; Text parameters allowed ; Text parameters allowed
value = text-value-list value = text-value-list
;For name="PHOTO" ; **** PHOTO ****
param = img-inline-param param = img-inline-param
; Only image parameters allowed ; Only image parameters allowed
param =/ img-refer-param param =/ img-refer-param
; Only image parameters allowed ; Only image parameters allowed
value = img-inline-value value = img-inline-value
; Value and parameter MUST match ; Value and parameter MUST match
value =/ img-refer-value value =/ img-refer-value
; Value and parameter MUST match ; Value and parameter MUST match
;For name="BDAY" ; **** BDAY ****
param = ("VALUE" "=" "date") param = ("VALUE" "=" "date")
; Only value parameter allowed ; Only value parameter allowed
param =/ ("VALUE" "=" "date-time") param =/ ("VALUE" "=" "date-time")
; Only value parameter allowed ; Only value parameter allowed
value = date-value value = date-value
; Value MUST match value type ; Value MUST match value type
value =/ date-time-value value =/ date-time-value
; Value MUST match value type ; Value MUST match value type
;For name="ADR" ; **** ADR ****
param = adr-param / text-param param = adr-param / text-param
; Only adr and text parameters allowed ; Only adr and text parameters allowed
value = adr-value value = adr-value
;For name="LABEL" ; **** LABEL ****
param = adr-param / text-param param = adr-param / text-param
; Only adr and text parameters allowed ; Only adr and text parameters allowed
value = text-value value = text-value
;For name="TEL" ; **** TEL ****
param = tel-param param = tel-param
; Only tel parameters allowed ; Only tel parameters allowed
value = uri-value value = uri-value
tel-param = "TYPE" "=" tel-type *("," tel-type) tel-param = "TYPE" "=" tel-type *("," tel-type)
tel-type = "HOME" / "WORK" / "PREF" / "VOICE" / "FAX" / "MSG" tel-type = "HOME" / "WORK" / "PREF" / "VOICE" / "FAX" / "MSG"
/ "CELL" / "PAGER" / "BBS" / "MODEM" / "CAR" / "ISDN" / "CELL" / "PAGER" / "BBS" / "MODEM" / "CAR" / "ISDN"
/ "VIDEO" / "PCS" / iana-token / x-name / "VIDEO" / "PCS" / iana-token / x-name
; Values are case insensitive ; Values are case insensitive
;For name="EMAIL" ; **** EMAIL ****
param = email-param param = email-param
; Only email parameters allowed ; Only email parameters allowed
value = text-value value = text-value
email-param = "TYPE" "=" email-type ["," "PREF"] email-param = "TYPE" "=" email-type ["," "PREF"]
; Value is case insensitive ; Value is case insensitive
email-type = "INTERNET" / "X400" / iana-token / "X-" word email-type = "INTERNET" / "X400" / iana-token / "X-" word
; Values are case insensitive ; Values are case insensitive
; **** TZ ****
;For name="TZ"
param = "" param = ""
; No parameters allowed ; No parameters allowed
value = utc-offset-value value = utc-offset-value
;For name="GEO" ; **** GEO ****
param = "" param = ""
; No parameters allowed ; No parameters allowed
value = float-value ";" float-value value = float-value ";" float-value
;For name="TITLE" ; **** TITLE ****
param = text-param param = text-param
; Only text parameters allowed ; Only text parameters allowed
value = text-value value = text-value
;For name="ROLE" ; **** ROLE ****
param = text-param param = text-param
; Only text parameters allowed ; Only text parameters allowed
value = text-value value = text-value
;For name="LOGO" ; **** LOGO ****
param = img-inline-param / img-refer-param param = img-inline-param / img-refer-param
; Only image parameters allowed ; Only image parameters allowed
value = img-inline-value / img-refer-value value = img-inline-value / img-refer-value
; Value and parameter MUST match ; Value and parameter MUST match
;For name="AGENT" ; **** AGENT ****
param = agent-inline-param param = agent-refer-param / text-param
param =/ agent-refer-param
param =/ text-param
value = agent-inline-value
; Value and parameter MUST match
value =/ agent-refer-value
; Value and parameter MUST match
value =/ text-value value = agent-refer-value / text-value
; Value and parameter MUST match ; Value and parameter MUST match
agent-inline-param = "" agent-refer-param = ""
; No parameters allowed ; No parameters allowed
agent-refer-param = "VALUE" "=" "uri"
; Only value parameter allowed
agent-inline-value = text-value
; Value MUST be a valid vCard object
agent-refer-value = uri agent-refer-value = uri
; URI MUST refer to valid vCard object ; URI MUST refer to valid vCard object
;For name="ORG"
; **** ORG ****
param = text-param param = text-param
; Only text parameters allowed ; Only text parameters allowed
value = org-value value = org-value
org-value = *(text-value ";") text-value org-value = *(text-value ";") text-value
; First is Organization Name, remainder are Organization Units. ; First is Organization Name, remainder are Organization Units.
;For name="CATEGORIES" ; **** MEMBER ****
param = ""
; No parameters allowed
value = uri
; Any valid URI scheme
; **** RELATED ****
param = "TYPE" "=" related-type
; Value is case insensitive
value = uri
; Any valid URI scheme
related-type = "parent" / "child" / "sibling" / "manager"
/ "assistant" / iana-token / "X-" word
; Values are case insensitive
; **** CATEGORIES ****
param = text-param param = text-param
; Only text parameters allowed ; Only text parameters allowed
value = text-value-list value = text-value-list
;For name="NOTE" ; **** NOTE ****
param = text-param param = text-param
; Only text parameters allowed ; Only text parameters allowed
value = text-value value = text-value
;For name="PRODID" ; **** PRODID ****
param = "" param = ""
; No parameters allowed ; No parameters allowed
value = text-value value = text-value
;For name="REV" ; **** REV ****
param = ["VALUE" =" "date-time"] param = ["VALUE" "=" "date-time"]
; Only value parameters allowed. Values are case insensitive. ; Only value parameters allowed. Values are case insensitive.
param =/ "VALUE" =" "date" param =/ "VALUE" "=" "date"
; Only value parameters allowed. Values are case insensitive. ; Only value parameters allowed. Values are case insensitive.
value = date-time-value value = date-time-value
value =/ date-value value =/ date-value
; **** SORT-STRING ****
;For name="SORT-STRING"
param = text-param param = text-param
; Only text parameters allowed ; Only text parameters allowed
value = text-value value = text-value
;For name="SOUND" ; **** SOUND ****
param = snd-inline-param param = snd-inline-param
; Only sound parameters allowed ; Only sound parameters allowed
param =/ snd-refer-param param =/ snd-refer-param
; Only sound parameters allowed ; Only sound parameters allowed
value = snd-line-value value = snd-line-value
; Value MUST match value type ; Value MUST match value type
value =/ snd-refer-value value =/ snd-refer-value
; Value MUST match value type ; Value MUST match value type
snd-inline-value = binary-value CRLF snd-inline-value = binary-value CRLF
skipping to change at page 46, line 16 skipping to change at page 47, line 26
value = snd-line-value value = snd-line-value
; Value MUST match value type ; Value MUST match value type
value =/ snd-refer-value value =/ snd-refer-value
; Value MUST match value type ; Value MUST match value type
snd-inline-value = binary-value CRLF snd-inline-value = binary-value CRLF
; Value MUST be "b" encoded audio content ; Value MUST be "b" encoded audio content
snd-inline-param = ("VALUE" "=" "binary"]) snd-inline-param = ("VALUE" "=" "binary")
/ ("ENCODING" "=" "b") / ("ENCODING" "=" "b")
/ ("TYPE" "=" *SAFE-CHAR) / ("TYPE" "=" *SAFE-CHAR)
; Value MUST be an IANA registered audio type ; Value MUST be an IANA registered audio type
snd-refer-value = uri snd-refer-value = uri
; URI MUST refer to audio content of given type ; URI MUST refer to audio content of given type
snd-refer-param = ("VALUE" "=" "uri") snd-refer-param = ("VALUE" "=" "uri")
/ ("TYPE" "=" word) / ("TYPE" "=" word)
; Value MUST be an IANA registered audio type ; Value MUST be an IANA registered audio type
;For name="UID" ; **** UID ****
param = "" param = ""
; No parameters allowed ; No parameters allowed
value = uri value = uri
;For name="URL" ; **** URL ****
param = "" param = ""
; No parameters allowed ; No parameters allowed
value = uri value = uri
;For name="VERSION" ; **** VERSION ****
;This type MUST be included in a vCard object. ;This type MUST be included in a vCard object.
param = "" param = ""
; No parameters allowed ; No parameters allowed
value = text-value value = text-value
; Value MUST be "4.0" ; Value MUST be "4.0"
;For name="CLASS" ; **** CLASS ****
param = "" param = ""
; No parameters allowed ; No parameters allowed
value = "PUBLIC" / "PRIVATE" / "CONFIDENTIAL" value = "PUBLIC" / "PRIVATE" / "CONFIDENTIAL"
/ iana-token / x-name / iana-token / x-name
; Value are case insensitive ; Value are case insensitive
;For name="KEY" ; **** KEY ****
param = key-txt-param param = key-txt-param
; Only value and type parameters allowed ; Only value and type parameters allowed
param =/ key-bin-param param =/ key-bin-param
; Only value and type parameters allowed ; Only value and type parameters allowed
value = text-value value = text-value
value =/ binary-value value =/ binary-value
key-txt-param = "TYPE" "=" keytype key-txt-param = "TYPE" "=" keytype
key-bin-param = ("TYPE" "=" keytype) key-bin-param = ("TYPE" "=" keytype)
/ ("ENCODING" "=" "b") / ("ENCODING" "=" "b")
; Value MUST be a "b" encoded key or certificate ; Value MUST be a "b" encoded key or certificate
keytype = param-value keytype = param-value
; Type MUST be a media type as defined in RFC 4288 ; Type MUST be a media type as defined in RFC 4288
;For name="X-" non-standard type ; **** X- **** non-standard type
param = text-param / (x-name "=" param-value) param = text-param / (x-name "=" param-value)
; Only text or non-standard parameters allowed ; Only text or non-standard parameters allowed
value = text-value value = text-value
;******************************************* ;*******************************************
; vCard Commonly Used Parameter Definition ; vCard Commonly Used Parameter Definition
;******************************************* ;*******************************************
text-param = ("VALUE" "=" "ptext") text-param = ("VALUE" "=" "ptext")
skipping to change at page 47, line 41 skipping to change at page 49, line 4
;******************************************* ;*******************************************
; vCard Commonly Used Parameter Definition ; vCard Commonly Used Parameter Definition
;******************************************* ;*******************************************
text-param = ("VALUE" "=" "ptext") text-param = ("VALUE" "=" "ptext")
/ ("LANGUAGE" "=" langval) / ("LANGUAGE" "=" langval)
/ (x-name "=" param-value) / (x-name "=" param-value)
langval = <a language string as defined in [RFC4646]> langval = <a language string as defined in [RFC4646]>
img-inline-value = binary-value img-inline-value = binary-value
;Value MUST be "b" encoded image content ;Value MUST be "b" encoded image content
img-inline-param img-inline-param
img-inline-param = ("VALUE" "=" "binary") img-inline-param = ("VALUE" "=" "binary")
/ ("ENCODING" "=" "b") / ("ENCODING" "=" "b")
/ ("TYPE" "=" param-value / ("TYPE" "=" param-value)
;TYPE value MUST be an image media type as defined in RFC 4288 ;TYPE value MUST be an image media type as defined in RFC 4288
img-refer-value = uri img-refer-value = uri
;URI MUST refer to image content of given type ;URI MUST refer to image content of given type
img-refer-param = ("VALUE" "=" "uri") img-refer-param = ("VALUE" "=" "uri")
/ ("TYPE" "=" param-value) / ("TYPE" "=" param-value)
;TYPE value MUST be an image media type as defined in RFC 4288 ;TYPE value MUST be an image media type as defined in RFC 4288
adr-param = ("TYPE" "=" adr-type *("," adr-type)) adr-param = ("TYPE" "=" adr-type *("," adr-type))
/ (text-param) / (text-param)
skipping to change at page 48, line 27 skipping to change at page 49, line 37
; PO Box, Extended Address, Street, Locality, Region, Postal ; PO Box, Extended Address, Street, Locality, Region, Postal
; Code, Country Name ; Code, Country Name
;******************************************* ;*******************************************
; vCard Type Value Definition ; vCard Type Value Definition
;******************************************* ;*******************************************
text-value-list = 1*text-value *("," 1*text-value) text-value-list = 1*text-value *("," 1*text-value)
text-value = *(SAFE-CHAR / ":" / DQUOTE / ESCAPED-CHAR) text-value = *(SAFE-CHAR / ":" / DQUOTE / ESCAPED-CHAR)
ESCAPED-CHAR = "\\" / "\;" / "\," / "\n" / "\N") ESCAPED-CHAR = "\\" / "\;" / "\," / "\n" / "\N"
; \\ encodes \, \n or \N encodes newline ; \\ encodes \, \n or \N encodes newline
; \; encodes ;, \, encodes , ; \; encodes ;, \, encodes ,
binary-value = <A "b" encoded text value as defined in [RFC2047]> binary-value = <A "b" encoded text value as defined in [RFC2047]>
date-value = <A single date value as defined in [RFC2425]> date-value = <A single date value as defined in [RFC2425]>
time-value = <A single time value as defined in [RFC2425]> time-value = <A single time value as defined in [RFC2425]>
date-time-value = <A single date-time value as defined in [RFC2425]> date-time-value = <A single date-time value as defined in [RFC2425]>
skipping to change at page 49, line 9 skipping to change at page 50, line 18
uri-value = <A uri value as defined in [RFC2425]> uri-value = <A uri value as defined in [RFC2425]>
utc-offset-value = ("+" / "-") time-hour ":" time-minute utc-offset-value = ("+" / "-") time-hour ":" time-minute
time-hour = 2DIGIT ;00-23 time-hour = 2DIGIT ;00-23
time-minute = 2DIGIT ;00-59 time-minute = 2DIGIT ;00-59
10. Example: Authors' vCards 10. Example: Authors' vCards
BEGIN:VCARD BEGIN:VCARD
VERSION:4.0 VERSION:4.0
FN:Pete Resnick
N:Resnick;Pete;;;
GENDER:M
ORG:QUALCOMM Incorporated
ADR;TYPE=work:;;5775 Morehouse Drive;San Diego;CA;92121-1714;US
TEL;TYPE=voice:tel:+1-858-651-4478
EMAIL;TYPE=internet:presnick@qualcomm.com
URL:http://www.qualcomm.com/~presnick/
END:VCARD
BEGIN:VCARD
VERSION:4.0
FN:Simon Perreault FN:Simon Perreault
N:Perreault;Simon;;;ing. jr.,M.Sc. N:Perreault;Simon;;;ing. jr.,M.Sc.
BDAY:1983-02-03 BDAY:1983-02-03
GENDER:M GENDER:M
ORG:Viagenie ORG:Viagenie
ADR;TYPE=work:;;2600 boul. Laurier\, suite 625; ADR;TYPE=work:;;2600 boul. Laurier\, suite 625;
Quebec;QC;G1V 4W1;Canada Quebec;QC;G1V 4W1;Canada
TEL;TYPE=voice,work:tel:+1-418-656-9254;ext=102 TEL;TYPE=voice,work:tel:+1-418-656-9254;ext=102
TEL;TYPE=fax,work:tel:+1-418-656-9257 TEL;TYPE=fax,work:tel:+1-418-656-9257
EMAIL;TYPE=internet,work:simon.perreault@viagenie.ca EMAIL;TYPE=internet,work:simon.perreault@viagenie.ca
GEO:46.772673,-71.282945 GEO:46.772673,-71.282945
CLASS:PUBLIC CLASS:PUBLIC
KEY;VALUE=uri:http://www.viagenie.ca/simon.perreault/simon.asc KEY;VALUE=uri:http://www.viagenie.ca/simon.perreault/simon.asc
END:VCARD END:VCARD
BEGIN:VCARD
VERSION:4.0
FN:Pete Resnick
N:Resnick;Pete;;;
GENDER:M
ORG:QUALCOMM Incorporated
ADR;TYPE=work:;;5775 Morehouse Drive;San Diego;CA;92121-1714;US
TEL;TYPE=voice:tel:+1-858-651-4478
EMAIL;TYPE=internet:presnick@qualcomm.com
URL:http://www.qualcomm.com/~presnick/
END:VCARD
11. Security Considerations 11. Security Considerations
o Internet mail is subject to many well known security attacks, o Internet mail is subject to many well known security attacks,
including monitoring, replay, and forgery. Care should be taken including monitoring, replay, and forgery. Care should be taken
by any directory service in allowing information to leave the by any directory service in allowing information to leave the
scope of the service itself, where any access controls can no scope of the service itself, where any access controls can no
longer be guaranteed. Applications should also take care to longer be guaranteed. Applications should also take care to
display directory data in a "safe" environment (e.g., PostScript- display directory data in a "safe" environment (e.g., PostScript-
valued types). valued types).
skipping to change at page 54, line 33 skipping to change at page 55, line 33
| EMAIL | Current | RFCXXXX, Section 7.4.2 | | EMAIL | Current | RFCXXXX, Section 7.4.2 |
| IMPP | Current | RFCXXXX, Section 7.4.3 | | IMPP | Current | RFCXXXX, Section 7.4.3 |
| LANG | Current | RFCXXXX, Section 7.4.4 | | LANG | Current | RFCXXXX, Section 7.4.4 |
| TZ | Current | RFCXXXX, Section 7.5.1 | | TZ | Current | RFCXXXX, Section 7.5.1 |
| GEO | Current | RFCXXXX, Section 7.5.2 | | GEO | Current | RFCXXXX, Section 7.5.2 |
| TITLE | Current | RFCXXXX, Section 7.6.1 | | TITLE | Current | RFCXXXX, Section 7.6.1 |
| ROLE | Current | RFCXXXX, Section 7.6.2 | | ROLE | Current | RFCXXXX, Section 7.6.2 |
| LOGO | Current | RFCXXXX, Section 7.6.3 | | LOGO | Current | RFCXXXX, Section 7.6.3 |
| AGENT | Current | RFCXXXX, Section 7.6.4 | | AGENT | Current | RFCXXXX, Section 7.6.4 |
| ORG | Current | RFCXXXX, Section 7.6.5 | | ORG | Current | RFCXXXX, Section 7.6.5 |
| MEMBER | Current | RFCXXXX, Section 7.6.6 |
| RELATED | Current | RFCXXXX, Section 7.6.7 |
| CATEGORIES | Current | RFCXXXX, Section 7.7.1 | | CATEGORIES | Current | RFCXXXX, Section 7.7.1 |
| NOTE | Current | RFCXXXX, Section 7.7.2 | | NOTE | Current | RFCXXXX, Section 7.7.2 |
| PRODID | Current | RFCXXXX, Section 7.7.3 | | PRODID | Current | RFCXXXX, Section 7.7.3 |
| REV | Current | RFCXXXX, Section 7.7.4 | | REV | Current | RFCXXXX, Section 7.7.4 |
| SORT-STRING | Current | RFCXXXX, Section 7.7.5 | | SORT-STRING | Current | RFCXXXX, Section 7.7.5 |
| SOUND | Current | RFCXXXX, Section 7.7.6 | | SOUND | Current | RFCXXXX, Section 7.7.6 |
| UID | Current | RFCXXXX, Section 7.7.7 | | UID | Current | RFCXXXX, Section 7.7.7 |
| URL | Current | RFCXXXX, Section 7.7.8 | | URL | Current | RFCXXXX, Section 7.7.8 |
| VERSION | Current | RFCXXXX, Section 7.7.9 | | VERSION | Current | RFCXXXX, Section 7.7.9 |
| CLASS | Current | RFCXXXX, Section 7.8.1 | | CLASS | Current | RFCXXXX, Section 7.8.1 |
| KEY | Current | RFCXXXX, Section 7.8.2 | | KEY | Current | RFCXXXX, Section 7.8.2 |
| FBURL | Current | RFCXXXX, Section 7.9.1 | | FBURL | Current | RFCXXXX, Section 7.9.1 |
| CALADRURI | Current | RFCXXXX, Section 7.9.2 | | CALADRURI | Current | RFCXXXX, Section 7.9.2 |
| CAPURI | Current | RFCXXXX, Section 7.9.3 | | CALURI | Current | RFCXXXX, Section 7.9.3 |
| CALURI | Current | RFCXXXX, Section 7.9.4 |
+-------------+---------+------------------------+ +-------------+---------+------------------------+
12.2.2. Parameters Registry 12.2.2. Parameters Registry
The following table is to be used to initialize the parameters The following table is to be used to initialize the parameters
registry. registry.
+-----------+---------+----------------------+ +-----------+---------+----------------------+
| Parameter | Status | Reference | | Parameter | Status | Reference |
+-----------+---------+----------------------+ +-----------+---------+----------------------+
| LANGUAGE | Current | RFCXXXX, Section 6.1 | | LANGUAGE | Current | RFCXXXX, Section 6.1 |
| ENCODING | Current | RFCXXXX, Section 6.2 | | ENCODING | Current | RFCXXXX, Section 6.2 |
| VALUE | Current | RFCXXXX, Section 6.3 | | VALUE | Current | RFCXXXX, Section 6.3 |
| UID | Current | RFCXXXX, Section 6.4 | | PID | Current | RFCXXXX, Section 6.4 |
| TYPE | Current | RFCXXXX, Section 6.5 | | TYPE | Current | RFCXXXX, Section 6.5 |
+-----------+---------+----------------------+ +-----------+---------+----------------------+
12.2.3. Value Data Types Registry 12.2.3. Value Data Types Registry
The following table is to be used to initialize the parameters The following table is to be used to initialize the parameters
registry. registry.
+-----------------+---------+----------------------+ +-----------------+---------+----------------------+
| Value Data Type | Status | Reference | | Value Data Type | Status | Reference |
skipping to change at page 55, line 46 skipping to change at page 56, line 46
| URI | Current | RFCXXXX, Section 5.2 | | URI | Current | RFCXXXX, Section 5.2 |
+-----------------+---------+----------------------+ +-----------------+---------+----------------------+
13. Acknowledgements 13. Acknowledgements
The authors would like to thank Frank Dawson and Tim Howes, the The authors would like to thank Frank Dawson and Tim Howes, the
original authors of [RFC2425] and [RFC2426], as well as the following original authors of [RFC2425] and [RFC2426], as well as the following
individuals who have participated in the drafting, review and individuals who have participated in the drafting, review and
discussion of this memo: discussion of this memo:
Marc Blanchet, Chris Bryant, Darryl Champagne, Cyrus Daboo, Lisa Marc Blanchet, Stephane Bortzmeyer, Dan Brickley, Chris Bryant, Dany
Dusseault, Javier Godoy, Alexander Mayrhofer, Chris Newman, Mark Cauchie, Darryl Champagne, Cyrus Daboo, Lisa Dusseault, Javier Godoy,
Paterson, Alexander Mayrhofer, Julian Reschke, Peter K. Sheerin, Anil Helge Hess, Alexander Mayrhofer, Chris Newman, Mark Paterson, Julian
Srivastava, and Kurt Zeilenga. Reschke, Peter K. Sheerin, Anil Srivastava, and Kurt Zeilenga.
14. References 14. References
14.1. Normative References 14.1. Normative References
[CCITT.E163.1988] International Telephone and Telegraph [CCITT.E163.1988] International Telephone and Telegraph
Consultative Committee, "Numbering Plan for Consultative Committee, "Numbering Plan for
the International Telephone Service", the International Telephone Service",
CCITT Recommendation E.163, 1988. CCITT Recommendation E.163, 1988.
skipping to change at page 59, line 22 skipping to change at page 60, line 22
o The group construct (i.e. GROUP.PROPERTY:...) no longer exists. o The group construct (i.e. GROUP.PROPERTY:...) no longer exists.
o The CONTEXT and CHARSET parameters are no more. o The CONTEXT and CHARSET parameters are no more.
o The MAILER property is no more. o The MAILER property is no more.
o The "intl", "dom", "postal", and "parcel" TYPE parameter values o The "intl", "dom", "postal", and "parcel" TYPE parameter values
for the ADR and LABEL properties have been removed. for the ADR and LABEL properties have been removed.
o Inline vCards (such as the value of the AGENT property) are no
longer supported.
A.3. New Properties and Parameters A.3. New Properties and Parameters
o The KIND, GENDER, LANG, DDAY, BIRTH, and DEATH properties have o The KIND, GENDER, LANG, DDAY, BIRTH, and DEATH properties have
been added. been added.
o [RFC2739], which defines the FBURL, CALADRURI, CAPURI, and CALURI o [RFC2739], which defines the FBURL, CALADRURI, CAPURI, and CALURI
properties, has been merged in. properties, has been merged in.
o [RFC4770], which defines the IMPP property, has been merged in. o [RFC4770], which defines the IMPP property, has been merged in.
skipping to change at page 59, line 46 skipping to change at page 60, line 49
o Synchronization is addressed in Section 8. o Synchronization is addressed in Section 8.
o The N property is no longer mandatory. o The N property is no longer mandatory.
o The value of TEL is now a URI. o The value of TEL is now a URI.
Appendix B. Change Log (to be removed by RFC Editor prior to Appendix B. Change Log (to be removed by RFC Editor prior to
publication) publication)
B.1. Changes in -01 B.1. Changes in -02
o Removed useless text in IMPP description.
o Added CalDAV-SCHED example to CALADRURI.
o Removed CAPURI property.
o Dashes in dates and colons in times are now mandatory.
o Allow for dates such as 2008 and 2008-05 and times such as 07 and
07:54.
o Removed inline vCard value.
o Made AGENT only accept URI references instead of inline vCards.
o Added the MEMBER property.
o Renamed the UID parameter to PID.
o Changed the value type of the PID parameter to "a small integer."
o Changed the presence of UID and PID when synchronization is to be
used from MUST to SHOULD.
o Added the RELATED (Section 7.6.7) property.
o Fixed many ABNF typos (issue #252).
o Changed formatting of ABNF comments to make them easier to read
(issue #226).
B.2. Changes in -01
o Merged [RFC2739] in. o Merged [RFC2739] in.
o Converted all foobar.com, abc.com, etc. to example.com. o Converted all foobar.com, abc.com, etc. to example.com.
o Fixed bugs in ABNF. o Fixed bugs in ABNF.
o Made explicit that coordinates in the GEO property are expressed o Made explicit that coordinates in the GEO property are expressed
in the WGS 84 reference system. in the WGS 84 reference system.
skipping to change at page 60, line 27 skipping to change at page 62, line 16
o Added Section 8. o Added Section 8.
o Created IANA process for registering new parameters, value types, o Created IANA process for registering new parameters, value types,
and properties. and properties.
o Created the initial IANA registries. o Created the initial IANA registries.
o Created vendor namespace based on text from RFC 4288. o Created vendor namespace based on text from RFC 4288.
B.2. Changes in -00 B.3. Changes in -00
o Name change because draft has been accepted as WG item. o Name change because draft has been accepted as WG item.
Otherwise, same as draft-resnick-vcarddav-vcardrev-01. Otherwise, same as draft-resnick-vcarddav-vcardrev-01.
o Removed reference to RFC 2234. o Removed reference to RFC 2234.
o Fixed errata from o Fixed errata from
http://www.rfc-editor.org/errata_search.php?rfc=2426. http://www.rfc-editor.org/errata_search.php?rfc=2426.
o Removed passage referring to RFC 2425 profiles. o Removed passage referring to RFC 2425 profiles.
skipping to change at page 61, line 32 skipping to change at page 63, line 20
o Allowed BDAY and DDAY value types to be text values for fuzzy o Allowed BDAY and DDAY value types to be text values for fuzzy
dates. dates.
o Removed the CHARSET property. Now the encoding is always UTF-8, o Removed the CHARSET property. Now the encoding is always UTF-8,
except when overridden by the Content-Type (which is considered a except when overridden by the Content-Type (which is considered a
compatibility feature). compatibility feature).
Authors' Addresses Authors' Addresses
Peter W. Resnick
QUALCOMM Incorporated
5775 Morehouse Drive
San Diego, CA 92121-1714
US
Phone: +1 858 651 4478
EMail: presnick@qualcomm.com
URI: http://www.qualcomm.com/~presnick/
Simon Perreault Simon Perreault
Viagenie Viagenie
2600 boul. Laurier, suite 625 2600 boul. Laurier, suite 625
Quebec, QC G1V 4W1 Quebec, QC G1V 4W1
Canada Canada
Phone: +1 418 656 9254 Phone: +1 418 656 9254
EMail: simon.perreault@viagenie.ca EMail: simon.perreault@viagenie.ca
URI: http://www.viagenie.ca URI: http://www.viagenie.ca
Peter W. Resnick
QUALCOMM Incorporated
5775 Morehouse Drive
San Diego, CA 92121-1714
US
Phone: +1 858 651 4478
EMail: presnick@qualcomm.com
URI: http://www.qualcomm.com/~presnick/
Full Copyright Statement Full Copyright Statement
Copyright (C) The IETF Trust (2008). Copyright (C) The IETF Trust (2008).
This document is subject to the rights, licenses and restrictions This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors contained in BCP 78, and except as set forth therein, the authors
retain all their rights. retain all their rights.
This document and the information contained herein are provided on an This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
 End of changes. 101 change blocks. 
234 lines changed or deleted 308 lines changed or added

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