On this page
VAO 0.5.0 separates the semantic release from its physical carriers. The manifest describes resources and their relationships. A carrier packages exact realizations of those resources for transport. Changing the delivery arrangement does not, by itself, create a different semantic release.
Three carrier roles
| Carrier | Purpose |
|---|---|
| Bootstrap | A small entry point for discovery and evidence, with references to further resources. |
| Preservation closure | Contains every realization required by the complete release. |
| Custom | A locally materialized selection for a particular task or byte budget. |
A small, explicit container
Technical detail · VAO 0.5.0 · root structure
instrument.vao
├── mimetype
├── vao-manifest.json
├── META-INF/
│ └── vao-carrier.json
└── payload/
└── …The manifest fixes semantic identity. The carrier descriptor maps embedded payload members to that manifest. Byte sizes and SHA-256 digests let a client check whether a retrieved realization is the one the release actually identifies.
From a resource to its exact bytes
| Concept | Illustrative example |
|---|---|
| Logical asset | A recording of one documented take. |
| Realization | One particular encoding of that recording, identified by byte size and SHA-256. |
| Distribution | A location from which those exact bytes can be acquired. |
| Asset group | A declared set of resources and dependencies needed for a particular capability. |
A filename is a convenient label, not an identity guarantee. Re-encoding audio, editing a mesh or replacing an image changes the exact realization. Even when two files serve the same intellectual role, a client must not substitute one for the other without an explicit release description. A changed URL can still deliver the same realization; an unchanged URL can deliver different bytes.
What happens during selective delivery
- Read the bootstrap manifest and establish the fixed semantic release being requested.
- Choose a declared group, including its dependencies, that supports the intended use.
- Resolve the pinned preservation carrier and exact member mapping.
- Retrieve the member, then check its decoded byte length and SHA-256 against the manifest.
- Record the selection and materialized carrier so that a later user can understand what was acquired.
A small carrier is not automatically a complete preservation copy. Group completeness is a statement about included realizations and their recursively required groups. A browser preview might be sufficient for inspecting an image, while a later acoustic analysis needs another group. The release contract makes that difference explicit instead of letting a partial download masquerade as the whole object.