Network Working Group C. Joy Internet-Draft Oracle Intended status: Standards Track C. Daboo Expires: July 28, 2013 Apple Inc. M. Douglass RPI January 24, 2013 Objectclass property for vCard draft-vcard-objectclass-00 Abstract This specification describes a new property for vCard Format Specification [RFC6350] to allow the specification of objectclasses. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on July 28, 2013. Copyright Notice Copyright (c) 2013 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Joy, et al. Expires July 28, 2013 [Page 1] Internet-Draft Objectclass property for vCard January 2013 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Conventions Used in This Document . . . . . . . . . . . . . . . 3 3. Objectclass Property . . . . . . . . . . . . . . . . . . . . . 3 4. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4.1. Eduperson vcard . . . . . . . . . . . . . . . . . . . . . . 4 4.2. Schedulable . . . . . . . . . . . . . . . . . . . . . . . . 5 5. Security Considerations . . . . . . . . . . . . . . . . . . . . 6 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6 6.1. New VCard Objectclass Value Registration . . . . . . . . . 6 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 6 8. Normative References . . . . . . . . . . . . . . . . . . . . . 6 Joy, et al. Expires July 28, 2013 [Page 2] Internet-Draft Objectclass property for vCard January 2013 1. Introduction The objectclass concept is used in ldap to allow the specification of a set of properties which describe a given type of object. For example, a schedulable entity MUST contain a calendar user address and the absence of the AUTOSCHEDULE property implies certain defaults. An ldap objectclass may be of 3 kinds, structural, abstract and auxiliary. The vcard KIND property is equivalent to the structural objectclass in that a vcard can be of only one kind. The kind requires that certain properties be present and also defines defaults for absent properties. The OBJECTCLASS property defined here is equivalent in many ways to the auxiliary objectclass in ldap. They are not related to each other in some hierarchy and may overlap in their use of properties. Objectclass definitions can only specify properties which MUST, SHOULD or MAY be present. They cannot disallow the use of properties as these may be required by another objectclass. 2. Conventions Used in This Document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119]. 3. Objectclass Property Format and cardinality of new vCard properties are defined as described in Section 3.3 of [RFC6350]. Property name: OBJECTCLASS Purpose: To specify the objectclass for this vcard. ValueType: IANA value. Cardinality: * ABNF: OBJECTCLASS-param = any-param OBJECTCLASS-value = text Default value: None. Joy, et al. Expires July 28, 2013 [Page 3] Internet-Draft Objectclass property for vCard January 2013 Example value: schedulable Description: This property MAY be present 1 or more times. For each occurrence of the property the vcard MUST conform to the specification for that objectclass. 4. Examples These examples do not draw on any currently defined objectclass but are intended to indicate some uses. Properties used here may not be defined in any specification. 4.1. Eduperson vcard The eduperson ldap objectclass provides for a number of attributes considered useful for interaction between members of educational organizations. A corresponding vcard objectclass would allow for better mappping of ldap directories onto a vcard representation. The 201203 specification of the LDAP objectclass for reference. Note that all attributes are MAY so would have a vcard cardinality of *1 or *. ( 1.3.6.1.4.1.5923.1.1.2 NAME 'eduPerson' AUXILIARY MAY ( eduPersonAffiliation $ eduPersonNickname $ eduPersonOrgDN $ eduPersonOrgUnitDN $ eduPersonPrimaryAffiliation $ eduPersonPrincipalName $ eduPersonEntitlement $ eduPersonPrimaryOrgUnitDN $ eduPersonScopedAffiliation $ eduPersonTargetedID $ eduPersonAssurance) Joy, et al. Expires July 28, 2013 [Page 4] Internet-Draft Objectclass property for vCard January 2013 A vcard mapping would, where possible use existing vcard properties. Where not possible new properties could be defined. BEGIN:VCARD VERSION:4.0 UID:urn:uuid:4fbe8971-0bc3-424c-9c26-36c3e1eff6b1 FN:J. Doe N:Doe;J.;;; EMAIL:jdoe@example.edu TEL;VALUE=uri:tel:+1-555-555-5555 OBJECTCLASS:eduperson NICKNAME:Jack ORGDN: dc=example, dc=edu AFFILIATION;TYPE=primary:faculty AFFILIATION;TYPE=scoped:faculty@cs.example.edu END:VCARD 4.2. Schedulable A schedulable entity can be scheduled for meetings (as a person) or for use (as a resource). For a scheduling system to be able to usefully manage the schedule it needs specific information. At the very least there needs to be some form of calendar user address. It's useful to know whether requests can be auto accepted if the slot is available. Building on the previous example we'll make Jack schedulable. BEGIN:VCARD VERSION:4.0 UID:urn:uuid:4fbe8971-0bc3-424c-9c26-36c3e1eff6b1 FN:J. Doe N:Doe;J.;;; EMAIL:jdoe@example.edu TEL;VALUE=uri:tel:+1-555-555-5555 OBJECTCLASS:eduperson NICKNAME:Jack ORGDN: dc=example, dc=edu AFFILIATION;TYPE=primary:faculty AFFILIATION;TYPE=scoped:faculty@cs.example.edu OBJECTCLASS:schedulable CALADRURI:jdoe@example.edu AUTOSCHEDULE:ACCEPT-IF-FREE END:VCARD Joy, et al. Expires July 28, 2013 [Page 5] Internet-Draft Objectclass property for vCard January 2013 5. Security Considerations As this document only defines a schema related property and does not refer to the actual storage mechanism itself, no special security considerations are required as part of this document. 6. IANA Considerations 6.1. New VCard Objectclass Value Registration New objectclass values will be defined according to the process specified in Section 10.2.6 of [RFC6350]. 7. Acknowledgments This specification is a result of discussions that took place within the Calendaring and Scheduling Consortium's Resource Technical Committee. The authors thank the participants of that group. 8. Normative References [ISO.8601.2004] International Organization for Standardization, "Data elements and interchange formats -- Information interchange -- Representation of dates and times", 2004. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC2739] Small, T., Hennessy, D., and F. Dawson, "Calendar Attributes for vCard and LDAP", RFC 2739, January 2000. [RFC3339] Klyne, G., Ed. and C. Newman, "Date and Time on the Internet: Timestamps", RFC 3339, July 2002. [RFC4589] Schulzrinne, H. and H. Tschofenig, "Location Types Registry", RFC 4589, July 2006. [RFC6350] Perreault, S., "vCard Format Specification", RFC 6350, August 2011. Joy, et al. Expires July 28, 2013 [Page 6] Internet-Draft Objectclass property for vCard January 2013 Authors' Addresses Ciny Joy Oracle Corporation 4210 Network Circle Santa Clara, CA 95054 USA EMail: ciny.joy@oracle.com URI: http://www.oracle.com/ Cyrus Daboo Apple Inc. 1 Infinite Loop Cupertino, CA 95014 USA EMail: cyrus@daboo.name URI: http://www.apple.com/ Michael Douglass Rensselaer Polytechnic Institute 110 8th Street Troy, NY 12180 USA EMail: douglm@rpi.edu URI: http://www.rpi.edu/ Joy, et al. Expires July 28, 2013 [Page 7]