web_services_game

advertisement
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
WADL
1
4
2
URL
3
Data / Status
SOAP Web Services
WSDL
1
2
GET WSDL
3
WSDL
4
SOAP Request
5
SOAP Response
Method / Parameters
4
5
Data
5
6
SOAP vs. REST
• Based on Standards,
• Geared to simplicity,
• Only accessed by software,
• A browser can be a client,
• Allow description of complex
data structure in request and
response,
• Request as complex as a
URL can be,
7
Playing the REST Game
8
The Actors
9
•
The user
•
The client application
•
The REST Service
•
Mr Internet
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
•
•
•
•
12
uniprotkb
ensembl
embl
…
• 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
17
•
The user
•
The client application
•
The SOAP Service
•
Mr Internet
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:
Name
21
Value
The Data – Protein sequence
22
The Data – Gene sequence
23
Acknowledgments
Rafael Jimenez
Samuel Kerrien
You for being such good actors ;)
Download