idnits 2.17.1 draft-cal-resource-schema-06.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- == There are 1 instance of lines with non-RFC6890-compliant IPv4 addresses in the document. If these are example addresses, they should be changed. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (October 27, 2011) is 4565 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) No issues found here. Summary: 0 errors (**), 0 flaws (~~), 2 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group C. Joy 3 Internet-Draft Oracle 4 Intended status: Standards Track C. Daboo 5 Expires: April 29, 2012 Apple Inc. 6 M. Douglass 7 RPI 8 October 27, 2011 10 Schema for representing resources for calendaring and scheduling 11 services 12 draft-cal-resource-schema-06 14 Abstract 16 This specification describes a schema for representing resources for 17 calendaring and scheduling. A resource in the scheduling context is 18 any shared entity that can be scheduled by a calendar user, but does 19 not control its own attendance status. 21 Status of This Memo 23 This Internet-Draft is submitted in full conformance with the 24 provisions of BCP 78 and BCP 79. 26 Internet-Drafts are working documents of the Internet Engineering 27 Task Force (IETF). Note that other groups may also distribute 28 working documents as Internet-Drafts. The list of current Internet- 29 Drafts is at http://datatracker.ietf.org/drafts/current/. 31 Internet-Drafts are draft documents valid for a maximum of six months 32 and may be updated, replaced, or obsoleted by other documents at any 33 time. It is inappropriate to use Internet-Drafts as reference 34 material or to cite them other than as "work in progress." 36 This Internet-Draft will expire on April 29, 2012. 38 Copyright Notice 40 Copyright (c) 2011 IETF Trust and the persons identified as the 41 document authors. All rights reserved. 43 This document is subject to BCP 78 and the IETF Trust's Legal 44 Provisions Relating to IETF Documents 45 (http://trustee.ietf.org/license-info) in effect on the date of 46 publication of this document. Please review these documents 47 carefully, as they describe your rights and restrictions with respect 48 to this document. Code Components extracted from this document must 49 include Simplified BSD License text as described in Section 4.e of 50 the Trust Legal Provisions and are provided without warranty as 51 described in the Simplified BSD License. 53 Table of Contents 55 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 5 56 2. Conventions Used in This Document . . . . . . . . . . . . . . 5 57 3. General Considerations . . . . . . . . . . . . . . . . . . . . 5 58 4. Resource Object . . . . . . . . . . . . . . . . . . . . . . . 5 59 4.1. LDAP Resource ObjectClass Definition . . . . . . . . . . . 5 60 5. Resource Attributes . . . . . . . . . . . . . . . . . . . . . 6 61 5.1. Common Name . . . . . . . . . . . . . . . . . . . . . . . 6 62 5.1.1. LDAP Attribute Definition . . . . . . . . . . . . . . 6 63 5.1.2. VCard Property Definition . . . . . . . . . . . . . . 6 64 5.2. Kind . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 65 5.2.1. LDAP Definition . . . . . . . . . . . . . . . . . . . 7 66 5.2.1.1. LDAP Attribute Definition . . . . . . . . . . . . 7 67 5.2.2. VCard Property Definition . . . . . . . . . . . . . . 7 68 5.2.3. Mapping of KIND value between LDAP and VCard 69 representations . . . . . . . . . . . . . . . . . . . 8 70 5.3. Unique ID . . . . . . . . . . . . . . . . . . . . . . . . 8 71 5.3.1. LDAP Attribute Definition . . . . . . . . . . . . . . 8 72 5.3.2. VCard Property Definition . . . . . . . . . . . . . . 8 73 5.4. Nick Name . . . . . . . . . . . . . . . . . . . . . . . . 8 74 5.4.1. LDAP Attribute Definition . . . . . . . . . . . . . . 9 75 5.4.2. VCard Property Definition . . . . . . . . . . . . . . 9 76 5.5. Description . . . . . . . . . . . . . . . . . . . . . . . 9 77 5.5.1. LDAP Attribute Definition . . . . . . . . . . . . . . 9 78 5.5.2. VCard Property Definition . . . . . . . . . . . . . . 9 79 5.6. Organizational Unit . . . . . . . . . . . . . . . . . . . 9 80 5.6.1. LDAP Attribute Definition . . . . . . . . . . . . . . 10 81 5.6.2. VCard Property Definition . . . . . . . . . . . . . . 10 82 5.7. Categories . . . . . . . . . . . . . . . . . . . . . . . . 10 83 5.7.1. LDAP Attribute Definition . . . . . . . . . . . . . . 10 84 5.7.2. VCard Property Definition . . . . . . . . . . . . . . 10 85 5.8. Group Member . . . . . . . . . . . . . . . . . . . . . . . 10 86 5.8.1. LDAP Attribute Definition . . . . . . . . . . . . . . 11 87 5.8.2. VCard Property Definition . . . . . . . . . . . . . . 11 88 5.9. Admittance Info . . . . . . . . . . . . . . . . . . . . . 11 89 5.9.1. LDAP ObjectClass Definition . . . . . . . . . . . . . 11 90 5.9.2. Restricted Access . . . . . . . . . . . . . . . . . . 11 91 5.9.2.1. LDAP Attribute Definition . . . . . . . . . . . . 11 92 5.9.2.2. VCard Property Definition . . . . . . . . . . . . 12 93 5.9.3. Admittance Info URL . . . . . . . . . . . . . . . . . 12 94 5.9.3.1. LDAP Attribute Definition . . . . . . . . . . . . 12 95 5.9.3.2. VCard Property Definition . . . . . . . . . . . . 12 96 5.10. Accessibility . . . . . . . . . . . . . . . . . . . . . . 13 97 5.10.1. LDAP Attribute Definition . . . . . . . . . . . . . . 13 98 5.10.2. VCard Property Definition . . . . . . . . . . . . . . 13 99 5.11. Capacity . . . . . . . . . . . . . . . . . . . . . . . . . 14 100 5.11.1. LDAP Attribute Definition . . . . . . . . . . . . . . 14 101 5.11.2. VCard Property Definition . . . . . . . . . . . . . . 14 102 5.12. Inventory Info . . . . . . . . . . . . . . . . . . . . . . 14 103 5.12.1. LDAP ObjectClass Definition . . . . . . . . . . . . . 15 104 5.12.2. Inventory List . . . . . . . . . . . . . . . . . . . . 15 105 5.12.2.1. LDAP Attribute Definition . . . . . . . . . . . . 15 106 5.12.2.2. VCard Property Definition . . . . . . . . . . . . 15 107 5.12.3. Inventory URL . . . . . . . . . . . . . . . . . . . . 16 108 5.12.3.1. LDAP Attribute Definition . . . . . . . . . . . . 16 109 5.12.3.2. VCard Property Definition . . . . . . . . . . . . 16 110 5.13. Owner . . . . . . . . . . . . . . . . . . . . . . . . . . 16 111 5.13.1. LDAP Attribute Definition . . . . . . . . . . . . . . 17 112 5.13.2. VCard Property Definition . . . . . . . . . . . . . . 17 113 5.14. Resource Manager . . . . . . . . . . . . . . . . . . . . . 17 114 5.14.1. LDAP Attribute Definition . . . . . . . . . . . . . . 17 115 5.14.2. VCard Property Definition . . . . . . . . . . . . . . 18 116 5.15. Calendar URL . . . . . . . . . . . . . . . . . . . . . . . 18 117 5.15.1. LDAP Attribute Definition . . . . . . . . . . . . . . 18 118 5.15.2. VCard Property Definition . . . . . . . . . . . . . . 18 119 5.16. FreeBusy URL . . . . . . . . . . . . . . . . . . . . . . . 18 120 5.16.1. LDAP Attribute Definition . . . . . . . . . . . . . . 19 121 5.16.2. VCard Property Definition . . . . . . . . . . . . . . 19 122 5.17. Scheduling Address . . . . . . . . . . . . . . . . . . . . 19 123 5.17.1. LDAP Attribute Definition . . . . . . . . . . . . . . 19 124 5.17.2. VCard Property Definition . . . . . . . . . . . . . . 19 125 5.18. Time Zone . . . . . . . . . . . . . . . . . . . . . . . . 20 126 5.18.1. LDAP Attribute Definition . . . . . . . . . . . . . . 20 127 5.18.2. VCard Property Definition . . . . . . . . . . . . . . 20 128 5.19. Multiple Bookings . . . . . . . . . . . . . . . . . . . . 20 129 5.19.1. LDAP Attribute Definition . . . . . . . . . . . . . . 20 130 5.19.2. VCard Property Definition . . . . . . . . . . . . . . 21 131 5.20. Maximum Instances . . . . . . . . . . . . . . . . . . . . 21 132 5.20.1. LDAP Attribute Definition . . . . . . . . . . . . . . 21 133 5.20.2. VCard Property Definition . . . . . . . . . . . . . . 21 134 5.21. BookingWindow Start . . . . . . . . . . . . . . . . . . . 22 135 5.21.1. LDAP Attribute Definition . . . . . . . . . . . . . . 22 136 5.21.2. VCard Property Definition . . . . . . . . . . . . . . 23 137 5.22. BookingWindow End . . . . . . . . . . . . . . . . . . . . 23 138 5.22.1. LDAP Attribute Definition . . . . . . . . . . . . . . 24 139 5.22.2. VCard Property Definition . . . . . . . . . . . . . . 24 140 5.23. Scheduling Approval Info . . . . . . . . . . . . . . . . . 24 141 5.23.1. LDAP ObjectClass Definition . . . . . . . . . . . . . 25 142 5.23.2. Auto schedule . . . . . . . . . . . . . . . . . . . . 25 143 5.23.2.1. LDAP Attribute Definition . . . . . . . . . . . . 25 144 5.23.2.2. VCard Property Definition . . . . . . . . . . . . 25 146 5.23.3. Approval Info URL . . . . . . . . . . . . . . . . . . 26 147 5.23.3.1. LDAP Attribute Definition . . . . . . . . . . . . 26 148 5.23.3.2. VCard Property Definition . . . . . . . . . . . . 26 149 5.23.4. Scheduling Admin Contact . . . . . . . . . . . . . . . 27 150 5.23.4.1. LDAP Attribute Definition . . . . . . . . . . . . 27 151 5.23.4.2. VCard Property Definition . . . . . . . . . . . . 27 152 5.24. Cost . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 153 5.24.1. LDAP ObjectClass Definition . . . . . . . . . . . . . 28 154 5.24.2. Nocost . . . . . . . . . . . . . . . . . . . . . . . . 28 155 5.24.2.1. LDAP Attribute Definition . . . . . . . . . . . . 28 156 5.24.2.2. VCard Property Definition . . . . . . . . . . . . 28 157 5.24.3. Cost URL . . . . . . . . . . . . . . . . . . . . . . . 29 158 5.24.3.1. LDAP Attribute Definition . . . . . . . . . . . . 29 159 5.24.3.2. VCard Property Definition . . . . . . . . . . . . 29 160 5.25. Related . . . . . . . . . . . . . . . . . . . . . . . . . 29 161 5.25.1. LDAP Attribute Definition . . . . . . . . . . . . . . 30 162 5.25.2. VCard Property Definition . . . . . . . . . . . . . . 30 163 6. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 164 6.1. LDAP Examples . . . . . . . . . . . . . . . . . . . . . . 30 165 6.1.1. Location Resource . . . . . . . . . . . . . . . . . . 30 166 6.1.2. Role Resources Group . . . . . . . . . . . . . . . . . 31 167 6.2. VCard Examples . . . . . . . . . . . . . . . . . . . . . . 32 168 6.2.1. Location Resource . . . . . . . . . . . . . . . . . . 32 169 6.2.2. Role Resources Group . . . . . . . . . . . . . . . . . 33 170 7. Security Considerations . . . . . . . . . . . . . . . . . . . 34 171 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 34 172 8.1. LDAP Objectclass and Attribute Registration . . . . . . . 34 173 8.2. VCard Property and Value Registration . . . . . . . . . . 36 174 9. Recommendations for Calendaring Systems . . . . . . . . . . . 37 175 10. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 37 176 11. Normative References . . . . . . . . . . . . . . . . . . . . . 38 178 1. Introduction 180 This specification defines a schema for representing resources to 181 ease the discovery and scheduling of resources between any calendar 182 client and server. 183 LDAP and vCard mappings of the schema are described in this document. 184 The Object model chosen is the lowest common denominator to adapt for 185 LDAP. 187 2. Conventions Used in This Document 189 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 190 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 191 document are to be interpreted as described in [RFC2119]. 193 3. General Considerations 195 Data values must have valid representation for the chosen format with 196 respect to escape characters, line folding, and so on. 198 4. Resource Object 200 A resource object definition should contain all information required 201 to find and schedule the right resource. For this, it should contain 202 all, or a set of the attributes described in Section 5. The cn 203 attribute, described in Section 5.1 MUST be present in any resource 204 object. Additional proprietary attributes may be defined as well, 205 but must begin with "X-". Clients encountering attributes they don't 206 know about must ignore them. 208 Attributes or Properties required to contact the resource are not 209 included in this specification. LDAP attributes defined in [RFC4519] 210 and VCARD properties defined in vCard Format Specification [RFC6350] 211 can be used to include contact information for the resource. 213 4.1. LDAP Resource ObjectClass Definition 215 In LDAP, a resource object SHOULD be defined as an objectclass with 216 attributes as defined in Section 5. This objectClass MUST be an 217 auxiliary class. Its Superior class is the calEntry objectClass as 218 defined in Section 2.4.3.1 of [RFC2739]. 219 Definition of the CalendarResource ObjectClass: 221 ( 1.3.6.1.1.x.1.1 222 NAME 'CalendarResource' 223 DESC 'Calendar Resource Object Class' 224 SUP calEntry 225 AUXILIARY 226 MUST (cn) 227 MAY (kind $ nickname $ description $ ou $ categories $ 228 member $ uniquemember $ accessibilityurl $ capacity $ 229 owner $ resourcemanager $ timezoneid $ 230 multiplebookings $ maxinstances $ 231 bookingwindowstart $ bookingwindowend $ 232 vcarduid $ related) ) 234 5. Resource Attributes 236 5.1. Common Name 238 Description: 239 Full name of the resource. This attribute MUST be defined for a 240 resource object. 242 ValueType: 243 String value. 245 Example value: 246 Room One 248 5.1.1. LDAP Attribute Definition 250 cn attribute as defined in Section 2.3 of [RFC4519]. This attribute 251 MUST be present in a CalendarResource object. 253 5.1.2. VCard Property Definition 255 FN property as defined in Section 6.2.1 of [RFC6350]. 257 5.2. Kind 259 Description: 260 The kind of object represented. 262 ValueType: 263 Some of the possible values are "Location", "Individual", 264 "CalendarResource", or "Group". 265 Location is used for any physical location resource such as room, 266 building, etc. 267 Individual is used for for a human resource such as driver, 268 technician, etc. 270 CalendarResource is used for any physical object that can 271 scheduled like projector, printer, etc. 272 Group is used to specify a group of resources with a specific 273 skill set. For example: drivers, electricians, etc. 275 Example value: 276 Location 278 5.2.1. LDAP Definition 280 In LDAP, this information can be represented by including the right 281 category objectlass. 282 Possible objectclasses are: 283 Person objectclass as defined in Section 3.12 of [RFC4519]. 284 groupOfNames objectclass as defined in Section 3.5 of [RFC4519]. 285 groupOfUniqueNames objectclass as defined in Section 3.6 of 286 [RFC4519]. 287 device objectclass as defined in Section 3.4 of [RFC4519]. 288 room objectclass as defined in Section 3.8 of [RFC4524]. 289 In the absence of an objectclass that accurately describes the type 290 of the object, the KIND attribute defined below MUST be used. 292 5.2.1.1. LDAP Attribute Definition 294 Definition of the kind LDAP attribute: 296 ( 1.3.6.1.1.x.0.1 297 NAME 'Kind' 298 DESC 'Kind of Object' 299 EQUALITY caseIgnoreMatch 300 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 301 SINGLE-VALUE ) 303 5.2.2. VCard Property Definition 305 Property KIND that specifies the kind of object represented, as 306 defined in Section 6.1.4 of [RFC6350]. A new value of 307 "calendarresource" will be used to represent any physical object or 308 device. 310 5.2.3. Mapping of KIND value between LDAP and VCard representations 312 KIND Value Mapping Table: 314 +------------------------------------+------------------+ 315 | LDAP Objectclass | VCard Value | 316 +------------------------------------+------------------+ 317 | person | individual | 318 | groupOfNames or groupOfUniqueNames | group | 319 | device | calendarresource | 320 | room | location | 321 +------------------------------------+------------------+ 323 5.3. Unique ID 325 Description: 326 A Unique Identifier. 328 ValueType: 329 Single string value. 331 Example value: 332 room1-id1 334 5.3.1. LDAP Attribute Definition 336 Definition of the vcarduid LDAP attribute: 338 ( 1.3.6.1.1.x.0.1 339 NAME 'VcardUid' 340 DESC 'VCard UniqueID' 341 EQUALITY caseExactMatch 342 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 343 SINGLE-VALUE ) 345 5.3.2. VCard Property Definition 347 UID property as defined in Section 6.7.6 of [RFC6350]. 349 5.4. Nick Name 351 Description: 352 A short or popular name for the resource. 354 ValueType: 355 String value. 357 Example value: 358 TheOne 360 5.4.1. LDAP Attribute Definition 362 Definition of the nickname LDAP attribute: 364 ( 1.3.6.1.1.x.0.2 365 NAME 'NickName' 366 DESC 'Nick Name' 367 EQUALITY caseIgnoreIA5Match 368 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 ) 370 5.4.2. VCard Property Definition 372 NICKNAME property as defined in Section 6.2.3 of [RFC6350]. 374 5.5. Description 376 Description: 377 Description of the resource. 379 ValueType: 380 String value. 382 Example value: 383 Room 1 in Building X 385 5.5.1. LDAP Attribute Definition 387 description attribute as defined in Section 2.5 of [RFC4519]. 389 5.5.2. VCard Property Definition 391 NOTE property as defined in Section 6.7.2 of [RFC6350]. 393 5.6. Organizational Unit 395 Description: 396 Organizations the resource belongs to. 398 ValueType: 399 String value. 401 Example value: 402 EngineeringDepartment 404 5.6.1. LDAP Attribute Definition 406 ou attribute as defined in Section 2.20 of [RFC4519]. 408 5.6.2. VCard Property Definition 410 ORG property as defined in Section 6.6.4 of [RFC6350]. 412 5.7. Categories 414 Description: 415 Categories the resource falls under or tags for easy discovery of 416 the resource. 418 ValueType: 419 String value. Multi-valued attribute with one attribute per text 420 value in LDAP. One or more text values separated by a COMMA 421 character in VCard property value. 423 Example value: 424 Rooms 426 5.7.1. LDAP Attribute Definition 428 Definition of the categories LDAP attribute: 430 ( 1.3.6.1.1.x.0.3 431 NAME 'Categories' 432 DESC 'Categories' 433 EQUALITY caseIgnoreIA5Match 434 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 ) 436 5.7.2. VCard Property Definition 438 CATEGORIES property as defined in Section 6.7.1 of [RFC6350]. 440 5.8. Group Member 442 Description: 443 List of unique resources in a group of resources object. 445 ValueType: 446 URL value. 448 Example value: 449 http://www.example.com/printer1.html 450 http://www.example.com/printer2.html 452 5.8.1. LDAP Attribute Definition 454 member attribute as defined in Section 2.17 or uniquemember attribute 455 as defined in Section 2.40 of [RFC4519]. 457 5.8.2. VCard Property Definition 459 MEMBER property as defined in Section 6.6.5 of [RFC6350]. 461 5.9. Admittance Info 463 Description: 464 Information required to gain access to the resource. 466 ValueType: 467 Object value. 469 5.9.1. LDAP ObjectClass Definition 471 Definition of the admittanceinfo LDAP objectclass: 473 ( 1.3.6.1.1.x.1.2 474 NAME 'AdmittanceInfo' 475 DESC 'Calendar Resource Admittance Info Class' 476 SUP CalendarResource 477 AUXILIARY 478 MAY (admittanceurl $ restricted) ) 480 5.9.2. Restricted Access 482 Description: 483 Is access to the resource restricted? 485 ValueType: 486 Boolean value. 488 Example value: 489 TRUE 491 5.9.2.1. LDAP Attribute Definition 493 Definition of the restricted LDAP attribute: 495 ( 1.3.6.1.1.x.0.4 496 NAME 'Restricted' 497 DESC 'Access Restricted' 498 EQUALITY booleanMatch 499 SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 500 SINGLE-VALUE ) 502 5.9.2.2. VCard Property Definition 504 Purpose: To specify if access is restricted or not. 506 Type value: A single boolean value. 508 Cardinality: (0,1) 510 ABNF: 511 RESTRICTEDACCESS-param = ; no parameter allowed 512 RESTRICTEDACCESS-value = boolean 514 Example: 515 RESTRICTEDACCESSS:TRUE 517 5.9.3. Admittance Info URL 519 Description: 520 URL pointing to complete information for accessing the resource 521 including getting accessibility rights, special entrances, and so 522 on. 524 ValueType: 525 URL value. 527 Example value: 528 http://www.example.com/room1_admittance.html 530 5.9.3.1. LDAP Attribute Definition 532 Definition of the admittanceurl LDAP attribute: 534 ( 1.3.6.1.1.x.0.5 535 NAME 'AdmittanceURL' 536 DESC 'Cal Resource Admittance Info URL' 537 EQUALITY caseIgnoreIA5Match 538 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 ) 540 5.9.3.2. VCard Property Definition 542 Purpose: To specify URL pointing to Admission Information. 544 Type value: URI. 546 Cardinality: (0,n) 548 ABNF: 549 ADMISSIONINFO-param = "VALUE=uri" / any-param 550 ADMISSIONINFO-value = uri 552 Example: 553 ADMISSIONINFO:http://www.example.com/room1_admittance.html 555 5.10. Accessibility 557 Description: 558 Special resource accessibility info for the physically disabled. 560 ValueType: 561 URL value. 563 Example value: 564 http://www.example.com/room1_specialaccess.html 566 5.10.1. LDAP Attribute Definition 568 Definition of the accessibilityurl LDAP attribute: 570 ( 1.3.6.1.1.x.0.6 571 NAME 'accessibilityURL' 572 DESC 'Cal Resource accessibility Info URL' 573 EQUALITY caseIgnoreIA5Match 574 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 ) 576 5.10.2. VCard Property Definition 578 Purpose: To specify URL pointing to Disabled Access Information. 580 Type value: URI. 582 Cardinality: (0,n) 584 ABNF: 585 ACCESSIBILITYINFO-param = "VALUE=uri" / any-param 586 ACCESSIBILITYINFO-value = uri 588 Example: 589 ACCESSIBILITYINFO:http://www.example.com/room1_specialaccess.html 591 5.11. Capacity 593 Description: 594 Capacity of the resource. 596 ValueType: 597 Integer. 599 Example value: 600 10 602 5.11.1. LDAP Attribute Definition 604 Definition of the capacity LDAP attribute: 606 ( 1.3.6.1.1.x.0.7 607 NAME 'Capacity' 608 DESC 'Cal Resource Capacity' 609 EQUALITY caseIgnoreIA5Match 610 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 ) 612 5.11.2. VCard Property Definition 614 Purpose: To specify Capacity Information. 616 Type value: integer. 618 Cardinality: (0,n) 620 ABNF: 621 CAPACITY-param = "VALUE=integer" / any-param 622 CAPACITY-value = integer 624 Example: 625 CAPACITY:10 627 5.12. Inventory Info 629 Description: 630 Information on resources available as part of this resource. 632 ValueType: 633 Object value. 635 5.12.1. LDAP ObjectClass Definition 637 Definition of the inventoryinfo LDAP attribute: 639 ( 1.3.6.1.1.x.1.3 640 NAME 'InventoryInfo' 641 DESC 'Calendar Resource Inventory Info Class' 642 SUP CalendarResource 643 AUXILIARY 644 MAY (inventorylist $ inventoryurl) ) 646 5.12.2. Inventory List 648 Description: 649 List of resources available as part of this resource. 651 ValueType: 652 String value. Multi-valued attribute with one attribute per text 653 value in LDAP. One or more text values separated by a COMMA 654 character in VCard property value. 656 Example value: 657 Printer 659 5.12.2.1. LDAP Attribute Definition 661 Definition of the inventorylist LDAP attribute: 663 ( 1.3.6.1.1.x.0.8 664 NAME 'InventoryList' 665 DESC 'Inventory List' 666 EQUALITY caseIgnoreIA5Match 667 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 ) 669 5.12.2.2. VCard Property Definition 671 Purpose: List the resources available as part of this resource. 673 Type value: One or more text values separated by a COMMA character 674 (ASCII decimal 44). 676 Cardinality: (0,n) 678 ABNF: 679 INVENTORYLIST-param = "VALUE=text" / any-param 680 INVENTORYLIST-value = text 681 Example: 682 INVENTORYLIST:projector, phone 684 5.12.3. Inventory URL 686 Description: 687 A URL pointing to other resource URLs part of this resource. 689 ValueType: 690 URL value. 692 Example value: 693 http://www.example.com/room1_inventory.html 695 5.12.3.1. LDAP Attribute Definition 697 Definition of the inventoryurl LDAP attribute: 699 ( 1.3.6.1.1.x.0.9 700 NAME 'InventoryURL' 701 DESC 'Cal Resource Inventory Info URL' 702 EQUALITY caseIgnoreIA5Match 703 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 ) 705 5.12.3.2. VCard Property Definition 707 Purpose: To specify URL pointing to Inventory Information. 709 Type value: URI. 711 Cardinality: (0,n) 713 ABNF: 714 INVENTORYURL-param = "VALUE=uri" / any-param 715 INVENTORYURL-value = uri 717 Example: 718 INVENTORYURL:http://www.example.com/room1_inventory.html 720 5.13. Owner 722 Description: 723 Pointer to the owners of the resource. An owner is anyone who has 724 complete authority over the resource, from naming to overall 725 availability. 727 ValueType: 728 URL value. 730 Example value: 731 http://www.example.com/room1_ownerinfo.html 733 5.13.1. LDAP Attribute Definition 735 owner attribute as defined in Section 2.21 of [RFC4519]. 737 5.13.2. VCard Property Definition 739 Purpose: To specify URL pointing to Resource Owner. It MAY refer to 740 something other than a vCard object. 742 Type value: URI. 744 Cardinality: (0,n) 746 ABNF: 747 RESOURCEOWNER-param = "VALUE=uri" / any-param 748 RESOURCEOWNER-value = uri 750 Example: 751 RESOURCEOWNER:http://www.example.com/room1_owner.vcf 753 5.14. Resource Manager 755 Description: 756 Pointer to the managers of the resource. A manager is someone 757 responsible for the day-to-day up keep of the resource. 759 ValueType: 760 URL value. 762 Example value: 763 http://www.example.com/room1_managerinfo.html 765 5.14.1. LDAP Attribute Definition 767 Definition of the resourcemanager LDAP attribute: 769 ( 1.3.6.1.1.x.0.10 770 NAME 'ResourceManager' 771 DESC 'Cal Resource Manager Info' 772 EQUALITY distinguishedNameMatch 773 SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) 775 5.14.2. VCard Property Definition 777 Purpose: To specify URL pointing to Resource Manager. 779 Type value: URI. 781 Cardinality: (0,n) 783 ABNF: 784 RESOURCEMANAGER-param = "VALUE=uri" / any-param 785 RESOURCEMANAGER-value = uri 787 Example: 788 RESOURCEMANAGER:http://www.example.com/room1_manager.vcf 790 5.15. Calendar URL 792 Description: 793 URL to access calendar data of the resource. 795 ValueType: 796 URL value. 798 Example value: 799 http://www.example.com/calendar/home/Room1/calendar/ 801 5.15.1. LDAP Attribute Definition 803 Calendar access attribute calCAPURI as defined in Section 2.4.4.3 and 804 calOtherCAPURIs as defined in Section 2.4.4.7 of [RFC2739] 805 respectively. 807 5.15.2. VCard Property Definition 809 Calendar access property CAPURI as defined in Section 2.3.3 of 810 [RFC2739]. 812 5.16. FreeBusy URL 814 Description: 815 URL to read freebusy information of the resource's calendar. 817 ValueType: 818 URL value. 820 Example value: 821 http://www.example.com/freebusy/home/Room1/ 823 5.16.1. LDAP Attribute Definition 825 Calendar access attribute calFBURL as defined in Section 2.4.4.2 and 826 calOtherFBURLs as defined in Section 2.4.4.6 of [RFC2739] 827 respectively. 829 5.16.2. VCard Property Definition 831 FBURL attribute as defined in Section 2.3.1 of [RFC2739] and further 832 explained in Section 6.9.1 of [RFC6350]. 834 5.17. Scheduling Address 836 Description: 837 Address used for scheduling the resource by a Calendaring and 838 Scheduling service. 840 ValueType: 841 String value. 843 Example value: 844 mailto:room1@example.com 846 5.17.1. LDAP Attribute Definition 848 Scheduling Address attribute calCalAdrURI as defined in Section 849 2.4.4.4 and calOtherCalAdrURIs as defined in Section 2.4.4.8 of 850 [RFC2739] respectively. This is the address that would be used by a 851 Scheduling and Calendaring application to schedule the resource. Its 852 value must be a uri string, in most cases a mailto: uri. The mail 853 attribute value of the resource should be used for scheduling, in the 854 absence of this attribute. 856 5.17.2. VCard Property Definition 858 Scheduling Address property CALADRURI as defined in Section 2.3.2 859 [RFC2739] and further explained in Section 6.9.2 of [RFC6350]. This 860 is the address that would be used by a Scheduling and Calendaring 861 application to schedule the resource. Its value must be a uri 862 string, in most cases a mailto: uri. The EMAIL property value of the 863 resource should be used for scheduling, in the absence of this 864 attribute. 866 5.18. Time Zone 868 Description: 869 TimeZone Identifier for the timezone the resource is in. 871 ValueType: 872 String value. 874 Example value: 875 America/New_York 877 5.18.1. LDAP Attribute Definition 879 Definition of the timezoneid LDAP attribute: 881 ( 1.3.6.1.1.x.0.11 882 NAME 'TimeZoneID' 883 DESC 'Cal Time Zone ID' 884 EQUALITY caseIgnoreIA5Match 885 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 ) 887 5.18.2. VCard Property Definition 889 TimeZone property TZ as defined in Section 6.5.1 of [RFC6350]. 891 5.19. Multiple Bookings 893 Description: 894 Number of simultaneous bookings allowed. 896 ValueType: 897 Integer value. 898 Value of 0 indicates no limits. 900 Example value: 901 1 903 5.19.1. LDAP Attribute Definition 905 Definition of the multiplebookings LDAP attribute: 907 ( 1.3.6.1.1.x.0.12 908 NAME 'Multiplebookings' 909 DESC 'Cal Num Bookings Allowed' 910 EQUALITY integerMatch 911 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 912 SINGLE-VALUE ) 914 5.19.2. VCard Property Definition 916 Purpose: To specify number of simultaneous bookings allowed. 918 Type value: integer. 920 Cardinality: (0,1) 922 ABNF: 923 MULTIBOOK-param = "VALUE=integer" / any-param 924 MULTIBOOK-value = integer 926 Example: 927 MULTIBOOK:10 929 5.20. Maximum Instances 931 Description: 932 Maximum number of instances of an event, the resource can be 933 scheduled for from NOW. 935 ValueType: 936 Integer value. 937 Value of 0 indicates no limits. 939 Example value: 940 60 942 5.20.1. LDAP Attribute Definition 944 Definition of the maxinstances LDAP attribute: 946 ( 1.3.6.1.1.x.0.13 947 NAME 'MaxInstances' 948 DESC 'Cal Maximum Instances allowed' 949 EQUALITY integerMatch 950 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 951 SINGLE-VALUE ) 953 5.20.2. VCard Property Definition 955 Purpose: To specify maximum number of instances of an event, the 956 resource can be scheduled for from NOW. 958 Type value: integer. 960 Cardinality: (0,1) 962 ABNF: 963 MAXINSTANCES-param = "VALUE=integer" / any-param 964 MAXINSTANCES-value = integer 966 Example: 967 MAXINSTANCES:10 969 5.21. BookingWindow Start 971 Description: 972 Defines how much time in advance the resource can be booked. The 973 value of this property is used to calculate the earliest date and 974 time when a resource can be reserved for an event starting on a 975 specific date and time. 976 If this property value is defined, the resource may be booked for 977 an event at a certain time, only if the current time is equal to 978 or after the date and time calculated by subtracting this value 979 from the event's proposed start time. If this property is absent, 980 then the resource may be booked at any time before the end of the 981 booking window. 983 ValueType: Duration value. 984 The format is based on the [ISO.8601.2004] duration representation 985 basic format with designators for the duration of time. The 986 format can represent nominal durations (weeks and days) and 987 accurate durations (hours, minutes, and seconds). The syntax is 988 further defined in Appendix A, "Duration" section of [RFC3339]. 990 Example value: 991 P3M 993 5.21.1. LDAP Attribute Definition 995 Definition of the bookingwindowstart LDAP attribute: 997 ( 1.3.6.1.1.x.0.14 998 NAME 'BookingWindowStart' 999 DESC 'Cal Booking Window Start' 1000 EQUALITY caseIgnoreIA5Match 1001 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 1002 SINGLE-VALUE ) 1004 5.21.2. VCard Property Definition 1006 Purpose: To specify how much time in advance the resource can be 1007 booked. 1009 Type value: duration. 1010 The format is based on the [ISO.8601.2004] duration representation 1011 basic format with designators for the duration of time. The 1012 format can represent nominal durations (weeks and days) and 1013 accurate durations (hours, minutes, and seconds). The syntax is 1014 further defined in Appendix A, "Duration" section of [RFC3339]. 1016 Cardinality: (0,1) 1018 ABNF: 1019 BOOKINGWINDOWSTART-param = "VALUE=text" / any-param 1020 BOOKINGWINDOWSTART-value = text 1022 Example: 1023 BOOKINGWINDOWSTART:P3M 1025 5.22. BookingWindow End 1027 Description: 1028 Defines how much time in advance the resource booking is closed. 1029 The value of this property is used to calculate the latest date 1030 and time when a resource can be reserved for an event starting on 1031 a specific date and time. 1032 If the current time is equal to or before the value obtained by 1033 subtracting BookingWindowEnd from the start date and time of the 1034 event, then the resource may be booked. If this property is 1035 absent, then the resource may be booked anytime from booking 1036 window start to the start of the event. 1037 BookingWindow Start and End together provide the window of time a 1038 resource can be booked, relative to the start time of the event. 1040 If BookingWindowStart = BwS, 1041 BookingWindowEnd = BwE, 1042 Current Time = CT and 1043 Event Start Time = ST, 1044 a resource can be booked at a certain time only if 1045 CT is equal to or after (ST - BwS) 1046 and CT is equal to or before (ST - BwE) 1048 ValueType: Duration value. 1049 The format is based on the [ISO.8601.2004] duration representation 1050 basic format with designators for the duration of time. The 1051 format can represent nominal durations (weeks and days) and 1052 accurate durations (hours, minutes, and seconds). The syntax is 1053 further defined in Appendix A, "Duration" section of [RFC3339]. 1055 Example value: 1056 P5D 1058 5.22.1. LDAP Attribute Definition 1060 Definition of the bookingwindowend LDAP attribute: 1062 ( 1.3.6.1.1.x.0.15 1063 NAME 'BookingWindowEnd' 1064 DESC 'Cal Booking Window End' 1065 EQUALITY caseIgnoreIA5Match 1066 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 1067 SINGLE-VALUE ) 1069 5.22.2. VCard Property Definition 1071 Purpose: To specify how much time in advance the resource booking is 1072 closed. 1074 Type value: duration. 1075 The format is based on the [ISO.8601.2004] duration representation 1076 basic format with designators for the duration of time. The 1077 format can represent nominal durations (weeks and days) and 1078 accurate durations (hours, minutes, and seconds). The syntax is 1079 further defined in Appendix A, "Duration" section of [RFC3339]. 1081 Cardinality: (0,1) 1083 ABNF: 1084 BOOKINGWINDOWEND-param = "VALUE=text" / any-param 1085 BOOKINGWINDOWEND-value = text 1087 Example: 1088 BOOKINGWINDOWEND:P5D 1090 5.23. Scheduling Approval Info 1092 Description: 1093 Information regarding approval of a scheduling request to the 1094 resource. 1096 ValueType: 1097 Object value. 1099 5.23.1. LDAP ObjectClass Definition 1101 Definition of the schedapprovalinfo LDAP objectclass: 1103 ( 1.3.6.1.1.x.1.4 1104 NAME 'SchedApprovalInfo' 1105 DESC 'Calendar Sched Approval Class' 1106 SUP CalendarResource 1107 AUXILIARY 1108 MAY (autoschedule $ approvalinfourl $ schedadmin) ) 1110 5.23.2. Auto schedule 1112 Description: 1113 No approval required. Automatically scheduled. 1115 ValueType: 1116 Boolean value. 1118 Example value: 1119 TRUE 1121 5.23.2.1. LDAP Attribute Definition 1123 Definition of the autoschedule LDAP attribute: 1125 ( 1.3.6.1.1.x.0.16 1126 NAME 'Autoschedule' 1127 DESC 'Cal Scheduling no approval required' 1128 EQUALITY booleanMatch 1129 SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 1130 SINGLE-VALUE ) 1132 5.23.2.2. VCard Property Definition 1134 Purpose: To specify if invitations should be automatically 1135 scheduled. 1137 Type value: Boolean. 1139 Cardinality: (0,1) 1140 ABNF: 1141 AUTOSCHEDULE-param = "VALUE=boolean" / any-param 1142 AUTOSCHEDULE-value = "TRUE" / "FALSE" 1144 Example: 1145 AUTOSCHEDULE:TRUE 1147 5.23.3. Approval Info URL 1149 Description: 1150 URL pointing to complete information on scheduling request 1151 approval process for the resource. 1153 ValueType: 1154 URL value. 1156 Example value: 1157 http://www.example.com/room1_approval.html 1159 5.23.3.1. LDAP Attribute Definition 1161 Definition of the approvalinfourl LDAP attribute: 1163 ( 1.3.6.1.1.x.0.17 1164 NAME 'ApprovalInfoURL' 1165 DESC 'Cal Sched Approval Info' 1166 EQUALITY caseIgnoreIA5Match 1167 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 ) 1169 5.23.3.2. VCard Property Definition 1171 Purpose: To specify URL pointing to Scheduling Approval Information. 1173 Type value: URI. 1175 Cardinality: (0,n) 1177 ABNF: 1178 APPROVALINFO-param = "VALUE=uri" / any-param 1179 APPROVALINFO-value = uri 1181 Example: 1182 APPROVALINFO:http://www.example.com/room1_approval.html 1184 5.23.4. Scheduling Admin Contact 1186 Description: 1187 Contact information for the scheduling approvers, if approval 1188 required. 1190 ValueType: 1191 URL value. 1193 Example value: 1194 http://www.example.com/SchedAdmin1.vcf 1196 5.23.4.1. LDAP Attribute Definition 1198 Definition of the schedadmin LDAP attribute: 1200 ( 1.3.6.1.1.x.0.18 1201 NAME 'SchedAdmin' 1202 DESC 'Cal Sched Admin Info' 1203 EQUALITY distinguishedNameMatch 1204 SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 ) 1206 5.23.4.2. VCard Property Definition 1208 Purpose: To specify URL pointing to Scheduling Manager. 1210 Type value: URI. 1212 Cardinality: (0,n) 1214 ABNF: 1215 SCHEDADMIN-param = "VALUE=uri" / any-param 1216 SCHEDADMIN-value = uri 1218 Example: 1219 SCHEDADMIN:http://www.example.com/SchedAdmin1.vcf 1221 5.24. Cost 1223 Description: 1224 Scheduling costs for this resource. 1226 ValueType: 1227 Object value. 1229 5.24.1. LDAP ObjectClass Definition 1231 Definition of the cost LDAP objectclass: 1233 ( 1.3.6.1.1.x.1.5 1234 NAME 'CalendarResourceCost' 1235 DESC 'Calendar Resource Cost Object Class' 1236 SUP CalendarResource 1237 AUXILIARY 1238 MAY (nocost $ costurl) 1240 5.24.2. Nocost 1242 Description: 1243 No cost for using the resource. Can be used for a resource 1244 scheduling query. 1246 ValueType: 1247 Boolean value. 1249 Example value: 1250 TRUE 1252 5.24.2.1. LDAP Attribute Definition 1254 Definition of the nocost LDAP attribute: 1256 ( 1.3.6.1.1.x.0.19 1257 NAME 'Nocost' 1258 DESC 'Free or Priced resource' 1259 EQUALITY booleanMatch 1260 SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 1261 SINGLE-VALUE ) 1263 5.24.2.2. VCard Property Definition 1265 Purpose: To specify if resource usage is free. 1267 Type value: A single boolean value. 1269 Cardinality: (0,1) 1271 ABNF: 1272 NOCOST-param = ; no parameter allowed 1273 NOCOST-value = boolean 1275 Example: 1276 NOCOST:TRUE 1278 5.24.3. Cost URL 1280 Description: 1281 URL pointing to complete pricing information for usage of the 1282 resource. 1284 ValueType: 1285 URL value. 1287 Example value: 1288 http://www.example.com/cost.html 1290 5.24.3.1. LDAP Attribute Definition 1292 Definition of the costurl LDAP attribute: 1294 ( 1.3.6.1.1.x.0.20 1295 NAME 'CostURL' 1296 DESC 'Cal Resource Cost Info' 1297 EQUALITY caseIgnoreIA5Match 1298 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 ) 1300 5.24.3.2. VCard Property Definition 1302 Purpose: To specify URL pointing Resource Scheduling Cost 1303 Information. 1305 Type value: URI. 1307 Cardinality: (0,n) 1309 ABNF: 1310 COSTINFO-param = "VALUE=uri" / any-param 1311 COSTINFO-value = uri 1313 Example: 1314 COSTINFO:http://www.example.com/cost.html 1316 5.25. Related 1318 Description: 1319 Specify a relationship with another resource. 1321 ValueType: 1322 URL value. 1324 Example value: 1325 http://www.example.com/printer1.html 1327 5.25.1. LDAP Attribute Definition 1329 Definition of the related LDAP attribute: 1331 ( 1.3.6.1.1.x.0.21 1332 NAME 'Related' 1333 DESC 'Related URL' 1334 EQUALITY uniqueMemberMatch 1335 SYNTAX 1.3.6.1.4.1.1466.115.121.1.34 ) 1337 5.25.2. VCard Property Definition 1339 The property RELATED as defined in Section 6.6.6 of [RFC6350]. 1341 6. Examples 1343 6.1. LDAP Examples 1345 6.1.1. Location Resource 1346 dn: cn=Room One,ou=Engineering,dc=example,dc=com 1347 objectclass: top 1348 objectclass: calendarresource 1349 objectclass: admittanceinfo 1350 objectclass: inventoryinfo 1351 objectclass: schedapprovalinfo 1352 objectclass: calendarresourcecost 1353 objectclass: room 1354 vcarduid: room1-id 1355 cn: Room One 1356 ou: Engineering 1357 nickname: The One 1358 description: Room 1 in Engineering Building X 1359 categories: rooms 1360 categories: engineering_resources 1361 restricted: TRUE 1362 admittanceurl: http://www.example.com/room1_admittance.html 1363 accessibilityurl: http://www.example.com/room1_specialaccess.html 1364 capacity: 100 1365 inventorylist: phone 1366 inventorylist: projector 1367 inventoryurl: http://www.example.com/room1_inventory.html 1368 owner: cn=RoomOwner,ou=Engineering,dc=example,dc=com 1369 resourcemanager: cn=RoomOwner,ou=Engineering,dc=example,dc=com 1370 calcapuri: http://www.example.com/calendar/home/Room1/calendar/ 1371 calfburl: http://www.example.com/freebusy/home/Room1/ 1372 calcaladruri: mailto:room1@example.com 1373 timezoneid: America/Los_Angeles 1374 multiplebookings: 1 1375 maxinstances: 10 1376 bookingwindowstart:P3M 1377 bookingwindowend: P3D 1378 autoschedule: FALSE 1379 approvalinfourl: http://www.example.com/room1_approval.html 1380 schedadmin: cn=RoomOwner,ou=Engineering,dc=example,dc=com 1381 nocost: FALSE 1382 costurl: http://www.example.com/cost.html 1384 6.1.2. Role Resources Group 1385 dn: cn=Drivers X,ou=Transportation,dc=example,dc=com 1386 objectclass: top 1387 objectclass: groupOfuniqueNames 1388 objectclass: calendarresource 1389 objectclass: schedapprovalinfo 1390 objectclass: calendarresourcecost 1391 vcarduid: driversX-id 1392 cn: Driver One 1393 ou: Transportation 1394 nickname: The X 1395 description: Drivers in the Transportation department driver pool X 1396 categories: drivers 1397 uniquemember: cn=Driver1,ou=Transportation,dc=example,dc=com 1398 uniquemember: cn=Driver2,ou=Transportation,dc=example,dc=com 1399 uniquemember: cn=Driver3,ou=Transportation,dc=example,dc=com 1400 owner: cn=Transportation_Manager,ou=Transportation,dc=example,dc=com 1401 calfburl: http://www.example.com/freebusy/home/DriversX/ 1402 calcaladruri: mailto:driversX@example.com 1403 timezoneid: America/Los_Angeles 1404 multiplebookings: 3 1405 maxinstances: 10 1406 bookingwindowstart:P3M 1407 bookingwindowend: P3D 1408 autoschedule: FALSE 1409 approvalinfourl: http://www.example.com/driversX_approval.html 1410 schedadmin: cn=TransportationManager,ou=Transportation,dc=example,dc=com 1411 nocost: FALSE 1412 costurl: http://www.example.com/driversXcost.html 1414 6.2. VCard Examples 1416 6.2.1. Location Resource 1417 BEGIN:VCARD 1418 VERSION:4.0 1419 UID:urn:uuid:room1-id 1420 KIND: location 1421 FN: Room One 1422 ORG: Engineering 1423 NICKNAME: The One 1424 NOTE: Room 1 in Engineering Building X 1425 CATEGORIES: rooms, engineering_resources 1426 RESTRICTEDACCESS: TRUE 1427 ADMISSIONINFO: http://www.example.com/room1_admittance.html 1428 ACCESSIBILITYINFO: http://www.example.com/room1_specialaccess.html 1429 CAPACITY: 100 1430 INVENTORYLIST: phone, projector 1431 INVENTORYURL: http://www.example.com/room1_inventory.html 1432 RESOURCEOWNER: http://www.example.com/ResOwner1.vcf 1433 RESOURCEMANAGER: http://www.example.com/ResManager1.vcf 1434 CAPURI: http://www.example.com/calendar/home/Room1/calendar/ 1435 FBURL: http://www.example.com/freebusy/home/Room1/ 1436 CALADRURI: mailto:room1@example.com 1437 TZ: America/Los_Angeles 1438 MULTIBOOK: 1 1439 MAXINSTANCES: 10 1440 BOOKINGWINDOWSTART:P3M 1441 BOOKINGWINDOWEND: P3D 1442 AUTOSCHEDULE: FALSE 1443 APPROVALINFO: http://www.example.com/room1_approval.html 1444 SCHEDADMIN: http://www.example.com/SchedAdmin1.vcf 1445 NOCOST: FALSE 1446 COSTINFO: http://www.example.com/cost.html 1447 END:VCARD 1449 6.2.2. Role Resources Group 1450 BEGIN:VCARD 1451 VERSION:4.0 1452 UID:urn:uuid:driverXPool-id 1453 KIND: group 1454 FN: Driver X Pool 1455 ORG: Transportation 1456 NICKNAME: The X Group 1457 NOTE: Drivers in the Transportation department driver pool X 1458 CATEGORIES: drivers 1459 MEMBER:urn:uuid:driver1-id 1460 MEMBER:urn:uuid:driver2-id 1461 MEMBER:urn:uuid:driver3-id 1462 RESOURCEOWNER: http://www.example.com/DriversManager.vcf 1463 FBURL: http://www.example.com/freebusy/home/DriversX/ 1464 CALADRURI: mailto:driversX@example.com 1465 TZ: America/Los_Angeles 1466 MULTIBOOK: 3 1467 MAXINSTANCES: 10 1468 BOOKINGWINDOWSTART:P3M 1469 BOOKINGWINDOWEND: P3D 1470 AUTOSCHEDULE: FALSE 1471 APPROVALINFO: http://www.example.com/driversX_approval.html 1472 SCHEDADMIN: http://www.example.com/DriversX_SchedAdmin.vcf 1473 NOCOST: FALSE 1474 COSTINFO: http://www.example.com/driversXcost.html 1475 END:VCARD 1477 7. Security Considerations 1479 As this document only defines schema for representing resource 1480 information for calendaring and scheduling and does not refer to the 1481 actual storage mechanism itself, or the calendaring and scheduling 1482 protocol, no special security considerations are required as part of 1483 this document. 1485 8. IANA Considerations 1487 8.1. LDAP Objectclass and Attribute Registration 1489 New LDAP objectclasses and attributes defined in this document need 1490 to be registered by the Internet Assigned Numbers Authority (IANA) as 1491 requested in the following template. Once the assignment is done, 1492 this document needs to be updated with the right OID numbers for all 1493 the newly defined objectclasses and attributes. 1495 Subject: Request for LDAP Descriptor Registration 1496 Descriptor (short name): See table below 1497 Object Identifier: See table below 1498 Person & email address to contact for further information: 1499 Ciny Joy 1500 Usage: See table below 1501 Specification: draft-cal-resource-schema 1502 Author/Change Controller: IESG 1504 New LDAP ObjectClass and Attributes Table: 1506 +-------------------+------------+----------------+-----------------+ 1507 | Name | Type | Definition | OID | 1508 +-------------------+------------+----------------+-----------------+ 1509 | CalendarResource | ObjectClas | Section 4.1 | IANA-ASSIGNED-O | 1510 | | s | | ID | 1511 | Kind | Attribute | Section 5.2.1. | IANA-ASSIGNED-O | 1512 | | | 1 | ID | 1513 | VcardUid | Attribute | Section 5.3.1 | IANA-ASSIGNED-O | 1514 | | | | ID | 1515 | NickName | Attribute | Section 5.4.1 | IANA-ASSIGNED-O | 1516 | | | | ID | 1517 | Categories | Attribute | Section 5.7.1 | IANA-ASSIGNED-O | 1518 | | | | ID | 1519 | AdmittanceInfo | ObjectClas | Section 5.9.1 | IANA-ASSIGNED-O | 1520 | | s | | ID | 1521 | Restricted | Attribute | Section 5.9.2. | IANA-ASSIGNED-O | 1522 | | | 1 | ID | 1523 | AdmittanceURL | Attribute | Section 5.9.3. | IANA-ASSIGNED-O | 1524 | | | 1 | ID | 1525 | AccessibilityURL | Attribute | Section 5.10.1 | IANA-ASSIGNED-O | 1526 | | | | ID | 1527 | Capacity | Attribute | Section 5.11.1 | IANA-ASSIGNED-O | 1528 | | | | ID | 1529 | InventoryInfo | ObjectClas | Section 5.12.1 | IANA-ASSIGNED-O | 1530 | | s | | ID | 1531 | InventoryList | Attribute | Section 5.12.2 | IANA-ASSIGNED-O | 1532 | | | .1 | ID | 1533 | InventoryURL | Attribute | Section 5.12.3 | IANA-ASSIGNED-O | 1534 | | | .1 | ID | 1535 | ResourceManager | Attribute | Section 5.14.1 | IANA-ASSIGNED-O | 1536 | | | | ID | 1537 | TimeZoneID | Attribute | Section 5.18.1 | IANA-ASSIGNED-O | 1538 | | | | ID | 1539 | MultipleBookings | Attribute | Section 5.19.1 | IANA-ASSIGNED-O | 1540 | | | | ID | 1541 | MaxInstances | Attribute | Section 5.20.1 | IANA-ASSIGNED-O | 1542 | | | | ID | 1543 | BookingWindowStar | Attribute | Section 5.21.1 | IANA-ASSIGNED-O | 1544 | t | | | ID | 1545 | BookingWindowEnd | Attribute | Section 5.22.1 | IANA-ASSIGNED-O | 1546 | | | | ID | 1547 | SchedApprovalInfo | ObjectClas | Section 5.23.1 | IANA-ASSIGNED-O | 1548 | | s | | ID | 1549 | Autoschedule | Attribute | Section 5.23.2 | IANA-ASSIGNED-O | 1550 | | | .1 | ID | 1551 | ApprovalInfoURL | Attribute | Section 5.23.3 | IANA-ASSIGNED-O | 1552 | | | .1 | ID | 1553 | SchedAdmin | Attribute | Section 5.23.4 | IANA-ASSIGNED-O | 1554 | | | .1 | ID | 1555 | CalendarResourceC | ObjectClas | Section 5.24.1 | IANA-ASSIGNED-O | 1556 | ost | s | | ID | 1557 | Nocost | Attribute | Section 5.24.2 | IANA-ASSIGNED-O | 1558 | | | .1 | ID | 1559 | CostURL | Attribute | Section 5.24.3 | IANA-ASSIGNED-O | 1560 | | | .1 | ID | 1561 | Related | Attribute | Section 5.25.1 | IANA-ASSIGNED-O | 1562 | | | | ID | 1563 +-------------------+------------+----------------+-----------------+ 1565 8.2. VCard Property and Value Registration 1567 The following new VCard Properties need to be registered by IANA. 1569 New VCard Properties Table: 1571 +---------------------+---------------------------+ 1572 | VCard Property Name | VCard Property Definition | 1573 +---------------------+---------------------------+ 1574 | RESTRICTEDACCESS | Section 5.9.2.2 | 1575 | ADMISSIONINFO | Section 5.9.3.2 | 1576 | ACCESSIBILITYINFO | Section 5.10.2 | 1577 | CAPACITY | Section 5.11.2 | 1578 | INVENTORYLIST | Section 5.12.2.2 | 1579 | INVENTORYURL | Section 5.12.3.2 | 1580 | RESOURCEOWNER | Section 5.13.2 | 1581 | RESOURCEMANAGER | Section 5.14.2 | 1582 | MAXINSTANCE | Section 5.20.2 | 1583 | BOOKINGWINDOWSTART | Section 5.21.2 | 1584 | BOOKINGWINDOWEND | Section 5.22.2 | 1585 | AUTOSCHEDULE | Section 5.23.2.2 | 1586 | APPROVALINFO | Section 5.23.3.2 | 1587 | SCHEDADMIN | Section 5.23.4.2 | 1588 | NOCOST | Section 5.24.2.2 | 1589 | COSTINFO | Section 5.24.3.2 | 1590 +---------------------+---------------------------+ 1592 The following new VCard Property Values need to be registered by 1593 IANA. 1595 New VCard Property Values Table: 1597 +-------------------+-----------------------------+-----------------+ 1598 | VCard Property | Additional VCard Property | Value | 1599 | Name | Value | Definition | 1600 +-------------------+-----------------------------+-----------------+ 1601 | KIND | calendarresource | Section 5.2.2 | 1602 +-------------------+-----------------------------+-----------------+ 1604 9. Recommendations for Calendaring Systems 1606 While this document does not mandate how each of the defined 1607 attribute values must be used by calendaring systems, here are some 1608 recommendations: 1610 1. BookingWindow Start (Section 5.21), Booking Window End 1611 (Section 5.22), and Multiple Bookings (Section 5.19) information 1612 should be used in freebusy calculations. A query for a time slot 1613 that falls outside the booking window or one that already has the 1614 maximum allowed number of simultaneous bookings, must be returned 1615 as BUSY_UNAVAILABLE. 1617 2. Calendaring systems that support the auto schedule 1618 (Section 5.23.2) attribute, should automatically mark the 1619 attendee PARTSTAT for a resource as ACCEPTED, if its auto 1620 schedule value is TRUE and the scheduling is successful. If 1621 owner approval is required, the PARTSTAT could be automatically 1622 marked as TENTATIVE. 1624 3. Information like Capacity (Section 5.11) can be used by 1625 calendaring systems to warn end users if the number of attendees 1626 exceed the capacity value. 1628 10. Acknowledgments 1630 This specification is a result of discussions that took place within 1631 the Calendaring and Scheduling Consortium's Resource Technical 1632 Committee. The authors thank the participants of that group, and 1633 specifically the following individuals for contributing their ideas 1634 and support: Arnaud Quillaud, Adam Lewenberg, Andrew Laurence, Guy 1635 Stalnaker, Mimi Mugler, Dave Thewlis, Bernard Desruisseaux, Alain 1636 Petit, Andrew Sciberras, and Jason Miller. 1638 11. Normative References 1640 [ISO.8601.2004] International Organization for Standardization, 1641 "Data elements and interchange formats -- 1642 Information interchange -- Representation of dates 1643 and times", 2004. 1645 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1646 Requirement Levels", BCP 14, RFC 2119, March 1997. 1648 [RFC2739] Small, T., Hennessy, D., and F. Dawson, "Calendar 1649 Attributes for vCard and LDAP", RFC 2739, 1650 January 2000. 1652 [RFC3339] Klyne, G., Ed. and C. Newman, "Date and Time on the 1653 Internet: Timestamps", RFC 3339, July 2002. 1655 [RFC4519] Sciberras, A., "Lightweight Directory Access 1656 Protocol (LDAP): Schema for User Applications", 1657 RFC 4519, June 2006. 1659 [RFC4524] Zeilenga, K., "COSINE LDAP/X.500 Schema", RFC 4524, 1660 June 2006. 1662 [RFC6350] Perreault, S., "vCard Format Specification", 1663 RFC 6350, August 2011. 1665 Authors' Addresses 1667 Ciny Joy 1668 Oracle Corporation 1669 4210 Network Circle 1670 Santa Clara, CA 95054 1671 USA 1673 EMail: ciny.joy@oracle.com 1674 URI: http://www.oracle.com/ 1676 Cyrus Daboo 1677 Apple Inc. 1678 1 Infinite Loop 1679 Cupertino, CA 95014 1680 USA 1682 EMail: cyrus@daboo.name 1683 URI: http://www.apple.com/ 1684 Michael Douglass 1685 Rensselaer Polytechnic Institute 1686 110 8th Street 1687 Troy, NY 12180 1688 USA 1690 EMail: douglm@rpi.edu 1691 URI: http://www.rpi.edu/