Efficient paging of search query results
First Claim
1. A method of providing search results to a user, comprising:
- receiving a request for a search query, the request comprising a maximum number of documents to be displayed on a results page;
retrieving a number of documents relevant to the search query, the number of documents retrieved greater than the maximum number of results to be displayed on the results page by a predetermined amount;
determining access rights corresponding to a plurality of retrieved documents;
maintaining session state information, the session state information comprising a first value representing a number of documents for which a user is determined to have access rights and a second value representing a number of documents for which the access rights have been determined;
retrieving a number of additional documents relevant to the search query, the number of additional documents determined from the session state information;
determining access rights for a plurality of the additional documents beginning with a document following the number of documents for which the access rights have been determined; and
instructing a client computer to display documents on the results page for which the user is determined to have access rights;
wherein determining access rights corresponding to the plurality of retrieved documents comprises;
setting a first document of the number of documents retrieved as a current result;
determining whether the user is authorized to view the current result;
if the user is not authorized to view the current result,removing the current result,setting a next document of the number of documents retrieved as the current result, anddetermining whether the user is authorized to view the current result; and
if the user is authorized to view the current result,selecting the current result for display,setting a next document of the number of documents retrieved as the current result, anddetermining whether the user is authorized to view the current result.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and computer-readable media provide for efficient paging of search results in accordance with the access rights of a user. According to various implementations, a request for a search query results in a calculated number of search results being retrieved and analyzed for user access rights. As documents having user access rights are located, session state information corresponding to the number of located documents having user access rights and to the number of analyzed documents required to locate the number of documents having user access rights is maintained. This information is used to dynamically alter the number of subsequent documents that are retrieved in order to fill a page of results. This minimizes redundant determinations of user access rights and minimizes the number of documents required to be retrieved and analyzed in order to fulfill a search query request.
-
Citations
19 Claims
-
1. A method of providing search results to a user, comprising:
-
receiving a request for a search query, the request comprising a maximum number of documents to be displayed on a results page; retrieving a number of documents relevant to the search query, the number of documents retrieved greater than the maximum number of results to be displayed on the results page by a predetermined amount; determining access rights corresponding to a plurality of retrieved documents; maintaining session state information, the session state information comprising a first value representing a number of documents for which a user is determined to have access rights and a second value representing a number of documents for which the access rights have been determined; retrieving a number of additional documents relevant to the search query, the number of additional documents determined from the session state information; determining access rights for a plurality of the additional documents beginning with a document following the number of documents for which the access rights have been determined; and instructing a client computer to display documents on the results page for which the user is determined to have access rights; wherein determining access rights corresponding to the plurality of retrieved documents comprises; setting a first document of the number of documents retrieved as a current result; determining whether the user is authorized to view the current result; if the user is not authorized to view the current result, removing the current result, setting a next document of the number of documents retrieved as the current result, and determining whether the user is authorized to view the current result; and if the user is authorized to view the current result, selecting the current result for display, setting a next document of the number of documents retrieved as the current result, and determining whether the user is authorized to view the current result. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer-readable medium having computer-executable instructions stored thereon which, when executed by a computer, cause the computer to:
-
receive a request for a search query, the request comprising a maximum number of documents to be displayed on a results page; retrieve a number of documents relevant to the search query that is greater than the maximum number of results to be displayed on the results page by a predetermined amount; determine access rights corresponding to a plurality of retrieved documents; maintain session state information, the session state information comprising a first value representing a number of documents for which a user is determined to have access rights and a second value representing a number of documents for which the access rights have been determined; determine whether the first value is equivalent to the maximum number of documents to be displayed on the results page; if the first value is equivalent to the maximum number of documents to be displayed on the results page, cause a client computer to display the documents for which the user is determined to have access rights; and if the first value is not equivalent to the maximum number of documents to be displayed on the results page, retrieve an additional number of documents relevant to the search query calculated using the session state information, determine access rights corresponding to the additional number of documents until the first value is equivalent to the maximum number of documents to be displayed on the results page, and cause the client computer to display the documents for which the user is determined to have access rights. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A method for providing search results to a user, comprising:
-
receiving a request for a search query, the request comprising a maximum number of documents to be displayed on a results page; retrieving a quantity of documents relevant to the search query that is a greater than the maximum number of results to be displayed on the results page by a predetermined percentage; setting a first document of the quantity of documents retrieved as a current result; determining whether a user is authorized to view the current result; if the user is not authorized to view the current result, removing the current result, setting a next document of the quantity of documents retrieved as the current result, and determining whether the user is authorized to view the current result; if the user is authorized to view the current result, selecting the current result for display, setting a next document of the quantity of documents retrieved as the current result, determining whether the user is authorized to view the current result, and increasing each of two values maintained as session state information, a first value representing a quantity of documents for which a user is determined to be authorized to view and a second value representing a quantity of documents for which the a determination has been made as to whether the user is authorized to view; determining whether the first value is equivalent to the maximum number of documents to be displayed on the results page; if the first value is equivalent to the maximum number of documents to be displayed on the results page, causing a client computer to display the documents for which the user is determined to have access rights; and if the first value is not equivalent to the maximum number of documents to be displayed on the results page, retrieving an additional quantity of documents relevant to the search query calculated using the session state information, determining access rights corresponding to the additional quantity of documents until the first value is equivalent to the maximum number of documents to be displayed on the results page, and causing the client computer to display the documents for which the user is determined to have access rights. - View Dependent Claims (15, 16, 17, 18, 19)
-
Specification