The Open Data Protocol (OData) is an open protocol for sharing data. It provides a way to break down data silos and increase the shared value of data by creating an ecosystem in which data consumers can interoperate with data producers in a way that is far more powerful than currently possible, enabling more applications to make sense of a broader set of data. Every producer and consumer of data that participates in this ecosystem increases its overall value.
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.
4. SURVEY
DATA
API
…are comfortable w/ HTTP and
XML? JSON?
…have created a Data API?
…knows what the web is?
…have a basic understanding of the
term REST?
16. BASICS OF ODATA
1
Feeds, which are
Collections of typed
Entities
2
OData services can expose
Actions and Functions (v4)
3
OData services expose all
these constructs via URIs
4
OData service may also
expose a Service Metadata
Document
23. JSON FORMAT
FRIENDLY TO JAVASCRIPT0
1
0
2
0
3
0
4
90% MORE COMPACT
READS LIKE A CUSTOM API
VERY LITTLE ODATA “GUNK”
24. ATOM FORMAT
ATOM PARSERS EXIST EVERYWHERE0
1
0
2
0
3
0
4
ELEMENT FIELDS MAP TO THEIR
ATOM COUNTERPARTS
GOOD EXAMPLE OF ODATA
INTEROPERABILITY
CAN USE LIKE XML
25. OTHER ODATA CAPABILITIES
ACTIONS AND FUNCTIONS ALLOW
HYPERMEDIA-BASED METHODS
0
1
0
2
0
3
DEFINED CONVENTIONS FOR
PATCH AND DEEP INSERTS
VOCABULARIES
26. WHAT NOT TO DO WITH ODATA
NOT A FIT FOR HIGHLY
OPINIONATED APIs
0
1
0
2
0
3
NOT GOOD FOR BULK DATA
TRANSFER
HARD TO BUILD APIs THAT ARE
RADICALLY DIFFERENT THAN
BACKEND
27. ODATA DOESN’T SUPPORT ALL QUERIES
DOESN’T SUPPORT AGGREGATION
You can’t ask for customers that have at
0
1
0
2
0
3
DOESN’T SUPPORT FILTER EXPANSION
You can’t ask for a customer and only their
orders placed in 2013
DOESN’T SUPPORT “GRAPH” QUERIES
You can ask friend-of-a-friend type queries,
but there are limitations
28. The OASIS international open standards consortium announced
the approval of the Open Data Protocol (OData) 4.0 and the
OData JSON Format 4.0. These REST-based standards simplify
the querying and sharing of data across applications for re-use in
the enterprise, cloud, and mobile devices. With OData,
information can be accessed from a variety of sources including
relational databases, file systems, content management systems,
and traditional web sites. OData 4.0 and the OData JSON Format
4.0 are now official OASIS Standards, a status that signifies the
highest level of ratification.
RATIFIED MARCH 2014!!
THERE ARE MANY NON-MICROSOFT
PEOPLE ON THE TC!!
ODATA IS A STANDARD!!
30. WHAT DOES ODATA GIVE ME AND MY ORGANIZATION?
EMPOWER INTERNAL KNOWLEDGE
WORKS
EMPOWER EXISTING OR FUTURE
COSTOMERS
MONITIZE DATA FOR UNTAPPED
REVENUE
32. XODATA
Web-based OData Visualizer
FIDDLER
Free web debugging tool which
logs all HTTP(S) traffic between
your computer and the
Internet.
LINQPAD (v3)
Interactively query SQL
databases (among other data
sources such as OData or WCF
Data Services) using LINQ, as
well as interactively writing C#
code without the need for an
IDE.
ODATA
VALIDATOR
Enable OData service authors
to validate their
implementation against the
OData specification to ensure
the service interoperates well
with any OData client.
TESTING/DEBUGGING ODATA
www.websitename.comwww.chriswoodruff.com Page Number 32
38. TOMORROW @ 2:30PM ROOM D
BEST PRACTICES
ADVANCED TOPICS SHARE ODATA IN UNIVERSAL APP
VALIDATION
Learning How to Shape
and Configure an OData
Feed for High Performing
Web Sites and Applications
40. ODATA WORKSHOP
01
02
03
04
TESTING/DEBUGGING ODATA
DEVELPING CLIENT SIDE SOLUTIONS
• Web Apps using Javascript to consume Odata
• iOS Swift development for native iPhone and iPad
apps
• Windows 8.1 and Windows Phone apps C# and WinJS
• Android development using Java
• Using Xamarin for consuming OData
LEARNING THE PROTOCOL
• The Metadata and Service Model of OData
• URI Conventions of OData
• Format Conventions of OData
• OData HTTP Conventions and Operations
DEVELPING SERVER SIDE SOLUTIONS
• ASP.NET Web API
• Advanced Performance Tips and Best Practices
Go to http://ChrisWoodruff.com for more details and
pricing
41. THANK YOU
Find me around the conference and would enjoy chatting
Email: cwoodruff@live.com
Twitter: @cwoodruff