Purpose
Inline purpose metadata for the presentation. Use 'id' to reference a purposes catalog record and override selected fields, or use 'name' for a custom inline purpose.
Metadata
#/$defs/Purpose
object | object
spec/schemas/opf.schema.json
Fields
| Field | Type | Req | Description |
|---|---|---|---|
| id | string | — | Optional purposes catalog id to resolve before applying inline overrides. |
| name | string | — | Human-readable purpose name shown in pickers. |
| summary | string | — | One-sentence positioning of the purpose. |
| description | string | — | Longer prose describing when to use this purpose and how it should shape a deck. |
| outcome | string | — | Desired audience outcome after the presentation. |
| successCriteria | array<string> | — | Observable signals that the deck accomplished this purpose. |
| recommendedNarratives | array<string> | — | Soft cross-link: narrative-catalog ids that work well for this purpose. |
| recommendedTones | array<string> | — | Soft cross-link: tone-catalog ids that work well for this purpose. |
| tags | array<string> | — | Free-form labels for filtering and search. |
id
Type: string · Optional · Default: — · Pattern: ^[a-z][a-z0-9-]*$
Optional purposes catalog id to resolve before applying inline overrides.
{
"id": "inform"
}name
Type: string · Optional · Default: —
Human-readable purpose name shown in pickers.
{
"name": "name-value"
}summary
Type: string · Optional · Default: —
One-sentence positioning of the purpose.
{
"summary": "summary-value"
}description
Type: string · Optional · Default: —
Longer prose describing when to use this purpose and how it should shape a deck.
{
"description": "description-value"
}outcome
Type: string · Optional · Default: —
Desired audience outcome after the presentation.
{
"outcome": "outcome-value"
}successCriteria
Type: array<string> · Optional · Default: —
Observable signals that the deck accomplished this purpose.
{
"successCriteria": []
}recommendedNarratives
Type: array<string> · Optional · Default: —
Soft cross-link: narrative-catalog ids that work well for this purpose.
{
"recommendedNarratives": []
}recommendedTones
Type: array<string> · Optional · Default: —
Soft cross-link: tone-catalog ids that work well for this purpose.
{
"recommendedTones": []
}