# Block Structure

In XYO Layer One, blocks are a specific type of [Bound Witness](https://docs.xyo.network/xyo-layer-one/xyo-layer-one-features/bound-witness). Some of the defining features of a Block Bound Witness are the additions of several unique fields, such as the number of the block itself and the hash of the chain it exists on. As a Bound Witness, an XYO Layer One Block also contains a list of each of the following: Payloads, Transactions, and Signatures.

### Payloads

**Payloads** are data hashes selected for permanent inclusion, or "Elevation", in the XYO Layer One Blockchain. Each hash must be validated prior to being elevated, and once elevated, it is stored immutably on-chain. These payloads typically represent one of the following: a full Transaction, a specific hash elevated from within a Transaction, or a schema-compliant payload added directly by the block producer, known as a Producer Payload. All payloads must conform to an approved schema—such as the Transaction or Transfer schema—to be included. For example, a block producer might include a Transfer payload to designate the recipient of the block reward once the block is successfully built and validated.

#### Producer Payloads

Producer payloads represent essential protocol-level operations and must be formatted under standardized schemas, such as `network.xyo.boundwitness`. These payloads are always generated by the block producer and will be fully validated when determining chain state. Examples include transfers, claims, protocol votes, and staking intents.

* **Inclusion Criteria**: For a transaction to be included in a block by a block builder, it needs to be first-order validated. This means that all payloads in the transaction Bound Witness must be available (hash matches provided payload) and pass full validation.
* **Voting**: Block Producers can participate in **Producer Voting** to vote on adopting a protocol update. This is done via the `network.xyo.chain.vote` payload.

**Producer Payload Schemas**

* `network.xyo.transfer`
* `network.xyo.chain.stake.intent`
* `network.xyo.chain.claim`
* `network.xyo.chain.vote`

### Transactions

**Transactions** are an additional type of Bound Witness, containing fields such as `chain`, `fees`, `exp` (or "Expiration"), and `nbf` (or "Not Before"). These transactions contain information about the transaction and also have a specific script field that designates smart contract-like scripts to be executed. Any script in this field must be a standardized script for the XYO Layer One Blockchain, such as the `elevate` script that designates a hash to be elevated to the next level.

### Signatures

**Signatures** are addresses that cryptographically sign the block, representing addresses confirming block existence.
