The description of agreements between network members can be specified through individual transactions. For this purpose, network business processes are broken down into separate atomic transactions, which specify a set of actions on the data of network participants.
In a transactional system, the entire set of actions is specified directly in the code of a peer. A transaction specifies an action code (transaction type) and the data required for the action. The data formats in the transaction are defined. Processors of all transaction types are described. A format for storing data of the network members is set. The data is combined into a [StateTree] (one or more).
The state tree plays the leading role in the transactional system. Transactions are executed sequentially, each transaction generates a new state tree based on the previous one. A transaction sets the function for changing the state tree. Everything that is necessary to check and execute a transaction must be in the state tree.
The transaction history has two main roles:
- 1.Validation of the state tree. The initial state and the entire transaction history should generate exactly the same tree as there is at the moment.
- 2.Prevent the same transaction from being processed twice.