Monday, May 21, 2007

KML export for Google Maps with Seagull

I have spent a little time with sitemap export for Seagull, and this is just a variation on same theme.
Have made a manager & few library extensions for Seagull, that makes an export to KML xml format defined by google. Find out more about it here.
In few words it defines a layer in xml format that can be displayed on Google Maps, you can display it on your own site.
Advantages of using it are:
  • it can drive you traffic from Google Maps searches,
  • geotargets your content as well because it supports html (you can make geotargeted news engine from it). The library supports deploying your own strategies so customization/extendibility wont be a problem.
  • it is discovered/indexed/searched by Google, imagine it another type of sitemap.
  • it is better solution for filtering geotargeted content than implemented in googlemaps module of seagull
  • provided access to Google`s geocoder service (the current implementation in googlemaps module supports Yahoo`s geocoding service), but decided to write one for Google because of following reasons: did some testing for canada & had some problems with Yahoo (for US only they are pretty much the same), SPOF (Single Point of Failure) because smaller number of services you depend on is better. This part of code is not clean yet, thats holding back the release, but it should support geocoding subject harvesting strategies (did I mentioned that I like strategy pattern? :), then it would be suitable for production use.
The database structure remained pretty much the same as in current implementation, except that I added a text field for storing KML response from Google for future use (for this reason I needed XML_Serializer package from PEAR, to be able to interpret mentioned response).

Estimated Release date: I plan to make it soon, lets say 2 weeks, I am involved in other places at the moment, but will make a push.

I am interested about your ideas for extending it. Also would like to mention name of Steven Stremciuc who did the original googlemaps module, who has done great job.

No comments: