Friend and colleague Tony Ruscoe recently made a post about Google Sitemaps, showing how it can be quite useful, not just for submitting your site to Google, but also for discovering certain key bits of information about your website in Google.

Well, apart from all of this SEO stuff, there is another use to Google Sitemaps. A Google sitemap is simply an XML document containing all of the files you want Google to index. But what is to stop us using it only for Google? With an XML data source of our sites structure, publicly available across the web, it presents a really useful way for us to mashup our site with other APIs on the web. And because sitemaps are structured in a certain way, we can start to build new services that take a sitemap as a parameter and do something with the users entire website.

And that is exactly what I have done with my latest code project. I've written a handy validator that takes a Google sitemap URL, (or individual URL) and validates all files in the sitemap against the DTD in the file, for any sitemap. So for the laymen out there, it allows you to validate your entire site to XHTML strict (for example) for your entire website in one go, rather than submitting each file 1 by 1 using the W3C validator. It really is rather useful, and I hope you find it useful too.

But this is just one application I have created for the Google Sitemap XML file. I'm sure there are others you can create. How about using the API to pull out a report for tags for each URL in your website, then build your own tag cloud using that data? Or use the Technorati API to see who's linking to each page in your website? Or create a short URL for each of your pages using Qurl, which you can then put back on each page of your site for easy bookmarking?

There really are loads of options available using the Google Sitemap XML file to drive a new web service or mashup. And if you create your sitemap dynamically, why not create a second version of your sitemap to include only files you want to use in mashup services like my validator (e.g. create a sitemap that excludes .txt, .pdf, .zip files that don't validate to a DTD).

Go on, take a second look at the sitemap format, and have a play! If you do build a service to take a sitemap URL and do some cool stuff, let me know about it! And if you like the validator, let me know, I want it to be useful!