the web services game
DESCRIPTION
The Web Services Game. This game is intended for a non technical audience ; We have purposely simplified technical aspect. What is a Web Service. It is a piece of software that runs remotely, It is accessible over a network (e.g. Internet), - PowerPoint PPT PresentationTRANSCRIPT
The Web Services Game
• This game is intended for a non technical audience;
• We have purposely simplified technical aspect.
2
What is a Web Service
• It is a piece of software that runs remotely,• It is accessible over a network (e.g. Internet),• It is meant for machine to machine communication,• Independent from programming languages,• It can be operated following specific rules (i.e. protocol),
• There are 2 main protocols in use…
3
REST Web Services
4
URL
Data / Status
1
2
3
Rea
dsWADL
SOAP Web Services
5
GET WSDL
WSDL
1 2
3
Rea
ds
SOAP Request
SOAP Response
4
5
Method / Parameters
Data
4 5
WSDL
6
SOAP vs. REST
• Based on Standards,
• Only accessed by software,
• Allow description of complex data structure in request and response,
7
• Geared to simplicity,
• A browser can be a client,
• Request as complex as a URL can be,
Playing the REST Game
8
The Actors
• The user
• The client application
• The REST Service
• Mr Internet
9
How to play the REST game
1. Choose the actors
2. Get the User to ask a question to the Client Application
3. Get the Client Application to format a URL with user parameters
4. The Client Application invoked the Web Service with the URL
5. The Web Service processes the request and sends the data back to the Client Application (with the help of Mr Internet)
1. The Client application processed the data and shows to the User
10
The REST Service
• Name: Dbfetch
• Purpose: To serve sequence of biological entities
• Documentation: http://www.ebi.ac.uk/Tools/dbfetch
• Query Example:• Get sequence of protein Q07812 from UniProt• Get Gene sequence for Ensembl Transcript: ENST00000345358
11
Dbfetch Documentation
How to build a URL ?
http://www.ebi.ac.uk/Tools/dbfetch/dbfetch?db=${DB}&id=${ID}&format=${FORMAT}&style=raw
URL Parameters
• DB• uniprotkb• ensembl• embl• …
12
• ID • FORMAT• fasta• embl• …
The REST URL
http://www.ebi.ac.uk/Tools/dbfetch/dbfetch?db=_____&id=_________&format=____&style=raw
13
The Data – Protein sequence
14
The Data – Gene sequence
15
Playing the SOAP Game
16
The Actors
• The user
• The client application
• The SOAP Service
• Mr Internet
17
How to play the SOAP game
1. Choose the actors
2. Get the User to ask a question to the Client Application
3. Get the Client Application to retrieve the WSDL from the Web Service (with the help of Mr Internet)
4. The Client Application chooses the method and parameters
5. The Client Application sends the SOAP request to the Web Service (with the help of Mr Internet)
6. Web Service process the request and generate data, wraps it in a SOAP Response and send it back to the Client Application
7. The Client application processed the data and shows to the User
18
The SOAP Service
• Name: Dbfetch
• Purpose: To serve sequence of biological entities
• Documentation: http://www.ebi.ac.uk/Tools/webservices/services/dbfetch
• Query Example:• Get sequence of protein Q07812 from UniProt• Get Gene sequence for Ensembl Transcript: ENST00000345358
19
Dbfetch WSDL
Where is the WSDL file ?
http://www.ebi.ac.uk/ws/services/WSDbfetchDoclit?wsdl
Methods available
• getSupportedDbs
• getSupportedFormats
• getDbFormats• db
20
• fetchData• query (i.e. db:id)• format• style
A SOAP Request
Method name: _____________________
Parameters:
21
Name Value
The Data – Protein sequence
22
The Data – Gene sequence
23
Rafael Jimenez
Samuel Kerrien
You for being such good actors ;)
Acknowledgments