Draft XP Terminology Section

Last Modified: $Date: 2000/11/15 21:21:09 $

Latest revision
http://www.w3.org/2000/xp/Group/xp-terms
This revision
http://www.w3.org/2000/xp/Group/xp-terms-01
Previous revisions
n/a
Editors:
Henrik Frystyk Nielsen, Microsoft, <frystyk@microsoft.com>


Abstract

This document specifies a DRAFT set of proposed terms. It is not an output of the XML Protocol WG but rather a proposal for consideration.

Status of this Document

This document is a request for comments on a proposed set of terms defined for use by the XP WG. It is not a result of discussion of the XML Protocol WG and is not an official W3C Technical Report. It is to be considered work in progress and does not imply endorsement by the W3C membership or by the XML Protocol WG.

Please send comments to the public <xml-dist-app@w3.org> mailing list (Archives).

Table of Contents

7 Terminology
7.1 General Protocol Concepts
7.2 Data Encapsulation Concepts
7.3 Message Sender and Receiver Concepts
7.4 Data Representation Concepts


7 Terminology

For a description of fundamental Web concepts including resources and resource manifestations, see the "Web Characterization Terminology & Definitions Sheet" W3C Working Draft. For many useful terms, see also the Proposed Telecom Glossary 2000.

7.1 Protocol Layering Concepts

The XML Protocol is a framework which can accommodate an open-ended set of XML Protocol modules carrying a large variety of functions and services. Typical functions and services carried by XML Protocol modules can range from generic mechanisms for handling security, caching, routing, and eventing to specific functions like submitting a purchase order.

While the XML Protocol itself is intended to be as simple and lightweight as possible, XML Protocol modules can be designed and composed to perform arbitrarily complex operations allowing the core protocol to remain simple.

The XML Protocol itself can be layered on top of a variety of transfer or application protocols that can help facilitate the transfer of XP Messages. Typical examples of protocols that XML Protocol might be layered on top of are HTTP and TCP. The exact rules and conventions for how to layer the XML Protocol on top of another protocol is defined by an XML Protocol Binding.

Layered XP model

Note: Component oriented implementation models may take advantage of the layering model illustrated above to provide a component oriented interface to components driving specific XP modules. However, this is strictly an implementation choice for which XML Protocol has nothing to say.

application
See the proposed Telecom Glossary 2000's definition of the term application.
protocol
See the proposed Telecom Glossary 2000's definition of the term protocol.
XML Protocol (XP)
The formal set of conventions governing the format and processing rules of an XP message and basic control of interaction among applications generating and accepting XP messages for the purpose of exchanging information along an XP message path.
XP module
A syntactic construct or structure used to delimit data that logically constitutes a single computational unit as seen by the XP processor. Services carried by XP modules can range from generic mechanisms for handling security, caching, routing, and eventing to specific functions like submitting a purchase order. XP Modules can be composed within an XP message to provide the overall desired functionality of the message.
XP binding
The formal set of rules for carrying an XP message within or on top of another protocol for the purpose of transmission. Typical XP bindings include carrying an XP message within an HTTP message, or on top of TCP.

7.2 Data Encapsulation Concepts

The XML Protocol data encapsulation model describes how data defined by XP modules can be carried within an XP message which is the fundamental unit of communication in the XML Protocol. The following diagram illustrates how an XP message is composed.

XP message model

An XP message is composed of an XP envelope which contains an XP header and an XP body each of which can each contain zero, one or more XP modules. While an XP envelope by itself provides a minimum set of services, XP modules can provide an open-ended set of functions and services that can be composed within an XP message.

XP message
The basic unit of communication within the XML Protocol.
XP processor
An XP Processor is an application that can process an XP message according to the formal set of conventions defined by the XML Protocol and generate an XP fault if the conventions are not followed. Insufficient or wrong data carried in an XP module can cause an XP processor to generate a fault (see also XP receiver and XP sender)
XP envelope
The outermost syntactical construct or structure of an XP message defined by XML Protocol within which all other syntactical elements of the message are enclosed.
XP header

A collection or zero, or more XP modules which may be intended for any XP receiver within the XP message path.

XP body
A collection or zero, or more XP modules intended for the ultimate XP receiver within the XP message path.
XP fault
A special XP module which contains fault information generated by an XP processor.

7.3 Message Sender and Receiver Concepts

The XML Protocol message path model is defined in terms of XP senders and XP receivers who can generate and accept XP messages respectively. Behind each XP receiver is an XP processor that processes the message according to the rules of the XML Protocol.

A important part of the XML Protocol message path model is the concept of XP intermediaries. Intermediaries contain both an XP receivers and an XP sender which allows them to forward a message on behalf of the previous sender.

XP Message Path

Note: Especially in some b2b interactions, more complicated message path models are required to encapsulate the semantics of multi-party interactions like for example "fan-out" or "fan-in" models. Such models can be built using the basic XP message path model provided that the semantics of message "split" and "merge" are provided by higher layer semantics.

XP sender
An application that can generate an XP message and perform an XP binding to a specific protocol for the purpose of transmitting the message.
XP receiver
An application that can accept an incoming XP message transmitted using some XP binding, extract the message from the XP binding and pass the message to an XP processor.
XP application
An application that is either an XP sender, an XP receiver, or both
XP message path
The set of XP senders and XP receivers that a single XP message passes on its way from the initial XP sender, through zero or more XP intermediaries, and to the ultimate XP receiver.
initial XP sender
The XP sender that originates an XP message as the starting point of an XP message path.
XP intermediary
An application that can act as both an XP sender and an XP receiver with the purpose of forwarding an XP message along an XP message path.
ultimate XP receiver
The XP receiver that the initial sender specifies as the final destination of the XP message within an XP message path. An XP message may not reach the ultimate recipient because of an XP fault generated by an XP processor along the XP message path.

7.4 Data Representation Concepts

XP data model
A set of abstract constructs that can be used to describe common data types and link relationships in data defined by XP modules.
XP data encoding
The syntactic representation of data described by the XP data model within one or more XP modules in an XP message.
binary data
Data which is represented using a non-XML based, non-human readable syntax


@(#) $Id: xp-terms-01.html,v 1.7 2000/11/15 21:21:09 frystyk Exp $