IP Library Granted Patent US 8,108,385
Granted Patent B2
US 8,108,385 · App. 12/553,636 · Granted Jan 31, 2012

User interfaces for search systems using in-line contextual queries

Assignee: Yahoo! Inc.
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 8,108,385
App. No.
12/553,636
Granted
Jan 31, 2012
Kind
B2
Abstract

Systems and methods, including user interfaces, are provided for implementing searches using contextual information associated with a Web page (or other document) that a user is viewing when a query is entered. The page includes a contextual search interface that has an associated context vector representing content of the page. When the user submits a search query via the contextual search interface, the query and the context vector are both provided to the query processor and used in responding to the query.

Claims (54)

1. A method comprising:

receiving, at a server, from a client, over a network, a request that includes both query data and a context vector;

wherein the query data is a first set of one or more terms;

wherein the query data is different from the context vector;

wherein the request further includes first data identifying the first set of one or more terms to the server as a set of one or more search terms, the one or more search terms having been entered by a user;

wherein the request further includes second data indicating to the server that the context vector represents a set of one or more context terms, the one or more context terms representative of content presented at the client during a time that the user entered the set of one or more search terms;

in response to the request, generating a search result comprising a ranked list of hits by at least: selecting one or more search keywords and ranking criteria based on the request, searching a search corpus for the search keywords to identify a plurality of hits, and ranking the plurality of hits using the ranking criteria to generate the ranked list of hits;

wherein generating the search result includes at least one of:

selecting the one or more search keywords based, at least in part, on the query data, but not the context vector, and selecting the ranking criteria based at least in part on the context vector;

selecting the one or more search keywords based, at least in part, on the context vector, but not the query data, and selecting the ranking criteria based at least in part on the query data;

selecting the one or more search keywords based, at least in part, on the context vector, and selecting the ranking criteria based, at least in part, on the query data, but not the context vector; or

selecting the ranking criteria based, at least in part, on one or more context terms in the context vector that were not selected as the one or more search keywords;

wherein the method is performed by one or more computing devices.

2. The method of claim 1 , wherein generating the search result includes performing a first search and a second search against the search corpus to generate, respectively, a first ranked list of hits and a second ranked list of hits;

wherein the first search and the second search are each performed using search criteria and ranking criteria based on one of: a) the query data, but not the context vector; b) the context vector, but not the query data; or c) both the query data and the context vector;

wherein at least one of the search criteria and the ranking criteria differs between the first search and the second search; and

aggregating at least the first ranked list of hits with the second ranked list of hits.

3. The method of claim 2 ,

wherein the first search is performed using search criteria based on the query data, but not the context vector;

wherein the second search is performed using search criteria based on at least the context vector.

4. The method of claim 2 ,

wherein the first search is performed using ranking criteria based on the query data, but not the context vector;

wherein the second search is performed using ranking criteria based on at least the context vector.

5. The method of claim 2 , wherein generating the search result further includes:

performing a third search to produce a third ranked list of hits using search criteria and ranking criteria based on one of: a) the query data, but not the context vector; b) the context vector, but not the query data; or c) both the query data and the context vector;

aggregating at least the first ranked list of hits with the second ranked list of hits and the third ranked list of hits;

wherein at least one of the search criteria and the ranking criteria differs between each of the first search, the second search, and the third search.

6. The method of claim 2 , wherein the first search and the second search are performed in parallel.

7. The method of claim 1 , wherein the request is an HTTP request, wherein the query data and the context vector are indicated as separate fields in the HTTP request.

8. The method of claim 1 , wherein generating the search result comprises:

selecting the one or more search keywords based, at least in part, on the query data, but not the context vector, and selecting the ranking criteria based at least in part on the context vector.

9. The method of claim 1 , wherein generating the search result comprises:

selecting the one or more search keywords based, at least in part, on the context vector, but not the query data, and selecting the ranking criteria based at least in part on the query data.

10. The method of claim 1 , wherein generating the search result comprises:

selecting the one or more search keywords based, at least in part, on the context vector, and selecting the ranking criteria based, at least in part, on the query data, but not the context vector.

11. The method of claim 1 , wherein generating the search result comprises:

selecting the ranking criteria based, at least in part, on one or more context terms in the context vector that were not selected as the one or more search keywords.

12. The method of claim 1 , wherein the context vector received in the request includes weights for a plurality of context terms.

13. The method of claim 12 , further comprising:

using the weights to select a particular context term in the plurality of context terms as one of the one or more search keywords.

14. The method of claim 13 , wherein only a subset of the plurality of context terms is selected as keywords in the one or more search keywords, wherein the entire plurality of context terms are used to select the ranking criteria.

15. One or more storage media storing instructions which, when executed by one or more processors, causes performance of the method of claim 1 .

16. One or more storage media storing instructions which, when executed by one or more processors, causes performance of the method of claim 2 .

17. One or more storage media storing instructions which, when executed by one or more processors, causes performance of the method of claim 3 .

18. One or more storage media storing instructions which, when executed by one or more processors, causes performance of the method of claim 4 .

19. One or more storage media storing instructions which, when executed by one or more processors, causes performance of the method of claim 5 .

20. One or more storage media storing instructions which, when executed by one or more processors, causes performance of the method of claim 6 .

21. One or more storage media storing instructions which, when executed by one or more processors, causes performance of the method of claim 7 .

22. One or more storage media storing instructions which, when executed by one or more processors, causes performance of the method of claim 8 .

23. One or more storage media storing instructions which, when executed by one or more processors, causes performance of the method of claim 9 .

24. One or more storage media storing instructions which, when executed by one or more processors, causes performance of the method of claim 10 .

25. One or more storage media storing instructions which, when executed by one or more processors, causes performance of the method of claim 11 .

26. One or more storage media storing instructions which, when executed by one or more processors, causes performance of the method of claim 12 .

27. One or more storage media storing instructions which, when executed by one or more processors, causes performance of the method of claim 13 .

Assignments (8)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE ASSIGNOR NAME PREVIOUSLY RECORDED AT REEL: 052853 FRAME: 0153. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 29, 2021
From: R2 SOLUTIONS LLC
To: STARBOARD VALUE INTERMEDIATE FUND LP, AS COLLATERAL AGENT
Reel/Frame 056832/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED ON REEL 053654 FRAME 0254. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST GRANTED PURSUANT TO THE PATENT SECURITY AGREEMENT PREVIOUSLY RECORDED. Recorded Dec 30, 2020
From: STARBOARD VALUE INTERMEDIATE FUND LP
To: R2 SOLUTIONS LLC
Reel/Frame 054981/0377 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Jul 8, 2020
From: STARBOARD VALUE INTERMEDIATE FUND LP
To: ACACIA RESEARCH GROUP LLC; AMERICAN VEHICULAR SCIENCES LLC; BONUTTI SKELETAL INNOVATIONS LLC; CELLULAR COMMUNICATIONS EQUIPMENT LLC; INNOVATIVE DISPLAY TECHNOLOGIES LLC; LIFEPORT SCIENCES LLC; LIMESTONE MEMORY SYSTEMS LLC; MOBILE ENHANCEMENT SOLUTIONS LLC; MONARCH NETWORKING SOLUTIONS LLC; NEXUS DISPLAY TECHNOLOGIES LLC; PARTHENON UNIFIED MEMORY ARCHITECTURE LLC; R2 SOLUTIONS LLC; SAINT LAWRENCE COMMUNICATIONS LLC; STINGRAY IP SOLUTIONS LLC; SUPER INTERCONNECT TECHNOLOGIES LLC; TELECONFERENCE SYSTEMS LLC; UNIFICATION TECHNOLOGIES LLC
Reel/Frame 053654/0254 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2020
From: EXCALIBUR IP, LLC
To: R2 SOLUTIONS LLC
Reel/Frame 053459/0059 →
PATENT SECURITY AGREEMENT Recorded Jun 5, 2020
From: ACACIA RESEARCH GROUP LLC; AMERICAN VEHICULAR SCIENCES LLC; BONUTTI SKELETAL INNOVATIONS LLC; CELLULAR COMMUNICATIONS EQUIPMENT LLC; INNOVATIVE DISPLAY TECHNOLOGIES LLC; LIFEPORT SCIENCES LLC; LIMESTONE MEMORY SYSTEMS LLC; MERTON ACQUISITION HOLDCO LLC; MOBILE ENHANCEMENT SOLUTIONS LLC; MONARCH NETWORKING SOLUTIONS LLC; NEXUS DISPLAY TECHNOLOGIES LLC; PARTHENON UNIFIED MEMORY ARCHITECTURE LLC; R2 SOLUTIONS LLC; SAINT LAWRENCE COMMUNICATIONS LLC; STINGRAY IP SOLUTIONS LLC; SUPER INTERCONNECT TECHNOLOGIES LLC; TELECONFERENCE SYSTEMS LLC; UNIFICATION TECHNOLOGIES LLC
To: STARBOARD VALUE INTERMEDIATE FUND LP, AS COLLATERAL AGENT
Reel/Frame 052853/0153 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 3, 2016
From: YAHOO! INC.
To: EXCALIBUR IP, LLC
Reel/Frame 038950/0592 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2016
From: EXCALIBUR IP, LLC
To: YAHOO! INC.
Reel/Frame 038951/0295 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2016
From: YAHOO! INC.
To: EXCALIBUR IP, LLC
Reel/Frame 038383/0466 →
Continuity (3)
Continuation 11033417 · Jan 10, 2005
Continuation In Part 10903283 · Jul 29, 2004
Related Publication 20100070484A1 · Mar 18, 2010