> For the complete documentation index, see [llms.txt](https://docs.lumia.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.lumia.org/ecosystem/lumia/architecture/data-availability/volition-enhanced-validium.md).

# Volition enhanced validium

**Who this is for:** developers and issuers comparing DA models, including why Lumia's current model differs from this one. **You should already know:** [Validium](https://app.gitbook.com/s/chmhPiVNAafGw48c4oU2/ecosystem/lumia/architecture/data-availability/validium).

### Definition

**Volition** (sometimes called enhanced validium) is a data-availability model that lets a transaction choose, individually, whether its data is published on the base chain (rollup-style) or kept off-chain with a separate availability guarantee (validium-style). Instead of a chain committing entirely to one model, each transaction (or each application on the chain) picks the trade-off that fits it: an application handling high value per transaction might choose the stronger, costlier rollup guarantee, while a high-throughput, lower-value application chooses the cheaper validium path.

```mermaid
flowchart TD
  TX["A single transaction"] --> CH{"Where is its data published?"}
  CH -->|"rollup path"| ON["On the base chain<br/>stronger guarantee, higher cost"]
  CH -->|"validium path"| OFF["Off-chain, with a separate<br/>availability guarantee<br/>cheaper, different trust assumption"]
  ON --> PR["The same validity proof either way"]
  OFF --> PR
  NOTE{{"Lumia runs as a validium today.<br/>This diagram describes the volition model,<br/>not Lumia's current configuration."}}
```

### Per-transaction choice model and trade-offs

The mechanism is the same underlying validity proof either way: what changes is only where the data supporting a given transaction is published. This gives an application-level lever that a pure rollup or pure validium doesn't offer: cost and trust assumptions become a per-transaction decision instead of a chain-wide one. The cost is added complexity: a chain (and the tooling around it) has to support and clearly signal both data paths, and a developer has to actually understand which mode a given transaction is using to reason correctly about its guarantees.
