====== 11.1 Overview ====== [[fxdemo:03-part:11-fx-transaction-and-contract-lifecycle-model:start | Go To FX Transaction and Contract Lifecycle Model ]] The FX Transaction and Contract Lifecycle Model defines the FX-specific lifecycle states and state-transition responsibilities used by the FX Demo Logical Profile. This model distinguishes candidate transaction information, validated transaction information, semantically interpreted transaction information, [[dido:99_annexes:annex-b-terms-and-definitions:f:fx_contract_state|FX Contract State]], computed [[dido:99_annexes:annex-b-terms-and-definitions:f:fx_cash-flow_obligation|FX Cash-Flow Obligation]]s, [[dido:99_annexes:annex-b-terms-and-definitions:f:fx_policy_decision|FX Policy Decision]] state, and audit/provenance records. It preserves the difference between a transaction input, a validation outcome, an interpreted contract, a contract lifecycle state, a computed obligation, and a release decision. The FX Transaction and Contract Lifecycle Model remains platform-independent. It does not prescribe a state-machine implementation, workflow engine, database status field, event store, rules engine, orchestration mechanism, API, [[dido:99_annexes:annex-b-terms-and-definitions:d:dds|DDS]] topic, [[dido:99_annexes:annex-b-terms-and-definitions:r:rest|REST]] resource, or runtime persistence mechanism. Implementation profiles select those realization mechanisms. Figure 11-1 summarises the logical lifecycle progression used by the FX Demo Logical Profile. FX Transaction Candidate └── Validated FX Transaction └── Semantically Interpreted FX Transaction └── FX Contract State └── FX Cash-Flow Obligation └── FX Policy Decision └── FX Release Package **Figure 11-1:** FX logical lifecycle progression from transaction candidate to release package. ---- © 2026 Dido Solutions, Inc. and Jackrabbit Consulting, Inc.