# Patent

## Title
Enhanced favorites service for web browsers and web applications

## Abstract

The invention provides two enhancements for the use of favorites during a Web browsing session. A first enhancement identifies when a user is adding a favorite to his favorites list and auto-suggests a category under which the favorite could be stored. A second enhancement allows a user to review his favorites list and see a summary of feed content (RSS or other standard) on each feed enabled page on his favorites list, without requiring the user to link to the page in question.

## Background
BACKGROUND OF THE INVENTION
1. Technical Field
The invention relates to management and viewing of “favorites” or “bookmarks”. More particularly, the invention relates to an enhanced favorites service built in to a Web browser as well as available from a web site, accessible from any web browser.
2. Description of the Prior Art
Web browsing has evolved into a sophisticated information management process. Web browsing sessions produce much information that the user may wish to access at a later time. Currently, users save Web pages of interest as “favorites”. Each favorite is manually cached by the user in one of several subject matter relevant folders. This process is both inefficient and inexact. The user must make a decision based on imperfect information, i.e. the user may not have fully reviewed the content of the page that is being added to his favorites list, and thus places the page in the wrong category. The later retrieval of such favorite information may be hampered by such wrong categorization.
It would be advantageous to provide an automatic and consistent approach to organizing favorites.
Further, many such favorites have feeds (conforming to RSS or other standards) associated with them. RSS (Really Simple Syndication) is a format for syndicating news and the content of news-like sites, including major news sites such as Wired, news-oriented community sites such as Slashdot, and personal web logs. Once information about each item is in RSS format, an RSS-aware program can check the feed for changes and react to the changes in an appropriate way (see http://www.xml.com/pub/a/2002/12/18/dive-into-xml.html). Currently, Web pages that have associated RSS feeds provide a list of RSS items when the page is linked to. Modern browsers, such as Safari (Apple Corp, Cupertino, Calif.) provide an icon that indicates that such pages contain RSS content. Such browsers also indicate the presence of new RSS content in a favorites list with an indicium, such as an icon or numeric indication. Unfortunately, there is no way for a user to review a favorites list and determine if any of the information on the linked page is of interest, except to follow the link to the page in question and review the information at the page itself. Because much of the RSS information is duplicated over many Websites, a user invariably wastes time reviewing information he has already seen.
It would therefore be advantageous to provide a mechanism that allowed a user to review RSS content without having to link to the page which provides such content.
SUMMARY OF THE INVENTION
The invention provides two enhancements for the use of favorites during a Web browsing session. A first enhancement identifies when a user is adding a favorite to his favorites list and auto-suggests a folder under which the favorite could be stored. A second enhancement allows a user to review his favorites list and see a summary of feed content (RSS or other format) automatically displayed in-line with each feed enabled web site in his favorites list, without requiring him to explicitly to link to the feed URL in question.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a screen shot showing RSS integration in a collapsed view according to the invention;
FIG. 2 is a screen shot showing RSS integration in an expanded view according to the invention;
FIG. 3 is a screen shot showing an RSS hover state according to the invention;
FIG. 4 shows an add favorite form according to the invention;
FIG. 5 is a screen shot showing folder suggestions according to the invention;
FIG. 6 is a screen shot showing a folder pull-down menu according to the invention; and
FIG. 7 is a block schematic diagram showing a preferred enhanced favorites system architecture.



DETAILED DESCRIPTION OF THE INVENTION
The invention provides two enhancements for the use of favorites during a Web browsing session. A first enhancement identifies when a user is adding a favorite to his favorites list and auto-suggests a folder under which the favorite could be stored. A second enhancement allows a user to review his favorites list and see a summary of feed content (RSS or other format) automatically displayed in-line with each feed enabled web site in his favorites list, without requiring him to explicitly to link to the feed URL in question.
In the presently preferred embodiment, when a user is engaged in a Web browsing session with a browser such as Safari or Firefox, the user may bookmark a Web page of interest for later retrieval and review. The bookmark, also referred to as a favorite, is sent to a host for storage and also sent to a metadata server. The metadata server performs a lookup of the URL and/or other information associated with the bookmarked page for category information and/or for RSS information. The browser, i.e. the user client, can also retrieve relevant information from the Web page. The metadata server makes associations and returns these to the user.
In the case of an RSS feed associated with a bookmarked page, the application (web browser or web application) shows an icon relative to the bookmark. Clicking on the icon retrieves the most recent “headlines” for the feed. The client application periodically checks for new headlines. When the user selects a list of bookmarks, each bookmark in the list that has an associated RSS feed, displays the headlines corresponding to the most recent headlines for the in-line with the bookmark list. In the presently preferred embodiment, the five most recent headlines are shown for each RSS enabled Web page in the list. The actual number of headlines, amount of text presented, and update frequency may be set to default values or they may be set by the user in a preference pane. Additionally, a refresh button may be provided.
In the case of automatically organizing bookmarks as they are acquired, The URL and/or other relevant information of a page being bookmarked is referenced by the metadata server to a hierarchical classification scheme, such as that of the Open Directory Project (http://www.dmoz.org). A folder suggestion is returned to the user that identifies a most likely folder for saving the bookmark. The user may select the suggested folder, or he may save the bookmark in any other folder, or create a new folder.
The following discussion details a presently preferred implementation of the invention.
Feed Integration
Functions. When a new favorite is added, part of the process in the background is finding an associated feed (RSS/Atom or other format). If a feed can be found (with associated headlines), a feeds icon, shown in FIG. 1 as “RSS”, is displayed to the right of the favorite. Additionally, another tree control appears next to the favorite icon. Finally, an additional feature is to display a feeds/new feeds differentiation integrated in the folder icon, in case all folders are closed when new feeds are fetched. This applies to all parent folders of URLs with feeds. The new feed status shows if there are one or more new feeds contained anywhere in the folder or enclosed folders.
Interaction. Clicking on the title of the favorite takes the user to the favorite place. However, clicking on the “RSS” icon on the right, or expanding the new tree control accesses additional features.
FIG. 2 shows RSS integration in an expanded view according to the invention. Once the tree control for the favorite is expanded, it displays the top five headlines, ordered by descending date, of the associated feed. Because screen space is at a premium, the preferred embodiment only displays the first few characters of the headline, and truncates it after that. Clicking on any of the headlines takes the browser to the link associated in the feed. Note that an icon 22, i.e. a “sun”, indicates that new articles are present.
Those skilled in the art will appreciate that any number of headlines may be displayed and that such headlines may be displayed in any order. Additionally, a user preference dialog may be provided to allow the user to select such parameters as number of headlines displayed, order of display, and number of characters to display, for example.
FIG. 3 is a screen shot showing an RSS hover state according to the invention. To give the user some notification that a feed has been updated, the icon showing that a favorite has a feed preferably has two states. The default state and an updated state, which is shown if a feed has, been updated in the last hour in this example. Note that for accessibility reasons, contrast should be more important than color as a change indicator for this icon. Hovering over the new feeds icon shows the number of new feeds. No hover state is provided for normal state “RSS” icon, i.e. there are no new feeds.
Add Favorite
Add Favorite Window. FIG. 4 shows an Add Favorite form according to the invention. When the user clicks the “Add” button, or selects “Add Favorite . . . ” from the favorites menu, the Add Favorite flow begins.
Add Favorite form Functions. The user first selects one of the radio button options. “Select a Folder” is the default option. If the user has the “Suggest folder names” feature turned on, there is an initial delay with progress feedback while the browser retrieves that information. During this time, the folder pull-down menu is disabled, and an animated loading label is displayed. Also, note that the save button is disabled during this interaction. In the case that the user has turned off the folder suggestion, all of this goes away, and a folder pull-down menu is provided. If this option is turned off, such state is stored in the user preferences. Completion of the Add Favorite flow results in the display of an updated panel showing the favorite at the bottom of either the root of the list, or the bottom of the items inside a folder if a folder was selected prior to adding.
Folder Suggestion
Folder Suggestion. FIG. 5 is a screen shot showing folder suggestions according to the invention. In the event that a suggested folder is found for the new favorite, the pull-down defaults to that folder. FIG. 5 shows the folder with the name boldfaced, and a special icon to denote that it is a suggested folder.
Folder Pull-down Menu. FIG. 6 is a screen shot showing a folder pull-down menu according to the invention. The folder's pull-down menu is straight forward. Preferably, the menu shows folder icons, and uses indention to represent hierarchy.
Architecture
FIG. 7 is a block schematic diagram showing a preferred enhanced favorites system architecture. The following is a discussion of each of the items shown in FIG. 7.
Web Browser: The web browser 71 stores the users' favorites, locally via a local storage service 72 and updates them as needed from the host.
Some information about the network connections:

    a. The web browser gets and sets favorites information by issuing XML over HTTP commands to the UI server 73. On startup, the web browser issues a get request with the current version it has. If the version cached in the local store is older, the full set of favorites is downloaded from the UI server.
    b. When a user adds a URL to his list of favorites, the web browser issues a request to the UI server to retrieve the associated feed URL and suggested folder name. When the user chooses a folder, the web browser then sends the URL, feed URL, title, and folder name to the host (server) for permanent storage.
    c. When displaying favorites to the user, the web browser may fetch RSS feed 74 associated with favorites via the Headline server 75, taking advantage of the caching the latter performs.
    2. Web Application: The Web application 76, is the UI vehicle for “enhanced favorites” outside of the web browser when the user uses any other web browser. It connects to the UI server via HTTP, and receives from it DHTML content. It receives RSS feed content when requested from the Headline server.
    3. UI Server: The UI server is both a data aggregator and a presentation layer for clients.


Some information about the UI Server network connections:

    a. Serves up UI and favorites metadata as DHTML to Web browsers. Receives requests from browsers to retrieve as well as to make changes to favorites using HTTP.
    b. Serves up Favorite data and performs add/delete/modify operations for web browsers using XML over HTTP.
    c. Serves up metadata to web browsers using XML over HTTP. To get the folder suggestion and feeds for favorites submitted it issues requests to the metadata server 77. This server analyzes the favorite URL and matches it with its internal database to come up with associated feeds and a taxonomy path. It then uses mapping rules to transform the taxonomy path into a folder suggestion. It then returns the feeds and suggested folders, which is what the client is interested in.
    d. For authentication, the preferred UI server relies on the AOL standard authentication infrastructure.
    4. Headline Server: The headline server serves RSS feed content (headlines and article summaries) to Web browsers or AOL Explorer clients upon request via HTTP. It isolates the web browsers from different RSS protocols by normalizing feeds to one particular RSS format. Additionally, the server provides two interfaces, XML and DHTML, which allow simple access to feeds and headlines from almost any development platform. The headline server also allows for improved client performance by caching popular feeds and headlines and by using an HTTP connection pool to retrieve feeds from their source.
    5. Enhanced Favorites Cache Complex: This element 78 caches user's favorites to reduce the load on the databases and offer a better experience for web users. The system handles requests from the UI server to add/delete/modify users' data and stores it in the DB 79 for persistence.
    6. URL Metadata Server: This service can accept a request containing a URL or a set of URLs and return data about that URL or set of URLs. The kinds of data that can be returned include folder suggestions and associated feeds . Incoming query requests come from the UI server in the form of XML over HTTP.
    7. Database: The database stores the users' favorites and associated information. The data is accessed by the Cache Complex.
    8. RSS: This represents HTTP servers that can provide RSS and Atom feeds. These feeds might be offered by a service such as AOL or by other feed providers.


Although the invention is described herein with reference to the preferred embodiment, one skilled in the art will readily appreciate that other applications may be substituted for those set forth herein without departing from the spirit and scope of the present invention. Accordingly, the invention should only be limited by the Claims included below.

## Claims

1. A computer implemented method of saving links to web pages, the method comprising the following operations performed by at least one processor:
while a client machine is presenting a web page to a user, responding to a user request to store a link to the presented web page in a user-traversable favorites hierarchy by:
consulting at least one machine-readable database to obtain a taxonomy path for the presented web site;
using mapping rules to transform the taxonomy path into a storage suggestion including a suggested folder name or a suggested location in the favorites hierarchy or both; and
one of presenting the storage suggestion to the user or automatically storing the link in the favorites hierarchy utilizing the suggested folder name or suggested location or both.

2. The method of claim 1, wherein the at least one processor exists on the client machine, the steps are performed by a web browser on the client machine, and the hierarchy is stored on the client machine.

3. The method of claim 1, wherein the at least one processor exists at an online search provider and the hierarchy is stored at the online search provider.

4. A system for saving links to web pages, comprising:
at least one memory device storing a set of instructions; and
at least one processor that executes the set of instructions and is configured to respond to a user request to store a link to a web page presented at a client machine in a user-traversable favorites hierarchy by performing the steps of:
consulting at least one machine-readable database to obtain a taxonomy path for the web page;
using mapping rules to transform the taxonomy path into a storage suggestion including a suggested folder name or a suggested location in the favorites hierarchy or both; and
one of presenting the storage suggestion to the user or automatically storing the link in the favorites hierarchy utilizing the suggested folder name or suggested location or both.

5. The system of claim 4, wherein the at least one processor exists on the client machine, the steps are performed by a web browser on the client machine, and the hierarchy is stored on the client machine.

6. The system of claim 4, wherein the at least one processor exists at an online search provider and the hierarchy is stored at the online search provider.

7. A non-transitory computer readable medium storing instructions that, when executed by at least one processor, configures the at least one processor to perform a method for responding to a user request to store a link to a web page presented at a client machine in a user-traversable favorites hierarchy, the method comprising:
consulting at least one machine-readable database to obtain a taxonomy path for the web page;
using mapping rules to transform the taxonomy path into a storage
suggestion including a suggested folder name or a suggested location in the favorites hierarchy or both; and
one of presenting the storage suggestion to the user or automatically storing the link in the favorites hierarchy utilizing the suggested folder name or suggested location or both.