The W3C has acknowledged receipt of a 'Tentative Hold Protocol' submission from Intel Corporation, originally presented on July 23, 2001. The submission is published as a W3C Note in two parts: Tentative Hold Protocol White Paper and Tentative Hold Protocol Technical Specification. Part 2 includes the Tentative Hold XML Schema. The objective of Tentative Hold Protocol "is to facilitate automated coordination of multi-business transactions. Tentative Hold Protocol is an open, loosely coupled messaging-based protocol for the exchange of information across businesses prior to an actual transaction, recognizing the extremely dynamic nature of business conditions. This framework includes a standard way for businesses to exchange tentative commitments to the terms of an interaction (e.g., price, quantity, lead time, and so on) and update each other when the situation changes. These exchanges increase the chances of successful completion of the interaction regardless of whether the interaction is coordinated using custom applications or standard middleware services such as compensating transactions. Tentative Hold Protocol defines an architecture that allows tentative, non-blocking holds or reservations to be requested for a business resource (e.g., the items for sale from an online retailer)."
THP and other protocols: "Tentative Hold Protocol uses existing and evolving open standards and technologies wherever possible to ensure the interoperability across heterogeneous remote enterprises. For example, the Client Coordinator and Resource Coordinator can be represented as web services using WSDL, and can communicate using SOAP over HTTP/HTTPS (however, such bindings are not mandated; the communication could happen using the BizTalk Framework, the XML Protocol under development at W3C or other communication protocols)... it is possible to exchange tentative hold protocol communications using an existing protocol such as Simple Object Access Protocol, BizTalk Framework, ebXML Transport, Routing and Packaging, or the W3C XML Protocol that is currently under development. The services offered by the Client Coordinator and Resource Coordinator and the communications across them can be modeled using Web Services Description Language (WSDL). Tentative Hold Protocol could be modeled using other process modeling specifications or graphical modeling tools. The services that are used in a coordinated manner using Tentative Hold Protocol could be discovered using a discovery service such as Universal Description, Discovery and Integration (UDDI). Tentative Hold Protocol facilitates coordination of multi-business transactions. However, it is totally decoupled from the business information that is exchanged as a part of the request and responses. These request and responses could conform to any of the vertical industry XML document standards (e.g., RosettaNet dictionary)... Tentative Hold Protocol facilitates automated coordination of multi-business transactions, but does not ensure it. Tentative Hold Protocol could complement protocols such as Transaction Internet Protocol (TIP) and Business Transaction Protocol (BTP) by preceding transactions that use one of these protocols."
A comment from Alastair Green of Choreology says the THP proposal has some overlap (but not duplication) with the OASIS BTP activity.
States: Four states are associated with a hold include: (1) Responding: This initial state is reached when some application sends a Hold Request message; (2) In Process: This intermediate state indicates that the hold request has been received and an acknowledgement of the request has been returned to the hold requester; (3) Active: This state is reached from the In Process state when the requested hold has been granted - a Hold Granted message has been sent by the resource owner; note that in this state the hold requester may attempt to modify the specifics of this hold by sending a Modify Hold message; (4) Inactive: This state is reached from the Active state when the tentative hold is no longer valid - e.g., a Hold Cancellation message has been sent by the client or the resource owner, or the hold has expired."
From the W3C Team Comment of Hugo Haas (Team Contact for the XML Protocol Working Group):
"As Web services emerge, there is a need for aggregating several services and interacting with different businesses. The Tentative Hold Protocol defines an architecture that allows tentative, non-blocking holds or reservations in order to facilitate coordination of multi-business transactions. The protocol consists of a set of operations (hold request by the client, hold cancellation by the client or the resource provider, etc), in order to place reservations prior to commitment (e.g., purchase of a vacation package) on a set of needed resources. By using this mechanism, clients can have a global knowledge of all the resources available to them before making a decision, while providers can provide non-blocking reservations to several clients, keeping control of their resources.
"Tentative Hold Protocol relates to the following W3C Activities and events: (1) XML Schema; (2) XML Protocol; (3) W3C Workshop on Web services.
"The submission will be brought to the attention of the W3C XML Protocol Working Group as a use case for the protocol they are designing. The Semantic Web Activity includes an 'Advanced Development' component (SWAD) created to identify promising directions for Web automation technologies in advance of the consensus process. While the W3C SWAD effort is not currently investigating this area, the Submission will be considered when evaluating further areas for SWAD research.
Bibliographic information:
- Tentative Hold Protocol Part 1: White Paper. W3C Note 28-November-2001. Version URL: http://www.w3.org/TR/2001/NOTE-tenthold-1-20011128/. Latest version URL: http://www.w3.org/TR/tenthold-1. By Jerry Roberts and Krishnamurthy Srinivasan (Intel).
- Tentative Hold Protocol Part 2: Technical Specification. W3C Note 28-November-2001. Version URL: http://www.w3.org/TR/2001/NOTE-tenthold-2-20011128. Latest version URL: http://www.w3.org/TR/tenthold-2. By Jerry Roberts, Tim Collier, Pallavi Malu, and Krishnamurthy Srinivasan (Intel).
Principal references:
- Tentative Hold Protocol White Paper
- Tentative Hold Protocol Technical Specification
- Submission request from Intel Corporation
- W3C Team Comment
- Public "web services" discussion/comment list for the Tentative Hold Protocol ('www-ws')
- Inquiries: questions about this submission should be directed to: Mary-Ellin Brooks (+1 408-765-0727) or Manny Vara (+1 408-765-6829). Intel submitter: Wayne Carr.