OData and Impact onAPI DesignWithAnant Jhingran   Brian Pagano   Greg Brail@jhingran        @brianpagano   @gbrail
groups.google.com/group/api-craft
youtube.com/apigee
slideshare.net/apigee
   Introductions   OData Primer   API Design   The OData Community   Conclusions
@jhingran   @brianpagano   @gbrail
Interactions are shifting to edge of enterprise               Social                                            Business  ...
Exposing data attracts business to the core even if data is not your core businessSee Amundsen’s Dogs, Information Halos a...
Exposing Data is more than the “R” of CRUD in REST                  GOOD CLEAN API’S                M(E/A)SS OF           ...
Two schools of thought               REST APIS                         REST APIS           1           N Table1           ...
REST APIS        1       NToday we’ll discuss the “Schema-ed” view of theworld, and in particular, the OData approach
Let’s look at OData requests and responses.
OData by ExampleSQL Query                                   OData Requestselect * from products where id = 1         /Prod...
Filters/Categories?$filter=Name eq ‘Dairy’Logical Operatorseq ne gt ge lt le eq or andArithmetic Operatorsadd sub mul div ...
Format/Categories?$format=json                                 *atom json xml(plus any other IANA-defined media types)*If ...
Metadata<edmx:Edmx Version="1.0" xmlns:edmx="http://schemas.microsoft.com/ado/2007/06/edmx">  <edmx:DataServices    xmlns:...
Libraries
from http://www.odata.org/libraries
WTF is WCF?
Who is using OData?
Who created OData?
How does OData compare to other approaches?
OData or Not? Odata Request                      Web API Style /Products(1)                       /Products/1 /Products?$f...
   OData   GData   SOAP   Observed API Patterns on the Web
How active is community support for OData?
Is it time to rally around a standard like OData?Or is too early?
Should one implement OData?
Questions
THANK YOUQuestions and ideas to:groups.google.com/group/api-craftAnant Jhingran       Brian Pagano   Greg Brail@jhingran  ...
OData Introduction and Impact on API Design (Webcast)
OData Introduction and Impact on API Design (Webcast)
Upcoming SlideShare
Loading in...5
×

OData Introduction and Impact on API Design (Webcast)

7,774

Published on

We're in a data-driven economy. Web API designers need to define what and how to expose data from a variety of apps, services, and stores. What are challenges of unlocking data and opening up access in a straightforward and standards-compliant manner? Is OData the right tool for the job?
Join Anant, Brian, and Greg for a discussion of OData, its API design implications, and the pros and cons of OData as an enabler of data integration and interoperability across Data APIs.

We Will Discuss »

- OData, SQL, and the "RESTification" of data - providing a uniform way to expose, structure, query and manipulate data using REST principles.
- Opportunity and challenges for OData.
- The questions of Web standards and proprietary versus open tools and protocols.

Published in: Technology, Business
1 Comment
7 Likes
Statistics
Notes
  • <br /><iframe width="350" height="288" src="http://www.youtube.com/embed/L0u5nDaufGA" frameborder="0"></iframe>
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
7,774
On Slideshare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
151
Comments
1
Likes
7
Embeds 0
No embeds

No notes for slide
  • Creative Commons Attribution-Share Alike 3.0 United States License
  • OData Introduction and Impact on API Design (Webcast)

    1. 1. OData and Impact onAPI DesignWithAnant Jhingran Brian Pagano Greg Brail@jhingran @brianpagano @gbrail
    2. 2. groups.google.com/group/api-craft
    3. 3. youtube.com/apigee
    4. 4. slideshare.net/apigee
    5. 5.  Introductions OData Primer API Design The OData Community Conclusions
    6. 6. @jhingran @brianpagano @gbrail
    7. 7. Interactions are shifting to edge of enterprise Social Business Networks Networks Your apps Your Your Data Your Web Site Company Your Store APIsWhat the means is thatyou’ve think about “data” –what you expose, and what Appsyou collect “differently” - API-centric
    8. 8. Exposing data attracts business to the core even if data is not your core businessSee Amundsen’s Dogs, Information Halos and APIs:The epic story of your API Strategy »http://blog.apigee.com/detail/api_strategy_talk_web_2.0/
    9. 9. Exposing Data is more than the “R” of CRUD in REST GOOD CLEAN API’S M(E/A)SS OF INTERCONNECTED DATA How do you go from the m(e/a)ss to clean APIs?
    10. 10. Two schools of thought REST APIS REST APIS 1 N Table1 Table2 “Linked Data” view – individual“Schema-ed” Relational or objects, with properties andRelational-like view of “data” interconnections
    11. 11. REST APIS 1 NToday we’ll discuss the “Schema-ed” view of theworld, and in particular, the OData approach
    12. 12. Let’s look at OData requests and responses.
    13. 13. OData by ExampleSQL Query OData Requestselect * from products where id = 1 /Products(1)select * from products /Products?$filter=name eq ‘Milk’where name = ‘Milk’select name from products /Products?$select=nameselect * from products order by name /Products?$orderby=nameselect * from products offset 10 limit 10 /Products?$top=10&$skip=10select * from prices r, products p /Products(1)?$expand=Priceswhere r.id = p.id (* sort of)
    14. 14. Filters/Categories?$filter=Name eq ‘Dairy’Logical Operatorseq ne gt ge lt le eq or andArithmetic Operatorsadd sub mul div modParenthesis Operator()Canonical Functionssubstrof endswith startswithlength indexof replace substring tolowertoupper trim concat year years month daydays hour hours minute minutes secondseconds round floor ceiling isof cast
    15. 15. Format/Categories?$format=json *atom json xml(plus any other IANA-defined media types)*If the $format query option is present in a request URI it takesprecedence over the value(s) specified in the Accept request header.
    16. 16. Metadata<edmx:Edmx Version="1.0" xmlns:edmx="http://schemas.microsoft.com/ado/2007/06/edmx"> <edmx:DataServices xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" m:DataServiceVersion="1.0"> <Schema Namespace="NorthwindModel" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://schemas.microsoft.com/ado/2008/09/edm"> <EntityType Name="Category"> <Key> <PropertyRef Name="CategoryID" /> </Key> <Property Name="CategoryID" Type="Edm.Int32" Nullable="false" p8:StoreGeneratedPattern="Identity" xmlns:p8="http://schemas.microsoft.com/ado/2009/02/edm/annotation" /> <Property Name="CategoryName" Type="Edm.String" Nullable="false" MaxLength="15" Unicode="true" FixedLength="false" /> <Property Name="Description" Type="Edm.String" Nullable="true" MaxLength="Max" Unicode="true" FixedLength="false" /> </EntityType> </Schema> </edmx:DataServices></edmx:Edmx>
    17. 17. Libraries
    18. 18. from http://www.odata.org/libraries
    19. 19. WTF is WCF?
    20. 20. Who is using OData?
    21. 21. Who created OData?
    22. 22. How does OData compare to other approaches?
    23. 23. OData or Not? Odata Request Web API Style /Products(1) /Products/1 /Products?$filter=name eq ‘Milk’ /Products?name=Milk /Products/1?$select=name /Products/1/name /Products?$orderby=name /Products?orderby=name /Products?$top=10&$skip=10 /Products?offset=10&limit=10 /Products(1)?$expand=Prices /Products/1?expand=Prices
    24. 24.  OData GData SOAP Observed API Patterns on the Web
    25. 25. How active is community support for OData?
    26. 26. Is it time to rally around a standard like OData?Or is too early?
    27. 27. Should one implement OData?
    28. 28. Questions
    29. 29. THANK YOUQuestions and ideas to:groups.google.com/group/api-craftAnant Jhingran Brian Pagano Greg Brail@jhingran @brianpagano @gbrail

    ×