Skip to main content

Presentation Metadata Ontology

Document Metadata
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 08 October 2026
Audio Overview
FLOW ALGEBRA

Ontology: Presentation Metadata Ontology
Domain: Metadata Ontologies > Document Metadata
Canonical URL: https://kirethresearch.org/booksai-core/ontologies/metadata-ontologies/document-metadata/presentation-metadata-ontology.html

Authors: Mark Anthony Higgins — Sky (Recursive AI)

flow "PresentationMetadataOntology" v1.0

# ---------- DOMAIN ----------
domain:
  class: MetadataOntology
  category: DocumentMetadata
  subject: PresentationMetadata
  purpose:
    - represent metadata describing presentations and slide-based document resources
    - preserve presentation identity, authorship, purpose, structure, slides, media, notes, versions, rights, and provenance
    - support presentation discovery, validation, accessibility, retrieval, transformation, and reuse
    - distinguish intellectual presentation content from specific file or rendered representations
    - enable machine-readable reasoning over presentation lifecycles

# ---------- CORE ENTITY ----------
entity PresentationMetadata:
  type: DocumentMetadata
  describes: Presentation
  may_include:
    - presentation_identifier
    - title
    - subtitle
    - description
    - presentation_type
    - author
    - contributor
    - organisation
    - creation_date
    - modification_date
    - presentation_date
    - language
    - subject
    - keywords
    - audience
    - purpose
    - slide_count
    - slide_structure
    - speaker_notes
    - media_resources
    - theme
    - format
    - version
    - status
    - accessibility_metadata
    - rights
    - licence
    - provenance

entity Presentation:
  type: Document
  may_be:
    - SlideDeck
    - LecturePresentation
    - ConferencePresentation
    - BusinessPresentation
    - ResearchPresentation
    - TrainingPresentation
    - SalesPresentation
    - TechnicalPresentation
    - EducationalPresentation

entity PresentationIdentifier:
  type: Identifier
  identifies: Presentation

entity PresentationType:
  type: Classification
  classifies: Presentation

# ---------- RELATIONSHIPS ----------
relationships:
  PresentationMetadata -> DESCRIBES -> Presentation
  Presentation -> IDENTIFIED_BY -> PresentationIdentifier
  Presentation -> HAS_TYPE -> PresentationType
  Presentation -> HAS_AUTHOR -> Agent
  Presentation -> MAY_HAVE_CONTRIBUTOR -> Agent
  Presentation -> MAY_BE_ASSOCIATED_WITH -> Organisation
  Presentation -> HAS_STRUCTURE -> PresentationStructure
  PresentationStructure -> CONTAINS -> Slide
  Slide -> MAY_CONTAIN -> TextElement
  Slide -> MAY_CONTAIN -> ImageResource
  Slide -> MAY_CONTAIN -> AudioResource
  Slide -> MAY_CONTAIN -> VideoResource
  Slide -> MAY_CONTAIN -> Chart
  Slide -> MAY_CONTAIN -> Table
  Slide -> MAY_HAVE -> SpeakerNotes
  Presentation -> MAY_HAVE_THEME -> PresentationTheme
  Presentation -> MAY_HAVE_VERSION -> PresentationVersion
  Presentation -> MAY_HAVE_REPRESENTATION -> PresentationRepresentation
  PresentationMetadata -> MAY_REFERENCE -> PresentationProvenance

# ---------- PRESENTATION IDENTITY ----------
rule presentation_identity:
  Presentation SHOULD have stable PresentationIdentifier
  where persistent citation, reuse, or provenance is required

rule title_not_identity:
  presentation title MUST NOT be assumed globally unique

rule presentation_version_identity:
  Presentation != PresentationVersion

rule representation_identity:
  Presentation != PresentationRepresentation

# ---------- PRESENTATION TYPE ----------
presentation_types:
  - lecture
  - conference
  - business
  - research
  - training
  - sales
  - technical
  - educational
  - briefing
  - pitch

rule presentation_type:
  PresentationType SHOULD preserve classification context
  where categories overlap

# ---------- AUTHORSHIP ----------
entity PresentationAgentRole:
  type: RoleMetadata
  roles:
    - author
    - presenter
    - editor
    - contributor
    - designer
    - organisation

rule authorship:
  Agent role SHOULD be explicit
  where attribution matters

rule presenter_author:
  Presenter != Author
  unless same Agent performs both roles

# ---------- DATES ----------
entity PresentationDateMetadata:
  type: TemporalMetadata
  may_include:
    - creation_date
    - modification_date
    - presentation_date
    - publication_date

rule date_distinction:
  creation_date != presentation_date
  modification_date != presentation_date

# ---------- PURPOSE / AUDIENCE ----------
entity PresentationPurpose:
  type: ContextMetadata
  may_include:
    - objective
    - intended_outcome
    - task_context

entity PresentationAudience:
  type: ContextMetadata
  may_include:
    - audience_type
    - expertise_level
    - organisation
    - domain

rule purpose:
  PresentationPurpose SHOULD be preserved
  where interpretation depends on intended use

rule audience:
  audience metadata MAY influence presentation style
  but MUST NOT alter source factual content

# ---------- STRUCTURE ----------
entity PresentationStructure:
  type: DocumentStructure
  may_include:
    - title_slide
    - section
    - slide
    - appendix
    - references

rule slide_order:
  Slide ordering SHOULD be preserved

rule section:
  Presentation MAY group Slides into ordered Sections

rule slide_count:
  slide_count SHOULD equal count of active slides
  according_to representation semantics

# ---------- SLIDE ----------
entity Slide:
  type: DocumentFragment
  may_include:
    - slide_identifier
    - slide_number
    - title
    - layout
    - elements
    - notes
    - transition
    - timing
    - accessibility_metadata

rule slide_identity:
  Slide SHOULD have stable identifier
  where independent reference or editing requires

rule slide_number:
  slide_number != SlideIdentifier

# ---------- TEXT ELEMENTS ----------
entity TextElement:
  type: PresentationElement
  may_include:
    - text
    - language
    - role
    - reading_order
    - formatting

text_roles:
  - title
  - subtitle
  - heading
  - body
  - caption
  - footer
  - label

rule text:
  TextElement SHOULD preserve semantic role
  where accessibility or extraction depends on it

# ---------- MEDIA ----------
entity PresentationMedia:
  type: PresentationElement
  may_be:
    - ImageResource
    - AudioResource
    - VideoResource
    - Animation

rule media:
  embedded or linked media SHOULD preserve source and relationship to Slide

rule linked_media:
  linked media != embedded media

# ---------- CHARTS / TABLES ----------
entity Chart:
  type: DataVisualisation
  may_include:
    - chart_type
    - data_source
    - title
    - labels
    - alternative_description

entity Table:
  type: StructuredContent
  may_include:
    - rows
    - columns
    - headers
    - caption

rule chart_data:
  Chart SHOULD preserve underlying data reference
  where available

rule visual_not_data:
  rendered chart image != underlying dataset

# ---------- SPEAKER NOTES ----------
entity SpeakerNotes:
  type: DocumentFragment
  may_include:
    - note_text
    - language
    - presenter_instruction
    - source_reference

rule notes:
  SpeakerNotes != visible slide content

rule notes_visibility:
  hidden presenter notes MUST NOT be assumed visible to presentation audience

# ---------- THEME / LAYOUT ----------
entity PresentationTheme:
  type: StyleMetadata
  may_include:
    - theme_identifier
    - fonts
    - colours
    - background
    - master_layout

entity SlideLayout:
  type: StructuralStyleMetadata
  may_include:
    - layout_identifier
    - placeholders
    - element_positions

rule theme:
  PresentationTheme describes presentation styling
  NOT semantic content

# ---------- TRANSITIONS / TIMING ----------
entity SlideTransition:
  type: PresentationBehaviourMetadata
  may_include:
    - transition_type
    - duration
    - trigger

entity SlideTiming:
  type: TemporalMetadata
  may_include:
    - start_time
    - duration
    - automatic_advance

rule timing:
  slide timing SHOULD preserve units and playback context

# ---------- ACCESSIBILITY ----------
entity PresentationAccessibilityMetadata:
  type: AccessibilityMetadata
  may_include:
    - reading_order
    - alternative_text
    - slide_titles
    - colour_contrast
    - captioning
    - language
    - table_headers

rule accessibility:
  accessibility metadata SHOULD preserve assessment method
  where conformance is claimed

rule alt_text:
  non-decorative meaningful visual content SHOULD have alternative description
  where accessibility requirements apply

rule reading_order:
  visual position != semantic reading order

# ---------- FORMAT / REPRESENTATION ----------
entity PresentationRepresentation:
  type: DocumentRepresentation
  may_be:
    - PPTX
    - ODP
    - PDF
    - HTML
    - ImageSequence
    - VideoRecording

rule representation:
  PresentationRepresentation != Presentation

rule editable_rendered:
  editable slide deck representation != rendered PDF or video representation

rule conversion:
  converted representation SHOULD preserve source Presentation relationship

# ---------- VERSION ----------
entity PresentationVersion:
  type: VersionMetadata
  may_include:
    - version_identifier
    - predecessor
    - successor
    - creation_time
    - change_description
    - status

rule version:
  material content change SHOULD create distinguishable PresentationVersion
  where history or reuse requires

rule representation_change:
  export to another format alone SHOULD NOT automatically create new semantic PresentationVersion

# ---------- STATUS ----------
presentation_status:
  - draft
  - review
  - approved
  - final
  - presented
  - published
  - superseded
  - archived

rule status:
  Presentation status SHOULD remain explicit

# ---------- RIGHTS ----------
entity PresentationRights:
  type: RightsMetadata
  may_include:
    - copyright_holder
    - licence
    - usage_rights
    - redistribution_rights
    - attribution_requirement
    - media_rights

rule rights:
  presentation rights MAY differ from rights of embedded media

# ---------- PROVENANCE ----------
entity PresentationProvenance:
  type: ProvenanceMetadata
  may_include:
    - author
    - organisation
    - source_documents
    - source_data
    - embedded_media_sources
    - creation_process
    - revision_history
    - conversion_history
    - presentation_history
    - extraction_method

rule provenance:
  PresentationMetadata SHOULD preserve origin and transformation history

# ---------- VALIDATION ----------
validation:
  require:
    - identifiable_presentation

  validate_if_present:
    - presentation_identifier
    - title
    - presentation_type
    - authors
    - dates
    - purpose
    - audience
    - slide_structure
    - media
    - speaker_notes
    - accessibility
    - representation
    - version
    - rights
    - provenance

  reject:
    - contradictory_presentation_identity
    - invalid_slide_count
    - duplicate_slide_identifier where uniqueness is required
    - representation_presented_as intellectual_presentation
    - speaker_notes_presented_as visible_slide_content
    - rendered_chart_presented_as underlying_dataset
    - accessibility_claim_without supporting assessment where validation is required

# ---------- SEMANTIC EQUIVALENCE ----------
SEMANTIC_EQUIVALENCE:
  "presentation metadata" ~= "metadata about a presentation"
  "slide deck metadata" ~= "presentation metadata" WHEN slide-based document is represented
  "presentation slide" ~= "slide"
  "speaker notes" ~= "presenter notes"
  "presentation theme" ~= "slide deck theme"
  "presentation version" ~= "presentation revision" WHEN revision represents version

  PRESERVE distinctions:
    presentation != presentation_metadata
    presentation != presentation_version
    presentation != representation
    presenter != author
    slide_number != slide_identifier
    speaker_notes != visible_slide_content
    linked_media != embedded_media
    chart_visual != underlying_data
    theme != semantic_content
    visual_order != reading_order
    format_conversion != semantic_version_change

# ---------- CONFIDENCE ----------
CONFIDENCE:
  explicit_presentation_metadata:
    score: 1.00

  authoritative_presentation_identifier:
    score: 1.00

  explicit_slide_structure:
    score: 0.99

  explicit_authorship:
    score: 0.99

  parser_extracted_presentation_metadata:
    score: 0.95

  inferred_slide_role:
    score: 0.85

  inferred_presentation_type:
    score: 0.80

  title_only_identity_match:
    score: <= 0.65

  ambiguous_presentation_identity:
    score: <= 0.60
    action: preserve candidates

# ---------- UPDATE MODEL ----------
UPDATE_MODEL:
  on_presentation_creation:
    - assign PresentationIdentifier
    - record title and type
    - record authorship
    - initialise slide structure
    - initialise version and provenance

  on_slide_update:
    - preserve previous slide state where history is required
    - update slide content or layout
    - recalculate slide structure
    - update PresentationVersion where material
    - preserve provenance

  on_media_update:
    - preserve source media reference
    - record embedded or linked state
    - update rights and accessibility metadata
    - preserve provenance

  on_export:
    - preserve Presentation identity and version
    - create new PresentationRepresentation
    - record target format
    - preserve conversion provenance

# ---------- FLOW HASH ----------
FLOW_HASH:
  inputs:
    - ontology
    - presentation_entities
    - relationships
    - identity_rules
    - slide_rules
    - media_rules
    - accessibility_rules
    - representation_rules
    - version_rules
    - validation
    - semantic_equivalence
    - confidence
    - update_model

  canonicalisation:
    - normalise_whitespace
    - preserve_case_sensitive_identifiers
    - sort_unordered_property_sets
    - preserve_rule_order

  output:
    deterministic_semantic_hash

# ---------- AI CONSUMPTION ----------
AI_CONSUMPTION:
  interpret_as:
    - document metadata ontology
    - presentation and slide structure model
    - presentation accessibility model
    - presentation provenance and representation model

  operations:
    - identify presentations
    - resolve presentation identifiers
    - classify presentation types
    - resolve authors and presenters
    - inspect purpose and audience
    - traverse sections and slides
    - interpret slide element roles
    - inspect media, charts, and tables
    - distinguish notes from visible content
    - inspect accessibility metadata
    - resolve themes and layouts
    - traverse versions and representations
    - trace provenance
    - preserve uncertainty

  constraints:
    - do_not_equate_title_with_identity
    - do_not_equate_presenter_with_author
    - do_not_equate_notes_with_visible_content
    - do_not_equate_chart_visual_with_underlying_data
    - do_not_equate_representation_with intellectual_presentation
    - preserve_slide_order_media_rights_accessibility_versions_and_provenance

# ---------- QUERY MODEL ----------
query:
  input:
    - presentation_identifier
    - title
    - presentation_type
    - author
    - presenter
    - organisation
    - subject
    - slide
    - format
    - version
    - status

  resolve:
    1. identify Presentation
    2. resolve PresentationIdentifier
    3. retrieve title and type
    4. resolve authors, presenters, and organisation
    5. apply purpose, audience, and date context
    6. traverse PresentationStructure
    7. inspect slide elements, media, notes, charts, and tables
    8. inspect accessibility, theme, and layout
    9. resolve version, representation, rights, and provenance
    10. return confidence

  output:
    - presentation
    - identifier
    - title
    - presentation_type
    - authors
    - presenters
    - purpose
    - audience
    - slides
    - media
    - speaker_notes
    - accessibility
    - representations
    - version
    - provenance
    - confidence

# ---------- INFERENCE ----------
inference:
  IF authoritative PresentationIdentifier resolves uniquely
  THEN identify Presentation
  WITH confidence = 1.00

  IF Slide belongs_to PresentationStructure
  THEN preserve slide order and parent relationship

  IF Presentation is exported to PDF or video
  THEN create PresentationRepresentation
  AND preserve source Presentation identity

  IF chart references underlying dataset
  THEN preserve chart-to-data relationship

  IF presentation identity remains ambiguous
  THEN preserve candidate Presentations
  AND do_not force resolution

# ---------- OUTPUT CONTRACT ----------
output:
  ontology_entity: PresentationMetadata
  presentation_identity: machine_interpretable
  authorship_and_presenters: traceable
  purpose_and_audience: explicit
  slide_structure: traversable
  media_and_data_visualisations: source_linked
  speaker_notes: distinguishable
  accessibility: reportable
  themes_and_layouts: preserved
  representations: format_aware
  versions: traversable
  rights: preserved
  provenance: preserved
  uncertainty: explicit
  semantic_retrieval: enabled

end flow
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ