Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Algorithm for Context-Based Search

IP.com Disclosure Number: IPCOM000062640D
Original Publication Date: 1986-Dec-01
Included in the Prior Art Database: 2005-Mar-09
Document File: 4 page(s) / 84K

Publishing Venue

IBM

Related People

Chess, KF: AUTHOR [+2]

Abstract

This article describes a database navigation system which combines efficient storage of query information with fast query execution. The result of this effort is the algorithm discussed below. However, in order to better understand the algorithm, a review of the overall mechanism to which it belongs is set forth. In the Videotex environment, there is considerable set-up work performed by information suppliers (Image Omitted) before the data is made available to the end users. Our goal was to minimize dependence upon these people wherever possible, and thus make the system more responsive to the needs of the end users.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 39% of the total text.

Page 1 of 4

Algorithm for Context-Based Search

This article describes a database navigation system which combines efficient storage of query information with fast query execution. The result of this effort is the algorithm discussed below. However, in order to better understand the algorithm, a review of the overall mechanism to which it belongs is set forth. In the Videotex environment, there is considerable set-up work performed by information suppliers

(Image Omitted)

before the data is made available to the end users. Our goal was to minimize dependence upon these people wherever possible, and thus make the system more responsive to the needs of the end users. The information provider is required to provide several types of information before a search can be effective: define sets of attributes or "classes" which serve as templates for descriptive data, provide descriptions of target information (using the classes) so that they can be found by the search, and finally set up the search itself. The attribute set definitions are stored in a table (Fig. 1). The attributes within these sets or classes serve as a guide to specify the kind of information which is to appear in the search. For example, the RESTAURANT class in Fig. 1 has four attributes assigned to it. When either a search or target is defined based upon the class RESTAURANT, the responses will consist of city, state, food, and price. The class, with its associated attributes, must therefore be entered previous to defining any search requests and/or search targets, since it is used as a guide by the information provider for appropriate responses. These responses can be seen as the KW1-KW6 entries for the definition of search (Fig. 2) and the definition of target objects (Fig. 3). The keyword entries in Fig. 2 may be defined by an information provider and/or an end user. Where input is desired from the end user, the information provider inserts a "?" in that keyword column. In addition, a synonym table (Fig. 4) is used to standardize the keyword inputs made by either the information provider or end user. For example, both NYC and BIG APPLE would be represented in the synonym table as NEW YORK CITY. The alternatives considered before developing our method were: Develop an interpreter above SQL to transform organized data input into a dynamic SQL query. Write and maintain queries for all possible

combinations of one to six columns (the method would

work for n columns). Develop a single query using the 'LIKE' comparator

for all six columns. Each of these alternatives had drawbacks.

The first alternative had two disadvantages: the necessity of writing an interpreter, and the poor performance of dynamic SQL. The second, though not impossible for our application, required 63 different SQL queries with supporting code, as well as the need to select the

1

Page 2 of 4

appropriate query. (However, expansion to additional columns would require many more queries to be stored and supported.) The...