Internet Engineering Task Force SIMPLE WG Internet Draft Rosenberg, et. al. draft-ietf-simple-winfo-format-00.txt Various Organizations July 13, 2001 Expires: January 2002 An XML Based Format for Watcher Information STATUS OF THIS MEMO 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 http://www.ietf.org/ietf/1id-abstracts.txt To view the list Internet-Draft Shadow Directories, see http://www.ietf.org/shadow.html. Abstract Watchers are defined as entities that request (i.e., subscribe to) information about a user. There is fairly complex state associated with an event subscription, and this state is dynamic. As a result, it is possible, and indeed useful, to subscribe to the watcher information for a particular subscriber. In order to enable this, a format is needed to describe the state of watchers. This specification describes an XML document format for such state. 1 Introduction Watchers are defined as entities that request (i.e., subscribe to) information about a user. There is fairly complex state associated with an event subscription, and this state is dynamic. As a result, it is possible, and indeed useful, to subscribe to the watcher Rosenberg, et. al. [Page 1] Internet Draft Watcher Info July 13, 2001 information for a particular subscriber. In order to enable this, a format is needed to describe the state of watchers. This specification describes an XML document format for such state. 2 Structure of Watcher Information Watcher information is an XML document that begins with the root element tag "watcherinfo". It consists of any number of "presentity" sub-elements, describing all the presentities being watched. Each presentity element has an attribute giving the URI at which the watching subscribers subscribed to the presentity; it contains as sub-elements a list of the watchers watching this presentity. The watcher element describes a user watching the enclosing presentity. The mandatory attributes of the watcher element are: uri: The identity of the watcher, expressed as a URI. For SIP for presence [1] this is the URI from the From header of the SUBSCRIBE request. Rosenberg, et. al. [Page 2] Internet Draft Watcher Info July 13, 2001 status: The status of the subscription. The meaning of the various statuses are defined in the watcher information event package [2]. Briefly, pending means that the subscription is awaiting authorization. Active means its generating notifications. Waiting means that is awaiting authorization but has expired. Terminated means its been destroyed. event: The event which caused the transition to the current status. The events are defined in the watcher information event package [2]. Briefly, subscribe means that a subscription was requested. Rejected means that the subscription was rejected as a result of an authorization decision. Approved means that the subscription was approved as the result of an authorization decision. Deactivated means that the subscription state has been removed, but there has been no change in authorization state. Expired means that the subscription was not refreshed. Timeout means that the server has ceased waiting for authorization. There are also two optional, informative attributes of the watcher element. These are: duration: The amount of time, in seconds, that the subscription was in the previous state before transitioning to the state described in the status parameter. first-subscribed: The date and time, expressed as an integral number of seconds since January 1, 1970, 00:00 UTC, when the very first SUBSRIBE by this watcher for this presentity was sent. This date and time remains unchanged even if the subscription expires and is later refreshed. most-recently-subscribed: The date and time, also expressed as seconds since January 1 1970, 00:00 UTC, when the subscription was most recently refreshed. This is only relevant for pending and active subscriptions. notify-address: The address, expressed as a URI, to which notifications are being delivered. For SIP for presence, this is the value of the Contact URI in the SUBSCRIBE. The information contained within the watcher tag is a textual representation (encoded in UTF-8) of the name of the subscriber. It is optional. The number of watchers present for each presentity, and the set of presentities listed, depends on the type of data being provided, and Rosenberg, et. al. [Page 3] Internet Draft Watcher Info July 13, 2001 to whom. In the case where a watcher has asked for notification of approval of their subscription, the watcher list typically contains only the watcher information for that one watcher, for that one presentity. In the case where a user wishes to find out the list of users subscribed to his presentity, the list typically contains multiple watchers for a single presentity. In the case where an administrator wishes to learn the current status in the system, the list contains all watchers for all presentities. Which case to use depends on either modifiers to the subscription described in the body of the SUBSCRIBE, or policy information configured at the presence agent. 3 Document Identifiers A watcher information document which appears as a top-level XML document is identified with the formal public identifier "- //IETF//DTD RFCxxxx XWATCHER 1.0//EN". If this document is published as an RFC, "xxxx" will be replaced by the RFC number. Watcher lists have the MIME type "application/watcherinfo+xml". The "+xml" component of the type name conforms with the format of XML MIME types introduced by Murata et al [3] A watcher list embedded as a fragment within another XML document is identified with the XML namespace identifier "http://www.ietf.org/internet-drafts/draft-ietf-simple-winfo-format- 00.txt". If this document is published as an RFC, the namespace identifier will be "http://www.rfc-editor.org/rfc/rfcxxxx.txt", where xxxx is the RFC number. Note that the URIs specifying XML namespaces are only globally unique names; they do not have to reference any particular actual object. The URI of a canonical source of this specification meets the requirement of being globally unique, and is also useful to document the format. 4 Example The following is an example of watcher information for a presentity, who is a professor. There are two watchers, one from a university, and another from an organization. Rosenberg, et. al. [Page 4] Internet Draft Watcher Info July 13, 2001 Mr. Subscriber 5 XML DTD 6 Security Considerations Watcher information is sensitive information. The protocol used to distribute it SHOULD ensure privacy, message integrity and Rosenberg, et. al. [Page 5] Internet Draft Watcher Info July 13, 2001 authentication. Furthermore, the protcol should provide access controls which restrict who can see who elses watcher information. 7 Authors Addresses Jonathan Rosenberg dynamicsoft 72 Eagle Rock Avenue East Hanover, NJ 07936 email: jdrosen@dynamicsoft.com Dean Willis dynamicsoft 5100 Tennyson Parkway, Suite 1200 Plano, Texas 75024 email: dwillis@dynamicsoft.com Robert Sparks dynamicsoft 5100 Tennyson Parkway, Suite 1200 Plano, Texas 75024 email: rsparks@dynamicsoft.com Ben Campbell dynamicsoft 5100 Tennyson Parkway, Suite 1200 Plano, Texas 75024 email: bcampbell@dynamicsoft.com Henning Schulzrinne Columbia University M/S 0401 1214 Amsterdam Ave. New York, NY 10027-7003 email: schulzrinne@cs.columbia.edu Jonathan Lennox Columbia University M/S 0401 1214 Amsterdam Ave. New York, NY 10027-7003 email: lennox@cs.columbia.edu Christian Huitema Microsoft Corporation One Microsoft Way Redmond, WA 98052-6399 Rosenberg, et. al. [Page 6] Internet Draft Watcher Info July 13, 2001 email: huitema@microsoft.com Bernard Aboba Microsoft Corporation One Microsoft Way Redmond, WA 98052-6399 email: bernarda@microsoft.com David Gurle Microsoft Corporation One Microsoft Way Redmond, WA 98052-6399 email: dgurle@microsoft.com 8 Bibliography [1] J. Rosenberg et al. , "SIP extensions for presence," Internet Draft, Internet Engineering Task Force, Apr. 2001. Work in progress. [2] J. Rosenberg, "A SIP event sub-package for watcher information," Internet Draft, Internet Engineering Task Force, July 2001. Work in progress. [3] M. Murata, S. S. Laurent, and D. Kohn, "XML media types," Request for Comments 3023, Internet Engineering Task Force, Jan. 2001. Rosenberg, et. al. [Page 7]