US20120254146A1 - Search engine using client browser and application software activity information - Google Patents

Search engine using client browser and application software activity information Download PDF

Info

Publication number
US20120254146A1
US20120254146A1 US13/523,985 US201213523985A US2012254146A1 US 20120254146 A1 US20120254146 A1 US 20120254146A1 US 201213523985 A US201213523985 A US 201213523985A US 2012254146 A1 US2012254146 A1 US 2012254146A1
Authority
US
United States
Prior art keywords
search
user
program code
activity data
favorite
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US13/523,985
Inventor
James D. Bennett
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PayPal Inc
Original Assignee
Enpulz LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Enpulz LLC filed Critical Enpulz LLC
Priority to US13/523,985 priority Critical patent/US20120254146A1/en
Publication of US20120254146A1 publication Critical patent/US20120254146A1/en
Priority to US13/659,704 priority patent/US8666965B2/en
Priority to US13/659,733 priority patent/US20130060747A1/en
Assigned to Enpulz, L.L.C. reassignment Enpulz, L.L.C. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BENNETT, JAMES D.
Assigned to RPX CORPORATION reassignment RPX CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ENPULZ, LLC
Assigned to JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT reassignment JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT SECURITY AGREEMENT Assignors: RPX CLEARINGHOUSE LLC, RPX CORPORATION
Assigned to RPX CORPORATION, RPX CLEARINGHOUSE LLC reassignment RPX CORPORATION RELEASE (REEL 038041 / FRAME 0001) Assignors: JPMORGAN CHASE BANK, N.A.
Assigned to RPX CORPORATION reassignment RPX CORPORATION RELEASE OF LIEN ON PATENTS Assignors: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Assigned to PAYPAL, INC. reassignment PAYPAL, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: RPX CORPORATION
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Definitions

  • the present invention relates generally to Internet clients and servers; and, more particularly, to search engines operating on the Internet.
  • Search engines deliver search results based upon a search string. Searching can help users find their way around Internet, which contains billions of web pages, or can help users narrow large amounts of information down to workable sub-sets of meaningful information that is relevant to the user's interest. Only a very few of the billions of web pages on the Internet are useful to a user, depending upon what a user is looking for at any given time. A user may look for web pages with a variety of interests such as business, medical, social, engineering, and scientific research as well as home-based general or personal interests. Search engines usually select web links based upon a search keyword (or, search phrase or search string) and often orders search results based on the rank-ordered popularity of the web links with each other.
  • search keyword or, search phrase or search string
  • users look for web links that contain useful information with certain user expectations.
  • the specific expectations may relate to specific business, engineering and scientific organizations, medical, help groups, web sites designed to impart knowledge, email web sites, or other information.
  • the delivered search results are often not in accordance with the user's expectations, and the user's expectations are significantly different from the search results that the search engine delivers to the user. Search results that are delivered are often vaguely related to what the user is looking for, if related at all.
  • the user may never find the few web sites among billions of web pages that provide exact information regarding what they are searching for, because some of these pages may not be popular or may not immediately correlate well with the search string. Therefore, none of these meaningful web sites or search results ever makes it to the top of the search result list.
  • a user may often look for information within certain area of interest, and they may exhibit trends, habits, or patterns of looking for similar information or related information to a core set of interests over time.
  • search engines deliver web links that are vaguely associated with user's area of interest, if associated at all. For example, a user may enter a search string ‘top bicycle riders’. The user may be looking for a list top ranked bicycle riders in world. Unaware of user's area of interest (that is, bicycle racing; and that the user is looking for top ranked bicycle riders worldwide), a search engines may deliver web links of top bicycle magazines, bicycle sellers, resellers and renters, bicycle touring in a remote holiday resort, etc. Unable to find what he/she is looking for, the user clicks on ‘next’ button again and again to scan ever deeper into the search results list, often getting same unsatisfactory results.
  • FIG. 1 is a schematic block/step diagram illustrating an Internet infrastructure containing a plurality of client devices and web browser accessible search engine server, wherein the search engine server delivers web links based upon browser activity information gathered from client devices;
  • FIG. 2 is a schematic block/step diagram illustrating components of the search engine server constructed in accordance with the embodiment of FIG. 1 ;
  • FIG. 3 is a flow diagram illustrating functionality of the search engine server of FIG. 1 ;
  • FIGS. 4-5 illustrate a flow diagram showing functionality of the search engine server of FIG. 1 upon delivering a search engine server's webpage, in one embodiment
  • FIG. 6 is a flow diagram illustrating functionality of the search engine server of FIG. 1 wherein the search engine server gathers and processes browser activity information, and delivers web links based upon this data;
  • FIG. 7 is a schematic diagram illustrating a snap shot of search interface webpage of the search engine server of FIG. 1 , wherein the search interface webpage allows a user to send browser activity information either periodically or when desired, to a server;
  • FIG. 8 is a schematic diagram illustrating a snap shot of a first search result page based upon a search string, favorite lists and related metadata, trends, and browser activity information.
  • FIG. 1 is a schematic block/step diagram illustrating an Internet infrastructure 105 containing a plurality of client devices 157 through 159 and at least one web browser accessible search engine server 169 .
  • the search engine server 169 delivers search results or web links based upon browser activity information gathered from a browser activity monitoring module 195 incorporated into web browsers 151 of the plurality of client devices 157 through 159 .
  • the browser activity monitoring module 195 tracks user's Internet activities, such as a time at which a webpage is visited, duration for which a webpage is visited, the kind of interaction performed with a web site, the content accessed in the web site (ads, movies, text, PDF, audio, etc), the amount of clicks or level of interaction with the web site, the number of sub-URLs visited within a parent web site, and/or number of times a webpage is revisited.
  • the module 195 sends this compiled browser activity information to the search engine server 169 periodically, upon a trigger event (like the start of a search), or upon user request(s).
  • the search engine server 169 stores the gathered browser activity information and tailors the search results based upon this information. Then, the search engine server 169 delivers the results to the web browser 169 , along with search results that are obtained using word matching in general, using favorite lists, and popular search trends from this user or other users.
  • the search engine server 169 collects the user's browser activity information along with a favorite list used by the user and related client/user/browser metadata from each of the plurality of client devices 157 through 159 during its interaction with the client device 157 or 159 , such as during a search interface webpage delivery (the time the server delivers a web page to the client to start or enable search operations).
  • the search interface webpage contains interfaces useful for a user to search the Internet or another network using a search string and the search interface web page contains interfaces to edit favorite lists and send favorite list(s) data to the server along with browser activity information (for more details refer to the detailed description with reference to the FIG. 7 ).
  • the search engine server 169 processes this information during search operations before delivery of each of the search result pages and refines the search results according to information derived from the favorites, trends, metadata, and historical user/browser activity. Based upon the favorite list and related metadata, and browser activity information, the search engine server generates user profiles and trends that can be used to refine search results and search operations.
  • the search engine server tailors the search results and/or user advertisements based upon: (a) browser activity information; (b) favorite lists and related metadata; (c) the search string and/or information parsed therefrom; (d) a user profile created from browser activity information, and favorite list and related metadata; and (e) trends that are derived based upon favorite behavior and browser activity behavior.
  • the search string or information parsed or derived therefrom may be matched with web contents in a crawl web page database 177 , a world's favorite database 179 , and/or a browser activity database 181 .
  • the crawl webpage database 177 contains a collection of all of the web pages hosted by a plurality of web hosting servers across the Intranet (the servers are not specifically shown in FIG. 1 ).
  • the web pages within the database 177 are obtained by having a server crawl from web page to web page over the Internet, or by user submission to the server.
  • the world's favorite database 179 contains web pages and related metadata (such as time at which a favorite webpage is visited, duration for which the favorite webpage is visited and number of times the favorite webpage is revisited) gathered from the web browsers 151 of the plurality of client devices 157 through 159 . Therefore, the database 179 contains favorite sites visited by one user or a plurality of users, and the users may be grouped together by common profiles, interest, search patterns, may be statistically linked to each other, or may be grouped randomly together.
  • the browser activity database 181 contains browser activity information such as webpage visited (either via a search process or directly), time at which the webpage is visited, duration for which the webpage is visited, number of times the webpage is revisited (hit count), etc (as discussed previously).
  • the search engine server 169 is able to process data in the world's favorite database 179 and/or browser activity database 181 to determine (from browser activity information, favorite lists and metadata) many possible interpretations of the resident data, such as: (a) a web link may be added to a favorite list, but may not be revisited by the user at all (if a web site or search result is in the favorite list but hit count is very low, the web page is likely not a true favorite); (b) a webpage may have been visited by many users, but the various durations of the visits are very small (this profile may indicate a junk or popup site that was unexpectedly and undesirable encountered by a user in a repeated manner); (c) a webpage is visited for long duration and visited many times, though may not be in favorite list (possibly, a true favorite that is simply not saved in a favorites list, could be the home page for example); (d) a webpage that is visited many times via searching, but duration is low (e.g., an accidentally visited website that had little or no interest to
  • the browser-activity-monitoring module 195 on the clients in FIG. 1 collects and sends browser activity information, periodically, upon a trigger event, or upon a user request, to the search engine server 169 for storing and further processing.
  • the module 195 may be a shared module between several clients or may be independent copies of the same or similar program/function on each client device.
  • the browser-activity-monitoring module 195 may also perform pre-processing to reduce the volume of data sent to the server so that the data can be more easily consumed by the search engine server 169 , via many client sources.
  • the browser activity monitoring module 195 may perform only a daily summary of only high volume visits, the module 195 may generate monthly, yearly, or lifetime summaries for the server, or the module 195 may remove interactions associated with pop-ups, adware, virus programs, other malware, quickly closed pages, certain illegal or restricted content (e.g., adult content, or content know to be violating copyright rights through digital rights management monitoring), etc.
  • the module 195 may remove interactions associated with pop-ups, adware, virus programs, other malware, quickly closed pages, certain illegal or restricted content (e.g., adult content, or content know to be violating copyright rights through digital rights management monitoring), etc.
  • the search engine server 169 of FIG. 1 generates a search result page for review by the user at a client device.
  • This search result page (or pages) contains, in part or full, search result web links selected for presentation to the user on the basis of: (a) matching words, patterns, or phrases of search string with that of webpage contents only from crawl webpage database 177 ; (b) matching words, parsed data, etc., of search string with that of webpage contents only from world's favorite database 179 ; (c) matching words, etc., of search string with that of webpage contents only from browser activity database 181 ; (d) matching words, etc., of search string with that of contents from an advertisement database (not specifically shown in FIG.
  • Each of the search result lists sent to the user to satisfy a search operation thus obtained from (a) through (g) are also sorted on the basis of popularity or one some other rank-ordered characteristic (e.g., age of content, location, data size, date of creation or last edit, etc).
  • All of the web links thus selected from (a) through (g), and sorted via some characteristic may be delivered separately in each search result page or may be mixed together from the different sources (a) through (g) to form less number of lists and delivered in one or more columns to the user.
  • the user may be provided with some flexibility in deciding which of the combinations of (a) through (g) is delivered in a search result page, and this can be set dynamically by a user input to a client window, a control panel, a software or hardware setting, interfacing to the operating system (OS), etc.
  • the favorite list related metadata as well as browser activity information may include ‘times visited’, ‘date added’ and ‘active duration of interaction with the site’ or other relevant data to allow search operations to be refined and improved over time.
  • a user profile may be developed immediately upon reception of updated or current favorite list(s) and related metadata, and/or browser activity information.
  • the user profile may be developed using the favorite list and related metadata and/or browser activity information obtained during delivery of the search interface web page or as updated in another manner from time to time.
  • a user may often visit web links (some of which may be selected from the favorite list, while some others may be entered via direct entry into a address/URL text box or through search hyperlinks) in the area of commerce, some other in the area of news, and a few more on a personal topic of interest (such as an NBA site, mail related web sites, banking web sites, financial news web sites) etc.
  • the favorite list related metadata and browser activity information may contain useful data that indicates that the user mostly uses Internet for browsing between certain times (e.g., from 9 am to 5 pm), and visits commerce related web links (such as stock related websites) 80% of the time and news related web sites 10% of the time from Monday through Friday, but not on weekends, etc.
  • the search engine server 169 in this case, is able to construct a user profile that includes all of the user browsing behavior as related to the favorite list and related metadata and browser activity information.
  • An example profile or trend with capture information such as: (a) User's Area of Interests: Commerce, Business News and Personal; (b) Visiting Hours for Science: 9am to 5 pm, Most Viewed Web Site: ‘XYZ.com’, Percentage of Time Dedicated to ‘XYZ.com’: 70% etc.
  • the search engine server 169 may determine that if the search string received during a search is related to the area of commerce, the user is likely to be interested in many of the commerce related web links that others have visited that have similar interests, profiles, or trends to the user.
  • the server can choose to deliver such web links either separately or mixed with other lists mentioned above for review by the current user.
  • the server can assume that users that have similar profile and similar browse histories, behaviors, favorites, interaction with the browser, etc., may be looking for similar content when searching in similar areas via a search string.
  • the trends that use favorite behavior and browser activity behavior allows the search engine server 169 to reorder the search result list, based upon, for example, recently added and high visit volume preferences.
  • the search engine server 169 may push some of these recently added and high visit web links to the top of the list.
  • the search engine server 169 may process the data stored in the world's favorite database 179 and browser activity database 181 to determine search hit probability by applying weighting factors (a modified natural language search) to different favorites, trends, user interactions, etc.
  • a few of the factors that may be used to determine a weighting factor are: (a) number of users tagging a webpage as favorite; (b) number of users visiting the web page, either via a search engine or directly; (c) time at which the webpage is visited; (d) duration for which the webpage is visited; and (e) number of times the webpage is revisited (hit count). Similar processing may be adapted to form a specific browsing activity weighting factor, a specific favorite weighting factor or a crawl web page weighting factor.
  • the internet infrastructure 105 illustrated in FIG. 1 contains the search engine server 169 communicatively coupled to the plurality of client devices 157 through 159 via access points (APs) 121 , 122 , and 123 , ISPNs (Internet Service Provider's Networks) 111 and 112 , and an Internet backbone 107 .
  • the search engine server 169 contains browser activity gathering module 171 that collects the browser activity information and stores this data in the browser activity database 181 .
  • the search engine server 169 also contains favorite list gathering module 173 that collects the favorite lists and related metadata for a user or client and stores this data in the world's favorite database 179 .
  • the browser-activity-monitoring module 195 tracks the user's usage of the Internet and temporarily stores trends, usage data, etc., in the client devices 157 through 159 . Then, in one embodiment, upon a clicking of a ‘send browser activity’ button in the web browser 151 , the browser-activity-gathering module 171 receives the stored browser activity information and stores it in browser activity database 181 for further processing.
  • search engine server 169 When the search engine server 169 begins interaction with the web browser 151 or a similar application on a client, a search support module (not shown) fills up a favorite list pane or popup window with favorite lists. Therefore, the search interface web page contains options to upload favorite list and related metadata, and browser related activity to the search engine server 169 . Then, upon possible user editing/changes and a clicking of a ‘send favorite list’ button, via the client device 157 or 159 , the favorite list gathering module 173 receives the favorite list and related metadata and stores this information in world's favorite database 179 for further processing.
  • a user profiling module creates a user profile as mentioned in above paragraphs.
  • a trend estimation module retrieves stored information from the world's favorite database 179 and browser activity database 181 and processes this information to create trends, such as recently added websites and high visit volume preferences of the user.
  • a browser-activity-based search result sorting module 175 orders search results or search result web links, selected from the browser activity database 181 , on the basis of the search string and by popularity (or some other meaningful characteristic of the search result data). It also reorders the web links selected from crawl webpage database 177 based upon information processed from browser activity database 181 or other user relevance/priority information.
  • the search interface webpage that is delivered as a first page upon request from the web browser 151 facilitates the user to select between the following options for the current search: (a) search within browser activity database 181 alone; (b) search within world's favorite database 179 alone; (c) search within crawl webpage database 177 alone; (d) search based upon trends based on favorite behavior and browser activity behavior alone; and/or (e) any of the combinations of (a) through (d).
  • ‘send browser activity’ and ‘send favorite list’ buttons allow user to send browser activity information and/or favorite lists and related metadata.
  • the user may also be provided with a helpful tip that lets the user know terms with which the favorite list, trends, user profile, and related metadata, as well as web browser activity information are gathered, stored, shared, and used by the search server engine 169 .
  • the helpful tip may be:
  • a user may enter ‘top bicycle riders’ as a search string and choose the ‘search using browser activity’ option to enable searching for search results or search result web links that are associated or correlated strongly with historical user browser activity. Then user may click on ‘search’ button.
  • the search engine server 169 searches for web links from the browser activity database 181 and delivers search results in one or more of the columns on a display screen of the client device.
  • One or more other columns on the display screen or graphical user interface may have results derived from the crawl webpage database 177 .
  • Still another column or columns may have advertisements tailored by using a user profile, derived from the browser activity and favorite lists of the web browser 151 , and so on.
  • FIG. 2 is a schematic block/step diagram illustrating components of the search engine server constructed in accordance with the embodiment of FIG. 1 .
  • the search engine server circuitry 207 may, in part or full, be incorporated into any computing device that is capable of serving as an Internet based server or computer.
  • the search engine server circuitry 207 generally includes processing circuitry 209 , local storage 217 , manager interfaces 249 , and network interfaces 241 . These components are communicatively coupled to one another via one or more of a system bus, dedicated communication pathways, or other direct or indirect communication pathways.
  • the processing circuitry 209 may be, in various embodiments, a microprocessor, central processing unit (CPU), a digital signal processor (DSP), a graphics processor, a state machine, an application specific integrated circuit, a field programming gate array, combinations thereof, or other processing circuitry.
  • the network interfaces 241 contain wired, optical, and/or wireless packet switched interfaces 245 and may also contain built-in or an independent interface processing circuitry 243 (usually another central processing unit of some sort).
  • the network interfaces 241 allow the search engine server 207 to communicate with client devices such as devices 261 and to deliver search result pages of web links.
  • the manager interfaces 249 may include one or more display and keypad interfaces. These manager interfaces 249 allow the user or IT expert at the search engine server 207 to control aspects of the system/server.
  • the client device 261 that is illustrated is communicatively coupled to the search engine server 207 via an Internet 255 .
  • Local storage 217 may be any type of random access memory (RAM), read-only memory (ROM), flash memory, electrically erasable memory, optical storage, magnetic storage, a disk drive or array, an optical drive, any combination thereof, or another type of memory that is operable to store computer instructions and data.
  • the local storage 217 includes a browser activity gathering module 223 , favorite list gathering module 225 , favorite list based search result sorting module 227 , browser activity based search result sorting module 229 , crawl webpage database 231 , a world's favorite database 233 and a browser activity database 235 to facilitate a user's search in accordance with the teachings herein.
  • the client device 261 is illustrated as being communicatively coupled to the search engine server 207 via the Internet 255 or another communication network of any kind.
  • the browser-activity-gathering module 223 collects browser activity information and stores this data in the browser activity database 235 on the server.
  • a browser-activity-monitoring module 295 incorporated into web browser 251 tracks the user's usage of Internet and temporarily stores them in the client device 261 .
  • either or both of the client or the server may process and filter the data collected by the browser-activity modules. By performing this processing and filtering, only relevant user activity is processed in a manner that influences search results. So, for example, virus-controlled activity, banned activity, adult content, unwanted ad pop-ups, etc., can be filtered from the data recording in the browser-activity modules and other activity that is highly relevant to the user may even be weighted higher by the modules.
  • the browser activity gathering module 223 on the server receives the stored browser activity information from the client and stores it in browser activity database 235 for further processing during search operations.
  • the favorite-list-gathering module 225 gathers favorite lists and related metadata from the web browser 251 and stores this data in the world's favorite database 233 . This information can be used in addition to the browser activity modules to further refine or advantageously expand search operations and search results.
  • the gathering of favorite list information and related user metadata/profiles occurs during search engine server's 207 interaction with the web browser 251 of the client device 261 .
  • the client device can be running browser activity data collection from the user at all times or at critical intervals or activities, even when search operations are not being performed and even when the client and server are not communicating with one another.
  • the module 295 on the client may monitor user interaction with locally cached Internet content, email, downloaded software or documents, downloaded content, cached advertising, and other activity to generate user profiles, user data, and user browser activity. Therefore, the browser activity may involve user activity in other applications, like a virus prevention application, an email application, a media processor (e.g., WinDVD or iTunes), and other applications.
  • the favorite list based search result sorting module 227 orders web links, selected on the basis of search string, often by popularity or some other meaningful characteristic to the user.
  • the browser activity based search result sorting module 229 orders web links, selected from the browser activity database 235 , on the basis of the search string and by popularity of some other client-set or server-set characteristic. It also reorders the web links selected from crawl webpage database 231 based upon information processed from browser activity database 235 .
  • the search engine server 207 of FIG. 2 may include fewer or more components than are illustrated as well as lesser or further functionality.
  • the illustrated search engine server is meant to merely offer one example of possible functionality, parsing of functionality, and system construction in accordance with one embodiment.
  • FIG. 3 is a flow diagram illustrating the functionality of the search engine server of FIG. 1 .
  • the functionality begins at a block/step 307 , where the search engine server requests that the user of the client device install and/or execute the browser activity-monitoring module 295 of FIG. 2 .
  • the search engine server or code stored in the application on the client provides all the necessary details and terms and conditions upon which the browser activity monitoring module is installed within the browser of the client device.
  • the browser activity monitoring module 295 starts tracking user Internet activity and sends this browser activity information periodically, upon trigger events, or upon user request to the server.
  • the user sends browser activity information (along with or in conjunction with a search string) to the server.
  • the search interface webpage is the first webpage that is delivered to the web browser to initiate a new search.
  • the search engine server receives browsing activity data from the browser activity monitoring module on the client, often with the requirement that the user gives permission for the access or transfer of data and/or the user has a chance to change, edit, delete, or add data to/from the communicated information.
  • the search engine server stores the browser activity information in browser activity database, as shown in FIG. 2 .
  • a separate search support module also sends user or browser favorite list(s) information and related user/client metadata to the search engine server. Again, this part of functionality may occur during delivery of the search interface web page, a search string, or some other function.
  • the search engine server provides an option to upload the favorite list(s) on to an editable window pane or popup window and allows the user to edit, remove, and then send the favorite list along with a search string.
  • the search engine server receives, with user permission (which is often a good idea to enable), the favorite list, and related metadata, along with search string (if a new search is to be initiated).
  • the search engine server stores favorite list and related metadata in a world's favorite database and also constructs one or more user profiles using the collected browser activity information and possibly the favorite lists and related metadata.
  • the search engine server uses browser activity information, favorite list information, and the related metadata to create profile data such as: (a) percentages of categories of webpage visits; (b) the times at which web pages are visited; (c) the time and date at which a webpage is added to the favorites list; and (d) the active duration for which a webpage is interacted with, among other related metadata.
  • the search engine server processes stored data in the world's favorite database and browser activity database to allow for the monitoring and processing of trends, such as the user access to recently added websites and high visit volume sites/preferences.
  • the user may choose to search, using the search string, within the world's favorite database, within the crawl webpage database, within the browser activity database and/or search using trends to obtain one or more lists of search results or web sites/pages relevant to the user's search needs.
  • the search engine server selects web links from the crawl webpage database based upon the search string and sorts on the basis of popularity ranking and/or world's favorite ranking (or some other ranking scheme like date, size, etc).
  • the world's favorite ranking is decided by using favorite weighting factor(s) that determines how many users select a webpage as a favorite.
  • the browser activity information may also be used to rank the web links selected.
  • the search engine server selects web links from the world's favorite database and/or browser activity database based upon the search string and sorts on the basis of popularity ranking and/or world's favorite ranking (or some other mechanism).
  • the browser activity information may also be used to rank the web links selected, and as always, multiple two-tier or multi-tier rank-ordered algorithms may be employed.
  • the process of block/step 319 is performed only if the user chooses to search within the world's favorite database or search using browser activity information.
  • the search engine server delivers a first search result page containing one or more of: (a) search results or web links selected and ranked from crawl webpage database; (b) search results or web links selected and ranked from world's favorite database; (c) search results or web links selected and ranked from browser activity database; (d) search results or web links selected from an advertisement database; (e) user profile created using favorite list and related metadata, and browser activity information; (f) trends based on favorite behavior and browser activity behavior; (g) persistence information; and/or (h) any combination of (a) through (g).
  • FIG. 4 is a flow diagram illustrating the functionality of the search engine server of FIG. 1 upon delivering a search engine server's web page to start a search operation, in accordance with one embodiment.
  • the functionality of the search engine server begins at a block/step 409 , when a search interface webpage (refer to FIG. 7 for detailed description of a typical search interface web page format) or subsequent search engine server's webpage is delivered.
  • the search interface webpage that initiates a new search using a new search string typically contains provisions to enter a search string and upload favorite list and related metadata, as well as to upload browser activity information between the client and server.
  • the subsequent search result pages contain provisions to enter a new or refined search string, as well as ‘next’ button and ‘prey’ (or ‘previous’) button, to continue refinement and processing of search results over time.
  • the search interface webpage or subsequent search engine server's webpage provides user facilities to search using any of the combination of the databases provided by the server and the client, based upon a search string, such as: (a) search using browser activity information; (b) search using favorite lists and related metadata; (c) user profile created from browser activity information, and favorite list and related metadata; and/or (e) trends based upon favorite behavior and browser activity behavior.
  • the browser activity information related search may be selected and performed using a ‘search using browser activity’ radio button or other selection mechanism within the graphical user interfaces (GUIs) displayed to the user.
  • GUIs graphical user interfaces
  • the search engine server determines if a ‘prey’ button is clicked. If yes, at a next block/step 455 , the search engine server delivers an exact previous search result page and waits for new inputs from the user of the client device. In case of the first search interface web page (when there is no previous data to display), the ‘prey’ button is not available. If the ‘prey’ button is not clicked at the decision block/step 421 , then, at a next decision block/step 423 , the search engine server determines if a ‘next’ button is clicked. If yes, at a next block/step 457 , the search engine server delivers a subsequent search result page. In case of the search interface web page or a last search page, the ‘next’ button is not available as there is no next page of search results to deliver at this time.
  • the search engine server determines if the ‘search using browser activity’ radio button is on. If not (if the button is off), the search engine server determines, at a next decision block/step 427 , if ‘search’ button is clicked. If yes at the decision block/step 427 , then the search engine server begins processing of a new search criteria, based upon a search string at connector 13 ′ (refer to the FIG. 5 for continuation of the process/method).
  • the search engine server determines if a ‘search’ button is clicked. If yes at the decision block/step 429 , then the search engine server begins processing of a new search criteria, based upon a search string and favorites at connector ‘A’ (refer to the FIG. 5 for continuation of the method via connector A). In another embodiment the options of ‘search within favorites’ and ‘search using trends’ may be incorporated using similar process. It is important to note that the order of the decision blocks/steps in FIG. 4 may be changed. It is possible, for example, to poll for a next button before a prey button, and still perform an algorithm that servers the purposes taught herein.
  • FIG. 5 is a flow diagram illustrating functionality of the search engine server of FIG. 1 , continued from connectors ‘A’ and ‘B’ as shown in FIG. 4 and FIG. 5 .
  • the continued functionality of FIG. 4 at connector ‘A’ begins at a block/step 461 with the search engine server receiving a search string along with browsing activity information, favorite list, and metadata from client device's web browser.
  • the search engine server matches words, phrases, or parsed data of the search string with that of contents of the web pages in the world's favorite database and/or browser activity database.
  • the search engine server selects web links from the world's favorite database and/or browser activity database, on the basis of closeness in match.
  • the search engine server sorts the selected web links based upon closeness in match and/or popularity and/or world's favorite ranking, etc.
  • the world's favorite ranking is decided based upon a favorite weighting factor that determines how many users select a webpage as their favorite or a favorite.
  • the browser activity information may also be used to sort the web links selected.
  • the search engine server delivers a search result page containing a first few web links sorted on the basis of: (a) closeness in match; (b) popularity rank; and/or (c) world's favorite rank. These combinations may be displayed separately in multiple columns or in a single column on the client display screen.
  • the browser activity ranking based web links may also be presented.
  • FIG. 4 at connector ‘B’ begins at a block/step 481 with the search engine server receiving a search string along with favorite list data and metadata from client device's web browser.
  • the search engine server matches words of the search string with that of contents of the web pages in the crawl webpage database.
  • the search engine server selects web links from the crawl webpage database, on the basis of closeness in match.
  • the search engine server sorts the selected web links based upon closeness in match and/or popularity and/or world's favorite ranking. The browser activity information may also be used to sort the web links selected.
  • the search engine server delivers a search result page containing a first few web links sorted on the basis of: (a) closeness in match; (b) popularity rank; and/or (c) world's favorite rank. These combinations may be displayed separately in multiple columns or in a single column on the display screen or display device located with the client device.
  • the browser activity ranking based web links may also be presented in another column.
  • FIG. 6 is a flow diagram illustrating a functionality of the search engine server of FIG. 1 wherein the search engine server gathers and processes browser activity information, and delivers web links based upon this data.
  • the functionality of gathering and processing the browser activity information to refine search result lists begins at a block/step 607 where the search engine server requests browser activity information from web browsers of a plurality of client devices periodically, upon trigger events, or upon request from the browser activity monitoring module, during their interaction with the search engine server.
  • the search engine server makes requests for browser activity information periodically from the browser activity-monitoring module located on one or more client devices.
  • the search engine server may also request for browser activity information from the plurality of client devices during delivery of a search interface webpage (refer to the description of FIG. 7 ).
  • the server and client can use to exchange meaningful user profile, trend data, metadata, browser data, etc., to assist in improving search operations.
  • the search engine server requests that the user of the client device provide their browser activity information along with favorite lists and related metadata (if selected or needed, and in some embodiments only if authorized and approved by the user).
  • the search interface webpage contains a window pane that is loaded with user's favorite lists and allows user to add, edit, remove and send them, and button to send browser activity information along with a search string.
  • the search engine server stores gathered browser activity information in browser activity database in a user-anonymous manner.
  • the search engine server also stores gathered favorite list and related metadata in world's favorite database in an anonymous manner. The user is informed during installation of browser activity monitoring module and collecting of the browser activity information, and favorite list and related metadata that the collection is anonymous and no private data such as IP address and name(s) are collected or used in the process of searching.
  • the search engine server processes the browser activity information along with favorite list and related data with other statistical data.
  • the search engine server may process this data to create a user profile immediately after collection of the data, which is used to reorder, prioritize, select, and omit various search results available for inclusion in the search result list and selectable advertisements to better cater to the needs/desires of the user.
  • Another example is that of creating trends based upon browser activity behavior and favorite behavior that again is used to reorder the search result list and advertisements.
  • the search engine server tailors and orders the search results using a formula that incorporates processed browser activity information, favorite list and related metadata and other statistical information.
  • the formula may also give certain weight to each of the factors that influence reordering of the search result list, such as user profile, search within favorites, search using browser activity, and search using trends.
  • the search engine server processes ‘Search Using Browser Activity’ button input (if turned on) to search from browser activity database, ‘Search Within Favorites’ button input (if turned on) to search from world's favorite database, and ‘Search Using Trends’ button input (if turned on) to allow recently added and high visit volume preferences to come to the top of the search result list.
  • radio button selections can be additive or mutually exclusive in different embodiments.
  • a separate set of search result lists may be generated from each of the above radio button selections or the search results from each source can be assembled together and rank-ordered as a single compilation.
  • the search result processing occurs immediately after collecting browser activity information, favorite list and related metadata, and the processing includes selection and sorting from browser activity database and world's favorite database alone and/or sorting on the basis of trends.
  • the search engine server delivers a search result page based upon a user chosen criteria, which includes: (a) search within favorites; (b) search all of the web; (c) search using browser activity; (d) a combination of (a) and (b). In other embodiments, any combination of the selections (a)-(c) may be used.
  • FIG. 7 is a schematic diagram illustrating a snap shot of search interface webpage 705 of the search engine server of FIG. 1 , wherein the search interface webpage 705 allows a user to send browser activity information either periodically, upon trigger events, or when desired, and provides for user options to enable searching within favorites, search using trends, and/or search using browser activity information.
  • the exemplary snap shot illustrated in FIG. 7 shows the search engine server's search interface webpage 705 delivered to web browser 795 of the client device to facilitate user's search and to send browser activity information, and favorite list and related metadata.
  • the function of providing trends, metadata, browser activity information, etc. can be decoupled from the process of performing a search with a search string.
  • the search engine server's search interface webpage 705 may contain a page title such as ‘Search Engine's web page (www.Search_Engine.com)’ 721 , and a ‘search’ button 737 .
  • the search interface webpage 705 also contains ‘search within favorites’ 729 , ‘search using browser activity’ 733 and ‘search using trends’ 735 radio buttons or selections in FIG. 7 that help refine the search, in accordance with the embodiments taught herein.
  • the user is able to restrict searches to within browser activity database, world's favorite database and/or search using trends based upon favorite behavior, by using these radio buttons 729 , 733 , and 735 in FIG. 7 .
  • a text such as ‘Enter Search String:’ 723 and text box 727 are provided to facilitate user's search string/data input.
  • the user may enter the search string in the text box 727 , such as ‘Top Bicycle Riders’ 725 , make appropriate choices with buttons and interfaces in FIG. 7 and click on the ‘search’ 737 button to initiate a new search.
  • the source of search result selection, ordering, etc. will be modified by the server based upon user selections and data input via the screen shown in FIG. 7 .
  • An additional favorite list windowpane is provided for the user to send browser activity information, favorite list, and related metadata, in modified, redacted, expanded, or other forms.
  • the windowpane loads up one or more favorite lists from the web browser automatically, as illustrated in FIG. 7 .
  • the windowpane may contain a title such as “Your Favorite List” 747 , followed by a list of web links such as links 761 through 763 .
  • the windowpane also has button to edit and delete, ‘Edit’ 743 and ‘Delete’ 745 , content within the lists 747 . By using these buttons 743 and 745 , the user can add additional web links to the list, delete certain web links from the list, or edit some of the links.
  • a ‘Send Favorite List and Search’ 741 button allows the user to send favorite list and initiate a new search (based on the search string in the text box 727 ) at the same time.
  • a ‘Send Browser Activity’ 797 button allows the user to send browser activity information to the server and use this information to refine selection, ordering, and processing of search results.
  • the windowpane may allow simultaneous sending of browser activity information, favorite lists, and metadata and search information.
  • a helping tip within the window pane such as the text “Help: Select Web Link that you want to edit or delete and press corresponding buttons above” 749 helps the user(s) to understand how to edit and send favorite list and related metadata to assist and modify their search operations and results.
  • This message can be a message such as:
  • FIG. 8 is a schematic diagram illustrating a snap shot of a first set/list of search results provided in a first search results page based upon a search string, favorite lists and related metadata, trends and/or browser activity information.
  • the exemplary snap shot illustrated in FIG. 8 shows the first search result page 805 as delivered to web browser 895 of the client device. This page is used to facilitate a user's search.
  • the first search result page 805 may contain a page title such as ‘Search Engine's web page (www.Search_Engine.com)’ 821 , and a ‘search’ button 837 .
  • a text such as ‘Enter Search String:’ 823 and text box 827 are provided to further facilitate user searching.
  • the user may enter the search string in the text box 827 , such as ‘Top Bicycle Riders’ 825 , make appropriate choices in the various areas of FIG. 8 and click on the ‘search’ button 837 to initiate a new or refined search.
  • the first search result page 805 also contains ‘search within favorites’ 829 , ‘search using browser activity’ 833 and ‘search using trends’ 835 radio buttons that help restrict the search to specific data sources, data organization and selection algorithms, and different modes of searching.
  • the user is able to restrict a search to only within browser activity database, world's favorite database and/or search using trends (or any combination thereof) based upon browser activity and favorite behavior, by using the radio buttons 829 , 833 , and 835 in FIG. 8 .
  • the first search result page 805 also contains the ‘prey’ 885 and ‘next’ 889 buttons to access prior displayed search result pages and the subsequent search result pages, respectively.
  • a helpful note can be provided to help the user to search in accordance with the present invention. This helpful note can be any not, such as
  • the first search result page 805 may contain in various columns and window panes, web links selected from one or more of: (a) browser activity database; (b) world's favorite database; (c) crawl webpage database; and/or (d) an advertisement database.
  • the columns may also contain web links selected on the basis of: (i) user profile created from browser activity information and favorite list and related metadata; and (ii) trends based on browser activity behavior and favorite behavior. All of the web links thus selected using the above-mentioned criteria may be delivered separately in separate or different search result pages or may be mixed together to form fewer lists and search results pages whereby the data in these pages are mixed from several database sources within the server, to form fewer lists that are delivered in fewer columns or fewer windows.
  • the first search result page 805 illustrated in the exemplary snap shot of FIG. 8 shows two columns, namely, ‘Search Results Within World's Favorites’ 841 and ‘Search Results Using Browser Activity’ 843 . Each of these columns contains web links selected on the basis of the search string ‘Top Bicycle Riders’ 825 .
  • the columns are segregated in FIG. 8 to display results from specific sources in their own columns, with the sources being from one or more of the crawl web page database, the browser activity database and the world's favorite database.
  • the two columns illustrated in FIG. 8 show web links 1 through 6 , as web sites 851 through 856 and web sites 861 through 866 , under the columns ‘Search Results Within World's Favorites’ 841 and ‘Search Results Using Browser Activity’, respectively.
  • the search results can be mixed and ordered together, regardless of search source or database origination. In fact, some entries may be redundant in several databases of FIG. 1 , requiring a filtering of some search results to avoid duplication in the search lists.
  • circuit and “circuitry” as used herein may refer to an independent circuit or to a portion of a multifunctional circuit that performs multiple underlying functions.
  • processing circuitry may be implemented as a single chip processor or as a plurality of processing chips (e.g., a multi-core device).
  • a first circuit and a second circuit may be combined in one embodiment into a single circuit or, in another embodiment, operate independently perhaps in separate chips.
  • chip refers to an integrated circuit. Circuits and circuitry may comprise general or specific purpose hardware, or may comprise such hardware and associated software such as firmware or object code.
  • operably coupled and “communicatively coupled,” as may be used herein, include direct coupling and indirect coupling via another component, element, circuit, or module where, for indirect coupling, the intervening component, element, circuit, or module may or may not modify the information of a signal and may adjust its current level, voltage level, and/or power level.
  • inferred coupling i.e., where one element is coupled to another element by inference
  • inferred coupling includes direct and indirect coupling between two elements in the same manner as “operably coupled” and “communicatively coupled.”
  • a search result list may be derived by processing one more of the following sources of data in addition to the browser interaction database: a user profile data, user historic search patterns, user-client interaction data, client location, the time of day, the search string, user metadata, and user favorites data. Such combinations of two or more sources can even further refine search results to items that are more meaningful to the user.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

An Internet infrastructure supports searching of web links to select search results by processing browser activity information along with one or more of favorite lists, and related metadata, user profiles, and trends based on browser activity behavior and favorite behavior. A plurality of web browsers located on client device are incorporated with a browser activity-monitoring module that tracks user's Internet usage, processes this information, and sends this information periodically or upon user request to the server to aid in improving search operation results. The search engine server communicatively couples to the plurality of web browsers and supports delivery of search results/web links to the client device based upon a search string, browser activity information, and possibly the favorite lists and related metadata. The gathered browser activity information, favorite lists, and related metadata are stored in one or more server databases that are associated with the search engine server.

Description

    CROSS REFERENCE TO PRIORITY APPLICATIONS
  • The present U.S. Utility Patent Application claims priority pursuant to 35 U.S.C. §120, as a continuation of U.S. Utility patent application Ser. No. 12/415,711 filed Mar. 31, 2009, co-pending, which claims priority under 35 U.S.C. §119(e) to U.S. Provisional Application Ser. No. 61/052,897, filed May 13, 2008, both of which are incorporated herein by reference in their entirety for all purposes.
  • BACKGROUND
  • 1. Technical Field
  • The present invention relates generally to Internet clients and servers; and, more particularly, to search engines operating on the Internet.
  • 2. Related Art
  • Search engines deliver search results based upon a search string. Searching can help users find their way around Internet, which contains billions of web pages, or can help users narrow large amounts of information down to workable sub-sets of meaningful information that is relevant to the user's interest. Only a very few of the billions of web pages on the Internet are useful to a user, depending upon what a user is looking for at any given time. A user may look for web pages with a variety of interests such as business, medical, social, engineering, and scientific research as well as home-based general or personal interests. Search engines usually select web links based upon a search keyword (or, search phrase or search string) and often orders search results based on the rank-ordered popularity of the web links with each other.
  • Typically, users look for web links that contain useful information with certain user expectations. The specific expectations may relate to specific business, engineering and scientific organizations, medical, help groups, web sites designed to impart knowledge, email web sites, or other information. However, the delivered search results are often not in accordance with the user's expectations, and the user's expectations are significantly different from the search results that the search engine delivers to the user. Search results that are delivered are often vaguely related to what the user is looking for, if related at all.
  • Popular web sites are pushed up to the top of the search result lists, assuming that all users who use the same or similar keywords have same expectations in mind as other users who visited the more popular sites. Often, this turns out to be a disappointment for many users because many users are in minorities when it comes to expectations and interest and it is not always a good assumption to believe all users have the same interests and expectations for a search. This assumption does not hold true most of the time. Thus, users waste a lot of time browsing through unwanted, uninteresting, and/or junk web sites before they can find one web site that is in some way is closer to what they are looking for (if they find any relevant sites at all). The user may never find the few web sites among billions of web pages that provide exact information regarding what they are searching for, because some of these pages may not be popular or may not immediately correlate well with the search string. Therefore, none of these meaningful web sites or search results ever makes it to the top of the search result list.
  • A user may often look for information within certain area of interest, and they may exhibit trends, habits, or patterns of looking for similar information or related information to a core set of interests over time. Unaware of user's interests, search engines deliver web links that are vaguely associated with user's area of interest, if associated at all. For example, a user may enter a search string ‘top bicycle riders’. The user may be looking for a list top ranked bicycle riders in world. Unaware of user's area of interest (that is, bicycle racing; and that the user is looking for top ranked bicycle riders worldwide), a search engines may deliver web links of top bicycle magazines, bicycle sellers, resellers and renters, bicycle touring in a remote holiday resort, etc. Unable to find what he/she is looking for, the user clicks on ‘next’ button again and again to scan ever deeper into the search results list, often getting same unsatisfactory results.
  • These and other limitations and deficiencies associated with the related art may be more fully appreciated by those skilled in the art after comparing such related art with various aspects of the present invention as set forth herein with reference to the figures.
  • BRIEF SUMMARY OF THE INVENTION
  • The present invention is directed to apparatus and methods of operation that are further described in the following Brief Description of the Drawings, the Detailed Description of the Invention, and the claims. Other features and advantages of the present invention will become apparent from the following detailed description of the invention made with reference to the accompanying drawings.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a schematic block/step diagram illustrating an Internet infrastructure containing a plurality of client devices and web browser accessible search engine server, wherein the search engine server delivers web links based upon browser activity information gathered from client devices;
  • FIG. 2 is a schematic block/step diagram illustrating components of the search engine server constructed in accordance with the embodiment of FIG. 1;
  • FIG. 3 is a flow diagram illustrating functionality of the search engine server of FIG. 1;
  • FIGS. 4-5 illustrate a flow diagram showing functionality of the search engine server of FIG. 1 upon delivering a search engine server's webpage, in one embodiment;
  • FIG. 6 is a flow diagram illustrating functionality of the search engine server of FIG. 1 wherein the search engine server gathers and processes browser activity information, and delivers web links based upon this data;
  • FIG. 7 is a schematic diagram illustrating a snap shot of search interface webpage of the search engine server of FIG. 1, wherein the search interface webpage allows a user to send browser activity information either periodically or when desired, to a server; and
  • FIG. 8 is a schematic diagram illustrating a snap shot of a first search result page based upon a search string, favorite lists and related metadata, trends, and browser activity information.
  • DETAILED DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a schematic block/step diagram illustrating an Internet infrastructure 105 containing a plurality of client devices 157 through 159 and at least one web browser accessible search engine server 169. In FIG. 1, the search engine server 169 delivers search results or web links based upon browser activity information gathered from a browser activity monitoring module 195 incorporated into web browsers 151 of the plurality of client devices 157 through 159. In specific, the browser activity monitoring module 195 tracks user's Internet activities, such as a time at which a webpage is visited, duration for which a webpage is visited, the kind of interaction performed with a web site, the content accessed in the web site (ads, movies, text, PDF, audio, etc), the amount of clicks or level of interaction with the web site, the number of sub-URLs visited within a parent web site, and/or number of times a webpage is revisited. The module 195 sends this compiled browser activity information to the search engine server 169 periodically, upon a trigger event (like the start of a search), or upon user request(s). The search engine server 169 stores the gathered browser activity information and tailors the search results based upon this information. Then, the search engine server 169 delivers the results to the web browser 169, along with search results that are obtained using word matching in general, using favorite lists, and popular search trends from this user or other users.
  • Said another way, the search engine server 169 collects the user's browser activity information along with a favorite list used by the user and related client/user/browser metadata from each of the plurality of client devices 157 through 159 during its interaction with the client device 157 or 159, such as during a search interface webpage delivery (the time the server delivers a web page to the client to start or enable search operations). The search interface webpage contains interfaces useful for a user to search the Internet or another network using a search string and the search interface web page contains interfaces to edit favorite lists and send favorite list(s) data to the server along with browser activity information (for more details refer to the detailed description with reference to the FIG. 7). Then, the search engine server 169 processes this information during search operations before delivery of each of the search result pages and refines the search results according to information derived from the favorites, trends, metadata, and historical user/browser activity. Based upon the favorite list and related metadata, and browser activity information, the search engine server generates user profiles and trends that can be used to refine search results and search operations.
  • Furthermore, the search engine server tailors the search results and/or user advertisements based upon: (a) browser activity information; (b) favorite lists and related metadata; (c) the search string and/or information parsed therefrom; (d) a user profile created from browser activity information, and favorite list and related metadata; and (e) trends that are derived based upon favorite behavior and browser activity behavior. The search string or information parsed or derived therefrom may be matched with web contents in a crawl web page database 177, a world's favorite database 179, and/or a browser activity database 181. The crawl webpage database 177 contains a collection of all of the web pages hosted by a plurality of web hosting servers across the Intranet (the servers are not specifically shown in FIG. 1). The web pages within the database 177 are obtained by having a server crawl from web page to web page over the Internet, or by user submission to the server. The world's favorite database 179 contains web pages and related metadata (such as time at which a favorite webpage is visited, duration for which the favorite webpage is visited and number of times the favorite webpage is revisited) gathered from the web browsers 151 of the plurality of client devices 157 through 159. Therefore, the database 179 contains favorite sites visited by one user or a plurality of users, and the users may be grouped together by common profiles, interest, search patterns, may be statistically linked to each other, or may be grouped randomly together. The browser activity database 181 contains browser activity information such as webpage visited (either via a search process or directly), time at which the webpage is visited, duration for which the webpage is visited, number of times the webpage is revisited (hit count), etc (as discussed previously).
  • The search engine server 169 is able to process data in the world's favorite database 179 and/or browser activity database 181 to determine (from browser activity information, favorite lists and metadata) many possible interpretations of the resident data, such as: (a) a web link may be added to a favorite list, but may not be revisited by the user at all (if a web site or search result is in the favorite list but hit count is very low, the web page is likely not a true favorite); (b) a webpage may have been visited by many users, but the various durations of the visits are very small (this profile may indicate a junk or popup site that was unexpectedly and undesirable encountered by a user in a repeated manner); (c) a webpage is visited for long duration and visited many times, though may not be in favorite list (possibly, a true favorite that is simply not saved in a favorites list, could be the home page for example); (d) a webpage that is visited many times via searching, but duration is low (e.g., an accidentally visited website that had little or no interest to the user in the end); (e) a webpage is visited via manually entering the site address (the address is known to the users by some other means, not searched), etc. Such processing enables the search engine server 169 to tailor search results and advertisements to the user needs based on interpretation of data in the various databases 177, 179, and 181.
  • The browser-activity-monitoring module 195 on the clients in FIG. 1 collects and sends browser activity information, periodically, upon a trigger event, or upon a user request, to the search engine server 169 for storing and further processing. Note the module 195 may be a shared module between several clients or may be independent copies of the same or similar program/function on each client device. Alternatively, the browser-activity-monitoring module 195 may also perform pre-processing to reduce the volume of data sent to the server so that the data can be more easily consumed by the search engine server 169, via many client sources. For example, the browser activity monitoring module 195 may perform only a daily summary of only high volume visits, the module 195 may generate monthly, yearly, or lifetime summaries for the server, or the module 195 may remove interactions associated with pop-ups, adware, virus programs, other malware, quickly closed pages, certain illegal or restricted content (e.g., adult content, or content know to be violating copyright rights through digital rights management monitoring), etc.
  • The search engine server 169 of FIG. 1 generates a search result page for review by the user at a client device. This search result page (or pages) contains, in part or full, search result web links selected for presentation to the user on the basis of: (a) matching words, patterns, or phrases of search string with that of webpage contents only from crawl webpage database 177; (b) matching words, parsed data, etc., of search string with that of webpage contents only from world's favorite database 179; (c) matching words, etc., of search string with that of webpage contents only from browser activity database 181; (d) matching words, etc., of search string with that of contents from an advertisement database (not specifically shown in FIG. 1 but operating similarly to databases 177-181, but for advertisement and commercial content); (e) user profile(s) created using favorite list, related metadata, and browser activity information; (f) trends based on favorite behavior and browser activity behavior; (g) persistence information; and/or (h) combinations of (a) through (g). Each of the search result lists sent to the user to satisfy a search operation thus obtained from (a) through (g) are also sorted on the basis of popularity or one some other rank-ordered characteristic (e.g., age of content, location, data size, date of creation or last edit, etc). All of the web links thus selected from (a) through (g), and sorted via some characteristic, may be delivered separately in each search result page or may be mixed together from the different sources (a) through (g) to form less number of lists and delivered in one or more columns to the user. In addition, the user may be provided with some flexibility in deciding which of the combinations of (a) through (g) is delivered in a search result page, and this can be set dynamically by a user input to a client window, a control panel, a software or hardware setting, interfacing to the operating system (OS), etc. The favorite list related metadata as well as browser activity information may include ‘times visited’, ‘date added’ and ‘active duration of interaction with the site’ or other relevant data to allow search operations to be refined and improved over time.
  • A user profile may be developed immediately upon reception of updated or current favorite list(s) and related metadata, and/or browser activity information. The user profile may be developed using the favorite list and related metadata and/or browser activity information obtained during delivery of the search interface web page or as updated in another manner from time to time. As one example, a user may often visit web links (some of which may be selected from the favorite list, while some others may be entered via direct entry into a address/URL text box or through search hyperlinks) in the area of commerce, some other in the area of news, and a few more on a personal topic of interest (such as an NBA site, mail related web sites, banking web sites, financial news web sites) etc. In addition, the favorite list related metadata and browser activity information may contain useful data that indicates that the user mostly uses Internet for browsing between certain times (e.g., from 9 am to 5 pm), and visits commerce related web links (such as stock related websites) 80% of the time and news related web sites 10% of the time from Monday through Friday, but not on weekends, etc. The search engine server 169, in this case, is able to construct a user profile that includes all of the user browsing behavior as related to the favorite list and related metadata and browser activity information. An example profile or trend with capture information such as: (a) User's Area of Interests: Commerce, Business News and Personal; (b) Visiting Hours for Science: 9am to 5 pm, Most Viewed Web Site: ‘XYZ.com’, Percentage of Time Dedicated to ‘XYZ.com’: 70% etc. From this user profile and/or trends, the search engine server 169 may determine that if the search string received during a search is related to the area of commerce, the user is likely to be interested in many of the commerce related web links that others have visited that have similar interests, profiles, or trends to the user. If a user with a similar trend pattern or profile often visits certain sites in the subject matter area of this search, then the server can choose to deliver such web links either separately or mixed with other lists mentioned above for review by the current user. In other words, the server can assume that users that have similar profile and similar browse histories, behaviors, favorites, interaction with the browser, etc., may be looking for similar content when searching in similar areas via a search string.
  • The trends that use favorite behavior and browser activity behavior allows the search engine server 169 to reorder the search result list, based upon, for example, recently added and high visit volume preferences. The search engine server 169 may push some of these recently added and high visit web links to the top of the list. In addition, the search engine server 169 may process the data stored in the world's favorite database 179 and browser activity database 181 to determine search hit probability by applying weighting factors (a modified natural language search) to different favorites, trends, user interactions, etc. A few of the factors that may be used to determine a weighting factor are: (a) number of users tagging a webpage as favorite; (b) number of users visiting the web page, either via a search engine or directly; (c) time at which the webpage is visited; (d) duration for which the webpage is visited; and (e) number of times the webpage is revisited (hit count). Similar processing may be adapted to form a specific browsing activity weighting factor, a specific favorite weighting factor or a crawl web page weighting factor.
  • The internet infrastructure 105 illustrated in FIG. 1 contains the search engine server 169 communicatively coupled to the plurality of client devices 157 through 159 via access points (APs) 121, 122, and 123, ISPNs (Internet Service Provider's Networks) 111 and 112, and an Internet backbone 107. The search engine server 169 contains browser activity gathering module 171 that collects the browser activity information and stores this data in the browser activity database 181. The search engine server 169 also contains favorite list gathering module 173 that collects the favorite lists and related metadata for a user or client and stores this data in the world's favorite database 179. The browser-activity-monitoring module 195 tracks the user's usage of the Internet and temporarily stores trends, usage data, etc., in the client devices 157 through 159. Then, in one embodiment, upon a clicking of a ‘send browser activity’ button in the web browser 151, the browser-activity-gathering module 171 receives the stored browser activity information and stores it in browser activity database 181 for further processing.
  • When the search engine server 169 begins interaction with the web browser 151 or a similar application on a client, a search support module (not shown) fills up a favorite list pane or popup window with favorite lists. Therefore, the search interface web page contains options to upload favorite list and related metadata, and browser related activity to the search engine server 169. Then, upon possible user editing/changes and a clicking of a ‘send favorite list’ button, via the client device 157 or 159, the favorite list gathering module 173 receives the favorite list and related metadata and stores this information in world's favorite database 179 for further processing.
  • Soon after the favorite list and related metadata, and browser activity information is received, a user profiling module (not specifically shown in FIG. 1) creates a user profile as mentioned in above paragraphs. A trend estimation module (not specifically shown in FIG. 1) retrieves stored information from the world's favorite database 179 and browser activity database 181 and processes this information to create trends, such as recently added websites and high visit volume preferences of the user. A browser-activity-based search result sorting module 175 orders search results or search result web links, selected from the browser activity database 181, on the basis of the search string and by popularity (or some other meaningful characteristic of the search result data). It also reorders the web links selected from crawl webpage database 177 based upon information processed from browser activity database 181 or other user relevance/priority information.
  • The search interface webpage that is delivered as a first page upon request from the web browser 151 facilitates the user to select between the following options for the current search: (a) search within browser activity database 181 alone; (b) search within world's favorite database 179 alone; (c) search within crawl webpage database 177 alone; (d) search based upon trends based on favorite behavior and browser activity behavior alone; and/or (e) any of the combinations of (a) through (d). In addition, ‘send browser activity’ and ‘send favorite list’ buttons allow user to send browser activity information and/or favorite lists and related metadata. The user may also be provided with a helpful tip that lets the user know terms with which the favorite list, trends, user profile, and related metadata, as well as web browser activity information are gathered, stored, shared, and used by the search server engine 169. For example, the helpful tip may be:
      • “To help us improve our site can you please provide your favorite list and browser activity information? You may edit, include, or delete any web link from the favorite list before sending it to us. We do not invade your privacy; keep records of any of your data including IP address and name.”
  • As an example of a search, a user may enter ‘top bicycle riders’ as a search string and choose the ‘search using browser activity’ option to enable searching for search results or search result web links that are associated or correlated strongly with historical user browser activity. Then user may click on ‘search’ button. The search engine server 169 searches for web links from the browser activity database 181 and delivers search results in one or more of the columns on a display screen of the client device. One or more other columns on the display screen or graphical user interface may have results derived from the crawl webpage database 177. Still another column or columns may have advertisements tailored by using a user profile, derived from the browser activity and favorite lists of the web browser 151, and so on.
  • FIG. 2 is a schematic block/step diagram illustrating components of the search engine server constructed in accordance with the embodiment of FIG. 1. The search engine server circuitry 207 may, in part or full, be incorporated into any computing device that is capable of serving as an Internet based server or computer. The search engine server circuitry 207 generally includes processing circuitry 209, local storage 217, manager interfaces 249, and network interfaces 241. These components are communicatively coupled to one another via one or more of a system bus, dedicated communication pathways, or other direct or indirect communication pathways. The processing circuitry 209 may be, in various embodiments, a microprocessor, central processing unit (CPU), a digital signal processor (DSP), a graphics processor, a state machine, an application specific integrated circuit, a field programming gate array, combinations thereof, or other processing circuitry.
  • The network interfaces 241 contain wired, optical, and/or wireless packet switched interfaces 245 and may also contain built-in or an independent interface processing circuitry 243 (usually another central processing unit of some sort). The network interfaces 241 allow the search engine server 207 to communicate with client devices such as devices 261 and to deliver search result pages of web links. The manager interfaces 249 may include one or more display and keypad interfaces. These manager interfaces 249 allow the user or IT expert at the search engine server 207 to control aspects of the system/server. The client device 261 that is illustrated is communicatively coupled to the search engine server 207 via an Internet 255.
  • Local storage 217 may be any type of random access memory (RAM), read-only memory (ROM), flash memory, electrically erasable memory, optical storage, magnetic storage, a disk drive or array, an optical drive, any combination thereof, or another type of memory that is operable to store computer instructions and data. The local storage 217 includes a browser activity gathering module 223, favorite list gathering module 225, favorite list based search result sorting module 227, browser activity based search result sorting module 229, crawl webpage database 231, a world's favorite database 233 and a browser activity database 235 to facilitate a user's search in accordance with the teachings herein. The client device 261 is illustrated as being communicatively coupled to the search engine server 207 via the Internet 255 or another communication network of any kind.
  • The browser-activity-gathering module 223 collects browser activity information and stores this data in the browser activity database 235 on the server. A browser-activity-monitoring module 295 incorporated into web browser 251 tracks the user's usage of Internet and temporarily stores them in the client device 261. In addition, either or both of the client or the server may process and filter the data collected by the browser-activity modules. By performing this processing and filtering, only relevant user activity is processed in a manner that influences search results. So, for example, virus-controlled activity, banned activity, adult content, unwanted ad pop-ups, etc., can be filtered from the data recording in the browser-activity modules and other activity that is highly relevant to the user may even be weighted higher by the modules. Upon clicking of a ‘send browser activity’ button in the web browser 251 or upon a timed event, a trigger event, or commission of a search, the browser activity gathering module 223 on the server receives the stored browser activity information from the client and stores it in browser activity database 235 for further processing during search operations. The favorite-list-gathering module 225 gathers favorite lists and related metadata from the web browser 251 and stores this data in the world's favorite database 233. This information can be used in addition to the browser activity modules to further refine or advantageously expand search operations and search results. The gathering of favorite list information and related user metadata/profiles occurs during search engine server's 207 interaction with the web browser 251 of the client device 261. However, the client device can be running browser activity data collection from the user at all times or at critical intervals or activities, even when search operations are not being performed and even when the client and server are not communicating with one another. For example, the module 295 on the client may monitor user interaction with locally cached Internet content, email, downloaded software or documents, downloaded content, cached advertising, and other activity to generate user profiles, user data, and user browser activity. Therefore, the browser activity may involve user activity in other applications, like a virus prevention application, an email application, a media processor (e.g., WinDVD or iTunes), and other applications.
  • The favorite list based search result sorting module 227 orders web links, selected on the basis of search string, often by popularity or some other meaningful characteristic to the user. The browser activity based search result sorting module 229 orders web links, selected from the browser activity database 235, on the basis of the search string and by popularity of some other client-set or server-set characteristic. It also reorders the web links selected from crawl webpage database 231 based upon information processed from browser activity database 235.
  • In other embodiments, the search engine server 207 of FIG. 2 may include fewer or more components than are illustrated as well as lesser or further functionality. In other words, the illustrated search engine server is meant to merely offer one example of possible functionality, parsing of functionality, and system construction in accordance with one embodiment.
  • FIG. 3 is a flow diagram illustrating the functionality of the search engine server of FIG. 1. The functionality begins at a block/step 307, where the search engine server requests that the user of the client device install and/or execute the browser activity-monitoring module 295 of FIG. 2. The search engine server or code stored in the application on the client provides all the necessary details and terms and conditions upon which the browser activity monitoring module is installed within the browser of the client device. After installation, the browser activity monitoring module 295 (see FIG. 2) starts tracking user Internet activity and sends this browser activity information periodically, upon trigger events, or upon user request to the server. During one such search interface webpage delivery, the user sends browser activity information (along with or in conjunction with a search string) to the server. The search interface webpage is the first webpage that is delivered to the web browser to initiate a new search. At a next block/step 309, the search engine server receives browsing activity data from the browser activity monitoring module on the client, often with the requirement that the user gives permission for the access or transfer of data and/or the user has a chance to change, edit, delete, or add data to/from the communicated information. Then, at a next block/step 311, the search engine server stores the browser activity information in browser activity database, as shown in FIG. 2.
  • A separate search support module also sends user or browser favorite list(s) information and related user/client metadata to the search engine server. Again, this part of functionality may occur during delivery of the search interface web page, a search string, or some other function. In the search interface webpage, the search engine server provides an option to upload the favorite list(s) on to an editable window pane or popup window and allows the user to edit, remove, and then send the favorite list along with a search string. At a next block/step 313, the search engine server receives, with user permission (which is often a good idea to enable), the favorite list, and related metadata, along with search string (if a new search is to be initiated). At a next block/step 315, the search engine server stores favorite list and related metadata in a world's favorite database and also constructs one or more user profiles using the collected browser activity information and possibly the favorite lists and related metadata. To construct a user profile, the search engine server uses browser activity information, favorite list information, and the related metadata to create profile data such as: (a) percentages of categories of webpage visits; (b) the times at which web pages are visited; (c) the time and date at which a webpage is added to the favorites list; and (d) the active duration for which a webpage is interacted with, among other related metadata. In addition, before delivery of a search result page, the search engine server processes stored data in the world's favorite database and browser activity database to allow for the monitoring and processing of trends, such as the user access to recently added websites and high visit volume sites/preferences. The user may choose to search, using the search string, within the world's favorite database, within the crawl webpage database, within the browser activity database and/or search using trends to obtain one or more lists of search results or web sites/pages relevant to the user's search needs.
  • At a next block/step 317, the search engine server selects web links from the crawl webpage database based upon the search string and sorts on the basis of popularity ranking and/or world's favorite ranking (or some other ranking scheme like date, size, etc). The world's favorite ranking is decided by using favorite weighting factor(s) that determines how many users select a webpage as a favorite. The browser activity information may also be used to rank the web links selected. At a next block/step 319, the search engine server selects web links from the world's favorite database and/or browser activity database based upon the search string and sorts on the basis of popularity ranking and/or world's favorite ranking (or some other mechanism). Again, the browser activity information may also be used to rank the web links selected, and as always, multiple two-tier or multi-tier rank-ordered algorithms may be employed. The process of block/step 319 is performed only if the user chooses to search within the world's favorite database or search using browser activity information. At a final block/step 321, the search engine server delivers a first search result page containing one or more of: (a) search results or web links selected and ranked from crawl webpage database; (b) search results or web links selected and ranked from world's favorite database; (c) search results or web links selected and ranked from browser activity database; (d) search results or web links selected from an advertisement database; (e) user profile created using favorite list and related metadata, and browser activity information; (f) trends based on favorite behavior and browser activity behavior; (g) persistence information; and/or (h) any combination of (a) through (g).
  • FIG. 4 is a flow diagram illustrating the functionality of the search engine server of FIG. 1 upon delivering a search engine server's web page to start a search operation, in accordance with one embodiment. The functionality of the search engine server, in this embodiment, begins at a block/step 409, when a search interface webpage (refer to FIG. 7 for detailed description of a typical search interface web page format) or subsequent search engine server's webpage is delivered. The search interface webpage that initiates a new search using a new search string typically contains provisions to enter a search string and upload favorite list and related metadata, as well as to upload browser activity information between the client and server. Similarly, the subsequent search result pages (one of search engine server's web pages) contain provisions to enter a new or refined search string, as well as ‘next’ button and ‘prey’ (or ‘previous’) button, to continue refinement and processing of search results over time. The search interface webpage or subsequent search engine server's webpage provides user facilities to search using any of the combination of the databases provided by the server and the client, based upon a search string, such as: (a) search using browser activity information; (b) search using favorite lists and related metadata; (c) user profile created from browser activity information, and favorite list and related metadata; and/or (e) trends based upon favorite behavior and browser activity behavior. The browser activity information related search may be selected and performed using a ‘search using browser activity’ radio button or other selection mechanism within the graphical user interfaces (GUIs) displayed to the user.
  • At a next decision block/step 421, the search engine server determines if a ‘prey’ button is clicked. If yes, at a next block/step 455, the search engine server delivers an exact previous search result page and waits for new inputs from the user of the client device. In case of the first search interface web page (when there is no previous data to display), the ‘prey’ button is not available. If the ‘prey’ button is not clicked at the decision block/step 421, then, at a next decision block/step 423, the search engine server determines if a ‘next’ button is clicked. If yes, at a next block/step 457, the search engine server delivers a subsequent search result page. In case of the search interface web page or a last search page, the ‘next’ button is not available as there is no next page of search results to deliver at this time.
  • If the ‘next’ button is not clicked at the decision block/step 423, then, at a next decision block/step 425, the search engine server determines if the ‘search using browser activity’ radio button is on. If not (if the button is off), the search engine server determines, at a next decision block/step 427, if ‘search’ button is clicked. If yes at the decision block/step 427, then the search engine server begins processing of a new search criteria, based upon a search string at connector 13′ (refer to the FIG. 5 for continuation of the process/method). If ‘search using browser activity’ radio button is clicked at the decision block/step 425, then, at a next decision block/step 429, the search engine server determines if a ‘search’ button is clicked. If yes at the decision block/step 429, then the search engine server begins processing of a new search criteria, based upon a search string and favorites at connector ‘A’ (refer to the FIG. 5 for continuation of the method via connector A). In another embodiment the options of ‘search within favorites’ and ‘search using trends’ may be incorporated using similar process. It is important to note that the order of the decision blocks/steps in FIG. 4 may be changed. It is possible, for example, to poll for a next button before a prey button, and still perform an algorithm that servers the purposes taught herein.
  • FIG. 5 is a flow diagram illustrating functionality of the search engine server of FIG. 1, continued from connectors ‘A’ and ‘B’ as shown in FIG. 4 and FIG. 5. The continued functionality of FIG. 4 at connector ‘A’ begins at a block/step 461 with the search engine server receiving a search string along with browsing activity information, favorite list, and metadata from client device's web browser. At a next block/step 463, the search engine server matches words, phrases, or parsed data of the search string with that of contents of the web pages in the world's favorite database and/or browser activity database. Then, at a next block/step 465, the search engine server selects web links from the world's favorite database and/or browser activity database, on the basis of closeness in match. At a next block/step 467, the search engine server sorts the selected web links based upon closeness in match and/or popularity and/or world's favorite ranking, etc. The world's favorite ranking is decided based upon a favorite weighting factor that determines how many users select a webpage as their favorite or a favorite. The browser activity information may also be used to sort the web links selected. At a next block/step 469, the search engine server delivers a search result page containing a first few web links sorted on the basis of: (a) closeness in match; (b) popularity rank; and/or (c) world's favorite rank. These combinations may be displayed separately in multiple columns or in a single column on the client display screen. The browser activity ranking based web links may also be presented.
  • The continued functionality of FIG. 4 at connector ‘B’ begins at a block/step 481 with the search engine server receiving a search string along with favorite list data and metadata from client device's web browser. At a next block/step 483, the search engine server matches words of the search string with that of contents of the web pages in the crawl webpage database. Then, at a next block/step 485, the search engine server selects web links from the crawl webpage database, on the basis of closeness in match. At a next block/step 487, the search engine server sorts the selected web links based upon closeness in match and/or popularity and/or world's favorite ranking. The browser activity information may also be used to sort the web links selected. At a next block/step 489, the search engine server delivers a search result page containing a first few web links sorted on the basis of: (a) closeness in match; (b) popularity rank; and/or (c) world's favorite rank. These combinations may be displayed separately in multiple columns or in a single column on the display screen or display device located with the client device. The browser activity ranking based web links may also be presented in another column.
  • Note that the functionality of ‘search within favorites’, ‘search using trends’ and also that of user sending the favorite list and metadata to the search engine server are not illustrated in FIGS. 4 and 5, but these features can be combined in any combination to create new modes of searching for search results to improve search result relevance to the user. for other such embodiments the functionality of selecting other search modes or combinations is shown in the snap shot of FIG. 7, as well as other variations (such as displaying mixed search results from various databases), as all such combinations are possible.
  • FIG. 6 is a flow diagram illustrating a functionality of the search engine server of FIG. 1 wherein the search engine server gathers and processes browser activity information, and delivers web links based upon this data. The functionality of gathering and processing the browser activity information to refine search result lists begins at a block/step 607 where the search engine server requests browser activity information from web browsers of a plurality of client devices periodically, upon trigger events, or upon request from the browser activity monitoring module, during their interaction with the search engine server. The search engine server makes requests for browser activity information periodically from the browser activity-monitoring module located on one or more client devices. The search engine server may also request for browser activity information from the plurality of client devices during delivery of a search interface webpage (refer to the description of FIG. 7). Therefore, there are many mechanisms, timing, and modes that the server and client can use to exchange meaningful user profile, trend data, metadata, browser data, etc., to assist in improving search operations. During the delivery of a search interface web page, the search engine server requests that the user of the client device provide their browser activity information along with favorite lists and related metadata (if selected or needed, and in some embodiments only if authorized and approved by the user). In one embodiment, the search interface webpage contains a window pane that is loaded with user's favorite lists and allows user to add, edit, remove and send them, and button to send browser activity information along with a search string.
  • Then, at a next block/step 609, the search engine server stores gathered browser activity information in browser activity database in a user-anonymous manner. The search engine server also stores gathered favorite list and related metadata in world's favorite database in an anonymous manner. The user is informed during installation of browser activity monitoring module and collecting of the browser activity information, and favorite list and related metadata that the collection is anonymous and no private data such as IP address and name(s) are collected or used in the process of searching. At a next block/step 611, the search engine server processes the browser activity information along with favorite list and related data with other statistical data. For example, the search engine server may process this data to create a user profile immediately after collection of the data, which is used to reorder, prioritize, select, and omit various search results available for inclusion in the search result list and selectable advertisements to better cater to the needs/desires of the user. Another example is that of creating trends based upon browser activity behavior and favorite behavior that again is used to reorder the search result list and advertisements.
  • At a next block/step 613, the search engine server tailors and orders the search results using a formula that incorporates processed browser activity information, favorite list and related metadata and other statistical information. The formula may also give certain weight to each of the factors that influence reordering of the search result list, such as user profile, search within favorites, search using browser activity, and search using trends. At a next block/step 615, the search engine server processes ‘Search Using Browser Activity’ button input (if turned on) to search from browser activity database, ‘Search Within Favorites’ button input (if turned on) to search from world's favorite database, and ‘Search Using Trends’ button input (if turned on) to allow recently added and high visit volume preferences to come to the top of the search result list. These radio button selections can be additive or mutually exclusive in different embodiments. A separate set of search result lists may be generated from each of the above radio button selections or the search results from each source can be assembled together and rank-ordered as a single compilation. The search result processing occurs immediately after collecting browser activity information, favorite list and related metadata, and the processing includes selection and sorting from browser activity database and world's favorite database alone and/or sorting on the basis of trends. At a next block/step 617, for each of the search string, browser activity information and favorite list and related metadata received from the plurality of web browsers, the search engine server delivers a search result page based upon a user chosen criteria, which includes: (a) search within favorites; (b) search all of the web; (c) search using browser activity; (d) a combination of (a) and (b). In other embodiments, any combination of the selections (a)-(c) may be used.
  • FIG. 7 is a schematic diagram illustrating a snap shot of search interface webpage 705 of the search engine server of FIG. 1, wherein the search interface webpage 705 allows a user to send browser activity information either periodically, upon trigger events, or when desired, and provides for user options to enable searching within favorites, search using trends, and/or search using browser activity information. Specifically, the exemplary snap shot illustrated in FIG. 7 shows the search engine server's search interface webpage 705 delivered to web browser 795 of the client device to facilitate user's search and to send browser activity information, and favorite list and related metadata. Note, in other embodiments, the function of providing trends, metadata, browser activity information, etc., can be decoupled from the process of performing a search with a search string. However, for ease of user interface to the server/browser, these two functions are combined together in one page in FIG. 7. The search engine server's search interface webpage 705 may contain a page title such as ‘Search Engine's web page (www.Search_Engine.com)’ 721, and a ‘search’ button 737.
  • Along with ‘search’ button 737, the search interface webpage 705 also contains ‘search within favorites’ 729, ‘search using browser activity’ 733 and ‘search using trends’ 735 radio buttons or selections in FIG. 7 that help refine the search, in accordance with the embodiments taught herein. The user is able to restrict searches to within browser activity database, world's favorite database and/or search using trends based upon favorite behavior, by using these radio buttons 729, 733, and 735 in FIG. 7. In addition a text such as ‘Enter Search String:’ 723 and text box 727 are provided to facilitate user's search string/data input. The user may enter the search string in the text box 727, such as ‘Top Bicycle Riders’ 725, make appropriate choices with buttons and interfaces in FIG. 7 and click on the ‘search’ 737 button to initiate a new search. The source of search result selection, ordering, etc., will be modified by the server based upon user selections and data input via the screen shown in FIG. 7.
  • An additional favorite list windowpane is provided for the user to send browser activity information, favorite list, and related metadata, in modified, redacted, expanded, or other forms. The windowpane loads up one or more favorite lists from the web browser automatically, as illustrated in FIG. 7. For example, the windowpane may contain a title such as “Your Favorite List” 747, followed by a list of web links such as links 761 through 763. The windowpane also has button to edit and delete, ‘Edit’ 743 and ‘Delete’ 745, content within the lists 747. By using these buttons 743 and 745, the user can add additional web links to the list, delete certain web links from the list, or edit some of the links. Also, a ‘Send Favorite List and Search’ 741 button allows the user to send favorite list and initiate a new search (based on the search string in the text box 727) at the same time. A ‘Send Browser Activity’ 797 button allows the user to send browser activity information to the server and use this information to refine selection, ordering, and processing of search results. In another embodiment, the windowpane may allow simultaneous sending of browser activity information, favorite lists, and metadata and search information.
  • A helping tip within the window pane such as the text “Help: Select Web Link that you want to edit or delete and press corresponding buttons above” 749 helps the user(s) to understand how to edit and send favorite list and related metadata to assist and modify their search operations and results. In addition, a helpful note can be provided that helps the user to understand that the data that is collected anonymously from their client machine to facilitate a better search. This message can be a message such as:
      • “Note: This Search Engine also searches within World's Favorite Lists and using Browser Activity, if chosen. Trend button allows recently added and high visit volume preferences to come to the top of the Search List. To help us improve our site can you please provide your favorite list? We do not invade your privacy, keep records of any of your data including IP address and name, we collect data anonymously” 793
  • FIG. 8 is a schematic diagram illustrating a snap shot of a first set/list of search results provided in a first search results page based upon a search string, favorite lists and related metadata, trends and/or browser activity information. Specifically, the exemplary snap shot illustrated in FIG. 8 shows the first search result page 805 as delivered to web browser 895 of the client device. This page is used to facilitate a user's search. The first search result page 805 may contain a page title such as ‘Search Engine's web page (www.Search_Engine.com)’ 821, and a ‘search’ button 837. A text such as ‘Enter Search String:’ 823 and text box 827 are provided to further facilitate user searching. The user may enter the search string in the text box 827, such as ‘Top Bicycle Riders’ 825, make appropriate choices in the various areas of FIG. 8 and click on the ‘search’ button 837 to initiate a new or refined search.
  • The first search result page 805 also contains ‘search within favorites’ 829, ‘search using browser activity’ 833 and ‘search using trends’ 835 radio buttons that help restrict the search to specific data sources, data organization and selection algorithms, and different modes of searching. The user is able to restrict a search to only within browser activity database, world's favorite database and/or search using trends (or any combination thereof) based upon browser activity and favorite behavior, by using the radio buttons 829, 833, and 835 in FIG. 8. The first search result page 805 also contains the ‘prey’ 885 and ‘next’ 889 buttons to access prior displayed search result pages and the subsequent search result pages, respectively. A helpful note can be provided to help the user to search in accordance with the present invention. This helpful note can be any not, such as
      • “Note: This Search Engine also searches within World's Favorite Lists and using Browser Activity, if chosen. Trend button allows recently added and high visit volume preferences to come to the top of the Search List” 893
  • Also, the first search result page 805 may contain in various columns and window panes, web links selected from one or more of: (a) browser activity database; (b) world's favorite database; (c) crawl webpage database; and/or (d) an advertisement database. The columns may also contain web links selected on the basis of: (i) user profile created from browser activity information and favorite list and related metadata; and (ii) trends based on browser activity behavior and favorite behavior. All of the web links thus selected using the above-mentioned criteria may be delivered separately in separate or different search result pages or may be mixed together to form fewer lists and search results pages whereby the data in these pages are mixed from several database sources within the server, to form fewer lists that are delivered in fewer columns or fewer windows. The first search result page 805 illustrated in the exemplary snap shot of FIG. 8 shows two columns, namely, ‘Search Results Within World's Favorites’ 841 and ‘Search Results Using Browser Activity’ 843. Each of these columns contains web links selected on the basis of the search string ‘Top Bicycle Riders’ 825. The columns are segregated in FIG. 8 to display results from specific sources in their own columns, with the sources being from one or more of the crawl web page database, the browser activity database and the world's favorite database. The two columns illustrated in FIG. 8 show web links 1 through 6, as web sites 851 through 856 and web sites 861 through 866, under the columns ‘Search Results Within World's Favorites’ 841 and ‘Search Results Using Browser Activity’, respectively. Again, as previously mentioned, the search results can be mixed and ordered together, regardless of search source or database origination. In fact, some entries may be redundant in several databases of FIG. 1, requiring a filtering of some search results to avoid duplication in the search lists.
  • The terms “circuit” and “circuitry” as used herein may refer to an independent circuit or to a portion of a multifunctional circuit that performs multiple underlying functions. For example, depending on the embodiment, processing circuitry may be implemented as a single chip processor or as a plurality of processing chips (e.g., a multi-core device). Likewise, a first circuit and a second circuit may be combined in one embodiment into a single circuit or, in another embodiment, operate independently perhaps in separate chips. The term “chip,” as used herein, refers to an integrated circuit. Circuits and circuitry may comprise general or specific purpose hardware, or may comprise such hardware and associated software such as firmware or object code.
  • As one of ordinary skill in the art will appreciate, the terms “operably coupled” and “communicatively coupled,” as may be used herein, include direct coupling and indirect coupling via another component, element, circuit, or module where, for indirect coupling, the intervening component, element, circuit, or module may or may not modify the information of a signal and may adjust its current level, voltage level, and/or power level. As one of ordinary skill in the art will also appreciate, inferred coupling (i.e., where one element is coupled to another element by inference) includes direct and indirect coupling between two elements in the same manner as “operably coupled” and “communicatively coupled.”
  • The present invention has also been described above with the aid of method steps illustrating the performance of specified functions and relationships thereof. The boundaries and sequence of these functional building block/steps and method steps (and their order in many some cases) have been arbitrarily defined herein for convenience of description. Alternate boundaries and sequences can be defined so long as the specified functions and relationships are appropriately performed. Any such alternate boundaries or sequences are thus within the scope and spirit of the claimed invention.
  • The present invention has been described above with the aid of functional building block/steps illustrating the performance of certain significant functions. The boundaries of these functional building block/steps have been arbitrarily defined for convenience of description. Alternate boundaries could be defined as long as any requisite or significant functions of a specific embodiment are appropriately performed in some manner by some structure/method. Similarly, flow diagram block/steps may also have been arbitrarily defined herein to illustrate certain significant functionality. To the extent used, the flow diagram block/step boundaries and sequence could have been defined otherwise and still perform the certain significant functionality. Such alternate definitions of both functional building block/steps and flow diagram block/steps and sequences are thus within the scope and spirit of the claimed invention.
  • One of average skill in the art will also recognize that the functional building block/steps, and other illustrative block/steps, modules and components herein, can be implemented as illustrated by discrete components, application specific integrated circuits, processors executing appropriate software, software modules, and the like, or any combination thereof. The algorithms taught herein were also focused on user-browser interaction and the use of this data in refining search results found based on a search string. However, a search result list may be derived by processing one more of the following sources of data in addition to the browser interaction database: a user profile data, user historic search patterns, user-client interaction data, client location, the time of day, the search string, user metadata, and user favorites data. Such combinations of two or more sources can even further refine search results to items that are more meaningful to the user.
  • Moreover, although described in detail for purposes of clarity and understanding by way of the aforementioned embodiments, the present invention is not limited to such embodiments. It will be obvious to one of average skill in the art that various changes and modifications may be practiced within the spirit and scope of the invention, as limited only by the scope of the appended claims.

Claims (20)

1. A server system that receives a first search input of a first user of a plurality of users, the first search input being delivered by a first computer of a plurality of user computers, the server system comprising:
a first service that receives and stores first activity data associated with the plurality of users via the plurality of user computers, the first activity data being produced in accordance with a first type of program code in operation on each of the plurality of user computers, the first type of program code supporting Internet web page searching, browsing, selection, retrieval and display based on hypertext functionality, the first activity data comprising at least references to a first subset of a plurality of Internet hosted web pages;
a second service that receives and stores second activity data that is produced in accordance with a second type of program code in operation on at least a portion of each of the plurality of user computers, the second type of program code having substantially different functionally from that of the first type of program code, the second activity data comprising a plurality of hypertext link references; and
a third service that responds to the first search input by assisting in a sensory presentation on the first computer for the first user, the sensory presentation being generated from particular Internet hosted data selected based on the first search input, at least a first portion of the first activity data and at least a second portion of the second activity data.
2. The server system of claim 1, wherein the second type of program code performs an identification function.
3. The server system of claim 1, wherein the second type of program code performs a malware detection function.
4. The server system of claim 1, wherein the second type of program code performs a pop-up ad detection function.
5. The server system of claim 1, wherein the first activity data comprising objective activity data.
6. The server system of claim 1, wherein the first activity data comprising subjective activity data.
7. The server system of claim 1, wherein the second type of program code performs a media content related function.
8. A method performed by a server system that receives a first search input of a first user of a plurality of users, the first search input being delivered by a first computer of a plurality of user computers, the method comprising:
receiving first activity data associated with the plurality of users via the plurality of user computers, the first activity data being produced in accordance with a first type of program code in operation on each of the plurality of user computers, the first type of program code supporting Internet web page searching, browsing, selection, retrieval and display based on hypertext functionality, the first activity data comprising at least references to a first subset of a plurality of Internet hosted web pages;
receiving second activity data that is produced in accordance with a second type of program code in operation on at least a portion of each of the plurality of user computers, the second type of program code having substantially different functionally from that of the first type of program code, the second activity data comprising a plurality of hypertext link references; and
responding to the first search input by assisting in a sensory presentation on the first computer for the first user, the sensory presentation being generated from particular Internet hosted data selected based on the first search input, at least a first portion of the first activity data and at least a second portion of the second activity data.
9. The method of claim 8, wherein the assisting comprising delivering at least a portion of the particular Internet hosted data to the first computer.
10. The method of claim 9, wherein the assisting further comprises generating the at least a portion of the particular Internet hosted data by considering the first search input, the at least the first portion of the first activity data and the at least the second portion of the second activity data.
11. The method of claim 8, wherein the second type of program code performs an identification function.
12. The method of claim 8, wherein the second type of program code performs an email related function.
13. The method of claim 8, wherein the second type of program code performs a media content related function.
14. First program code for instructing a user's computer to perform a method supporting interaction with an Internet search system and related to a plurality of Internet web pages, the user computer having second program code directing interaction with the Internet search system to perform first functions, the first functions being Internet web page related searching, browsing, selection, retrieval and display based on hypertext functionality, the method comprising:
directing the user's computer to perform at least one second function that is substantially different from the first functions, the at least one second function being related to at least a subset of the plurality of Internet web pages; and
directing the user's computer to support at least one of the first functions by causing the user's computer to send interaction data associated with both the second function and at least one of the plurality of Internet web pages to the Internet search system.
15. The method of claim 14, wherein the second function comprises an identification function.
16. The method of claim 14, wherein the second function comprises a malware related function.
17. The method of claim 14, wherein the second function comprises a pop-up ad related function.
18. The method of claim 14, wherein the second function comprises an email related function.
19. The method of claim 14, wherein the second function comprises a media content related function.
20. The method of claim 14, further comprising directing the user's computer to generate the interaction data at least in part by performing an analysis associated with the at least one of the plurality of Internet web pages, and the analysis being at least a portion of the second function.
US13/523,985 2008-05-13 2012-06-15 Search engine using client browser and application software activity information Abandoned US20120254146A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US13/523,985 US20120254146A1 (en) 2008-05-13 2012-06-15 Search engine using client browser and application software activity information
US13/659,704 US8666965B2 (en) 2008-05-13 2012-10-24 Web search with visited web page search result restrictions
US13/659,733 US20130060747A1 (en) 2008-05-13 2012-10-24 Web search system with group interaction support

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US5289708P 2008-05-13 2008-05-13
US12/415,711 US8229911B2 (en) 2008-05-13 2009-03-31 Network search engine utilizing client browser activity information
US13/523,985 US20120254146A1 (en) 2008-05-13 2012-06-15 Search engine using client browser and application software activity information

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US12/415,711 Continuation US8229911B2 (en) 2008-05-13 2009-03-31 Network search engine utilizing client browser activity information

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US13/659,733 Continuation US20130060747A1 (en) 2008-05-13 2012-10-24 Web search system with group interaction support
US13/659,704 Continuation US8666965B2 (en) 2008-05-13 2012-10-24 Web search with visited web page search result restrictions

Publications (1)

Publication Number Publication Date
US20120254146A1 true US20120254146A1 (en) 2012-10-04

Family

ID=41317106

Family Applications (5)

Application Number Title Priority Date Filing Date
US12/415,711 Expired - Fee Related US8229911B2 (en) 2008-05-13 2009-03-31 Network search engine utilizing client browser activity information
US13/523,985 Abandoned US20120254146A1 (en) 2008-05-13 2012-06-15 Search engine using client browser and application software activity information
US13/524,202 Abandoned US20120254147A1 (en) 2008-05-13 2012-06-15 Search engine employing preprocessing & filtering of objective activity information
US13/659,704 Expired - Fee Related US8666965B2 (en) 2008-05-13 2012-10-24 Web search with visited web page search result restrictions
US13/659,733 Abandoned US20130060747A1 (en) 2008-05-13 2012-10-24 Web search system with group interaction support

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US12/415,711 Expired - Fee Related US8229911B2 (en) 2008-05-13 2009-03-31 Network search engine utilizing client browser activity information

Family Applications After (3)

Application Number Title Priority Date Filing Date
US13/524,202 Abandoned US20120254147A1 (en) 2008-05-13 2012-06-15 Search engine employing preprocessing & filtering of objective activity information
US13/659,704 Expired - Fee Related US8666965B2 (en) 2008-05-13 2012-10-24 Web search with visited web page search result restrictions
US13/659,733 Abandoned US20130060747A1 (en) 2008-05-13 2012-10-24 Web search system with group interaction support

Country Status (1)

Country Link
US (5) US8229911B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104598508A (en) * 2013-09-18 2015-05-06 Ims保健公司 System and method for fast query response
US10762151B2 (en) 2016-09-08 2020-09-01 Guangzhou Ucweb Computer Technology Co., Ltd. Method and device for recommending content to browser of terminal device and method and device for displaying content on browser of terminal device

Families Citing this family (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9990674B1 (en) 2007-12-14 2018-06-05 Consumerinfo.Com, Inc. Card registry systems and methods
US8250054B2 (en) * 2008-05-13 2012-08-21 Enpulz, L.L.C. Network search engine utilizing client browser favorites
US8312033B1 (en) 2008-06-26 2012-11-13 Experian Marketing Solutions, Inc. Systems and methods for providing an integrated identifier
US8060424B2 (en) 2008-11-05 2011-11-15 Consumerinfo.Com, Inc. On-line method and system for monitoring and reporting unused available credit
US8214350B1 (en) * 2009-01-02 2012-07-03 Google Inc. Pre-computed impression lists
WO2010083450A2 (en) * 2009-01-15 2010-07-22 Roy Shkedi Requesting offline profile data for online use in a privacy-sensitive manner
US8082291B2 (en) * 2009-04-27 2011-12-20 International Business Machines Corporation Identifying relevant data from unstructured feeds
US8832131B2 (en) * 2009-07-08 2014-09-09 International Business Machines Corporation System, method, and apparatus for replicating a portion of a content repository using behavioral patterns
US8930437B2 (en) * 2009-10-05 2015-01-06 Tynt Multimedia, Inc. Systems and methods for deterring traversal of domains containing network resources
US9886681B2 (en) 2009-11-24 2018-02-06 International Business Machines Corporation Creating an aggregate report of a presence of a user on a network
US20110153644A1 (en) * 2009-12-22 2011-06-23 Nokia Corporation Method and apparatus for utilizing a scalable data structure
US8793333B1 (en) * 2010-03-25 2014-07-29 A9.Com, Inc. Matrix viewing
US8631356B2 (en) * 2010-07-22 2014-01-14 Yahoo! Inc. Presentation of advertisements based on user interactivity with a web page
US8700624B1 (en) * 2010-08-18 2014-04-15 Semantifi, Inc. Collaborative search apps platform for web search
US9215264B1 (en) * 2010-08-20 2015-12-15 Symantec Corporation Techniques for monitoring secure cloud based content
US20120131645A1 (en) * 2010-11-18 2012-05-24 Harm Michael W User Scriptable Server Initiated User Interface Creation
US8886811B2 (en) 2010-11-29 2014-11-11 Motorola Mobility Llc Method and device for improving a browsing experience
US10409851B2 (en) 2011-01-31 2019-09-10 Microsoft Technology Licensing, Llc Gesture-based search
US10444979B2 (en) 2011-01-31 2019-10-15 Microsoft Technology Licensing, Llc Gesture-based search
US10055766B1 (en) * 2011-02-14 2018-08-21 PayAsOne Intellectual Property Utilization LLC Viral marketing object oriented system and method
US8280891B1 (en) * 2011-06-17 2012-10-02 Google Inc. System and method for the calibration of a scoring function
US20130031160A1 (en) * 2011-06-27 2013-01-31 Christopher Carmichael Web 3.0 Content Aggregation, Delivery and Navigation System
US9483606B1 (en) 2011-07-08 2016-11-01 Consumerinfo.Com, Inc. Lifescore
US9146909B2 (en) * 2011-07-27 2015-09-29 Qualcomm Incorporated Web browsing enhanced by cloud computing
US8706753B2 (en) * 2011-08-25 2014-04-22 Oracle International Corporation Search result ranking with search string certainty weighting
US9106691B1 (en) 2011-09-16 2015-08-11 Consumerinfo.Com, Inc. Systems and methods of identity protection and management
US8402011B1 (en) * 2011-10-10 2013-03-19 Google Inc. System and method for managing user web browsing information
US8738516B1 (en) 2011-10-13 2014-05-27 Consumerinfo.Com, Inc. Debt services candidate locator
US8732192B2 (en) 2012-02-28 2014-05-20 International Business Machines Corporation Searching for web pages based on user-recalled web page appearance
US10984337B2 (en) 2012-02-29 2021-04-20 Microsoft Technology Licensing, Llc Context-based search query formation
US20130246414A1 (en) * 2012-03-13 2013-09-19 Microsoft Corporation Search results personalization based on explicitly preferred sources
KR20140144292A (en) * 2012-04-10 2014-12-18 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 Distilling popular information of a web page
US20130290862A1 (en) * 2012-04-27 2013-10-31 Microsoft Corporation User-tailored search engine homepage experiences
US9853959B1 (en) 2012-05-07 2017-12-26 Consumerinfo.Com, Inc. Storage and maintenance of personal data
JP6102124B2 (en) * 2012-08-24 2017-03-29 ソニー株式会社 Information processing apparatus, information processing method, and program
US20140095461A1 (en) * 2012-10-03 2014-04-03 Microsoft Corporation Communicating bookmarked webpage requests to search engines
US11099652B2 (en) 2012-10-05 2021-08-24 Microsoft Technology Licensing, Llc Data and user interaction based on device proximity
US9654541B1 (en) 2012-11-12 2017-05-16 Consumerinfo.Com, Inc. Aggregating user web browsing data
JP6113463B2 (en) * 2012-11-15 2017-04-12 任天堂株式会社 Information processing program, link management apparatus, display system, and display method
US9916621B1 (en) 2012-11-30 2018-03-13 Consumerinfo.Com, Inc. Presentation of credit score factors
US9507491B2 (en) 2012-12-14 2016-11-29 International Business Machines Corporation Search engine optimization utilizing scrolling fixation
US8990192B2 (en) 2012-12-14 2015-03-24 International Business Machines Corporation Search engine optimization using a find operation
US11809506B1 (en) * 2013-02-26 2023-11-07 Richard Paiz Multivariant analyzing replicating intelligent ambience evolving system
US10102570B1 (en) 2013-03-14 2018-10-16 Consumerinfo.Com, Inc. Account vulnerability alerts
US9406085B1 (en) 2013-03-14 2016-08-02 Consumerinfo.Com, Inc. System and methods for credit dispute processing, resolution, and reporting
US9477785B2 (en) * 2013-03-15 2016-10-25 NutraSpace LLC Customized query application and data result updating procedure
US10685398B1 (en) 2013-04-23 2020-06-16 Consumerinfo.Com, Inc. Presenting credit score information
US10402846B2 (en) * 2013-05-21 2019-09-03 Fotonation Limited Anonymizing facial expression data with a smart-cam
US10803232B2 (en) 2013-06-06 2020-10-13 International Business Machines Corporation Optimizing loading of web page based on aggregated user preferences for web page elements of web page
US9613132B2 (en) * 2013-06-28 2017-04-04 Yandex Europe Ag Method of and system for displaying a plurality of user-selectable refinements to a search query
US9215243B2 (en) * 2013-09-30 2015-12-15 Globalfoundries Inc. Identifying and ranking pirated media content
US10325314B1 (en) 2013-11-15 2019-06-18 Consumerinfo.Com, Inc. Payment reporting systems
US9477737B1 (en) 2013-11-20 2016-10-25 Consumerinfo.Com, Inc. Systems and user interfaces for dynamic access of multiple remote databases and synchronization of data based on user rules
US9618343B2 (en) 2013-12-12 2017-04-11 Microsoft Technology Licensing, Llc Predicted travel intent
US9477748B2 (en) * 2013-12-20 2016-10-25 Adobe Systems Incorporated Filter selection in search environments
US9892457B1 (en) * 2014-04-16 2018-02-13 Consumerinfo.Com, Inc. Providing credit data in search results
KR102216049B1 (en) * 2014-04-21 2021-02-15 삼성전자주식회사 System and method for semantic labeling
US9827714B1 (en) 2014-05-16 2017-11-28 Google Llc Method and system for 3-D printing of 3-D object models in interactive content items
CN105224533B (en) * 2014-05-28 2019-09-03 北京搜狗科技发展有限公司 Browser collection folder method for sorting and device
US11055761B2 (en) * 2014-07-17 2021-07-06 Ebay Inc. Systems and methods for determining dynamic price ranges
US10169799B2 (en) 2014-08-13 2019-01-01 Ebay Inc. Dynamically adjusted results for search interface
US9462009B1 (en) * 2014-09-30 2016-10-04 Emc Corporation Detecting risky domains
US20160110083A1 (en) * 2014-10-15 2016-04-21 KBR IP Holdings, LLC Limiting visibility into user social media data based on user attributes
US20200218413A1 (en) 2014-10-30 2020-07-09 Google Llc Systems and methods for presenting scrolling online content on mobile devices
US10277709B2 (en) 2014-11-03 2019-04-30 At&T Mobility Ii Llc Determining a visitation profile for a user
US10404816B2 (en) * 2014-12-05 2019-09-03 Microsoft Technology Licensing, Llc Determining browsing activities
US10311116B2 (en) * 2015-10-21 2019-06-04 Samsung Electronics Co., Ltd. Multi-function search button
US10783431B2 (en) 2015-11-11 2020-09-22 Adobe Inc. Image search using emotions
US9818044B2 (en) 2015-11-11 2017-11-14 Adobe Systems Incorporated Content update suggestions
US10198590B2 (en) 2015-11-11 2019-02-05 Adobe Inc. Content sharing collections and navigation
US10249061B2 (en) * 2015-11-11 2019-04-02 Adobe Inc. Integration of content creation and sharing
US10389804B2 (en) 2015-11-11 2019-08-20 Adobe Inc. Integration of content creation and sharing
US10176522B1 (en) 2016-03-24 2019-01-08 Wells Fargo Bank, N.A. Behavior based determination of financial transaction favorites
US10608972B1 (en) * 2016-08-23 2020-03-31 Microsoft Technology Licensing, Llc Messaging service integration with deduplicator
FR3056797B1 (en) * 2016-09-29 2022-04-15 Target2Sell METHOD FOR ESTABLISHING AN ORDERED LIST OF OBJECTS AND SYSTEM FOR IMPLEMENTING THE METHOD.
TWI642015B (en) * 2016-11-11 2018-11-21 財團法人工業技術研究院 Method of producing browsing attributes of a user, and non-transitory computer-readable storage medium thereof
US10404789B2 (en) 2017-01-25 2019-09-03 Walmart Apollo, Llc Systems, method, and non-transitory computer-readable storage media for generating code for displaying a webpage
US10437570B2 (en) 2017-01-25 2019-10-08 Walmart Apollo, Llc Systems, method, and non-transitory computer-readable storage media for generating code for displaying a webpage
US10839041B2 (en) 2017-01-25 2020-11-17 Walmart Apollo, Llc Systems, method, and non-transitory computer-readable storage media for a partial-render operation generating code for displaying a webpage
US10268460B2 (en) * 2017-01-25 2019-04-23 Walmart Apollo, Llc Systems, method, and non-transitory computer-readable storage media for generating code for displaying a webpage
CN110765156A (en) * 2018-07-09 2020-02-07 慧荣科技股份有限公司 Linked list searching device and method
US10997291B2 (en) * 2018-07-19 2021-05-04 Juniper Networks, Inc. Extending dynamic detection of malware using static and dynamic malware analyses
CN110866153B (en) * 2018-08-10 2024-08-09 北京搜狗科技发展有限公司 Data processing method and device for data processing
US10880313B2 (en) 2018-09-05 2020-12-29 Consumerinfo.Com, Inc. Database platform for realtime updating of user data from third party sources
US11315179B1 (en) 2018-11-16 2022-04-26 Consumerinfo.Com, Inc. Methods and apparatuses for customized card recommendations
US11238656B1 (en) 2019-02-22 2022-02-01 Consumerinfo.Com, Inc. System and method for an augmented reality experience via an artificial intelligence bot
CN110188258B (en) * 2019-04-19 2024-05-24 平安科技(深圳)有限公司 Method and device for acquiring external data by using crawler
US11941065B1 (en) 2019-09-13 2024-03-26 Experian Information Solutions, Inc. Single identifier platform for storing entity data
US20220284441A1 (en) * 2021-03-02 2022-09-08 Capital One Services, Llc Detection of Warranty Expiration and Forwarding Notification
KR20240019303A (en) * 2021-08-11 2024-02-14 구글 엘엘씨 User interface for displaying web browser history data

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020164047A1 (en) * 2001-05-02 2002-11-07 Yuval Gideon A. Software anti-piracy systems and methods utilizing certificates with digital content
US20030208687A1 (en) * 2002-05-06 2003-11-06 Trend Micro Incorporated Antivirus stand-alone network or internet appliance and methods therefor
US20040034502A1 (en) * 2001-03-21 2004-02-19 Changmo Jung Method for measuring time of accessing a web site through the internet and recording media for storing a program thereof
US20060218146A1 (en) * 2005-03-28 2006-09-28 Elan Bitan Interactive user-controlled relevance ranking of retrieved information in an information search system
US20070043667A1 (en) * 2005-09-08 2007-02-22 Bahman Qawami Method for secure storage and delivery of media content
US20070067392A1 (en) * 2005-08-25 2007-03-22 Microsoft Corporation Networking through electronic messaging and mail
US20070101298A1 (en) * 2005-10-28 2007-05-03 Microsoft Corporation Layout and management of browser panes
US20090030755A1 (en) * 2007-07-25 2009-01-29 Utbk, Inc. Systems and Methods to Dynamically Generate Listings to Selectively Track User Responses
US20090204599A1 (en) * 2008-02-13 2009-08-13 Microsoft Corporation Using related users data to enhance web search
US20100293057A1 (en) * 2003-09-30 2010-11-18 Haveliwala Taher H Targeted advertisements based on user profiles and page profile

Family Cites Families (124)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6507823B1 (en) 1904-05-29 2003-01-14 Pierre Hercules Nel System and method for on-line purchasing of goods and services
US6289319B1 (en) 1984-05-24 2001-09-11 Lawrence B. Lockwood Automatic business and financial transaction processing system
US7010508B1 (en) 1984-05-24 2006-03-07 Lockwood Lawrence B Automated multimedia data processing network
US4882675A (en) 1984-11-26 1989-11-21 Steven Nichtberger Paperless system for distributing, redeeming and clearing merchandise coupons
US5339392A (en) 1989-07-27 1994-08-16 Risberg Jeffrey S Apparatus and method for creation of a user definable video displayed document showing changes in real time data
US5239462A (en) 1992-02-25 1993-08-24 Creative Solutions Groups, Inc. Method and apparatus for automatically determining the approval status of a potential borrower
US6055514A (en) 1992-03-20 2000-04-25 Wren; Stephen Corey System for marketing foods and services utilizing computerized centraland remote facilities
US6196458B1 (en) 1997-12-01 2001-03-06 Walker Digital, Llc Method and apparatus for printing a billing statement to provide supplementary product sales
US5940811A (en) 1993-08-27 1999-08-17 Affinity Technology Group, Inc. Closed loop financial transaction method and apparatus
US5930776A (en) 1993-11-01 1999-07-27 The Golden 1 Credit Union Lender direct credit evaluation and loan processing system
CA2136038A1 (en) 1993-12-28 1995-06-29 Marilyn A. Holda-Fleck System and method to automatically provide an electronic consumer rebate
US5797133A (en) 1994-08-31 1998-08-18 Strategic Solutions Group, Inc Method for automatically determining the approval status of a potential borrower
US6405281B1 (en) 1994-12-09 2002-06-11 Neomagic Israel Ltd Input/output methods for associative processor
US5732400A (en) 1995-01-04 1998-03-24 Citibank N.A. System and method for a risk-based purchase of goods
CA2229394A1 (en) 1995-08-23 1997-03-06 Terje Andersen Fire resistant bushing for cables, pipes and channels
US7181427B1 (en) 1995-09-12 2007-02-20 Jp Morgan Chase Bank, N.A. Automated credit application system
US5878403A (en) 1995-09-12 1999-03-02 Cmsi Computer implemented automated credit application analysis and decision routing system
AU7663696A (en) 1995-10-30 1997-05-22 Cars Incorporated By Fusz Product exchange system
US6088686A (en) 1995-12-12 2000-07-11 Citibank, N.A. System and method to performing on-line credit reviews and approvals
US5774870A (en) 1995-12-14 1998-06-30 Netcentives, Inc. Fully integrated, on-line interactive frequency and award redemption program
US5963915A (en) 1996-02-21 1999-10-05 Infoseek Corporation Secure, convenient and efficient system and method of performing trans-internet purchase transactions
US6014645A (en) 1996-04-19 2000-01-11 Block Financial Corporation Real-time financial card application system
US5943424A (en) 1996-06-17 1999-08-24 Hewlett-Packard Company System, method and article of manufacture for processing a plurality of transactions from a single initiation point on a multichannel, extensible, flexible architecture
US5765144A (en) 1996-06-24 1998-06-09 Merrill Lynch & Co., Inc. System for selecting liability products and preparing applications therefor
US5937391A (en) 1996-07-11 1999-08-10 Fujitsu Limited Point-service system in online shopping mall
JP3910272B2 (en) 1996-11-18 2007-04-25 富士フイルム株式会社 Network photo service system
US6175922B1 (en) 1996-12-04 2001-01-16 Esign, Inc. Electronic transaction systems and methods therefor
US5903721A (en) 1997-03-13 1999-05-11 cha|Technologies Services, Inc. Method and system for secure online transaction processing
US6119103A (en) 1997-05-27 2000-09-12 Visa International Service Association Financial risk prediction systems and methods therefor
US6434607B1 (en) 1997-06-19 2002-08-13 International Business Machines Corporation Web server providing role-based multi-level security
US6144948A (en) 1997-06-23 2000-11-07 Walker Digital, Llc Instant credit card marketing system for reservations for future services
US7376603B1 (en) 1997-08-19 2008-05-20 Fair Isaac Corporation Method and system for evaluating customers of a financial institution using customer relationship value tags
US5984180A (en) 1997-10-06 1999-11-16 Albrecht; Jerry L. Method and system for gift credit card
US6484149B1 (en) 1997-10-10 2002-11-19 Microsoft Corporation Systems and methods for viewing product information, and methods for generating web pages
US6052674A (en) 1997-12-23 2000-04-18 Information Retrieval Consultants (Europe, Middle East, Africa ) Limited Electronic invoicing and collection system and method with charity donations
US6453306B1 (en) 1998-01-26 2002-09-17 Ict Software S.A. Internet commerce method and apparatus
US6055513A (en) 1998-03-11 2000-04-25 Telebuyer, Llc Methods and apparatus for intelligent selection of goods and services in telephonic and electronic commerce
US6915271B1 (en) 1998-03-11 2005-07-05 The Product Engine, Inc. Method and system for delivering redeeming dynamically and adaptively characterized promotional incentives on a computer network
US6505773B1 (en) 1998-04-03 2003-01-14 International Business Machines Corporation Authenticated electronic coupon issuing and redemption
US6385594B1 (en) 1998-05-08 2002-05-07 Lendingtree, Inc. Method and computer network for co-ordinating a loan over the internet
US6311169B2 (en) 1998-06-11 2001-10-30 Consumer Credit Associates, Inc. On-line consumer credit data reporting system
US6466981B1 (en) 1998-06-30 2002-10-15 Microsoft Corporation Method using an assigned dynamic IP address and automatically restoring the static IP address
US7194436B2 (en) 1998-08-10 2007-03-20 Ford Motor Company Method and system for internet based financial auto credit application
US6236975B1 (en) 1998-09-29 2001-05-22 Ignite Sales, Inc. System and method for profiling customers for targeted marketing
US6285983B1 (en) 1998-10-21 2001-09-04 Lend Lease Corporation Ltd. Marketing systems and methods that preserve consumer privacy
US7742966B2 (en) 1998-10-24 2010-06-22 Marketcore.Com, Inc. Efficient market for financial products
US6567791B2 (en) 1998-11-03 2003-05-20 Nextcard, Inc. Method and apparatus for a verifiable on line rejection of an application for credit
US6324524B1 (en) 1998-11-03 2001-11-27 Nextcard, Inc. Method and apparatus for an account level offer of credit and real time balance transfer
US6795812B1 (en) 1998-11-03 2004-09-21 Nextcard, Inc. Implementing a counter offer for an on line credit card application
US6405181B2 (en) 1998-11-03 2002-06-11 Nextcard, Inc. Method and apparatus for real time on line credit approval
AU1612500A (en) 1998-11-09 2000-05-29 E-Fin, Llc Computer-driven information management system for selectively matching credit applicants with money lenders through a global communications network
US6766302B2 (en) 1998-11-09 2004-07-20 Joseph Bach Method and apparatus for advertisement
US7082412B1 (en) 1998-11-23 2006-07-25 Enet 30, Inc. Electronic factoring
US6167385A (en) 1998-11-30 2000-12-26 The Chase Manhattan Bank Supply chain financing system and method
US7058597B1 (en) 1998-12-04 2006-06-06 Digital River, Inc. Apparatus and method for adaptive fraud screening for electronic commerce transactions
US6233566B1 (en) 1998-12-31 2001-05-15 Ultraprise Corporation System, method and computer program product for online financial products trading
US6314095B1 (en) 1999-02-11 2001-11-06 Motorola, Inc. Method and apparatus for a high-speed multimedia content switch with compressed internet protocol header
US7353192B1 (en) 1999-02-16 2008-04-01 Autobytel Inc. Product configuration display system and method with user requested physical product alterations
US7219080B1 (en) 1999-03-31 2007-05-15 Autobytel.Com, Inc. Continuous online auction system and method
US8036941B2 (en) 2000-03-21 2011-10-11 Bennett James D Online purchasing system supporting lenders with affordability screening
US7539628B2 (en) 2000-03-21 2009-05-26 Bennett James D Online purchasing system supporting buyer affordability screening
US7542922B2 (en) 2000-03-21 2009-06-02 Bennett James D Online purchasing system supporting sellers with affordability screening
US6970852B1 (en) 1999-04-28 2005-11-29 Imx Solutions, Inc. Methods and apparatus for conducting secure, online monetary transactions
US7769681B2 (en) 1999-05-08 2010-08-03 Jack Misraje Computer system and method for networkd interchange of data and information for members of the real estate financial and related transactional services industry
US6385591B1 (en) 1999-05-11 2002-05-07 Jeffrey W. Mankoff Method and system for electronic organization of coupons
AU5596700A (en) 1999-06-03 2000-12-28 Charles H. CELLA Contingency-based options and futures for contingent travel accommodations
US7249097B2 (en) 1999-06-18 2007-07-24 Echarge Corporation Method for ordering goods, services, and content over an internetwork using a virtual payment account
WO2000079461A1 (en) 1999-06-23 2000-12-28 Richard Postrel System for electronic barter, trading and redeeming points accumulated in frequent use reward programs
US6370514B1 (en) 1999-08-02 2002-04-09 Marc A. Messner Method for marketing and redeeming vouchers for use in online purchases
US6934692B1 (en) 1999-07-06 2005-08-23 Dana B. Duncan On-line interactive system and method for transacting business
US6684196B1 (en) 1999-07-07 2004-01-27 Ziprealty, Inc. Beginning-to-end online automation of real estate transactions
US6615253B1 (en) 1999-08-31 2003-09-02 Accenture Llp Efficient server side data retrieval for execution of client side applications
US7289964B1 (en) 1999-08-31 2007-10-30 Accenture Llp System and method for transaction services patterns in a netcentric environment
US6477580B1 (en) 1999-08-31 2002-11-05 Accenture Llp Self-described stream in a communication services patterns environment
US7171371B2 (en) 1999-09-03 2007-01-30 Smg Trust Method and system for providing pre and post operative support and care
US6446048B1 (en) 1999-09-03 2002-09-03 Intuit, Inc. Web-based entry of financial transaction information and subsequent download of such information
US6928412B2 (en) 1999-09-17 2005-08-09 Paul C. DeBiasse Computerized system to improve process of bringing consumer product to market
US7047219B1 (en) 1999-10-04 2006-05-16 Trade Finance Systems, Inc. Trade finance automation system
US7133935B2 (en) 1999-10-19 2006-11-07 Shad Hedy System and method for real-time electronic inquiry, delivery, and reporting of credit information
US6988085B2 (en) 1999-10-19 2006-01-17 Shad Hedy System and method for real-time electronic inquiry, delivery, and reporting of credit information
US7630986B1 (en) 1999-10-27 2009-12-08 Pinpoint, Incorporated Secure data interchange
US6895388B1 (en) 1999-11-05 2005-05-17 Ford Motor Company Communication schema of online system and method of locating consumer product in the enterprise production pipeline
US6785671B1 (en) 1999-12-08 2004-08-31 Amazon.Com, Inc. System and method for locating web-based product offerings
US7668747B2 (en) 1999-12-13 2010-02-23 Autosavings Network, Inc. System and method for providing incentives to purchasers
US7069234B1 (en) 1999-12-22 2006-06-27 Accenture Llp Initiating an agreement in an e-commerce environment
US6868395B1 (en) 1999-12-22 2005-03-15 Cim, Ltd. Business transactions using the internet
US7627531B2 (en) 2000-03-07 2009-12-01 American Express Travel Related Services Company, Inc. System for facilitating a transaction
US6847942B1 (en) 2000-05-02 2005-01-25 General Electric Canada Equipment Finance G.P. Method and apparatus for managing credit inquiries within account receivables
US6665710B1 (en) * 2000-05-11 2003-12-16 International Business Machines Corporation Searching local network addresses
US7096354B2 (en) 2000-08-04 2006-08-22 First Data Corporation Central key authority database in an ABDS system
US6957192B1 (en) 2000-08-23 2005-10-18 Chevron U.S.A. Inc. System and method for automated credit matching
US6477575B1 (en) 2000-09-12 2002-11-05 Capital One Financial Corporation System and method for performing dynamic Web marketing and advertising
US7844489B2 (en) 2000-10-30 2010-11-30 Buyerleverage Buyer-driven targeting of purchasing entities
US6393436B1 (en) 2001-01-05 2002-05-21 Jv Export Trading Company, Inc. Method for commercializing goods and services over a global digital network
US7089237B2 (en) * 2001-01-26 2006-08-08 Google, Inc. Interface and system for providing persistent contextual relevance for commerce activities in a networked environment
US7013289B2 (en) 2001-02-21 2006-03-14 Michel Horn Global electronic commerce system
US6530880B2 (en) 2001-03-29 2003-03-11 Endius Incorporated Apparatus for supporting an endoscope
US7398271B1 (en) * 2001-04-16 2008-07-08 Yahoo! Inc. Using network traffic logs for search enhancement
US7013263B1 (en) * 2001-10-25 2006-03-14 Mindfabric, Inc. Online interaction processing
US6950807B2 (en) 2001-12-31 2005-09-27 Credit Acceptance Corporation System and method for providing financing
US7356836B2 (en) * 2002-06-28 2008-04-08 Microsoft Corporation User controls for a computer
GB0314782D0 (en) * 2003-06-25 2003-07-30 Ibm A searchable personal browsing history
US20050076003A1 (en) * 2003-10-06 2005-04-07 Dubose Paul A. Method and apparatus for delivering personalized search results
WO2005103929A1 (en) * 2004-04-20 2005-11-03 Pluck Corporation Method, system, and computer program product for sharing information within a global computer network
US8041701B2 (en) * 2004-05-04 2011-10-18 DG FastChannel, Inc Enhanced graphical interfaces for displaying visual data
WO2006023765A2 (en) * 2004-08-19 2006-03-02 Claria, Corporation Method and apparatus for responding to end-user request for information
US20060047643A1 (en) * 2004-08-31 2006-03-02 Chirag Chaman Method and system for a personalized search engine
US20060129533A1 (en) * 2004-12-15 2006-06-15 Xerox Corporation Personalized web search method
US7694212B2 (en) * 2005-03-31 2010-04-06 Google Inc. Systems and methods for providing a graphical display of search activity
US8438499B2 (en) * 2005-05-03 2013-05-07 Mcafee, Inc. Indicating website reputations during user interactions
US8832100B2 (en) * 2005-09-14 2014-09-09 Millennial Media, Inc. User transaction history influenced search results
US8613024B2 (en) * 2005-12-13 2013-12-17 United Video Properties, Inc. Cross-platform predictive popularity ratings for use in interactive television applications
US7599918B2 (en) * 2005-12-29 2009-10-06 Microsoft Corporation Dynamic search with implicit user intention mining
US20070250514A1 (en) * 2006-04-25 2007-10-25 Saeed Rajput Browsing and monitoring the web through learning and ingemination
US8423565B2 (en) * 2006-12-21 2013-04-16 Digital Doors, Inc. Information life cycle search engine and method
US20080222132A1 (en) * 2007-03-07 2008-09-11 Jiangyi Pan Personalized shopping recommendation based on search units
US7827170B1 (en) * 2007-03-13 2010-11-02 Google Inc. Systems and methods for demoting personalized search results based on personal information
US7774339B2 (en) * 2007-06-11 2010-08-10 Microsoft Corporation Using search trails to provide enhanced search interaction
US20090164929A1 (en) * 2007-12-20 2009-06-25 Microsoft Corporation Customizing Search Results
US7941535B2 (en) * 2008-05-07 2011-05-10 Doug Sherrets System for targeting third party content to users based on social networks
US8250054B2 (en) * 2008-05-13 2012-08-21 Enpulz, L.L.C. Network search engine utilizing client browser favorites
US8364659B2 (en) * 2008-05-14 2013-01-29 Enpulz, L.L.C. Network server employing client favorites information and profiling
US8595228B1 (en) * 2009-01-09 2013-11-26 Google Inc. Preferred sites
US20110113100A1 (en) * 2009-03-21 2011-05-12 Mpanion, Inc. System for sharing favorites and enabling in-network local search based on network rankings

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040034502A1 (en) * 2001-03-21 2004-02-19 Changmo Jung Method for measuring time of accessing a web site through the internet and recording media for storing a program thereof
US20020164047A1 (en) * 2001-05-02 2002-11-07 Yuval Gideon A. Software anti-piracy systems and methods utilizing certificates with digital content
US20030208687A1 (en) * 2002-05-06 2003-11-06 Trend Micro Incorporated Antivirus stand-alone network or internet appliance and methods therefor
US20100293057A1 (en) * 2003-09-30 2010-11-18 Haveliwala Taher H Targeted advertisements based on user profiles and page profile
US20060218146A1 (en) * 2005-03-28 2006-09-28 Elan Bitan Interactive user-controlled relevance ranking of retrieved information in an information search system
US20070067392A1 (en) * 2005-08-25 2007-03-22 Microsoft Corporation Networking through electronic messaging and mail
US20070043667A1 (en) * 2005-09-08 2007-02-22 Bahman Qawami Method for secure storage and delivery of media content
US20070101298A1 (en) * 2005-10-28 2007-05-03 Microsoft Corporation Layout and management of browser panes
US20090030755A1 (en) * 2007-07-25 2009-01-29 Utbk, Inc. Systems and Methods to Dynamically Generate Listings to Selectively Track User Responses
US20090204599A1 (en) * 2008-02-13 2009-08-13 Microsoft Corporation Using related users data to enhance web search

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104598508A (en) * 2013-09-18 2015-05-06 Ims保健公司 System and method for fast query response
US10762151B2 (en) 2016-09-08 2020-09-01 Guangzhou Ucweb Computer Technology Co., Ltd. Method and device for recommending content to browser of terminal device and method and device for displaying content on browser of terminal device

Also Published As

Publication number Publication date
US20130046750A1 (en) 2013-02-21
US20120254147A1 (en) 2012-10-04
US20130060747A1 (en) 2013-03-07
US8666965B2 (en) 2014-03-04
US8229911B2 (en) 2012-07-24
US20090287657A1 (en) 2009-11-19

Similar Documents

Publication Publication Date Title
US8666965B2 (en) Web search with visited web page search result restrictions
US8364659B2 (en) Network server employing client favorites information and profiling
US8250054B2 (en) Network search engine utilizing client browser favorites
US11023926B2 (en) Computerized system and method for advanced advertising
US7668808B2 (en) System for modifying queries before presentation to a sponsored search generator or other matching system where modifications improve coverage without a corresponding reduction in relevance
US8180769B2 (en) Content-management system for user behavior targeting
US8020106B2 (en) Integration of personalized portals with web content syndication
US20130046749A1 (en) Image search infrastructure supporting user feedback
US7904442B2 (en) Method and apparatus for facilitating a collaborative search procedure
US20090287684A1 (en) Historical internet
US20090282023A1 (en) Search engine using prior search terms, results and prior interaction to construct current search term results
US20090006388A1 (en) Search result ranking
US20040186775A1 (en) Systems and methods for providing an improved toolbar
US20070276810A1 (en) Search Engine for Presenting User-Editable Search Listings and Ranking Search Results Based on the Same
KR20030040075A (en) System and method allowing advertisers to manage search listings in a pay for placement search system using grouping
JP2010113542A (en) Information provision system, information processing apparatus and program for the information processing apparatus
WO2001055909A1 (en) System and method for bookmark management and analysis
JP2002056306A (en) System and method for e-commerce transaction by evaluating economical purchasing value for user on advertiser
US20130212126A1 (en) Method and Apparatus for Conducting a Search

Legal Events

Date Code Title Description
AS Assignment

Owner name: ENPULZ, L.L.C., ILLINOIS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BENNETT, JAMES D.;REEL/FRAME:030829/0050

Effective date: 20111006

AS Assignment

Owner name: RPX CORPORATION, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ENPULZ, LLC;REEL/FRAME:036714/0640

Effective date: 20150923

AS Assignment

Owner name: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT, IL

Free format text: SECURITY AGREEMENT;ASSIGNORS:RPX CORPORATION;RPX CLEARINGHOUSE LLC;REEL/FRAME:038041/0001

Effective date: 20160226

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: RPX CORPORATION, CALIFORNIA

Free format text: RELEASE (REEL 038041 / FRAME 0001);ASSIGNOR:JPMORGAN CHASE BANK, N.A.;REEL/FRAME:044970/0030

Effective date: 20171222

Owner name: RPX CLEARINGHOUSE LLC, CALIFORNIA

Free format text: RELEASE (REEL 038041 / FRAME 0001);ASSIGNOR:JPMORGAN CHASE BANK, N.A.;REEL/FRAME:044970/0030

Effective date: 20171222

AS Assignment

Owner name: RPX CORPORATION, CALIFORNIA

Free format text: RELEASE OF LIEN ON PATENTS;ASSIGNOR:JEFFERIES FINANCE LLC, AS COLLATERAL AGENT;REEL/FRAME:052200/0821

Effective date: 20200319

AS Assignment

Owner name: PAYPAL, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:RPX CORPORATION;REEL/FRAME:053019/0017

Effective date: 20200325