1. Technical Field
The present invention relates in general to the field of data processing systems. More particularly, the present invention relates to the field of performing searches utilizing data processing systems. Still more particularly, the present invention relates to a system and method for altering search results sequence based on user preferences.
2. Description of the Related Art
Early computers were stand-alone units, which accessed and processed only local databases using local computer programs. Today, however, modem computers are often networked, thus providing client computers on a network access to a variety of resources, including data, computer programs, hardware devices (including storage drives and printers), etc. This resource availability is especially prevalent with the advent of the Internet, World Wide Web, private intranets and extranets, etc., which provide access to web pages, databases, programs, and similar resources.
Often, when a client queries a search engine for search results, the search engine presents the search results in an order that is undesirable or inconvenient for the client. Therefore, there is a need for a system and method to address the aforementioned limitation of the prior art.
The present invention includes system, method, and computer-usable medium for receiving search criteria from a client; determining if the client has specified a set of user preferences for defining a search result presentation order when returning a plurality of search results, in response to uniquely identifying the client; and presenting the plurality of search results in the search result presentation order as defined by the user preferences, in response to determining the client has specified a set of user preferences.
The above, as well as additional purposes, features, and advantages of the present invention will become apparent in the following detailed written description.
The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself, however, as well as a preferred mode of use, further purposes and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying figures, wherein:
With reference now to the figures, and in particular, with reference now to
Those skilled in the art will appreciate that network 100 can include many additional components not specifically illustrated in
Referring to
As illustrated, operating system 302 also includes kernel 306, which includes lower levels of functionality for operating system 302, including providing essential services required by other parts of operating system 302 and application programs 316, including memory management, process and task management, disk management, and mouse and keyboard management. Application programs 316 can include a search engine 318, search filtering manager 320 (discussed herein in more detail), user profiles 322 , word processors, spreadsheets, and other application programs. According to a preferred embodiment of the present invention, search engine 318 and search filtering manager 320 receive search requests from clients 102a-n and present search results in an alternate presentation order. The alternate presentation order utilized to present the search results are determined via user-selected preferences stored in user profiles 322. If a connected client does not have a corresponding user profile stored in user profiles 322, the search results are presented in a default order (e.g., biasing the search results by listing “preferred” results, such as results related to commercial providers of goods and/or services).
Servers 106a-n cannot uniquely identify client 102a, the process continues to step 406, which illustrates servers 106a-n sending the requested search results utilizing a default format (e.g., listing the search results with “preferred” results, such as results related to commercial providers of goods and/or services, near the beginning of the list). The process returns to step 402 and proceeds in an iterative fashion.
If servers 106a-n successfully identify client 102a, the process continues to step 408, which illustrates servers 106a-n searching user profiles 322 to determine if client 102a has specified a set of user preferences for returning search results. Those with skill in the art will appreciate that the set of user preferences are not required to be stored in user profiles 322, but may be specified in the identifier (e.g., cookie) utilized to uniquely identify client 102a. If client 102a has not specified a set of user preferences, the process continues to step 406, which depicts servers 106a-n sending the search results utilizing a default format. The process returns to step 402 and proceeds in an iterative fashion.
Returning to step 408, if servers 106a-n determine that client 102a has previously specified a set of user preferences regarding search results, the process continues to step 410, which illustrates search filtering manager 320 ordering the search results based on the user preferences and sending the search results to client 102a. In a preferred embodiment of the present invention, some user preferences may include, but are not limited to, client 102a's previously-visited search engine results, a “favorite hostname” either explicitly (via bookmarked favorites in a browser or an set of links explicitly specified by client 102a to redefine search result presentation order) or implicitly specified by client 102a in a prior session (via a selection of a search result in a prior session).
The process continues to step 412, which illustrates server 106a-n determining if client 102a has selected one of the returned search results for viewing. If client 102a has not selected any of the search results, the process returns to step 402 and proceeds in an iterative fashion. If, however, client 102a has selected at least one of the search results for viewing, the hostname of the computer hosting the selected search result is added to the user preferences of preferred hostnames, as depicted in step 414. The process returns to step 402 and proceeds in an iterative fashion.
As discussed, the present invention includes a system, method, and computer-usable medium for receiving search criteria from a client; determining if the client has specified a set of user preferences for defining a search result presentation order when returning a plurality of search results, in response to uniquely identifying the client; and presenting the plurality of search results in the search result presentation order as defined by the user preferences, in response to determining the client has specified a set of user preferences.
It should be understood that at least some aspects of the present invention may alternatively be implemented in a computer-usable medium that contains a program product. Programs defining functions in the present invention can be delivered to a data storage system or a computer system via a variety of signal-bearing media, which include, without limitation, non-writable storage media (e.g., CD-ROM), writable storage media (e.g., a floppy diskette, hard disk drive, read/write CD-ROM, optical media), and communication media, such as computer and telephone networks including Ethernet, the Internet, wireless networks, and like network systems. It should be understood, therefore, that such signal-bearing media when carrying or encoding computer readable instructions that direct method functions in the present invention, represent alternative embodiments of the present invention. Further, it is understood that the present invention may be implemented by a system having means in the form of hardware, software, or a combination of software and hardware as described herein or their equivalent.
While the present invention has been particularly shown and described with reference to a preferred embodiment, it will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention.