Skip to main content

Assertions Array

The assertions array, an optional top-level property in the manifest, contains assertion objects. Assertions are verifiable statements about the TDF or its payload, often used for security labeling or handling instructions.

Example (Array containing one Assertion Object)

"assertions": [
{
"id": "handling-assertion-1",
"type": "handling",
"scope": "payload",
"appliesToState": "encrypted",
"statement": { /* See Statement Object */ },
"binding": { /* See Binding Object */ }
}
]

Assertion Object Structure

Each object within the assertions array represents a single assertion and has the following fields:

ParameterTypeDescriptionRequired?
idStringA unique identifier for this assertion within this TDF manifest. Used for internal referencing.Yes
typeStringCategorizes the assertion's purpose. Common values include handling (e.g., caveats, dissemination controls) or metadata (general information).Yes
scopeStringSpecifies whether the assertion applies to the entire TDF object (tdo) or just the payload.Yes
appliesToStateStringIndicates if the assertion's statement applies to the data in its encrypted state or its unencrypted state (after decryption). Default is encrypted.No
statementObjectThe actual content of the assertion. See Statement Object.Yes
bindingObjectA cryptographic signature ensuring the assertion's integrity and preventing it from being moved to another TDF. See Assertion Binding