Network Working Group | C. Joy |
Internet-Draft | Oracle |
Intended status: Standards Track | C. Daboo |
Expires: July 29, 2013 | Apple Inc. |
M. Douglass | |
RPI | |
January 25, 2013 |
Schedulable Objectclass for vCard
draft-vcard-schedulable-00
This specification describes a new property objectclass value for the vcard objectclass property defined in [REF] allowing schedulable entities to be marked as such.
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 29, 2013.
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.
The schedulable object class defines a number of properties which are required or useful for schedulable entities.
A schedulable entity may be scheduled for meetings (usually a person) or for use (usually a resource). The properties specified here allow a client to discover such an entity and initiate a scheduling request.
Some of the properties and values may be used by calendar servers to determine the appropriate action when a scheduling request is received. For example, do we auto-accept the request if the entity is available?
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].
This specification defines a new value for the OBJECTCLASS property deined in [TODO]. The value is registered according to the procedure in Section 10.2.6 of [RFC6350].
The following properties MUST be specified in a vCard representing a calendaring or schedulable resource:
The CALADRURI value 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 property.
The following new properties are defined for use with OBJECTCLASS:schedulable.
Format and cardinality of new vCard properties are defined as described in Section 3.3 of [RFC6350].
AUTOSCHEDULE-param = "VALUE=text" / any-param AUTOSCHEDULE-value = text
Auto Schedule Values Table:
Auto schedule value | Scheduling action |
---|---|
NONE | no auto scheduling |
ACCEPT-IF-FREE | auto accept invitations, if no conflict |
DECLINE-IF-BUSY | auto decline invitations that result in a conflict |
AUTO | auto accept and auto decline based on booking conflict |
ALWAYS-ACCEPT | auto accept all invitations |
ALWAYS-DECLINE | auto decline all invitations |
BOOKINGINFO-param = "VALUE=" ("text" / "uri") / any-param BOOKINGINFO-value = uri / text
BOOKINGRESTRICTED-param = "VALUE=boolean" / any-param BOOKINGRESTRICTED-value = boolean
BOOKINGWINDOWSTART-param = "VALUE=text" / any-param BOOKINGWINDOWSTART-value = text
BOOKINGWINDOWEND-param = "VALUE=text" / any-param BOOKINGWINDOWEND-value = text
If: BookingWindowStart = BwS, BookingWindowEnd = BwE, Current Time = CT and Event Start Time = ST, Then 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)
MAXINSTANCES-param = "VALUE=integer" / any-param MAXINSTANCES-value = integer
MULTIBOOK-param = "VALUE=integer" / any-param MULTIBOOK-value = integer
This document specifies the following additional values that can be used as the value for the TYPE parameter of the RELATED property defined in Section 6.6.6 of [RFC6350].
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 MUST be some form of calendar user address. It's useful to know whether requests can be auto accepted if the slot is available.
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:schedulable CALADRURI:jdoe@example.edu AUTOSCHEDULE:ACCEPT-IF-FREE END:VCARD
As this document only defines schema for representing entities 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.
A objectclass value is be defined according to the process specified in Section 10.2.6 of [RFC6350].
The following new VCard Properties need to be registered by IANA.
New VCard Properties Table:
VCard Property Name | VCard Property Definition |
---|---|
AUTOSCHEDULE | Section 5.1 |
BOOKINGINFO | Section 5.2 |
BOOKINGRESTRICTED | Section 5.3 |
BOOKINGWINDOWSTART | Section 5.4 |
BOOKINGWINDOWEND | Section 5.5 |
MAXINSTANCES | Section 5.6 |
MULTIBOOK | Section 5.7 |
The following new VCard Parameter Values need to be registered by IANA.
New VCard Properties Table:
VCard Property Name | VCard Parameter Name | VCard Parameter Value |
---|---|---|
RELATED | TYPE | schedule-admin Section 6.1 |
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.
While this document does not mandate how each of the defined property values must be used by calendaring systems, here are some recommendations:
Individual calendar servers may regard the values of these properties set in a directory server or a different database as advisory and could further limit what it allows.
[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. 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. |
[ISO.8601.2004] | International Organization for Standardization , "Data elements and interchange formats -- Information interchange -- Representation of dates and times ", 2004. |