Using WPS (PyWPS) with Taverna Orchestration

Preview:

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

Citation preview

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

WhoAmI

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

(Plymouth Marine Laboratory)

Project

http://netmar.nersc.no/

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

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

Basically some generic description of SOAP and WSDL support

SOAP, WSDL..and WPS

• Have you ever noticed this ?????

 

SOAP, WSDL..and WPS

DANGER, here be dragons

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.

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>

SOAP

SOAP

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

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

4-some: PyWPS, WSDL, SOAP and XSLT

Warning!!!! Here be translations

4-some: PyWPS, WSDL, SOAP and XSLT

DescribeProcess (all) XML

Python Code (PyWPS process code)

Information Source

XSLT

4-some: PyWPS, WSDL, SOAP and XSLT

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

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)

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

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

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

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

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

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

Children play !!!!!

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

Extensive documentation

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

Thank you