What is this?

The Global Wind Atlas mapserver portal also provides Web Processing Services (WPS). These services provide canned scripts that allow the user to extract data that is created for a specific analysis.

How do I use a WPS Service?

WPS services can be accessed using GET, POST, and SOAP. As most of the GWA services interact with polygons, POST and SOAP are the recommended ways of interacting with the services, due to length restrictions on GET methods. Below you can find a fairly common workflow for interacting with any WPS service, however it is specific to our system.

Processes are exposed to the user through the GetCapabilities request. This provides titles and abstracts for all of the services availible on the server.

http://globalwindatlas.com/zoo?SERVICE=WPS&VERSION=1.0.0&REQUEST=GetCapabilities

Once you find a process of interest you can learn more about it by using the DescribeProcesses request

http://globalwindatlas.com/zoo?SERVICE=WPS&VERSION=1.0.0&REQUEST=DescribeProcess&IDENTIFIER=MonTsCFDDA

You can execute the process through a GET request through the URL

http://globalwindatlas.com/zoo?SERVICE=WPS&VERSION=1.0.0&REQUEST=Execute&IDENTIFIER=MonTsCFDDA&DataInputs=location={"type":"Polygon","coordinates":[[[10.784046624968926,59.979419288019415],[12.629749749968928,55.655519904190044],[18.166859124968926,59.38044534553231],[10.784046624968926,59.979419288019415]]]}&RawDataOutput=timeseries

You can execute the process through a POST request using XML

<?xml version="1.0" encoding="UTF-8"?>
<wps:Execute service="WPS" version="1.0.0" xmlns:wps="http://www.opengis.net/wps/1.0.0"
       xmlns:ows="http://www.opengis.net/ows/1.1"
       xmlns:xlink="http://www.w3.org/1999/xlink"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd">
   <ows:Identifier>MonTsCFDDA</ows:Identifier>
   <wps:DataInputs>
       <wps:Input>
           <ows:Identifier>location</ows:Identifier>
           <wps:Data>
               <wps:ComplexData mimeType="application/json">{"type":"Polygon","coordinates":[[[10.784046624968926,59.979419288019415],[12.629749749968928,55.655519904190044],[18.166859124968926,59.38044534553231],[10.784046624968926,59.979419288019415]]]}              </wps:ComplexData>
           </wps:Data>
       </wps:Input>
   </wps:DataInputs>
   <wps:ResponseForm>
       <wps:RawDataOutput>
           <ows:Identifier>timeseries</ows:Identifier>
       </wps:RawDataOutput>
   </wps:ResponseForm>
</wps:Execute>