Location use cases and requirements
Location can be used in a variety of ways, for example:
- Metadata for a photo taken with the device
- Metadata for voice notes taken on the move
- Indicate the current position on a map
- Highlight nearby points of interest
- Look for nearby restaurants etc.
- As part of location-based games
- Recorded tracks of your passage through city or countryside
- View the locations of your friends
- Identify areas where many people are congregating
- Identify traffic flows and congestion
These use cases range from applications involving the location of just the user's device, to applications that collect and process location information from many users.
Some location sensing methods are local to the device, e.g. GPS, while others involve remote sensors, e.g. triangulation techniques based upon measurements by cellular base stations.
The location data may be needed locally by a web page script running in the device, or remotely as in a website that provides results based upon the location of the device that originated the HTTP request.
In the case where a web page includes a link to a location-based service, the link could be associated with metadata that instructs a proxy server to provide location data to the requested HTTP server. Such an approach can be made to work even for existing mobile handsets without either scripting or GPS support.
Location should be exposed in a way that is independent of the sensing techniques involved in determining the location.
There should be a means for web page scripts to subscribe to a stream of location-based events raised locally or remotely.
The location should be provided with an estimate of the uncertainty. In addition to measurement uncertainty, there may be difficulties in converting the raw coordinates into textual based formats such as postal codes, street addresses, and named landmarks.
It should be possible to make use of remote services for processing location data in a variety of ways, e.g. converting to textual based formats as suits the need of the web application.
Security and privacy are key concerns and need to be addressed to realize the potential for location-based services, see trust models.