A Principled Framework for Constructing Natural Language Interfaces to Temporal Databases
Most existing natural language interfaces to databases (Nlidbs) were designed to be used with snapshot database systems, that provide very limited facilities for manipulating time-dependent data. Consequently, most Nlidbs also provide very limited support for the notion of time. In particular, they were designed to answer questions that refer mainly to the present, and do not support adequately the mechanisms that natural language uses to express time. The database community is becoming increasingly interested in temporal database systems. These are intended to store and manipulate in a principled manner information not only about the present, but also about the past and future. When interfacing to temporal databases, it becomes crucial for Nlidbs to interpret correctly temporal linguistic mechanisms (verb tenses, temporal adverbials, temporal subordinate clauses, etc.) I argue that previous approaches to natural language interfaces for temporal databases (Nlitdbs) are problematic, mainly because they ignore important time-related linguistic phenomena, and/or they assume idiosyncratic temporal database systems. This thesis develops a principled framework for constructing English Nlitdbs, drawing on research in tense and aspect theories, temporal logics, and temporal databases. I first explore temporal linguistic phenomena that are likely to appear in English questions to Nlitdbs. Drawing on existing linguistic theories of time, I formulate an account for a large number of these phenomena that is simple enough to be embodied in practical Nlitdbs. Exploiting ideas from temporal logics, I then define a temporal meaning representation language, Top, and I show how the Hpsg grammar theory can be modified to incorporate the tense and aspect account of this thesis, and to map a wide range of English questions involving time to appropriate Top expressions. Finally, I present and prove the correctness of a method to translate from Top to Tsql2, Tsql2 being a temporal extension of the Sql-92 database language. This way, I establish a sound route from English questions involving time to a general-purpose temporal database language, that can act as a principled framework for building Nlitdbs. To demonstrate that this framework is workable, I employ it to develop a prototype Nlitdb, implemented using the Ale grammar development system and Prolog. The prototype Nlitdb can map temporal questions from a non-trivial fragment of English to appropriate Tsql2 queries.