OPF
SpecDefinition referenceView source

Purpose

Inline purpose metadata for the presentation. Use 'id' to reference a purposes record (a bare id or 'name:id') and override selected fields, or use 'name' for a custom inline purpose.

Metadata

Definition
#/$defs/Purpose
Form
2 inclusive forms (anyOf)
Source
spec/schemas/opf.schema.json

Field index

FieldTypeReq.Description
idref:CatalogReference—Optional purposes reference (a bare id or 'name:id') resolved before applying the inline overrides.
namestring—Human-readable purpose name shown in pickers.
summarystring—One-sentence positioning of the purpose.
descriptionstring—Longer prose describing when to use this purpose and how it should shape a deck.
outcomestring—Desired audience outcome after the presentation.
successCriteriaarray<string>—Observable signals that the deck accomplished this purpose.
recommendedNarrativesarray<string>—Soft cross-link: narrative ids that work well for this purpose, for picker UIs. Never resolved, embedded or validated as references.
recommendedTonesarray<string>—Soft cross-link: tone ids that work well for this purpose, for picker UIs. Never resolved, embedded or validated as references.
tagsarray<string>—Free-form labels for filtering and search.

id

typeref:CatalogReferencerequirednodefault—

Optional purposes reference (a bare id or 'name:id') resolved before applying the inline overrides.

id.json
{
  "id": "inform"
}

name

typestringrequirednodefault—

Human-readable purpose name shown in pickers.

summary

typestringrequirednodefault—

One-sentence positioning of the purpose.

description

typestringrequirednodefault—

Longer prose describing when to use this purpose and how it should shape a deck.

outcome

typestringrequirednodefault—

Desired audience outcome after the presentation.

successCriteria

typearray<string>requirednodefault—

Observable signals that the deck accomplished this purpose.

recommendedNarratives

typearray<string>requirednodefault—

Soft cross-link: narrative ids that work well for this purpose, for picker UIs. Never resolved, embedded or validated as references.

recommendedTones

typearray<string>requirednodefault—

Soft cross-link: tone ids that work well for this purpose, for picker UIs. Never resolved, embedded or validated as references.

tags

typearray<string>requirednodefault—

Free-form labels for filtering and search.

anyOf 1 · object

Exact constraints for anyOf 1
anyOf 1 schema
{
  "required": [
    "id"
  ]
}

anyOf 2 · object

Exact constraints for anyOf 2
anyOf 2 schema
{
  "required": [
    "name"
  ]
}
Complete definition constraints
Schema constraints
{
  "type": "object",
  "description": "Inline purpose metadata for the presentation. Use 'id' to reference a purposes record (a bare id or 'name:id') and override selected fields, or use 'name' for a custom inline purpose.",
  "anyOf": [
    {
      "required": [
        "id"
      ]
    },
    {
      "required": [
        "name"
      ]
    }
  ],
  "properties": {
    "id": {
      "$ref": "#/$defs/CatalogReference",
      "description": "Optional purposes reference (a bare id or 'name:id') resolved before applying the inline overrides.",
      "examples": [
        "inform",
        "decide",
        "align",
        "persuade",
        "educate"
      ]
    },
    "name": {
      "type": "string",
      "description": "Human-readable purpose name shown in pickers."
    },
    "summary": {
      "type": "string",
      "description": "One-sentence positioning of the purpose."
    },
    "description": {
      "type": "string",
      "description": "Longer prose describing when to use this purpose and how it should shape a deck."
    },
    "outcome": {
      "type": "string",
      "description": "Desired audience outcome after the presentation."
    },
    "successCriteria": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Observable signals that the deck accomplished this purpose."
    },
    "recommendedNarratives": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Soft cross-link: narrative ids that work well for this purpose, for picker UIs. Never resolved, embedded or validated as references."
    },
    "recommendedTones": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Soft cross-link: tone ids that work well for this purpose, for picker UIs. Never resolved, embedded or validated as references."
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Free-form labels for filtering and search."
    }
  }
}