IP Library Granted Patent US 7,970,791
Granted Patent B2
US 7,970,791 · App. 12/751,268 · Granted Jun 28, 2011

Re-ranking search results from an enterprise system

Assignee: Oracle International Corporation
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,970,791
App. No.
12/751,268
Granted
Jun 28, 2011
Kind
B2
Abstract

A flexible and extensible architecture allows for secure searching across an enterprise. Such an architecture can provide a simple Internet-like search experience to users searching secure content inside (and outside) the enterprise. The architecture allows for the crawling and searching of a variety of sources across an enterprise, regardless of whether any of these sources conform to a conventional user role model. The architecture further allows for security, recency, or other attributes to be submitted at query time, for example, in order to re-rank query results from enterprise resources. The user query also can be transformed to provide for dynamic querying that provides for a more current result list than can be obtained for static queries.

Claims (53)

1. A method of improving ranking results for a data query, the method comprising:

receiving an attribute for ranking query results;

receiving query results from a query of a data source, each received query result having a respective numeric relevancy score relating to the query;

for each received query result, concatenating with its relevancy score, using a processor operatively coupled to a memory, a segment of digits representing a value for the attribute corresponding to the query result to form numeric keys, such that the segment of digits is enabled as a score tie breaking factor among query results; and

returning the query results ordered by the numeric keys, wherein the numeric keys take the form of a high segment of digits occupied by a relevancy score and a lower segment of digits representing the value for the attribute of the respective query result.

2. The method according to claim 1 , wherein:

the received attribute is selected from the group consisting of creation date, modified date, and occurrence date.

3. The method according to claim 1 , wherein the received attribute is a recency.

4. The method according to claim 3 , wherein the recency for each query result is a difference in time.

5. The method according to claim 1 , further comprising:

storing the query results before the concatenating.

6. The method according to claim 1 , wherein the received attribute is a recency calculated using the following:

recency=|sysdate−last_modified_date|, —in number of days

when recency>30 then recency=30+recency/30,

when recency>99 then recency=99,

when recency<0 then recency=99, and

wherein sysdate is the current system date.

7. The method according to claim 1 , further comprising:

appending a lowest segment of digits occupied by a sequence number from an original hit list, such that the segment of digits representing the attribute of the respective query result is a middle segment between the relevancy score and lowest segments.

8. A non-transitory machine readable storage medium embodying information indicative of instructions for causing one or more machines to perform operations comprising:

receiving an attribute for ranking query results;

receiving query results from a query of a data source, each received query result having a respective numeric relevancy score relating to the query;

for each received query result, concatenating with its relevancy score a segment of digits representing a value for the attribute corresponding to the query result to form numeric keys, such that the segment of digits is enabled as a score tie breaking factor among query results; and

returning the query results ordered by the numeric keys, wherein the numeric keys take the form of a high segment of digits occupied by a relevancy score and a lower segment of digits representing the value for the attribute of the respective query result.

9. The non-transitory machine readable storage medium according to claim 8 , wherein:

the received attribute is selected from the group consisting of creation date, modified date, and occurrence date.

10. The non-transitory machine readable storage medium according to claim 8 , wherein the received attribute is a recency.

11. The non-transitory machine readable storage medium according to claim 8 , further comprising:

storing the query results before the concatenating.

12. The non-transitory machine-readable storage medium according to claim 8 , wherein the received attribute is a recency calculated using the following:

recency=|sysdate−last_modified_date|, —in number of days

when recency>30 then recency=30+recency/30,

when recency>99 then recency=99,

when recency<0 then recency=99, and

wherein sysdate is the current system date.

13. A computer system executing instructions set forth in a computer program, the computer system comprising:

a processor; and

a memory coupled to the processor, wherein the computer program includes:

program code for receiving an attribute for ranking query results;

program code for receiving query results from a query of a data source, each received query result having a respective numeric relevancy score relating to the query;

program code for, for each received query result, concatenating with its relevancy score a segment of digits representing a value for the attribute corresponding to the query result to form numeric keys, such that the segment of digits is enabled as a score tie breaking factor among query results; and

program code for returning the query results ordered by the numeric keys, wherein the numeric keys take the form of a high segment of digits occupied by a relevancy score and a lower segment of digits representing the value for the attribute of the respective query result.

14. The computer system according to claim 13 , wherein:

the received attribute is selected from the group consisting of creation date, modified date, and occurrence data.

15. The computer system according to claim 13 , wherein the received attribute is a recency.

16. The computer system according to claim 13 , further comprising:

program code for storing the query results before the concatenating.

17. The computer system according to claim 13 , wherein the received attribute is a recency calculated using the following:

recency=|sysdate−last_modified_date|, —in number of days

when recency>30 then recency=30+recency/30,

when recency>99 then recency=99,

when recency<0 then recency=99, and

wherein sysdate is the current system date.

Continuity (6)
Continuation 11737091 · Apr 18, 2007
Continuation 11680530 · Feb 28, 2007
Provisional Application 60800737 · May 16, 2006
Provisional Application 60778151 · Mar 1, 2006
Provisional Application 60777988 · Mar 1, 2006
Related Publication 20100185611A1 · Jul 22, 2010