3.13.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 explain how the protocol behaves. This document does not mandate that implementations adhere to this model as long as their external behavior is consistent with that described in this document.
The client transaction ORPC extension maintains the following data structures:
A RootTxnObject flag. This flag is initialized by the Client Root Transaction Object (section 3.1) or the Client Non-Root Transaction Object (section 3.2).
A DtcCapabilities value, consisting of a set of flags as specified in section 2.2.6.1. This value is shared with and initialized by the Client Transaction Envoy Unmarshaling (section 3.20).
A TransactionRequiredInORPC flag. This flag is shared with and initialized by the Client Transaction Envoy Unmarshaling.
A WhereaboutsID GUID. This GUID is shared with and initialized by the Client Transaction Envoy Unmarshaling.
A CurrentTSN value.
A KnownTSN value.
A Whereabouts Table: A table of entries for each OBJREF_EXTENDED (section 2.2.4) object reference unmarshaled by the client, where each entry contains a WhereaboutsID GUID and the SWhereabouts structure identified by the WhereaboutsID GUID. The table is shared with and initialized by the Client Transaction Envoy Unmarshaling.