The VAGUE system, described in this paper, is designed to support imprecise (vague) queries on a relational database system. The objective is to be able to answer queries such as "List all inexpensive French restaurants that are located downtown," where the requirements for inexpensive, downtown, and even French may provide fuzzy matches to the exact data stored in a restaurant database. The author presents an interesting and practical approach for designing and querying a relational database to accommodate such vague queries directly. The concept of "vagueness" is implemented in the system by using a data metric on the distance between values in attribute domains. A database designer must invent and build a distance metric for each attribute based on the semantics of database applications. Each distance metric is represented in the database in one of four ways; using a built-in metric function, providing a procedure to compute the metric, designing a separate relation to store the metric, or using a reference relation where the attribute distance is based on the distance metrics of related attributes. The QUEL query language is extended to include a "similar-to" operator that requires the use of the distance metrics in determining a query result. In addition, the VAGUE system provides a user interface that prompts the user to help formulate the query and understand the meaning of its results. This well-written paper demonstrates the merits of the author's approach. The related research areas of fuzzy database, similarity in information retrieval, database browsers, and ambiguity in query languages are surveyed and their relationship to the current research is shown. I recommend this paper to anyone who is interested in these topics.
Alan Raymond Hevner
ACM Computing Reviews