This is a Google Maps app that displays GeoRSS files. It implements two different varieties of GeoRSS, plus all of Yahoo!'s enhancements to GeoRSS including address geocoding, plus a couple of things from basic RSS that Yahoo! missed. Feel free to use it with your own GeoRSS and Yahoo! Simple Map files.
GeoRSS is a simple XML-based file format used for adding location information to data items. It is based on RSS 2.0, plus a couple additional elements - <geo:lat> and <geo:long> - that let you specify the geographical location of each <item> element.
There's also another variety of GeoRSS called Simple GeoRSS, which uses a different syntax - <georss:point> - for the location info.
Yahoo! took GeoRSS and added a bunch more elements of their own. The most significant difference is that the latitude and longitude elements are optional in Yahoo!'s version. If you prefer, you can specify the location by street address. Yahoo! then does geocoding behind the scenes to turn the addresses into latitude and longitude.
Creating a Yahoo! Simple Map is just a matter of writing a fairly simple XML file, while creating even the simplest Google Maps app requiries writing a program in JavaScript. Since most people are not programmers, you might expect Yahoo! Simple Maps to vastly outnumber Google Maps apps. In fact, the reverse seems to be true: there are many more Google Maps apps than Yahoo! Simple Maps. Why? I think it's just because Google Maps is prettier and has a more pleasant user-interface. Yahoo! eventually decided the same thing, and came out with AJAX and Flash APIs that are just as nice as Google's. But they are also as complicated to program as Google's.
So, this page tries to give you the best of both worlds. It reads the same XML data files used by Yahoo! Simple Maps, does the same geocoding, but it displays the data as a Google Map. This lets you combine the ease of creating a Yahoo! Simple Map with the nice user-interface of a Google Maps app.
This page also does automatic clustering. This means if your map has a whole bunch of markers on it, then instead of trying to display them all and slowing down to a crawl, the markers will get grouped together into cluster markers. If you zoom in further so that fewer markers are in the map area, they will show up as individual markers again.
Here are some sample maps:
Yahoo! Traffic Alerts near |
If you have an example you'd like to show off in the list above, just let me know.
To use the map page, you first make a GeoRSS XML file and put it on a web server somewhere. Then you take the URL for the map page and the URL for your XML file and stick them together, like so:
//acme.com/GeoRSS/?xmlsrc=//example.com/yourxmlfile.xml
You can display more than one XML file in the same map if you like:
//acme.com/GeoRSS/?xmlsrc=//example.com/xmlfile1.xml&xmlsrc=//example.com/xmlfile2.xml
Here's an annotated sample GeoRSS file showing all the different elements implemented by this map page, in context. Most of them are optional. For more details, follow the links in the key:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Maps courtesy of the Google Maps API and the Yahoo! Simple Maps API.
ACME Laboratories