3.3.1 Abstract Data Model

This section describes a conceptual model of possible data organization that an implementation maintains to participate in this protocol. The described organization is provided to facilitate the explanation of how the protocol behaves. This document does not mandate that implementations adhere to this model as long as their external behavior is consistent with the behavior that is described in this document.

An application MUST maintain all the data elements that are specified in section 3.1.1.

An application MUST extend the definition of a transaction object to include the following data elements:

  • Root: A flag set to true if the application is the beginner of the transaction; otherwise, to false.

An application MUST also maintain the following data elements:

  • Transaction Manager Name: A Name object that identifies the transaction manager that is associated with the application.

An application MUST provide the states that are defined in the following sections for its supported connection types. Section 2.2.1.1.1 defines the connection types that an application MUST provide for each supported protocol version.