Provides the API that defines the contract between the transaction 
manager and the various parties involved in a distributed transaction 
namely : resource manager, application, and application server. 
The implementation of this API is provided by the application 
server vendor and the resource manager driver vendor.