-
-
Notifications
You must be signed in to change notification settings - Fork 26
Reference Plugin Design Discussion
Background: Text Reuse User Stories
The main one we are dealing with for this plugin is "identify named-entities (people and places)"
The data model we want to support for persistence of such annotations is the Open Annotation data model
Examples of annotations of this type using this model are can be found here
A very basic workflow might be the following:
- User loads Virgil's Aeneid Book 1 to treebank in Arethusa
- While treebanking, user encounters the word Troiae, which is the name of a place
- User clicks on reference tab
- In a separate browser tab User opens the Pleiades Gazetteer
- User searches on Troia finds the Stable URI for Troy http://pleiades.stoa.org/places/550595#this
- User copies this into an input box on the Reference Tab and clicks Save
- Reference Plugin calls Open Annotation plugin (not yet written) to generate an Open Annotation for the annotation
- Reference Plugin calls persister to save the annotation
The Open Annotation Plugin would be responsible for generating a properly formatted Open Annotation. In turn, it would delegate to other plugins to generate the specific URIs and/or Selectors for the target and body, and user and other provenance data for the annotation.
Potential sequence of interactions on the save:
A more advanced workflow, using automated parsing/identification of places in the text:
- User loads a text to treebank in Arethusa
- Reference Plugin calls a Place Retriever passing it all the words in the current sentence
- Place Retriever returns the Pleiades URI for Troiae
- Reference plugin adds the URI to the token state for Troiae
- User clicks on reference tab
- Reference tab shows pre-populated URI for Troiae (maybe with additional description information retrieved from an Ajax call to the Pleiades URI) (and an option to supply a new one)
- Clicks a checkbox next to the URI to indicate that it is correct
- Reference plugin calls Open Annotation plugin to create the annotation
- Reference plugin calls persister to save the annotation