Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
PROVIDING AGGREGATE USER-SUPPLIED INFORMATION RELATED TO LOCATIONS ON A MAP
Document Type and Number:
WIPO Patent Application WO/2009/055501
Kind Code:
A1
Abstract:
Techniques are described for automatically obtaining and sharing various types of user-supplied information about entities of interest, such as businesses and/or people. In at least some situations, information about location and other current status of entities of interest is also tracked, and such location-related and other status-related information may also be provided to and used by at least some users. For example, users may be able to request and receive maps of geographical areas, with a variety of types of information displayed on a map about at least some entities of interest whose locations are associated with the map. In addition, a user may designate or otherwise define one or more groups that include other specified users, and may select a current user aggregation group for use in the sharing of user-supplied information, such that only information from users of the current user aggregation group is provided to the user for at least some types of information.

Inventors:
HOLDEN JEFFREY ALAN (US)
VENGROFF DARREN ERIK (US)
SCHOLL NATHANIEL BLAKE (US)
AYARS JEFFREY M (US)
KIM JOHN (US)
Application Number:
PCT/US2008/080833
Publication Date:
April 30, 2009
Filing Date:
October 22, 2008
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
PELAGO INC (US)
HOLDEN JEFFREY ALAN (US)
VENGROFF DARREN ERIK (US)
SCHOLL NATHANIEL BLAKE (US)
AYARS JEFFREY M (US)
KIM JOHN (US)
International Classes:
G06F17/30; G06Q30/00
Foreign References:
KR20060080571A2006-07-10
Other References:
"0", 18 October 2007 (2007-10-18), Retrieved from the Internet
"0", 18 October 2007 (2007-10-18), Retrieved from the Internet
Attorney, Agent or Firm:
WHITE, James, A. D. et al. (Suite 5400701 Fifth Avenu, Seattle Washington, US)
Download PDF:
Claims:
CLAIMS

What is claimed is:

[ci] 1. A computer-implemented method for providing aggregated information from selected groups of users, the method comprising: providing information for display to a first user that corresponds to a geographical location, the provided information including indications of multiple entities whose locations correspond to the geographical location; receiving an indication of a selection by the first user of a group having a plurality of users that are affiliated with the first user in a defined manner, the selected group for use in generating aggregate information; automatically generating aggregate information for one or more of the indicated multiple entities based on the users of the selected group, the generating of the aggregate information including, for each of the one or more entities, retrieving multiple ratings for the entity that were previously supplied by multiple of the users of the selected group and generating an aggregate rating for the entity based on the retrieved multiple ratings; and automatically providing additional information for display to the first user that includes the generated aggregate information for the one or more entities, such that the display of the provided additional information includes displaying indications of the generated aggregated ratings.

[c2] 2. The method of claim 1 wherein the provided information that corresponds to the geographical location is a map that represents a geographical area that includes the geographical location, wherein the locations of at least some of the multiple entities are within the geographical area, wherein the providing of the information for display includes displaying to the first user the map and displaying indications on the map of the locations of the at least some entities, and wherein the providing of the additional information for display includes displaying to the first user an updated map that includes

displayed indications of the generated aggregated ratings for the one or more entities.

[c3] 3. The method of claim 2 further comprising determining the geographical location based on a reported current location of the first user.

[c4] 4. The method of claim 1 wherein the provided information is displayed to the first user as part of a graphical user interface that includes one or more displayed user-selectable controls for use by the first user in selecting one of multiple existing aggregation groups, and wherein the selected group is one of the multiple existing aggregation groups that is selected by the first user via one or more interactions with the one or more user-selectable controls.

[c5] 5. The method of claim 4 wherein the one or more displayed user- selectable controls are part of a slider control that has multiple defined positions that each correspond to one of multiple defined groups of users, wherein the selected group of users corresponds to one of the multiple defined positions, and wherein the one or more interactions of the first user with the slider control to select the group includes moving a portion of the slider control to the one defined position.

[c6] 6. The method of claim 4 wherein the one or more displayed user- selectable controls are further for use by the first user in defining a new custom aggregation group, and wherein the selected group is a new custom aggregation group that is defined by the first user via one or more interactions with the one or more user-selectable controls.

[c7] 7. The method of claim 4 wherein the displayed graphical user interface further includes a user-selectable time slider control that has multiple defined positions that each correspond to a distinct period of time, and wherein the method further comprises, after the first user performs one or more interactions with the time slider control to select a first period of time that

corresponds to one of the multiple defined positions, updating the information that is displayed to the first user to include information that corresponds to the first period of time.

[c8] 8. The method of claim 1 wherein the selected group was previously defined by the first user based on one or more selections made by the first user.

[c9] 9. The method of claim 1 wherein the one or more entities include at least one business, and wherein the retrieved multiple ratings for each of the at least one businesses are each a rating supplied by one of the multiple users of the selected group to reflect an assessment of service received by the user from the business.

[do] 10. The method of claim 1 wherein the one or more entities include at least one business, and wherein the retrieved multiple ratings for each of the at least one businesses are each a rating supplied by one of the multiple users of the selected group to reflect an assessment of one or more products received by the user from the business.

[ci 1] 11. The method of claim 1 wherein the one or more entities include a distinct second user, and wherein the retrieved multiple ratings for the second user are each a rating supplied by one of the multiple users of the selected group to reflect an assessment of the second user by the user of the selected group.

[ci 2] 12. The method of claim 1 wherein the one or more entities include an event or a point of interest, and wherein the retrieved multiple ratings for the event or the point of interest are each a rating supplied by one of the multiple users of the selected group to reflect an assessment of the event or the point of interest by the user of the selected group.

[ci3] 13. The method of claim 1 wherein the one or more entities include a business, and wherein the generated aggregate information for the business further includes cumulative information about multiple visits to the business by multiple of the users of the selected group.

[ci4] 14. The method of claim 1 wherein the method is performed under control of one or more computing systems of a location-based information service that has multiple users who supply and receive information about entities in one or more geographical locations, wherein the first user is one of the multiple users of the location-based information service, and wherein the plurality of users of the selected group are a subset of the multiple users of the location-based information service.

[ci5] 15. The method of claim 1 wherein the method is performed under control of one or more server computing systems that are remote from a location of the first user, wherein the providing of the information and of the additional information includes transmitting the information and the additional information to a computing device in use by the first user, and wherein the selection by the first user of the group is performed based on one or more interactions by the first user with the computing device.

[ci6] 16. The method of claim 1 wherein the method is performed under control of a computing device in use by the first user, and wherein the providing of the information and of the additional information includes presenting the information and the additional information to the first user via the computing device.

[ci7] 17. The method of claim 1 wherein the selected group of users is a first group of users, wherein the additional information provided for display to the first user is a first group of additional information, and wherein the method further comprises: after the automatic providing of the first group of additional information for display, receiving an indication of a selection by the first user of a second

group having one or more users, the selected second group being for use in generating aggregate information and being distinct from the first group; and in response to the selection of the second group, automatically providing a second group of additional information for display to the first user in lieu of the provided first group of additional information, the provided second group of additional information including aggregate information for the one or more entities that is generated based on information previously supplied by the users of the second group for the one or more entities, the generated aggregate information for the second group of additional information being distinct from the generated aggregate information for the additional information.

[ci8] 18. The method of claim 1 wherein the selected group of users is one of multiple defined groups that each includes one or more users associated in one of multiple defined manners, and wherein the multiple defined groups include a group of users selected by the first user as friends of the first user and include a group of users selected based on sharing one or more attributes.

[ci9] 19. The method of claim 1 wherein the selected group is further for use in selecting a subset of the multiple entities based on the entities of the subset sharing one or more common types of interactions with the users of the selected group, wherein the one or more entities are selected for the subset, and wherein the provided additional information does not include aggregate information for other of the multiple entities that are not part of the one or more entities.

[c20] 20. The method of claim 19 wherein the one or more common types of interactions with the users of the selected group include at least one of being visited by at least one of the users of the selected group and of being rated highly by at least one of the users of the selected group.

[c2i] 21. The method of claim 1 wherein the one or more entities include multiple users other than the first user, and wherein the provided additional

information for display includes one or more indications of one or more activities in which at least some of the multiple users are engaged.

[c22] 22. A computer-readable medium whose contents enable a computing device to provide aggregated information from selected groups of users, by performing a method comprising: receiving an indication of a first existing group that is selected by a first user, the first existing group having one or more users that are associated in one or more defined manners; automatically determining aggregate information for one or more entities based at least in part on information supplied by the users of the selected group for the one or more entities, the determined aggregate information including for each of at least one of the one or more entities an aggregate rating for the entity that is based on multiple ratings for the entity supplied by multiple users; and providing information to the first user about the one or more entities that includes the determined aggregate information for the one or more entities.

[c23] 23. The computer-readable medium of claim 22 wherein the information provided to the first user about the one or more entities is provided for display to the first user and corresponds to a geographical area, wherein the one or more entities are at least some of multiple entities whose locations correspond to the geographical area, wherein the selected group has a plurality of users, and wherein the one or more defined manners in which the plurality of users are associated include being affiliated with the first user in a first defined manner.

[c24] 24. The computer-readable medium of claim 23 wherein the method further comprises, before selection by the first user of the first existing group, providing information for display to the first user that includes a map of the geographical area, the displayed map including displayed indications of at least some of the multiple entities and including one or more displayed user- selectable controls for use in selecting one of multiple defined aggregation groups specific to the first user, wherein the receiving of the indication of the

first existing group is based on one or more interactions by the first user with at least one of the one or more user-selectable controls so as to select the first existing group, and wherein the one or more entities are each a distinct business.

[c25] 25. The computer-readable medium of claim 22 wherein the one or more entities are a subset of multiple entities that share one or more attributes, wherein the selected group is an inclusion group that has a plurality of users, wherein the method further comprises automatically selecting the one or more entities from the multiple entities based at least in part on information supplied by the users of the selected group for the one or more entities, and wherein the information provided to the first user about the one or more entities does not include information about other of the multiple entities based at least in part on the automatic selecting of the one or more entities.

[c26] 26. The computer-readable medium of claim 22 wherein the computer-readable medium is at least one of a memory of a computing device and a data transmission medium transmitting a generated data signal containing the contents.

[c27] 27. The computer-readable medium of claim 22 wherein the contents are instructions that when executed cause the computing device to perform the method.

[c28] 28. The computer-readable medium of claim 22 wherein the contents include one or more data structures for use in providing aggregated information from selected groups of users, the data structures comprising multiple entries, each entry corresponding to one of multiple distinct existing defined groups that each has one or more users that are associated with the first user in one or more defined manners and storing information related to aggregated information for one or more entities based on the corresponding existing defined group.

[c29] 29. A computing system configured to provide aggregated information from selected groups of users, comprising: one or more memories; and a location-based information system that is configured to provide location-related information of interest, by: receiving an indication of a selection by a first user of a first defined group of a plurality of users; automatically determining aggregate information for one or more entities that have locations corresponding to an indicated location, the determined aggregate information for each of the one or more entities being based at least in part on existing information that reflects previous interactions of multiple of the users of the selected group with the entity; and providing information to the first user about the one or more entities that includes the determined aggregate information for the one or more entities.

[c30] 30. The computing system of claim 29 wherein the indicated location is a determined location of the first user, wherein the one or more entities are at least some of multiple entities whose locations correspond to the determined location, wherein the plurality of users of the selected group are associated in one or more defined manners, wherein the existing information from the multiple users that reflects the previous interactions of the multiple users with the one or more entities includes ratings supplied by the multiple users for the one or more entities, wherein the determined aggregate information for at least one of the one or more entities includes a generated aggregate rating for the entity that is based on multiple ratings for the entity that were previously supplied by multiple of the plurality of users, and wherein the information provided to the first user about the one or more entities is provided for display to the first user.

[c3i] 31. The computing system of claim 30 wherein the locations of the multiple entities are within a geographical area that includes the determined location, wherein the location-based information system is further configured to,

before the selection by the first user of the first defined group, provide information for display to the first user that includes a map of the geographical area with indications of at least some of the multiple entities and that includes one or more user-selectable controls for use in selecting one of multiple defined aggregation groups specific to the first user, and wherein the selection by the first user of the first defined group is based on one or more interactions by the first user with at least one of the one or more user-selectable controls.

[c32] 32. The computing system of claim 29 wherein the one or more entities are a subset of multiple businesses that share one or more attributes, wherein the previous interactions of the multiple users with the one or more entities include previous visits by the multiple users to the one or more entities, wherein the location-based information system is further configured to automatically select the one or more entities from the multiple entities based at least in part on the interactions of the multiple users with the one or more entities, and wherein the information provided to the first user about the one or more entities does not include information about other of the multiple entities based at least in part on the automatic selecting of the one or more entities.

[c33] 33. The computing system of claim 29 wherein the location-based information system is further configured to provide a location-based information service to a multiplicity of users by performing the providing of the location- related information of interest to each of multiple of the multiplicity of users, and wherein the first user and the plurality of users of the first defined group are a subset of the multiplicity of users of the location-based information service.

[c34] 34. The computing system of claim 29 wherein the location-based information system includes software instructions for execution in memory of the computing system.

[c35] 35. The computing system of claim 29 wherein the location-based information system consists of a means for providing location-related information of interest, by:

receiving an indication of a selection by a first user of a first defined group of a plurality of users; automatically determining aggregate information for one or more entities that have locations corresponding to an indicated location, the determined aggregate information for each of the one or more entities being based at least in part on existing information that reflects previous interactions of multiple of the users of the selected group with the entity; and providing information to the first user about the one or more entities that includes the determined aggregate information for the one or more entities.

36. A method for a computing system of a location-based information service to provide aggregated information from selected groups of users, the method comprising: under control of a computing system of a location-based information service that has a plurality of users, and for each of at least some of the plurality of users, determining a geographical location of the user; automatically determining multiple businesses having locations in a geographical area that includes the determined geographical location; automatically sending information to a computing device of the user for display to the user via a graphical user interface of the location-based information service that is displayed on the computing device, the sent information including a map of the geographical area with indications of the locations of the determined businesses and with an indication of the determined geographical location of the user, the graphical user interface including one or more displayed user-selectable controls for use by the user in selecting one of multiple user aggregation groups previously defined by the user that each include a distinct group of multiple of the plurality of users; receiving an indication of a selection by the user of one of the multiple user aggregation groups via one or more interactions with at least one of the displayed user-selectable controls;

automatically generating aggregate information for at least some of the determined multiple businesses based on the multiple users of the selected user aggregation group, the generating of the aggregate information including, for each of the at least some businesses, retrieving multiple ratings for the business that were previously supplied by at least some of the multiple users of the selected aggregation group and generating an aggregate rating for the business based on the retrieved multiple ratings; automatically sending additional information to the computing device of the user for display to the user via the displayed graphical user interface, the sent additional information including, for each of the at least some businesses, an indication of an icon to be displayed on the map for the business at the indicated location of the business to provide a visual indication of the generated aggregate information for the business; and after receiving an indication of a selection by the user of one of the at least some businesses via one or more interactions with displayed information on the map corresponding to the one business, retrieving and sending further information about the one business to the computing device of the user for display to the user via the graphical user interface.

37. The method of claim 36 wherein, for one of the at least some users, the information sent to the computing device of the one user for display to the one user further includes indications of initial icons to be displayed on the map for each of the determined multiple businesses to provide visual indications of initial aggregate information generated for the determined multiple businesses based on a previously selected user aggregation group; the user aggregation group selected by the one user is distinct from the previously selected user aggregation group; and the additional information sent to the computing device of the one user for display to the one user further includes changes to at least one of the initial icons for the at least some businesses, such that an updated display of the graphical user interface to the one user includes the changed at least one icons

and does not include the initial icons for the determined multiple businesses that are not part of the at least some businesses.

[c38] 38. The method of claim 37 wherein the graphical user interface displayed to the one user further includes one or more other displayed user- selectable controls for use by the one user in selecting one of multiple defined user inclusion groups that each include a group of multiple of the plurality of users, wherein the computing system of the location-based information service further receives an indication of a selection by the one user of one of the multiple user inclusion groups via one or more interactions with at least one of the other displayed user-selectable controls, and wherein the at least some businesses are a subset of the determined multiple businesses that is selected based at least in part on information previously provided by the multiple users of the selected user inclusion group, such that after the selection of the user inclusion group, information for the selected at least some businesses is displayed to the one user in a manner that is distinct from information for other of the determined multiple businesses that are not part of the selected subset of the at least some businesses.

[c39] 39. The method of claim 36 wherein, for one of the at least some users: before the automatic sending of the information to the computing device of the one user for display to the one user via the displayed graphical user interface, the computing system of the location-based information service further automatically determines users other than the one user who each have a defined relationship with the one user and have a location in the geographical area that includes the determined geographical location of the one user, and the information sent to the computing device of the one user for display to the one user further includes indications of the locations of the determined other users; the automatic generating of the aggregate information for the one user includes generating aggregate ratings for each of the determined other users

based on ratings received from the multiple users of the selected user aggregation group for the one user; and the automatic sending of the additional information to the computing device of the one user for display to the one user via the displayed graphical user interface includes sending for each of the determined other users an indication of an icon to be displayed on the map for the other user at the indicated location of the other user to provide a visual indication of the generated aggregate rating for the other user based on the selected user aggregation group.

[c40] 40. The method of claim 36 further comprising, under control of the computing device of one of the at least some users: receiving the information sent by the computing system of the location- based information service for display to the one user via the graphical user interface of the location-based information service, the received information including a map for display; displaying the graphical user interface to the one user, the displayed graphical user interface including the received information and including one or more displayed user-selectable controls; after receiving indications of the selection by the one user of a user aggregation group via one or more interactions with at least one of the displayed user-selectable controls, sending information to the computing system of the location-based information service to indicate the selected user aggregation group; and after receiving the additional information sent by the computing system of the location-based information service for display to the one user via the displayed graphical user interface, updating the displayed graphical user interface to include on the displayed map the displayed icons for the at least some businesses.

[c4i] 41. A method for a computing device to provide aggregated information from selected groups of users, the method comprising: determining a current location of a user of the computing device;

displaying information to the user on the computing device, the displayed information including a map corresponding to the determined current location and including indications of multiple entities whose locations correspond to the determined current location; receiving information from the user to select a group having a plurality of other users that are associated with the user in a defined manner, the selected group for use in generating aggregate information; and displaying additional information to the user on the computing device that is based on the selected group, the displayed additional information including aggregate information for one or more of the indicated multiple entities that is generated based on the users of the selected group, the generated aggregate information for at least one of the indicated multiple entities being based on combining information supplied by multiple of the users of the selected group.

[c42] 42. The method of claim 41 wherein the displaying of the information to the user includes displaying a graphical user interface to the user that includes the displayed information, and wherein the displayed graphical user interface includes one or more displayed user-selectable controls with which the user interacts to select the group with the plurality of other users.

[c43] 43. The method of claim 42 wherein the method further comprises interacting with one or more remote computing systems of a location-based information service to obtain at least some of the information and the additional information that is displayed to the user on the computing device.

[c44] 44. The method of claim 43 wherein the computing device is a portable device that is transported with the user, wherein the determining of the current location of the user is automatically performed based on a determined location of the computing device and is performed repeatedly to identify one or more changing locations of the user, and wherein the displaying of the information to the user that include a map corresponding to the determined current location is performed repeatedly so that the displayed map is updated to correspond to the one or more changing locations of the user.

[c45] 45. The method of claim 42 wherein the one or more displayed user- selectable controls are part of a slider control that has multiple defined positions that each correspond to one of multiple defined groups of users, wherein the selected group of users corresponds to one of the multiple defined positions, and wherein the interacting of the user with the slider control to select the group includes moving a portion of the slider control to the one defined position.

[c46] 46. A computer-implemented method for providing aggregated information from selected groups of users, the method comprising: providing information that corresponds to a geographical area and that includes indications of multiple entities whose locations correspond to the geographical area, the provided information for display to a first user as part of a graphical user interface displayed on a computing device of the first user; receiving an indication of a selection by the first user of a group having a plurality of users that are affiliated with the first user in a defined manner, the selected group for use in generating aggregate information, the selection being performed by the first user via one or more interactions with a slider control that is displayed to the first user as part of the graphical user interface; and in response to the selection of the group by the first user, automatically providing additional information for display to the first user as part of the graphical user interface, the additional information including aggregate rating information for one or more of the indicated multiple entities that is generated based on the users of the selected group, the generated aggregate rating information for at least one of the indicated multiple entities being based on combining rating information supplied by multiple of the users of the selected group, so that the displayed graphical user interface is updated to display indications of the generated aggregated rating information.

[c47] 47. The method of claim 46 wherein the slider control is a social slider control that has multiple defined positions each corresponding to one of multiple defined groups of users, wherein the selected group of users corresponds to one of the multiple defined positions, and wherein the interactions of the first

user with the slider control include moving a portion of the slider control to the one defined position.

[c48] 48. The method of claim 47 wherein the displayed graphical user interface further includes a distinct time slider control with which the first user interacts to select a first time period, and wherein the additional information that is provided for display includes information specific to the first time period.

[c49] 49. The method of claim 46 wherein the method is performed under control of one or more server computing systems that are remote from a location of the computing device of the first user, and wherein the providing of the information and of the additional information includes transmitting the information and the additional information to the computing device.

[c50] 50. The method of claim 46 wherein the method is performed under control of the computing device of the first user, and wherein the providing of the information and of the additional information includes displaying the information and the additional information to the first user as part of the graphical user interface displayed on the computing device.

Description:

PROVIDING AGGREGATE USER-SUPPLIED INFORMATION RELATED TO LOCATIONS ON A MAP

TECHNICAL FIELD

[0001] The following disclosure relates generally to techniques for obtaining and sharing various types of user-supplied information about places and people of interest, such as by providing aggregate information to a user that is supplied by other users who are part of a group selected by the user.

BACKGROUND

[0002] People are increasingly using computing devices to access information of a variety of types, including to access information over networks from remote devices and services (e.g., over the Internet and/or private networks, such as communications networks of cellular telephone service providers). One example of information that is often accessed and used includes various types of location-related information, such as maps. In addition, many users of computing devices may desire to search for or otherwise locate various types of information in a geographical area near the user, including based on a particular location of the user {e.g., to search for pizza restaurants within a specified distance of my current location) - in some circumstances, such activities may be referred to as "local search" or more generally as location- based information access. Users may use a variety of types of computing devices when accessing information, including both fixed-location computing devices (e.g., desktop computers) and mobile computing devices (e.g., laptop computers; handheld computers and/or communications devices, including cellular telephones with data communication capabilities; vehicle-based devices; etc.).

[0003] The availability of such location-based information provides a variety of benefits if the information is accurate and specific to the needs and interests of the users who receive the information. However, various problems exist with

current techniques for obtaining and providing such information. For example, in many situations, information about a very large number of alternatives for a particular type of place of interest (e.g., a restaurant in an urban setting) is available, without a useful manner for a user to select between the alternatives. In other situations, information that would be of use to a user is not available, such as information about current locations and status of various other users and places of interest.

BRIEF DESCRIPTION OF THE DRAWINGS

[0004] Figures 1A-1AM illustrate examples of providing user-supplied information and related functionality to a user via an example graphical user interface on a client device of the user. [0005] Figure 2 is a block diagram illustrating a computing system suitable for executing an embodiment of a system that performs at least some of the described techniques. [0006] Figure 3 is a flow diagram illustrating an example embodiment of a

Location-Based User Information Aggregation routine. [0007] Figure 4 is a flow diagram illustrating an example embodiment of a User

Aggregation Group Selection routine.

DETAILED DESCRIPTION

[0008] Techniques are described for automatically obtaining and sharing various types of user-supplied information about entities of interest, such as businesses and/or people. In at least some embodiments, information about location and other current status of entities of interest is also tracked, and such location-related and other status-related information may also be provided to and used by at least some users. For example, in some embodiments, users may be able to request and receive maps of geographical areas, with a variety of types of information being displayed on such a map about at least some entities of interest whose locations are associated with the map. In addition, in at least some embodiments, a user may designate or otherwise define one or

more groups that include other specified users, and may select a current user aggregation group for use in the sharing of user-supplied information, such that only information from users of the current user aggregation group is provided to the user for at least some types of information. Furthermore, in at least some embodiments, an embodiment of a location-based information system automatically performs some or all of the described techniques, as described in greater detail below. The user-supplied information about entities of interest may be obtained and used by users in various ways in various embodiments. For example, in at least some embodiments, users of a common network service or other system (e.g., as provided by a Web site or other interactive network service) may supply information about various entities of interest, such as the following nonexclusive list: personal reviews, ratings and/or other assessments of products and/or services provided by businesses and other entities; information about visits by the users to businesses and other locations; information about current locations of the users; personal reviews, ratings and/or other assessments of various attributes of other users; personal reviews, ratings and/or other assessments of various types of non-business and non-user entities, such as events, groups, points of interest, etc.; supplemental information about entities that may not otherwise be available or easily accessible {e.g., information on menu choices for a particular restaurant); etc. Ratings and other assessments may have various forms, as discussed in greater detail below, such as one of multiple possible enumerated values (e.g., a number between 0 and 5 out of 5 stars possible, one of a sequence of multiple textual labels or descriptions, etc.), any value in a specified range {e.g., a numeric rating that may be any integer and/or real number between 1 and 10), a positive or negative indication, etc. At least some such information supplied by a user for an entity may be based at least in part on one or more previous interactions of the user with the entity {e.g., a visit to a business entity or other location, such as to produce user-supplied ratings or other information about a level of service provided by the business and/or about one or more products offered by the business, or such as to track a quantity or frequency of visits to the business or other

location by that user and/or multiple users; an indication of a desire or plan to visit a business or other location; communications with or other social interactions with a person entity; etc.).

[0010] After various users provide such user-supplied information, other users may obtain the benefit of such information in various ways. For example, a current user may be interested in identifying one or more businesses of a particular type (e.g., restaurants that serve Italian or French food) that other users have rated highly {e.g., at least 3 stars or at least 4 stars out of 5 possible), or in determining particular rating and other information about a particular business or user. If so, the current user may obtain various types of information supplied by other users in various embodiments, such as individual postings by particular other users that include textual reviews and/or ratings based on a designated scale, or aggregate summaries of information supplied by multiple other users (e.g., aggregate ratings from multiple users, aggregate quantities of visits by multiple users, etc.). Aggregate information based on multiple underlying sources being aggregated may be generated in various manners in various embodiments, such as to mathematically combine star- based ratings or other numeric ratings or numeric information (e.g., to determine a mean, median or mode; to generate a weighted average, such as weighted by the source of the underlying data and/or based on recency of the underlying data being supplied; to generate a cumulative value by summing or otherwise combining the underlying data; to generate various types of statistical measures, such as a standard deviation; etc.), or to combine textual information (e.g., by appending all the underlying data, by summarizing all the underlying data, by determining themes or concepts that are consistent with the underlying data, etc.). In addition, by presenting some or all such user-supplied information in conjunction with a map, such as simultaneously for one or more alternative entities of interest (e.g., alternative restaurants to select between), the current user may further be able to efficiently evaluate entities of interest on their location as well as on one or more other bases of interest.

[0011] In addition, in at least some embodiments and situations, a current user may further obtain significant benefits by obtaining and using user-supplied

information provided by particular subsets of all available users, such as from one or more groups of users that are previously or concurrently specified by the current user (e.g., for groups that are defined by the current user, such as to reflect a general list of friends of the current user, or to reflect a list of users that share one or more other attributes specified by the current user or otherwise determined). For example, as discussed in greater detail below, a user may designate one or more aggregation groups of other users, and may then elect to evaluate candidate entities of interest {e.g., possible restaurants to visit) based on an aggregation of the information supplied by a particular selected aggregation group of users (e.g., aggregate ratings based on aggregating individual user ratings of the users in the selected group). In some embodiments, the aggregation of the user-supplied information for a particular business or other entity by a selected user aggregation group may be one or more aggregate ratings for the particular business or other entity, such as from an enumerated group of possible ratings or other range of possible rating values, as discussed in greater detail elsewhere. The user-designated aggregation groups of users may reflect various types of relationships or affiliations or other associations between the users of the group, including in some situations to reflect social network relationships. The user-supplied information that is provided by an aggregation group of users designated by a current user may be made available to the current user in various ways, including by making that information available in lieu of information from other users, or instead by making that information available in addition to information from other users but in a manner that allows the information from the designated aggregation group of users to be distinguished from the other user information (e.g., by being displayed in separate locations, using different visual indicators, etc.). In addition, in at least some embodiments in which information about multiple businesses or other entities may be simultaneously displayed to a user (e.g., on a map displayed to the user), indications of all businesses or other entities corresponding to a determined location of interest (e.g., a geographical area currently displayed on the map, a current location of the user, etc.) may be

provided regardless of the particular user aggregation group that has been selected (or the lack of selection of any user aggregation group), but the information that is displayed for the businesses or other entities corresponding to the area of interest may vary based on the user-supplied information for the selected user aggregation group. For example, if aggregate user-supplied information is available for a particular first business for the selected user aggregation group (e.g., if at least one user in the user aggregation group has supplied information for the first business, if at least a minimum number of users in the user aggregation group have supplied information for the first business, if information has been supplied for the first business by one or more users in the user aggregation group within a specified time period of interest, etc.), an icon or other indicator or other displayed information for that first business may be shown in such a manner as to reflect the aggregate user- supplied information based on the selected user aggregation group (e.g., to reflect one or more types of aggregate user ratings, such as based on using different icons and/or colors, as discussed in greater detail below). However, if aggregate user-supplied information is not available for a particular second business for the selected user aggregation group, an icon or other indicator or other displayed information for that second business may be shown in such a manner as to reflect the lack of aggregate user-supplied information, such as in a grayed-out manner (e.g., to reflect no aggregate user rating). Accordingly, if the user modifies the selected user aggregation group, the information that is displayed for the various businesses or other entities corresponding to the area of interest may similarly change to reflect the new aggregate user-supplied information for the various entities for the new selected user aggregation group. As one example, the new selected user aggregation group may include additional user-supplied information, and the second business may have sufficient aggregate user-supplied information for the new selected user aggregation group to be reflected in the displayed information for the second business. In addition, the new selected user aggregation group may include different aggregate user-supplied information for the first business, such that its displayed information is modified to reflect the different aggregate

user-supplied information. In other embodiments, businesses and other entities without sufficient aggregate user-supplied information for a selected user aggregation group may be handled in other manners, such as to not be displayed. Furthermore, in other embodiments, only specified subsets of the user-supplied information for a selected user aggregation group may be considered when determining whether sufficient aggregate user-supplied information exists to provide an aggregate user rating for a particular business or other entity and/or when determining the particular aggregate user rating to be provided, such as to reflect a user-selected or otherwise determined period of time for which user-supplied information should be considered or not considered. In addition, in some embodiments a default user aggregation group may be used for a user in some circumstances, such as until the user selects a particular user aggregation group {e.g., if the selection of a user aggregation group is retained until the user makes a new selection or explicitly removes the prior selection), or if a user has not made a user aggregation group selection and/or performed other interactions within a specified period of time. A default user aggregation group may be selected in various manners, such as to use a user's "my friends" or "my network" group of other users who have been designated friends, as discussed in greater detail below. In addition, in at least some embodiments in which information about multiple businesses or other entities may be simultaneously displayed to a user (e.g., on a map displayed to the user), the user may further select an inclusion group of users whose user-supplied information may be used to determine or otherwise affect which businesses or other entities corresponding to a geographical area or other area of interest {e.g., a geographical area currently displayed on the map) will be included in information provided to the user, such as a user inclusion group that is distinct from a currently selected user aggregation group or that is instead the same as the currently selected user aggregation group. For example, the determination of whether a particular business or other entity is included in information provided to the user may be based at least in part on the user-supplied information for a selected user inclusion group, such as to reflect whether one or more of the users in the

selected user inclusion group have visited, rated, or otherwise interacted with that particular business or other entity. In a manner similar to that for the aggregate user-supplied information, the types of user-supplied information of a user inclusion group for a particular entity that is sufficient to cause information for that entity to be included for a user may vary in various embodiments, such as based on one or more of the following: the number of users in the selected user inclusion group that have interacted with the particular entity in any manner {e.g., at least one, at least a minimum number, etc.); the number of users in the selected user inclusion group that have interacted with the particular entity in a particular manner (e.g., at least one, at least a minimum number, etc.); the number of users in the selected user inclusion group that have interacted with the particular entity during a time period of interest; etc. In other embodiments, user aggregation groups and user inclusion groups may be used in other manners, such as to have a single user group that is used for both information aggregation and entity inclusion, to not use one or both types of groups, etc. Furthermore, as discussed in greater detail below, in some embodiments one or more user inclusion groups may be used in conjunction with one or more other attributes or other criteria that are specified by a user for use in filtering or sifting entities that do not have those attributes or otherwise satisfy those criteria. The information that is made available to users may further include various types of information that is not user-supplied, such as may be obtained from one or more publicly available or privately available databases or other data sources {e.g., yellow page information and/or other business listing information; business detail information, such as from Dun & Bradstreet, Equifax, Expehan, TransUnion or the like; white page information; user financial and/or other information aggregation services; etc.). In addition, in at least some embodiments and situations, location and/or other current status information may be obtained for at least some entities {e.g., fixed-location businesses, users, etc.), and may similarly be made available to some or all users. For example, with respect to mobile users and other entities, in some embodiments current locations of such users may be determined in various

ways {e.g., based on self-reported locations that are manually indicated by the users, based on GPS or other automated location determination technologies in one or more client devices used by a user, etc.). If a mobile user is using a portable client device, the portable device may be configured to, for example, repeatedly determine the current location of the user as it changes while the user moves around one or more geographic areas, and update maps and/or other information that is displayed or otherwise presented to the user on the portable device that are selected to correspond to the user's current location (whether automatically or in response to user requests). A portable or nonportable client device in use by a user may obtain information to display or otherwise present to the user in various ways, such as by storing at least some such information locally and retrieving it for use, or by receiving at least some such information from one or more remote server computing systems that transmit the information to the client device (e.g., in a pull manner in response to requests from the client device, in a push manner without such requests, etc.), such as remote server computing systems of a location-based information system that provides a location-based information service to support large numbers of users. Similarly, information about various other status of entities (e.g., whether a business is currently open or closed; whether a business is currently providing a particular product or good or service; whether a user is currently engaged in a particular activity, optionally in conjunction with one or more other users; etc.) may be obtained and provided to users in various ways in various embodiments, such as from self-reports from the entities (e.g., a user who checks in to indicate that he/she is currently participating in an activity that includes conversing with one or more other particular indicated users at a particular location, a business who has an employee or other representative or an unaffiliated user such as a customer who provides the information, etc.), automatic reports from one or more client devices that are in use by one or more users or that are located at a particular business or other location, via automated inference by an embodiment of the location-based information system based on other available information about one or more users (e.g., similar arrival and/or departure times of multiple users designated as friends at

a particular common location of a defined type), etc. In addition, in at least some embodiments, when multiple users are determined to be participating in a common activity, information about that common activity may be visually displayed for those users to at least some users {e.g., to only those users, to other users that one or all of those users have granted permission to obtain location-related and/or activity-related information, to all other users, etc.), such as via icons specific to that common activity or instead in other manners. Moreover, in at least some embodiments, when multiple users are determined to be participating in a common activity, information about actions taken by one or more of those users while that common activity is occurring (e.g., interactions with the location-based information system, such as to supply ratings or other information) may be stored together or otherwise associated for later use, such as to represent a common experience of those multiple users. Furthermore, various types of map-related data may be obtained from various sources and provided to users. The user-supplied information about entities of interest may be obtained by users in various manners in various embodiments, as discussed in greater detail below. In particular, in some embodiments, users may interact with one or more graphical user interfaces ("GUIs"), such as one or more GUIs provided by an embodiment of the location-based information system. At least some such GUIs may include and display maps, such as to superimpose information about at least some entities on related positions on particular maps (e.g., based on current locations of the entities, or instead other locations such as previous locations and/or future planned locations, such as in conjunction with a selected time period of interest). Furthermore, users may be provided with a variety of user-selectable controls via one or more GUIs to supply information about entities and to obtain user-supplied and other information about entities. Such controls may in some embodiments include search controls via which a current user may specify one or more search terms related to attributes of entities. Furthermore, in at least some embodiments, users may be provided with controls that allow the users to browse information about entities in various ways, such as by filtering or otherwise sifting various attributes of entities. Such

search and/or browse controls may further allow current users to identify relevant matching results based at least in part of user-supplied information from other users (e.g., a current designated group of users), as discussed in greater detail below.

[0017] The user-supplied information about entities of interest may be obtained by users using various types of client devices in various embodiments. For example, at least some users may obtain information using one or more fixed- location client computing devices, such as a desktop computer system. In addition, various types of mobile devices may further act as client devices in at least some embodiments, such as mobile devices with data transmission capabilities (e.g., cell phones with data connections, mobile computing devices with WI-FI or other data connections, vehicle navigation systems with data transmission capabilities, etc.). It will be appreciated that GUIs and other information presented to users may vary with the type of client device used by the user, such as to present less information and/or functionality via client devices with smaller display screens and/or less ability to present information to or obtain input from the user. In addition, at least some such client devices may include GPS or other location determination technologies, and if so may provide location-related information to an embodiment of the location-based information system (also referred to in some embodiments as the location-based user information aggregation, or "LBUIA" system) in some situations, such as if manually instructed to do so by a user of the client device, or automatically (e.g., based on client software of the location-based information system that configures the client device accordingly), such as at predetermined intervals or upon occurrence of certain events.

[0018] Additional details related to various determination and use of location information for users and devices are included in U.S. Patent Application No. 11/404,102, filed April 13, 2006 and entitled "Pay-for-Visit Advertising Based on Visits to Physical Locations;" in U.S. Patent Application No. 11/697,617, filed April 6, 2007 and entitled "Proximity-Based User Interaction;" in U.S. Patent Application No. 60/911 ,627, filed April 13, 2007 and entitled "Location-Based Information Determination;" in U.S. Patent Application No. 12/150,565, filed

April 28, 2008 and entitled "Determining Locations Of Interest Based On User Visits;" and in U.S. Patent Application No. 60/914,556, filed April 27, 2007 and entitled "Identifying User Visits to Determined Locations of Interest;" each of which is hereby incorporated by reference in its entirety.

[0019] For illustrative purposes, some embodiments are described in which various types of user-supplied information about various types of entities is obtained and provided to users in various ways. These examples are provided for illustrative purposes and are simplified for the sake of brevity, and the inventive techniques may be used in a wide variety of other situations, some of which are discussed below. For example, while particular graphical user interfaces may be illustrated to provide various types of information and functionality, it will be appreciated that other graphical user interface controls and arrangements may alternatively be used in other embodiments. In addition, in at least some of the examples listed below, the types of entities and associated location and status information may reflect information in the physical world, such as businesses and/or people that are located in a particular physical geographical area. In other embodiments, some or all of the entities and/or related information may instead reflect one or more virtual worlds, such as, for example, Second Life, Whyville, There, Active Worlds, MTV's Virtual Worlds, ViOS, Moove Online, etc. In such situations, maps and other information related to the one or more virtual worlds may be displayed and manipulated in a manner similar to that of a map for a physical geographical area, and may in some embodiments be associated with one or more physical geographical areas {e.g., as an overlay) or may instead be independent of any such physical geographical areas.

[0020] Figures 1A through 1AN illustrate examples of providing user-supplied information and related functionality to a user via an example graphical user interface on a client device of the user, such as may be provided by a location- based information service implemented by or otherwise provided in conjunction with an embodiment of the LBUIA system. In these examples, the LBUIA system provides functionality corresponding to at least some of the described techniques via an example Web site of the location-based information service,

referred to as "whrrl" in this example, and the user may access the site using a variety of types of client devices.

[0021] In particular, Figure 1A illustrates a graphical user interface ("GUI") 100 that may be provided to a current user to enable the user to obtain various user-supplied information about entities of interest, such as places and/or people. In the illustrated example, an example user "Jim W" is currently interacting with an embodiment of the LBUIA system, such as with the GUI displayed on a desktop computer. In the illustrated example, the GUI 100 includes multiple sections and types of controls, including a map area 110, an information display and selection area 120 (also referred to as the "information area"), and a control tab area 130.

[0022] In the current example, the map area 110 displays a map corresponding to a portion of the city of Seattle, Washington, which may be selected for display in various ways in various embodiments (e.g., based on the geographical area being a default location for the user, such as for use upon initial display of the GUI; in response to a user request for information about one or more entities located in the illustrated portion of Seattle, such as via manipulation of user-selectable controls or information provided via the GUI; based on the user currently being located in Seattle; etc.). In this illustrated embodiment, the map area includes several controls and information displays related to the displayed map, including a zoom control 112, map movement controls 114 (in the illustrated embodiment, movement of the map may also be effected via cursor-based dragging of a selected point on the map), a map legend 116, and a control 115 for use in selecting an aggregation group of one or more users whose aggregate user-supplied information will be reflected in various displayed information about entities of interest. Use of the control 115 to select a current aggregation group of one or more users, also referred to as a "lens," and selection and other specification of user aggregation groups in other manners, are discussed in greater detail below.

[0023] In addition, the map includes numerous entity information indicator controls 140 that are each located on the map at a position corresponding to one or more entities of interest, and that each indicate information about the

corresponding entity(ies) that reflects user-supplied information from one or more users of the site (e.g., the currently selected aggregation group of one or more users as designated by the control 115). In particular, as indicated by the map legend 116, each entity information indicator control may in this example embodiment have one of six icons to reflect the aggregate ratings of the currently selected aggregation group of users (or in other embodiments and situations, of all users of the site) with regard to a corresponding entity, such as follows: a circle {e.g., green) with a plus sign inside {e.g., white) to indicate an aggregate positive rating; a circle {e.g., red) with a minus sign inside {e.g., white) to indicate an aggregate negative rating; a circle {e.g., orange) with a vertical line inside {e.g., white) to indicate an aggregate neutral rating, a circle that has two halves {e.g., half green and half red) and includes both a plus sign {e.g., white) and a minus sign {e.g., white) to indicate an aggregate split rating, such as for a bi-modal rating in which a first subset of users have given the entity high ratings and a second distinct subset of other users have given the entity low ratings, and in which few or no users have given the entity neutral ratings; a circle {e.g., blue) with a smaller circle inside {e.g., white) to indicate that one or more of the current aggregation group of users have interacted with the entity in some way but have not yet rated it, referred to in the legend as being "touched"; and a circle {e.g., gray) to indicate that the current aggregation group of users has not yet interacted with the indicated entity in a manner that has been reported to the site. It will be appreciated that various of the icons may be presented in other ways in other embodiments and/or may reflect various other information related to entities. For example, Figure 1AK illustrates an example embodiment of a group of icons 150a that may be used in some embodiments, such as in embodiments corresponding to those of example Figures 1AB-1AJ. Similar to icons indicated by the map legend 116 of Figure 1A, each of the five icons illustrated in Figure 1AK may be used to reflect aggregate ratings with regard to a corresponding entity based on the currently selected aggregation group of users, such as in the following manner: icon 150a1 indicating an aggregate positive rating; icon 150a2 indicating an aggregate negative rating; icon 150a3 indicating that one or more of the current

aggregation group of users have interacted with the entity but have not yet rated it; icon 150a4 indicating that one or more of the current aggregation group of users have not yet visited the entity but have expressed a desire or plan to do so; and icon 150a5 indicating that the current aggregation group of users has not yet interacted with the entity in a manner that has been reported.

[0024] In the illustrated example of Figure 1A, the map is overlaid with hundreds of entity information indicator controls 140, although only a few of those controls are specifically labeled for purposes of illustration. As discussed in greater detail later, each of the separate information indicator controls 140 is selectable by the user in order to obtain additional information and functionality related to one or more entities represented by the control, such as by moving a cursor over the control {e.g., a "mouseover" event) and/or by clicking a mouse button while the cursor is over the control. In addition, in this example, a few of the controls 140 also have associated numeric flags 118 to indicate a correspondence of that control 140 to information displayed in the information area 120.

[0025] In this example, the control tab area 130 includes several user-selectable controls that affect the information displayed in the information area 120 and the map area 110, including a "home" control 132, a "me" control 133, a "my network" control 134, a "whrrld sifter" control 135, and an "events" control 136, as well as a section 138 to provide other controls and information as indicated. In the current example, the "home" tab control 132 is initially selected, causing the information area 120 to provide overview information for the current user. In particular, the information area 120 includes a "whrrld feed" section 122 specific to the current user, which displays various recent and/or relevant information for the user. For example, the user Jim W recently provided a user review for a particular restaurant in Seattle, which is shown as a first entry 122a in the feed. In addition, the review is automatically labeled with a numeric flag of "1 " in this example, with the numeric "1 " flag also shown on the map area 110 to identify the entity information indicator control that corresponds to that restaurant. As indicated, the illustrated review in this example includes an individual rating for the restaurant by the current user (which in this example is

shown as being 2 out of 5 stars, corresponding to a negative rating), as well as textual review comments. While user Jim W has given a negative rating to the restaurant, other users in the current user aggregation group have given the restaurant higher ratings, resulting in an aggregate rating for the restaurant for this current aggregation group of users of "neutral," as shown by the neutral rating icon displayed in the entry 122a. As is shown, the feed also includes other information related to other users who are associated with user Jim W in one or more ways {e.g., by being part of a user-defined network of Jim Ws friends), such as to show recent comments or notes posted by those users, locations of those users, activities of those users, etc. The information 120 also currently includes a sifter section 125 that includes a variety of user-selectable controls that each corresponds to one or more attributes of various possible entities of interest, as described in greater detail later. Figure 1 B illustrates the GUI 100 after user Jim W has selected the "me" tab control 133, causing the information area 120 and map 110 to change to reflect that selection. In particular, the information 120 has been changed to provide other information specific to the current user. For example, while the current information area 120 continues to include a version of feed information 122b for the user, the included information entries are now specific to actions and status information for the user, rather than to include information related to other users in the current user aggregation group. In addition, the information area 120 lacks the sifter section 125 shown in Figure 1A, but shows other information that includes an indication 126 of the other users that are currently part of user Jim Ws user-selected network of "friends" (which in this example includes two other users, those being user Paolo M and user Darren V). In the illustrated embodiment, a user may issue a request to another user to become a "friend," and by so doing become a "fan" of that other user, but the two users are not linked as friends until the other user accepts the friendship request. The map displayed in the map area 110 has also been changed in this example embodiment to show a geographical area that includes entities relevant to user Jim W and at an appropriate zoom level to display locations corresponding to those entities — since user Jim W is a recent user who has provided only one

interaction with a entity whose location is tracked (a review of an example "Pizza Pie" restaurant in Seattle), the displayed map is centered and zoomed around that location, as shown with the numeric flag 1. In addition, it will be appreciated that at a higher level of zoom (with a smaller geographical area shown), additional detail may be available regarding the entities having corresponding controls 140 shown on the map. For example, the controls 140 shown on the map include two nearby indicator controls 140a — however, in the previous map displayed with respect to Figure 1A, at a lower level of zoom that showed a much larger geographical area, these two controls 140a will instead likely be shown in a substantially overlapping manner (or as a single control 140 that represents both of those entities). As with Figure 1A, only a small number of the controls 140 that are illustrated on the map in Figure 1 B are labeled with their numeric reference 140, for the sake of illustration.

[0027] Figure 1 C illustrates one technique for a user to obtain information about an entity of interest via a corresponding displayed entity information indicator control 140 in the map area 110. In particular, in this example, the "home" control tab 132 has again been selected, with the information in the information area 120 and map area 110 updated accordingly. The user has then moved the cursor over an entity information indicator control 140b (e.g., has performed a mouseover), but has not yet performed a mouse click or similar selection action. In response to the mouseover selection of the control 140b, an information section 142 has been displayed that shows the name of the entity associated with the indicator control 140b, which in this example is a location of Starbucks Coffee. The user can similarly move the cursor over other indicator controls 140 that are displayed in order to obtain similar information about the one or more entities that are represented by those indicator controls.

[0028] Figure 1 D next illustrates another form of information that a user may obtain via the map area 110 of the GUI 100. In particular, in this example the user has moved the cursor to the indicator control 140c, and has performed a mouse click or similar selection action. In response to the mouse click selection of the indicator control 140c, an expanded information section 144 has been presented for the corresponding entity, which in this example is a "Pizza Pie"

restaurant. The information section 144 in this example includes information about the address and phone number of the restaurant, an aggregate rating 117 for the restaurant from the users in user Jim Ws current network of friends (which is the currently selected aggregation group of users), shown both as a star rating and in iconic representation, and information about one or more reviews of the restaurant from users. In this manner, user Jim W may obtain information about aggregate ratings of entities based on information supplied by other users, such as an aggregation group of users selected by the user. In addition, some of the information in the information section 144 may be selectable by the current user. In this example, the name of the restaurant "Pizza Pie" is a user-selectable control 144a that the user may select in order to obtain additional information about the restaurant, such as via a mouse click or similar action. Figure 1 E illustrates the GUI 100 after the user has selected the control 144a in the information window 144 of Figure 1 D, with the information area 120 of Figure 1 E being updated to reflect information about the restaurant. For example, the displayed information for the restaurant includes reviews provided by various users, including users that are part of Jim's network and other users that are not, and a section 129 via which the current user may provide a review of the restaurant if so desired. In addition, information about multiple aggregate ratings for the restaurant are illustrated, including an aggregate rating 127a based solely on the users in the currently selected aggregation group of users (which in this example continues to be the network of user Jim Ws friends), an aggregate rating 127c by the network of user Jim Ws friends (regardless of whether this friends' network is the currently selected aggregation group of users - in this example, the aggregate rating 127c is the same as aggregate rating 127a, but in other situations will be different if the current selected aggregation group of users is different from the network of user Jim Ws friends), and an aggregate rating 127b by all users of the site. If the user aggregation group selection control 115 is used to change the currently selected group of users to be user Jim W only, for example, the rating 127a will change to reflect two stars rather than three (based on the two-star rating having been previously provided by current user Jim W for the restaurant). In

this manner, up to three distinct aggregate ratings may be displayed simultaneously. Various information is also shown about the restaurant's operating characteristics, such as hours, payment types, food types, etc. As previously indicated, in at least some embodiments, one or more of the entity information indicator controls 140 that is displayed on a map in the map area 110 may represent multiple distinct entities that are consolidated together for the display, such as when the map is displayed at a sufficiently low zoom level that nearby locations sufficiently overlap. In such situations, the user may obtain information about the multiple entities that are represented by a single indicator control 140. Figure 1 F illustrates the GUI 100 after the "home" tab control 132 has been re-selected, and the user has moved the cursor over indicator control 14Od (which in this example is one of multiple overlapping indicator controls that are treated as a group). In response, information section 142b has been displayed, similar to that of information section 142 in Figure 1 C, but in this example shows the first three of twenty- eight consolidated entities corresponding to the selected group of multiple indicator controls. Alternatively, in other embodiments a single indicator control 140 may be displayed to represent multiple corresponding consolidated entities. In the illustrated embodiment, the names of the entities in the information section 142b are not user-selectable controls, but in other embodiments may be selectable in a manner similar to that described previously. Nonetheless, in the illustrated embodiment, additional information may be obtained about the underlying entities corresponding to the group of indicator controls 14Od in multiple ways. For example, a user may zoom in around a particular area of interest, thus causing the various indicator controls to be displayed in greater detail and sufficiently separated so as to be individually selectable. Alternatively, by performing a mouse click or similar action over the group of multiple indicator controls, additional information about the corresponding entities may be obtained. For example, Figure 1 G illustrates the results of a user performing such an action for the group of indicator controls 14Od, with an information section 146 being displayed in response. In this example, information section 146 is a scrollable window that includes some details about

each of the corresponding entities {e.g., name, address, phone number, and aggregate ratings), with the names of the entities being user-selectable controls that a user may select in order to obtain additional information about the entity in a manner similar to that previously described with respect to

Figures 1 D and 1 E.

[0031] Figure 1 H illustrates a version of the GUI 100 in which the "sifter" tab control 135 has been selected, with the information area 120 (now restored to full view, along with area 130 and legend 116) being updated to include information for the sifter section 125. The displayed sifter section 125 includes a variety of attribute controls 128 that the user may select in order to specify attributes of interest, with corresponding entities having those attributes being reflected in the "results" section 121 of the information area 120 (so as to filter out or sift out possible results that do not include the selected attributes). In this example, the first ten results are currently shown (although some of the ten results are not visible until information area 120 is scrolled down), and each has an associated numeric flag 1 -10 that is shown on the map area 110 to designate the indicator control 140 corresponding to that result. In this example embodiment, the illustrated types of attributes include attributes 128a corresponding to rating levels of other users (e.g., other users in user Jim Ws network of friends or other currently selected inclusion group of users), attributes 128b corresponding to visits or other interactions with entities by other users (e.g., other users in user Jim Ws network of friends or other currently selected inclusion group of users), and other attributes 128c. In this example, the other attributes 128 include attributes based on average star ratings, price, category, hours of operation, neighborhood or other geographical location, etc. Additional attributes 128c may be displayed if the information area 120 is scrolled.

[0032] Use of attributes 128a and 128b allows the current user to efficiently identify entities that correspond to user-supplied information of other users and activities of other users. For example, attribute controls 128a1 and 128a2 may be selected to identify entities that are rated highly by user Darren V and user Paolo M, respectively. Similarly, attribute controls 128b1 and 128b2 may be

selected to identify entities that have been visited by or otherwise interacted with by user Darren V and user Paolo M, respectively. It will be appreciated that a variety of other types of user-related attributes may be available for use in other embodiments, such as to reflect low or average ratings, entities that are not visited by the users, entities that are rated highly by other users that are not in the current user's network of friends or other currently selected inclusion group of users (e.g., users that are associated with the users in the current user's network of friends, such as other friends of user Darren V or user Paolo M). In this manner, the current user may quickly obtain various summaries or representations of user-supplied information from other users that have been selected by the current user or that are otherwise associated with the current user. Figure 11 illustrates the GUI 100 after one of the attributes that is available in the sifter section 125 has been selected, which in this example is attribute 128a1 illustrated in Figure 1 H. The selected attribute filters the available results to show only those that have been rated highly by a user selected to be in the current user inclusion group, which in this example is one of the other users in user Jim Ws network of friends, user Darren V. Accordingly, the results area of the information area 120 has been updated to reflect only the six results that have received high ratings from user Darren V, and the sifter section 125 is updated to include a section 125a that indicates the current one or more selected attributes used to filter the search results. The section 125a also includes a user-selectable "clear all" control with which the current user can choose to clear all currently selected attributes that are being used for filtering (which in this example is only the single attribute 128a1 corresponding to user Darren Vs high ratings), or instead may remove particular attributes one at a time by selecting the small circle with an x to the left of each attribute as shown in the section 125a. Furthermore, in a manner consistent with prior discussions of the example GUI, the six results each have an associated numeric flag, which are displayed along with the corresponding indicator control 140 in the map area 110.

[0034] Figure U illustrates the continued use of the sifter section 125 to filter the search results that are shown. In particular, attribute 128b2 illustrated in Figure 11 has now been selected, with the information section 125b of the sifter section being updated to show both attributes that are now selected. In addition, the search results have been updated to show a single result, which in this case is a single business entity that has been both highly rated by user Darren V and visited by user Paolo M, with both users now being part of the currently selected user inclusion group. The map area 110 has been updated in a similar manner as discussed previously, so as to display the current results. In addition, it will be appreciated that the sifter section 125 in the illustrated embodiment displays different attributes based on the currently selected attributes, such as to display attributes for selection only if they are relevant for the current group of search results. For example, with respect to Figure U, the only types of attributes that correspond to the single search result are "average rating" and "distance." In addition, with respect to the user-related attributes 128a and 128b, those attributes are not currently shown since the currently selected attributes already include high ratings by one of the users and visits by another user. In a similar manner, with respect to prior Figure 11, after the attribute 128a1 is selected (corresponding to high ratings by user Darren V), the sifter section 125 was updated to no longer display attributes 128a corresponding to high ratings by other users in the currently selected group of users (which in this example would be user Paolo M), but did continue to display user-related attributes 128b corresponding to visits by users other than user Darren V. In other embodiments, other attributes with similar types may instead continue to be available after one of the attributes is selected, such as to enable selection of attributes corresponding to high ratings by both user Darren V and high ratings by user Paolo M, such as to display the intersection of entities having such ratings if any exist. In other embodiments, attributes of interest may be selected and/or specified in various other ways, as described in greater detail with respect to Figures 1AD-1AI and Figures 1AL-1AM.

[0035] Figure 1 K illustrates an entity information indicator control 14Of that corresponds to a particular user. In particular, the entity information indicator

control 14Of is shown with an icon in the shape of a human torso, and corresponds to a particular user whose location and optionally other status information may be known and displayed on the map. In this example, the cursor has been moved over the control 14Of {e.g., via a mouse-over action), which has caused the information section 142f to be displayed in a manner similar to that previously described with respect to other figures. In this example, the information section 142f indicates that user Paolo M has currently checked in at the location of the Pelago business at a particular time. While not illustrated here, in other embodiments, a variety of additional types of information may be displayed via icons and/or information sections to reflect particular location and/or other status information of users and other entities. For example, multiple users may be together in a single location, and if so one or more control icons similar to that of 14Of may be displayed to indicate the presence of multiple users (e.g., by showing two or more torsos together, such as with a small number to show the number of users). In addition, if information is available regarding the activities of one or more users at a particular location, such information about that activity status or other status may be provided to the current user, such as to indicate that users are conversing together, working together, engaged in a particular sports activity, engaged in a particular social interaction activity, etc. For example, in some such embodiments, an icon control 140 may be modified to reflect particular activities, such as to show multiple users engaged in conversation with multiple torsos connected via a word bubble or other similar visual indicator of talking, or similarly via a particular piece of sports equipment to indicate a particular sports activity that is occurring. Information about users' location and other status may be obtained in various ways in various embodiments, including as self-reported by the users, based on the LBUIA system tracking locations automatically of the users and/or of client devices of the users {e.g., based on GPS or other location determination information provided by the devices), by information reported by particular businesses or other locations, etc. Figure 1 L is similar to that of Figure 1A, but in this example the current user has used the user aggregation group selection control 115 to modify the

current group of users for which user-supplied information will be provided or otherwise used in various situations (e.g., for determining aggregate ratings for entities of interest). In particular, in this illustrated embodiment, the control 115 allows the current user to select between the user's current network of friends and only the user himself/herself, such as by selecting a user-selectable "me only" control 115j or by manipulating the circular group indicator control 115g so that the current group indicator 115k points to the "me only" control. By doing so, various information provided via the GUI will now reflect ratings or other information provided only by the current user himself or herself. For example, as previously described with respect to Figure 1 E, the rating 127a for the selected entity reflects the current aggregation group of selected users (also referred to as a "lens"), and thus would be updated if the information for Figure 1 E was now displayed, such that the rating 127a would reflect only the previously provided two-star rating by user Jim W. In addition, based on the change in the current aggregation group of users, in at least some embodiments the information displayed in the information area 120 and/or the map area 110 may similarly be updated to reflect only the information previously provided by user Jim W, such as to show icons with the indicator controls 140 in the map area 110 that correspond only to ratings provided by the current user, and/or to similarly show such icons based only on the current user's ratings in the information area 120. In other embodiments, aggregation groups of users may be specified and/or selected by the current user in various other ways, as described in greater detail with respect to Figures 1 M-1AC and 1AL. Figure 1 O is similar to that of Figure 1 L, but includes a user group selection control 115b that includes additional functionality with respect to the control 115 illustrated in Figure 1 L. In particular, in the embodiment illustrated in Figure 1 L, the user group selection control 115 allowed the current user to select between a current aggregation group based on the user's network of friends, and a current aggregation group that includes only the current user. The selection control 115b in Figure 1 O provides additional capabilities to allow the current user to select a particular custom current aggregation group of one

or more users whose user-supplied information will be made available to the current user in various ways, such as for aggregate ratings that are displayed for entities in the map area 110 and/or the information area 120. In particular, while the selection control 115b in Figure 1 O continues to include a user- selectable "my network" control 1151 and circular group indicator control 115g with current group indicator 115k, in a manner similar to that of the selection control 115 in Figure 1 L, the selection control 115b in Figure 10 does not include the "me only" control 115j of the selection control 115 in Figure 1 L. Instead, the selection control 115b in Figure 10 includes a custom group control 115f via which the current user may specify a custom current aggregation group of one or more users. In a manner similar to that described with respect to Figure 1 L, the custom group control 115f may be directly selected by the current user to select a corresponding custom group of users as the current aggregation group of users, or in some embodiments the custom user group may instead be selected by manipulating the circular group indicator control 115g so that the current group indicator 115k points to the custom group control 115f. Furthermore, the illustrated embodiment of the selection control 115b includes a dropdown list control 115c that may be selected by the current user to initiate the user configuration or definition of a custom current aggregation group of users. Figure 1 M illustrates the results of initiating the custom current user aggregation group configuration, and in this example the control area 130 and information area 120 have also previously been reduced in order to display additional area of the map area 110. In particular, in Figure 1 M, user group configuration information 115e is displayed, and includes multiple user-selectable controls 115m to allow the current user to specify particular users to be included in a current custom aggregation group of users that is being configured or defined. In this example, the current custom user aggregation group includes two users who have been selected using corresponding controls 115m for those users (which in this example are the current user Jim W and user Darren V), as indicated in the custom user group information 115d. Thus, if the current user is interested in a custom aggregation group of users that includes only a subset

of the current user's network of friends (such as in this example to exclude user Paolo M) and/or in a custom aggregation group of users that includes users that are not part of the current user's network of friends, the current user may use the control 115b to configure or otherwise define such a custom aggregation group of users. The candidate users from whom the current user may select in the illustrated embodiment include users in the current user's network of friends, and users associated with the current user in one or more other manners, as described in greater detail below.

[0039] Figure 1 N continues the example of Figure 1 M, in which the current user has de-selected himself in the configuration information 115e, with the custom user aggregation group information 115d being updated to indicate that only a single user is currently selected. After the user selects the "OK" control in the configuration information 115e of Figure 1 N, the icon for the custom group control 115f is updated as shown in Figure 10, indicating that a single custom user is currently selected for the current user's custom current user aggregation group. Based on the selection of the new current user aggregation group, the information in the map area 110 may in at least some embodiments be updated to reflect aggregate ratings provided only by the users in the currently selected user aggregation group, which in this example is user Darren V, although in other embodiments such user aggregation group selection may instead affect only other information that is provided to the current user.

[0040] Figures 1 P and 1 Q illustrate additional functionality of the user group selection control 115b that allows a current user to lock a current user group selection so that it is maintained until explicitly unlocked and modified by the current user. In particular, with respect to Figure 1 P, the current user has selected the current user's network of friends as the current user aggregation group. The group selection control 115b includes a lock indicator control 115h that the user may select to lock the current selection of the user's network of friends. After the user clicks the control 115h (or takes another similar action to select the control 115h), the current user aggregation group selection is locked and the indicator control icon 115h is moved adjacent to the circular control 115g to indicate the locked status, as illustrated in Figure 1Q. While the

selection is locked, the user may not modify the current user aggregation group selection in manners that are otherwise available, such as by using the custom group control 115f, control 115g, or control 115c. The current user may unlock the selection of the current user aggregation group by again clicking on or otherwise selecting with a similar action the control 115h. Returning to Figure 1 M, in the configuration information 115e, the current user is also able to select lists of one or more people that may be added together to the custom current aggregation group of users. In the example of Figure 1 M, the only available list is that of "favorite people," which is indicated as currently having zero members for the current user. Figure 1 R illustrates additional controls that the current user may use to specify members of such a favorite people list and/or of other custom lists created by the user. In particular, in the example of Figure 1 R, the information area 120 is again displayed, and a particular user (in this example, user Darren V) is displayed, with various information about the user included in the information area 120. In addition, the information area 120 includes several controls 165 via which the current user may specify information about one or more associations of user Darren V with the current user. In the current example, the controls 165 include a control 165a via which the current user can specify to end the relationship of Darren V as being a friend of the current user (and thus a member of the network of friends for the current user), a control 165b via which the current user may add user Darren V to a "favorites" or "favorite people" list of the current user, and a control 165c via which the current user may access and control other user-defined lists of the current user {e.g., in order to specify user Darren Vs relationship to the current user according to such lists). In this example, the current user proceeds to select the control 165b to add user Darren V to the current user's "favorites" list, which in the illustrated example is an action that the current user may perform without agreement by or other participation by user Darren V. Figure 1 S shows the results after the control 165b is selected in Figure 1 R, with the control 165b being modified to now allow the current user to remove user Darren V from the "favorites" list if so desired, since user Darren V is now a member of that list.

[0042] The current user then proceeds to select the "my lists" control 165c in

Figure 1 S, with the result illustrated in Figure 1T. In particular, a list information section 170 is displayed that indicates information about the current lists of the current user, including that user Darren V is a member of the current user's "favorite people" list. Since the current user has not created any user- defined lists at this time, no other lists are displayed, but the information section 170 further includes controls 171 via which the current user may specify new lists to be created. In this example, the current user proceeds to type in the name "My Book Club" (not shown) and use the "create" control 171 to create a corresponding new user-specified list, with the results illustrated in Figure 1 U. In particular, Figure 1 U includes a revised version of the information section 170, in which a second "My Book Club" list 172 is now shown, but without user Darren V indicated to be a member. While not illustrated here, the current user proceeds to then select the checkbox for the list 172, thus adding user Darren V as the first member of the new "My Book Club" list.

[0043] The current user next proceeds to display information for another user

Elizabeth H, who is not yet a friend of the current user and does not have any other specified association with the current user. The current user then proceeds to select the "my lists" control 165c displayed in the information area 120 for user Elizabeth H, in a manner similar to that previously described with respect to Figure 1S, and Figure 1V illustrates the results of the selection. In particular, an information section 170 is displayed in Figure 1V in a manner similar to that previously described in Figures 1T and 1 U, and the current user proceeds to select the check button for the "My Book Club" list 172 as shown, thus adding user Elizabeth H as the second member of that list. In the illustrated embodiment, adding other users to such user-specified lists is an action that a current user may perform without permission or other interaction with the other users, although in other embodiments adding at least some users to at least some such lists may instead include consent or other acknowledgement by the other user (e.g., such as with the "friends" lists for a user's network of friends).

[0044] The current user next proceeds to select another user Jeff H, whose corresponding information is displayed in information area 120. The user then similarly selects the "my lists" control 165c, causing a similar information section 170 to be displayed in Figure 1W showing the two current lists of the current user. The current user then proceeds to add user Jeff H to the "favorite people" list 174 of the current user, thus making him the second user added to that list (along with user Darren V). In some embodiments, the current user may automatically be added as a user of some or all lists that the user specifies, while in other embodiments the user may not be considered to be a member of such lists. In addition, since user Jeff H is not currently a friend of the current user so as to be part of the current user's network of friends, the user information 120 of Figure 1W includes different controls 165 than were previously illustrated with respect to user Darren V in Figure 1 R who already was such a friend. In particular, the user information area 120 for user Jeff H lacks a control 165a for use in canceling a current friendship relationship, since such a friendship relationship does not currently exist between the current user and user Jeff H. Instead, additional controls 165d and 165e are shown (although partially obscured in the illustrated example by information section 170), with the current user able to use control 165d to send a request to user Jeff H to initiate a friendship relationship so as to add user Jeff H to the current user's network of friends, and control 165e available for the current user to select to initiate a fan relationship with user Jeff H.

[0045] Now that the current user has specified various additional relationships with other users as previously described, those user relationships may be used in various ways in the GUI 100. For example, Figure 1X illustrates a GUI display after the current user has selected the "me" control tab 133, with the information area 120 updated to display information about the current user Jim W. For example, the information area 120 has been updated to include a section 180 that includes information about the current lists of user Jim W, including indications of the two current lists of the current user along with indications of the number of members of each list. Furthermore, the current user may obtain additional information about such lists, such as by selecting the

name of the list of interest in the section 180 of Figure 1X. In this example, the user proceeds to select the "My Book Club" name control in the area 180 of the user information area 120 of Figure 1X, and the results of the selection are illustrated with respect to Figure 1Y. In particular, the information area 120 of Figure 1Y is updated to reflect information about the "My Book Club" list of the current user, including indicating the two other users that are currently members of the list. Similar information may be displayed about other lists of the user.

[0046] In addition, the lists of the current user may further be used in other manners, including as part of the specification of a custom current group of users for the current user. In particular, as illustrated in Figure 1Z, the current user has unlocked the user group selection control 115b and has selected the control 115c to cause the information section 115e to be displayed. The section 115e now includes an indication of the newly created user list "My Book Club," with both that list and the "favorite people" list showing indications of each having two members. In this example, the current user proceeds to select the "My Book Club" list in section 115e, as well as individual users Paolo M and himself. In response, the information 115d is updated to show that the custom current aggregation group of users includes two individuals and one list of one or more users. After the user selects the "OK" control in the section 115e to finalize the specification of the custom current group of users, Figure 1AA illustrates that the user aggregation group selection control 115b has been updated so that the icon for the current aggregation group of users control 115f reflects that the customer current user aggregation group includes two individuals and one list of one or more users.

[0047] Figure 1AB illustrates an additional example embodiment of various user-selectable controls that may be provided for a current user to obtain various user-supplied information about entities of interest. In this example, a "what's on my map?" control 150 is illustrated, with the control 150 shown as part of an expanded dropdown box that includes various other controls and information for the current user, including a user aggregation group selection control 150b and an area 15Oe with information about current entities of

interest. The aggregation group selection control 150b provides capabilities to allow the current user to select a particular current aggregation group, such that aggregated user-supplied information from the users of the selected aggregation group is made available to the current user in various ways {e.g., as aggregate ratings that are displayed for each of multiple current entities of interest in the map area and/or the list in the current entities information area 15Oe, such as to correspond to the icon legend 150a). In this illustrated embodiment, the currently selected aggregation group is indicated in area 15Od of the aggregation group selection control 150b (in this example, the current aggregation group is a system-defined group of users who have obtained a status of "Top Whrrlers," such as by frequently providing information about entities). The expanded dropdown box of the control 150 further includes a user inclusion group selection control 15Oi for use in selecting a particular current inclusion group, as discussed in greater detail with respect to Figure 1AC, but the control 15Oi is obscured in the example of Figure 1AB by the dropdown section of control 150b. In the illustrated embodiment, the aggregation group selection control

150b is shown in expanded form with a dropdown section (e.g., based on a prior activation by the current user of the control 150b, such as via the selection control 15Oq), and is providing multiple available aggregation groups for selection by the current user (e.g., groups previously created and populated by the current user, such as "My Friends" and "My Book Club"; groups that are automatically provided by the system but previously populated by the current user, such as "Favorite People"; groups previously created and specified by the system, such as "Top Whrrlers," "Me Only," and user "Darren Vengroff"; etc.). In this example, the current user is in the process of interacting with the aggregation group selection control 150b to change the current aggregation group, such as by selecting the "My Friends" group entry 150c from the dropdown section. Figure 1AC illustrates the results of the current user changing the aggregation group, with the newly selected current aggregation group "My Friends" indicated in area 15Od of the aggregation group selection control 150b, and with the icons displayed in the map 110 and in the current

entities list 15Oe reflecting the aggregate ratings of the current entities of interest according to the newly selected current aggregation group.

[0049] The illustrated current entities list 15Oe is shown in this example as a scrollable listing of current entities of interest for the current user, such as a listing of entities reflecting one or more attributes of interest to the current user, with some details about each of the corresponding entities displayed in this example listing (e.g., name, address, and aggregate rating information). In particular, in this example, the current entities list 15Oe includes 70,380 "places" (as indicated by information 15Ou of Figure 1AB), although only a small subset of those entities are currently visible in the list. Other of the entities are available to be scrolled into view in this example by the current user interacting with scrolling controls 150s and 15Ot. In addition, the current entities list 15Oe may provide various user-selectable controls for the current user, such that the current user may interact with the various controls to obtain additional information about one or more of the entities included in the listing. For example, in Figure 1AC, the current user is interacting with a user-selectable control that corresponds with a particular entity 15Of {e.g., via a mouseover interaction with the entity), causing an entity information indicator control 14Og (shown as an arrow icon) to be displayed to indicate to the current user where the particular entity is located on the map 110. It will be appreciated that in various other embodiments, the user may interact with the current entities list in various other ways, such as to obtain additional information about one or more of the entities in the list and/or to obtain other functionality related to the entities.

[0050] In addition, Figure 1AC illustrates user inclusion group selection control

15Oi that includes a dropdown control 15Og. The control 15Oi may be used by the current user to select one or more current user inclusion groups or to otherwise specify one or more attributes of interest, such that entities corresponding to the selected user inclusion group(s) and/or other specified attributes will be reflected in the entries included in the current entities list 15Oe and on the map 110, so as to filter out (or sift out) entities that do not match the selected user inclusion groups and/or other specified attributes. In particular,

with respect to Figure 1AD, which continues the example of Figure 1AC, the user has interacted with the dropdown control 15Og included in the group selection control 15Oi, so as to cause a list of various types of attribute categories to be displayed for selection by the user, with each attribute category having a corresponding triangle arrow control for use in obtaining information about additional attributes of that category. In this example, the illustrated types of attribute categories include two categories that correspond to one or more inclusion groups of users, those being attribute category 15Oj corresponding to ratings levels of inclusion group users and attribute category 150m corresponding to visits by inclusion group users, as well as one or more other types of attribute categories (e.g., average ratings, price, hours of operation, establishment type, etc.). Figure 1AE, which continues the example of Figure 1AD, illustrates the result of the current user interacting with the attribute category "Rated Highly By" 15Oj (e.g., via a mouseover interaction) to cause display of a corresponding user inclusion group list 150k that provides multiple user-selectable inclusion groups, which in this example are similar to or the same as the user aggregation group selections previously discussed with respect to Figure 1AB. Each of the inclusion groups of the list 150k may be selected by the current user for use in identifying entities that are rated highly by an aggregation of the users in the corresponding inclusion group. In this example, as illustrated in Figure 1AF which continues the example of Figure 1AE, the current user is selecting inclusion group "My Book Club" 1501 from the list 150k, with the results of the selection being illustrated in Figure 1AG, which continues the example of Figure 1AF. In particular, in the illustrated embodiment of Figure 1AG, the multiple current entities of interest displayed in the map 110 and the current entities list 15Oe have been filtered to include only entities that have been highly rated by users in the inclusion group "My Book Club." In addition, in this example, the various icons displayed in conjunction with the entities in the map 110 and in the current entities list 15Oe reflect aggregate ratings corresponding to users in the currently selected aggregation group "My

Friends", as shown in control 15Od and previously specified by the current user in Figures 1AB and 1AC. Furthermore, in Figure 1AG, the current user has decided to select an additional inclusion group, and is now interacting with the category "Visited By" 150m provided by the dropdown control 15Oi, so as to cause display of a list 15On that provides multiple inclusion groups for selection by the current user. In Figure 1AH, which continues the example of Figure 1AG, the current user is interacting with list 15On to select inclusion group "Favorite People" 150o, with the result of the selection being illustrated in Figure 1Al, which continues the example of Figure 1AH. In particular, Figure 1Al illustrates the results of the current user having selected the two user inclusion groups, corresponding to high ratings levels from users in selected inclusion group "My Book Club" and to visits by users in selected inclusion group "Favorite People," such as is indicated by attribute indications 15Op displayed in the control 15Oi. In this example, the multiple current entities of interest displayed in the map 110 and the current entities list 15Oe have been further filtered to include only entities that have been both highly rated by users in the selected inclusion group "My Book Club" and visited by users in the selected inclusion group "Favorite People," and with the various icons displayed for the multiple current entities continuing to reflect aggregate ratings provided by users in the current aggregation group "My Friends". The filtering has caused the current entities of interest to be reduced from 70,380 "places," as indicated by information 15Ou in Figure 1AB, to 34 "places," as indicated by information 15Ov in Figure 1Al. It will be appreciated that the current user may specify other attributes instead of or in addition to the ones illustrated here, such that the current entities of interest correspond to the other specified attributes. In addition, in this illustrated embodiment, the control 150 includes an additional events control 15Oh via which the current user may specify information about particular events of interest, so that event entities corresponding to particular user selections may be displayed in the map area 110 and/or the entities list 15Oe, although the current user does not interact with the events control 15Oh in this example. Furthermore, each of the attribute indications 15Op in this example may also

provide user-selectable controls, such as the small "x" displayed with the attribute indications 15Op, to allow the current user to remove a previously specified attribute of interest, such that the current entities of interest are no longer filtered by the removed attributes.

[0053] In addition, Figure 1Al illustrates an entity information indicator control

14Oh that corresponds to a particular user, which in this case is the current user. In particular, the entity information indicator control 14Oh is shown as an arrow-shaped icon, and corresponds to the current user in order to display location and optionally other status information on the map. In this example, the cursor has been moved over the control 14Oh, which has caused the information section 142g to be displayed in a manner similar to that previously described with respect to other figures, such as based on a mouseover interaction. The information section 142g in this example indicates that the current user (e.g., "You") was determined to be at the location of the Seed IP Law Firm entity at a particular indicated time.

[0054] Figure 1AJ illustrates off-map entity information indicator controls 160b and 160c, each of which contains an arrow pointing towards one or more particular entities whose locations are in geographical areas that are not currently visible on the map 110. In various embodiments, an off-map entity information indicator control may be displayed based on various selections by a current user. In particular, in the example embodiment, each of the off-map entity information indicator controls 160b and 160c indicates a general direction of one or more off-map locations of a corresponding one or more entities, as well as information about distance to the corresponding one or more entities. In addition, in this example, each off-map entity information indicator control is positioned along an edge of the map 110 that corresponds to the general off- map position of the corresponding one or more entities (e.g., being positioned accordingly on the top, bottom, left, or right edge of the displayed map if the corresponding entities have an off-map location in that respective direction, and being positioned at various points along the respective edge that correspond to the relative off-map locations of the entities with regards to that edge). For example, the illustrated off-map entity information indicator control 160b is

positioned on the right edge of the map 110 and at a point along the bottom portion of the right edge, so as to indicate the general direction and distance (e.g., 4.1 mi) of an off-map location of the corresponding entity.

[0055] In some embodiments, information related to multiple off-map entities may be consolidated into a single off-map entity information indicator control, such as when multiple off-map entities are located in a similar direction and/or distance with respect to the currently displayed map, and/or when one or more other consolidation criteria are satisfied. Such consolidation may provide various benefits, such as to avoid multiple nearby or overlapping off-map entity information indicator controls that each indicate one of the multiple off-map entities, as well as to group multiple entities that share one or more attributes or characteristics. In the illustrated embodiment, off-map entity information indicator control 160c includes indications of two entities (indicated by the displayed numeric entity indicators 1 and 2) that are located off the top of the currently displayed map 110 within an indicated range of distances (0-5 miles in this example). In addition, in this illustrated embodiment, a mouseover interaction has been performed for one of the displayed numeric entity indicators, which has caused the information section 142h to be displayed with respect to the corresponding consolidated entity included in the off-map entity information indicator control 160c. In this example, the information section 142h indicates that the corresponding entity is a "Starbucks Coffee" shop, which is also the entry 15Oz in the dropdown list 15Oe. In the illustrated embodiment, the other off-map entity information indicator controls similarly correspond to entities of interest that are included in the dropdown list 15Oe, but whose associated locations are not currently part of the displayed map. In various other embodiments, other information may be included in such an indicator control 142h and/or off-map entity information indicator control 160, such as names, addresses, aggregate ratings, etc. of one or more of the multiple entities.

[0056] In addition, in some embodiments, when the map 110 is repositioned and/or zoomed in or out such that the displayed geographical area of the map changes, the various off-map entity information indicator controls 160b and

160c may be updated accordingly to indicate new off-map locations of the corresponding entities relative to the changed displayed geographical area of the map. The update of the off-map entity information indicator controls 160b and 160c may include, for example, updating the relative positioning of the controls 160b and 160c and/or changing the indications of distance to the corresponding locations. In addition, in some embodiments and situations, one or more off-map entity information indicator controls may be merge into a single consolidated control and/or a single consolidated control may split into multiple controls {e.g., depending on the current relative location of the multiple previously consolidated entities to the current geographical area of the map). If the map is repositioned or zoomed such that a location of an entity corresponding to one of the off-map entity information indicator controls is now included in the displayed geographical area of the map, the corresponding off- map entity information indicator control may be removed from the display (or in the case of a consolidated control, the corresponding entity information may be removed from the control). For example, Figure 1AB includes an off-map entity information indicator control 160a, which indicates the location of the current user (e.g., "y° u ") i n a manner similar to the off-map entity information indicator controls discussed above. In Figure 1AJ, the map 110 has been repositioned and/or zoomed out such that the displayed geographical area of the map 110 now includes the location of the current user, indicated by entity information indicator control 14Oh, and the previously displayed off-map entity information indicator control corresponding to the current user is no longer displayed. In various embodiments, various other information and/or functionality may be provided by and/or presented by off-map entity information indicator controls in various ways. Figure 1AL illustrates an additional example GUI that may be used with at least some of the described techniques. In this example, the GUI is shown in abstract form, so as to illustrate possible additional user-selectable GUI controls that may be provided in at least some embodiments to allow a current user to specify one of multiple possible groups of users and/or to specify time-related information, such as via use of one or more GUI slider controls 190 and 195.

Figure 1AM illustrates additional details regarding one example embodiment of a slider control 195. It will be understand that such slider controls may in at least some embodiments be used with other of the example GUIs that have been described, such as with respect to some or all of the GUIs illustrated in Figures 1A-1AJ.

[0058] In particular, in the example of Figure 1AL, an abstract GUI 190 is illustrated, that includes an area 190a to hold various content (e.g., the map area 110, information display and selection area 120 and control tab area 130 of Figure 1A). Content that is displayed may include, for example, information about entities and other points of interest, such as on a map with each entity or point having an associated icon that represents a status of the entity or point. In this example, the represented statuses reflect the user-selectable position of the movable slider "thumb" 195a of the slider control 195, which in this example is referred to as the "social slider," as discussed in greater detail below. In addition, the particular entities or other points of interest that are displayed may be selected based at least in part on times associated with the entities or points, in combination with the user-selectable position of the movable slider "thumb" 198a of the slider control 198, which in this example is referred to as the "time slider," as discussed in greater detail below. In other embodiments, the content items may include various other types of information, including locations of and/or other information, for example, about events {e.g., movies, concerts, art showings, etc.) that have taken place or are scheduled to occur in the future, about places at which activities have or will take place, about people with a relationship to the current user, etc. Similarly, information about content items may be provided in manners other than via a map, such as a textual list.

[0059] In this example, the social slider control 195 may be used by the current user to select one or more groups of users, such as current user aggregation group or a current user inclusion group. When used to select a current user aggregation group, as in this example of Figure 1AL, the selected current user aggregation group will be used to generate aggregate information about the various entities and points displayed on the map, such that each entity and point may have a displayed status that corresponds to an aggregate rating of

for the entity or point or other aggregation information for the entity or point that is based on an aggregation of information from the users of the current user aggregation group. As is discussed in greater detail with respect to Figure 1AM, each slider control may have a number of positions to which the slider thumb may be moved, such as one of multiple defined positions that corresponds to an enumerated group of possible values (e.g., as represented by defined position 195a for the social slider control, which may be visually represented with a tick mark), or instead one of virtually infinite positions that corresponds to a range of possible values. In particular, Figure 1AM illustrates one possible example of the social slider control 195, with numerous defined tick marks 195a1 -195z1 being shown, and with the slider thumb 195a currently being at the defined tick mark 195e1. While not illustrated here, additional information could be displayed for the slider control 195, such as a textual label or other indication of the corresponding user group for some or all defined tick marks. Alternatively, as discussed in greater detail below, such additional information may not be displayed with the slider control in some embodiments in order to allow the slider controls to be small {e.g., to conserve space on a small display screen, such as for a mobile device). In addition, a separate message box may optionally be used to display such additional information at some or all times regarding the current selection of a particular slider control, which may be of use, for example, for a touch screen device so that the message box may remain visible while the user uses a finger or other pointing device to manipulate the slider thumb. In this example of Figure 1AL, the social slider control 195 has multiple defined positions corresponding to multiple possible enumerated values that may be chosen, such as to each reflect a distinct user group that may be selected. Such multiple possible enumerated values may be chosen in various manners in various embodiments, such as was previously discussed with respect to other figures in which multiple candidates for a user aggregation group are displayed to the current user. For example, the multiple possible enumerated values may represent different measurements of closeness or distance of user groups to the current user, such as via a "distance from me"

function that selects users for a particular user group based on the degrees of separation of the users from the current user in a social graph. Thus, for example, possible enumerated values may be as follows: the first possible enumerated value may represent just the current user (i.e., being 0 degrees of separation away from the current user); the second possible enumerated value may represent the users who are defined as friends of the current user (i.e., being 1 degree of separation away, as previously referred to as the "My Friends" group with respect to other example figures); the third possible enumerated value may represent the users who are friends of the current user's friends (i.e., being 2 degrees away); and so on, such as to eventually reach all users of the location-based information service. In other embodiments, the multiple possible values associated with the social slider control 195 may represent other types of information about possible groups of users. For example, the values along the slider could represent a degree of similarity between the current user and other users (e.g., based on personal information known about the users), a degree of geographical closeness between the locations of the current user and other users, etc. In addition, in some embodiments, a particular user may be able to customize the multiple enumerated values associated with the social slider control. For example, one possible Ul mechanism for allowing the current user to designate a particular group of people to a particular position on the social slider control could be to have the user select the slider thumb 195a without moving it for a period of time. If the slider thumb isn't moved during that time period, an "edit" mode would be entered where various modifications may be made, such as to allow existing tick marks and their associated user group values to be re-ordered, to allow new tick marks to be inserted onto the slider control, to allow a particular user group to be designated for a new and/or existing tick mark (e.g., by indicating an existing defined user group, by specifying criteria for use in selecting users for a corresponding group if they satisfy the specified criteria, etc.). Such an "edit" mode may further in some embodiments employ direct manipulation of the social slider control via the thumb 195a, such as by dragging the thumb to a particular position, selecting it

to designate an associated user group {e.g., by choosing from a displayed list of existing user groups), and inserting a tick mark at the current thumb position that represents the designated associated user group. Such an "edit" mode may further in some embodiments cause a new screen to be displayed that lists the user groups currently associated with the existing tick marks in an ordered list, and provides for modifying the social slider control by interacting with the ordered list. The social slider control may further be modified in other manners in other embodiments.

[0062] In the illustrated embodiment, an optional message box 190b is also displayed to provide information about the position of the social slider thumb 195a and corresponding user group selection, such as while the slider thumb is being moved, and optionally for some additional period of time after the slider thumb is released by the user or otherwise de-selected. For example, the message box 190b may display "trusted friends" while the slider thumb 195a is positioned over a defined position that represents a list of trusted friends (e.g., a subset of all the current user's friends for which the current user has indicated a privileged relationship, such as to allow the other user to obtain information about the current user's location and/or other information). Similarly, the message box 190b may display "everyone" while the slider thumb 195a is over a defined position that represents all users.

[0063] With respect to the time slider control 198, it may also have various time- related values that may be selected and modified in a manner similar to that previously described with respect to the social slider control 195. As one example, it may have multiple defined enumerated values that correspond to "one month ago," "one week ago," "yesterday", "today", "tomorrow," "one week ahead", "one month ahead," etc. As will be appreciated, such a scale is not linear, although in other embodiments a linear scale may be used. In addition, in some embodiments, a value representing "today" is in the middle of the time slider, with one direction representing the future and the other direction representing the past, while in other embodiments the "today" representation may not be in the middle (e.g., if the past and future are not represented in a symmetric manner), or alternatively one of the past and future may not be

represented at all. In addition, instead of labels such as "today" and "tomorrow", times may be represented in other manners in other embodiments, such as by using calendar dates or relative time to the current time (e.g., "+1 day", "+3 days", etc.). Furthermore, in a manner similar to that previously described with respect to the social slider control 195, the optional message box 190b may be used to show information regarding values of the time slider control 198 when the slider thumb 198a is selected.

[0064] In addition, the time slider control 198 may be modified in various manners in various embodiments. For example, in some embodiments, tick marks may not be displayed for the time slider 198, even if tick marks are used for the social slider 195. In addition, for example, if an end of the time slider control 198 is reached with the movable slider thumb 198a, maintaining the selection of the slider thumb 198a in that position for a period of time may in some embodiments cause the possible selectable values for the time slider to continue to move past the last possible value that was initially represented, with the message box 190b optionally assisting the user in tracking the current selectable value by displaying that value. In addition, in some embodiments, maintaining the selection of the slider thumb 198a at the end of the time slider control 198 may instead cause a date picker control to be displayed in the message box 190b or elsewhere to allow the current user to select a particular date or date range (in the future or past, depending on which end of the time slider control that the slider thumb is at).

[0065] As previously noted, the time slider control 198 may be used to control a time or time range for which other information of interest is displayed. As one example, the time slider control 198 and the social slider control 195 may be used in conjunction, such as to show information about users of a user group currently selected via the social slider control 195 at one or more times currently selected via the time slider control 198 {e.g., to see where my friends plan to be next week, by selecting the "my friends" user group via the social slider and by selecting the "next week" time period via the time slider, or to similarly see where they were yesterday by a corresponding time slider control selection). In addition, with respect to events that occur at particular places

during specific time periods, the time slider control may be used to see the events that have or will take place at a selected time. Similarly, the time slider control may be used to obtain time-related status information for other entities or points at selected times {e.g., whether a business entity is open at a selected time, where a user entity is located at a selected time, etc.). In at least some embodiments, as a slider thumb is moved, displayed information for content items may be refreshed or otherwise modified in the GUI 190 in a realtime or near-realtime manner, even if a final selection of a position for the slider thumb has not yet been made. Such a realtime or near-realtime update may be achieved in various manners in various embodiment. For example, if a network connection to one or more remote server devices that provide the information to be displayed is available and sufficiently fast, it may be possible to dynamically retrieve new information and display it with sufficiently delay to achieve realtime or near-realtime updates. In addition, in some embodiments, sufficient information may be received in advance to allow the display to be modified for some or all possible values of a slider control other than a currently selected value, such as if the response time of retrieving such data from a remote source is not sufficiently realtime. For example, some or all content items may each have associated metadata or other additional information that corresponds to multiple distinct possible values for one or more slider controls, such as to allow the information displayed for such a content item to be updated as a slider control is modified without retrieving any additional data from a remote source. For the social slider control 195, such additional information may correspond to each possible group of people that may be selected via the slider control. Similarly, for the time slider control 198, such additional information may correspond to each possible time that may be selected via the slider control. In other embodiments, particular values for particular content items and particular slider control possible values may not be received in advance, but underlying data that is sufficient to calculate such particular values for the content items may be received in advance and dynamically calculated as the slider control is manipulated.

[0067] It will be appreciated that such slider controls may be used in other manners and for other types of data in other embodiments, and that some embodiments may not use such slider controls. More generally, while particular GUI controls, information arrangement, and functionality have been illustrated with respect to Figures 1A-1AN so as to provide illustrative examples of information and functionality corresponding to at least some of the described techniques, it will be appreciated that other graphical user interface controls, arrangements, and functionality may alternatively be used in other embodiments.

[0068] Figure 2 is a block diagram illustrating an embodiment of a server computing system 200 that is suitable for performing at least some of the described techniques, such as by executing an embodiment of a location-based information system, which in this example is the Location-Based User Information Aggregation ("LBUIA") system 240. The computing system 200 includes a central processing unit ("CPU") or other processor 205, various input/output ("I/O") components 210, storage 220, and memory 230, with the illustrated I/O components including a display 211 , a network connection 212, a computer-readable media drive 213, and other I/O devices 215 (e.g., keyboards, mice or other pointing devices, microphones, speakers, GPS receivers, etc.). The computing system 200 and software system 240 may communicate with other computing systems via a network 280 {e.g., the Internet, one or more cellular telephone networks, etc.), such as various fixed- location client devices 282, vehicle-based mobile clients 284, user-carried mobile client devices 286, data sources 288, and third-party computing systems 290. In some embodiments, some or all of the client devices 282, 284 and 286 may be GPS-enabled devices that include GPS receivers, and/or may include other components that enable determination of the locations and/or other status of the client devices in other manners.

[0069] In the illustrated embodiment, an embodiment of the LBUIA system 240 executes in memory 230 in order to perform at least some of the described techniques, such as to automatically facilitate the obtaining and sharing of various types of user-supplied information about places and people of interest.

In particular, in this example embodiment, the system 240 may interact with various types of client devices in various ways and at various times, such as non-mobile fixed-location client devices 282, vehicle-based mobile clients 284 and/or user-carried mobile client devices 286. For example, users (not shown) of the various client devices may interact with the LBUIA system to supply and/or obtain user information about entities, such as via a map-based GUI and/or other type of GUI or interaction. The LBUIA system may obtain maps for one or more geographical areas and information about various types of entities in one or more geographical areas, such as from one or more of the data sources 288 or other third-party computing systems 290. The LBUIA system then stores such map and entity information in the map information database ("DB") data structure 221 and entity information database data structure 223 on storage 220, respectively, and uses the stored information to provide information to users. In addition, the LBUIA system stores information about some or all users who interact with the system 240 in a user information database data structure 225 on storage 220, such as to reflect information for a user that is obtained during an initial registration process and/or that is later gathered from the user or other sources. A user of the LBUIA system may further supply various information about entities of interest and specify one or more groups of users that have one or more types of relationships with the user, with such information stored in the user-supplied information database data structure 227 and the user-specified group information database data structure 229 on storage 220, respectively. As described in greater detail elsewhere, the LBUIA system may then use the information in the various databases 221 -229 to provide various functionality to users of the LBUIA system, such as to correspond to some or all of the described techniques. In addition, in at least some embodiments, the system 240 may obtain information about locations and/or other status information for the client devices and/or their users in various ways, such as by obtaining such location information from the client devices (e.g., from GPS-enabled client devices that determine their own location, such as to obtain the location information by periodically polling those client devices or otherwise requesting the data from

those devices or by those devices initiating sending of the data to the system 240; by obtaining the data from another data source that receives the data from those client devices, such as one or more data sources 288; based on information that is manually specified by a user of the client device and/or that is manually indicated by a user of the client device to be provided to the LBUIA system; etc.) and/or from one or more other sources (e.g., from a third-party computing system 290 that provides service to or otherwise interacts with the client devices, such as a provider of cell phone service to cell phone devices; from a third-party computing system 290 that detects the presence of a client device at a particular location, such as a retail location that wirelessly detects the device location via an RFID or WI-FI signal when a user of the device visits the retail location, or a road sensor that detects a vehicle client device at a particular location, such as via an RFID signal or using other types of sensors; etc.). After location and/or other status information is obtained for a user (e.g., for a client device of the user), the system 240 in the illustrated embodiment stores the obtained information in the user information database 225 along with other related information for the user. In addition, in this example one or more optional other programs 235 may also execute in memory 230, such as to use user-supplied information about entities and/or other information about users in various ways (e.g., to provide services to businesses and other entities based on user-supplied information and/or other information about users, to provide various types of information and/or functionality to users and/or client devices based on their location, etc.). For example, users of the various clients and/or third-party computing systems may supply requests for various information (e.g., by supplying requests for local search information), and may receive appropriate responses from the system 240 and/or one or more of the other programs 235. As discussed in greater detail elsewhere, the information supplied to users may include various types of aggregate information based on a user-selected group of multiple users, such as aggregate ratings for businesses and other entities based on information for a currently selected user aggregation group, and/or

information about businesses and other entities that are selected based on information provided by users in a currently selected user inclusion group.

[0072] The various client devices 282, 284 and 286 may take various forms in various embodiments, and may generally include any communication devices and other computing devices capable of making requests to and/or receiving information from the system 240. For example, the vehicle-based clients 284 in this example may each be a computing system and/or communication system located within a vehicle that receives data from system 240. In some cases, the client devices may execute interactive console applications {e.g., Web browsers) that users may utilize to make requests, while in other cases at least some such determined information may be automatically sent to the client devices {e.g., as text messages, new Web pages, specialized program data updates, etc.) from the system 240.

[0073] The data sources 288 may include a variety of types of sources of data that may be utilized by the system 240, including map services and/or databases that provide information regarding businesses, individuals and other entities. The third-party computing systems 290 include one or more optional computing systems that are operated by parties other than the operator(s) of the system 240, such as parties who receive determined or identified information from the system 240 and who make use of the data in some manner.

[0074] It will be appreciated that the illustrated computing systems are merely illustrative and are not intended to limit the scope of the present invention. Computing system 200 may be connected to other devices that are not illustrated, including through one or more networks such as the Internet or via the Web, one or more cellular telephone networks, etc. More generally, a "client" or "server" computing system or device may comprise any combination of hardware or software that can interact and perform the described types of functionality, including without limitation desktop or other computers, database servers, network storage devices and other network devices, PDAs, cellphones, wireless phones, pagers, electronic organizers, Internet appliances, television- based systems {e.g., using set-top boxes and/or personal/digital video

recorders), and various other consumer products that include appropriate intercommunication capabilities. In addition, the functionality provided by system 240 may in some embodiments be distributed in various components (not shown), and the functionality of the illustrated systems may not be provided and/or other additional functionality may be available. In addition, while various items are illustrated as being stored in memory or on storage while being used, these items or portions of them can be transferred between memory and other storage devices for purposes of memory management and/or data integrity. Alternatively, in other embodiments some or all of the software components and/or modules may execute in memory on another device and communicate with the illustrated computing system via inter-computer communication. Furthermore, in some embodiments, some or all of the components may be implemented or provided in other manners, such as at least partially in firmware and/or hardware, including, but not limited to, one or more application-specific integrated circuits (ASICs), standard integrated circuits, controllers {e.g., by executing appropriate instructions, and including microcontrollers and/or embedded controllers), field- programmable gate arrays (FPGAs), complex programmable logic devices (CPLDs), etc. Some or all of the system components or data structures may also be stored (e.g., as software instructions or structured data) on a computer- readable medium, such as a hard disk, a memory, a network, or a portable media article to be read by an appropriate drive or via an appropriate connection. The system components and data structures can also be transmitted as generated data signals (e.g., as part of a carrier wave or other analog or digital propagated signal) on a variety of computer-readable transmission mediums, including wireless-based and wired/cable-based mediums, and can take a variety of forms (e.g., as part of a single or multiplexed analog signal, or as multiple discrete digital packets or frames). Such computer program products may also take other forms in other embodiments. Accordingly, the present invention may be practiced with other computer system configurations.

[0076] Figure 3 is a flow diagram of an example embodiment of a Location-

Based User Information Aggregation routine 300. The routine may be provided by, for example, execution of an embodiment of the Location-Based User Information Aggregation system 240 of Figure 2 or other embodiment of a location-based information system, such as to automatically facilitate obtaining and sharing various types of user-supplied information about entities of interest. In the illustrated embodiment, users may be able to request and receive maps of geographical areas, with various types of information displayed on a map about at least some entities of interest whose locations are associated with the map, while in other embodiments information may be provided in other manners. Furthermore, in the illustrated embodiment, a user may designate or otherwise define groups that include other specified users, and may select a current user aggregation group for use in the sharing of user-supplied information, such that only information from users of the current user aggregation group is provided to the user for at least some types of information.

[0077] The illustrated embodiment of the routine begins at block 305, where an indication related to a user is received. The routine continues to block 310 to determine whether user input is received to specify one or more user groups. If so, the routine continues to block 315 to execute a User Group Selection routine to perform actions such as to define, modify, and/or select various user groups of interest to the user, such as user aggregation groups and/or user inclusion groups, and with one example embodiment of such a routine being described in greater detail with respect to Figure 4. After block 315, or if it was instead determined in block 310 that an indication is not received to specify user groups, the routine continues to block 320 to determine whether other user input was received. If so, the routine continues to block 325 to receive and handle other user input. For example, in some embodiments, the routine may receive user input of a geographical location of a user (e.g., the user's geographical location, or other geographical area of interest to the user), which may be stored for later use; user input of information related to an entity of interest (e.g., reviews, ratings, etc.), which may be stored for later use; user input of other information of interest to the user, such as one or more attributes

related to entities of interest to the user; user input of user registration and/or configuration information; etc. Such user input with respect to blocks 310 and 320 may be received in various manners, such as by a user interacting with a map previously displayed to the user by the routine, by a user interacting with another form of GUI and/or user-selectable controls previously displayed to the user, by a user programmatically providing information via an API provided by the location-based information service and interacted with via a software application executing on a client device used by the user, etc.

[0078] After block 325, or if it was instead determined in block 320 that other user input was not received, the routine continues to block 330 to determine a particular geographical location of the user and to obtain a map corresponding to the geographical location. For example, the routine may determine the geographical location of the user based on input concurrently or previously received from the user (e.g., at blocks 305 or 325), and/or obtained from other sources (e.g., a client device used by the user) as discussed elsewhere, and may obtain the map corresponding to the determined geographical location from various sources.

[0079] After block 330, the routine continues to block 335 to determine one or more entities of current interest to the user and retrieve information associated with the determined entities of current interest. For example, in the illustrated embodiment, the routine may determine one or more entities of current interest corresponding to the determined geographical location of the user. Furthermore, particular entities of current interest may further be selected based on one or more currently selected user inclusion groups (e.g., user inclusion groups specified in routine 315), such that possible candidate entities of current interest are filtered (or sifted) to reflect whether one or more of the users in a selected user inclusion group have visited, rated, or otherwise interacted with that particular business or other entity in a manner specified by the user, and/or to reflect other attributes specified by the user (e.g., specified by the user in block 325), as discussed elsewhere. In addition, the routine may retrieve various information associated with the determined entities of interest, such as geographical location information of the current entities, names,

addresses, etc. After block 335, the routine continues to block 340 to determine aggregate and/or other information of interest for the current entities of interest, such as based on one or more currently selected user aggregation groups {e.g., one or more user aggregation groups selected by the user in routine 315). For example, the routine may in block 340 aggregate user- supplied information of the currently selected user aggregation groups (such as aggregate ratings, etc.) for each of the determined current entities of interest, for example, such as if a sufficient amount of aggregate information is available for the entity, as variously described elsewhere.

[0080] After block 340, the routine continues to block 345 to optionally determine other information of interest to the user, such as based on user preferences, a search or other request received from the user, previously defined social relationships with other users, etc. In block 350, the routine then provides the obtained map and other determined information to the user, such as various indications corresponding to at least some of the current entities of interests {e.g., based on user-supplied information of aggregation groups, etc.), location information of at least some of the current entities of interest, etc., such that a variety of types of information about at least some of the current entities of interest may be displayed on a map for the user as previously described. In block 355, the routine then optionally performs other administrative activities, such as to manage users' accounts with the location-based information service, periodically analyze information obtained from users and/or other sources about entities of interest, update maps and other information about possible entities from external sources, etc. The routine next continues to block 395 to determine whether to continue, such as until an explicit indication to terminate is received. If it is determined to continue, the routine continues to block 398 to wait for user input or another indication {e.g., a timeout) to continue to block 305, and otherwise continues to block 399 and ends.

[0081] Figure 4 is a flow diagram of an example embodiment of a User Group

Selection routine 400. The routine may be provided by, for example, execution of a component of an embodiment of the location-based information service, and may, for example, be initiated based on execution of block 315 of Figure 3.

[0082] In the illustrated embodiment, the routine begins at block 405, where an indication is received from a user, such as user input indicating a type of action to be performed (e.g., selection of a user-selectable group related to selecting a user aggregation group or user inclusion group, as previously discussed with respect to example GUIs of embodiments of the location-based information service). In block 410, the routine determines whether the received indication is to define or modify one or more user groups, such as for later use as a user aggregation group and/or user inclusion group. If so, the routine continues to block 415 where the user may define or modify one or more user group(s), such as by selecting various users to include in (or remove from) a defined custom group of users.

[0083] After block 415, or if it was instead determined at block 410 that an indication was not received to define or modify user groups, the routine continues to block 420 to determine whether an indication is received to select a current user aggregation group for the user. If so, the routine continues to block 430 to determine whether one or more candidate groups of users currently exist (e.g., such as groups of friends, user-specified custom groups, various preconfigured groups of users, etc.) and the user has indicated to select such an existing group, and if so continues to block 435. In block 435, the routine optionally presents information about existing options to the user, and receives an indication of one or more selections by the user of one or more of the existing groups of users. For example, in various embodiments, aggregation groups may be selected in various ways, such as previously described with respect to example embodiments of GUIs for the location-based information service. If it is instead determined at block 430 that no candidate user groups currently exist or the user indicates to create a new custom user aggregation group, the routine continues to block 440 to optionally present options to the user (e.g., indications of possible candidate users to add to the custom group), and receives one or more selections from the user to create a custom aggregation group of users for use as the currently selected user aggregation group. If it was instead determined at block 420 that an indication to select a current user aggregation group is not received, the routine continues

to block 425 and determines to retain the current user aggregation group (if any) that was previously selected by the user, or in the absence of such a current user aggregation group, selects a default user aggregation group (or no user aggregation group) for the user.

[0084] After blocks 425, 435, and 440, the routine continues to block 450 to determine whether an indication is received to select a current user inclusion group. Blocks 450-470 for use in selecting a user inclusion group are similar to blocks 420-440 for selecting a user aggregation group, although in other embodiments user inclusion groups may not be selected and use. In particular, if it is determined in block 450 that a user inclusion group is to be selected, the routine continues to block 460 to determine whether one or more candidate groups of users currently exists and if the user has indicated to use such an existing group. If so, the routine continues to block 465, where it optionally presents information about existing group options to the user, and receives indications of one or more selections by the user of one or more of the existing groups of users. If it is instead determined at block 460 that no candidate user groups currently exist or the user has indicated to create a custom group, the routine continues to block 470 to optionally present options to the user for the custom group, and receives one or more selections from the user to create a custom user inclusion group for use as the currently selected user inclusion group. If it was instead determined at block 450 that an indication to select a current user inclusion group was not received, the routine continues to block 455 and determines to retail the previously selected user inclusion group (if any) as the current user inclusion group, or otherwise selects a default user inclusion group (or no user inclusion group) for the user.

[0085] After blocks 455, 465, and 470, the routine continues to block 490 to store indications for later use of any user aggregation groups and/or user inclusion groups selected during the routine, and/or of any user groups that were defined or modified during the routine. Such stored information may be later used in routine 300 of Figure 3 for determining entities of current interest and/or aggregate information corresponding to entities. After block 490, the routine continues to block 499 and returns.

[0086] Those skilled in the art will appreciate that in some embodiments the functionality provided by the routines discussed above may be provided in alternative ways, such as being split among more routines or consolidated into fewer routines. Similarly, in some embodiments illustrated routines may provide more or less functionality than is described, such as when other illustrated routines instead lack or include such functionality respectively, or when the amount of functionality that is provided is altered. In addition, while various operations may be illustrated as being performed in a particular manner {e.g., in serial or in parallel, synchronously or asynchronously, etc.) and/or in a particular order, those skilled in the art will appreciate that in other embodiments the operations may be performed in other orders and in other manners. Those skilled in the art will also appreciate that the data structures discussed above may be structured in different manners, such as by having a single data structure split into multiple data structures or by having multiple data structures consolidated into a single data structure. Similarly, in some embodiments illustrated data structures may store more or less information than is described, such as when other illustrated data structures instead lack or include such information respectively, or when the amount or types of information that is stored is altered.

[0087] From the foregoing it will be appreciated that, although specific embodiments have been described herein for purposes of illustration, various modifications may be made without deviating from the spirit and scope of the invention. Accordingly, the invention is not limited by the exemplary details. In addition, while certain aspects of the invention may be now or later presented in certain claim forms, the inventors contemplate the various aspects of the invention in any available claim form. For example, while only some aspects of the invention may be initially recited as being embodied in a computer-readable medium, other aspects may likewise be so embodied.