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
 

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
RestRest
Rest
 

Recently uploaded

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
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
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
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
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
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
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
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
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
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
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
 
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
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 

Recently uploaded (20)

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
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
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
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
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
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
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
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
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
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
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...
 
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
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 

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