{}OPF
DocsSchema referenceView source

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…

Schema $id
https://openpresentation.org/schema/opf-audience/v1
Type
object
Source
spec/schemas/audience.schema.json
Fields
13 · 3 required

Field index

FieldTypeReq.DefaultDescription
$schemaconstyesIdentifies this record as an audience in the openpresentation.org catalog.
idstringyesStable slug used by OPF documents to reference this audience via audience. Lowercase kebab-case.
namestringyesHuman-readable audience name shown in pickers.
summarystringOne-sentence positioning of the audience — who they are and what they care about.
descriptionstringLonger prose describing the audience archetype and how to address them.
seniorityenumTypical seniority level of the audience. Engines use this as a hint for default depth and pacing.
technicalFluencyenumTypical technical fluency of the audience. AI generation uses this to decide whether to expand or assume technical terminology.
decisionPowerenumWhether the audience is expected to be informed, to advise, or to actually decide. Shapes the strength of the closing ask.
attentionBudgetMinutesnumberRealistic 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.
recommendedNarrativesarray<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.
recommendedTonesarray<string>Soft cross-link: tone-catalog ids that work well for this audience.
tagsarray<string>Free-form labels for filtering and search.
previewobjectVisual previews of the record, used by picker UIs and inline rendering. All sub-fields are optional.

$schema

typeconstrequiredyesdefault

Identifies this record as an audience in the openpresentation.org catalog.

$schema.json
{
  "$schema": "https://openpresentation.org/schema/opf-audience/v1"
}

id

typestringrequiredyesdefaultpattern^[a-z][a-z0-9-]*$

Stable slug used by OPF documents to reference this audience via audience. Lowercase kebab-case.

id.json
{
  "id": "executives"
}

name

typestringrequiredyesdefault

Human-readable audience name shown in pickers.

name.json
{
  "name": "Executives"
}

summary

typestringrequirednodefault

One-sentence positioning of the audience — who they are and what they care about.

summary.json
{
  "summary": "Senior leaders who need the recommendation up front, the evidence behind it, and the ask."
}

description

typestringrequirednodefault

Longer prose describing the audience archetype and how to address them.

description.json
{
  "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

typeenumrequirednodefault

Typical seniority level of the audience. Engines use this as a hint for default depth and pacing.

seniority.json
{
  "seniority": "ic"
}

technicalFluency

typeenumrequirednodefault

Typical technical fluency of the audience. AI generation uses this to decide whether to expand or assume technical terminology.

technicalFluency.json
{
  "technicalFluency": "low"
}

decisionPower

typeenumrequirednodefault

Whether the audience is expected to be informed, to advise, or to actually decide. Shapes the strength of the closing ask.

decisionPower.json
{
  "decisionPower": "informational"
}

attentionBudgetMinutes

typenumberrequirednodefault

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.json
{
  "attentionBudgetMinutes": 1
}

recommendedNarratives

typearray<string>requirednodefault

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.json
{
  "recommendedNarratives": [
    "scqa",
    "board-meeting",
    "qbr"
  ]
}

recommendedTones

typearray<string>requirednodefault

Soft cross-link: tone-catalog ids that work well for this audience.

recommendedTones.json
{
  "recommendedTones": [
    "formal",
    "authoritative"
  ]
}

tags

typearray<string>requirednodefault

Free-form labels for filtering and search.

tags.json
{
  "tags": [
    "leadership",
    "external"
  ]
}

preview

typeobjectrequirednodefault

Visual previews of the record, used by picker UIs and inline rendering. All sub-fields are optional.

preview.json
{
  "preview": {}
}