Using WPS (PyWPS) with Taverna Orchestration

22
WPS Orchestration in Taverna Jorge S. Mendes de Jesus Web Processing Service (WPS) technologies for Integrated Assessment Modelling in Urban Areas COST Action: TU0902 – 21-24 Jan 2014, Luxemburg

description

Presentation made in Luxemburg for workshop Web Processing Service (WPS) technologies for Integrated Assessment Modelling in Urban Areas COST Action: TU0902 – 21-24 Jan 2014, Luxemburg

Transcript of Using WPS (PyWPS) with Taverna Orchestration

Page 1: Using WPS (PyWPS) with Taverna Orchestration

WPS Orchestration in Taverna

Jorge S. Mendes de Jesus

Web Processing Service (WPS) technologies for Integrated Assessment Modelling in Urban Areas COST Action: TU0902 – 21-24 Jan 2014, Luxemburg

Page 2: Using WPS (PyWPS) with Taverna Orchestration

WhoAmI

Programmer, working in Wageningen (NL) @ ISRICThis presentation covers my work @ PML

(Plymouth Marine Laboratory)

Page 3: Using WPS (PyWPS) with Taverna Orchestration

Project

http://netmar.nersc.no/

http://rsg.pml.ac.uk/

Page 4: Using WPS (PyWPS) with Taverna Orchestration

Story telling....an uncharted annex...

Basically some generic description of SOAP and WSDL support

Page 5: Using WPS (PyWPS) with Taverna Orchestration

SOAP, WSDL..and WPS

• Have you ever noticed this ?????

Page 6: Using WPS (PyWPS) with Taverna Orchestration

 

SOAP, WSDL..and WPS

DANGER, here be dragons

Page 7: Using WPS (PyWPS) with Taverna Orchestration

WSDL

The Web Services Description Language is an XML-based interface description language that is used for describing the functionality offered by a web service.

XML that describes how your web service works , what it accepts and how it communicates.

Page 8: Using WPS (PyWPS) with Taverna Orchestration

WSDL

Yes, we need to re-invent the wheel....in this case WPS..inside WSDL

<definitions> <types> definition of types........ </types> <message> definition of a message.... </message> <portType> definition of a port....... </portType> <binding> definition of a binding.... </binding> <service> defintion of a service <service> </definitions>

Page 9: Using WPS (PyWPS) with Taverna Orchestration

SOAP

Page 10: Using WPS (PyWPS) with Taverna Orchestration

SOAP

Are you ready to see an execute Process in SOAP???

Page 11: Using WPS (PyWPS) with Taverna Orchestration

SOAP

Dummy process, adds and subtracts 1

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"> <soap:Body> <ExecuteProcess_DummyProcess> <datainput1>10</datainput1> <datainput2>20</datainput2> </ExecuteProcess_DummyProcess> </soap:Body> </soap:Envelope> Attr in El name

XML blasphemy !!!

Totally different from WPS

Page 12: Using WPS (PyWPS) with Taverna Orchestration

4-some: PyWPS, WSDL, SOAP and XSLT

Warning!!!! Here be translations

Page 13: Using WPS (PyWPS) with Taverna Orchestration

4-some: PyWPS, WSDL, SOAP and XSLT

DescribeProcess (all) XML

Python Code (PyWPS process code)

Information Source

XSLT

Page 14: Using WPS (PyWPS) with Taverna Orchestration

4-some: PyWPS, WSDL, SOAP and XSLT

New worlds, new opportunities !!!!! Before the new world......

Page 15: Using WPS (PyWPS) with Taverna Orchestration

4-some: PyWPS, WSDL, SOAP and XSLT

If you create a PyWPS it will be automatically translate to WSDL....so no extra config.....everything transparent

SOAP requests are translated to/from WPS requests/responses

Processes splited into sync and async since we need to define a different reply for async (No WSDL overloading)

Page 16: Using WPS (PyWPS) with Taverna Orchestration

5-some: PyWPS, WSDL, SOAP, XLST and Taverna

Lets give a look at the bioinformatics jungle....

Page 17: Using WPS (PyWPS) with Taverna Orchestration

5-some: PyWPS, WSDL, SOAP, XLST and Taverna

Having WSDL/SOAP we can run WPS in Taverna....Orchestration

Page 18: Using WPS (PyWPS) with Taverna Orchestration

Taverna (http://www.taverna.org.uk/)

Page 19: Using WPS (PyWPS) with Taverna Orchestration

Taverna (http://www.taverna.org.uk/)

Examples:

Gdalinfo:http://www.myexperiment.org/workflows/2313.html:

Watersheed:http://www.myexperiment.org/workflows.2066.html

SomeErrors:http://www.myexperiment.org/workflows/2340.html

Page 20: Using WPS (PyWPS) with Taverna Orchestration

Children play !!!!!

http://rsg.pml.ac.uk/wps/example/index.html

Page 21: Using WPS (PyWPS) with Taverna Orchestration

Extensive documentation

http://wiki.rsg.pml.ac.uk/pywps/PyWPS

Page 22: Using WPS (PyWPS) with Taverna Orchestration

Thank you