| < draft-ietf-vcarddav-oma-cab-extensions-01.txt | draft-ietf-vcarddav-oma-cab-extensions-02.txt > | |||
|---|---|---|---|---|
| vcarddav D. Cauchie | vcarddav D. Cauchie | |||
| Internet-Draft France Telecom - Orange | Internet-Draft France Telecom - Orange | |||
| Intended status: Standards Track B. Leiba | Intended status: Standards Track B. Leiba | |||
| Expires: September 3, 2012 K. Li | Expires: November 12, 2012 K. Li | |||
| Huawei Technologies | Huawei Technologies | |||
| March 2, 2012 | May 11, 2012 | |||
| vCard Format extension : represent vCard extensions defined by the Open | vCard Format extension : represent vCard extensions defined by the Open | |||
| Mobile Alliance (OMA) Converged Address Book (CAB) group | Mobile Alliance (OMA) Converged Address Book (CAB) group | |||
| draft-ietf-vcarddav-oma-cab-extensions-01 | draft-ietf-vcarddav-oma-cab-extensions-02 | |||
| Abstract | Abstract | |||
| This document defines extensions to the vCard data format for | This document defines extensions to the vCard data format for | |||
| representing and exchanging certain contact information. The | representing and exchanging certain contact information. The | |||
| properties covered here have been defined by the Open Mobile Alliance | properties covered here have been defined by the Open Mobile Alliance | |||
| Converged Address Book group, in order to synchronize, using OMA Data | Converged Address Book group, in order to synchronize, using OMA Data | |||
| Synchronization, important contact fields that were not already | Synchronization, contact fields that were not already defined in the | |||
| defined in the base vCard 4.0 specification. | base vCard 4.0 specification. | |||
| Status of this Memo | Status of this Memo | |||
| This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
| provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| 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." | |||
| This Internet-Draft will expire on September 3, 2012. | This Internet-Draft will expire on November 12, 2012. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2012 IETF Trust and the persons identified as the | Copyright (c) 2012 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
| publication of this document. Please review these documents | publication of this document. Please review these documents | |||
| skipping to change at page 2, line 29 ¶ | skipping to change at page 2, line 29 ¶ | |||
| 2.4. Property : ORG-DIRECTORY . . . . . . . . . . . . . . . . . . 7 | 2.4. Property : ORG-DIRECTORY . . . . . . . . . . . . . . . . . . 7 | |||
| 3. vCard extensions : Parameters . . . . . . . . . . . . . . . 8 | 3. vCard extensions : Parameters . . . . . . . . . . . . . . . 8 | |||
| 3.1. Parameter : INDEX . . . . . . . . . . . . . . . . . . . . . 8 | 3.1. Parameter : INDEX . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 3.2. Parameter : LEVEL . . . . . . . . . . . . . . . . . . . . . 9 | 3.2. Parameter : LEVEL . . . . . . . . . . . . . . . . . . . . . 9 | |||
| 4. Security Considerations . . . . . . . . . . . . . . . . . . 10 | 4. Security Considerations . . . . . . . . . . . . . . . . . . 10 | |||
| 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . 10 | 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . 10 | |||
| 6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . 10 | 6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 7. Normative References . . . . . . . . . . . . . . . . . . . . 10 | 7. Normative References . . . . . . . . . . . . . . . . . . . . 11 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . 11 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 1. Introduction | 1. Introduction | |||
| Synchronization of an Open Mobile Alliance Converged Address Book | Synchronization of an Open Mobile Alliance Converged Address Book | |||
| [OMA-CAB], using Open Mobile Alliance Data Synchronization (OMA-DS), | [OMA-CAB], using Open Mobile Alliance Data Synchronization [OMA-DS], | |||
| commonly uses vCard as an exchange format between the DS Server and | commonly uses vCard as an exchange format between the DS Server and | |||
| the DS Client. In order to properly perform synchronization of an | the DS Client. In order to properly perform synchronization of an | |||
| OMA-CAB, the CAB specification defines some important CAB contact | OMA-CAB, the CAB specification defines some CAB contact fields not | |||
| fields not already defined in the vCard base specification. This | already defined in the vCard base specification. This document re- | |||
| document re-uses the definitions found in the OMA-CAB specification | uses the definitions found in the OMA-CAB specification and describes | |||
| and describes them as vCard extensions. The following sections | them as vCard extensions. The following sections define the | |||
| define the necessary Properties and Parameters. | necessary Properties and Parameters. | |||
| 1.1. A Brief Introduction to the Converged Address Book | 1.1. A Brief Introduction to the Converged Address Book | |||
| The Converged Address Book (CAB) Enabler provides consistent | The Converged Address Book (CAB) Enabler provides consistent | |||
| mechanisms to manage contact information both in user-facing | mechanisms to manage contact information both in user-facing | |||
| applications and in support of network-facing activities. At the | applications and in support of network-facing activities. At the | |||
| core of this enabler is a network-based contact repository in which a | core of this enabler is a network-based contact repository in which a | |||
| user can store contact information. That information can be | user can store contact information. That information can be | |||
| retrieved by any CAB-enabled device. The network-based repository is | retrieved by any CAB-enabled device. The network-based repository is | |||
| also able to provide specific contact information to other users and | also able to provide specific contact information to other users and | |||
| to keep their copies up to date whenever the information is changed. | to keep their copies up to date whenever the information is changed. | |||
| The CAB Enabler provides synchronization of the contact information | The CAB Enabler provides synchronization of the contact information | |||
| available in the user device(s) with the network-based contact | available in the user device(s) with the network-based contact | |||
| repository. | repository. | |||
| The CAB Enabler also managed the distribution of a user's own contact | The CAB Enabler also manages the distribution of a user's own contact | |||
| information. In essence, a user fills out a Personal Contact Card, | information. In essence, a user fills out a Personal Contact Card, | |||
| which includes all the information a user wishes to store about him | which includes all the information a user wishes to store about him | |||
| or herself. | or herself. | |||
| Because systems that are supporting the CAB Enabler are likely | Because systems that are supporting the CAB Enabler are likely | |||
| supporting multiple users, the CAB Enabler also defines a search | supporting multiple users, the CAB Enabler also defines a search | |||
| paradigm that permits other users to query those systems to locate | paradigm that permits other users to query those systems to locate | |||
| information about the available users. | information about the available users. | |||
| The CAB Enabler supports many different types of information. It, | The CAB Enabler supports many different types of information. It, | |||
| skipping to change at page 4, line 27 ¶ | skipping to change at page 4, line 27 ¶ | |||
| In general, these are meant to be understood by humans, rather than | In general, these are meant to be understood by humans, rather than | |||
| to be used for automated categorization that might require standard | to be used for automated categorization that might require standard | |||
| terms and registries. | terms and registries. | |||
| 2.1. Property : EXPERTISE | 2.1. Property : EXPERTISE | |||
| Namespace: | Namespace: | |||
| Property name: EXPERTISE | Property name: EXPERTISE | |||
| Purpose: To specify a field in which the object that the vCard | Purpose: To specify a field of expertise for the object that the | |||
| refers to has expertise. | vCard refers to. | |||
| Value type: A single string value. | Value type: A single text value. | |||
| Cardinality: * | Cardinality: * | |||
| Property parameters: LEVEL (possible values : "beginner", "average", | Property parameters: LEVEL (possible values : "beginner", "average", | |||
| "expert"), INDEX | "expert"), INDEX | |||
| Description: This is intended to be a free-form naming of fields of | Description: This is intended to be a free-form naming of fields of | |||
| expertise, meant for human consumption, and no specific expertise | expertise, meant for human consumption, and no specific expertise | |||
| fields are defined. See the note at the beginning of Section 2. | fields are defined. See the note at the beginning of Section 2. | |||
| Format definition: | Format definition: | |||
| EXPERTISE-param = LEVEL-param / INDEX-param | EXPERTISE-param = LEVEL-param / INDEX-param / language-param / | |||
| pref-param / altid-param / type-param / any-param | ||||
| EXPERTISE-value = text | EXPERTISE-value = text | |||
| Examples: | Examples: | |||
| EXPERTISE;LEVEL=beginner;INDEX=2:chinese literature | EXPERTISE;LEVEL=beginner;INDEX=2:chinese literature | |||
| EXPERTISE;INDEX=1;LEVEL=expert:chemistry | EXPERTISE;INDEX=1;LEVEL=expert:chemistry | |||
| 2.2. Property : HOBBY | 2.2. Property : HOBBY | |||
| Namespace: | Namespace: | |||
| Property name: HOBBY | Property name: HOBBY | |||
| Purpose: To specify the hobbies of the object that the vCard refers | Purpose: To specify the hobbies of the object that the vCard refers | |||
| to. | to. | |||
| Value type: A single string value. | Value type: A single text value. | |||
| Cardinality: * | Cardinality: * | |||
| Property parameters: LEVEL (possible values : "high", "medium", | Property parameters: LEVEL (possible values : "high", "medium", | |||
| "low"), INDEX | "low"), INDEX | |||
| Description: This is intended to be a free-form naming of hobbies, | Description: This is intended to be a free-form naming of hobbies, | |||
| meant for human consumption, and no specific hobbies are defined. | meant for human consumption, and no specific hobbies are defined. | |||
| See the note at the beginning of Section 2. | See the note at the beginning of Section 2. | |||
| skipping to change at page 6, line 7 ¶ | skipping to change at page 6, line 10 ¶ | |||
| activity that one actively engages in for entertainment, | activity that one actively engages in for entertainment, | |||
| intellectual stimulation, creative expression, or the like. | intellectual stimulation, creative expression, or the like. | |||
| * "Art" might be a hobby if one actively sculpts or paints. | * "Art" might be a hobby if one actively sculpts or paints. | |||
| * "Tennis" might be a hobby if one enjoys playing, rather than | * "Tennis" might be a hobby if one enjoys playing, rather than | |||
| just watching matches. | just watching matches. | |||
| Format definition: | Format definition: | |||
| HOBBY-param = LEVEL-param / INDEX-param | HOBBY-param = LEVEL-param / INDEX-param / language-param / pref- | |||
| param / altid-param / type-param / any-param | ||||
| HOBBY-value = text | HOBBY-value = text | |||
| Examples: | Examples: | |||
| HOBBY;INDEX=1;LEVEL=high:reading | HOBBY;INDEX=1;LEVEL=high:reading | |||
| HOBBY;INDEX=2;LEVEL=high:sewing | HOBBY;INDEX=2;LEVEL=high:sewing | |||
| 2.3. Property : INTEREST | 2.3. Property : INTEREST | |||
| Namespace: | Namespace: | |||
| Property name: INTEREST | Property name: INTEREST | |||
| Purpose: To specify the interest(s) of the object that the vCard | Purpose: To specify the interest(s) of the object that the vCard | |||
| refers to. | refers to. | |||
| Value type: A single string value | Value type: A single text value | |||
| Cardinality: * | Cardinality: * | |||
| Property parameters: LEVEL (possible values : "high", "medium", | Property parameters: LEVEL (possible values : "high", "medium", | |||
| "low"), INDEX | "low"), INDEX | |||
| Description: This is intended to be a free-form naming of interests, | Description: This is intended to be a free-form naming of interests, | |||
| meant for human consumption, and no specific interests are | meant for human consumption, and no specific interests are | |||
| defined. See the note at the beginning of Section 2. | defined. See the note at the beginning of Section 2. | |||
| skipping to change at page 7, line 10 ¶ | skipping to change at page 7, line 13 ¶ | |||
| necessarily actively engage in. | necessarily actively engage in. | |||
| * "Art" might be an interest if one likes looking at art, but | * "Art" might be an interest if one likes looking at art, but | |||
| doesn't create art. | doesn't create art. | |||
| * "Tennis" might be an interest if one enjoys watching matches, | * "Tennis" might be an interest if one enjoys watching matches, | |||
| but doesn't play. | but doesn't play. | |||
| Format definition: | Format definition: | |||
| INTEREST-param = LEVEL-param / INDEX-param | INTEREST-param = LEVEL-param / INDEX-param / language-param / | |||
| pref-param / altid-param / type-param / any-param | ||||
| INTEREST-value = text | INTEREST-value = text | |||
| Examples: | Examples: | |||
| INTEREST;INDEX=1;LEVEL=medium:r&b music | INTEREST;INDEX=1;LEVEL=medium:r&b music | |||
| INTEREST;INDEX=2;LEVEL=high:rock'n roll music | INTEREST;INDEX=2;LEVEL=high:rock'n roll music | |||
| 2.4. Property : ORG-DIRECTORY | 2.4. Property : ORG-DIRECTORY | |||
| skipping to change at page 8, line 4 ¶ | skipping to change at page 8, line 8 ¶ | |||
| Description: This is intended to be a URI that can be used to do an | Description: This is intended to be a URI that can be used to do an | |||
| organization-directory lookup. Presumably, the entity the vCard | organization-directory lookup. Presumably, the entity the vCard | |||
| represents would be found in the directory, though that isn't | represents would be found in the directory, though that isn't | |||
| required. This might be used to make it easier to find someone's | required. This might be used to make it easier to find someone's | |||
| co-workers, management chain, and so on, in a company or | co-workers, management chain, and so on, in a company or | |||
| organizational directory. | organizational directory. | |||
| How the lookup is done depends upon the URI scheme, and no | How the lookup is done depends upon the URI scheme, and no | |||
| attempt is made here to specify details of the lookup mechanism. | attempt is made here to specify details of the lookup mechanism. | |||
| An HTTP URI might, for example, lead to a web form that's | An HTTP URI might, for example, lead to a web form that's | |||
| intended for manual lookup in a browser -- thus, this URI might | intended for manual lookup in a browser -- thus, this URI might | |||
| or might not be useable for automated lookup or searching. | or might not be useable for automated lookup or searching. | |||
| Format definition: | Format definition: | |||
| ORG-DIRECTORY-param = pref-param / INDEX-param | ORG-DIRECTORY-param = pref-param / INDEX-param / language-param | |||
| / pid-param / pref-param / altid-param / type-param / | ||||
| any-param | ||||
| ORG-DIRECTORY-value= uri | ORG-DIRECTORY-value= uri | |||
| Examples: | Examples: | |||
| ORG-DIRECTORY;INDEX=1:http://directory.mycompany.example.com | ORG-DIRECTORY;INDEX=1:http://directory.mycompany.example.com | |||
| ORG-DIRECTORY;PREF=1:ldap://ldap.tech.example/ | ORG-DIRECTORY;PREF=1:ldap://ldap.tech.example/ | |||
| o=Example%20Tech,ou=Engineering | o=Example%20Tech,ou=Engineering | |||
| skipping to change at page 8, line 37 ¶ | skipping to change at page 8, line 42 ¶ | |||
| 3.1. Parameter : INDEX | 3.1. Parameter : INDEX | |||
| Namespace: | Namespace: | |||
| Parameter name: INDEX | Parameter name: INDEX | |||
| Purpose: Used in a multi-valued property to indicate the position of | Purpose: Used in a multi-valued property to indicate the position of | |||
| this value within the set of values. | this value within the set of values. | |||
| Description: When a property is multi-valued, INDEX can be used to | Description: When a property is multi-valued, INDEX can be used to | |||
| indicate an ordering or sequence of the values. | indicate an ordering or sequence of the values. INDEX values | |||
| MUST be strictly positive. Zero is not allowed. | ||||
| Format definition: | Format definition: | |||
| INDEX-param = "INDEX=" INDEX-value | INDEX-param = "INDEX=" INDEX-value | |||
| INDEX-value = integer | INDEX-value = integer | |||
| Examples: | Examples: | |||
| ORG-URI;INDEX=1:http://mycompany.example1.com | ORG-URI;INDEX=1:http://mycompany.example1.com | |||
| ORG-URI;PREF=1;INDEX=2:http://mycompany.example2.com | ORG-URI;PREF=1;INDEX=2:http://mycompany.example2.com | |||
| 3.2. Parameter : LEVEL | 3.2. Parameter : LEVEL | |||
| Namespace: | Namespace: | |||
| Parameter name: LEVEL | Parameter name: LEVEL | |||
| Purpose: Used to indicate a level of expertise, hobby or interest | Purpose: Used to indicate a level of expertise, hobby or interest | |||
| attained by the object the vCard represents. | attained by the object the vCard represents. | |||
| Description: Possible values: | Description: Allowable values: | |||
| * "beginner", "average", "expert" when used with EXPERTISE | * "beginner", "average", "expert" when used with EXPERTISE | |||
| * "high", "medium", "low" when used with HOBBY or INTEREST | * "high", "medium", "low" when used with HOBBY or INTEREST | |||
| Format definition: | Format definition: | |||
| LEVEL-param = "LEVEL=" LEVEL-value | LEVEL-param = "LEVEL=" LEVEL-value | |||
| LEVEL-value = "beginner" / "average" / "expert" / "high" / | LEVEL-value = "beginner" / "average" / "expert" / "high" / | |||
| skipping to change at page 10, line 36 ¶ | skipping to change at page 10, line 36 ¶ | |||
| Parameters registry, defined in [RFC6350] section 10.3.2. | Parameters registry, defined in [RFC6350] section 10.3.2. | |||
| +-------+---------------------------+-------------------+ | +-------+---------------------------+-------------------+ | |||
| | Name | | | | | Name | | | | |||
| | space | Parameter | Reference | | | space | Parameter | Reference | | |||
| +-------+---------------------------+-------------------+ | +-------+---------------------------+-------------------+ | |||
| | | INDEX | RFCXXXX, sec 3.1 | | | | INDEX | RFCXXXX, sec 3.1 | | |||
| | | LEVEL | RFCXXXX, sec 3.2 | | | | LEVEL | RFCXXXX, sec 3.2 | | |||
| +-------+---------------------------+-------------------+ | +-------+---------------------------+-------------------+ | |||
| IANA is requested to add the following entries to the vCard Values | ||||
| registry, defined in [RFC6350] section 10.3.4. | ||||
| +-----------+-----------+---------------+-------------------+ | ||||
| | Property | Parameter | Value | Reference | | ||||
| +-----------+-----------+---------------+-------------------+ | ||||
| | EXPERTISE | LEVEL | beginner | RFCXXXX, sec 3.2 | | ||||
| | EXPERTISE | LEVEL | average | RFCXXXX, sec 3.2 | | ||||
| | EXPERTISE | LEVEL | expert | RFCXXXX, sec 3.2 | | ||||
| | HOBBY | LEVEL | high | RFCXXXX, sec 3.2 | | ||||
| | HOBBY | LEVEL | medium | RFCXXXX, sec 3.2 | | ||||
| | HOBBY | LEVEL | low | RFCXXXX, sec 3.2 | | ||||
| | INTEREST | LEVEL | high | RFCXXXX, sec 3.2 | | ||||
| | INTEREST | LEVEL | medium | RFCXXXX, sec 3.2 | | ||||
| | INTEREST | LEVEL | low | RFCXXXX, sec 3.2 | | ||||
| +-----------+---------------------------+-------------------+ | ||||
| 6. Acknowledgments | 6. Acknowledgments | |||
| Thanks to Simon Perreault, Peter Saint-Andre, and Chris Newman for | Thanks to Simon Perreault, Peter Saint-Andre, Cyrus Daboo, and Chris | |||
| particularly thorough reviews, which led to a much cleaner submission | Newman for particularly thorough reviews, which led to a much cleaner | |||
| to the working group. | submission to the working group. | |||
| 7. Normative References | 7. Normative References | |||
| [OMA-CAB] Open Mobile Alliance, "Converged Address Book (CAB) | [OMA-CAB] Open Mobile Alliance, "Converged Address Book (CAB) | |||
| Specification", October 2010, <http:// | Specification", October 2010, <http:// | |||
| www.openmobilealliance.org/Technical/release_program/docs/ | www.openmobilealliance.org/Technical/release_program/docs/ | |||
| CopyrightClick.aspx?pck=CAB&file=V1_0-20101019-C/ | CopyrightClick.aspx?pck=CAB&file=V1_0-20101019-C/ | |||
| OMA-TS-CAB-V1_0-20101019-C.pdf>. | OMA-TS-CAB-V1_0-20101019-C.pdf>. | |||
| Candidate Version 1.0, OMA-TS-CAB-V1_0-20101019-C | Candidate Version 1.0, OMA-TS-CAB-V1_0-20101019-C | |||
| [OMA-DS] Open Mobile Alliance, "Data Synchronization Protocol", | ||||
| March 2009, <http://www.openmobilealliance.org/Technical/ | ||||
| release_program/docs/ | ||||
| copyrightclick.aspx?pck=DS&file=V1_2_2-20090319-A/ | ||||
| OMA-TS-DS_Protocol-V1_2_2-20090319-A.pdf>. | ||||
| Candidate Version 1.2.2, OMA-TS-DS_Protocol-V1_2_2- | ||||
| 20090319-A | ||||
| [RFC5234] Crocker, D. and P. Overell, "Augmented BNF for Syntax | [RFC5234] Crocker, D. and P. Overell, "Augmented BNF for Syntax | |||
| Specifications: ABNF", STD 68, RFC 5234, January 2008. | Specifications: ABNF", STD 68, RFC 5234, January 2008. | |||
| [RFC6350] Perreault, S., "vCard Format Specification", RFC 6350, | [RFC6350] Perreault, S., "vCard Format Specification", RFC 6350, | |||
| August 2011. | August 2011. | |||
| Authors' Addresses | Authors' Addresses | |||
| Dany Cauchie | Dany Cauchie | |||
| France Telecom - Orange | France Telecom - Orange | |||
| End of changes. 25 change blocks. | ||||
| 30 lines changed or deleted | 62 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||