Continuing the recent geo-fixation trend evident on this site, this article shares the results of a slightly deeper delve into GeoRSS and looks at a great browser add-on that offers auto-discovery of geotagged content in webpages and in some feeds.
What is GeoRSS?
Wikipedia describes GeoRSS as "an emerging standard for encoding location as part of an RSS feed." It also encodes location in Atom feeds, and rather than the singular "standard" there are actually two variations (GeoRSS-Simple and the more advanced GeoRSS-GML). A third encoding, W3C Basic Geo, is depreciated but still in use (e.g. by Flickr; see below).
I happen to use the Geo Mashup plugin for WordPress to geotag articles on this site. As well as adding appropriate metadata tags into the head of location-specific posts, the plugin automatically adds GeoRSS-Simple encoding to my feeds. The GeoRSS-Simple feeds are identified with this namespace declaration in the header:
xmlns:georss="http://www.georss.org/georss"
Each item in the feed will be marked-up with a coordinate pair separated by a whitespace and enclosed in a point tag. For example:
<georss:point>50.185676 8.464943</georss:point>
And that's it. So what can you do with it?
GeoRSS in your blog feed
In WordPress you can create a feed for any category or any tag just by putting /feed/ at the end of the URL. This is ideal if you have a dedicated category or tag for geotagged content. In my case I had geotagged content spanning several categories, so I decided to go back and add the tag "geotag" to all my geotagged articles across all categories. This was actually pretty easy because all such articles could be readily identified by the Geotag Icon overlay on the category image—another great reason for you to start using it :-)
This done, I could now offer a dedicated feed for all geotagged content on the basis of the new tag:
http://www.bioneural.net/tag/geotag/feed/
At this point you can be forgiven for thinking "So how is this different from an ordinary feed?" Well, Google Maps can handle GeoRSS in much the same way as it handles KML files: it can extract the geo-location data and plot your feed items on a map. All you need to do is splice together the URL for Google Maps with the URL of your GeoRSS-enriched feed, like this:
http://maps.google.com/maps?q=http://www.bioneural.net/tag/geotag/feed/
As a result, Google Maps will plot the most recent feed items on a map, and clicking on a marker will display an excerpt from that item:

You don't need to register for a Google Maps API key. You don't need to know what an API is. You don't need to copy or edit any code for adding a map to your own site.
Geo-discovery in your feed reader
As mentioned, Geo Mashup (in common with other geotagging plugins) adds metadata tags into the head of location-specific posts. They look like this (two formats):
<meta name="ICBM" content="50.185676, 8.464943" />
<meta name="geo.position" content="50.185676;8.464943" />
Some feed readers and browser extensions can auto-detect these tags when a post containing them is displayed. Recently I've been trying out Minimap Sidebar with Firefox which causes a small map icon "light up" when such metadata are detected. For example, here is a geotagged post you can test it with:
http://www.bioneural.net/2008/01/29/a-winter-walk-in-the-taunus/
In this instance geo-discovery detects the same location data twice, since Minimap recognises both of the above metadata formats (it also scans the page for text geotags e.g. geo:lat=, geo:lng=):

But the real magic is in Minimap's integration with Google Maps. Minmap lets you plot the encoded location side-by-side with the content that it relates to (especially helpful to geography dropouts if the author hasn't yet created their own map). Just drag-and-drop the URL from the browser's address bar into the well below the map in the Minimap Sidebar and the location will be plotted. Right-clicking the post title in the well gives you access to a wealth of options and actions too numerous to list:
Click thumbnail to enlarge image![]()
Minimap Sidebar at work in Firefox
Tony, the developer of Minimap Sidebar for Firefox and geoFlock for Flock, has announced his intention to use the Geotag Icon as a replacement for his current geo-discovery icon. And, according to Nick, we can also look forward to seeing it in the next build of FeedDemon, a fine feed reader for Windows.
GeoRSS in your Flickr feed
Flickr offers what Dan Catt has termed a geoFeed (for reasons unclear). If you look at the feed source (the easiest way is to enter it into the W3C Feed Validator) you can see that there are two namespace declarations in the header (the depreciated W3C Basic Geo and GeoRSS-Simple):
xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
xmlns:georss="http://www.georss.org/georss"
Each item in the feed is marked-up twice, as dictated by each encoding. For example:
<georss:point>-41.296122 174.793167</georss:point>
<geo:Point>
<geo:lat>-41.296122</geo:lat>
<geo:long>174.793167</geo:long>
</geo:Point>
Here is an example of a flickr geoFeed URL:
http://api.flickr.com/services/feeds/geo/?id=31017329@N00&lang=en-us&format=rss_200
If you drag-and-drop this feed URL on Minimap it will generate a map just like it did above for geotagged posts. But it won't do that for my dedicated GeoRSS feed even though it shares the same GeoRSS-Simple encoding. Is it because of the W3C Basic Geo in Flickr's feed? No.
So how does this work then? Tony wrote Minimap to scan the dropped URL for the presence of .rss, =rss, .georss, or =georss and—if these strings are found—to send the data via the Google Maps API GGeoXml function to represent the parsed data on a map (i.e. it doesn't parse the feed to discover the encoding). One glance at the Flickr geoFeed URL and you have your answer.
Revisiting GeoRSS in WordPress feeds
We've thus explained why my dedicated GeoRSS feed doesn't get auto-discovered. However, WordPress feed syntax is pretty flexible, so all I needed to do is modify mine slightly:
http://www.bioneural.net/tag/geotag/feed/rss2/
http://www.bioneural.net/tag/geotag/?feed=rss2
The GeoRSS data is now detected by Minimap Sidebar when either feed URL is dropped on the well, and both remain valid feeds.
Ideally Minimap would detect GeoRSS by parsing feeds looking for <georss:point>. However, as Tony explained to me this would have a significant resource overhead that would impair the user experience, being rather more involved that just checking the head for a standard feed link syntax and triggering display of the well-known orange Feed Icon.
Tony also points out that, while drag-and-drop failed to auto-discover my original GeoRSS feed (the URL ending /feed/), I could get it recognized manually via the Add KML/ GeoRSS URL option in Minimap Sidebar.









Stunning stuff and very powerful. Thank you for your clear and concise explanation.
@duxxyuk you're welcome; good to know you found it "stuff worth sharing" :-)