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
