1. Field of the Invention
The present invention relates to systems and methods for entering data into, and searching for data contained in, a database.
2. Description of the Related Art
Current methods for entering data into a database and for searching a database commonly involve entering data into search fields and using smart speller algorithms to search the database for information matching the entered data. These methods may provide for either non-sequential or sequential data entry. In sequential data entry, the search fields are in a sequential relationship relative to one another. Consequently, an upper level field must be resolved before entry is allowed into a lower level field. In other words, complete information must be entered into the upper level fields before moving to lower level fields. For instance, referring to
Regardless of whether the system provides sequential or non-sequential data entry, the search filter of the database is typically based on only the resolved upper level fields, and does not consider unresolved fields. As a result, current data entry and search methods are often inflexible and time consuming, taking as long as several minutes to complete. In addition, the current methods can lead the user down several dead-end paths before obtaining proper results.
Furthermore, the database typically stores information in a series of tables or lists. Commonly, these tables are indexed or arranged hierarchically in which the tables are linked to one another by a single key field or pointer. In such a hierarchical arrangement, one table serves as a root or parent table and the remaining tables branch hierarchically from the parent, thus creating levels of tables. Unfortunately, this hierarchical arrangement does not allow entry of data into lower level tables without entering data into the parent and upper level tables, thus requiring additional keystrokes and information.
Accordingly, a need remains for an efficient and flexible method for data entry and data searching that reduces the number of keystrokes and/or time-consuming progressions down possible dead-end paths.
The present invention provides a system and method for efficiently entering and searching data. In one form, the present invention provides a method for entering and processing a search for navigational information. The method comprises the steps of providing a navigational database including a plurality of data tables, which are non-hierarchically indexed; providing a search field corresponding to each one of the plurality of data tables, the search fields being non-sequential relative to one another; and inputting either partial or complete information into any one or more of the search fields. The input of information into the search fields may be performed non-sequentially. The input of partial information into the search field yields an unresolved field and the input of complete information into the search field yields a resolved field. The method further includes searching the navigational database for information matching both the unresolved fields and the resolved fields, and retrieving one or more results. Each of the results includes the information inputted into both the unresolved field and resolved fields.
In another form, the present invention provides a method for entering and processing a search of a database. The method comprises the step of providing multiple search fields, which are related to one another. The method also includes the step of entering either complete or partial information in any sequence into any of the multiple search fields. The entry of complete information into a search field results in a resolved search field and the entry of partial information into a search field results in an unresolved search field. The method also comprises the step of retrieving one or more results from the database. Each of the one or more results includes the information entered in both the resolved search fields and the unresolved search fields.
In yet another form, the present invention provides a system for providing geographical information. The system comprises a database including a plurality of data lists indexed non-hierarchical to one another and a search tool. The search tool includes a search field relating to each one of the plurality of data lists. Each of the search fields is capable of receiving either partial input or complete input. The search fields are non-sequential to one another. The search tool searches the database non-sequentially for results matching both the partial input and complete input in the search fields.
The above-mentioned and other features and objects of this invention, and the manner of attaining them, will become more apparent and the invention itself will be better understood by reference to the following description of embodiments of the invention taken in conjunction with the accompanying drawings, wherein:
Corresponding reference characters indicate corresponding parts throughout the several views. Although the drawings represent embodiments of the present invention, the drawings are not necessarily to scale and certain features may be exaggerated in order to better illustrate and explain the present invention. The exemplification set out herein illustrates an embodiment of the invention, in one form, and such exemplification is not to be construed as limiting the scope of the invention in any manner.
The embodiments hereinafter disclosed are not intended to be exhaustive or limit the invention to the precise forms disclosed in the following description. Rather the embodiments are chosen and described so that others skilled in the art may utilize its teachings.
A system in accordance with one embodiment of the present invention generally includes one or more databases and a search tool adapted to search the databases. The system of the present system may be used in a variety of applications including, for example, a navigational or geographical application. In a navigational application the database stores information relating to geographic locations in searchable lists or tables. The lists or tables are relational with respect to one another and are indexed non-hierarchically to one another. In other words, the lists or tables are not linked in a hierarchical arrangement by a key field or pointer wherein one table serves as the parent table and the remaining tables branch hierarchically from the parent table creating levels of tables. Instead, the tables are relational and are connected by a non-hierarchical link of data that joins data in the tables. For instance, the navigational database might store street address information for particular geographic locations. The address information may be broken down into different categories such as addressee name, city and/or township, state and/or province, street name, address number, and/or any other useful information including that which may be stored in V-card format. The database includes a table or list relating to each of these categories in which information relating to these categories is stored. Each geographic location entry in the database is represented by an address ID which links the city, state, street and address number tables to provide the complete street address of the particular geographic location.
The search tool includes a data entry screen having a search field corresponding to each of the database tables. Each search field is capable of receiving data entered by a user. The data may be entered by any conventional data entry means including, for example, a keyboard, a mouse, a touch screen or voice recognition system. The search fields are non-sequential relative to one another; that is, the search fields are not related to one another in a particular sequence or order. Thus, data may be entered into the search fields in any order and one particular search field need not be completed before moving to another search field. Furthermore, the search fields are adapted to receive partial or complete input. When partial information is input into a field, for example when only the first few letters of a state are entered, that field is considered unresolved. When the complete information is entered into a search field that field is considered to be resolved. The search tool is adapted to search the tables of the database to find all address IDs that include all the information, partial and complete, inputted into all search fields. The search tool may use smart speller algorithms to accomplish the search. Because the search fields are non-sequential to one another and the tables are indexed non-hierarchically to one another, a particular search field need not be resolved before moving to the next field and the search is not confined to the resolved fields. As a result, the user may skip a field or may enter partial information into that field.
By way of the example shown in
Turning to
Referring now to
In practical application, this tool may be used to search a navigational database and ultimately access a map and/or directions for reaching the location. Alternatively, or additionally, this tool may be used to more quickly enter data into a database system. The automatic return of a string of letters for matching information reduces the number of keystrokes, thereby improving the efficiency of the data entry. The system may be incorporated into a variety of applications including on-board vehicle computer systems, handheld mobile devices, and stationary computer systems.
It should be understood that the systems shown in
While this invention has been described as having an exemplary design, the present invention may be further modified within the spirit and scope of this disclosure. This application is therefore intended to cover any variations, uses, or adaptations of the invention using its general principles. Further, this application is intended to cover such departures from the present disclosure as come within known or customary practice in the art to which this invention pertains.