Internet DRAFT - draft-ietf-simple-pres-policy-caps
draft-ietf-simple-pres-policy-caps
SIMPLE J. Rosenberg
Internet-Draft Cisco Systems
Expires: December 28, 2006 June 26, 2006
An Extensible Markup Language (XML) Representation for Expressing
Presence Policy Capabilities
draft-ietf-simple-pres-policy-caps-01
Status of this Memo
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79.
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.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on December 28, 2006.
Copyright Notice
Copyright (C) The Internet Society (2006).
Abstract
An important component of presence services is policy. Policy
systems allow the presentity to grant access to specific pieces of
information to specific watchers. To allow for interoperability
between clients which set such policies, and servers which execute
them, it is necessary for clients to be able to determine the
capabilities of the server to which it is connected. This
specification defines a set of Extensible Markup Language (XML)
elements for expressing presence policy capabilities.
Rosenberg Expires December 28, 2006 [Page 1]
Internet-Draft Presence Policy Capabilities June 2006
Table of Contents
1. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Structure of Presence Policy Capabilities . . . . . . . . . . 3
4. XML Schema . . . . . . . . . . . . . . . . . . . . . . . . . . 4
5. Example Document . . . . . . . . . . . . . . . . . . . . . . . 5
6. Security Considerations . . . . . . . . . . . . . . . . . . . 6
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
7.1. URN Sub-Namespace Registrations . . . . . . . . . . . . . 6
7.2. XML Schema Registration . . . . . . . . . . . . . . . . . 7
8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 7
8.1. Normative References . . . . . . . . . . . . . . . . . . . 7
8.2. Informative References . . . . . . . . . . . . . . . . . . 8
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 9
Intellectual Property and Copyright Statements . . . . . . . . . . 10
Rosenberg Expires December 28, 2006 [Page 2]
Internet-Draft Presence Policy Capabilities June 2006
1. Terminology
In this document, the key words "MUST", "MUST NOT", "REQUIRED",
"SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",
and "OPTIONAL" are to be interpreted as described in RFC 2119 [3] and
indicate requirement levels for compliant implementations.
2. Introduction
An important component of presence [5] is policy. Policy systems
allow the presentity to grant access to specific pieces of
information to specific watchers. These policy systems can be
extremely simple or extremely complex. For this reason [1] defines a
generic Extensible Markup Language (XML) based format for
representing policy capabilities. That format applies to many
services, including location and presence. This specification
extends that one by defining policy capabilities specific to
presence. Those policy capabilities correspond to the conditions,
actions and transformations defined in [2].
3. Structure of Presence Policy Capabilities
[1] defines the structure of common policy capability documents. In
that specification, each policy capability document has three
components - a list of supported conditions, a list of supported
actions, and a list of supported transformations. This specification
merely extends that document with the conditions, actions and
transformations defined in [2]. It does so by defining the elements
<provide-services>, <provide-devices> and <provide-person>, each of
which is a presence transformation that the server can support.
Furthermore, each of those includes elements that define the specific
ways of identifying services, devices and persons, respectively.
The document also defines capabilities for transformations that
provide individual presence attributes, including <provide-
activities>, <provide-class>, <provide-device-id>, <provide-mood>,
<provide-place-is>, <provide-place-type>, <provide-privacy>,
<provide-relationship>, <provide-status-icon>, <provide-sphere>,
<provide-time-offset>, <provide-user-input>, <provide-note>,
<component-id>, <provide-unknown-attribute>, and <provide-all-
attributes>, each of which is a boolean indicating whether that
transformation is supported.
Finally, this document defines the <sub-handling> element, which is a
boolean indicating whether or not the corresponding action is
supported.
Rosenberg Expires December 28, 2006 [Page 3]
Internet-Draft Presence Policy Capabilities June 2006
OPEN ISSUE: should we define capabilities for specific values of
sub-handling and component-id?
All of these elements are defined within the namespace:
urn:ietf:params:xml:ns:presence-policy-capabilities
4. XML Schema
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema
targetNamespace="urn:ietf:params:xml:ns:presence-policy-capabilities"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:cc="urn:ietf:params:xml:ns:policy-capabilities"
xmlns:pc="urn:ietf:params:xml:ns:presence-policy-capabilities"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:import namespace="urn:ietf:params:xml:ns:policy-capabilities"
schemaLocation="sbase.xsd"/>
<xs:element name="provide-services">
<xs:complexType>
<xs:sequence>
<xs:element name="service-uri" type="cc:emptyType" minOccurs="0"/>
<xs:element name="service-uri-scheme" type="cc:emptyType" minOccurs="0"/>
<xs:element name="instance-id" type="cc:emptyType" minOccurs="0"/>
<xs:element name="class" type="cc:emptyType" minOccurs="0"/>
<xs:any namespace="##other" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="provide-devices">
<xs:complexType>
<xs:sequence>
<xs:element name="device-id" type="cc:emptyType" minOccurs="0"/>
<xs:element name="instance-id" type="cc:emptyType" minOccurs="0"/>
<xs:element name="class" type="cc:emptyType" minOccurs="0"/>
<xs:any namespace="##other" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="provide-person">
<xs:complexType>
<xs:sequence>
<xs:element name="instance-id" type="cc:emptyType" minOccurs="0"/>
<xs:element name="class" type="cc:emptyType" minOccurs="0"/>
<xs:any namespace="##other" minOccurs="0"/>
Rosenberg Expires December 28, 2006 [Page 4]
Internet-Draft Presence Policy Capabilities June 2006
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="provide-activities" type="cc:emptyType"/>
<xs:element name="provide-class" type="cc:emptyType"/>
<xs:element name="provide-device-id" type="cc:emptyType"/>
<xs:element name="provide-mood" type="cc:emptyType"/>
<xs:element name="provide-place-is" type="cc:emptyType"/>
<xs:element name="provice-place-type" type="cc:emptyType"/>
<xs:element name="provide-privacy" type="cc:emptyType"/>
<xs:element name="provide-relationship" type="cc:emptyType"/>
<xs:element name="provide-status-icon" type="cc:emptyType"/>
<xs:element name="provide-sphere" type="cc:emptyType"/>
<xs:element name="provide-time-offset" type="cc:emptyType"/>
<xs:element name="provide-user-input" type="cc:emptyType"/>
<xs:element name="provide-note" type="cc:emptyType"/>
<xs:element name="component-id" type="cc:emptyType"/>
<xs:element name="sub-handling" type="cc:emptyType"/>
<xs:element name="provide-unknown-attribute" type="cc:emptyType"/>
<xs:element name="provide-all-attributes" type="cc:emptyType"/>
</xs:schema>
5. Example Document
The following document is an example.
Rosenberg Expires December 28, 2006 [Page 5]
Internet-Draft Presence Policy Capabilities June 2006
<?xml version="1.0" encoding="UTF-8"?>
<cc:policy-capabilities
xmlns="urn:ietf:params:xml:ns:presence-policy-capabilities"
xmlns:pc="urn:ietf:params:xml:ns:presence-policy-capabilities"
xmlns:cc="urn:ietf:params:xml:ns:policy-capabilities"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:ietf:params:xml:ns:presence-policy-capabilities
spres.xsd">
<cc:conditions>
<cc:identity/>
<cc:sphere/>
<cc:validity/>
<cc:sphere/>
<vpp:temp/>
</cc:conditions>
<cc:actions>
<sub-handling/>
</cc:actions>
<cc:transformations>
<vpp:min-security/>
<vpp:max-security/>
<component-id/>
<provide-person>
<class/>
</provide-person>
</cc:transformations>
</cc:policy-capabilities>
NOTE: this example needs work - doens't validate against the
schema.
6. Security Considerations
This specification does not introduce any new security considerations
beyond those discussed in [1].
7. IANA Considerations
There are several IANA considerations associated with this
specification.
7.1. URN Sub-Namespace Registrations
This section registers a new XML namespace, as per the guidelines in
[4]
Rosenberg Expires December 28, 2006 [Page 6]
Internet-Draft Presence Policy Capabilities June 2006
URI: The URI for this namespace is
urn:ietf:params:xml:ns:presence-policy-capabilities
Registrant Contact: IETF, SIMPLE working group, (simple@ietf.org),
Jonathan Rosenberg (jdrosen@jdrosen.net).
XML:
BEGIN
<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN"
"http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type"
content="text/html;charset=iso-8859-1"/>
<title>Supported Presence Permissions Namespace</title>
</head>
<body>
<h1>Namespace for Supported Permissions</h1>
<h2>urn:ietf:params:xml:ns:presence-policy-capabilities</h2>
<p>See <a href="[[[URL of published RFC]]]">RFCXXXX</a>.</p>
</body>
</html>
END
7.2. XML Schema Registration
This section registers an XML schema as per the procedures in [4].
URI: urn:ietf:params:xml:schema:presence-policy-capabilities.
Registrant Contact: IETF, SIMPLE working group, (simple@ietf.org),
Jonathan Rosenberg (jdrosen@jdrosen.net).
The XML for this schema can be found as the sole content of
Section 4.
8. References
8.1. Normative References
[1] Rosenberg, J., "An Extensible Markup Language (XML)
Representation for Expressing Policy Capabilities",
draft-rosenberg-simple-common-policy-caps-02 (work in progress),
February 2005.
Rosenberg Expires December 28, 2006 [Page 7]
Internet-Draft Presence Policy Capabilities June 2006
[2] Rosenberg, J., "Presence Authorization Rules",
draft-ietf-simple-presence-rules-07 (work in progress),
June 2006.
[3] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", BCP 14, RFC 2119, March 1997.
[4] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
January 2004.
8.2. Informative References
[5] Day, M., Rosenberg, J., and H. Sugano, "A Model for Presence and
Instant Messaging", RFC 2778, February 2000.
Rosenberg Expires December 28, 2006 [Page 8]
Internet-Draft Presence Policy Capabilities June 2006
Author's Address
Jonathan Rosenberg
Cisco Systems
600 Lanidex Plaza
Parsippany, NJ 07054
US
Phone: +1 973 952-5000
Email: jdrosen@cisco.com
URI: http://www.jdrosen.net
Rosenberg Expires December 28, 2006 [Page 9]
Internet-Draft Presence Policy Capabilities June 2006
Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat 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 implementers or users of this
specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at
ietf-ipr@ietf.org.
Disclaimer of Validity
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM 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.
Copyright Statement
Copyright (C) The Internet Society (2006). This document is subject
to the rights, licenses and restrictions contained in BCP 78, and
except as set forth therein, the authors retain all their rights.
Acknowledgment
Funding for the RFC Editor function is currently provided by the
Internet Society.
Rosenberg Expires December 28, 2006 [Page 10]