A search engine returns search results that match a search query submitted by a user. Typically, the search engine orders the search results. The order usually takes the form of a “ranking”, where the document with the highest ranking is the document considered most likely to satisfy the interest reflected in the search criteria specified by the user. Once the matching documents have been determined, and the display order of those documents has been determined, the search engine sends to the user that issued the search a “search results page” that presents information about the matching documents in the selected display order. Typically, the number of documents that match a search is so large that the user is presented with a search results page that only displays information about the top N ranking documents, where N may be significantly smaller than the total number of matching documents. The search results page typically includes a control that allows the user to retrieve information about the “next N” matching documents, in case the first N matching documents do not entirely satisfy the user's interest.
Unfortunately, the user search results that have the highest ranking may not correlate well with the search results in which a particular user is interested. Thus, a user might have to wade through many pages of search results to locate results of interest. Worse yet, the results in which a particular user is interested might have such a low ranking that the user does not find them at all.
A potential reason why the search results are not satisfactory for the user is that many search engines attempt to search the entire World Wide Web. However, not all searches cover the entire World Wide Web. In a federated search, the search engine relays query terms that were provided by the user on to other data sources. Those data sources provide search results, which the search engine aggregates and filters before sending on to the user. Thus, a federated search can potentially be more relevant to the user, especially if the user has some control over the data sources that are searched.
However, a limitation of federated searches is that the search engine is required to have access to the data sources. However, some of the most pertinent search results may be on data sources that are inaccessible to the federated search engine.
In view of the foregoing, improved techniques are needed for providing a user with search results that are relevant to the particular user.
The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.