Audience
Schema for audience records in the pptx.gallery library. Each record names an audience archetype (e.g. 'executives', 'engineering-team', 'investors') and carries seniority, technical-fluency, decision-power, a…
https://openpresentation.org/schema/opf-audience/v1
spec/schemas/audience.schema.json
Field index
| Field | Type | Req | Default | Description |
|---|---|---|---|---|
| $schema | const | yes | — | Identifies this record as an audience in the openpresentation.org catalog. |
| id | string | yes | — | Stable slug used by OPF documents to reference this audience via audience. Lowercase kebab-case. |
| name | string | yes | — | Human-readable audience name shown in pickers. |
| summary | string | — | — | One-sentence positioning of the audience — who they are and what they care about. |
| description | string | — | — | Longer prose describing the audience archetype and how to address them. |
| seniority | enum | — | — | Typical seniority level of the audience. Engines use this as a hint for default depth and pacing. |
| technicalFluency | enum | — | — | Typical technical fluency of the audience. AI generation uses this to decide whether to expand or assume technical terminology. |
| decisionPower | enum | — | — | Whether the audience is expected to be informed, to advise, or to actually decide. Shapes the strength of the closing ask. |
| attentionBudgetMinutes | number | — | — | Realistic upper bound on this audience's focused attention for a single presentation, in minutes. Used as a hint when comparing against duration and the resolved narrative's durationRange. |
| recommendedNarratives | array<string> | — | — | Soft cross-link: narrative-catalog ids that work well for this audience. Used by picker UIs to suggest narratives once an audience is chosen. Validators warn on unknown ids; never error. |
| recommendedTones | array<string> | — | — | Soft cross-link: tone-catalog ids that work well for this audience. |
| 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 an audience in the openpresentation.org catalog.
{
"$schema": "https://openpresentation.org/schema/opf-audience/v1"
}id
Type: string · Required · Default: — · Pattern: ^[a-z][a-z0-9-]*$
Stable slug used by OPF documents to reference this audience via audience. Lowercase kebab-case.
{
"id": "executives"
}name
Type: string · Required · Default: —
Human-readable audience name shown in pickers.
{
"name": "Executives"
}summary
Type: string · Optional · Default: —
One-sentence positioning of the audience — who they are and what they care about.
{
"summary": "Senior leaders who need the recommendation up front, the evidence behind it, and the ask."
}description
Type: string · Optional · Default: —
Longer prose describing the audience archetype and how to address them.
{
"description": "Executives are time-poor and decision-oriented. Lead with the recommendation, support it with three claims and one number per claim, and end with a clear ask. Avoid drilling into mechanisms unless invited; offer to follow up rather than including everything in the deck."
}seniority
Type: enum · Optional · Default: —
Typical seniority level of the audience. Engines use this as a hint for default depth and pacing.
{
"seniority": "ic"
}technicalFluency
Type: enum · Optional · Default: —
Typical technical fluency of the audience. AI generation uses this to decide whether to expand or assume technical terminology.
{
"technicalFluency": "low"
}decisionPower
Type: enum · Optional · Default: —
Whether the audience is expected to be informed, to advise, or to actually decide. Shapes the strength of the closing ask.
{
"decisionPower": "informational"
}attentionBudgetMinutes
Type: number · Optional · Default: —
Realistic upper bound on this audience's focused attention for a single presentation, in minutes. Used as a hint when comparing against duration and the resolved narrative's durationRange.
{
"attentionBudgetMinutes": 1
}recommendedNarratives
Type: array<string> · Optional · Default: —
Soft cross-link: narrative-catalog ids that work well for this audience. Used by picker UIs to suggest narratives once an audience is chosen. Validators warn on unknown ids; never error.
{
"recommendedNarratives": [
"scqa",
"board-meeting",
"qbr"
]
}recommendedTones
Type: array<string> · Optional · Default: —
Soft cross-link: tone-catalog ids that work well for this audience.
{
"recommendedTones": [
"formal",
"authoritative"
]
}preview
Type: object · Optional · Default: —
Visual previews of the record, used by picker UIs and inline rendering. All sub-fields are optional.
{
"preview": {}
}