SlideShare a Scribd company logo
1 of 13
OData: The Open Data Protocol
Windows
iPhone
Browser
Windows Phone
Silverlight
Web Site
Web API
webOS
S E R V I C E S
POWERING
EXPERIENCES
Today’s Service Interfaces
 Customers[] GetCustomersByZip(zip)
 Customers[] GetCustomersByZip(zip, skip, take)
 Customers[] GetCustomersByZip(zip, skip, take, sort)
 Customers[] GetCustomersByRegion(region, skip, take)
 Customers[] GetCustomersByRegion(region, skip, take, sort)
 …
Problems with this approach:
Clients are very limited in what they can do generically – Each
service requires its own custom clients (N * N problem)
Leads to “interface bloat” – cost of maintenance
More likely to result in data silos with limited potential for reuse
What if we had a common way to access
information through services?
 Customer is a resource that supports:
 Query on properties
 Navigation over relationships
 Paging through results
 Create, Read, Update, Delete operations
Solves key problems with today’s service interfaces
Enables a broad ecosystem of reusable clients
Simplifies interface maintenance – lowers cost
Encourages reuse of information, including in ways not foreseen at
the time the service was created
Open Data Protocol (OData)
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.
For Developers
For Information
Workers
For Consumers
OData Ecosystem – Current implementations
Enterprise Consumer Government/Public Developer
PowerPivot Pivot Open Gov. Data Initiative .NET
SQL Server Reports (producer) Netflix Edmonton, CA Silverlight Client
SharePoint iPhone Vancouver, CA Java Client
WebSphere Windows Live Dallas (Many sources) PHP Client
Dallas (many sources) Facebook insights CDYNE* AJAX Client
SQL Azure Microsoft MediaRoom European Env Agency* iPhone
Dynamics NAV Twitpic UK Government* Mono/Mono Touch Client
Dynamics CRM eBay Data.Gov* Telerik Open Access
Next Gen Active Directory DigitalMap* Recovery.Gov* Intersoft Solutions
MS Pinpoint ESRI* MelissaData* ComponentOne
Powershell WeatherBug* United Nations* LinqPad
Office 15 Boundary Solutions* World Bank* OData4J
Tellago SO-Aware Stats.Com* DB40
Zillow.com* WCF RIA Services
Windows Azure Table Storage
OpenLink Virtuoso
Stack Overflow
PHP Server (in development)
Ruby on Rails
Windows Phone 7
Light Switch
* Available through DataMarket.Azure.com
Standards / Openness
 OData
 Based on AtomPub, HTTP, JSON
 Released under the Open Specification Promise
○ Implemented by multiple 3rd parties including IBM
WebSphere
 .NET client source code
 Released under Apache 2.0 license
 http://odata.codeplex.com/
Contact Information
 LanceO@microsoft.com
 www.odata.org
 http://msdn.com/data
© 2009 Microsoft Corporation. All rights reserved.
This presentation is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must
respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any
information provided after the date of this presentation.
MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

More Related Content

Similar to Using OData to build great customer experiences on any device by Lance Olson

Would Mr. Spok choose Open Source
Would Mr. Spok choose Open SourceWould Mr. Spok choose Open Source
Would Mr. Spok choose Open Sourcevlcinsky
 
Clanavi: How to Manage Your Cloud by Drupal (BADCamp 2010)
Clanavi: How to Manage Your Cloud by Drupal (BADCamp 2010)Clanavi: How to Manage Your Cloud by Drupal (BADCamp 2010)
Clanavi: How to Manage Your Cloud by Drupal (BADCamp 2010)DOCOMO Innovations, Inc.
 
Social Photos - My presentation at Microsoft Tech Day
Social Photos - My presentation at Microsoft Tech DaySocial Photos - My presentation at Microsoft Tech Day
Social Photos - My presentation at Microsoft Tech DayTechMaster Vietnam
 
A Lap Around Windows Azure
A Lap Around Windows AzureA Lap Around Windows Azure
A Lap Around Windows AzureDave Bost
 
Clanavi: How to Manage Your Cloud by Drupal
Clanavi: How to Manage Your Cloud by DrupalClanavi: How to Manage Your Cloud by Drupal
Clanavi: How to Manage Your Cloud by DrupalDOCOMO Innovations, Inc.
 
1 - Why Host on Windows (28).ppt
1 - Why Host on Windows (28).ppt1 - Why Host on Windows (28).ppt
1 - Why Host on Windows (28).pptwebhostingguy
 
1 - Why Host on Windows (28).ppt
1 - Why Host on Windows (28).ppt1 - Why Host on Windows (28).ppt
1 - Why Host on Windows (28).pptwebhostingguy
 
C# Client to Cloud
C# Client to CloudC# Client to Cloud
C# Client to CloudStuart Lodge
 
z Technical Summit Track 3 Session 4 Developing mobilefirst app for z
z Technical Summit Track 3 Session 4 Developing mobilefirst app for zz Technical Summit Track 3 Session 4 Developing mobilefirst app for z
z Technical Summit Track 3 Session 4 Developing mobilefirst app for znick_garrod
 
Net framework
Net frameworkNet framework
Net frameworksumit1503
 
Cloud Computing & Sun Vision 03262009
Cloud Computing & Sun Vision 03262009Cloud Computing & Sun Vision 03262009
Cloud Computing & Sun Vision 03262009guest829442
 
Microsoft Cloud Computing - Windows Azure Platform
Microsoft Cloud Computing - Windows Azure PlatformMicrosoft Cloud Computing - Windows Azure Platform
Microsoft Cloud Computing - Windows Azure PlatformDavid Chou
 
Training - Managing .NET/J2EE Projects
Training - Managing .NET/J2EE ProjectsTraining - Managing .NET/J2EE Projects
Training - Managing .NET/J2EE ProjectsShashank Banerjea
 
A164 enterprise javascript ibm node sdk
A164 enterprise javascript ibm node sdkA164 enterprise javascript ibm node sdk
A164 enterprise javascript ibm node sdkToby Corbin
 
Cisco’s Cloud Ready Infrastructure
Cisco’s Cloud Ready InfrastructureCisco’s Cloud Ready Infrastructure
Cisco’s Cloud Ready InfrastructureCisco Canada
 
Zimbra versus exchange 2010 presentation
Zimbra versus exchange 2010 presentationZimbra versus exchange 2010 presentation
Zimbra versus exchange 2010 presentationsolarisyourep
 
Microsoft .NET and the System i
Microsoft .NET and the System iMicrosoft .NET and the System i
Microsoft .NET and the System iLANSA
 
QCon Shanghai: Trends in Application Development
QCon Shanghai: Trends in Application DevelopmentQCon Shanghai: Trends in Application Development
QCon Shanghai: Trends in Application DevelopmentChris Bailey
 
SignalR + Mobile Possibilities
SignalR + Mobile PossibilitiesSignalR + Mobile Possibilities
SignalR + Mobile PossibilitiesSam Basu
 

Similar to Using OData to build great customer experiences on any device by Lance Olson (20)

Would Mr. Spok choose Open Source
Would Mr. Spok choose Open SourceWould Mr. Spok choose Open Source
Would Mr. Spok choose Open Source
 
Clanavi: How to Manage Your Cloud by Drupal (BADCamp 2010)
Clanavi: How to Manage Your Cloud by Drupal (BADCamp 2010)Clanavi: How to Manage Your Cloud by Drupal (BADCamp 2010)
Clanavi: How to Manage Your Cloud by Drupal (BADCamp 2010)
 
Social Photos - My presentation at Microsoft Tech Day
Social Photos - My presentation at Microsoft Tech DaySocial Photos - My presentation at Microsoft Tech Day
Social Photos - My presentation at Microsoft Tech Day
 
A Lap Around Windows Azure
A Lap Around Windows AzureA Lap Around Windows Azure
A Lap Around Windows Azure
 
Clanavi: How to Manage Your Cloud by Drupal
Clanavi: How to Manage Your Cloud by DrupalClanavi: How to Manage Your Cloud by Drupal
Clanavi: How to Manage Your Cloud by Drupal
 
1 - Why Host on Windows (28).ppt
1 - Why Host on Windows (28).ppt1 - Why Host on Windows (28).ppt
1 - Why Host on Windows (28).ppt
 
1 - Why Host on Windows (28).ppt
1 - Why Host on Windows (28).ppt1 - Why Host on Windows (28).ppt
1 - Why Host on Windows (28).ppt
 
C# Client to Cloud
C# Client to CloudC# Client to Cloud
C# Client to Cloud
 
z Technical Summit Track 3 Session 4 Developing mobilefirst app for z
z Technical Summit Track 3 Session 4 Developing mobilefirst app for zz Technical Summit Track 3 Session 4 Developing mobilefirst app for z
z Technical Summit Track 3 Session 4 Developing mobilefirst app for z
 
Net framework
Net frameworkNet framework
Net framework
 
Cloud Computing & Sun Vision 03262009
Cloud Computing & Sun Vision 03262009Cloud Computing & Sun Vision 03262009
Cloud Computing & Sun Vision 03262009
 
Microsoft Cloud Computing - Windows Azure Platform
Microsoft Cloud Computing - Windows Azure PlatformMicrosoft Cloud Computing - Windows Azure Platform
Microsoft Cloud Computing - Windows Azure Platform
 
Training - Managing .NET/J2EE Projects
Training - Managing .NET/J2EE ProjectsTraining - Managing .NET/J2EE Projects
Training - Managing .NET/J2EE Projects
 
A164 enterprise javascript ibm node sdk
A164 enterprise javascript ibm node sdkA164 enterprise javascript ibm node sdk
A164 enterprise javascript ibm node sdk
 
Cisco’s Cloud Ready Infrastructure
Cisco’s Cloud Ready InfrastructureCisco’s Cloud Ready Infrastructure
Cisco’s Cloud Ready Infrastructure
 
Zimbra versus exchange 2010 presentation
Zimbra versus exchange 2010 presentationZimbra versus exchange 2010 presentation
Zimbra versus exchange 2010 presentation
 
Metadata describes about data
Metadata describes about dataMetadata describes about data
Metadata describes about data
 
Microsoft .NET and the System i
Microsoft .NET and the System iMicrosoft .NET and the System i
Microsoft .NET and the System i
 
QCon Shanghai: Trends in Application Development
QCon Shanghai: Trends in Application DevelopmentQCon Shanghai: Trends in Application Development
QCon Shanghai: Trends in Application Development
 
SignalR + Mobile Possibilities
SignalR + Mobile PossibilitiesSignalR + Mobile Possibilities
SignalR + Mobile Possibilities
 

More from GeekWire

Mike Fridgen: Branding, Startup Style
Mike Fridgen: Branding, Startup StyleMike Fridgen: Branding, Startup Style
Mike Fridgen: Branding, Startup StyleGeekWire
 
Mike Fridgen - Branding, startup style
Mike Fridgen - Branding, startup styleMike Fridgen - Branding, startup style
Mike Fridgen - Branding, startup styleGeekWire
 
Brenda Spoonemore - A biz dev playbook for startups: Why, when and how to do ...
Brenda Spoonemore - A biz dev playbook for startups: Why, when and how to do ...Brenda Spoonemore - A biz dev playbook for startups: Why, when and how to do ...
Brenda Spoonemore - A biz dev playbook for startups: Why, when and how to do ...GeekWire
 
Jordan Weisman - Warning startups maybe dangerous to your health (and ego)
Jordan Weisman - Warning startups maybe dangerous to your health (and ego)Jordan Weisman - Warning startups maybe dangerous to your health (and ego)
Jordan Weisman - Warning startups maybe dangerous to your health (and ego)GeekWire
 
Jonathan Sposato - Everything I need to know about design I learned in a hotel
Jonathan Sposato - Everything I need to know about design I learned in a hotelJonathan Sposato - Everything I need to know about design I learned in a hotel
Jonathan Sposato - Everything I need to know about design I learned in a hotelGeekWire
 
Darrell Cavens - Clear vision for the future
Darrell Cavens - Clear vision for the futureDarrell Cavens - Clear vision for the future
Darrell Cavens - Clear vision for the futureGeekWire
 
Aviel Ginzburg & Adam Schoenfeld - Co-founding: The good, the bad, the ugly
Aviel Ginzburg & Adam Schoenfeld - Co-founding: The good, the bad, the ugly Aviel Ginzburg & Adam Schoenfeld - Co-founding: The good, the bad, the ugly
Aviel Ginzburg & Adam Schoenfeld - Co-founding: The good, the bad, the ugly GeekWire
 
Steve Murch - Bootstrapping: Less cash, more cowbell
Steve Murch - Bootstrapping: Less cash, more cowbellSteve Murch - Bootstrapping: Less cash, more cowbell
Steve Murch - Bootstrapping: Less cash, more cowbellGeekWire
 
Adam Tratt - Startup storytelling for the win
Adam Tratt - Startup storytelling for the winAdam Tratt - Startup storytelling for the win
Adam Tratt - Startup storytelling for the winGeekWire
 
Designing For Pleasure Instead of Against Pain by Aviel Ginzburg
Designing For Pleasure Instead of Against Pain by Aviel GinzburgDesigning For Pleasure Instead of Against Pain by Aviel Ginzburg
Designing For Pleasure Instead of Against Pain by Aviel GinzburgGeekWire
 
Building for Real Time - working with Asynchronous I/O by Grant Goodale
Building for Real Time - working with Asynchronous I/O by Grant GoodaleBuilding for Real Time - working with Asynchronous I/O by Grant Goodale
Building for Real Time - working with Asynchronous I/O by Grant GoodaleGeekWire
 
Developing for Mobile by Andre Charland
Developing for Mobile by Andre CharlandDeveloping for Mobile by Andre Charland
Developing for Mobile by Andre CharlandGeekWire
 
Ec2 for Startups - Ian Eure
Ec2 for Startups - Ian EureEc2 for Startups - Ian Eure
Ec2 for Startups - Ian EureGeekWire
 
3 S's to a Successful Launch - Poornima Vijayashanker
3 S's to a Successful Launch - Poornima Vijayashanker3 S's to a Successful Launch - Poornima Vijayashanker
3 S's to a Successful Launch - Poornima VijayashankerGeekWire
 
Keeping One Step Ahead - Bob Walsh
Keeping One Step Ahead - Bob WalshKeeping One Step Ahead - Bob Walsh
Keeping One Step Ahead - Bob WalshGeekWire
 
StartupDay 2010 Keynote - Ben Elowitz
StartupDay 2010 Keynote - Ben ElowitzStartupDay 2010 Keynote - Ben Elowitz
StartupDay 2010 Keynote - Ben ElowitzGeekWire
 
Dealing with Failure - Keith Smith
Dealing with Failure - Keith SmithDealing with Failure - Keith Smith
Dealing with Failure - Keith SmithGeekWire
 
Making Money with SaaS - Jeff Lawson
Making Money with SaaS - Jeff LawsonMaking Money with SaaS - Jeff Lawson
Making Money with SaaS - Jeff LawsonGeekWire
 
Revenue Streams for Startups - Rashmi Sinha
Revenue Streams for Startups - Rashmi SinhaRevenue Streams for Startups - Rashmi Sinha
Revenue Streams for Startups - Rashmi SinhaGeekWire
 
Marketing your Startup - Monica Harrington
Marketing your Startup - Monica HarringtonMarketing your Startup - Monica Harrington
Marketing your Startup - Monica HarringtonGeekWire
 

More from GeekWire (20)

Mike Fridgen: Branding, Startup Style
Mike Fridgen: Branding, Startup StyleMike Fridgen: Branding, Startup Style
Mike Fridgen: Branding, Startup Style
 
Mike Fridgen - Branding, startup style
Mike Fridgen - Branding, startup styleMike Fridgen - Branding, startup style
Mike Fridgen - Branding, startup style
 
Brenda Spoonemore - A biz dev playbook for startups: Why, when and how to do ...
Brenda Spoonemore - A biz dev playbook for startups: Why, when and how to do ...Brenda Spoonemore - A biz dev playbook for startups: Why, when and how to do ...
Brenda Spoonemore - A biz dev playbook for startups: Why, when and how to do ...
 
Jordan Weisman - Warning startups maybe dangerous to your health (and ego)
Jordan Weisman - Warning startups maybe dangerous to your health (and ego)Jordan Weisman - Warning startups maybe dangerous to your health (and ego)
Jordan Weisman - Warning startups maybe dangerous to your health (and ego)
 
Jonathan Sposato - Everything I need to know about design I learned in a hotel
Jonathan Sposato - Everything I need to know about design I learned in a hotelJonathan Sposato - Everything I need to know about design I learned in a hotel
Jonathan Sposato - Everything I need to know about design I learned in a hotel
 
Darrell Cavens - Clear vision for the future
Darrell Cavens - Clear vision for the futureDarrell Cavens - Clear vision for the future
Darrell Cavens - Clear vision for the future
 
Aviel Ginzburg & Adam Schoenfeld - Co-founding: The good, the bad, the ugly
Aviel Ginzburg & Adam Schoenfeld - Co-founding: The good, the bad, the ugly Aviel Ginzburg & Adam Schoenfeld - Co-founding: The good, the bad, the ugly
Aviel Ginzburg & Adam Schoenfeld - Co-founding: The good, the bad, the ugly
 
Steve Murch - Bootstrapping: Less cash, more cowbell
Steve Murch - Bootstrapping: Less cash, more cowbellSteve Murch - Bootstrapping: Less cash, more cowbell
Steve Murch - Bootstrapping: Less cash, more cowbell
 
Adam Tratt - Startup storytelling for the win
Adam Tratt - Startup storytelling for the winAdam Tratt - Startup storytelling for the win
Adam Tratt - Startup storytelling for the win
 
Designing For Pleasure Instead of Against Pain by Aviel Ginzburg
Designing For Pleasure Instead of Against Pain by Aviel GinzburgDesigning For Pleasure Instead of Against Pain by Aviel Ginzburg
Designing For Pleasure Instead of Against Pain by Aviel Ginzburg
 
Building for Real Time - working with Asynchronous I/O by Grant Goodale
Building for Real Time - working with Asynchronous I/O by Grant GoodaleBuilding for Real Time - working with Asynchronous I/O by Grant Goodale
Building for Real Time - working with Asynchronous I/O by Grant Goodale
 
Developing for Mobile by Andre Charland
Developing for Mobile by Andre CharlandDeveloping for Mobile by Andre Charland
Developing for Mobile by Andre Charland
 
Ec2 for Startups - Ian Eure
Ec2 for Startups - Ian EureEc2 for Startups - Ian Eure
Ec2 for Startups - Ian Eure
 
3 S's to a Successful Launch - Poornima Vijayashanker
3 S's to a Successful Launch - Poornima Vijayashanker3 S's to a Successful Launch - Poornima Vijayashanker
3 S's to a Successful Launch - Poornima Vijayashanker
 
Keeping One Step Ahead - Bob Walsh
Keeping One Step Ahead - Bob WalshKeeping One Step Ahead - Bob Walsh
Keeping One Step Ahead - Bob Walsh
 
StartupDay 2010 Keynote - Ben Elowitz
StartupDay 2010 Keynote - Ben ElowitzStartupDay 2010 Keynote - Ben Elowitz
StartupDay 2010 Keynote - Ben Elowitz
 
Dealing with Failure - Keith Smith
Dealing with Failure - Keith SmithDealing with Failure - Keith Smith
Dealing with Failure - Keith Smith
 
Making Money with SaaS - Jeff Lawson
Making Money with SaaS - Jeff LawsonMaking Money with SaaS - Jeff Lawson
Making Money with SaaS - Jeff Lawson
 
Revenue Streams for Startups - Rashmi Sinha
Revenue Streams for Startups - Rashmi SinhaRevenue Streams for Startups - Rashmi Sinha
Revenue Streams for Startups - Rashmi Sinha
 
Marketing your Startup - Monica Harrington
Marketing your Startup - Monica HarringtonMarketing your Startup - Monica Harrington
Marketing your Startup - Monica Harrington
 

Recently uploaded

Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 

Recently uploaded (20)

Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 

Using OData to build great customer experiences on any device by Lance Olson

  • 1. OData: The Open Data Protocol
  • 2.
  • 3. Windows iPhone Browser Windows Phone Silverlight Web Site Web API webOS S E R V I C E S POWERING EXPERIENCES
  • 4. Today’s Service Interfaces  Customers[] GetCustomersByZip(zip)  Customers[] GetCustomersByZip(zip, skip, take)  Customers[] GetCustomersByZip(zip, skip, take, sort)  Customers[] GetCustomersByRegion(region, skip, take)  Customers[] GetCustomersByRegion(region, skip, take, sort)  … Problems with this approach: Clients are very limited in what they can do generically – Each service requires its own custom clients (N * N problem) Leads to “interface bloat” – cost of maintenance More likely to result in data silos with limited potential for reuse
  • 5. What if we had a common way to access information through services?  Customer is a resource that supports:  Query on properties  Navigation over relationships  Paging through results  Create, Read, Update, Delete operations Solves key problems with today’s service interfaces Enables a broad ecosystem of reusable clients Simplifies interface maintenance – lowers cost Encourages reuse of information, including in ways not foreseen at the time the service was created
  • 6. Open Data Protocol (OData) 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.
  • 10. OData Ecosystem – Current implementations Enterprise Consumer Government/Public Developer PowerPivot Pivot Open Gov. Data Initiative .NET SQL Server Reports (producer) Netflix Edmonton, CA Silverlight Client SharePoint iPhone Vancouver, CA Java Client WebSphere Windows Live Dallas (Many sources) PHP Client Dallas (many sources) Facebook insights CDYNE* AJAX Client SQL Azure Microsoft MediaRoom European Env Agency* iPhone Dynamics NAV Twitpic UK Government* Mono/Mono Touch Client Dynamics CRM eBay Data.Gov* Telerik Open Access Next Gen Active Directory DigitalMap* Recovery.Gov* Intersoft Solutions MS Pinpoint ESRI* MelissaData* ComponentOne Powershell WeatherBug* United Nations* LinqPad Office 15 Boundary Solutions* World Bank* OData4J Tellago SO-Aware Stats.Com* DB40 Zillow.com* WCF RIA Services Windows Azure Table Storage OpenLink Virtuoso Stack Overflow PHP Server (in development) Ruby on Rails Windows Phone 7 Light Switch * Available through DataMarket.Azure.com
  • 11. Standards / Openness  OData  Based on AtomPub, HTTP, JSON  Released under the Open Specification Promise ○ Implemented by multiple 3rd parties including IBM WebSphere  .NET client source code  Released under Apache 2.0 license  http://odata.codeplex.com/
  • 12. Contact Information  LanceO@microsoft.com  www.odata.org  http://msdn.com/data
  • 13. © 2009 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Editor's Notes

  1. Browser is co-equal with other clients and run-time experiences The web api is at the center SpE is happening today and is everywhere around you