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
Created: December 24, 2004.
News: Cover StoriesPrevious News ItemNext News Item

OASIS Technical Committee Advances Business Transaction Protocol (BTP) Specification.

OASIS has announced the approval of its Business Transaction Protocol Version 1.1 as a Committee Draft. BTP Version 1.1 represents a revision of the Version 1.0 specification in the light of feedback and implementation experience.

The Business Transaction Protocol (BTP) is a carrier-neutral protocol designed "to allow coordination of application work between multiple autonomous, cooperating participants. It defines protocol exchanges to ensure the overall application achieves a consistent result. This consistency may be defined a priori: all the work is confirmed or none is (an atomic business transaction or atom); or it can be determined by application intervention in the selection of the work to be confirmed (a cohesive business transaction or cohesion)."

The OASIS Business Transaction Protocol specification defines the protocol "in terms of abstract messages schematized in XML. It defines communications protocol bindings to SOAP, but also allows the transport of BTP messages over other communication protocols. BTP is based on a permissive and minimal approach where constraints on implementation choices are avoided. The protocol also tries to avoid unnecessary dependencies on other standards, with the aim of lowering the hurdle to implementation."

BTP "provides the means to associate and coordinate the requests, responses, and outcomes for distributed applications elements. At a most simple level BTP allows a set of remote calls to be grouped together and the outcomes tied together. It allows for all or nothing outcome, mixed outcome, service alternative recognition and selection, time qualification, and exception reporting."

The OASIS Business Transactions Technical Committee was chartered to "develop technology for business transactions on the Internet. Long lasting business transactions spanning multiple enterprises pose a unique challenge to B2B systems. The protocol allows complex XML message exchanges to be tracked and managed as loosely coupled "conversations" between and among businesses. BTP goes beyond the problem domain currently being addressed by ebXML and is independent of transport protocols and messaging frameworks. The TC members believe that BTP can be layered on any underlying transport mechanism including ebXML Messaging, RosettaNet, or XML-PC (SOAP)."

Bibliographic Information

Business Transaction Protocol. Working Draft 05 [Voted for approval as a Committee Draft]. 9-November-2004. "BTP 1.1." Edited by Peter Furniss (Choreology Ltd). Produced by members of the OASIS OASIS Business Transactions Technical Committee. Co-authors: Sanjay Dalal (BEA Systems, for version 1.0) Tony Fletcher (Choreology Ltd, for version 1.0), Alastair Green (Choreology Ltd, for version 1.0), Bob Haugen (Choreology Ltd, for version 1.1), Alex Ceponkus ( individual, for versions 1.0 and 1.1), and Bill Pope (individual, for version 1.0). Document identifier: 'business_transaction-btp-1.1-spec-wd-05'. 9-November-2004. 163 pages. See the WSDLs and XML schema files referenced below. XML Namespace for the BTP messages: http://docs.oasis-open.org/business-transaction/business_transaction-btp-1.1-core-schema-wd-05.xsd

From the BTP Version 1.1 Introduction

BTP is designed to allow coordination of application work between multiple participants owned or controlled by autonomous organizations. BTP uses a two-phase outcome coordination protocol to ensure the overall application achieves a consistent result. BTP permits the consistent outcome to be defined a priori: all the work is confirmed or none is (an atomic business transaction or atom) or it can be determined by application intervention into the selection of the work to be confirmed (a cohesive business transaction or cohesion).

BTP's ability to coordinate between services offered by autonomous organizations makes it ideally suited for use in a Web Services environment. For this reason this specification defines communications protocol bindings which target the emerging Web Services arena, while preserving the capacity to carry BTP messages over other communication protocols. Protocol message structure and content constraints are schematized in XML, and message content is encoded in XML instances.

BTP allows great flexibility in the implementation of business transaction participants. Such participants enable the consistent reversal of the effects of atoms. For example, BTP participants may use recorded before- or after-images, or compensation operations to provide the "roll-forward, roll-back" capacity which enables their subordination to the overall outcome of an atomic business transaction.

BTP is an interoperation protocol which defines the roles which software agents (actors) may occupy, the messages that pass between such actors, and the obligations upon and commitments made by actors-in-roles. It does not define the programming interfaces to be used by application programmers to stimulate message flow or associated state changes.

BTP is based on a permissive and minimal approach, where constraints on implementation choices are avoided. The protocol also tries to avoid unnecessary dependencies on other standards, with the aim of lowering the hurdle to implementation.

The OASIS Business Transactions Technical Committee began its work at an inaugural meeting in San Jose, Calif. on 13-March-2001, and version 1.0 of this specification was endorsed as a Committee Specification by a unanimous vote on 16th May 2002. The TC revised the specification in the light of feedback and implementation experience to form this present specification of BTP 1.1.

The BT Technical Committee has consciously avoided specifying the integration of BTP with security standards or technology. It is assumed that all BTP actors are within a trust domain or some separate specification defines the integration with security mechanisms.

Business Transaction Protocol (BTP) Specification Overview

"Applications have changed from monolithic entities to composites constructs of distributed elements selected and called by an initiating component. There is a class of these distributed, composite applications that require more assurance and information about the outcome of the remote components than is available in a simple request / response model. BTP provides the means to associate and coordinate the requests, responses, and outcomes for distributed applications elements..."

Relationship to other projects:

"There is currently no comparable work in other standards organizations. There are two known proprietary sets of specifications for transactional Web services, but these do not encompass protocols other than the Web.

BTP uses two-phase interaction of which all other transactional interactions are a degenerate form. This two-phase capability can be collapsed into simpler interactions when interaction delays are more important than transactional visibility or control. BTP provides transactions independently of the protocol used to carry application semantics, defining the abstract messages, message semantics, and a concrete binding.

BTP addresses the issues of transactionality within and across entity boundaries. It defines only a small set of obligations for the service invoker and the service provider. The service provider is free to choose appropriate cancellation or recovery semantics.

The UN/CEFACT BPSS and related work contains an embedded business transaction protocol that is much more limited than BTP... [from the TC FAQ document]

About the OASIS Business Transactions Protocol Technical Committee

"The purpose of the Business Transactions TC is to develop technology for business transactions on the Internet. Long lasting business transactions spanning multiple enterprises pose a unique challenge to B2B systems. The interdependent workflows managed among multiple trading partners, which drive business transactions, need to be coordinated to ensure that the outcome of the transaction is reliable. As an initial input, BEA intends to offer a specification for our Business Transaction Protocol (BTP), which provides this functionality and is implemented in our Weblogic Collaborate product. BTP is an eXtensible Markup Language (XML)-based protocol for representing and seamlessly managing complex, multi-step business-to-business (B2B) transactions over the Internet. The protocol allows complex XML message exchanges to be tracked and managed as loosely coupled 'conversations' between and among businesses. BTP goes beyond the problem domain currently being addressed by ebXML and is independent of transport protocols and messaging frameworks. We believe that it can be layered on any underlying transport mechanism including ebXML Messaging, RosettaNet, or XML-PC (SOAP)." [from the TC Charter]

Principal references:


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
Bottom Globe Image

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