Network Working Group                                             C. Joy
Internet-Draft                                                    Oracle
Intended status: Standards Track                                C. Daboo
Expires: April 29, 2012                                       Apple Inc.
                                                             M. Douglass
                                                                     RPI
                                                        October 27, 2011


    Schema for representing resources for calendaring and scheduling
                                services
                      draft-cal-resource-schema-06

Abstract

   This specification describes a schema for representing resources for
   calendaring and scheduling.  A resource in the scheduling context is
   any shared entity that can be scheduled by a calendar user, but does
   not control its own attendance status.

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 April 29, 2012.

Copyright Notice

   Copyright (c) 2011 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



Joy, et al.              Expires April 29, 2012                 [Page 1]


Internet-Draft            Schema for Resources              October 2011


   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.

Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  5
   2.  Conventions Used in This Document  . . . . . . . . . . . . . .  5
   3.  General Considerations . . . . . . . . . . . . . . . . . . . .  5
   4.  Resource Object  . . . . . . . . . . . . . . . . . . . . . . .  5
     4.1.  LDAP Resource ObjectClass Definition . . . . . . . . . . .  5
   5.  Resource Attributes  . . . . . . . . . . . . . . . . . . . . .  6
     5.1.  Common Name  . . . . . . . . . . . . . . . . . . . . . . .  6
       5.1.1.  LDAP Attribute Definition  . . . . . . . . . . . . . .  6
       5.1.2.  VCard Property Definition  . . . . . . . . . . . . . .  6
     5.2.  Kind . . . . . . . . . . . . . . . . . . . . . . . . . . .  6
       5.2.1.  LDAP Definition  . . . . . . . . . . . . . . . . . . .  7
         5.2.1.1.  LDAP Attribute Definition  . . . . . . . . . . . .  7
       5.2.2.  VCard Property Definition  . . . . . . . . . . . . . .  7
       5.2.3.  Mapping of KIND value between LDAP and VCard
               representations  . . . . . . . . . . . . . . . . . . .  8
     5.3.  Unique ID  . . . . . . . . . . . . . . . . . . . . . . . .  8
       5.3.1.  LDAP Attribute Definition  . . . . . . . . . . . . . .  8
       5.3.2.  VCard Property Definition  . . . . . . . . . . . . . .  8
     5.4.  Nick Name  . . . . . . . . . . . . . . . . . . . . . . . .  8
       5.4.1.  LDAP Attribute Definition  . . . . . . . . . . . . . .  9
       5.4.2.  VCard Property Definition  . . . . . . . . . . . . . .  9
     5.5.  Description  . . . . . . . . . . . . . . . . . . . . . . .  9
       5.5.1.  LDAP Attribute Definition  . . . . . . . . . . . . . .  9
       5.5.2.  VCard Property Definition  . . . . . . . . . . . . . .  9
     5.6.  Organizational Unit  . . . . . . . . . . . . . . . . . . .  9
       5.6.1.  LDAP Attribute Definition  . . . . . . . . . . . . . . 10
       5.6.2.  VCard Property Definition  . . . . . . . . . . . . . . 10
     5.7.  Categories . . . . . . . . . . . . . . . . . . . . . . . . 10
       5.7.1.  LDAP Attribute Definition  . . . . . . . . . . . . . . 10
       5.7.2.  VCard Property Definition  . . . . . . . . . . . . . . 10
     5.8.  Group Member . . . . . . . . . . . . . . . . . . . . . . . 10
       5.8.1.  LDAP Attribute Definition  . . . . . . . . . . . . . . 11
       5.8.2.  VCard Property Definition  . . . . . . . . . . . . . . 11
     5.9.  Admittance Info  . . . . . . . . . . . . . . . . . . . . . 11
       5.9.1.  LDAP ObjectClass Definition  . . . . . . . . . . . . . 11
       5.9.2.  Restricted Access  . . . . . . . . . . . . . . . . . . 11
         5.9.2.1.  LDAP Attribute Definition  . . . . . . . . . . . . 11
         5.9.2.2.  VCard Property Definition  . . . . . . . . . . . . 12
       5.9.3.  Admittance Info URL  . . . . . . . . . . . . . . . . . 12
         5.9.3.1.  LDAP Attribute Definition  . . . . . . . . . . . . 12
         5.9.3.2.  VCard Property Definition  . . . . . . . . . . . . 12
     5.10. Accessibility  . . . . . . . . . . . . . . . . . . . . . . 13



Joy, et al.              Expires April 29, 2012                 [Page 2]


Internet-Draft            Schema for Resources              October 2011


       5.10.1. LDAP Attribute Definition  . . . . . . . . . . . . . . 13
       5.10.2. VCard Property Definition  . . . . . . . . . . . . . . 13
     5.11. Capacity . . . . . . . . . . . . . . . . . . . . . . . . . 14
       5.11.1. LDAP Attribute Definition  . . . . . . . . . . . . . . 14
       5.11.2. VCard Property Definition  . . . . . . . . . . . . . . 14
     5.12. Inventory Info . . . . . . . . . . . . . . . . . . . . . . 14
       5.12.1. LDAP ObjectClass Definition  . . . . . . . . . . . . . 15
       5.12.2. Inventory List . . . . . . . . . . . . . . . . . . . . 15
         5.12.2.1. LDAP Attribute Definition  . . . . . . . . . . . . 15
         5.12.2.2. VCard Property Definition  . . . . . . . . . . . . 15
       5.12.3. Inventory URL  . . . . . . . . . . . . . . . . . . . . 16
         5.12.3.1. LDAP Attribute Definition  . . . . . . . . . . . . 16
         5.12.3.2. VCard Property Definition  . . . . . . . . . . . . 16
     5.13. Owner  . . . . . . . . . . . . . . . . . . . . . . . . . . 16
       5.13.1. LDAP Attribute Definition  . . . . . . . . . . . . . . 17
       5.13.2. VCard Property Definition  . . . . . . . . . . . . . . 17
     5.14. Resource Manager . . . . . . . . . . . . . . . . . . . . . 17
       5.14.1. LDAP Attribute Definition  . . . . . . . . . . . . . . 17
       5.14.2. VCard Property Definition  . . . . . . . . . . . . . . 18
     5.15. Calendar URL . . . . . . . . . . . . . . . . . . . . . . . 18
       5.15.1. LDAP Attribute Definition  . . . . . . . . . . . . . . 18
       5.15.2. VCard Property Definition  . . . . . . . . . . . . . . 18
     5.16. FreeBusy URL . . . . . . . . . . . . . . . . . . . . . . . 18
       5.16.1. LDAP Attribute Definition  . . . . . . . . . . . . . . 19
       5.16.2. VCard Property Definition  . . . . . . . . . . . . . . 19
     5.17. Scheduling Address . . . . . . . . . . . . . . . . . . . . 19
       5.17.1. LDAP Attribute Definition  . . . . . . . . . . . . . . 19
       5.17.2. VCard Property Definition  . . . . . . . . . . . . . . 19
     5.18. Time Zone  . . . . . . . . . . . . . . . . . . . . . . . . 20
       5.18.1. LDAP Attribute Definition  . . . . . . . . . . . . . . 20
       5.18.2. VCard Property Definition  . . . . . . . . . . . . . . 20
     5.19. Multiple Bookings  . . . . . . . . . . . . . . . . . . . . 20
       5.19.1. LDAP Attribute Definition  . . . . . . . . . . . . . . 20
       5.19.2. VCard Property Definition  . . . . . . . . . . . . . . 21
     5.20. Maximum Instances  . . . . . . . . . . . . . . . . . . . . 21
       5.20.1. LDAP Attribute Definition  . . . . . . . . . . . . . . 21
       5.20.2. VCard Property Definition  . . . . . . . . . . . . . . 21
     5.21. BookingWindow Start  . . . . . . . . . . . . . . . . . . . 22
       5.21.1. LDAP Attribute Definition  . . . . . . . . . . . . . . 22
       5.21.2. VCard Property Definition  . . . . . . . . . . . . . . 23
     5.22. BookingWindow End  . . . . . . . . . . . . . . . . . . . . 23
       5.22.1. LDAP Attribute Definition  . . . . . . . . . . . . . . 24
       5.22.2. VCard Property Definition  . . . . . . . . . . . . . . 24
     5.23. Scheduling Approval Info . . . . . . . . . . . . . . . . . 24
       5.23.1. LDAP ObjectClass Definition  . . . . . . . . . . . . . 25
       5.23.2. Auto schedule  . . . . . . . . . . . . . . . . . . . . 25
         5.23.2.1. LDAP Attribute Definition  . . . . . . . . . . . . 25
         5.23.2.2. VCard Property Definition  . . . . . . . . . . . . 25



Joy, et al.              Expires April 29, 2012                 [Page 3]


Internet-Draft            Schema for Resources              October 2011


       5.23.3. Approval Info URL  . . . . . . . . . . . . . . . . . . 26
         5.23.3.1. LDAP Attribute Definition  . . . . . . . . . . . . 26
         5.23.3.2. VCard Property Definition  . . . . . . . . . . . . 26
       5.23.4. Scheduling Admin Contact . . . . . . . . . . . . . . . 27
         5.23.4.1. LDAP Attribute Definition  . . . . . . . . . . . . 27
         5.23.4.2. VCard Property Definition  . . . . . . . . . . . . 27
     5.24. Cost . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
       5.24.1. LDAP ObjectClass Definition  . . . . . . . . . . . . . 28
       5.24.2. Nocost . . . . . . . . . . . . . . . . . . . . . . . . 28
         5.24.2.1. LDAP Attribute Definition  . . . . . . . . . . . . 28
         5.24.2.2. VCard Property Definition  . . . . . . . . . . . . 28
       5.24.3. Cost URL . . . . . . . . . . . . . . . . . . . . . . . 29
         5.24.3.1. LDAP Attribute Definition  . . . . . . . . . . . . 29
         5.24.3.2. VCard Property Definition  . . . . . . . . . . . . 29
     5.25. Related  . . . . . . . . . . . . . . . . . . . . . . . . . 29
       5.25.1. LDAP Attribute Definition  . . . . . . . . . . . . . . 30
       5.25.2. VCard Property Definition  . . . . . . . . . . . . . . 30
   6.  Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
     6.1.  LDAP Examples  . . . . . . . . . . . . . . . . . . . . . . 30
       6.1.1.  Location Resource  . . . . . . . . . . . . . . . . . . 30
       6.1.2.  Role Resources Group . . . . . . . . . . . . . . . . . 31
     6.2.  VCard Examples . . . . . . . . . . . . . . . . . . . . . . 32
       6.2.1.  Location Resource  . . . . . . . . . . . . . . . . . . 32
       6.2.2.  Role Resources Group . . . . . . . . . . . . . . . . . 33
   7.  Security Considerations  . . . . . . . . . . . . . . . . . . . 34
   8.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 34
     8.1.  LDAP Objectclass and Attribute Registration  . . . . . . . 34
     8.2.  VCard Property and Value Registration  . . . . . . . . . . 36
   9.  Recommendations for Calendaring Systems  . . . . . . . . . . . 37
   10. Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . . 37
   11. Normative References . . . . . . . . . . . . . . . . . . . . . 38




















Joy, et al.              Expires April 29, 2012                 [Page 4]


Internet-Draft            Schema for Resources              October 2011


1.  Introduction

   This specification defines a schema for representing resources to
   ease the discovery and scheduling of resources between any calendar
   client and server.
   LDAP and vCard mappings of the schema are described in this document.
   The Object model chosen is the lowest common denominator to adapt for
   LDAP.

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.  General Considerations

   Data values must have valid representation for the chosen format with
   respect to escape characters, line folding, and so on.

4.  Resource Object

   A resource object definition should contain all information required
   to find and schedule the right resource.  For this, it should contain
   all, or a set of the attributes described in Section 5.  The cn
   attribute, described in Section 5.1 MUST be present in any resource
   object.  Additional proprietary attributes may be defined as well,
   but must begin with "X-".  Clients encountering attributes they don't
   know about must ignore them.

   Attributes or Properties required to contact the resource are not
   included in this specification.  LDAP attributes defined in [RFC4519]
   and VCARD properties defined in vCard Format Specification [RFC6350]
   can be used to include contact information for the resource.

4.1.  LDAP Resource ObjectClass Definition

   In LDAP, a resource object SHOULD be defined as an objectclass with
   attributes as defined in Section 5.  This objectClass MUST be an
   auxiliary class.  Its Superior class is the calEntry objectClass as
   defined in Section 2.4.3.1 of [RFC2739].
   Definition of the CalendarResource ObjectClass:









Joy, et al.              Expires April 29, 2012                 [Page 5]


Internet-Draft            Schema for Resources              October 2011


          ( 1.3.6.1.1.x.1.1
              NAME 'CalendarResource'
              DESC 'Calendar Resource Object Class'
              SUP calEntry
              AUXILIARY
              MUST (cn)
              MAY (kind $ nickname $ description $ ou $ categories $
                   member $ uniquemember $ accessibilityurl $ capacity $
                   owner $ resourcemanager $ timezoneid $
                   multiplebookings $ maxinstances $
                   bookingwindowstart $ bookingwindowend $
                   vcarduid $ related) )

5.  Resource Attributes

5.1.  Common Name

   Description:
      Full name of the resource.  This attribute MUST be defined for a
      resource object.

   ValueType:
      String value.

   Example value:
      Room One

5.1.1.  LDAP Attribute Definition

   cn attribute as defined in Section 2.3 of [RFC4519].  This attribute
   MUST be present in a CalendarResource object.

5.1.2.  VCard Property Definition

   FN property as defined in Section 6.2.1 of [RFC6350].

5.2.  Kind

   Description:
      The kind of object represented.

   ValueType:
      Some of the possible values are "Location", "Individual",
      "CalendarResource", or "Group".
      Location is used for any physical location resource such as room,
      building, etc.
      Individual is used for for a human resource such as driver,
      technician, etc.



Joy, et al.              Expires April 29, 2012                 [Page 6]


Internet-Draft            Schema for Resources              October 2011


      CalendarResource is used for any physical object that can
      scheduled like projector, printer, etc.
      Group is used to specify a group of resources with a specific
      skill set.  For example: drivers, electricians, etc.

   Example value:
      Location

5.2.1.  LDAP Definition

   In LDAP, this information can be represented by including the right
   category objectlass.
   Possible objectclasses are:
   Person objectclass as defined in Section 3.12 of [RFC4519].
   groupOfNames objectclass as defined in Section 3.5 of [RFC4519].
   groupOfUniqueNames objectclass as defined in Section 3.6 of
   [RFC4519].
   device objectclass as defined in Section 3.4 of [RFC4519].
   room objectclass as defined in Section 3.8 of [RFC4524].
   In the absence of an objectclass that accurately describes the type
   of the object, the KIND attribute defined below MUST be used.

5.2.1.1.  LDAP Attribute Definition

   Definition of the kind LDAP attribute:

             ( 1.3.6.1.1.x.0.1
                 NAME 'Kind'
                 DESC 'Kind of Object'
                 EQUALITY caseIgnoreMatch
                 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
                 SINGLE-VALUE )

5.2.2.  VCard Property Definition

   Property KIND that specifies the kind of object represented, as
   defined in Section 6.1.4 of [RFC6350].  A new value of
   "calendarresource" will be used to represent any physical object or
   device.












Joy, et al.              Expires April 29, 2012                 [Page 7]


Internet-Draft            Schema for Resources              October 2011


5.2.3.  Mapping of KIND value between LDAP and VCard representations

                         KIND Value Mapping Table:

         +------------------------------------+------------------+
         | LDAP Objectclass                   | VCard Value      |
         +------------------------------------+------------------+
         | person                             | individual       |
         | groupOfNames or groupOfUniqueNames | group            |
         | device                             | calendarresource |
         | room                               | location         |
         +------------------------------------+------------------+

5.3.  Unique ID

   Description:
      A Unique Identifier.

   ValueType:
      Single string value.

   Example value:
      room1-id1

5.3.1.  LDAP Attribute Definition

   Definition of the vcarduid LDAP attribute:

           ( 1.3.6.1.1.x.0.1
               NAME 'VcardUid'
               DESC 'VCard UniqueID'
               EQUALITY caseExactMatch
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
               SINGLE-VALUE )

5.3.2.  VCard Property Definition

   UID property as defined in Section 6.7.6 of [RFC6350].

5.4.  Nick Name

   Description:
      A short or popular name for the resource.

   ValueType:
      String value.





Joy, et al.              Expires April 29, 2012                 [Page 8]


Internet-Draft            Schema for Resources              October 2011


   Example value:
      TheOne

5.4.1.  LDAP Attribute Definition

   Definition of the nickname LDAP attribute:

           ( 1.3.6.1.1.x.0.2
               NAME 'NickName'
               DESC 'Nick Name'
               EQUALITY caseIgnoreIA5Match
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )

5.4.2.  VCard Property Definition

   NICKNAME property as defined in Section 6.2.3 of [RFC6350].

5.5.  Description

   Description:
      Description of the resource.

   ValueType:
      String value.

   Example value:
      Room 1 in Building X

5.5.1.  LDAP Attribute Definition

   description attribute as defined in Section 2.5 of [RFC4519].

5.5.2.  VCard Property Definition

   NOTE property as defined in Section 6.7.2 of [RFC6350].

5.6.  Organizational Unit

   Description:
      Organizations the resource belongs to.

   ValueType:
      String value.

   Example value:
      EngineeringDepartment





Joy, et al.              Expires April 29, 2012                 [Page 9]


Internet-Draft            Schema for Resources              October 2011


5.6.1.  LDAP Attribute Definition

   ou attribute as defined in Section 2.20 of [RFC4519].

5.6.2.  VCard Property Definition

   ORG property as defined in Section 6.6.4 of [RFC6350].

5.7.  Categories

   Description:
      Categories the resource falls under or tags for easy discovery of
      the resource.

   ValueType:
      String value.  Multi-valued attribute with one attribute per text
      value in LDAP.  One or more text values separated by a COMMA
      character in VCard property value.

   Example value:
      Rooms

5.7.1.  LDAP Attribute Definition

   Definition of the categories LDAP attribute:

           ( 1.3.6.1.1.x.0.3
               NAME 'Categories'
               DESC 'Categories'
               EQUALITY caseIgnoreIA5Match
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )

5.7.2.  VCard Property Definition

   CATEGORIES property as defined in Section 6.7.1 of [RFC6350].

5.8.  Group Member

   Description:
      List of unique resources in a group of resources object.

   ValueType:
      URL value.

   Example value:
      http://www.example.com/printer1.html
      http://www.example.com/printer2.html




Joy, et al.              Expires April 29, 2012                [Page 10]


Internet-Draft            Schema for Resources              October 2011


5.8.1.  LDAP Attribute Definition

   member attribute as defined in Section 2.17 or uniquemember attribute
   as defined in Section 2.40 of [RFC4519].

5.8.2.  VCard Property Definition

   MEMBER property as defined in Section 6.6.5 of [RFC6350].

5.9.  Admittance Info

      Description:
      Information required to gain access to the resource.

      ValueType:
      Object value.

5.9.1.  LDAP ObjectClass Definition

   Definition of the admittanceinfo LDAP objectclass:

           ( 1.3.6.1.1.x.1.2
               NAME 'AdmittanceInfo'
               DESC 'Calendar Resource Admittance Info Class'
               SUP CalendarResource
               AUXILIARY
               MAY (admittanceurl $ restricted) )

5.9.2.  Restricted Access

   Description:
      Is access to the resource restricted?

   ValueType:
      Boolean value.

   Example value:
      TRUE

5.9.2.1.  LDAP Attribute Definition

   Definition of the restricted LDAP attribute:

           ( 1.3.6.1.1.x.0.4
               NAME 'Restricted'
               DESC 'Access Restricted'
               EQUALITY booleanMatch
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.7



Joy, et al.              Expires April 29, 2012                [Page 11]


Internet-Draft            Schema for Resources              October 2011


               SINGLE-VALUE )

5.9.2.2.  VCard Property Definition

   Purpose:  To specify if access is restricted or not.

   Type value:  A single boolean value.

   Cardinality:  (0,1)

   ABNF:
      RESTRICTEDACCESS-param = ; no parameter allowed
      RESTRICTEDACCESS-value = boolean

   Example:
      RESTRICTEDACCESSS:TRUE

5.9.3.  Admittance Info URL

   Description:
      URL pointing to complete information for accessing the resource
      including getting accessibility rights, special entrances, and so
      on.

   ValueType:
      URL value.

   Example value:
      http://www.example.com/room1_admittance.html

5.9.3.1.  LDAP Attribute Definition

   Definition of the admittanceurl LDAP attribute:

           ( 1.3.6.1.1.x.0.5
               NAME 'AdmittanceURL'
               DESC 'Cal Resource Admittance Info URL'
               EQUALITY caseIgnoreIA5Match
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )

5.9.3.2.  VCard Property Definition

   Purpose:  To specify URL pointing to Admission Information.

   Type value:  URI.






Joy, et al.              Expires April 29, 2012                [Page 12]


Internet-Draft            Schema for Resources              October 2011


   Cardinality:  (0,n)

   ABNF:
      ADMISSIONINFO-param = "VALUE=uri" / any-param
      ADMISSIONINFO-value = uri

   Example:
      ADMISSIONINFO:http://www.example.com/room1_admittance.html

5.10.  Accessibility

   Description:
      Special resource accessibility info for the physically disabled.

   ValueType:
      URL value.

   Example value:
      http://www.example.com/room1_specialaccess.html

5.10.1.  LDAP Attribute Definition

   Definition of the accessibilityurl LDAP attribute:

           ( 1.3.6.1.1.x.0.6
               NAME 'accessibilityURL'
               DESC 'Cal Resource accessibility Info URL'
               EQUALITY caseIgnoreIA5Match
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )

5.10.2.  VCard Property Definition

   Purpose:  To specify URL pointing to Disabled Access Information.

   Type value:  URI.

   Cardinality:  (0,n)

   ABNF:
      ACCESSIBILITYINFO-param = "VALUE=uri" / any-param
      ACCESSIBILITYINFO-value = uri

   Example:
      ACCESSIBILITYINFO:http://www.example.com/room1_specialaccess.html







Joy, et al.              Expires April 29, 2012                [Page 13]


Internet-Draft            Schema for Resources              October 2011


5.11.  Capacity

   Description:
      Capacity of the resource.

   ValueType:
      Integer.

   Example value:
      10

5.11.1.  LDAP Attribute Definition

   Definition of the capacity LDAP attribute:

           ( 1.3.6.1.1.x.0.7
               NAME 'Capacity'
               DESC 'Cal Resource Capacity'
               EQUALITY caseIgnoreIA5Match
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )

5.11.2.  VCard Property Definition

   Purpose:  To specify Capacity Information.

   Type value:  integer.

   Cardinality:  (0,n)

   ABNF:
      CAPACITY-param = "VALUE=integer" / any-param
      CAPACITY-value = integer

      Example:
      CAPACITY:10

5.12.  Inventory Info

   Description:
      Information on resources available as part of this resource.

   ValueType:
      Object value.








Joy, et al.              Expires April 29, 2012                [Page 14]


Internet-Draft            Schema for Resources              October 2011


5.12.1.  LDAP ObjectClass Definition

   Definition of the inventoryinfo LDAP attribute:

           ( 1.3.6.1.1.x.1.3
               NAME 'InventoryInfo'
               DESC 'Calendar Resource Inventory Info Class'
               SUP CalendarResource
               AUXILIARY
               MAY (inventorylist $ inventoryurl) )

5.12.2.  Inventory List

   Description:
      List of resources available as part of this resource.

   ValueType:
      String value.  Multi-valued attribute with one attribute per text
      value in LDAP.  One or more text values separated by a COMMA
      character in VCard property value.

   Example value:
      Printer

5.12.2.1.  LDAP Attribute Definition

   Definition of the inventorylist LDAP attribute:

           ( 1.3.6.1.1.x.0.8
               NAME 'InventoryList'
               DESC 'Inventory List'
               EQUALITY caseIgnoreIA5Match
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )

5.12.2.2.  VCard Property Definition

   Purpose:  List the resources available as part of this resource.

   Type value:  One or more text values separated by a COMMA character
      (ASCII decimal 44).

   Cardinality:  (0,n)

   ABNF:
      INVENTORYLIST-param = "VALUE=text" / any-param
      INVENTORYLIST-value = text





Joy, et al.              Expires April 29, 2012                [Page 15]


Internet-Draft            Schema for Resources              October 2011


      Example:
      INVENTORYLIST:projector, phone

5.12.3.  Inventory URL

   Description:
      A URL pointing to other resource URLs part of this resource.

   ValueType:
      URL value.

   Example value:
      http://www.example.com/room1_inventory.html

5.12.3.1.  LDAP Attribute Definition

   Definition of the inventoryurl LDAP attribute:

           ( 1.3.6.1.1.x.0.9
               NAME 'InventoryURL'
               DESC 'Cal Resource Inventory Info URL'
               EQUALITY caseIgnoreIA5Match
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )

5.12.3.2.  VCard Property Definition

   Purpose:  To specify URL pointing to Inventory Information.

   Type value:  URI.

   Cardinality:  (0,n)

   ABNF:
      INVENTORYURL-param = "VALUE=uri" / any-param
      INVENTORYURL-value = uri

      Example:
      INVENTORYURL:http://www.example.com/room1_inventory.html

5.13.  Owner

   Description:
      Pointer to the owners of the resource.  An owner is anyone who has
      complete authority over the resource, from naming to overall
      availability.






Joy, et al.              Expires April 29, 2012                [Page 16]


Internet-Draft            Schema for Resources              October 2011


   ValueType:
      URL value.

   Example value:
      http://www.example.com/room1_ownerinfo.html

5.13.1.  LDAP Attribute Definition

   owner attribute as defined in Section 2.21 of [RFC4519].

5.13.2.  VCard Property Definition

   Purpose:  To specify URL pointing to Resource Owner.  It MAY refer to
      something other than a vCard object.

   Type value:  URI.

   Cardinality:  (0,n)

   ABNF:
      RESOURCEOWNER-param = "VALUE=uri" / any-param
      RESOURCEOWNER-value = uri

   Example:
      RESOURCEOWNER:http://www.example.com/room1_owner.vcf

5.14.  Resource Manager

   Description:
      Pointer to the managers of the resource.  A manager is someone
      responsible for the day-to-day up keep of the resource.

   ValueType:
      URL value.

   Example value:
      http://www.example.com/room1_managerinfo.html

5.14.1.  LDAP Attribute Definition

   Definition of the resourcemanager LDAP attribute:

           ( 1.3.6.1.1.x.0.10
               NAME 'ResourceManager'
               DESC 'Cal Resource Manager Info'
               EQUALITY distinguishedNameMatch
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )




Joy, et al.              Expires April 29, 2012                [Page 17]


Internet-Draft            Schema for Resources              October 2011


5.14.2.  VCard Property Definition

   Purpose:  To specify URL pointing to Resource Manager.

   Type value:  URI.

   Cardinality:  (0,n)

   ABNF:
      RESOURCEMANAGER-param = "VALUE=uri" / any-param
      RESOURCEMANAGER-value = uri

   Example:
      RESOURCEMANAGER:http://www.example.com/room1_manager.vcf

5.15.  Calendar URL

   Description:
      URL to access calendar data of the resource.

   ValueType:
      URL value.

   Example value:
      http://www.example.com/calendar/home/Room1/calendar/

5.15.1.  LDAP Attribute Definition

   Calendar access attribute calCAPURI as defined in Section 2.4.4.3 and
   calOtherCAPURIs as defined in Section 2.4.4.7 of [RFC2739]
   respectively.

5.15.2.  VCard Property Definition

   Calendar access property CAPURI as defined in Section 2.3.3 of
   [RFC2739].

5.16.  FreeBusy URL

   Description:
      URL to read freebusy information of the resource's calendar.

   ValueType:
      URL value.







Joy, et al.              Expires April 29, 2012                [Page 18]


Internet-Draft            Schema for Resources              October 2011


   Example value:
      http://www.example.com/freebusy/home/Room1/

5.16.1.  LDAP Attribute Definition

   Calendar access attribute calFBURL as defined in Section 2.4.4.2 and
   calOtherFBURLs as defined in Section 2.4.4.6 of [RFC2739]
   respectively.

5.16.2.  VCard Property Definition

   FBURL attribute as defined in Section 2.3.1 of [RFC2739] and further
   explained in Section 6.9.1 of [RFC6350].

5.17.  Scheduling Address

   Description:
      Address used for scheduling the resource by a Calendaring and
      Scheduling service.

   ValueType:
      String value.

   Example value:
      mailto:room1@example.com

5.17.1.  LDAP Attribute Definition

   Scheduling Address attribute calCalAdrURI as defined in Section
   2.4.4.4 and calOtherCalAdrURIs as defined in Section 2.4.4.8 of
   [RFC2739] respectively.  This is the address that would be used by a
   Scheduling and Calendaring application to schedule the resource.  Its
   value must be a uri string, in most cases a mailto: uri.  The mail
   attribute value of the resource should be used for scheduling, in the
   absence of this attribute.

5.17.2.  VCard Property Definition

   Scheduling Address property CALADRURI as defined in Section 2.3.2
   [RFC2739] and further explained in Section 6.9.2 of [RFC6350].  This
   is the address that would be used by a Scheduling and Calendaring
   application to schedule the resource.  Its value must be a uri
   string, in most cases a mailto: uri.  The EMAIL property value of the
   resource should be used for scheduling, in the absence of this
   attribute.






Joy, et al.              Expires April 29, 2012                [Page 19]


Internet-Draft            Schema for Resources              October 2011


5.18.  Time Zone

   Description:
      TimeZone Identifier for the timezone the resource is in.

   ValueType:
      String value.

   Example value:
      America/New_York

5.18.1.  LDAP Attribute Definition

   Definition of the timezoneid LDAP attribute:

           ( 1.3.6.1.1.x.0.11
               NAME 'TimeZoneID'
               DESC 'Cal Time Zone ID'
               EQUALITY caseIgnoreIA5Match
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )

5.18.2.  VCard Property Definition

   TimeZone property TZ as defined in Section 6.5.1 of [RFC6350].

5.19.  Multiple Bookings

   Description:
      Number of simultaneous bookings allowed.

   ValueType:
      Integer value.
      Value of 0 indicates no limits.

   Example value:
      1

5.19.1.  LDAP Attribute Definition

   Definition of the multiplebookings LDAP attribute:

           ( 1.3.6.1.1.x.0.12
               NAME 'Multiplebookings'
               DESC 'Cal Num Bookings Allowed'
               EQUALITY integerMatch
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
               SINGLE-VALUE )




Joy, et al.              Expires April 29, 2012                [Page 20]


Internet-Draft            Schema for Resources              October 2011


5.19.2.  VCard Property Definition

   Purpose:  To specify number of simultaneous bookings allowed.

   Type value:  integer.

   Cardinality:  (0,1)

   ABNF:
      MULTIBOOK-param = "VALUE=integer" / any-param
      MULTIBOOK-value = integer

   Example:
      MULTIBOOK:10

5.20.  Maximum Instances

   Description:
      Maximum number of instances of an event, the resource can be
      scheduled for from NOW.

   ValueType:
      Integer value.
      Value of 0 indicates no limits.

   Example value:
      60

5.20.1.  LDAP Attribute Definition

   Definition of the maxinstances LDAP attribute:

           ( 1.3.6.1.1.x.0.13
               NAME 'MaxInstances'
               DESC 'Cal Maximum Instances allowed'
               EQUALITY integerMatch
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
               SINGLE-VALUE )

5.20.2.  VCard Property Definition

   Purpose:  To specify maximum number of instances of an event, the
      resource can be scheduled for from NOW.

   Type value:  integer.






Joy, et al.              Expires April 29, 2012                [Page 21]


Internet-Draft            Schema for Resources              October 2011


   Cardinality:  (0,1)

   ABNF:
      MAXINSTANCES-param = "VALUE=integer" / any-param
      MAXINSTANCES-value = integer

   Example:
      MAXINSTANCES:10

5.21.  BookingWindow Start

   Description:
      Defines how much time in advance the resource can be booked.  The
      value of this property is used to calculate the earliest date and
      time when a resource can be reserved for an event starting on a
      specific date and time.
      If this property value is defined, the resource may be booked for
      an event at a certain time, only if the current time is equal to
      or after the date and time calculated by subtracting this value
      from the event's proposed start time.  If this property is absent,
      then the resource may be booked at any time before the end of the
      booking window.

      ValueType: Duration value.
      The format is based on the [ISO.8601.2004] duration representation
      basic format with designators for the duration of time.  The
      format can represent nominal durations (weeks and days) and
      accurate durations (hours, minutes, and seconds).  The syntax is
      further defined in Appendix A, "Duration" section of [RFC3339].

   Example value:
      P3M

5.21.1.  LDAP Attribute Definition

   Definition of the bookingwindowstart LDAP attribute:

           ( 1.3.6.1.1.x.0.14
               NAME 'BookingWindowStart'
               DESC 'Cal Booking Window Start'
               EQUALITY caseIgnoreIA5Match
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
               SINGLE-VALUE )








Joy, et al.              Expires April 29, 2012                [Page 22]


Internet-Draft            Schema for Resources              October 2011


5.21.2.  VCard Property Definition

   Purpose:  To specify how much time in advance the resource can be
      booked.

   Type value:  duration.
      The format is based on the [ISO.8601.2004] duration representation
      basic format with designators for the duration of time.  The
      format can represent nominal durations (weeks and days) and
      accurate durations (hours, minutes, and seconds).  The syntax is
      further defined in Appendix A, "Duration" section of [RFC3339].

   Cardinality:  (0,1)

   ABNF:
      BOOKINGWINDOWSTART-param = "VALUE=text" / any-param
      BOOKINGWINDOWSTART-value = text

   Example:
      BOOKINGWINDOWSTART:P3M

5.22.  BookingWindow End

   Description:
      Defines how much time in advance the resource booking is closed.
      The value of this property is used to calculate the latest date
      and time when a resource can be reserved for an event starting on
      a specific date and time.
      If the current time is equal to or before the value obtained by
      subtracting BookingWindowEnd from the start date and time of the
      event, then the resource may be booked.  If this property is
      absent, then the resource may be booked anytime from booking
      window start to the start of the event.
      BookingWindow Start and End together provide the window of time a
      resource can be booked, relative to the start time of the event.

               If BookingWindowStart = BwS,
               BookingWindowEnd = BwE,
               Current Time = CT and
               Event Start Time = ST,
               a resource can be booked at a certain time only if
               CT is equal to or after (ST - BwS)
               and CT is equal to or before (ST - BwE)








Joy, et al.              Expires April 29, 2012                [Page 23]


Internet-Draft            Schema for Resources              October 2011


      ValueType: Duration value.
      The format is based on the [ISO.8601.2004] duration representation
      basic format with designators for the duration of time.  The
      format can represent nominal durations (weeks and days) and
      accurate durations (hours, minutes, and seconds).  The syntax is
      further defined in Appendix A, "Duration" section of [RFC3339].

   Example value:
      P5D

5.22.1.  LDAP Attribute Definition

   Definition of the bookingwindowend LDAP attribute:

           ( 1.3.6.1.1.x.0.15
               NAME 'BookingWindowEnd'
               DESC 'Cal Booking Window End'
               EQUALITY caseIgnoreIA5Match
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
               SINGLE-VALUE )

5.22.2.  VCard Property Definition

   Purpose:  To specify how much time in advance the resource booking is
      closed.

   Type value:  duration.
      The format is based on the [ISO.8601.2004] duration representation
      basic format with designators for the duration of time.  The
      format can represent nominal durations (weeks and days) and
      accurate durations (hours, minutes, and seconds).  The syntax is
      further defined in Appendix A, "Duration" section of [RFC3339].

   Cardinality:  (0,1)

   ABNF:
      BOOKINGWINDOWEND-param = "VALUE=text" / any-param
      BOOKINGWINDOWEND-value = text

   Example:
      BOOKINGWINDOWEND:P5D

5.23.  Scheduling Approval Info

   Description:
      Information regarding approval of a scheduling request to the
      resource.




Joy, et al.              Expires April 29, 2012                [Page 24]


Internet-Draft            Schema for Resources              October 2011


   ValueType:
      Object value.

5.23.1.  LDAP ObjectClass Definition

   Definition of the schedapprovalinfo LDAP objectclass:

           ( 1.3.6.1.1.x.1.4
               NAME 'SchedApprovalInfo'
               DESC 'Calendar Sched Approval Class'
               SUP CalendarResource
               AUXILIARY
               MAY (autoschedule $ approvalinfourl $ schedadmin) )

5.23.2.  Auto schedule

   Description:
      No approval required.  Automatically scheduled.

   ValueType:
      Boolean value.

   Example value:
      TRUE

5.23.2.1.  LDAP Attribute Definition

   Definition of the autoschedule LDAP attribute:

           ( 1.3.6.1.1.x.0.16
               NAME 'Autoschedule'
               DESC 'Cal Scheduling no approval required'
               EQUALITY booleanMatch
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
               SINGLE-VALUE )

5.23.2.2.  VCard Property Definition

   Purpose:  To specify if invitations should be automatically
      scheduled.

   Type value:  Boolean.

   Cardinality:  (0,1)







Joy, et al.              Expires April 29, 2012                [Page 25]


Internet-Draft            Schema for Resources              October 2011


   ABNF:
      AUTOSCHEDULE-param = "VALUE=boolean" / any-param
      AUTOSCHEDULE-value = "TRUE" / "FALSE"

   Example:
      AUTOSCHEDULE:TRUE

5.23.3.  Approval Info URL

   Description:
      URL pointing to complete information on scheduling request
      approval process for the resource.

   ValueType:
      URL value.

   Example value:
      http://www.example.com/room1_approval.html

5.23.3.1.  LDAP Attribute Definition

   Definition of the approvalinfourl LDAP attribute:

           ( 1.3.6.1.1.x.0.17
               NAME 'ApprovalInfoURL'
               DESC 'Cal Sched Approval Info'
               EQUALITY caseIgnoreIA5Match
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )

5.23.3.2.  VCard Property Definition

   Purpose:  To specify URL pointing to Scheduling Approval Information.

   Type value:  URI.

   Cardinality:  (0,n)

   ABNF:
      APPROVALINFO-param = "VALUE=uri" / any-param
      APPROVALINFO-value = uri

   Example:
      APPROVALINFO:http://www.example.com/room1_approval.html








Joy, et al.              Expires April 29, 2012                [Page 26]


Internet-Draft            Schema for Resources              October 2011


5.23.4.  Scheduling Admin Contact

   Description:
      Contact information for the scheduling approvers, if approval
      required.

   ValueType:
      URL value.

   Example value:
      http://www.example.com/SchedAdmin1.vcf

5.23.4.1.  LDAP Attribute Definition

   Definition of the schedadmin LDAP attribute:

           ( 1.3.6.1.1.x.0.18
               NAME 'SchedAdmin'
               DESC 'Cal Sched Admin Info'
               EQUALITY distinguishedNameMatch
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )

5.23.4.2.  VCard Property Definition

   Purpose:  To specify URL pointing to Scheduling Manager.

   Type value:  URI.

   Cardinality:  (0,n)

   ABNF:
      SCHEDADMIN-param = "VALUE=uri" / any-param
      SCHEDADMIN-value = uri

   Example:
      SCHEDADMIN:http://www.example.com/SchedAdmin1.vcf

5.24.  Cost

   Description:
      Scheduling costs for this resource.

   ValueType:
      Object value.







Joy, et al.              Expires April 29, 2012                [Page 27]


Internet-Draft            Schema for Resources              October 2011


5.24.1.  LDAP ObjectClass Definition

   Definition of the cost LDAP objectclass:

           ( 1.3.6.1.1.x.1.5
               NAME 'CalendarResourceCost'
               DESC 'Calendar Resource Cost Object Class'
               SUP CalendarResource
               AUXILIARY
               MAY (nocost $ costurl)

5.24.2.  Nocost

   Description:
      No cost for using the resource.  Can be used for a resource
      scheduling query.

   ValueType:
      Boolean value.

   Example value:
      TRUE

5.24.2.1.  LDAP Attribute Definition

   Definition of the nocost LDAP attribute:

           ( 1.3.6.1.1.x.0.19
               NAME 'Nocost'
               DESC 'Free or Priced resource'
               EQUALITY booleanMatch
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
               SINGLE-VALUE )

5.24.2.2.  VCard Property Definition

   Purpose:  To specify if resource usage is free.

   Type value:  A single boolean value.

   Cardinality:  (0,1)

   ABNF:
      NOCOST-param = ; no parameter allowed
      NOCOST-value = boolean






Joy, et al.              Expires April 29, 2012                [Page 28]


Internet-Draft            Schema for Resources              October 2011


   Example:
      NOCOST:TRUE

5.24.3.  Cost URL

   Description:
      URL pointing to complete pricing information for usage of the
      resource.

   ValueType:
      URL value.

   Example value:
      http://www.example.com/cost.html

5.24.3.1.  LDAP Attribute Definition

   Definition of the costurl LDAP attribute:

             ( 1.3.6.1.1.x.0.20
                 NAME 'CostURL'
                 DESC 'Cal Resource Cost Info'
                 EQUALITY caseIgnoreIA5Match
                 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )

5.24.3.2.  VCard Property Definition

   Purpose:  To specify URL pointing Resource Scheduling Cost
      Information.

   Type value:  URI.

   Cardinality:  (0,n)

   ABNF:
      COSTINFO-param = "VALUE=uri" / any-param
      COSTINFO-value = uri

   Example:
      COSTINFO:http://www.example.com/cost.html

5.25.  Related

   Description:
      Specify a relationship with another resource.






Joy, et al.              Expires April 29, 2012                [Page 29]


Internet-Draft            Schema for Resources              October 2011


   ValueType:
      URL value.

   Example value:
      http://www.example.com/printer1.html

5.25.1.  LDAP Attribute Definition

   Definition of the related LDAP attribute:

           ( 1.3.6.1.1.x.0.21
               NAME 'Related'
               DESC 'Related URL'
         EQUALITY uniqueMemberMatch
               SYNTAX 1.3.6.1.4.1.1466.115.121.1.34 )

5.25.2.  VCard Property Definition

   The property RELATED as defined in Section 6.6.6 of [RFC6350].

6.  Examples

6.1.  LDAP Examples

6.1.1.  Location Resource


























Joy, et al.              Expires April 29, 2012                [Page 30]


Internet-Draft            Schema for Resources              October 2011


   dn: cn=Room One,ou=Engineering,dc=example,dc=com
   objectclass: top
   objectclass: calendarresource
   objectclass: admittanceinfo
   objectclass: inventoryinfo
   objectclass: schedapprovalinfo
   objectclass: calendarresourcecost
   objectclass: room
   vcarduid: room1-id
   cn: Room One
   ou: Engineering
   nickname: The One
   description: Room 1 in Engineering Building X
   categories: rooms
   categories: engineering_resources
   restricted: TRUE
   admittanceurl: http://www.example.com/room1_admittance.html
   accessibilityurl: http://www.example.com/room1_specialaccess.html
   capacity: 100
   inventorylist: phone
   inventorylist: projector
   inventoryurl: http://www.example.com/room1_inventory.html
   owner: cn=RoomOwner,ou=Engineering,dc=example,dc=com
   resourcemanager: cn=RoomOwner,ou=Engineering,dc=example,dc=com
   calcapuri: http://www.example.com/calendar/home/Room1/calendar/
   calfburl: http://www.example.com/freebusy/home/Room1/
   calcaladruri: mailto:room1@example.com
   timezoneid: America/Los_Angeles
   multiplebookings: 1
   maxinstances: 10
   bookingwindowstart:P3M
   bookingwindowend: P3D
   autoschedule: FALSE
   approvalinfourl: http://www.example.com/room1_approval.html
   schedadmin: cn=RoomOwner,ou=Engineering,dc=example,dc=com
   nocost: FALSE
   costurl: http://www.example.com/cost.html

6.1.2.  Role Resources Group












Joy, et al.              Expires April 29, 2012                [Page 31]


Internet-Draft            Schema for Resources              October 2011


dn: cn=Drivers X,ou=Transportation,dc=example,dc=com
objectclass: top
objectclass: groupOfuniqueNames
objectclass: calendarresource
objectclass: schedapprovalinfo
objectclass: calendarresourcecost
vcarduid: driversX-id
cn: Driver One
ou: Transportation
nickname: The X
description: Drivers in the Transportation department driver pool X
categories: drivers
uniquemember: cn=Driver1,ou=Transportation,dc=example,dc=com
uniquemember: cn=Driver2,ou=Transportation,dc=example,dc=com
uniquemember: cn=Driver3,ou=Transportation,dc=example,dc=com
owner: cn=Transportation_Manager,ou=Transportation,dc=example,dc=com
calfburl: http://www.example.com/freebusy/home/DriversX/
calcaladruri: mailto:driversX@example.com
timezoneid: America/Los_Angeles
multiplebookings: 3
maxinstances: 10
bookingwindowstart:P3M
bookingwindowend: P3D
autoschedule: FALSE
approvalinfourl: http://www.example.com/driversX_approval.html
schedadmin: cn=TransportationManager,ou=Transportation,dc=example,dc=com
nocost: FALSE
costurl: http://www.example.com/driversXcost.html

6.2.  VCard Examples

6.2.1.  Location Resource



















Joy, et al.              Expires April 29, 2012                [Page 32]


Internet-Draft            Schema for Resources              October 2011


   BEGIN:VCARD
   VERSION:4.0
   UID:urn:uuid:room1-id
   KIND: location
   FN: Room One
   ORG: Engineering
   NICKNAME: The One
   NOTE: Room 1 in Engineering Building X
   CATEGORIES: rooms, engineering_resources
   RESTRICTEDACCESS: TRUE
   ADMISSIONINFO: http://www.example.com/room1_admittance.html
   ACCESSIBILITYINFO: http://www.example.com/room1_specialaccess.html
   CAPACITY: 100
   INVENTORYLIST: phone, projector
   INVENTORYURL: http://www.example.com/room1_inventory.html
   RESOURCEOWNER: http://www.example.com/ResOwner1.vcf
   RESOURCEMANAGER: http://www.example.com/ResManager1.vcf
   CAPURI: http://www.example.com/calendar/home/Room1/calendar/
   FBURL: http://www.example.com/freebusy/home/Room1/
   CALADRURI: mailto:room1@example.com
   TZ: America/Los_Angeles
   MULTIBOOK: 1
   MAXINSTANCES: 10
   BOOKINGWINDOWSTART:P3M
   BOOKINGWINDOWEND: P3D
   AUTOSCHEDULE: FALSE
   APPROVALINFO: http://www.example.com/room1_approval.html
   SCHEDADMIN: http://www.example.com/SchedAdmin1.vcf
   NOCOST: FALSE
   COSTINFO: http://www.example.com/cost.html
   END:VCARD

6.2.2.  Role Resources Group


















Joy, et al.              Expires April 29, 2012                [Page 33]


Internet-Draft            Schema for Resources              October 2011


   BEGIN:VCARD
   VERSION:4.0
   UID:urn:uuid:driverXPool-id
   KIND: group
   FN: Driver X Pool
   ORG: Transportation
   NICKNAME: The X Group
   NOTE: Drivers in the Transportation department driver pool X
   CATEGORIES: drivers
   MEMBER:urn:uuid:driver1-id
   MEMBER:urn:uuid:driver2-id
   MEMBER:urn:uuid:driver3-id
   RESOURCEOWNER: http://www.example.com/DriversManager.vcf
   FBURL: http://www.example.com/freebusy/home/DriversX/
   CALADRURI: mailto:driversX@example.com
   TZ: America/Los_Angeles
   MULTIBOOK: 3
   MAXINSTANCES: 10
   BOOKINGWINDOWSTART:P3M
   BOOKINGWINDOWEND: P3D
   AUTOSCHEDULE: FALSE
   APPROVALINFO: http://www.example.com/driversX_approval.html
   SCHEDADMIN: http://www.example.com/DriversX_SchedAdmin.vcf
   NOCOST: FALSE
   COSTINFO: http://www.example.com/driversXcost.html
   END:VCARD

7.  Security Considerations

   As this document only defines schema for representing resource
   information for calendaring and scheduling and does not refer to the
   actual storage mechanism itself, or the calendaring and scheduling
   protocol, no special security considerations are required as part of
   this document.

8.  IANA Considerations

8.1.  LDAP Objectclass and Attribute Registration

   New LDAP objectclasses and attributes defined in this document need
   to be registered by the Internet Assigned Numbers Authority (IANA) as
   requested in the following template.  Once the assignment is done,
   this document needs to be updated with the right OID numbers for all
   the newly defined objectclasses and attributes.







Joy, et al.              Expires April 29, 2012                [Page 34]


Internet-Draft            Schema for Resources              October 2011


         Subject: Request for LDAP Descriptor Registration
         Descriptor (short name): See table below
         Object Identifier: See table below
         Person & email address to contact for further information:
             Ciny Joy <ciny.joy@oracle.com>
         Usage: See table below
         Specification: draft-cal-resource-schema
         Author/Change Controller: IESG

                New LDAP ObjectClass and Attributes Table:

   +-------------------+------------+----------------+-----------------+
   | Name              | Type       | Definition     | OID             |
   +-------------------+------------+----------------+-----------------+
   | CalendarResource  | ObjectClas | Section 4.1    | IANA-ASSIGNED-O |
   |                   | s          |                | ID              |
   | Kind              | Attribute  | Section 5.2.1. | IANA-ASSIGNED-O |
   |                   |            | 1              | ID              |
   | VcardUid          | Attribute  | Section 5.3.1  | IANA-ASSIGNED-O |
   |                   |            |                | ID              |
   | NickName          | Attribute  | Section 5.4.1  | IANA-ASSIGNED-O |
   |                   |            |                | ID              |
   | Categories        | Attribute  | Section 5.7.1  | IANA-ASSIGNED-O |
   |                   |            |                | ID              |
   | AdmittanceInfo    | ObjectClas | Section 5.9.1  | IANA-ASSIGNED-O |
   |                   | s          |                | ID              |
   | Restricted        | Attribute  | Section 5.9.2. | IANA-ASSIGNED-O |
   |                   |            | 1              | ID              |
   | AdmittanceURL     | Attribute  | Section 5.9.3. | IANA-ASSIGNED-O |
   |                   |            | 1              | ID              |
   | AccessibilityURL  | Attribute  | Section 5.10.1 | IANA-ASSIGNED-O |
   |                   |            |                | ID              |
   | Capacity          | Attribute  | Section 5.11.1 | IANA-ASSIGNED-O |
   |                   |            |                | ID              |
   | InventoryInfo     | ObjectClas | Section 5.12.1 | IANA-ASSIGNED-O |
   |                   | s          |                | ID              |
   | InventoryList     | Attribute  | Section 5.12.2 | IANA-ASSIGNED-O |
   |                   |            | .1             | ID              |
   | InventoryURL      | Attribute  | Section 5.12.3 | IANA-ASSIGNED-O |
   |                   |            | .1             | ID              |
   | ResourceManager   | Attribute  | Section 5.14.1 | IANA-ASSIGNED-O |
   |                   |            |                | ID              |
   | TimeZoneID        | Attribute  | Section 5.18.1 | IANA-ASSIGNED-O |
   |                   |            |                | ID              |
   | MultipleBookings  | Attribute  | Section 5.19.1 | IANA-ASSIGNED-O |
   |                   |            |                | ID              |
   | MaxInstances      | Attribute  | Section 5.20.1 | IANA-ASSIGNED-O |
   |                   |            |                | ID              |



Joy, et al.              Expires April 29, 2012                [Page 35]


Internet-Draft            Schema for Resources              October 2011


   | BookingWindowStar | Attribute  | Section 5.21.1 | IANA-ASSIGNED-O |
   | t                 |            |                | ID              |
   | BookingWindowEnd  | Attribute  | Section 5.22.1 | IANA-ASSIGNED-O |
   |                   |            |                | ID              |
   | SchedApprovalInfo | ObjectClas | Section 5.23.1 | IANA-ASSIGNED-O |
   |                   | s          |                | ID              |
   | Autoschedule      | Attribute  | Section 5.23.2 | IANA-ASSIGNED-O |
   |                   |            | .1             | ID              |
   | ApprovalInfoURL   | Attribute  | Section 5.23.3 | IANA-ASSIGNED-O |
   |                   |            | .1             | ID              |
   | SchedAdmin        | Attribute  | Section 5.23.4 | IANA-ASSIGNED-O |
   |                   |            | .1             | ID              |
   | CalendarResourceC | ObjectClas | Section 5.24.1 | IANA-ASSIGNED-O |
   | ost               | s          |                | ID              |
   | Nocost            | Attribute  | Section 5.24.2 | IANA-ASSIGNED-O |
   |                   |            | .1             | ID              |
   | CostURL           | Attribute  | Section 5.24.3 | IANA-ASSIGNED-O |
   |                   |            | .1             | ID              |
   | Related           | Attribute  | Section 5.25.1 | IANA-ASSIGNED-O |
   |                   |            |                | ID              |
   +-------------------+------------+----------------+-----------------+

8.2.  VCard Property and Value Registration

   The following new VCard Properties need to be registered by IANA.

                        New VCard Properties Table:

            +---------------------+---------------------------+
            | VCard Property Name | VCard Property Definition |
            +---------------------+---------------------------+
            | RESTRICTEDACCESS    | Section 5.9.2.2           |
            | ADMISSIONINFO       | Section 5.9.3.2           |
            | ACCESSIBILITYINFO   | Section 5.10.2            |
            | CAPACITY            | Section 5.11.2            |
            | INVENTORYLIST       | Section 5.12.2.2          |
            | INVENTORYURL        | Section 5.12.3.2          |
            | RESOURCEOWNER       | Section 5.13.2            |
            | RESOURCEMANAGER     | Section 5.14.2            |
            | MAXINSTANCE         | Section 5.20.2            |
            | BOOKINGWINDOWSTART  | Section 5.21.2            |
            | BOOKINGWINDOWEND    | Section 5.22.2            |
            | AUTOSCHEDULE        | Section 5.23.2.2          |
            | APPROVALINFO        | Section 5.23.3.2          |
            | SCHEDADMIN          | Section 5.23.4.2          |
            | NOCOST              | Section 5.24.2.2          |
            | COSTINFO            | Section 5.24.3.2          |
            +---------------------+---------------------------+



Joy, et al.              Expires April 29, 2012                [Page 36]


Internet-Draft            Schema for Resources              October 2011


   The following new VCard Property Values need to be registered by
   IANA.

                     New VCard Property Values Table:

   +-------------------+-----------------------------+-----------------+
   | VCard Property    | Additional VCard Property   | Value           |
   | Name              | Value                       | Definition      |
   +-------------------+-----------------------------+-----------------+
   | KIND              | calendarresource            | Section 5.2.2   |
   +-------------------+-----------------------------+-----------------+

9.  Recommendations for Calendaring Systems

   While this document does not mandate how each of the defined
   attribute values must be used by calendaring systems, here are some
   recommendations:

   1.  BookingWindow Start (Section 5.21), Booking Window End
       (Section 5.22), and Multiple Bookings (Section 5.19) information
       should be used in freebusy calculations.  A query for a time slot
       that falls outside the booking window or one that already has the
       maximum allowed number of simultaneous bookings, must be returned
       as BUSY_UNAVAILABLE.

   2.  Calendaring systems that support the auto schedule
       (Section 5.23.2) attribute, should automatically mark the
       attendee PARTSTAT for a resource as ACCEPTED, if its auto
       schedule value is TRUE and the scheduling is successful.  If
       owner approval is required, the PARTSTAT could be automatically
       marked as TENTATIVE.

   3.  Information like Capacity (Section 5.11) can be used by
       calendaring systems to warn end users if the number of attendees
       exceed the capacity value.

10.  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, and
   specifically the following individuals for contributing their ideas
   and support: Arnaud Quillaud, Adam Lewenberg, Andrew Laurence, Guy
   Stalnaker, Mimi Mugler, Dave Thewlis, Bernard Desruisseaux, Alain
   Petit, Andrew Sciberras, and Jason Miller.






Joy, et al.              Expires April 29, 2012                [Page 37]


Internet-Draft            Schema for Resources              October 2011


11.  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.

   [RFC4519]        Sciberras, A., "Lightweight Directory Access
                    Protocol (LDAP): Schema for User Applications",
                    RFC 4519, June 2006.

   [RFC4524]        Zeilenga, K., "COSINE LDAP/X.500 Schema", RFC 4524,
                    June 2006.

   [RFC6350]        Perreault, S., "vCard Format Specification",
                    RFC 6350, August 2011.

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/




Joy, et al.              Expires April 29, 2012                [Page 38]


Internet-Draft            Schema for Resources              October 2011


   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 April 29, 2012                [Page 39]