3.1.4.2 FORMAT_FLOW_TRANSACTION

The FORMAT_FLOW_TRANSACTION event MUST be signaled by the higher-layer business logic with the following required argument:

And one or both of the following optional arguments:

If the FORMAT_FLOW_TRANSACTION event is signaled, the AppClient Role MUST perform the following actions:

  • If only a Propagation_Token argument is provided:

  • Otherwise, if only a CoordinationContext Element argument is included:

    • Insert the CoordinationContext Element as a SOAP header in the FlowTransaction Message.

    • Return the FlowTransaction Message to the higher-layer business logic.

  • Otherwise, if both a Propagation_Token argument and a CoordinationContext Element argument are included:

    • Encode the Propagation_Token using base64, and create a PropagationToken Element (section 2.2.3.1.7), setting the value to the base64 encoded Propagation_Token.

    • Insert (or replace if already present) the PropagationToken Element in the CoordinationContextAnyElementType Complex Type of the CoordinationContext Element (section 2.2.3.2.1).

    • Insert the CoordinationContext Element as a SOAP header in the FlowTransaction Message.

    • Return the FlowTransaction Message to the higher-layer business logic.

  • Otherwise, return an implementation-specific failure result to the higher-layer business logic.