Tuesday 23 April 2013

What is the Open Data Protocol?

The Open Data Protocol (OData) is a Web protocol for querying and updating data that provides a way to unlock your data and free it from silos that exist in applications today.OData does this by applying and building upon Web technologies such as HTTP, Atom Publishing Protocol (AtomPub) and JSON to provide access to information from a variety of applications, services, and stores.

OData is consistent with the way the Web works - it makes a deep commitment to URIs for resource identification and commits to an HTTP-based, uniform interface for interacting with those resources (just like the Web). This commitment to core Web principles allows OData to enable a new level of data integration and interoperability across a broad range of clients, servers, services, and tools.

Currently a lot of common ways of designing web API's have emerged on the web. Many of them already apply REST or CQRS principles and use JSON or XML to expose data.

However these API surfaces are hardly uniform. What does it mean to do a POST to a particular resource? If I found a resource how can I find related resources? How do I apply complex filters over the data to only retrieve the resources I am interested in?
All these questions have to be answered in developer documenation about the API and if you want to use different Data API's you need to learn how to interact with each API separately.

Currently a lot of common ways of designing web API's have emerged on the web. Many of them already apply REST or CQRS principles and use JSON or XML to expose data.
However these API surfaces are hardly uniform. What does it mean to do a POST to a particular resource? If I found a resource how can I find related resources? How do I apply complex filters over the data to only retrieve the resources I am interested in?
All these questions have to be answered in developer documenation about the API and if you want to use different Data API's you need to learn how to interact with each API separately.
OData solves this problem by providing a uniform way to expose, structure, query and manipulate data using REST practices and JSON or ATOM syntax to discribe the payload. OData also provides a uniform way to represent metadata about the data, allowing computers to know more about the type system, relationships and structure of the data.
Choosing to expose your data as OData you tap into a large ecosystem that can target your dataset without any modification. You also tap into an ecosystem of developers since a lot of developers already know how to target an OData API and they won't have to learn anything new to get going with your dataset.

0 comments:

Post a Comment


                                                            
 
Design by Abhinav Ranjan Sinha