DataModel

December 5, 2013

Working with stories in computers is obviously dependant upon a knowledge representation mechanism that allows for the storage and retrieval of narrative information – a narrative data model. The Structured Stories narrative data model is now in its third major revision, and expresses all of the major requirements for working with stories within the domain chosen for the proof-of-concept project: local government news. The model has been influenced by published models used in various pioneering computational narrative projects, but has some fundamental differences from these – most importantly in the use of semantic web concepts and in its focus on micro-content digital media requirements rather than on literary or academic objectives. Although it is likely that the model will undergo a further two or three major revisions before it ready to support a beta release, it is now beginning to stabilize and it currently supports the addition of new events and new stories at a rate that is equivalent to existing news reporting in the domain. Revisions of the model are primarily driven by learnings from working with these ‘live’ events and stories, and I expect to publish more details here once the model has stabilized and I have filed key patent applications.

From a technology perspective the current ‘stack’ is aimed at supporting rapid iteration on the data model while providing sufficient flexibility for a beta release and for support for some demonstration applications (primarily a reporting tool and a news reader). The current platform is based around Node.js, allowing JavaScript (with JQuery) to be used for both client and back-end development. Data is managed in a Neo4J NoSQL database, with characters, entities, locations, etc. all referenced externally in the linked data universe. While the various ontologies used are currently being managed somewhat awkwardly in XML, the goal is to move all of these into OWL 2.0 and SKOS at some point in the new year. At the moment all of this is solely being used to support exercise of and revisions to the data model – a relatively narrow set of functionality – however it will also support considerably more functionality and scale when that becomes necessary.

I have found that attempting to capture the abstraction of stories in a useful way is not easy, however after months of modeling and three major revisions I have not yet come across an insurmountable conceptual obstacle. I believe that my narrative data model is growing increasingly useful – at the very least within the domain of local government news.