source: branches/PublicaMundi_David-devel/docs/client/what.rst @ 914

Last change on this file since 914 was 696, checked in by djay, 9 years ago

Small fixes in the main documentation.

  • Property svn:keywords set to Date Author
File size: 5.9 KB
RevLine 
[659]1.. _client-what:
2
3What is ZOO-Client ?
4=========================
5
6ZOO-Client is a client-side JavaScript API which provides simple methods
7for interacting with `WPS <http://www.opengeospatial.org/standards/wps/>`__ server from web
8applications. It is helpful for sending requests to any WPS compliant
9server (such as :ref:`kernel_index`) and to parse the output responses
10using simple JavaScript.
11
12
13JavaScript
14-------------------------------
15
16ZOO-Client relies on modern JavaScript libraries and can be seamlessly
17integrated in new or existing web platforms or applications. ZOO-Client works by expanding the tags available in WPS specific
18templates using values provided by a JavaScript hash or object. It
19allows to build valid WPS requests and to send them to a WPS server. It
20also provides functions to easily parse and reuse the output XML
21responses. Read the :ref:`next section <client-howto>` to get started.
22
23
24Templates
25-------------------------------
26
27ZOO-Client uses logic-less `Mustache <http://mustache.github.io/>`__
28templates for creating well-formed WPS requests. Templates are called
29*logic-less* because they do not contain any *if* statements, *else*
30clauses, or *for* loops, but only **tags**. Some tags are dynamically replaced by a
31value or a series of values.
32
33
34GetCapabilities
35..........................................................
36
37*GetCapabilities* requests are created using the following template:
38
39::
40   
41   <wps:GetCapabilities xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:wps="http://www.opengis.net/wps/1.0.0" 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 ../wpsGetCapabilities_request.xsd" language="{{language}}" service="WPS">
42    <wps:AcceptVersions>
43        <ows:Version>1.0.0</ows:Version>
44    </wps:AcceptVersions>
45   </wps:GetCapabilities>
46
47
48DescribeProcess
49..........................................................
50
51*DescribeProcess* requests are created using the following template:
52
53::
54
55   <DescribeProcess xmlns="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 ../wpsDescribeProcess_request.xsd" service="WPS" version="1.0.0" language="{{language}}">
56   {{#identifiers}}
57   <ows:Identifier>{{.}}</ows:Identifier>
58   {{/identifiers}}
59   </DescribeProcess>
60
61
62Execute
63..........................................................
64
65*Execute* requests are created using a more complex template, as shown bellow:
66
67::
68
69   <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../wpsExecute_request.xsd" language="{{language}}">
70   <!-- template-version: 0.21 -->
71        <ows:Identifier>{{Identifier}}</ows:Identifier>
72        <wps:DataInputs>
73        {{#DataInputs}}
74        {{#is_literal}}
75                <wps:Input>
76                        <ows:Identifier>{{identifier}}</ows:Identifier>
77                        <wps:Data>
78                                <wps:LiteralData{{#dataType}} dataType="{{dataType}}"{{/dataType}}>{{value}}</wps:LiteralData>
79                        </wps:Data>
80                </wps:Input>
81                {{/is_literal}}
82                {{#is_bbox}}
83                <wps:Input>
84                        <ows:Identifier>{{identifier}}</ows:Identifier>
85                        <wps:Data>
86                                <wps:BoundingBoxData ows:crs="{{crs}}" ows:dimensions="{{dimension}}">
87            <ows:LowerCorner>{{lowerCorner}}</ows:LowerCorner>
88            <ows:UpperCorner>{{upperCorner}}</ows:UpperCorner>
89         </wps:BoundingBoxData>
90                        </wps:Data>
91                </wps:Input>
92                {{/is_bbox}}
93                {{#is_complex}}
94                {{#is_reference}}
95                {{#is_get}}
96                <wps:Input>
97                        <ows:Identifier>{{identifier}}</ows:Identifier>
98                        <wps:Reference xlink:href="{{href}}"{{#schema}} schema="{{shema}}"{{/schema}}{{#mimeType}} mimeType="{{mimeType}}"{{/mimeType}}{{#encoding}} encoding="{{encoding}}"{{/encoding}}/>
99                </wps:Input>
100                {{/is_get}}
101                {{#is_post}}
102                <wps:Input>
103                        <ows:Identifier>{{identifier}}</ows:Identifier>
104                        <wps:Reference xlink:href="{{href}}" method="{{method}}">
105                        {{#headers}}
106                          <wps:Header key="{{key}}" value="{{value}}" />
107                          {{/headers}}
108                          <wps:Body>{{{value}}}</wps:Body>
109                        </wps:Reference>
110                </wps:Input>
111                {{/is_post}}
112                {{/is_reference}}
113                {{^is_reference}}
114                <wps:Input>
115      <ows:Identifier>{{identifier}}</ows:Identifier>
116      <wps:Data>
117        <wps:ComplexData{{#schema}} schema="{{shema}}"{{/schema}}{{#mimeType}} mimeType="{{mimeType}}"{{/mimeType}}{{#encoding}} encoding="{{encoding}}"{{/encoding}}>{{#is_XML}}
118         {{{value}}}{{/is_XML}}{{^is_XML}}<![CDATA[{{{value}}}]]>{{/is_XML}}
119        </wps:ComplexData>
120      </wps:Data>
121    </wps:Input>
122    {{/is_reference}}
123    {{/is_complex}}
124    {{/DataInputs}}
125        </wps:DataInputs>       
126        <wps:ResponseForm>
127        {{#RawDataOutput}}
128        {{#DataOutputs}}
129    <wps:RawDataOutput mimeType="{{mimeType}}">
130      <ows:Identifier>{{identifier}}</ows:Identifier>
131    </wps:RawDataOutput>
132    {{/DataOutputs}}
133    {{/RawDataOutput}}
134    {{^RawDataOutput}}
135    <wps:ResponseDocument{{#storeExecuteResponse}} storeExecuteResponse="{{storeExecuteResponse}}"{{/storeExecuteResponse}}{{#lineage}} lineage="{{lineage}}"{{/lineage}}{{#status}} status="{{status}}"{{/status}}>
136    {{#DataOutputs}}
137    {{#is_literal}}
138      <wps:Output{{#dataType}} dataType="{{dataType}}"{{/dataType}}{{#uom}} uom="{{uom}}"{{/uom}}>
139        <ows:Identifier>{{identifier}}</ows:Identifier>
140      </wps:Output>
141      {{/is_literal}}
142      {{^is_literal}}
143      <wps:Output{{#asReference}} asReference="{{asReference}}"{{/asReference}}{{#schema}} schema="{{schema}}"{{/schema}}{{#mimeType}} mimeType="{{mimeType}}"{{/mimeType}}{{#encoding}} encoding="{{encoding}}"{{/encoding}}>
144        <ows:Identifier>{{identifier}}</ows:Identifier>
145      </wps:Output>
146      {{/is_literal}}
147      {{/DataOutputs}}
148    </wps:ResponseDocument>
149    {{/RawDataOutput}}
150    </wps:ResponseForm>
151    </wps:Execute>
Note: See TracBrowser for help on using the repository browser.

Search

Context Navigation

ZOO Sponsors

http://www.zoo-project.org/trac/chrome/site/img/geolabs-logo.pnghttp://www.zoo-project.org/trac/chrome/site/img/neogeo-logo.png http://www.zoo-project.org/trac/chrome/site/img/apptech-logo.png http://www.zoo-project.org/trac/chrome/site/img/3liz-logo.png http://www.zoo-project.org/trac/chrome/site/img/gateway-logo.png

Become a sponsor !

Knowledge partners

http://www.zoo-project.org/trac/chrome/site/img/ocu-logo.png http://www.zoo-project.org/trac/chrome/site/img/gucas-logo.png http://www.zoo-project.org/trac/chrome/site/img/polimi-logo.png http://www.zoo-project.org/trac/chrome/site/img/fem-logo.png http://www.zoo-project.org/trac/chrome/site/img/supsi-logo.png http://www.zoo-project.org/trac/chrome/site/img/cumtb-logo.png

Become a knowledge partner

Related links

http://zoo-project.org/img/ogclogo.png http://zoo-project.org/img/osgeologo.png