SlideShare a Scribd company logo
1 of 15
REST & OData
  Sanjay Patel
WHAT WILL BE COVERED

• What is REST?
• What is OData?
• OData Architecture Overview
• OData Producers ,Consumers and Live OData Services
• Configure SharePoint 2010 to work with OData / Tools
• Demo#1- CRUD Operations on SharePoint lists using
  Odata
• Demo#2 - Create List Items using jQuery
• Q & A?
REST - REPRESENTATIONAL STATE TRANSFER

REST is an architecture style NOT a standard but it uses
standards

REST is the Service on the Web


It uses HTTP protocol


It uses URI for resource identification (REST)

It provides Uniform Interface
WHAT IS ODATA?

It is a protocol based on web standards

It is used for querying and updating data

It uses HTTP protocol


It uses ATOM and JSON web message formats

It uses URI for resource identification (REST)

It provides filtering, sorting, paging etc. OOTB
UNIFORM OPERATIONS

 HTTP POST

 • CREATE Data in Data Source

 HTTP GET

 • RETERIVE Data from Data Source

 HTTP PUT

 • UPDATE Data in Data Source

 HTTP DELETE

 • DELETE Data in Data Source
UNIFORM REPRESENTATIONS OF DATA


                  Message
                  Format                      JSON for
                                              AJAX
        JSON                  ATOM            clients
    • Text based Format     • XML Based
    • Comes from              Format          ATOM for
      JavaScript world      • Originally
    • Can be consumed by      competed with   any type
      many languages          RSS
    • Same as ATOM with
      less <> and more []
                            • Boils down to
                              lists of data
                                              of clients
WHAT PROBLEM ODATA IS TRYING TO SOLVE?




• What is the common problem? - Scattered data all over in different data sources and
  not a common way to access them

• The Solution is OData – It defines a common approach to access diverse data
HOW ODATA WORKS?




• OData Data Model – Provides a way to structure data, uses EDM same as Microsoft
  Entity Framework
• OData Service – Implements OData protocol, It also provides abstractions of the OData
  data model to translate data between its underlying form
• OData Protocol – Set of RESTful interactions like CRUD operations using Odata defined
  query language
• OData Client Library – Makes life easy for developers by providing them a way to access
  data via the OData protocol
UNIFORM URI CONVENTIONS/DEMO
System     Descriptions                               Examples
Query
Options
$filter    Applies the filtering condition            http://services.odata.org/Northwind/Northwind.svc/Cus
                                                      tomers?$filter=substringof('Alfreds', CompanyName) eq
                                                      true
$top       Returns top number of data items           http://services.odata.org/OData/OData.svc/Products?$t
                                                      op=5
$skip      Skips specified number of data items       http://services.odata.org/OData/OData.svc/Categories(1
                                                      )/Products?$skip=2
$orderby   Sort data items                            http://services.odata.org/OData/OData.svc/Products?$o
                                                      rderby=Rating
$expand    Request set of related entities to be      http://services.odata.org/OData/OData.svc/Categories?$
           retrieved                                  expand=Products
$select    Select specified properties only for the   http://services.odata.org/OData/OData.svc/Products?$s
           data items                                 elect=Price,Name
$count     Returns the total count of all data        http://services.odata.org/OData/OData.svc/Categories(1
           items                                      )/Products/$count
$format    Request data in the specified format       http://services.odata.org/OData/OData.svc/Products?$f
                                                      ormat=atom
UNIFORM URI CONVENTIONS (CONTINUE…)
Operators     Descriptions       Examples

Eq            Equal              http://services.odata.org/Northwind/Northwind.svc/Suppliers?$filter =
                                 City eq 'London'
Ne            Not equal          http://services.odata.org/Northwind/Northwind.svc/Suppliers?$filter =
                                 City ne 'London'
Gt            Greater than       http://services.odata.org/Northwind/Northwind.svc/Products?$filter =
                                 UnitPrice gt 10
Ge            Greater than or    http://services.odata.org/Northwind/Northwind.svc/Products?$filter =
              equal              UnitPrice ge 20
Lt            Less than          http://services.odata.org/Northwind/Northwind.svc/Products?$filter =
                                 UnitPrice lt 20
Le            Less than or       http://services.odata.org/Northwind/Northwind.svc/Products?$filter =
              equal              UnitPrice le 10
And           Logical and        http://services.odata.org/Northwind/Northwind.svc/Products?$filter =
                                 UnitPrice le 10 and UnitsInStock gt 10
Or            Logical or         http://services.odata.org/Northwind/Northwind.svc/Products?$filter =
                                 UnitPrice le 10 or UnitsInStock gt 10
Not           Logical negation   http://services.odata.org/Northwind/Northwind.svc/Products?$filter =
                                 not startswith(ProductName,'Ch')
ODATA Producers and Consumers



         PRODUCER                     CONSUMER



 SharePoint 2010, IBM Web         Browsers , ODATA Explorer ,
Sphere , SSRS, Windows Azure     Excel 2010 , LINQPAD, Sesame
      table storage etc.                 OData Browser




        Live OData Services: Netflix, OGDI,
        Pluralsight, TechEd2010, NerdDinner
        More details: http://www.odata.org/ecosystem
CONFIGURE SHAREPOINT 2010 WITH ODATA / TOOLS

• Install ADO.NET Data Services (CTP 2) to avoid 404 Errors -
  http://www.microsoft.com/download/en/details.aspx?id=23113
• Where is your Data Service Endpoint? –
  http://<sitename>/_vti_bin/ListData.svc
• Install Open Data Protocol Visualizer -
  http://visualstudiogallery.msdn.microsoft.com/f4ac856a-796e-4d78-9a3d-
  0120d8137722/
• Fiddler2 (Web debugging tool) – http://www.fiddler2.com/fiddler2/
• cURL (Command line tool for CRUD operations using OData) -
  http://curl.haxx.se/
DEMO – LET’S SEE ODATA WORKING IN SHAREPOINT 2010!



                       • CRUD Operations on
          Demo#1         SharePoint lists using OData




          Demo#2       • Create List Items using jQuery
Thanks a lot!
                            Q&A

Contact Information:
http://www.neudesic.com
Sanjay.Patel@neudesic.com
http://sanjaypatelblogs.wordpress.com/
http://www.linkedin.com/pub/sanjay-patel/4/82/16a
   @sanjay18283
OData and SharePoint

More Related Content

What's hot

OData, Open Data Protocol. A brief introduction
OData, Open Data Protocol. A brief introductionOData, Open Data Protocol. A brief introduction
OData, Open Data Protocol. A brief introductionEugenio Lentini
 
OData: A Standard API for Data Access
OData: A Standard API for Data AccessOData: A Standard API for Data Access
OData: A Standard API for Data AccessPat Patterson
 
Gaining the Knowledge of the Open Data Protocol (OData) - Prairie Dev Con
Gaining the Knowledge of the Open Data Protocol (OData) - Prairie Dev ConGaining the Knowledge of the Open Data Protocol (OData) - Prairie Dev Con
Gaining the Knowledge of the Open Data Protocol (OData) - Prairie Dev ConWoodruff Solutions LLC
 
Deploying RDF Linked Data via Virtuoso Universal Server
Deploying RDF Linked Data via Virtuoso Universal ServerDeploying RDF Linked Data via Virtuoso Universal Server
Deploying RDF Linked Data via Virtuoso Universal Serverrumito
 
Learning How to Shape and Configure an OData Service for High Performing Web ...
Learning How to Shape and Configure an OData Service for High Performing Web ...Learning How to Shape and Configure an OData Service for High Performing Web ...
Learning How to Shape and Configure an OData Service for High Performing Web ...Woodruff Solutions LLC
 
OData for iOS developers
OData for iOS developersOData for iOS developers
OData for iOS developersGlen Gordon
 
Solving Real Problems Using Linked Data
Solving Real Problems Using Linked DataSolving Real Problems Using Linked Data
Solving Real Problems Using Linked Datarumito
 
Gaining the Knowledge of the Open Data Protocol (OData)
Gaining the Knowledge of the Open Data Protocol (OData)Gaining the Knowledge of the Open Data Protocol (OData)
Gaining the Knowledge of the Open Data Protocol (OData)Woodruff Solutions LLC
 
Odata - Open Data Protocol
Odata - Open Data ProtocolOdata - Open Data Protocol
Odata - Open Data ProtocolKhaled Musaied
 
Virtuoso Universal Server Overview
Virtuoso Universal Server OverviewVirtuoso Universal Server Overview
Virtuoso Universal Server Overviewrumito
 
Learning How to Shape and Configure an OData Feed for High Performing Web Sit...
Learning How to Shape and Configure an OData Feed for High Performing Web Sit...Learning How to Shape and Configure an OData Feed for High Performing Web Sit...
Learning How to Shape and Configure an OData Feed for High Performing Web Sit...Woodruff Solutions LLC
 
The Top Tips You need to Learn about Data in your Mobile App
The Top Tips You need to Learn about Data in your Mobile AppThe Top Tips You need to Learn about Data in your Mobile App
The Top Tips You need to Learn about Data in your Mobile AppWoodruff Solutions LLC
 
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)Pat Patterson
 
Entity Framework Overview
Entity Framework OverviewEntity Framework Overview
Entity Framework Overviewukdpe
 

What's hot (20)

OData, Open Data Protocol. A brief introduction
OData, Open Data Protocol. A brief introductionOData, Open Data Protocol. A brief introduction
OData, Open Data Protocol. A brief introduction
 
A Look at OData
A Look at ODataA Look at OData
A Look at OData
 
OData: A Standard API for Data Access
OData: A Standard API for Data AccessOData: A Standard API for Data Access
OData: A Standard API for Data Access
 
Practical OData
Practical ODataPractical OData
Practical OData
 
Gaining the Knowledge of the Open Data Protocol (OData) - Prairie Dev Con
Gaining the Knowledge of the Open Data Protocol (OData) - Prairie Dev ConGaining the Knowledge of the Open Data Protocol (OData) - Prairie Dev Con
Gaining the Knowledge of the Open Data Protocol (OData) - Prairie Dev Con
 
API Design Tour: Dell
API Design Tour: DellAPI Design Tour: Dell
API Design Tour: Dell
 
Deploying RDF Linked Data via Virtuoso Universal Server
Deploying RDF Linked Data via Virtuoso Universal ServerDeploying RDF Linked Data via Virtuoso Universal Server
Deploying RDF Linked Data via Virtuoso Universal Server
 
Learning How to Shape and Configure an OData Service for High Performing Web ...
Learning How to Shape and Configure an OData Service for High Performing Web ...Learning How to Shape and Configure an OData Service for High Performing Web ...
Learning How to Shape and Configure an OData Service for High Performing Web ...
 
OData for iOS developers
OData for iOS developersOData for iOS developers
OData for iOS developers
 
Solving Real Problems Using Linked Data
Solving Real Problems Using Linked DataSolving Real Problems Using Linked Data
Solving Real Problems Using Linked Data
 
Gaining the Knowledge of the Open Data Protocol (OData)
Gaining the Knowledge of the Open Data Protocol (OData)Gaining the Knowledge of the Open Data Protocol (OData)
Gaining the Knowledge of the Open Data Protocol (OData)
 
Odata - Open Data Protocol
Odata - Open Data ProtocolOdata - Open Data Protocol
Odata - Open Data Protocol
 
Entity Framework 4
Entity Framework 4Entity Framework 4
Entity Framework 4
 
Virtuoso Universal Server Overview
Virtuoso Universal Server OverviewVirtuoso Universal Server Overview
Virtuoso Universal Server Overview
 
Learning How to Shape and Configure an OData Feed for High Performing Web Sit...
Learning How to Shape and Configure an OData Feed for High Performing Web Sit...Learning How to Shape and Configure an OData Feed for High Performing Web Sit...
Learning How to Shape and Configure an OData Feed for High Performing Web Sit...
 
The Top Tips You need to Learn about Data in your Mobile App
The Top Tips You need to Learn about Data in your Mobile AppThe Top Tips You need to Learn about Data in your Mobile App
The Top Tips You need to Learn about Data in your Mobile App
 
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
 
RESTEasy
RESTEasyRESTEasy
RESTEasy
 
API
APIAPI
API
 
Entity Framework Overview
Entity Framework OverviewEntity Framework Overview
Entity Framework Overview
 

Viewers also liked

Mule fundamentals muthu guru rathinesh g
Mule fundamentals muthu guru rathinesh gMule fundamentals muthu guru rathinesh g
Mule fundamentals muthu guru rathinesh gMuthu Guru Rathinesh G
 
Restful & odata using asp.net web api
Restful & odata using asp.net web apiRestful & odata using asp.net web api
Restful & odata using asp.net web api昱劭 劉
 
Mule ESB - Integration Simplified
Mule ESB - Integration SimplifiedMule ESB - Integration Simplified
Mule ESB - Integration SimplifiedRich Software
 
Service Oriented Architecture - Agility Rules!
Service Oriented Architecture - Agility Rules!Service Oriented Architecture - Agility Rules!
Service Oriented Architecture - Agility Rules!Dan Selman
 

Viewers also liked (6)

Mule fundamentals muthu guru rathinesh g
Mule fundamentals muthu guru rathinesh gMule fundamentals muthu guru rathinesh g
Mule fundamentals muthu guru rathinesh g
 
Restful & odata using asp.net web api
Restful & odata using asp.net web apiRestful & odata using asp.net web api
Restful & odata using asp.net web api
 
Mule ESB - Integration Simplified
Mule ESB - Integration SimplifiedMule ESB - Integration Simplified
Mule ESB - Integration Simplified
 
Service Oriented Architecture - Agility Rules!
Service Oriented Architecture - Agility Rules!Service Oriented Architecture - Agility Rules!
Service Oriented Architecture - Agility Rules!
 
EA and SOA
EA and SOAEA and SOA
EA and SOA
 
From SOA to MSA
From SOA to MSAFrom SOA to MSA
From SOA to MSA
 

Similar to OData and SharePoint

Consuming Data From Many Platforms: The Benefits of OData - St. Louis Day of ...
Consuming Data From Many Platforms: The Benefits of OData - St. Louis Day of ...Consuming Data From Many Platforms: The Benefits of OData - St. Louis Day of ...
Consuming Data From Many Platforms: The Benefits of OData - St. Louis Day of ...Eric D. Boyd
 
MuleSoft London Community February 2020 - MuleSoft and OData
MuleSoft London Community February 2020 - MuleSoft and ODataMuleSoft London Community February 2020 - MuleSoft and OData
MuleSoft London Community February 2020 - MuleSoft and ODataPace Integration
 
Wcf data services
Wcf data servicesWcf data services
Wcf data servicesEyal Vardi
 
Gaining the Knowledge of the Open Data Protocol (OData)
Gaining the Knowledge of the Open Data Protocol (OData)Gaining the Knowledge of the Open Data Protocol (OData)
Gaining the Knowledge of the Open Data Protocol (OData)Woodruff Solutions LLC
 
SAP ODATA Overview & Guidelines
SAP ODATA Overview & GuidelinesSAP ODATA Overview & Guidelines
SAP ODATA Overview & GuidelinesAshish Saxena
 
Odata introduction
Odata introductionOdata introduction
Odata introductionAhmad Dwedar
 
Building RESTfull Data Services with WebAPI
Building RESTfull Data Services with WebAPIBuilding RESTfull Data Services with WebAPI
Building RESTfull Data Services with WebAPIGert Drapers
 
Building nTier Applications with Entity Framework Services (Part 2)
Building nTier Applications with Entity Framework Services (Part 2)Building nTier Applications with Entity Framework Services (Part 2)
Building nTier Applications with Entity Framework Services (Part 2)David McCarter
 
Document_format_for_OData_In_A_Nutshell.pdf
Document_format_for_OData_In_A_Nutshell.pdfDocument_format_for_OData_In_A_Nutshell.pdf
Document_format_for_OData_In_A_Nutshell.pdfdavidjpeace
 
Spstc2011 managed metadata real world
Spstc2011 managed metadata real worldSpstc2011 managed metadata real world
Spstc2011 managed metadata real worldAtul Chhoda
 
Spstc2011 managed metadata real world
Spstc2011 managed metadata real worldSpstc2011 managed metadata real world
Spstc2011 managed metadata real worldAtul Chhoda
 
Building nTier Applications with Entity Framework Services (Part 2)
Building nTier Applications with Entity Framework Services (Part 2)Building nTier Applications with Entity Framework Services (Part 2)
Building nTier Applications with Entity Framework Services (Part 2)David McCarter
 
Great APIs - Future of Your Progress App
Great APIs - Future of Your Progress AppGreat APIs - Future of Your Progress App
Great APIs - Future of Your Progress AppGabriel Lucaciu
 
Rest with Java EE 6 , Security , Backbone.js
Rest with Java EE 6 , Security , Backbone.jsRest with Java EE 6 , Security , Backbone.js
Rest with Java EE 6 , Security , Backbone.jsCarol McDonald
 

Similar to OData and SharePoint (20)

Consuming Data From Many Platforms: The Benefits of OData - St. Louis Day of ...
Consuming Data From Many Platforms: The Benefits of OData - St. Louis Day of ...Consuming Data From Many Platforms: The Benefits of OData - St. Louis Day of ...
Consuming Data From Many Platforms: The Benefits of OData - St. Louis Day of ...
 
Introduction to o data
Introduction to o dataIntroduction to o data
Introduction to o data
 
MuleSoft London Community February 2020 - MuleSoft and OData
MuleSoft London Community February 2020 - MuleSoft and ODataMuleSoft London Community February 2020 - MuleSoft and OData
MuleSoft London Community February 2020 - MuleSoft and OData
 
Wcf data services
Wcf data servicesWcf data services
Wcf data services
 
Gaining the Knowledge of the Open Data Protocol (OData)
Gaining the Knowledge of the Open Data Protocol (OData)Gaining the Knowledge of the Open Data Protocol (OData)
Gaining the Knowledge of the Open Data Protocol (OData)
 
SAP ODATA Overview & Guidelines
SAP ODATA Overview & GuidelinesSAP ODATA Overview & Guidelines
SAP ODATA Overview & Guidelines
 
OData – Super Cola W3
OData – Super Cola W3OData – Super Cola W3
OData – Super Cola W3
 
Odata introduction
Odata introductionOdata introduction
Odata introduction
 
Odata
OdataOdata
Odata
 
Building RESTfull Data Services with WebAPI
Building RESTfull Data Services with WebAPIBuilding RESTfull Data Services with WebAPI
Building RESTfull Data Services with WebAPI
 
RESTfulDay9
RESTfulDay9RESTfulDay9
RESTfulDay9
 
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 2
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 2Autodesk Technical Webinar: SAP NetWeaver Gateway Part 2
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 2
 
Building nTier Applications with Entity Framework Services (Part 2)
Building nTier Applications with Entity Framework Services (Part 2)Building nTier Applications with Entity Framework Services (Part 2)
Building nTier Applications with Entity Framework Services (Part 2)
 
Document_format_for_OData_In_A_Nutshell.pdf
Document_format_for_OData_In_A_Nutshell.pdfDocument_format_for_OData_In_A_Nutshell.pdf
Document_format_for_OData_In_A_Nutshell.pdf
 
Spstc2011 managed metadata real world
Spstc2011 managed metadata real worldSpstc2011 managed metadata real world
Spstc2011 managed metadata real world
 
Spstc2011 managed metadata real world
Spstc2011 managed metadata real worldSpstc2011 managed metadata real world
Spstc2011 managed metadata real world
 
Building nTier Applications with Entity Framework Services (Part 2)
Building nTier Applications with Entity Framework Services (Part 2)Building nTier Applications with Entity Framework Services (Part 2)
Building nTier Applications with Entity Framework Services (Part 2)
 
Great APIs - Future of Your Progress App
Great APIs - Future of Your Progress AppGreat APIs - Future of Your Progress App
Great APIs - Future of Your Progress App
 
NetWeaver Gateway- Introduction to OData
NetWeaver Gateway- Introduction to ODataNetWeaver Gateway- Introduction to OData
NetWeaver Gateway- Introduction to OData
 
Rest with Java EE 6 , Security , Backbone.js
Rest with Java EE 6 , Security , Backbone.jsRest with Java EE 6 , Security , Backbone.js
Rest with Java EE 6 , Security , Backbone.js
 

Recently uploaded

Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...apidays
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
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
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 

Recently uploaded (20)

Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
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...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

OData and SharePoint

  • 1. REST & OData Sanjay Patel
  • 2. WHAT WILL BE COVERED • What is REST? • What is OData? • OData Architecture Overview • OData Producers ,Consumers and Live OData Services • Configure SharePoint 2010 to work with OData / Tools • Demo#1- CRUD Operations on SharePoint lists using Odata • Demo#2 - Create List Items using jQuery • Q & A?
  • 3. REST - REPRESENTATIONAL STATE TRANSFER REST is an architecture style NOT a standard but it uses standards REST is the Service on the Web It uses HTTP protocol It uses URI for resource identification (REST) It provides Uniform Interface
  • 4. WHAT IS ODATA? It is a protocol based on web standards It is used for querying and updating data It uses HTTP protocol It uses ATOM and JSON web message formats It uses URI for resource identification (REST) It provides filtering, sorting, paging etc. OOTB
  • 5. UNIFORM OPERATIONS HTTP POST • CREATE Data in Data Source HTTP GET • RETERIVE Data from Data Source HTTP PUT • UPDATE Data in Data Source HTTP DELETE • DELETE Data in Data Source
  • 6. UNIFORM REPRESENTATIONS OF DATA Message Format JSON for AJAX JSON ATOM clients • Text based Format • XML Based • Comes from Format ATOM for JavaScript world • Originally • Can be consumed by competed with any type many languages RSS • Same as ATOM with less <> and more [] • Boils down to lists of data of clients
  • 7. WHAT PROBLEM ODATA IS TRYING TO SOLVE? • What is the common problem? - Scattered data all over in different data sources and not a common way to access them • The Solution is OData – It defines a common approach to access diverse data
  • 8. HOW ODATA WORKS? • OData Data Model – Provides a way to structure data, uses EDM same as Microsoft Entity Framework • OData Service – Implements OData protocol, It also provides abstractions of the OData data model to translate data between its underlying form • OData Protocol – Set of RESTful interactions like CRUD operations using Odata defined query language • OData Client Library – Makes life easy for developers by providing them a way to access data via the OData protocol
  • 9. UNIFORM URI CONVENTIONS/DEMO System Descriptions Examples Query Options $filter Applies the filtering condition http://services.odata.org/Northwind/Northwind.svc/Cus tomers?$filter=substringof('Alfreds', CompanyName) eq true $top Returns top number of data items http://services.odata.org/OData/OData.svc/Products?$t op=5 $skip Skips specified number of data items http://services.odata.org/OData/OData.svc/Categories(1 )/Products?$skip=2 $orderby Sort data items http://services.odata.org/OData/OData.svc/Products?$o rderby=Rating $expand Request set of related entities to be http://services.odata.org/OData/OData.svc/Categories?$ retrieved expand=Products $select Select specified properties only for the http://services.odata.org/OData/OData.svc/Products?$s data items elect=Price,Name $count Returns the total count of all data http://services.odata.org/OData/OData.svc/Categories(1 items )/Products/$count $format Request data in the specified format http://services.odata.org/OData/OData.svc/Products?$f ormat=atom
  • 10. UNIFORM URI CONVENTIONS (CONTINUE…) Operators Descriptions Examples Eq Equal http://services.odata.org/Northwind/Northwind.svc/Suppliers?$filter = City eq 'London' Ne Not equal http://services.odata.org/Northwind/Northwind.svc/Suppliers?$filter = City ne 'London' Gt Greater than http://services.odata.org/Northwind/Northwind.svc/Products?$filter = UnitPrice gt 10 Ge Greater than or http://services.odata.org/Northwind/Northwind.svc/Products?$filter = equal UnitPrice ge 20 Lt Less than http://services.odata.org/Northwind/Northwind.svc/Products?$filter = UnitPrice lt 20 Le Less than or http://services.odata.org/Northwind/Northwind.svc/Products?$filter = equal UnitPrice le 10 And Logical and http://services.odata.org/Northwind/Northwind.svc/Products?$filter = UnitPrice le 10 and UnitsInStock gt 10 Or Logical or http://services.odata.org/Northwind/Northwind.svc/Products?$filter = UnitPrice le 10 or UnitsInStock gt 10 Not Logical negation http://services.odata.org/Northwind/Northwind.svc/Products?$filter = not startswith(ProductName,'Ch')
  • 11. ODATA Producers and Consumers PRODUCER CONSUMER SharePoint 2010, IBM Web Browsers , ODATA Explorer , Sphere , SSRS, Windows Azure Excel 2010 , LINQPAD, Sesame table storage etc. OData Browser Live OData Services: Netflix, OGDI, Pluralsight, TechEd2010, NerdDinner More details: http://www.odata.org/ecosystem
  • 12. CONFIGURE SHAREPOINT 2010 WITH ODATA / TOOLS • Install ADO.NET Data Services (CTP 2) to avoid 404 Errors - http://www.microsoft.com/download/en/details.aspx?id=23113 • Where is your Data Service Endpoint? – http://<sitename>/_vti_bin/ListData.svc • Install Open Data Protocol Visualizer - http://visualstudiogallery.msdn.microsoft.com/f4ac856a-796e-4d78-9a3d- 0120d8137722/ • Fiddler2 (Web debugging tool) – http://www.fiddler2.com/fiddler2/ • cURL (Command line tool for CRUD operations using OData) - http://curl.haxx.se/
  • 13. DEMO – LET’S SEE ODATA WORKING IN SHAREPOINT 2010! • CRUD Operations on Demo#1 SharePoint lists using OData Demo#2 • Create List Items using jQuery
  • 14. Thanks a lot! Q&A Contact Information: http://www.neudesic.com Sanjay.Patel@neudesic.com http://sanjaypatelblogs.wordpress.com/ http://www.linkedin.com/pub/sanjay-patel/4/82/16a @sanjay18283