Patent Publication Number: US-7912756-B2

Title: Method and system for electronic commerce using multiple roles

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation of U.S. patent application Ser. No. 10/212,367 filed Aug. 5, 2002 which is a continuation of U.S. patent application Ser. No. 09/104,942 filed Jun. 25, 1998 (now U.S. Pat. No. 6,629,079 issued Sep. 30, 2003). 
    
    
     TECHNICAL FIELD 
     The present invention relates to a computer method and system of electronic commerce and, more particularly, to a method and system for selecting items to order using a “shopping cart” model. 
     BACKGROUND OF THE INVENTION 
     The Internet is increasingly being used to conduct “electronic commerce,” because it comprises a vast number of computers and computer networks that are interconnected through communication links which facilitates electronic communications between vendors and purchasers. Electronic commerce refers generally to commercial transactions that are at least partially conducted using the computer systems of the parties to the transactions. For example, a purchaser can use a personal computer to connect via the Internet to a vendor&#39;s computer. The purchaser can then interact with the vendor&#39;s computer to conduct the transaction. Although many of the commercial transactions that are performed today could be performed via electronic commerce, the acceptance and wide-spread use of electronic commerce depends, in large part, upon the ease-of-use of conducting such electronic commerce. If electronic commerce can be easily conducted, then even the novice computer user will choose to use electronic commerce. Therefore, it is important that techniques be developed to facilitate conducting electronic commerce. 
     The Internet provides a network that facilitates conducting electronic commerce because it uses standardized techniques for exchanging information. 
     Many standards have been established for exchanging information over the Internet, such as electronic mail, Gopher, and the World Wide Web (“WWW”). The WWW service allows a server computer system (i.e., Web server or Web site) to send graphical Web pages of information to a remote client computer system. The remote client computer system can then display the Web pages. Each resource (e.g., computer or Web page) of the WWW is uniquely identifiable by a Uniform Resource Locator (“URL”). To view a specific Web page, a client computer system specifies the URL for that Web page in a request (e.g., a HyperText Transfer Protocol (“HTTP”) request). The request is forwarded to the Web server that supports that Web page. When that Web server receives the request, it sends that Web page to the client computer system. When the client computer system receives that Web page, it typically displays the Web page using a browser. A browser is typically a special-purpose application program that effects the requesting of Web pages and the displaying of Web pages. 
     Currently, Web pages are generally defined using HyperText Markup Language (“HTML”). HTML provides a standard set of tags that define how a Web page is to be displayed. When a user indicates to the browser to display a Web page, the browser sends a request to the server computer system to transfer to the client computer system an HTML document that defines the Web page. When the requested HTML document is received by the client computer system, the browser displays the Web page as defined by the HTML document. The HTML document contains various tags that control the displaying of text, graphics, controls, and other features. The HTML document may contain URLs of other Web pages available on that server computer system or other server computer systems. 
     The World Wide Web portion of the Internet is especially conducive to conducting electronic commerce. Many Web servers have been developed through which vendors can advertise and sell product. The products can include items (e.g., music) that are delivered electronically to the purchaser over the Internet and items (e.g., books) that are delivered through conventional distribution channels (e.g., a common carrier). A server computer system may provide an electronic version of a catalog that lists the items that are available. A user, who is a potential purchaser, may browse through the catalog using a browser and select various items that are to be purchased. When the user has completed selecting the items to be purchased, the server computer system then prompts the user for information to complete the ordering of the items. This purchaser-specific order information may include the purchaser&#39;s name, the purchaser&#39;s credit card number, and a shipping address for the order. The server computer system then typically confirms the order by sending a confirming Web page to the client computer system and schedules shipment of the items. 
     The selection from the electronic catalogs of items to be purchased is generally based on a “shopping cart” or “shopping basket” model. When the purchaser selects an item, the server computer system metaphorically adds that item to a shopping cart. The server computer system provides Web pages that allow the purchaser to view and change the quantities of the items in the shopping cart. When the purchaser is satisfied with the items in the shopping cart, the purchaser “checks out” the items that are in the shopping cart. The purchaser may provide billing and shipment information as part of “check out” process. When check out is complete, the items are then shipped in accordance with the shipment information, and the purchaser is billed in accordance with the billing information. 
     Although the shopping cart model facilitates the purchasing of items via electronic commerce, purchasing items via electronic commerce can still be cumbersome. First, a single purchaser may use different billing and shipment information at different times. For example, when purchasing items for use in the workplace, the purchaser may use a company credit card and the company&#39;s shipping address. In contrast, when purchasing items for personal use, the purchaser may use a personal credit card and a home address for shipping. It may be cumbersome to re-enter such information or re-select such information when the purchaser is purchasing for workplace or home use. Second, server computer systems may customize recommendations for items to purchase based on the purchasing or, more generally, access patterns of a user. For example, if a user generally purchases books relating to current politics, then when the user next connects to the server computer system, it may recommend that the user purchase a recently released book on current politics. However, if the purchaser purchases different types of items at work from the types of items purchased at home, then the server computer system may make inappropriate recommendations at certain times. For example, the server computer system may recommend a book on current politics when the user is at work looking for books on computer software. 
     SUMMARY OF THE INVENTION 
     Embodiments of the present invention provide a method and system for conducting electronic commerce with multiple electronic commerce contexts and more generally for interacting with a computer system with multiple interaction contexts. The electronic commerce system embodiment provides multiple electronic commerce contexts (e.g., “shopping carts”) for each user. Each electronic commerce context has associated information relating to electronic commerce conducted while the user was in that electronic commerce context. The electronic commerce system receives from the user a selection of one of the electronic commerce contexts. After receiving the selection of the one of the electronic commerce contexts, the electronic commerce system conducts electronic commerce with the user. The electronic commerce system associates, with the selected electronic commerce context, information relating to the electronic commerce conducted with the user so that when the user subsequently selects that electronic commerce context, the associated information is available for conducting subsequent electronic commerce. In this way, a user can use various electronic commerce contexts without having to re-specify information (e.g., billing information) relating to the various electronic commerce contexts. 
     In one embodiment, the electronic commerce system uses a multiple shopping cart model for each user conducting electronic commerce. Each shopping cart is intended to be used when a user is purchasing items in a different “role” or different electronic commerce context. For example, one shopping cart can be used when the user is acting in a workplace role purchasing items for work, and another shopping cart can be used when the user is acting in a personal role purchasing items for personal use. The electronic commerce system allows the user to select the shopping cart that is appropriate for the user&#39;s current role. As the user selects items to be purchased, the electronic commerce system adds the items to the currently selected shopping cart. Each shopping cart has associated with it information that is related to the role that the user is in when the shopping cart is used. This information may include billing and shipment information. In this way, when a user conducts electronic commerce in different roles, the user can select the shopping cart that already has the appropriate billing and shipment information. In addition, the electronic commerce system can track the electronic commerce activity of the user in each separate role (i.e., each shopping cart) and customize advertising and recommendations based on activity performed while the user was in that role. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a diagram of the display illustrating the use of a shopping cart for each electronic commerce context. 
         FIG. 2  is a diagram illustrating the display of shopping cart information. 
         FIG. 3  is a diagram illustrating the display after a user has modified information relating to some of the shopping carts. 
         FIG. 4  is a block diagram illustrating an embodiment of the present invention. 
         FIG. 5  is a block diagram illustrating a sample data structure for storing electronic commerce context (“ECC”) profile information. 
         FIG. 6  is a flow diagram of a routine that processes the selection of the new electronic commerce context. 
         FIG. 7  is a flow diagram of a routine that generates a display for the current context. 
         FIG. 8  is a flow diagram of a routine that adds an item to the shopping cart for the currently selected context. 
         FIG. 9  is a flow diagram of a routine that processes a request to view electronic commerce context (“ECC”) profile information for a context. 
         FIG. 10  is a flow diagram of a routine for updating electronic commerce context (“ECC”) profile information. 
         FIG. 11  is a flow diagram of a routine that stores information on the activities of a user. 
     
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     An embodiment of the present invention provides a method and system that uses a multiple shopping cart model for each user conducting electronic commerce. Each shopping cart is intended to be used when a user is purchasing items in a different “role.” For example, one shopping cart can be used when the user is acting in a workplace role purchasing items for work, and another shopping cart can be used when the user is acting in a personal role purchasing items for personal use. The system of the present invention allows the user to select the shopping cart that is appropriate for the user&#39;s current role. As the user selects items to be purchased, the system adds the items to the currently selected shopping cart. Each shopping cart has associated with it information that is related to the role that the user is in when the shopping cart is used. This information may include billing and shipment information. When a user conducts electronic commerce in different roles, the user can select the shopping cart that already has the appropriate billing and shipment information. In this way, the user can avoid having to re-specify billing and shipping information that is unique to a certain role. In addition, the system can track the electronic commerce activity of the user in each separate role (i.e., each shopping cart) and customize advertising and recommendations based on activity performed while the user was in that role. 
     In one embodiment, the system of the present invention provides a shopping cart selection navigation bar that allows the user to switch between shopping carts using a single action (e.g., a mouse click). The use of single-action switching between shopping carts greatly facilitates conducting the electronic commerce. The selection navigation bar has an area associated with each shopping cart. In one embodiment, the system displays the shopping cart selection navigation bar at the top of various displays (e.g., Web pages), such as a display that describes an item that can be purchased. By performing the single action, the user can quickly switch between separate shopping carts. When the user indicates to add an item to a shopping cart, the system adds the item to the currently selected shopping cart. A user may use the shopping cart selection navigation bar to conveniently place an item in multiple shopping carts. For example, if the user is purchasing items for, say, five relatives, then the user can set up one shopping cart for each relative. In such an example, each shopping cart will have shipment information for one of the relatives. When the selection navigation bar is displayed along with a description of an item, the user can select a shopping cart and then add the item to that shopping cart. The user can then select the next shopping cart and add the item to that shopping cart. This process of selecting and adding can be performed for each shopping cart. In this way, items can be added to multiple shopping carts with only two actions (e.g., two mouse clicks), that is, one action to select the shopping cart and one action to add the item to the currently selected shopping cart. 
     The system of the present invention also provides a shopping cart viewing navigation bar through which a user can select to view information relating to a certain shopping cart. When a shopping cart is selected from the viewing navigation bar, the system displays information describing the current contents of the selected shopping cart, information describing past orders that were checked out of that shopping cart, context naming information (e.g., suggestive of the role for which the shopping cart is used), and billing and shipment information. The user can then modify the contents of the shopping cart, check out the contents of the shopping cart, or update the information relating to the shopping cart. Alternatively, rather than having a separate viewing navigation bar that lists each shopping cart, a single button can be provided through which the user can view information relating to the currently selected shopping cart. 
     The system of the present invention is referred to as the multiple electronic commerce context system (“MECC” system) (or multiple shopping cart system in one embodiment) because each different role represents a different electronic commerce context in which a user conducts electronic commerce. In one embodiment, the MECC system uses a separate shopping cart for each electronic commerce context. However, one skilled in the art will appreciate that the principles of multiple electronic commercial contexts can be used independent of the shopping cart model. In general, each context can be considered to include an aggregation (e.g., items selected to purchase) and information relating to the aggregation (e.g., billing information). Different metaphors can be used to refer to the aggregations depending on the type of electronic commerce being conducted. For example, if the electronic commerce is the purchasing of books, then the aggregations may be referred to as separate “bookshelves” rather than shopping carts. In another example, the metaphor of “CD bins” may be used when the electronic commerce involves purchasing CDs. The MECC system allows a user to name each electronic commerce context so that the user can easily identify the electronic commerce contexts. For example, the user may name one of the electronic commerce contexts “Johnny&#39;s books,” if the user uses that context to purchase books for Johnny. The MECC system also stores electronic commerce context (“ECC”) profile information for each context. The ECC profile information includes information describing the contents of the shopping cart associated with that context, describing past orders submitted while in that context, and describing past activity electronic commerce activity while in that context. 
       FIG. 1  is a diagram of the display illustrating the use of a shopping cart for each electronic commerce context. The display includes the shopping cart selection navigation bar  101 , item detailed description  102 , selection box  103 , and shopping cart viewing navigation bar  104 . The selection navigation bar contains an area for each of five shopping carts or electronic commerce contexts. Each shopping cart is currently identified by a number between one and five. The shopping cart identified by numbered  2  is currently selected as indicated by shading. The item detailed description contains information describing the item currently selected by the user. This information may include pricing data, availability data, and a general description of the item. The selection box contains an add-to shopping cart button  103   a  and single-action ordering button  103   b . The use of single-action ordering is described in U.S. patent application Ser. No. 08/928,951 entitled “Method and System for Placing a Purchase Order Via a Communications Network,” which is hereby incorporated by reference. The text  103   c  contains shipment information for the currently selected shopping cart as a reminder to the user. The viewing navigation bar contains an area for each shopping cart. Initially, it may be that no shopping carts or only one shopping cart has been defined. In which case, the selection navigation bar may be initially not displayed or displayed with one area. As a user dynamically adds and deletes shopping carts, the selection navigation bar is adjusted accordingly. 
     When a user selects a shopping cart from the selection navigation bar, the selected shopping cart becomes the current shopping cart, which changes the electronic commerce context. The information in the selection box is updated each time a different shopping cart is selected to reflect the currently selected shopping cart. When a user selects the add-to shopping cart button, the currently selected item is added to the currently selected shopping cart. When a user selects the single-action ordering button, an order is automatically placed for the currently selected item. That item is shipped and billed according to the shipment and billing information of the currently selected shopping cart. A user may view and update information relating to a shopping cart by selecting a shopping cart from the viewing navigation bar. Alternatively, the viewing navigation bar may be replaced by a single button that when selected allows the user to view and update information for the currently selected shopping cart. 
       FIG. 2  is a diagram illustrating the display of shopping cart information. The display contains a current order box  201 , the past order box  202 , and a general information box  203 . The current order box contains information relating to items currently in the shopping cart that have not yet been checked out. The shopping cart sub-box  201   a  contains a listing of the items currently in the shopping cart. The user may modify the current order by changing the quantities of the items. The user places the order by selecting the checkout button within the shopping cart sub-box. When the current order is checked out, it becomes a past order and status information is displayed in the past orders box. The single-action pending order sub-box  201   b  contains a list of the items that have been selected using single-action ordering, but have not yet been finalized. Items selected using the single-action ordering technique are automatically finalized after a predetermined time (e.g., 60 minutes). Before that predetermined time has expired, the user may change the order or manually finalize the order using the “finalize now” button in the single-action pending order sub-box. Once the single-action order is checked out, it becomes a past order and status and information is displayed in the past orders box. The general information box contains information pertaining to the shopping cart. In this example, the information includes a user-changeable identifier field, shipping field, and billing field. The user can change the identifier, which defaults to numeric value, to text that is more meaningful to the user. For example, the user may change the identifier to the text “Johnny&#39;s books” if that shopping cart is used by the user to purchase books for Johnny. 
       FIG. 3  is a diagram illustrating the display after a user has modified information relating to some of the shopping carts. In this example, the shopping cart selection navigation bar  301  indicates that the first three shopping carts have the identifiers “work books,” “cookbooks,” and “Johnny&#39;s books,” respectively. The user has not modified the default identifier for shopping carts  4  and  5 . The shopping cart viewing navigation bar  304  also indicates the updated identifiers. The information in the selection box  303  contains information relating to the currently selected shopping cart—“Johnny&#39;s books.” 
       FIG. 4  is a block diagram illustrating an embodiment of the present invention. This embodiment supports electronic commerce with multiple contexts over the Internet using the World Wide Web. The server system  410  includes a server engine  411 , various Web pages  412 , a user database  413 , and the multiple electronic commerce context (“MECC”) system (or multiple shopping cart system in one embodiment). The server engine receives HTTP requests to access Web pages identified by URLs and provides the Web pages to the various client systems. Such an HTTP request may indicate that the purchaser has performed the single action to select a different shopping cart or electronic context. The user database includes purchaser-specific order information such as the name of the user and electronic commerce context (“ECC”) profile information for each electronic commerce context. The MECC system contains various components that perform the functions of multiple electronic commerce context. Various components are described below in detail. The client system  420  contains a browser  421 . The server and client systems interact by exchanging information via communications link  430 , which may include transmission over the Internet. 
     One skilled in the art would appreciate that the multiple electronic commerce context techniques can be used in various environments other than the Internet. For example, the techniques can be used in a single computer system environment rather than in a client/server environment. Also, various communication channels may be used such as local area network, wide area network, or point-to-point dial up connection. Also, a server system may comprise any combination of hardware or software that can support multiple electronic commerce contexts. A client system may comprise any combination of hardware or software that can interact with the server system. These systems may include television-based systems or various other consumer products through which orders may be placed. In general, the client and server system may include a central processing unit, a memory, and storage devices. The multiple electronic commerce context (“MECC”) system may be stored in a computer-readable medium such as memory or a CD-ROM. 
       FIG. 5  is a block diagram illustrating a sample data structure for storing electronic commerce context (“ECC”) profile information. One skilled in the art will appreciate that the many different organizations of data structures could be used. The sample data structure of  FIG. 5  contains a user table  501 , a context mapping table  502 , and a context table  503 . In this example, user table  501  contains an entry for each user. Each entry contains a user ID and information describing the user (e.g., user name and email address). For example, one entry represents the user with the user ID of “JSmith.” The context mapping table  502  contains an entry for each context for each user. Each entry contains a user ID and a context ID. For example, the user with the user ID of “JSmith” has two contexts identified by context IDs “204” and “220.” The context table  503  contains an entry for each context. Each entry contains the context ID and information describing the context (e.g., context name, and billing information). For example, the context identified by the context ID of “204” has the context name of “Johnny&#39;s.” The tables of this sample data structure may contain many more columns of information. For example, the user table may also contain the address of the user. The multiple electronic commerce context (“MECC”) system may access ECC profile information for a user by using the user&#39;s user ID to determine the context ID of the user&#39;s current context from the context mapping table. The MECC system may then use the retrieved context ID to retrieve the context information for the context table. The sample data structure may also contain activity information describing electronic commerce activity conducted while a user is in each electronic commerce context. This activity information may track items added to a shopping basket, banner advertisements selected, and Web sites visited when in that electronic commerce context. The activity information may be collected by logging and tagging the activity with the current electronic commerce context. The MECC system can then use this collected activity information to, for example, customize advertising or recommendations while the user is in a certain electronic commerce context. 
       FIGS. 6-11  illustrate one embodiment of various components of the multiple electronic commercial context (“MECC”) system in the WWW environment.  FIG. 6  is a flow diagram of a routine that processes the selection of the new electronic commerce context. In one embodiment, when a user selects a new context from a shopping cart selection navigation bar, a URL is sent to the server computer system. That URL contains information identifying the new context. This routine performs the processing to switch the electronic commerce context and generate the appropriate displays. In step  601 , the routine retrieves the context ID (or other identifying information) from the URL received from the client. In step  602 , the routine sets the current context ID for the user. In step  603 , the routine generates a display (e.g., and HTML document) for the current context. The generation of the display is described in detail in  FIG. 7 . In step  604 , the routine sends the generated display to the user&#39;s client system. The routine then completes. 
       FIG. 7  is a flow diagram of a routine that generates a display for the current context. This routine retrieves the electronic commerce context (“ECC”) profile information for the current context ID and generates the display accordingly. In this embodiment, the generated display is described in a HTML document. In step  701 , the routine retrieves the current context ID for the user. In step  702 , the routine retrieves the ECC profile information for the retrieved context ID. In step  703 , the routine generates a context selection navigation bar (e.g., the shopping cart selection navigation bar) that identifies each of the contexts for the user. In step  704 , the routine highlights the current context on the generated selection navigation bar. In step  705 , the routine generates the selection box in accordance with the ECC profile information for the current context ID. In step  706 , the routine generates the context viewing navigation bar (e.g., shopping cart viewing navigation bar) based on the retrieved ECC profile information. The routine then returns. 
       FIG. 8  is a flow diagram of a routine that adds an item to the shopping cart for the currently selected context. This routine is invoked when a user selects the add-to shopping cart button. In step  801 , the routine retrieves the current context ID for the user. In step  802 , the routine retrieves the electronic commerce context (“ECC”) profile information for the current context ID. In step  803 , the routine adds the item to the shopping cart for the current context ID within the retrieved ECC profile information. In step  804 , the routine updates the ECC profile information for the current context ID in the user database. The routine then completes. 
       FIG. 9  is a flow diagram of a routine that processes a request to view electronic commerce context (“ECC”) profile information for a context. This routine is invoked when a user selects the context viewing navigation bar. In step  901 , the routine retrieves the context ID (or other identifying information such as user ID and session ID) from the URL associated with the selected portion of the viewing navigation bar. In step  902 , the routine retrieves the ECC profile information for the retrieved context ID. In step  903 , the routine generates a display for the retrieved ECC profile information. In step  904 , the routine sends the generated display for the user&#39;s client computer system. The routine then completes. 
       FIG. 10  is a flow diagram of a routine for updating electronic commerce context (“ECC”) profile information. This routine is invoked when a user indicates to change any of the ECC profile information. For example, this routine is invoked when a user changes shipping information or the identifier on a context. In step  1001 , the routine retrieves the context ID from the URL. Alternatively, the context ID can be retrieved from a mapping of a certain key (e.g., ID or user ID) to context ID. In step  1002 , the routine retrieves the ECC profile information for the retrieved context ID. In step  1003 , the routine changes the ECC profile information. In step  1004 , the routine updates the ECC profile information for the retrieved context ID in the user database. The routine then completes. 
       FIG. 11  is a flow diagram of a routine that stores information on the electronic commerce activity of a user. The multiple electronic commerce context (“MECC”) system may track various user activity that occurs while in each context. For example, the MECC system may track items that the user viewed, items that the user purchased, or links that the user assessed while in a context. In step  1101 , the routine retrieves the current context ID for the user. In step  1102 , the routine categorizes the electronic commercial activity (e.g., “viewing” or “selecting” an item). In step  1103 , the routine retrieves the electronic commerce context (“ECC”) profile information for the current context ID for the categorization. In step  1104 , the routine updates the activity information to the ECC profile information. In step  1105 , the routine updates the ECC profile information for the current context ID. The routine then completes. 
     Another embodiment of the present invention provides a method and system for limiting the scope of the electronic commerce that may be conducted while in an electronic commerce context (“ECC”). For example, if the electronic commerce is the purchasing of video tapes, then the user, when purchasing video tapes for a child, may want to limit displaying of information to only those video tapes with a family-oriented rating (“G”). The multiple electronic commerce context (“MECC”) system limits the scope of electronic commerce by allowing the user to define filters that can be applied to an ECC. For example, the items available to be purchased may have various attributes (e.g., cost, rating, or general categorization such as documentary) associated with them. The MECC system may input from the user a series of filter criteria that specify the values of attributes, such as “rating=G,” that each item must have in order to be within the scope of the electronic commerce conducted within an ECC. Filters may be particularly useful to limit the scope of electronic commerce conducted by a child. Also, filters may be password protected so that, for example, a child does not change the filter. In one embodiment, the MECC system stores the filter criteria along with the profile information for each electronic commerce context. One skilled in the art will appreciate that the filter criteria can be specified using various well-known techniques, such as listing a series of logic conditions for the attributes using logical-ANDs and logical-ORs. The MECC system may alternatively apply the filter criteria only when an item is In selected, rather than when the information for the item is displayed. In this way, the user may view the information for all the available items, but the MECC system would prevent the purchase of items (or at least warn the user) that do not meet the filter criteria. The MECC system may also provide predefined filters that a user may select for an ECC. For example, a filter may be predefined for a “country theme” if the items available to be purchased are video tapes, music CD&#39;s, and clothing. The “country theme” may include the filter criterion “book =western or music=country.” In one embodiment, if the electronic commerce is conducted using a search engine to identify those items that the user may want to purchase, then the filter criteria for the ECC may be automatically applied as part of each search for that ECC. 
     Another embodiment of the present invention provides a method and system for providing multiple interaction contexts for a user interacting with a computer system. Each interaction context has associated information relating to the interaction conducted while the user was in that interaction context. The interaction may be, for example, the conducting of electronic commerce (as described above), the using of a search engine, or the browsing through Web pages. When engaging in such interactions, the user may specify one of the interaction contexts. The system then associates information relating to interaction with the specified interaction context. When a user subsequently engages in interactions while that interaction context is currently specified, the associated information is available to influence the interaction. For example, if the interaction is the use of a search engine, then a user may use one interaction context for home and another interaction context for work. If the user is normally interested in legal documents when at work, then the work interaction context information would relate to legal documents. In contrast, if the user is normally interested in sports documents when at home, then the home interaction context information would relate to sports documents. Thus, when the user inputs a search for the word “court,” the search engine may identify an entirely different set of related documents depending on whether the work or home interaction context is currently selected. 
     From the foregoing it will be appreciated that, although specific embodiments of the invention have been described herein for purposes of illustration, various modifications may be made without deviating from the spirit and scope of the invention. For example, the multiple electronic commerce context (“MECC”) system may provide a facility to “reset” a context to default values or to “copy” a context. That is, if a user needs to change certain context information (e.g., billing and shipment information), the user can indicate to “reset” or “copy” a context. When a context is “reset,” its information may be reset to certain initial values. When a context is “copied.” the information of the context replaces the information of another context. Also, in various embodiments, the shopping cart selection navigation bar can be used for dragging-and-dropping items into the various shopping carts. For example, a user may select an item by depressing a button on a pointing device, then drag the selected item to the selection navigation bar, and drop the item into a shopping cart by releasing the button. When an item is dragged-and-dropped into a shopping cart, the MECC system may also change the currently selected shopping cart to the shopping cart into which the item has been dropped or maintain the current selection of a shopping cart. Also, a shopping cart (or more generally an aggregation) can function as a gift registry. That is, a user can select one or more items to be placed in a shopping cart, and the shopping cart can be provided to other users. The other users can purchase a registered item from the shopping cart using the shipment information of the shopping cart but the other user&#39;s billing information. Once items are purchased, the gift registry is updated accordingly. Also, a user&#39;s electronic commerce context can be provided to other users so that recommendations for gifts for the user based on electronic commerce context profile information can be provided to the other users. The term “user” as used herein refers to any entity that may use a computer system, such as a person, another computer system, or computer program. In addition, the user may operate on behalf of an organization with an account for conducting electronic commerce. Thus, the user ID may be an account ID for the organization or division of the organization. Accordingly, the invention is not limited except as by the appended claims.