The Open Protocol

This posts presents another initiative to open-up data sources by mean of standard Web technologies such as HTTP, Atom Publishing Protocol (AtomPub) and JSON: the Open Data Protocol (OData).

OData (which seems to be mainly supported by Microsoft) is a Web protocol for querying and updating data. OData can be used to give access to a variety of sources, such as relational databases, file systems, content management systems and traditional Web sites.

OData enables the creation of HTTP-based, REST data services where which resources are identified using Uniform Resource Identifiers (URIs) and defined in an abstract data model. OData is made up of a group of specifications, detailing the OData’s core concepts.

There exists reference implementations of oData clients for several languages (Javascript, PHP, Jaba, Objective-C and .Net), but, so far, there is a single implementation of oData server in .Net. Nonetheless, a great deal of sources are currently exposed as oData services, such as:

and several others. Several application, such as SharePoint, WebSphere, SQL Azure, Azure Table Storage ans SQL Server, can already expose data as oData Services. More information on the oData Website.

While at a first glance it may looks like oData puts itself at competition to other set of standards, such as  RDF, OWL and SPARQL, oData seems more a complementary, possibly lightweight solution. The only issue, so far, is that there are limited options for producing oData services, which are, de-facto, confined to the world of .Net, thus posing a severe limitation to the adoption of the protocol.