Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?
Open Source Businesses

OASIS Approves OData 4.0 Standards For an Open, Programmable Web 68

First time accepted submitter Dilettant writes "The OASIS members approved Version 4 of the OData standards, which now also feature the long requested compact JSON as primary format. OData helps "simplifying data sharing across disparate applications in enterprise, cloud, and mobile devices" through interfacing data sources via a REST like interface."
This discussion has been archived. No new comments can be posted.

OASIS Approves OData 4.0 Standards For an Open, Programmable Web

Comments Filter:
  • by bmajik ( 96670 ) <matt@mattevans.org> on Monday March 17, 2014 @04:11PM (#46509881) Homepage Journal

    OData is (now) a standard for how applications can exchange structured data, oriented towards HTTP and statelessness.

    OData consumers and producers are language and platform neutral.

    In contrast to something like a REST service, for which clients must be specifically authored and the discovery process is done by humans reading an API doc, ODATA specifies a URI convention and a $metadata format that means OData resources are accessed in a uniform way, and that OData endpoints can have their shape/semantics programmatically discovered.

    So for instance, if you have entity named Customer hosted on http://foo.com/myOdataFeed [foo.com], I can issue an HTTP call like this:

    GET http://foo.com/myODataFeed/Cus... [foo.com]

    and get your customers.

    furthermore, the metadata document describing your customer type will live at

    foo.com/myODataFeed/$metadata ... which means I can attach to it with a tool and generate proxy code, if I like. It makes it easy to build a generic OData explorer type tool, or for programs like Excel and BI tools to understand what your data exposes.

    Suppose that your Customers have have an integer primary key, (which I discovered from reading $metadata), and have a 1:N association to an ORders entity. I can therefore write this query:

    GET http://foo.com/myODataFeed/Cus... [foo.com] .. and get back the Orders for just customer ID:1

    I can add additional operators to the query string, like $filter or $sort, and data-optimization operators like $expand or $select.

    OData allows an arbitrary web service to mimic many of the semantics of a real database, in a technology neutral way, and critically, in a way that is uniform for anonymous callers and programmatically rigorous/discoverable.

    Examples of OData v3 content are available here:

    http://services.odata.org/V3/N... [odata.org]

    OData V4 is a breaking protocol change from V3 and prior versions, but has been accepted as a standard

    And, shameless plug: If you want to consume and build OData V1/V2/V3 services easily, check out Visual Studio LightSwitch :)

I was playing poker the other night... with Tarot cards. I got a full house and 4 people died. -- Steven Wright