Internet DRAFT - draft-vcard-objectclass

draft-vcard-objectclass






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]