Is there an algorithmic approach to identify that dates given in a paragraph correlate to particular events (phrases) in the paragraph?

Example, consider the following paragraph:

In June 1970, the great leader took the oath. But it was only after May 1972, post the death of the Minister of State, that he took over the reins of the country. While he enjoyed popular support until Mid-1980, his influence began to fall thereafter.

Is there an algorithm (deterministic or stochastic)# that can generate a 2-tuple (date, event), where the event is implied, by the paragraph, to have occured on the date? In the above case:

  • (June 1970, great leader took oath)

  • (May 1972, took over the reins)

    or better yet

  • (May 1972, the great leader took over the reins)

  • (1980, fall in influence)

#Later addition

  • 2
    $\begingroup$ This problem seems to contain three phases: 1) extract dates, 2) extract events and 3) correlate both data sets. 1) is certainly doable and I can imagine decent heuristics for 3), but how do you expect to solve 2)? $\endgroup$
    – Raphael
    Mar 11, 2012 at 23:02
  • 1
    $\begingroup$ @Raphael Nice rephrasing of my question! $\endgroup$
    – check123
    Mar 12, 2012 at 1:58
  • $\begingroup$ Well, do you have some info regarding 2), e.g. a restricted set of interesting events (i.e. words)? Do you want to extract all noun/verb pairs as long as they have a date? $\endgroup$
    – Raphael
    Mar 12, 2012 at 7:31
  • $\begingroup$ Do you want to extract time frames, too? In your example, consider (<= May 1972, death of the Minister of State) or (<= Mid-1980, [the great leader] enjoyed popular support). $\endgroup$
    – Raphael
    Mar 12, 2012 at 7:32
  • $\begingroup$ @Raphael Sorry for the (very) late reply. Regarding 2) No. I am trying for a generalised approach. $\endgroup$
    – check123
    Mar 17, 2012 at 16:52

2 Answers 2


In general, the problem of identifying dates and other temporal markers in text is called the problem of extracting temporal references. The search linked will take you to papers related to this.

  • $\begingroup$ Didn't knew that the problem had a name. Will look up more on that and see if I can find something worthwhile. :) $\endgroup$
    – check123
    Mar 18, 2012 at 2:48

Since you ask for a algorithmic approach, I will be as stubborn as an algorithm. I'm sorry to treat this question like this, but since it doesn't seem like a complex theoretical problem, I will synthesize the possible approaches.

Question: can you give me a algorithmic definition of a date and of particular event?

If you can: Since your definition is algorithmic, then this is probably some kind of formal grammar, and your problem will be to tune that grammar to catch every case you need to consider. (I'm interested if you can give me an exact definition that isn't a formal grammar)

If you can't: then at least you can come up with examples. Alright then. The best – and only I can think of – approach is machine learning algorithms, that you will have to train in order to recognize your dates and then your events. (Using a corpus of sentences annotated by hand) However this is quite overweening compared to some big hand-made regexp that will probably do the job. If you really, really want to do it I think the most efficient will be this kind of regexp given as a parameter to the learning algorithm but you better ask machine learning experts.

Good luck with this, It's much easier just to talk about it (in both cases).

  • 1
    $\begingroup$ That said, I think combining dates and events will definitely need some stochastic models. $\endgroup$
    – Raphael
    Mar 12, 2012 at 22:57
  • $\begingroup$ Dates in most formats I can capture using regexp. With some programming logic, I can extract the sentences around the dates. The problem then is that I need a model or a probability distribution that when a particular sentence pattern, Ex.: The cat ate the mouse on 25th August. [<article><noun><verb><article><noun><preposition><date>], appears then a (sub)set of the pattern, The cat ate the mouse (in our case), correlates to the date y (25th August) with probability z. $\endgroup$
    – check123
    Mar 17, 2012 at 17:07
  • $\begingroup$ @jmad If you don’t mind could you adjust the formatting of your post? Using the quote style for a non-quote (or a self quote?) is rather confusing. $\endgroup$
    – uli
    Mar 17, 2012 at 17:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.