The Cover PagesThe OASIS Cover Pages: The Online Resource for Markup Language Technologies
SEARCH | ABOUT | INDEX | NEWS | CORE STANDARDS | TECHNOLOGY REPORTS | EVENTS | LIBRARY
SEARCH
Advanced Search
ABOUT
Site Map
CP RSS Channel
Contact Us
Sponsoring CP
About Our Sponsors

NEWS
Cover Stories
Articles & Papers
Press Releases

CORE STANDARDS
XML
SGML
Schemas
XSL/XSLT/XPath
XLink
XML Query
CSS
SVG

TECHNOLOGY REPORTS
XML Applications
General Apps
Government Apps
Academic Apps

EVENTS
LIBRARY
Introductions
FAQs
Bibliography
Technology and Society
Semantics
Tech Topics
Software
Related Standards
Historic
Last modified: February 14, 2004
Common Profile for Instant Messaging (CPIM)

[April 28, 2001] The IETF Instant Messaging and Presence Protocol Working Group has produced several RFCs and Internet Drafts defining "protocols and data formats necessary to build an internet-scale end-user presence awareness, notification and instant messaging system." A recently-published Common Presence and Instant Messaging Message Format proposes the mime type message/cpim message format for protocols that conform to the Common Profile for Instant Messaging (CPIM) specification. The draft Common Profile for Instant Messaging (CPIM) "meets the requirements specified in RFC 2779 [Instant Messaging / Presence Protocol Requirements] using a minimalist approach allowing interoperation of a wide range of IM and Presence systems." Sections 6-9 of this Internet Draft present the models using relevant XML DTDs: (1) The Common Service DTD; (2) The Messaging Service DTD; (3) The Presence Service DTD; (4) The Presence Information DTD. The IETF IMPP working group, chaired by Leslie Daigle and Harald Alvestrand, intends to submit initial specifications for IETF-wide review and then to extend the group's charter. Several other IMPP Protocol Candidates are being tracked through this IETF activity, e.g., APEX aka IMXP; PRIM (Presence and Instant Messaging Protocol); SIMPLE aka SIP Extensions.

IETF IMPP working group description: "This working group will eventually define protocols and data formats necessary to build an internet-scale end-user presence awareness, notification and instant messaging system. Its initial task is to determine specific design goals and requirements for such a service. The design goals document will be submitted for IETF-wide review, and based on that review, the group's charter will be extended. Instant messaging differs from email primarily in that its primary focus is immediate end-user delivery. Presence information was readily accessible on internet-connected systems years ago; when a user had an open session to a well-known multi-user system, his friends and colleagues could easily tell where he was connected from and whether he was using his computer. Since that time, computing infrastructure has become increasingly distributed and a given user may be consistently available," but has no standard way to make this information known to her peers. This working group will design a system to address this need. The working group will develop an architecture for simple instant messaging and presence awareness/notification. It will specify how authentication, message integrity, encryption and access control are integrated. It is desirable, but not required, for the working group to develop a solution that works well for awareness of and communication with entities other than human users. IETF IMPP working group chairs include Leslie Daigle and Harald Alvestrand.

Version 0.1 Profile draft: A Common Profile for Instant Messaging (CPIM). Network Working Group, Internet-Draft. 'draft-ietf-impp-cpim-01'. November 2000. Expires: May 2, 2001. By Dave Crocker, Athanassios Diacakis, Florencio Mazzoldi, Christian Huitema, Graham Klyne, Marshall Rose, Jonathan Rosenberg, Robert Sparks, and Hiroyasu Sugano. 37 pages. Abstract: "Semantics and data formats for common services of Instant Messaging and online Presence, independent of underlying transport infrastructure, are described. The CPIM profile meets the requirements specified in RFC 2779 using a minimalist approach allowing interoperation of a wide range of IM and Presence systems." Note: a version -03 was released on August 14, 2002.

Version -08 CPIM Message Format: Common Presence and Instant Messaging: Message Format. IETF Instant Messaging and Presence Protocol (IMPP) Working Group. January 9, 2003. "This memo defines the mime content-type 'Message/CPIM'. This is a common message format for CPIM-compliant messaging protocols. While being prepared for CPIM, this format is quite general and may be reused by other applications with similar requirements... The Common Profile for Instant Messaging (CPIM) specification defines a number of operations to be supported and criteria to be satisfied for interworking diverse instant messaging protocols. The intent is to allow a variety of different protocols interworking through gateways to support cross-protocol messaging that meets the requirements of RFC 2779. To adequately meet the security requirements of RFC 2779, a common message format is needed so that end-to-end signatures and encryption may be applied. This document describes a common canonical message format that must be used by any CPIM-compliant message transfer protocol, and over which signatures are calculated for end-to-end security."

From the Profile [-01] introduction: "To achieve interoperation of IM systems that are compliant with RFC 2779, there must be a common agreement on both Instant Messaging and Presence services. This memo defines such an agreement according to the philosophy that there must be no loss of information between IM systems that are minimally conformant to RFC2779. This memo focuses on interoperation. Accordingly only those aspects of IM that require interoperation are discussed. For example, the 'open instant inbox' operation is not applicable as this operation occurs within a single IM system and not across systems. Service behavior is described abstractly in terms of operations invoked between the consumer and provider of a service. Accordingly, each IM service must specify how this behavior is mapped onto its own protocol interactions. The choice of strategy is a local matter, providing that there is a clear relation between the abstract behavior of the service [as specified in this memo] and how it is faithfully realized by a particular IM service. The parameters for each operation are defined using an abstract syntax. Although the syntax specifies the range of possible data values, each IM service must specify how well-formed instances of the abstract representation are encoded as a concrete series of bits. For example, one strategy might transmit presence information as key/value pairs, another might use a compact binary representation, and a third might use nested containers. The choice of strategy is a local matter, providing that there is a clear relation between the abstract syntax [as specified in this memo] and how it is faithfully encoded by an particular IM service."

See also among the IMPP Protocol Candidates: Presence and Instant Messaging Protocol (PRIM). By F. Mazzoldi, A. Diacakis, S. Fujimoto, G. Hudson, J. Ramsdell, H. Sugano. "The architecture and specifications of the Presence and Instant Messaging protocols (PRIM) are described. PRIM defines a set of protocols for the Presence and Instant Messaging services which satisfy the IMPP requirements [RFC2779]. PRIM is also designed so as to conform with the Common Profile for Instant Messaging (CPIM) specification being developed in the IMPP WG..." Presence Document DTD. [alt URL, cache]

On XML (Instant) Messaging, see [1] Common Profile for Instant Messaging (CPIM); [2] Jabber XML Protocol; [3] WAP Wireless Markup Language Specification; [4] MessageML; [5] XML Messaging Specification (XMSG); [6] Wireless Village Initiative.

Principal References

Other References

  • [May 29, 2003]   IETF Publishes Internet Drafts for XML Configuration Access Protocol (XCAP).    The Internet Engineering Task Force (IETF) has announced the publication of three related Internet Drafts describing an XML Configuration Access Protocol (XCAP). The XCAP drafts have been released by the IETF SIMPLE (SIP for Instant Messaging and Presence Leveraging Extensions) Working Group. XCAP defines "a set of conventions for using HTTP to read, write and modify XML configuration data. XCAP is based heavily on ideas borrowed from the Application Configuration Access Protocol (ACAP), though it is not an extension of it, nor does it have any dependencies on it. Like ACAP, XCAP is meant to support the configuration needs for a multiplicity of applications, rather than just a single one. An XCAP server acts as a repository for collections of XML documents. There will be documents stored for each application. Within each application, there are documents stored for each user. Each user can have a multiplicity of documents for a particular application. To access some component of one of those documents, XCAP defines an algorithm for constructing a URI that can be used to reference that component. Components refer to any subtree of the document, or any attribute for any element within the document. Thus, the HTTP URIs used by XCAP point to pieces of information that are finer grained than the XML document itself."

  • [April 22, 2003] "BINPIDF: External Object Extension to Presence Information Data Format." By Mikko Lonnfors, Eva Leppanen, and Hisham Khartabil (Nokia). IETF SIMPLE WG, Internet-Draft. Reference: 'draft-lonnfors-simple-binpidf-00'. April 7, 2003, expires October 6, 2003. This memo specifies a methodology whereby external content to a presence information document can be referenced in XML encoded presence information document (PIDF). The external content can be either transferred directly in the payload of SIP messages or indirectly as an HTTP reference. The external part might contain binary data such as images. The Presence Information Data Format (PIDF) is described in Common Presence and Instant Messaging (CPIM) Presence Information Data Format. It defines a generic XML encoded format to express a presentity's presence information. However, it does not specify any mechanism how external objects, e.g., pictures, belonging to presence information can be represented in such XML documents. The Content Indirection document provides an extension to the URL MIME External-Body Access-Type to allow any MIME part in a SIP message to be referred indirectly via a URL. In addition there is a need to specify an extension to PIDF in order to use the Content Indirection mechanism for the Presence in a way that the XML encoded presence information is carried directly in SIP message while external objects are referenced indirectly. There is also need to deliver the external objects in the payload of a SIP message. The MIME Multipart/Related content type provides a good basis for placing a reference to external contents as multiparts. An extension to PIDF is needed for referencing the multiparts from the PIDF XML formatted presence information. A similar kind of approach of utilizing the MIME Multipart/Related with HTML can be found in 'MIME Encapsulation of Aggregate Documents' (RFC 2557)..." [cache]

  • [January 07, 2003] "Common Presence and Instant Messaging (CPIM) Presence Information Data Format." By Hiroyasu Sugano (Fujitsu Laboratories Ltd), Shingo Fujimoto (Fujitsu Laboratories Ltd), Graham Klyne (Clearswift Corporation), Adrian Bateman (VisionTech Limited), Wayne Carr (Intel Corporation), and Jon Peterson (NeuStar, Inc). IETF Network Working Group, Internet-Draft. Reference: 'draft-ietf-impp-cpim-pidf-07.txt'. December 2002, expires June 2003. XML Schema Definitions in Section 4; XML DTD in Appendix A. "This memo specifies the Common Presence and Instant Messaging (CPIM) Presence Information Data Format (PIDF) as a common presence data format for CPIM-compliant Instant Messaging and Presence protocols, and also defines a new media type application/cpim-pidf+xml to represent the XML MIME entity for PIDF... The Common Profile for Instant Messaging (CPIM) specifications define a set of common operations and various formats to achieve interoperability between different Instant Messaging and Presence protocols which meet RFC 2779. The CPIM core specification defines a set of common operations and their parameters to be supported by interworking Presence and IM protocols in order to allow straightforward gatewaying between them. The CPIM Message Format defines a common format for instant messages, which enables secure end-to-end IM exchange through the gateways. This memo further defines the CPIM Presence Information Data Format (PIDF) as a common presence data format for CPIM-compliant presence protocols. The significance of the common presence format primarily resides in the fact that it alleviates the load of gatewaying of messages with presence data payloads. Without such a common presence data format, a gateway must process and transform the presence data payload from one format to another every time it gateways the protocol messages. Such payload processing also disables the validity of digitally signed presence data. Utilizing the common presence data format allows secure transfer of the presence payloads across the boundary of different protocol domains... The CPIM Presence Information Data Format encodes presence information in XML... "
  • Common Presence and Instant Messaging (CPIM). August 14, 2002. [cache]
  • Draft DTDs for CPIM. Version '01'
  • Common Presence and Instant Messaging Message Format
  • Date and Time on the Internet: Timestamps I-D 'draft-ietf-impp-datetime-00.txt'. "...defines a date and time format for use in Internet protocols that is a profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar"
  • A Model for Presence and Instant Messaging (RFC 2778) "This document defines an abstract model for a presence and instant messaging system. It defines the various entities involved, defines terminology, and outlines the services provided by the system. The goal is to provide a common vocabulary for further work on requirements for protocols and markup for presence and instant messaging."
  • Instant Messaging / Presence Protocol Requirements (RFC 2779) "Presence and Instant Messaging have recently emerged as a new medium of communications over the Internet. Presence is a means for finding, retrieving, and subscribing to changes in the presence information (e.g. 'online' or 'offline') of other users. Instant messaging is a means for sending small, simple messages that are delivered immediately to online users. Applications of presence and instant messaging currently use independent, non-standard and non-interoperable protocols developed by various vendors. The goal of the Instant Messaging and Presence Protocol (IMPP) Working Group is to define a standard protocol so that independently developed applications of instant messaging and/or presence can interoperate across the Internet. This document defines a minimal set of requirements that IMPP must meet."
  • IMPP Protocol Candidates. APEX aka IMXP; PRIM (Presence and Instant Messaging Protocol); SIMPLE aka SIP Extensions.


Hosted By
OASIS - Organization for the Advancement of Structured Information Standards

Sponsored By

IBM Corporation
ISIS Papyrus
Microsoft Corporation
Oracle Corporation

Primeton

XML Daily Newslink
Receive daily news updates from Managing Editor, Robin Cover.

 Newsletter Subscription
 Newsletter Archives
Globe Image

Document URI: http://xml.coverpages.org/cpim.html  —  Legal stuff
Robin Cover, Editor: robin@oasis-open.org