Network Working Group J. Stracke, eCal Corp. INTERNET DRAFT Expires May, 2000 November 17, 1999 vCard Extensions For Presence Information 1 Status of this Document This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. 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.'' The list of current Internet-Drafts can be accessed at The list of Internet-Draft Shadow Directories can be accessed at Distribution of this document is unlimited. Please send comments to francis@ecal.com or to the impp@iastate.edu discussion list. 2 Abstract This document specifies an extension to the [VCARD] format for carrying presence information. This is intended as an alternative to developing an XML-based presence format. Table of Contents 1 Status of this Document 2 Abstract 3 Introduction 3.1 Change history 4 Extension definition 4.1 Instant Message Address 4.2 Using other types of COMMUNICATION ADDRESS 4.3 Supporting OTHER PRESENCE MARKUP 5 Compatibility Considerations 6 Internationalization Considerations 7 IANA Considerations 8 Security Considerations 9 Copyright 10 Intellectual Property 11 Acknowledgements 12 References 13 Author's Address Stracke [Page 1] INTERNET-DRAFT vCard Presence November 17, 1999 3 Introduction This document specifies an extension to the [VCARD] format for carrying presence information. This is intended as an alternative to developing an XML-based presence format. The IMPP working group has been discussing an XML-based format for presence information. However, as we dig deeper into the problem, it's turning out that we want to carry much of the same data as [VCARD]. This is likely lead us into unnecessary work and unnecessary arguments. Rather than start from scratch, this document proposes that we simply adopt [VCARD] and add the types and parameters we need. Each vCard type then becomes a PRESENCE TUPLE, as defined in [IMPP-MODEL]. Note that this document is not meant to be complete; it is meant to meet the minimal requirements on a presence schema to be used with instant messaging, as per Section 7.4 of [IMPP-REQTS]. It is expected that, if this proposal is adopted, the schema will need to be extended for other PRESENCE INFORMATION. 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 [MUSTS] . 3.1 Change history o -02: o Explaining that we don't need a new version number. Thanks to Frank Dawson for confirming my interpretation of RFC-2426. o -01: o A TYPE= parameter on IMADDR (as for TEL). (Suggested by Mark Baker.) o Explain that STATUS is a parameter so that it can be associated with different IMADDRs. o Exploring the possibility of putting STATUS on every vCard type. o Explaining that this is just the *minimal* presence schema, as per 7.4 of the requirements. o Making it clearer that the impp: URI isn't defined anywhere; it's just here as an example, because this proposal is independent of the syntax of IM addresses. o Incorporate Frank's comments that a program that accepts vCards must ignore unknown types. o Defining EXPIRES and LASTMOD. o Adding sections on how to handle other types of COMMUNICATION ADDRESS and how to provide OTHER PRESENCE MARKUP. (Typos fixed do not show up in the change history.) 4 Extension definition Rather than using the "X-" private extension syntax of Section 3.8 of [VCARD], this document proposes a new standard type. This new type Stracke [Page 2] INTERNET-DRAFT vCard Presence November 17, 1999 does not require a new version number; Section 3.6.9 of [VCARD] says, "The value [of VERSION] MUST be '3.0' if the vCard corresponds to this specification", and vCards using this proposed extension would still be following the RFC-2426 specification. 4.1 Instant Message Address (Note that this section has not actually been sent to ietf-mime-directory@imc.org, since it's not yet complete.) To: ietf-mime-directory@imc.org Subject: Registration of text/directory MIME type IMADDR Type name: IMADDR Type purpose: To specify an INSTANT INBOX ADDRESS (see Section 4 of [IMPP-MODEL]) at which the object that the vCard refers to can receive messages. Type encoding: 8bit Type valuetype: A single text value. Type special notes: The exact format of this type is not yet determined at this time; it would be the preferred format for INSTANT INBOX ADDRESSes, whatever that turns out to be. The two contenders at the moment are URI format (possibly impp:, but nothing's been formally defined) and [ADDRESS-FORMAT] extended-email format. The type can include the type parameter "STATUS", which reports the STATUS (see Section 4 of [IMPP-MODEL]) associated with the given INSTANT INBOX ADDRESS. For the required STATUS values OPEN and CLOSED, the strings used are "OPEN" and "CLOSED", respectively (these values are not case-sensitive). The type can include the type parameter "TYPE", analogous to the type parameter "TYPE" of TEL (see Section 3.3.1 of [VCARD]). Possible values include: o "home", to indicate an INSTANT INBOX ADDRESS associated with a residence. o "work", to indicate an INSTANT INBOX ADDRESS associated with a place of work. o "pref", to indicate a preferred-use INSTANT INBOX ADDRESS. o "pager", to indicate an INSTANT INBOX ADDRESS associated with a pager or other wireless device. These type parameter values can be specified as a parameter list (i.e., "TYPE=work;TYPE=pager") or as a value list (i.e., "TYPE=work,pager"). The type can include the type parameter "LASTMOD", of type date-time, which reports the last time the STATUS parameter was known to be true. Stracke [Page 3] INTERNET-DRAFT vCard Presence November 17, 1999 The type can include the type parameter "EXPIRES", of type date-time, which reports the earliest time by which the STATUS parameter is expected to be invalid. Type examples: IMADDR:TYPE=pref;STATUS=closed;LASTMOD=1999-11-20T18:33:00Z; impp://example.com/joeUser IMADDR:TYPE=work;STATUS=open;impp=joeUser@example.com 4.2 Using other types of COMMUNICATION ADDRESS [IMPP-MODEL] anticipates that PRESENCE INFORMATION will not be just for instant messaging (and [IMPP-REQTS] requires that the two be separable). PRESENCE INFORMATION is defined to consist of one or more PRESENCE TUPLES, and a PRESENCE TUPLE is defined to consist of STATUS, a COMMUNICATION ADDRESS, and optional OTHER PRESENCE MARKUP. The extension above provides for PRESENCE TUPLEs whose COMMUNICATION ADDRESSes are INSTANT INBOX ADDRESSes, but we need to support other COMMUNICATION MEANS as well. It is proposed that the STATUS, EXPIRES and LASTMOD type parameters of IMADDR be defined to apply to all vCard types which specify COMMUNICATION ADDRESSes. The applicable types from [VCARD] are: o ADR o LABEL o TEL o EMAIL 4.3 Supporting OTHER PRESENCE MARKUP OTHER PRESENCE MARKUP can supported by defining further type parameters. 5 Compatibility Considerations The formal grammar in Section 4 of [VCARD] says that any iana-token (that is, any type registered with IANA) is legal in a vCard, even if it did not occur in the original RFC. Since code cannot tell whether a token is registered or not, this means that existing implementations ignore types they do not recognize. As a result, it is safe to pass a vCard which includes the IMADDR type to an existing implementation. 6 Internationalization Considerations This proposal builds on [VCARD] which builds on [TEXT-DIRECTORY], which provides internationalization capabilities: the character set is specified by the "charset" parameter of the text/directory Content-Type (see Section 5.3 of [VCARD]) and the language is specified by the MIME Content-Language header and the "language" type parameter (see Section 5.8.3 of [VCARD]). Stracke [Page 4] INTERNET-DRAFT vCard Presence November 17, 1999 7 IANA Considerations This proposal does not introduce any new IANA considerations, as it does not define any new namespaces. 8 Security Considerations This proposal does not introduce any new security considerations over those in [VCARD] and [IMPP-MODEL]. 9 Copyright The following copyright notice is copied from RFC-2026 [Bradner, 1996], section 10.4, and describes the applicable copyright for this document. Copyright (C) The Internet Society April 5, 1998. All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assignees. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 10 Intellectual Property The following notice is copied from RFC-2026 [Bradner, 1996], section 10.4, and describes the position of the IETF concerning intellectual property claims made against this document. The IETF takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use other technology described in this document or the extent to which any license under such rights Stracke [Page 5] INTERNET-DRAFT vCard Presence November 17, 1999 might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on the IETF's procedures with respect to rights in standards-track and standards-related documentation can be found in BCP-11. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification can be obtained from the IETF Secretariat. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to practice this standard. Please address the information to the IETF Executive Director. 11 Acknowledgements Thanks to: o Frank Dawson for some clarifications on the vCard spec, and for bringing up the issue of grouping. o Graham Klyne, Greg Hudson, and Larry Masinter for raising objections which showed I needed to explain myself better. o Mark Baker for suggesting the TYPE= parameter. 12 References [VCARD] F. Dawson, T. Howes, "vCard MIME Directory Profile." RFC-2426 . Lotus Development Corporation; Netscape Communications. September, 1998. [TEXT-DIRECTORY] T. Howes, M. Smith, F. Dawson, "A MIME Content-Type for Directory Information." RFC-2425. Netscape Communications; Netscape Communications; Lotus Development Corporation. September, 1998. [IMPP-MODEL] M. Day, J. Rosenberg, "A Model for Presence and Instant Messaging". draft-ietf-impp-model-03.txt. Internet Draft, work in progress. Lotus; Bell Labs. June, 1999. [IMPP-REQTS] M. Day, S. Aggarawal, G. Mohr, J. Vincent, "Instant Messaging / Presence Protocol Requirements." draft-ietf-impp-reqts-03.txt. Internet Draft, work in progress. Lotus; Microsoft; Activerse; Arepa. June, 1999. [ADDRESS-FORMAT] C. Allocchio, "Minimal PSTN address format in Internet Mail." RFC-2303. GARR-Italy. March, 1998. [MUSTS] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels," BCP 14, RFC-2119, Harvard University, March 1997. 13 Author's Address Stracke [Page 6] INTERNET-DRAFT vCard Presence November 17, 1999 J. Stracke eCal Corp. 234 N. Columbus Blvd., 2nd Floor Philadelphia, PA 94043 francis@ecal.com Stracke [Page 7]