= !Geocoder = Initial work done by by Zubin Mithra (zubin71) Followup work done by Michael Matthews (mmatthews) A python module for a geolocator using * Google API * Yahoo API * !GeoNames Input: service_name, location name Output format: JSON (easy front end parsing) == Status == Basic Google/Yahoo webservice calls are in {{{modules/s3gis.py}}}. These have been tied to the front-end [wiki:BluePrintGISLocationsHierarchy#LocationSelector Location Selector]. !GeoNames support needs adding (there is some !GeoNames functionality in S3GIS). == API == Output most likely to be used in: !OpenLayers == !ToDo == A simple controller function would be nice to access the module classes 1. functionality for BBOX 2. provision to get results from all services 3. provision to get results in multiple formats(xml, JSON, kml) 4. support caching 5. administration option to selection the geocoding service (Google, Yahoo, or both). 6. geonames tie-ins in the location selector 7. better hierarchical selector fill-in for selected results. That is, fill in the country and province/state. Filling in the country will require translating the two or three-letter country code to the real country name that appears int the hierarchy. 8. Make the Google and Yahoo controller services merely wrappers around the more robust geocoding classes (per a comment in those controller). Also see: * http://nominatim.openstreetmap.org * Review of Geocoders: http://lin-ear-th-inking.blogspot.com/2010/03/open-source-geocoders.html [wiki:BluePrintGISSearch] ---- [wiki:BluePrintGeographicInformationSystems GIS BluePrints]