The Stories Ontology

Working Draft — 16 May 2013

This version:
http://www.contextus.net/stories/ Download
Latest version:
http://www.contextus.net/stories/
Last Update: 2013/05/16 15:26
Authors:
Michael O. Jewell, Paul Rissen, Toby Harris

Copyright © 2010 the authors above.

Creative Commons License


Status of this Document

This is a work in progress! Comments are very welcome, please send them to mjewell@gmail.com. Thank you.

Table of Contents

  1. Introduction
  2. Stories Ontology at a glance
  3. Stories Ontology overview
    1. Example
  4. Cross-reference for Stories Ontology classes and properties

Appendixes

  1. Normative References
  2. Changes in this version (Non-Normative)
  3. Acknowledgements (Non-Normative)

1 Introduction

Stories are present throughout our everyday lives and our history: books, film, television, and radio weave events into narrative and plot; myths and legends are passed between generations; news stories describe both ongoing and past events. These stories often share similar themes, characters, items, and locations: by providing an approach to linking these items together, stories can become powerfully navigable, discoverable, and open to new analysis and creation techniques. The Stories ontology was developed in collaboration with the BBC, with an aim to creating an ontology for narrative representation that could be applied across a diverse set of cases. These included accounts of events in Northern Ireland, the storylines of Doctor Who episodes, and key events of the Battle of Britain.

The Stories Ontology is built upon the oft-used Event and Timeline ontologies, thus ensuring interoperability with many existing datasets and allowing for the use of extension ontologies when needed.

2. Stories Ontology at a glance

An alphabetical index of Stories Ontology terms, by class (concepts) and by property (relationships, attributes), is given below. All the terms are hyperlinked to their detailed description for quick reference.

 

3. Stories Ontology overview

The Story class, intuitively, is the primary class of the ontology. It represents a story that may be conveyed, and provides a set of properties for this purpose. A Story has one or many subject properties, being OWL Things that are the focus of the narrative. In the case of the Battle of Britain this could be the Event of Eagle Day, the concept of Evacuation, or the person of Winston Churchill. Each Story may contain further sub_story properties, providing for a hierarchy when one over-arching story may have several smaller narratives. A Story instance then has an EventList — an ordered list of Events — represented using the Ordered List Ontology. EventSlot is provided to restrict the list to containing Event instances, with the item and slot subclassing those of OLO. Finally, we provide a tells property for OWL Things, which indicates a binding between the item which relates the story and the Story instance. This may be a television programme, movie, book, or painting, for example.

This Ordered List approach is required to allow both the reuse of events and the description of a story flow which is independent of a timeline. This may, for example, be a list of Events in the Battle of Britain ordered by alphabetical location, or a list of Events in a Doctor Who season that the editor has deemed 'scariest'. While the List is non-temporal, the events included in the narrative may well be on a timeline (or many timelines!), and this can be inferred from the events present in the list. This also allows for the list to contain events that are from multiple timelines (e.g. a mashup of two TV episodes); or retellings of the same event with different contexts (e.g. Rashomon). The Ordered list is used to describe the order of 'telling' the story, allowing a linearly based model of comparing and contrasting, for instance.

Also included in the Stories ontology is the Interpretation class. This provides a means to indicate an individual's views of an Event, or indeed any object. Interpretation instances have three key properties: interprets, which refers to the thing that the Interpretation is interpretting; contextualises, a property on an OWL Thing, which places it into the context of a narrative; and asserts — a reference to an Assertion instance. This has a single property, facts, which is a URI to a Named Graph — an RDF document containing triples, found at the end of the web-resolvable URI. We chose to keep these classes simple, and allow for other provenance ontologies to augment them with appropriate properties. For example, the Dublin Core ontologies provide for creator information - which is essential for an Interpretation. The following diagram illustrates this structure as well as how the interpreted Events may be held in a curated list.

3.1. Example

This is a section of an annotated episode of Doctor Who, providing an example of each class present in the Stories ontology.

@prefix :        <http://contextus.net/who/s01e09/> .
@prefix stories: <http://contextus.net/stories> .
@prefix event:   <http://purl.org/NET/c4dm/event.owl#> .
@prefix olo:     <http://purl.org/ontology/olo/core#> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix tl:      <http://purl.org/NET/c4dm/timeline.owl#> .

@prefix whoc:    <http://contextus.net/who/character/> .
@prefix whol:    <http://contextus.net/who/location/> .
@prefix whoi:    <http://contextus.net/who/item/> .

:world_war_ii { :s01e09_ev12 dcterms:subject <http://dbpedia.org/resource/Category:World_War_II> . }

<http://contextus.net/who/s01e09/> {

<http://www.bbc.co.uk/programmes/b0074ds9#programme> stories:tells :s01e09.

:s01e09 a stories:Story;
	dcterms:subject <http://dbpedia.org/resource/Category:World_War_II>;
	stories:events :s01e09_events;
	stories:contextualises :s01e09_int12.
    
# Curated event list

:s01e09_events a stories:EventList;
	stories:slot [
		olo:index 1;
		stories:item :s01e09_ev1
	];
	stories:slot [
		olo:index 2;
		stories:item :s01e09_ev2
	];
	# ... 
	stories:slot [
		olo:index 12;
		stories:item :s01e09_ev12
	];
	# ...


# Events

:s01e09_ev1 a event:Event;
	event:place whol:space;
	event:factor whoi:tardis;
	event:time [ tl:before :s01e09_ev2 ].

:s01e09_ev2 a event:Event;
	event:place whol:tardis;
	event:agent whoc:doctor;
	event:agent whoc:rose_tyler;
	event:time [ tl:after :s01e09_ev1; tl:before :s01e09_ev3 ].

# ... 
    
:s01e09_ev12 a event:Event;
	event:place whol:drinking_den;
	event:agent whoc:doctor;
	event:time [ tl:after :s01e09_ev11; tl:before :s01e09_ev13 ].

# Interpretations

:s01e09_int12 a stories:Interpretation;
	stories:interprets :s01e09_ev12;
	stories:asserts [ stories:facts world_war_ii ].
    

}

      

4. Cross-reference for Stories Ontology classes and properties

Class: stories:Assertion

URI: http://purl.org/ontology/stories/Assertion

Assertion - Contains a set of statements in the form of an RDF graph, thus allowing for interpretations to assert beliefs about the state of the system.

in-domain-of:
stories:facts
in-range-of:
stories:asserts

[back to top]

Class: stories:EventList

URI: http://purl.org/ontology/stories/EventList

EventList - Provides a means to create an ordered list of events that occur within a story - effectively a pairing of an Event and a numeric position.

sub-class-of:
http://purl.org/ontology/olo/core#OrderedList
in-domain-of:
stories:slot
in-range-of:
stories:events

[back to top]

Class: stories:EventSlot

URI: http://purl.org/ontology/stories/EventSlot

EventSlot - Places an Event in an EventList, with index and neighbouring Event information.

sub-class-of:
http://purl.org/ontology/olo/core#Slot
in-domain-of:
stories:item
in-range-of:
stories:slot

[back to top]

Class: stories:Interpretation

URI: http://purl.org/ontology/stories/Interpretation

Interpretation - An interpretation of something in the context of a story, given some supporting material. This is the viewpoint of the interpretation's creator, and may assert statements about the item.

in-domain-of:
stories:interprets
stories:asserts
in-range-of:
stories:supports

[back to top]

Class: stories:Story

URI: http://purl.org/ontology/stories/Story

Story - A story that may be told, contain other stories, and have a sequence of events.

in-domain-of:
stories:subject
stories:sub_story
stories:events
stories:contextualises
in-range-of:
stories:sub_story
stories:tells

[back to top]

Property: stories:asserts

URI: http://purl.org/ontology/stories/asserts

asserts - The Assertion which is asserted by this interpretation.

OWL Type:
ObjectProperty
Domain:
stories:Interpretation
Range:
stories:Assertion

[back to top]

Property: stories:contextualises

URI: http://purl.org/ontology/stories/contextualises

contextualises -

OWL Type:
ObjectProperty
Domain:
stories:Story
Range:
stories:nterpretation

[back to top]

Property: stories:events

URI: http://purl.org/ontology/stories/events

event - An ordered list of Events within this story.

OWL Type:
ObjectProperty
Domain:
stories:Story
Range:
stories:EventList

[back to top]

Property: stories:facts

URI: http://purl.org/ontology/stories/facts

facts - Facts asserted by this assertion, in the form of an RDF graph.

OWL Type:
ObjectProperty
Domain:
stories:Assertion

[back to top]

Property: stories:interprets

URI: http://purl.org/ontology/stories/interprets

interprets - The thing which is interpreted by this interpretation.

OWL Type:
ObjectProperty
Domain:
stories:Interpretation

[back to top]

Property: stories:item

URI: http://purl.org/ontology/stories/item

item -

OWL Type:
ObjectProperty
sub-property-of:
http://purl.org/ontology/olo/core#item
Domain:
stories:EventSlot
Range:
http://purl.org/NET/c4dm/event.owl#Event

[back to top]

Property: stories:slot

URI: http://purl.org/ontology/stories/slot

slot -

OWL Type:
ObjectProperty
sub-property-of:
http://purl.org/ontology/olo/core#slot
Domain:
stories:EventList
Range:
stories:EventSlot

[back to top]

Property: stories:sub_story

URI: http://purl.org/ontology/stories/sub_story

sub_story - A story which is contained within this story. For example, a TV episode may contain stories for different characters, or one overarching story may contain several other smaller stories.

OWL Type:
ObjectProperty
Domain:
stories:Story
Range:
stories:Story

[back to top]

Property: stories:subject

URI: http://purl.org/ontology/stories/subject

subject - The subject(s) of the story. e.g. characters, events, skos concepts.

OWL Type:
ObjectProperty
Domain:
stories:Story

[back to top]

Property: stories:supports

URI: http://purl.org/ontology/stories/supports

supports - A Thing which supports an Interpretation (e.g. a supporting document, Event, etc).

OWL Type:
ObjectProperty
Range:
stories:Interpretation

[back to top]

Property: stories:tells

URI: http://purl.org/ontology/stories/tells

tells - A story told by this Thing. The Thing could be a photograph which has a story attached to it, a person, a country, a monument, etc.

OWL Type:
ObjectProperty
Range:
stories:Story

[back to top]

 

A Changes in this version (Non-Normative)

  • 2010/09/13: Added overview of the ontology, and included example.

C Acknowledgements (Non-Normative)

...