TimeML Annotation is a specification language for marking up events, time expressions, and their temporal links in natural language text. It transforms unstructured narratives into structured temporal graphs by tagging four core entity types: EVENT (actions or states), TIMEX3 (dates, times, durations), SIGNAL (linguistic cues like 'before' or 'during'), and LINK (relations such as TLINK, SLINK, and ALINK that establish chronological, subordination, and aspectual connections between entities).
Glossary
TimeML Annotation

What is TimeML Annotation?
A standardized markup language for identifying and linking temporal expressions, events, and their relationships within a document to enable automated temporal reasoning.
The annotation standard enables machines to perform temporal closure reasoning—inferring unstated chronological relationships from explicitly tagged ones. In legal contexts, TimeML allows systems to automatically order contractual obligations, detect temporal contradictions, and answer point-in-time queries by grounding narrative sequences in a formal, computationally traversable timeline.
Core Components of TimeML
The foundational tag set and linking structures that enable machines to parse and reason about the temporal fabric of a document.
TIMEX3: Temporal Expressions
The tag used to annotate explicit time references, normalizing them to a standard value for machine processing.
- Types: Date, Time, Duration, and Set (e.g., 'every month').
- Normalization: The
valueattribute converts 'October 26, 2023' to2023-10-26. - Anchoring: The
anchorTimeIDattribute links relative expressions like 'last week' to a reference point. - Modifiers: Captures quantifiers such as 'approximately' or 'more than'.
EVENT: Occurrences & States
The tag for annotating situations that happen or hold true, serving as the nodes in a temporal graph.
- Classes:
OCCURRENCE,STATE,REPORTING,I_STATE,I_ACTION,ASPECTUAL. - Tense & Aspect: Attributes capture grammatical cues like
tense=PASTandaspect=PERFECTIVE. - Polarity: The
polarity=NEGattribute explicitly marks negated events (e.g., 'did not pay'). - Modality: Captures the context of possibility or necessity (e.g., 'shall deliver').
TLINK: Temporal Links
The relation tag that establishes the chronological order between two events or an event and a time expression.
- Core Relations: Encodes Allen's interval algebra primitives like
BEFORE,AFTER,INCLUDES, andSIMULTANEOUS. - Graph Construction: TLINKs create the directed temporal dependency graph required for critical path analysis.
- Inference: Enables reasoning about the happens-before relationship between contractual obligations.
SIGNAL: Linguistic Cues
The tag that marks function words and phrases indicating the nature of a temporal relation.
- Examples: 'during', 'before', 'after', 'while', 'until'.
- Disambiguation: Resolves ambiguous TLINKs by providing the lexical evidence for the link.
- Scope: The
SIGNALtag is linked to aTLINKvia itssignalIDattribute, grounding the relation in explicit text.
ALINK: Aspectual Links
A relation tag specifically for linking an aspectual event to its argument event, encoding the internal temporal structure.
- Phases: Distinguishes between the
INITIATES,CULMINATES,TERMINATES, andCONTINUESphases of an event. - Example: In 'started to perform the audit', an
ALINKconnects 'started' to 'perform' with theINITIATESrelation. - Obligation Lifecycle: Critical for modeling the state machine of a contractual duty from inception to fulfillment.
SLINK: Subordination Links
The relation tag that connects a modal or evidential event to its subordinate event, capturing context like modality and factuality.
- Modality: Links 'shall' to 'deliver' to encode a deontic obligation.
- Factuality: Distinguishes between factual, counterfactual, and conditional events.
- Legal Relevance: Essential for parsing deontic logic structures like permissions and prohibitions in regulatory text.
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Frequently Asked Questions
Clear, technical answers to the most common questions about the TimeML markup language and its role in automated temporal reasoning for legal documents.
TimeML is a robust markup language standard designed to represent temporal events, time expressions, and their linking relationships within a document. It works by annotating text with specific XML tags to identify four core temporal elements: EVENT (actions or states), TIMEX3 (dates, times, and durations), SIGNAL (linguistic cues like 'before' or 'during'), and LINK (the relations connecting them). By explicitly encoding that 'Event A happened before Event B' or 'Event C includes Event D,' TimeML transforms unstructured narrative text into a machine-readable temporal knowledge graph, enabling automated temporal reasoning and contradiction detection.
Related Terms
Core concepts that interact with TimeML annotation to enable automated temporal reasoning in legal documents.
Temporal Logic (TL)
A formal system of rules and symbolism for reasoning about propositions qualified in terms of time. In contract analysis, TL provides the mathematical foundation for proving whether a sequence of obligations is logically consistent.
- Linear Temporal Logic (LTL): Models time as a single, linear sequence of states—ideal for a single contract's execution timeline
- Computation Tree Logic (CTL): Models time as branching possibilities, useful for analyzing contingent obligations that depend on uncertain future events
- Key operators:
G(always/globally),F(eventually/finally),X(next),U(until)
TimeML annotations serve as the input facts that a temporal logic reasoner evaluates against a set of axioms.
Allen's Interval Algebra
A calculus for qualitative temporal reasoning that defines thirteen mutually exclusive relations between two time intervals. These relations form the backbone of temporal constraint reasoning in contracts.
- Core relations:
before,meets,overlaps,starts,during,finishes, and their inverses, plusequals - Composition table: Allows inference of a third relation from two known relations (e.g., if A is
beforeB and B isbeforeC, then A isbeforeC) - Contract application: Determining if a payment deadline (
duringa grace period) conflicts with a termination right (beforethe payment)
TimeML's TLINK tags directly encode these interval relations between annotated events and times.
Temporal Dependency Graph
A directed graph structure where nodes represent contractual events or deadlines and edges represent the temporal precedence constraints between them. This is the primary computational artifact generated from TimeML annotations.
- Nodes: Events (EVENT tags), time expressions (TIMEX3 tags), and milestones
- Edges: TLINK relationships encoding
before,after,simultaneous,includes, etc. - Topological sort: Reveals the mandatory execution order of obligations
- Cycle detection: Identifies temporal contradictions—e.g., Obligation A must occur before Obligation B, but B must also occur before A
Critical path analysis runs on this graph to identify the sequence of obligations that determines the overall transaction timeline.
Temporal Constraint Satisfaction
The algorithmic process of finding a valid timeline of events that satisfies all specified temporal constraints and precedence rules extracted from a set of contracts. TimeML annotations define the constraint set.
- Simple Temporal Network (STN): A framework where constraints are expressed as bounds on the distance between time points (e.g., 'Event B must occur 5 to 10 days after Event A')
- Disjunctive Temporal Problem (DTP): Handles 'or' constraints common in contracts (e.g., 'delivery within 30 days of signing OR within 14 days of inspection')
- Consistency checking: Determines if a set of deadlines is logically satisfiable or contains an inherent contradiction
- Solution extraction: Generates one or all valid schedules that satisfy every constraint
Deadline Extraction
The NLP task of automatically identifying and normalizing the specific date or time by which a contractual obligation must be performed. This is the primary downstream consumer of TimeML annotations.
- Input: Unstructured legal text (e.g., 'The Tenant shall pay rent on the first day of each calendar month')
- TimeML role: TIMEX3 tags normalize 'first day of each calendar month' into a computable recurrence rule; EVENT tags identify 'pay' as the obligation; TLINKs connect them
- Output: A structured deadline object with an absolute or relative date, recurrence pattern, and linked obligation
- Challenges: Resolving relative dates ('within 30 days of Closing'), handling business day conventions, and interpreting vague terms ('promptly', 'reasonable time')
Temporal Contradiction
A logical inconsistency between two or more temporal statements in a contract, such as an obligation being due both before and after a specified triggering event. TimeML annotation surfaces these conflicts for resolution.
- Direct contradiction: 'Payment due on January 1, 2025' and 'Payment due on March 1, 2025' for the same obligation
- Transitive contradiction: A before B, B before C, C before A—forms an impossible cycle in the dependency graph
- Implicit contradiction: A sunset clause terminates the contract on Dec 31, but an obligation is scheduled for Jan 15 of the following year
- Detection method: Run temporal constraint satisfaction on the TLINK graph; any unsatisfiable constraint set flags a contradiction
Resolving these contradictions is critical for obligation management systems to avoid compliance failures.

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us