$schema
stringpresentation/properties/$schema
Optional OPF schema version. When omitted, validators and engines should assume the latest supported OPF schema.
Values: "https://openpresentation.org/schema/opf/v1"
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
name
stringpresentation/properties/name
Display name of the presentation for GUI/TUI lists, library/search indexing, OS-level metadata, and default export filenames. This is deck identity, not slide content. Use slides[].title and slides[].subtitle for text that should appear on presented slides.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
description
stringpresentation/properties/description
Free-form prose describing what this presentation is about. Used by agents and humans as a deck-level summary; complements purpose (the goal) and narrative (the structured storyline). Round-trips to OOXML 'docProps/core.xml' as '<dc:description>' (PowerPoint surfaces this as the 'Comments' field in File → Properties).
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
filename
stringpresentation/properties/filename
Optional base filename for exports (without extension). Engine strips a trailing .pptx, .pdf, .png, or .svg (case-insensitive) and appends the target format's extension. When omitted, the engine slugifies name when present. See /docs/opf for full validation rules.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
organization
multiple formspresentation/properties/organization
Organization associated with the presentation, usually the presenting company. Array form supports hosts, partners, clients, and sponsors. The primary organization (declared via Organization.role or, if no role is set, the first item) drives default branding such as cover-slide logo.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
speaker
multiple formspresentation/properties/speaker
Person presenting the deck. Array form supports panels and multi-speaker decks. Used for cover slides, bio slides, footers, and panel attribution.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
author
multiple formspresentation/properties/author
Optional credit for the person who authored or contributed to the deck, distinct from speaker. Array form supports multiple contributors. Round-trips to OOXML 'docProps/core.xml' as '<dc:creator>' (semicolon-joined when multiple) and seeds '<cp:lastModifiedBy>' on first write; subsequent edits in PowerPoint overwrite '<cp:lastModifiedBy>' with the editing user.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
audience
multiple formspresentation/properties/audience
Intended audiences for the presentation. Accepts either:
- A single string shorthand: free-form description ('Series B investors'), an audiences catalog id ('executives'), an HTTPS URL, or a 'pkg:' reference.
- An array of string shorthands and/or inline Audience objects for custom audience metadata or catalog-backed overrides. Object form mirrors https://openpresentation.org/schema/opf-audience/v1 without '$schema'.
Resolution order for catalog ids and references: inline catalogs.audiences.records[] → catalogs.audiences.source → default catalog at https://www.pptx.gallery/audiences.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
purpose
multiple formspresentation/properties/purpose
Primary goal of the presentation. Accepts either:
- A string shorthand: free-form goal ('Raise a Series B round of $30M'), a purposes catalog id ('decide', 'align'), an HTTPS URL, or a 'pkg:' reference.
- An inline Purpose object for custom purpose metadata or catalog-backed overrides. Object form mirrors https://openpresentation.org/schema/opf-purpose/v1 without '$schema'.
Resolution order for catalog ids and references: inline catalogs.purposes.records[] → catalogs.purposes.source → default catalog at https://www.pptx.gallery/purposes.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
language
multiple formspresentation/properties/language
Language for the presentation content. Accepts either:
- A string shorthand: a BCP-47 language tag ('en-US', 'en-GB', 'ja-JP', 'fr'), a languages catalog id ('english', 'japanese'), an HTTPS URL, or a 'pkg:' reference.
- An inline Language object for custom language metadata or catalog-backed overrides. Object form mirrors https://openpresentation.org/schema/opf-language/v1 without '$schema'.
Resolution order for catalog ids and references: inline catalogs.languages.records[] → catalogs.languages.source → default catalog at https://www.pptx.gallery/languages.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
tone
multiple formspresentation/properties/tone
Desired tone for the presentation. Accepts either:
- A string shorthand: a tones catalog id ('formal'), an HTTPS URL, or a 'pkg:' reference.
- An inline Tone object for custom tone metadata or catalog-backed overrides. Object form mirrors https://openpresentation.org/schema/opf-tone/v1 without '$schema'.
Resolution order for catalog ids and references: inline catalogs.tones.records[] → catalogs.tones.source → default catalog at https://www.pptx.gallery/tones.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
takeaway
multiple formspresentation/properties/takeaway
Audience-facing takeaway the presentation should leave behind. Array form supports multiple takeaways. Deck-level intent used by AI to seed and pressure-test slide content.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
duration
integerpresentation/properties/duration
Target presentation duration, as an integer number of minutes. Used by AI to set pace and depth, and to compare against the resolved narrative's durationRange.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
tags
arraypresentation/properties/tags
Free-form labels used for categorization, search, and filtering. Lowercase kebab-case is recommended for consistency across a deck library.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
design
referencepresentation/properties/design
Optional design system covering theme, color scheme, font scheme, dimensions, background, logo, watermark, header, and footer applied to the deck. When omitted, engines use their default design configuration.
Reference: #/$defs/Design
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
narrative
multiple formspresentation/properties/narrative
Structured storyline describing the deck's arc and beats. Resolves to the 'id' of a 'narratives' catalog record.
Accepts two forms:
- String shorthand for the common case: 'narrative = "classic-story"'. Accepts a bare id (lowercase kebab-case), an HTTPS URL pointing at a record file, or a 'pkg:' reference to a locally-installed package.
- Object form for inline overrides or fully custom narratives: 'narrative = { id: "classic-story", beats: [...] }'. The object shape mirrors https://openpresentation.org/schema/opf-narrative/v1 (sans '$schema'), so a library record and an inline narrative are interchangeable.
Resolution order: inline catalogs.narratives.records[] → catalogs.narratives.source → default catalog at https://www.pptx.gallery/narratives. Unknown ids produce a validation warning, not an error.
Deck-level concerns that aren't part of the storyline (audience, tone, takeaway, duration) live as siblings on the presentation root rather than inside the narrative object.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
slides
arraypresentation/properties/slides
Ordered array of slides that make up the presentation.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
assets
referencepresentation/properties/assets
Optional reusable asset registry for images, data files, videos, documents, fonts, and other resources referenced elsewhere in the deck via 'asset:<id>' strings.
Reference: #/$defs/Assets
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
catalogs
referencepresentation/properties/catalogs
Optional per-kind catalog overrides. Each kind may declare a non-default 'source' and/or inline 'records' that override or supplement the default catalog at https://www.pptx.gallery/<kind>. References elsewhere in the document (e.g. design.theme, narrative) resolve through this section before falling back to the default catalog.
Reference: #/$defs/Catalogs
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
extensions
objectpresentation/properties/extensions
Custom data passthrough for agent workflows; ignored by the engine but preserved across read/write round-trips.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
src
stringpresentation/$defs/Asset/oneOf/1/properties/src
Resource source. Accepts an 'asset:<id>' reference, HTTPS URL, data URI, relative path resolved against the OPF file location, or local filesystem path.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
alt
stringpresentation/$defs/Asset/oneOf/1/properties/alt
Alternative text for images and other visual assets.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
title
stringpresentation/$defs/Asset/oneOf/1/properties/title
Human-readable asset title for editors and asset pickers.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
description
stringpresentation/$defs/Asset/oneOf/1/properties/description
Optional notes about the asset's contents, provenance, or intended use.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
mediaType
stringpresentation/$defs/Asset/oneOf/1/properties/mediaType
Optional MIME media type when it cannot be inferred from src.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
format
stringpresentation/$defs/Asset/oneOf/1/properties/format
Optional authoring/parsing format hint. Useful when format is more convenient than a full MIME media type.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
id
stringpresentation/$defs/Audience/properties/id
Optional audiences catalog id to resolve before applying inline overrides.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
name
stringpresentation/$defs/Audience/properties/name
Human-readable audience name shown in pickers.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
summary
stringpresentation/$defs/Audience/properties/summary
One-sentence positioning of the audience.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
description
stringpresentation/$defs/Audience/properties/description
Longer prose describing the audience and how to address them.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
seniority
stringpresentation/$defs/Audience/properties/seniority
Typical seniority level of the audience.
Values: "ic" · "manager" · "director" · "vp" · "c-suite" · "mixed"
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
technicalFluency
stringpresentation/$defs/Audience/properties/technicalFluency
Typical technical fluency of the audience.
Values: "low" · "medium" · "high" · "mixed"
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
decisionPower
stringpresentation/$defs/Audience/properties/decisionPower
Whether the audience is expected to be informed, advise, or decide.
Values: "informational" · "advisory" · "decision-maker"
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
attentionBudgetMinutes
numberpresentation/$defs/Audience/properties/attentionBudgetMinutes
Realistic upper bound on focused attention for a single presentation, in minutes.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
recommendedNarratives
arraypresentation/$defs/Audience/properties/recommendedNarratives
Soft cross-link: narrative-catalog ids that work well for this audience.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
recommendedTones
arraypresentation/$defs/Audience/properties/recommendedTones
Soft cross-link: tone-catalog ids that work well for this audience.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
tags
arraypresentation/$defs/Audience/properties/tags
Free-form labels for filtering and search.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
id
stringpresentation/$defs/Purpose/properties/id
Optional purposes catalog id to resolve before applying inline overrides.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
name
stringpresentation/$defs/Purpose/properties/name
Human-readable purpose name shown in pickers.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.
summary
stringpresentation/$defs/Purpose/properties/summary
One-sentence positioning of the purpose.
Where to edit
Open All properties in the visual editor. Navigate to this field in the presentation, slide, or catalog record. Add optional fields and choose the required value form. Apply validates the complete document and creates one undo step.