Ledger Data Formats
Each ledger version in the XRP Ledger is made up of three parts:
- Ledger Header: Metadata about this ledger version itself.
- Transaction Set: All the transactions that were executed to create this ledger version.
- State Data: The complete record of objects representing accounts, settings, and balances as of this ledger version. (This is also called the "account state".)
Each ledger version's state data is a set of ledger objects, sometimes called ledger entries, which collectively represent all settings, balances, and relationships at a given point in time. To store or retrieve an object in the state data, the protocol uses that object's unique Ledger Object ID.
A ledger object's data fields depend on the type of object; the XRP Ledger supports the following types:
The settings, XRP balance, and other metadata for one account.
Singleton object with status of enabled and pending amendments.
A check that can be redeemed for money by its destination.
A record of preauthorization for sending payments to an account that requires authorization.
Contains links to other objects.
Contains XRP held for a conditional payment.
Singleton object with consensus-approved base transaction cost and reserve requirements.
Lists of prior ledger versions' hashes for history lookup.
List of validators currently believed to be offline.
An order to make a currency trade.
A channel for asynchronous XRP payments.
Links two accounts, tracking the balance of one currency between them. The concept of a trust line is an abstraction of this object type.
A list of addresses for multi-signing transactions.
A Ticket tracks an account sequence number that has been set aside for future use.