Taking another innovative step on the path of opening-up, Yahoo! now now supports microformats through its Yahoo! Query Language (YQL). Microformats are one of the most under appreciated ways in which web sites can make their existing service into a development platform. By using existing HTML standards and adding a small layer of semantic data to already-existing web pages, sites can enable a range of innovation on top of their existing service. As noted on microformats.org:
As the Yahoo! team notes in their announcement:
Yahoo! likes microformats. We've been sneaking them into a lot of our products and we've already started to make their discovery and re-use a lot easier in SearchMonkey.
Now, with the release of YQL, we've gone a step further. We took the content-mixing capabilities of Pipes, and added a SQL-style language and REST interface to access directly without having to paint your data retrieval and filtering flow.
After discussing the microformats capabilities of SearchMonkey with the YQL team over a mug of coffee at my last visit stateside, we decided to see if it would be possible to get YQL to retrieve microformat data from web documents. I am proud to say that my wish has been granted.
If you check the YQL console you'll find that in the "Available Tables" section you can now see "Microformats" (spookily enough with my blog as the demo example). Together with the public REST API you can use this to retrieve information, filter it down, and return it as XML or JSON for re-use.
Say for example you want to get all the location information for a venue in Upcoming without using the API - this is now easy. The Bricklayer's Arms is the notorious location of the London Pub Standards, and you can retrieve the Microformats with the following REST call:
The YQL console is also worth taking a look at, as it offers a very interactive way to experiment with Yahoo!'s platform.
Kudos to Yahoo! for pushing this forward. It will be interesting to see what developers start doing with microformats given this increasing level of tool support.