Design and implement an API for tiled vectorial support of POIProxy for gvSIG Mini
Describe your idea
- 1. Introduction
Currently there are plenty of services that provide geo-located data: Twitter, Buzz, Panoramio, Flickr, Wikipedia, YouTube, LastFM, Minube, Foursquare, etc. All of them have several things in common (Use of a REST API, JSON as a format for responses, ...) and several different behaviours. POIProxy is a server that fills the gap between all that services and a map client homogenizing the requests and the responses to those services.
- 2. Background
A similar idea was proposed in 2011 and ended up with the development of POIProxy, but gvSIG Mini still lacks support to load POIProxy layers or provide geocoding and reverse geocoding, that makes gvSIG Mini less atractive for the general public. The vast majority of negative comments about gvSIG Mini on Google Play are related to the lack of a good geocoder, so this idea would be a good improvement for gvSIG Mini.
- 3. The idea
The idea consists in creating a brand new POIProxy client based on gvSIG Mini that will provide access to a set of geo-location services.
Technically this project pretends to provide gvSIG Mini with a simple API to support POIProxy services. The API will offer transparent support to load a geo-located service, make requests as the user navigates the map, cache data (into memory and disk in standard GeoJSON) to speed up the data-load, and build the user interfaces to show extra data, such as additional info, media (images, video), etc.
The user will have the chance to load one or more POIProxy layers that will make requests to geo-location services as the user navigates the map. That functionality will offer social and contextual information related to the location of the user.
On the other hand, gvSIG Mini don't provide any geocoding nor reverse-geocoding service. POIProxy is a good candidate to provide those services.
- 4. Project plan (detailed timeline: how do you plan to spend your summer?)
The project plan conforms to the GSoC timeline:
- Before 17 of June: In person meetings with my mentor to clearly define the big picture and concrete tasks of the project. Also set up by my own the gvSIG Mini workspace, read documentation, etc.
- From 17 of June to 10 of July : Develop the gvSIG Mini API to connect with POIProxy. By then gvSIG Mini would have support to load POI layers from POIProxy
- From 11 of July to mid-term : Add support for geocoding and reverse-geocoding services.
- From mid-term to 31 of August: Build user interfaces to load POIProxy services, perform searches, selection of POIs support and show their related information such as images, video, etc.
- From 1 of september to final evaluation: Stabilization period, package the app and go to market.
- 5. Future ideas / How can your idea be expanded?
Provide an API to support POIProxy will open a new set of possibilities to show POIs in gvSIG Mini, even it will become a simple WFS client for point features.
Recently the OGC has contributed a new standard, OpenPOI. Having developed the API to support POIProxy, gvSIG Mini will also become the first OpenPOI client for Android.
REST services are becoming more and more popular and JSON has become the "de facto" standard for services on the web. So new services that conform to those features will be automatically supported by gvSIG Mini through POIProxy.