drawing timeml relations marc verhagen, brandeis university
Post on 19-Dec-2015
214 views
TRANSCRIPT
Drawing TimeML Relations
Marc Verhagen, Brandeis University
Outline
Visualization of TimeML graphs
1. Visualization history and future
2. Procedure to display TimeML relations
3. Consistency and drawability
4. What about disjunctions?
5. Temporal information in text widgets
Drawing TimeML Relations
1. Visualization history and future
2. Procedure to display TimeML relations
3. Consistency and drawability
4. What about disjunctions?
5. Temporal information in text widgets
Alembic (1)
Alembic (2)
Tango
Other Efforts
• Using GraphViz (Luc Belanger)– Works nice for small samples, does not scale
up gracefully
• Event Diagram– Take one event and group all others around it
• Using Petri Nets (Natalia Kotsyba)– More boxes in representation than there are
events in the text
• Tango improvements (Nick Chubrich)– Color-coding, skirts
Current Tango
Future Tango
Side by Side
Drawing TimeML Relations
1. Visualization history and future
2. Procedure to display TimeML relations
3. Consistency and drawability
4. What about disjunctions?
5. Temporal information in text widgets
Display Rules
Simultaneity
Precedence
Inclusion
Begins/Ends
Display Rules - special case
One event is included by two other events that have no further relation to each other
Example Fragments (1)
Example Fragments (2)
Drawing Procedure
Input to Drawing Procedure
TimeML annotation that is maximal and consistent
Temporal Closure (1)
• Consistency and maximality are guaranteed by temporal closure
• SputLink: temporal closure based on Allen’s interval algebra, but using restrictions from point algebra
• Implications for annotation task(in short: closure makes it feasible)
• Added as a module to Tango
Temporal Closure (2)
Reducing the Graph (1)
Reducing the Graph (2)
Reducing the Graph (3)
• Create equivalence classes
• Convert to basic set of relations:– before, ibefore, includes, begun_by,
ended_by– eliminates cycles
• Use temporal closure rules for reductions– [X ibefore Y] & [Z ended_by X] & [Z ibefore Y]
==> delete [X ibefore Y]
The Reduced Graph
It’s a… directed acyclic graph
Create Pseudo AVM
Basic Mapping Rule
• Draw a bar for 0 in the top left corner • For every before attribute, remove the
attribute and draw an arrow from bar 0 to the drawing that is the value of before
• For every includes attribute, remove the attribute and move the value of the attribute to the box underneath 0, draw the box if there isn't one yet.
• If there are no more attributes in the box, remove the box (but keep the contents)
• Remove the label of the box if its ID is the same as the head of the drawing.
Basic Mapping Rule at Work
Merging Branches (1)
• There are three special cases for which we cannot use the basic mapping rule
Note that there are more cases when ibefore,begun_by and ended_by are included
Merging Branches (2)
• Simply draw arrow if merging in a re-entrancy after a before relation
Merging Branches (3)
• In some cases, arrows will go to the left, which is not allowed
• Simply move part of the drawing to the right
Merging Branches (4)
• Event included by two events, relates to the special display rule
Drawing TimeML Relations
1. Visualization history and future
2. Procedure to display TimeML relations
3. Consistency and drawability
4. What about disjunctions?
5. Temporal information in text widgets
Consistency vs Drawability (1)
• Can any consistent graph be drawn?– Yes, see the drawing procedure– Need a more formal proof
• Can an inconsistent graph be drawn?– No, first step is to run closure– Yes perhaps, what about drawings that are
constructed differently?
Consistency vs Drawability (2)
• Closure throws an inconsistency• Graph cannot be drawn
Inconsistent graph, but it can be drawn
Drawing TimeML Relations
1. Visualization history and future
2. Procedure to display TimeML relations
3. Consistency and drawability
4. What about disjunctions?
5. Temporal information in text widgets
Disjunctions (1)
• TimeML does not yet have disjunctions, but may need some soon
• Closure uses 29 relation types, 16 of them are disjunctions
• All those 16 disjunctions can be mapped to drawings
Disjunctions (2)
Disjunctions (3)
• Some disjunctions are still not available to us:“He got promoted on Wednesday or Friday”
• No neat way to localize or encapsulate disjunctions in TimeML graphs, but use multiple positions in TimeML drawings
Consistency vs Drawability (3)
• Adding the disjunctions– Expanding the drawing procedure– Not necessarily a good idea to draw all
disjunctions– Does drawability now imply consistency?– Previous example cannot be drawn
Drawing TimeML Relations
1. Visualization history and future
2. Procedure to display TimeML relations
3. Consistency and drawability
4. What about disjunctions?
5. Temporal information in text widgets
Displaying TLinks in Text (1)
Displaying TLinks in Text (2)
• Temporal information by color-coding events• Problem: if two events have the same color,
then you assume they are at the same time• Use a bar with a spectrum that spans the
whole TimeML graph in a document
Distinguish three bins: past, present and futureAssign parts of the spectrum to these bins
Displaying TLinks in Text (3)
• Four kinds of events with simple scheme
past present future
unknown
• Scales up nicely when more precise information is available
Drawing TimeML Relations
1. Visualization history and future
2. Procedure to display TimeML relations
3. Consistency and drawability
4. What about disjunctions?
5. Temporal information in text widgets
Future Work
Yes