Search-on-the-fly/sort-on-the-fly search engine for searching databases
DCFirst Claim
1. A method implemented on a computer for searching databases, comprising:
- determining a database schema for a database, wherein the database includes database fields;
providing a list of the database fields, wherein the list includes a descriptor indicating a data category;
receiving a search selection for a database field on the provided list of the database fields;
determining a quantity of entries in the selected database field;
if the quantity exceed a specified amount, truncating data, and displaying the truncated data wherein the truncating reduces characters in one or more entries in the selected database field and the truncated data represents each of the entries in the selected database field; and
if the quantity does not exceed the specified amount, displaying contents of the database field.
3 Assignments
Litigations
1 Petition
Accused Products
Abstract
A Sort-on-the-Fly/Search-on-the-Fly search engine provides an intuitive mechanisms for searching databases, allowing a user to access data in the database without having to know anything about the database structure. A user selects a desired search term, and the search engine searches the database for all instances of the desired term, even if a specific file or table does not contain the instance. The database need not have a specific file (in a flat database) or a table (in a relational database) of names. The user may specify other criteria, or constraints to narrow the search results, or for other reasons. The search engine then conducts a further search using this criteria and produces a second search result. Further narrowing or broadening of the search are permitted, with the search-on-the-fly search engine returning results based on any new constraints. If the returned data would be too large to be conveniently displayed at a terminal, the search engine executes a truncation routine so that the returned data is easily displayed.
213 Citations
39 Claims
-
1. A method implemented on a computer for searching databases, comprising:
-
determining a database schema for a database, wherein the database includes database fields;
providing a list of the database fields, wherein the list includes a descriptor indicating a data category;
receiving a search selection for a database field on the provided list of the database fields;
determining a quantity of entries in the selected database field;
if the quantity exceed a specified amount, truncating data, and displaying the truncated data wherein the truncating reduces characters in one or more entries in the selected database field and the truncated data represents each of the entries in the selected database field; and
if the quantity does not exceed the specified amount, displaying contents of the database field. - View Dependent Claims (2)
-
-
3. A method implemented on a computer for searching a database, comprising:
-
generating a list of data fields;
receiving a first data field selection from the list of data fields;
determining a first quantity indicative of a number of entries of the selected data field;
if the first quantity exceeds a specified limit, reducing a size of data to be displayed from the selected data field wherein the reducing reduces characters in one or more entries in the selected data field and the size-reduced date represents each of the entries in the selected field; and
displaying data from the selected data field. - View Dependent Claims (4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
performing a truncation that reduces the size of the data to be displayed from the selected data field;
comparing the reduced size of the specified limit; and
if the reduced size exceeds the specified limit, repeating the truncation and comparing steps until the size of the data to be displayed from the selected field is less than or equal to the specified limit.
-
-
9. The method of claim 8, wherein a parameter is related to the size of the data to be displayed from the selected data field, and wherein the truncation comprises decrementing the parameter.
-
10. The method of claim 9, wherein the parameter is decremented by a value of one.
-
11. The method of claim 8, wherein a parameter is related to the size of the data to be displayed from the selected data field, and wherein the truncation comprises dividing the parameter by a value.
-
12. The method of claim 11, wherein the value is two.
-
13. The method of claim 8, wherein a parameter is related to the size of the data to be displayed from the selected data field, and wherein the truncation comprises multiplying the parameter by a value.
-
14. The method of claim 13, wherein the value is ¾
- .
-
15. The method of claim 3, further comprising:
-
receiving a first constraint, wherein the first constrain is related to a data element in a data field; and
receiving one or more subsequent constraints, wherein search results are generated based on a combination of the first and the one or more subsequent constraints.
-
-
16. The method claim 3, wherein each display of data comprises a search cycle, and further comprising receiving a refresh command, the refresh command resetting all search cycles.
-
17. The method claim 3, further comprising displaying the list of data fields and a representation of the selected data field, wherein the representation of the selected data field comprises one or more elements from the selected data field.
-
18. The method of claim 3, wherein the method comprises executing a plurality of search cycles, each search cycle of the plurality of search cycles providing a search result list comprising selected data elements from the data base.
-
19. The method of claim 18, further comprising resetting one or more search cycles of the plurality of search cycles.
-
20. The method of claim 3 further comprising:
-
determining a schema of the database;
comparing the determined schema to a capability of a terminal for displaying the data; and
formatting a search request from the terminal to correspond to the determined schema.
-
-
21. The method of claim 3, wherein the method for searching the database comprises searching a first database and a second database, and further comprising:
-
receiving a first search result from the search of the first database;
receiving a second search result from the search of the second database; and
combining the first and the second search results.
-
-
22. The method of claim 21, wherein the combining step comprises a Boolean AND operation.
-
23. The method of claim 21, wherein the combining step comprises a Boolean OR operation.
-
24. The method of claim 21, wherein the combining step comprises a Boolean NOR operation.
-
25. The method of claim 21, wherein the first search result is represented by a first icon and the second search result is represented by a second icon, and wherein the combining step comprises overlaying the first and the second icons.
-
26. The method of claim 3, wherein the displayed data includes one or more data records, each of the one or more data records represented by one or more of text title and an icon, and further comprising overlaying a text title or an icon on a symbol representing an online purchase, wherein the step of overlaying initiates an online purchase of an item represented by the text title or icon.
-
27. The method of claim 3, further comprising displaying the data on a terminal, the terminal including one of a handheld device, a cellular phone, a geosynchronous positioning satellite (GPS) device, a wrist-worn device, an interactive phone device, a household appliance, a television, a television set top box, a handheld computer, a main frame computer and a personal computer.
-
28. The method of claim 3, wherein the database is coupled to an Internet website, the method further comprising accessing the Internet website.
-
29. The method of claim 3, wherein the database is coupled to a node in a telecommunications network, the method further comprising accessing the node in the telecommunications network.
-
30. The method of claim 3, wherein the database is coupled to a terminal for displaying the data.
-
31. A search engine program, executable on a digital logic device, for searching one or more databases using one or more search cycles, comprising:
-
a request analyzer that receives a search request;
a status control coupled to the request analyzer, the status control including information related to the one or more search cycles;
a database qualifier coupled to the status control that accesses the one or more databases and obtains data field information;
a query generator coupled to the request analyzer that formats the received search request; and
a database driver coupled to the query generator and the database qualifier that returns data from the one or more databases, wherein the request analyzer comprises a truncator, the truncator determining a size of a data field, comparing the size to a specified limit, and reformatting the formatted search request, wherein the reformatted search request causes the database driver to return data with characters reduced in one or more entries and the returned data represents each entry in the data field. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38, 39)
-
Specification