Building a storyline continuity database for drama
Project from - present
The Storyarc project provides a single, shared data model on top of which we've built a production facing web application designed to be used by programme archivists, broadcast assistants, writers, editors and producers and an audience facing web application framework capable of being populated by data and content from a variety of productions.
First we audited the systems in use by the BBC and then developed a shared data model. Having migrated and reshaped some archive data we built a quick and dirty prototype to surface the data and make it editable. This went through a couple of iterations but was mainly used as a way to talk about the data with production. We then worked with Metabroadcast to build a production facing interface which is now in day-to-day use by production teams.
Why it matters
Some dramas have no record of archive storylines and rely on the memories of production staff and actors to recall past events. The problems with this became apparent when we spoke to the production team of a long running TV drama. They were in the process of writing out a character and wanted to sign them off with a flashback, memorial episode. But no one could quite remember all the things that had happened to the character or when they'd happened.
A few productions do have continuity databases but only catalogue at the episode level. Our intention for both production and audience facing services was to couple as tightly as possible to the media assets so we could say between this time and that time, it's this scene, in this place, featuring these characters as part of that storyline. Episode descriptions alone wouldn't be able to drive the kind of exploration we envisaged.
The problem we faced was a familiar one. It's relatively easy to build audience facing prototypes but much harder to find a way to populate them with data and content. Conversely it's relatively easy to build systems to support production teams without ever giving thought to whether the information they're entering might be useful for building audience facing services.
The Storyarc project set out to solve both of these problems by providing a single, shared data model on top of which we've built:
- a production facing web application designed to be used by programme archivists, broadcast assistants, writers, editors, producers etc
- an audience facing web application framework capable of being populated by data and content from a variety of productions
Storyarc provides an upgrade to existing continuity data systems. It's also designed to provide data for audience facing, drama exploration services.
How it works
Storyarc is just a straightforward relational database. The final data model looks roughly like this:
The top layer models the fictional universe. There are characters. The characters have relationships with other characters; they have jobs; they belong to groups like the cricket team; and they get born, live and die in places. And all of this changes over time as relationships start and end, names change, groups are joined and left, and jobs and houses get moved.
The bottom layer models the world of production (programmes with episodes with scenes) and is designed to fit into the segment model of PIPs.
And the middle layer glues the fictional world to the production world allowing archivists to associate scenes with characters, groups, places and storylines.
We are exploring the possible audience-facing applications of this data in our Story Explorer prototypes but we also have more research questions for the production tool:
- For programmes without storyline continuity data how much of the data acquisition can be automated using script parsing, shot/scene detection, character recognition (vocal and facial), place recognition, speech to text or subtitle parsing. Current work on script parsing is showing a lot of promise.
- How should this system interface with digital studio systems like IP Studio?
- Can the existing system be expanded into (or one component in) a collaborative storylining and scripting environment?
This project is part of the Stories work stream