Purpose
Schema for purpose records in the pptx.gallery library. Each record names a presentation objective such as informing, aligning, persuading, driving a decision, or selling. Purposes are referenced from OPF docu…
https://openpresentation.org/schema/opf-purpose/v1
spec/schemas/purpose.schema.json
Field index
| Field | Type | Req | Default | Description |
|---|---|---|---|---|
| $schema | const | yes | — | Identifies this record as a purpose in the openpresentation.org catalog. |
| id | string | yes | — | Stable slug used by OPF documents to reference this purpose via purpose. Lowercase kebab-case. |
| name | string | yes | — | Human-readable purpose name shown in pickers. |
| summary | string | — | — | One-sentence positioning of the purpose — what this deck is trying to accomplish. |
| 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. |
| preview | object | — | — | Visual previews of the record, used by picker UIs and inline rendering. All sub-fields are optional. |
$schema
Type: const · Required · Default: —
Identifies this record as a purpose in the openpresentation.org catalog.
{
"$schema": "https://openpresentation.org/schema/opf-purpose/v1"
}id
Type: string · Required · Default: — · Pattern: ^[a-z][a-z0-9-]*$
Stable slug used by OPF documents to reference this purpose via purpose. Lowercase kebab-case.
{
"id": "inform"
}name
Type: string · Required · Default: —
Human-readable purpose name shown in pickers.
{
"name": "Inform"
}summary
Type: string · Optional · Default: —
One-sentence positioning of the purpose — what this deck is trying to accomplish.
{
"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": "Approve the recommendation"
}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": []
}preview
Type: object · Optional · Default: —
Visual previews of the record, used by picker UIs and inline rendering. All sub-fields are optional.
{
"preview": {}
}