Proceedings of IEEE Conference on Visual Analytics Science and Technology (VAST), Chicago, USA, 2015.
→ [Pre-Print PDF]
Want to make a visual timeline, but don't have the time to draw one manually? Or maybe you have some documents, but you're not sure if the events they depict form a compelling timeline?
TimeLineCurator quickly and automatically extracts temporal references in freeform text to generate a visual timeline. You can then interactively curate the events in this timeline until you are satisfied, or quickly decide that there is no interesting temporal structure within the document. You can also create a mashup of multiple documents against each other to compare their temporal structure.
Already using TimelineJS? TimeLineCurator works with TimelineJS: instead of tediously assembling your timeline in a spreadsheet, TimeLineCurator allows you to curate your timeline visually. When you are ready, you can export your curated timeline to a TimelineJS widget that you can embed on your website or blog.
Get in touch with us via email at: {jfulda,brehmer,tmm} [at] cs.ubc.ca
On twitter: @jofu_, @mattbrehmer, @tamaramunzner.
When you arrive at TimeLineCurator, you start with an empty timeline. To fill this timeline with events, you can load in freeform text that contains temporal references (click the '+' in the Document View). You can also create individual events manually (click the '+' in the Control Panel at the far right).
When you choose to add your own freeform text, a dialog box will appear. You can paste text here or you can choose from some example files from the dropdown menu at the bottom of the dialog box.
Load text: if you paste in your own text, you must give your text a Document Title. Paste the body of your text in the Content area. You can optionally specify the date when the text was written; in other words, what date does "today" refer to in the text? (this is especially important if the text is copied from a news article). Finally, choose from one of the six colours; events from this text will be drawn on the timeline in this colour. (In the picture below, we used the the 20th Century section of the Wikipedia arcticle "History of British Columbia")
When you're ready, press "Go!" to let TimeLineCurator's text analyzer locate all of the temporal references within the text (it might take several seconds depending on the size of your text). You can repeat this step multiple times with different texts. You can add as much text as you want, though you are limited to the six colours provided here.
Discrete events are represented as circles on the timeline, while span events are represented as triangles joined with a horizontal line. Events are offset to reduce occlusion; the vertical position does not correspond to anything meaningful.
Edit Events: You can select every event inside the timeline and you will see the event highlighted in the List View and its corresponding sentence highlighted in the Document View. In the Control Panel, you can edit the event: click on the date, title, or content text to modify. The event title is by default the first 5 words of the sentence in which the temporal reference was detected. The content text is by default the complete sentence surrounding the temporal reference. You also can change the colour track of the event, or delete the event from the timeline. Once you edit an event, its colour will become more saturated on the timeline, and a check mark will appear inside its icon in the List View.
Media can be added to an event by adding a URL that links directly to an image or video. The cat icon next to the "Add Media" button indicates if an event already has media associated with it: a grey cat indicates no media; a black cat indicates that media has been added to an event (at least a URL, the caption and credit is optional). Media will appear in the finished TimelineJS timeline.
List View: Click on an event to select it. The headers of the top of the List view, circled below let you order the events by type (discrete event vs. span event), by status (edited vs. not edited), by document, by colour track (1-6), by date, or by event title.
Vague Dates: Imprecise temporal references are shown as squares at the top right of the timeline and have the date '????' in the list view. These are not initially aligned in the timeline because often they do not represent concrete events that should be on the timeline; it is safe to ignore them because they will not be exported. However, some of these may contain genuine events that were not extracted correctly, so you can use the Control Panel to add concrete information according to your own interpretation of the text (or additional background knowledge).
Merge Events: you can select several events at once, by pressing the Shift key and selecting one after another. When you have a selection of more than one event, two new buttons will appear in the Control Panel. When you choose to merge events (the button with the circular icon), they will all be assigned the dates of the first event that you selected (the one with the boldest border in the timeline). You can also batch-delete the selected events (the button with the 'x' icon).
Naming the Timeline: select the 'Home' button in the Control Panel to edit the name and description of the whole timeline.
Three buttons at the right of the Control Panel are for Exporting, Saving, and Loading your timeline:
Export: You can choose between "TLC Export" and "TimelineJS Export". In both cases a new browser tab will open and show all dates, including the pictures that you added.
Save and download the current state. Either as:
Load previous state: every minute the current state of your editing is saved to your local storage; if the browser crashes or you forget to save the latest version, there should be a backup available. Alternatively, you can load from file: if you created a .tl file in a previous session you can upload that one here and continue working on that.
Scandinavian Music Comparing the history of pop music in five different countries. Based on the articles on Europopmusic Result (TLC Export) | Result (TimelineJS) | tl-file |
|||
The Fall of the Berlin Wall An overview of the events around the the fall of the wall in 1989. Based on the Wikipedia entry about the "Berlin Wall". Result (TLC Export) | Result (TimelineJS) | tl-file |
|||
Mozart Events concerning Wolgang Amadeus Mozart's work, based on his Wikipedia article. Result (TLC Export) | Result (TimelineJS) | tl-file |
|||
Net Neutrality Comparing articles from The Guardian & Wired that report on the FCC's net neutrality vote from February 26th 2015. Result (TLC Export) | Result (TimelineJS) | tl-file |
|||
The Jian Ghomeshi Timeline Created in ~30 minutes based on the Wikipedia article about Jian Ghomeshi Result (TLC Export) | Result (TimelineJS) | tl-file |
|||
The life of J.B. Tyrrell The life and death of the man who discovered the Albertosaurus. Based on an article on Canadian Geographic and an archive article from 1953. Test case by Carys Mills, social media editor at Canadian Geographic magazine. Result (TLC output) | Result (TimelineJS) | tl-file |
|||
Sam Smith and the Grammys Created in ~10 minutes based on the Wikipedia article about the British singer Sam Smith. Result (TLC Export) | Result (TimelineJS) | tl-file |
TimeLineCurator is a browser-based Heroku application. Event extraction from freeform text is handled by the Natural Language Toolkit and the TERNIP Python Library. The interface was implemented using D3.js and AngularJS.
And here is the public Github repository.