IP Library Granted Patent US 7,730,008
Granted Patent B2
US 7,730,008 · App. 11/179,818 · Granted Jun 1, 2010

Database interface and database analysis system

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,730,008
App. No.
11/179,818
Granted
Jun 1, 2010
Kind
B2
Abstract

A method, system, and computer program product for interactive searching with executable suggestions are provided. The present invention provides a search engine and data management technology that can understand what users are looking for, understand the data in a database, and present immediately useful suggestions for finding the right information. Executable suggestions are presented that enable a user to further narrow or broaden a search intelligently and adaptively in real-time. Each executable suggestion describes a search and corresponding search criteria and provides information on the actual search results a user will obtain according to this search criteria. In one embodiment of the present invention, a system has a suggestion engine and one or more suggestion spaces.

Claims (105)

1. A database interface, comprising:

a user interface device including at least one processor configured to form a representation of a first query of a database in response to an input, to transmit the first query of the database, to receive a result of the first query, to receive a recommendation to change the first query, to present for display a representation of the result of the first query, to present for display a representation of the recommendation to change the first query, to transmit a second query of the database in response to another input, to receive a result of the second query, and to present for display a representation of the result of the second query;

wherein the first query has a parameter that corresponds to an object in a set, the recommendation to change the first query includes at least one child of the object and at least one parent of the object, and the second query corresponds to a child of the object or parent of the object selected from the recommendation to change the first query.

2. The database interface of claim 1 , wherein the at least one processor further is configured to present the representation of the recommendation to change the first query in at least one of a written form and a graphic form and to transmit the second query to the database in response to an input that interacts with the at least one of the written form and the graphic form of the recommendation to change the first query.

3. The database interface of claim 2 , wherein the representation of the recommendation to change the first query comprises at least one of a written hyperlink and a graphic hyperlink.

4. The database interface of claim 1 , wherein the at least one processor is configured to convert the first query into a form that differentiates a first parameter from a second parameter.

5. A method for interfacing with a database, comprising:

forming a representation of a first query of the database at a database interface processing device in response to an input, wherein the first query has a parameter that corresponds to an object in a set;

transmitting the first query to the database;

receiving at the database interface processing device a result of the first query and a recommendation to change the first query, wherein the recommendation to change the first query includes at least one child of the object and at least one parent of the object;

presenting for display at the database interface processing device a representation of the result of the first query and a representation of the recommendation to change the first query;

transmitting from the database interface processing device a second query of the database, wherein the second query corresponds to a child of the object or a parent of the object selected from the recommendation to change the first query;

receiving at the database interface processing device a result of the second query; and

presenting for display at the database interface processing device a representation of the result of the second query.

6. The method of claim 5 , wherein said presenting the representation of the recommendation to change the first query comprises presenting the representation of the recommendation in at least one of a written form and a graphic form and said transmitting the second query comprises receiving an input at the database interface processing device that interacts with the at least one of the written form and the graphic form.

7. The method of claim 6 , wherein the representation of the recommendation to change the first query comprises at least one of a written hyperlink and a graphic hyperlink.

8. The method of claim 5 , further comprising converting the first query into a form that differentiates a first parameter from a second parameter.

9. An article of manufacture including a computer-readable storage medium having stored thereon computer-executable instructions that, if executed by a computing device, cause the computing device to perform operations for interfacing with a database, the operations comprising:

forming a representation of a first query of the database in accordance with an input, wherein the first query has a parameter that corresponds to an object in a set;

transmitting the first query to the database;

receiving a result of the first query and a recommendation to change the first query, wherein the recommendation to change the first query includes at least one child of the object and at least one parent of the object;

presenting for display a representation of the result of the first query and a representation of the recommendation to change the first query;

transmitting a second query of the database in response to another input, wherein the second query corresponds to a child of the object or a parent of the object selected from the recommendation to change the first query;

receiving a result of the second query; and

presenting for display a representation of the result of the second query.

10. A database analysis system, comprising:

a search engine executing on at least one processor and configured to:

receive a first query of a database, wherein the first query has a parameter that corresponds to an object in a set,

search the database for the object, and

transmit a result of the first query; and

a suggestion engine executing on the at least one processor and configured to:

analyze a number of search result elements, for each candidate value of the parameter,

determine a value of the parameter corresponding to the result of the first query, wherein the value of the parameter corresponding to the result of the first query has a baseline number of search result elements in the object in the set,

determine (i) at least one parent of the object in the first set, wherein the number of search result elements in the object for the candidate value of the parameter is more than the baseline number of search result elements, and (ii) at least one child of the object in the set, wherein the number of search result elements in the object for the candidate value of the parameter is less than the baseline number of search result elements; and

transmit a recommendation to change the first query,

wherein the search engine further is configured to receive a second query of the database, and to transmit a result of the second query, and

wherein the recommendation to change the first query includes at least one child of the object and at least one parent of the object, and the second query corresponds to a child of the object or a parent of the object selected from the recommendation to change the first query.

11. The database analysis system of claim 10 , wherein the suggestion engine is further configured to count a number of search result elements in each child of the object and each parent of the object, and the recommendation to change the first query includes the number of search result elements in the at least one child of the object and the at least one parent of the object.

12. The database analysis system of claim 10 , wherein the first query has a second parameter that corresponds to the object in a second set,

wherein the suggestion engine is further configured to:

analyze a number of search result elements, for each candidate value of the second parameter, to determine a value of the second parameter corresponding to the result of the first query having the baseline number of search results in the object in the second set, and

determine (iii) at least one child of the object in the second set, wherein the number of search result elements for the candidate value of the second parameter of the object in the second set is less than the baseline number, and (iv) at least one parent of the second object in the second set, wherein the number of search result elements for the candidate value of the second parameter of the object in the second set is more than the baseline number, and

wherein the recommendation to change the first query further includes at least one child of the object in the second set and at least one parent of the object in the second set.

13. The database analysis system of claim 12 , further comprising a query builder configured to convert the first query into a form that differentiates the parameter that corresponds to the object in the set from the second parameter of the object in the second set.

14. The database analysis system of claim 10 , further comprising a suggestion space including at least one table and configured to receive a record from the database, to parse the record to determine a field of the record, to identify the field with the first set, and to add a value of the field as a new member of one of an existing object of the first set and a new object of the first set.

15. The database analysis system of claim 14 , wherein the suggestion space is further configured to receive a signal from the database, wherein the signal indicates that a change has been made to the record.

16. The database analysis system of claim 14 , wherein said suggestion space is further configured to parse the record to determine the field, to identify the field with the first set, and to add the value as the new member of one of the existing object and the new object, in accordance with an input from an interface device.

17. A method for analyzing a database, comprising:

receiving from an interface device a first query of a database, wherein the first query has a parameter that corresponds to an object in a set;

searching the database for the object;

analyzing at a suggestion engine a number of search result elements in the object, for each candidate value of the parameter, to determine a value of the parameter corresponding to a result of the first query, wherein the value of the parameter corresponding to the result of the first query has a baseline number of search result elements;

constructing at the suggestion engine a recommendation to change the first query, wherein the recommendation to change the first query includes at least one parent of the object, wherein the number of search result elements of the object for the candidate value of the parameter is more than the baseline number of search result elements, and at least one child of the object, wherein the number of search result elements of the object for the candidate value of the parameter is less than the baseline number of search result elements;

transmitting a result of the first query to the interface device;

transmitting from the suggestion engine to the interface device the recommendation to change the first query;

receiving from the interface device a second query of the database, wherein the second query corresponds to a parent of the object or a child of the object selected from recommendation to change the first query transmitted to the interface device; and

transmitting to the interface device a result of the second query.

18. The method of claim 17 , further comprising:

receiving a record from the database;

parsing the record to determine a field of the record;

identifying the field with the set; and

adding a value of the field as a new member of one of an existing object of the set and a new object of the set.

19. The method of claim 18 , further comprising receiving a signal from the database, wherein the signal indicates that a change has been made to the record.

20. The method of claim 18 , wherein the parsing, the identifying, and the adding are performed by a user.

21. An article of manufacture including a computer-readable storage medium having stored thereon computer-executable instructions that, if executed by a computing device, cause the computing device to perform operations for analyzing a database, the operations comprising:

receiving from an interface device a first query of a database, wherein the first query has a parameter that corresponds to an object in a set;

searching the database for the object;

analyzing a number of search result elements in the object, for each candidate value of the parameter, to determine a value corresponding to the result of the first query, wherein the value of the parameter corresponding to the result of the first query has a baseline number of search result elements;

constructing a recommendation to change the first query, wherein the recommendation to change the first query includes at least one parent of the object, wherein the number of search result elements of the object for the candidate value of the parameter is more than the baseline number of search result elements, and at least one child of the object, wherein the number of search result elements of the object for the candidate value of the parameter is less than the baseline number-of search result elements;

transmitting a result of the first query to the interface device;

transmitting to the interface device the recommendation to change the first query;

receiving from the interface device a second query of the database, wherein the second query corresponds to a child of the object or a parent of the object selected from the recommendation to change the first query transmitted to the interface device; and

transmitting to the interface device a result of the second query.

22. A database interfacing system, comprising:

means for forming a representation of a first query of the database, wherein the first query has a parameter that corresponds to an object in a set;

means for transmitting the first query to the database;

means for receiving a result of the first query and a recommendation to change the first query, wherein the recommendation to change the first query includes at least one child of the object and at least one parent of the object;

means for presenting a display representation of the result of the first query and a display representation of the recommendation to change the first query;

means for transmitting a second query of the database, wherein the second query corresponds to a child of the object or a parent of the object selected from the recommendation to change the first query;

means for receiving a result of the second query; and

means for presenting a display representation of the result of the second query.

23. A database analysis system, comprising:

means for receiving a first query of a database, wherein the first query has a parameter that corresponds to an object in a set;

means for searching the database for the object;

means for analyzing a number of search result elements in the object, for each candidate value of the parameter, to determine a value of the parameter corresponding to the result of the first query, wherein the value of the parameter corresponding to the result of the first query has a baseline number of search result elements in the object in the set, to determine at least one parent of the object in the first set, wherein the number of search result elements of the object for the candidate value of the parameter is more than the baseline number of search results, and at least one child of the object, wherein the number of search result elements of the object for the candidate value of the parameter is less than the baseline number of search result elements;

means for transmitting a result of the first query;

means for transmitting a recommendation to change the first query, wherein the recommendation to change the first query includes at least one child of the object and at least one parent of the object;

means for receiving a second query of the database, wherein the second query corresponds to a child of the object or a parent of the object selected from the recommendation to change the first query; and

means for transmitting a result of the second query.

24. A database analysis system, comprising:

a search engine executing on at least one computing device and configured to:

receive a first query of a database, wherein the first query has a first parameter that corresponds to an object in a first set and a second parameter that corresponds to the object in a second set;

search the database for the object; and

transmit a result of the first query; and

a suggestion engine executing on the at least one computing device and configured to:

analyze a number of search result elements, for each candidate value of the first parameter, and for each candidate value of the second parameter,

determine a value of the first parameter corresponding to the result of the first query having a baseline number of search results in the object in the first set,

determine a value of the second parameter corresponding to the result of the first query having the baseline number of search results in the object in the second set,

determine:

(i) at least one child of the object in the first set, wherein the number of search result elements in the object for the candidate value of the parameter is less than the baseline number of search result elements;

(ii) at least one parent of the object in the first set, wherein the number of search result elements in the object for the candidate value of the parameter is more than the baseline number of search result elements,

(iii) at least one child of the object in the second set, wherein the number of search result elements for the candidate value of the second parameter of the object in the second set is less than the baseline number; and

(iv) at least one parent of the second object in the second set, wherein the number of search result elements for the candidate value of the second parameter of the object in the second set is more than the baseline number, and

transmit a recommendation to change the first query, wherein the recommendation to change the first query includes (a) at least one child of the object in the first set or at least one child of the object in the second set, and (b) at least one parent of the object in the first set or at least one parent of the object in the second set; and

wherein the search engine is further configured to receive a second query of the database, and to transmit a result of the second query, wherein the second query corresponds to a child of the object or a parent of the object selected from the recommendation.

25. The database analysis system of claim 24 , wherein the recommendation to change the first query includes (a) at least one child of the object in the first set and at least one parent of the object in the first set, and (b) at least one child of the object in the second set and at least one parent of the object in the second set.

Assignments (13)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2023
From: MIND FUSION, LLC
To: BYTEWEAVR, LLC
Reel/Frame 064803/0532 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 13, 2023
From: INTELLECTUAL VENTURES ASSETS 191 LLC
To: MIND FUSION, LLC
Reel/Frame 064270/0685 →
SECURITY INTEREST Recorded Mar 24, 2023
From: MIND FUSION, LLC
To: INTELLECTUAL VENTURES ASSETS 191 LLC; INTELLECTUAL VENTURES ASSETS 186 LLC
Reel/Frame 063295/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2023
From: BENHOV GMBH, LLC
To: INTELLECTUAL VENTURES ASSETS 191 LLC
Reel/Frame 062755/0939 →
MERGER Recorded Nov 13, 2015
From: ARCHERON LIMITED LLC
To: BENHOV GMBH, LLC
Reel/Frame 037038/0879 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE DESIGNATION FROM "HALL, KINION & ASSOCIATES, INC." TO --ICP ACQUISITION CORPORATION-- PREVIOUSLY RECORDED ON REEL 018263 FRAME 0642. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT OF ASSIGNOR'S INTEREST TO ICP ACQUISITION CORPORATION. Recorded Feb 3, 2011
From: ICPLANET CORPORATION
To: ICP ACQUISITION CORPORATION
Reel/Frame 025741/0646 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2007
From: KFORCE INC.
To: ARCHERON LIMITED LLC
Reel/Frame 019550/0768 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 13, 2007
From: ICPLANET CORPORATION
To: KFORCE INC.
Reel/Frame 019002/0645 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2006
From: ICPLANET CORPORATION
To: ICP ACQUISITION CORPORATION
Reel/Frame 018258/0453 →
MERGER Recorded Sep 15, 2006
From: HALL, KINION & ASSOCIATES, INC.
To: KFORCE INC.
Reel/Frame 018257/0579 →
ASSET PURCHASE AGREEMENT Recorded Sep 15, 2006
From: ICPLANET CORPORATION
To: HALL, KINION & ASSOCIATES, INC.
Reel/Frame 018263/0642 →
CHANGE OF NAME Recorded Sep 15, 2006
From: ICP ACQUISITION CORPORATION
To: ICPLANET CORPORATION
Reel/Frame 018263/0619 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2006
From: FOULGER, MICHAEL G.; GAUL, MATTHEW J.
To: ICPLANET CORPORATION
Reel/Frame 018258/0114 →