Hi Henri,

thanks for your proposal.

On 11/24/2010 01:03 PM, Henri Bergius wrote:

> Introduction
> ============
> The purpose of this library is to make it easier for PHP developers to
> work with geolocation. Geolocation is one of the emerging trends in
> web development, with new possibilities rising from browser
> geolocation support. This library focuses on dealing with actual
> real-world locations and relations between them, not with map
> visualization.

> Requirements
> ============
> In the initial version the location library should only deal with
> geolocated points. To build full geoinformation systems there will be
> need for lines, connections and areas, but these can be added in later
> iterations of the library. The library should provide the following
> services:

> Spot
> ----
> A spot is an actual location on a map. This consists of WGS-84
> latitude and longitude. Optionally spots may have an altitude,
> timestamp, accuracy and a human-readable description.
> 
> Spot should also be able to calculate distance and direction to other
> spots, and to provide a bounding box around them at a given radius.
> 
> For display purposes spots also need to provide a way to convert them
> to pretty-printed human-readable coordinates.

I'm not sure if it is a good thing to couple additional data to a spot
from scratch. Wouldn't it be better to keep this part open to the user,
so that he can extend it to fit his needs?

> Geocoding
> ---------
> Geocoding is a service for converting human-readable locations to
> actual coordinates (spots). There should be an interface for geocoding
> utilizing various online geocoding services like GeoNames and
> OpenStreetMap Nominatim. Users of the component should be able to
> create their own geocoding service implementations.

> Reverse geocoding
> -----------------
> Reverse geocoding is a service for converting actual coordinates
> (spots) into human-readable locations. There should be an interface
> for reverse geocoding utilizing various online geocoding services like
> GeoNames and OpenStreetMap Nominatim. Users of the component should be
> able to create their own reverse geocoding service implementations.

> IP geocoding
> ------------
> IP geocoding is a service for converting an IP address to an
> approximate geographical location of the network. This can be used to
> locate users of a website for instance, in cases where browser
> geolocationing is not possible. The IP geocoding interface should be
> able to talk to at least HostIP web service to perform geocoding.

I'm not sure, if the service based stuff fits into a base component,
depending on its focus. I would imagine that the pure Location component
should only deal with mathematical representations of geo-data and maybe
leave the geo coding parts to a tiein.

What do you and the others think?

AFAIK Derick has also experience in the geo location area from his
latest work with OSM. So I CC him explicitly to get involved here.

Regards,
Toby

-- 
Tobias Schlitt        http://schlitt.info        GPG Key: 0xC462BC14
Want to hire me? Need quality assurance?            http://qafoo.com
eZ Components are Zeta Components now!          http://bit.ly/9S7zbn

Reply via email to