[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.