MODIFICATIONS TO WEB PROCESSING SERVICE STANDARD
FOR CLIENT-SIDE GEOPROCESSING
Evgeny Panidi, Eduard Kazakov, Anton Terekhov, Evgeny Kapralov
Saint-Petersburg State UniversityInstitute of Earth Sciences
Department of Cartography and Geoinformatics
The study was partially supported by Russian Foundation for Basic Research (RFBR), research project No. 13-05-12079 ofi_m.
Problem• All of the current geospatial standards for Web are the
server-oriented standards.
• Web Processing Service gives the data, not the tool.
• Implementation of the IoT and Fog Computing concepts into WebGIS is at the early beginning stage.
• Client-side resources are not in use.
2Modifications to Web Processing Service Standard for Client-Side GeoprocessingFree and Open Source Software for Geospatial Conference (FOSS4G 2015), 14–19 September 2015, Seoul, South Korea © Evgeny Panidi ([email protected])
Idea• User’s point of view:
• Large data amounts on the client side;• Unstable communication channels;• Data transfer restrictions;• Growing computational facilities.
• SDI’s point of view:• Distributed data!• Distributed services and tools?
3Modifications to Web Processing Service Standard for Client-Side GeoprocessingFree and Open Source Software for Geospatial Conference (FOSS4G 2015), 14–19 September 2015, Seoul, South Korea © Evgeny Panidi ([email protected])
Idea• User’s point of view:
• Large data amounts on the client side;• Unstable communication channels;• Data transfer restrictions;• Growing computational facilities.
• SDI’s point of view:• Distributed data!• Distributed services and tools?
• The obvious way is to transmit the tool instead of the data.
4Modifications to Web Processing Service Standard for Client-Side GeoprocessingFree and Open Source Software for Geospatial Conference (FOSS4G 2015), 14–19 September 2015, Seoul, South Korea © Evgeny Panidi ([email protected])
Objectives
• Open source approach implementation;
• Server-side and client-side processing using single code;
• Backward compatibility with OGC WPS standard;
• Abstract specification – different implementations.
5Modifications to Web Processing Service Standard for Client-Side GeoprocessingFree and Open Source Software for Geospatial Conference (FOSS4G 2015), 14–19 September 2015, Seoul, South Korea © Evgeny Panidi ([email protected])
Solution
6
getProcess method for the executable code transmitting to the client computer (in case of WPS 1.0.0):
Modifications to Web Processing Service Standard for Client-Side GeoprocessingFree and Open Source Software for Geospatial Conference (FOSS4G 2015), 14–19 September 2015, Seoul, South Korea © Evgeny Panidi ([email protected])
Our Implementation• Python
• PSFL license;
• Interpreted language executable in different environments and on different software platforms;
• Libraries for geospatial data processing;
• De facto standard language for GIS add-ons.
• Python code + PyWPS + HGWS Server + Client-Side RE = Hybrid Geoprocessing Web Service
7Modifications to Web Processing Service Standard for Client-Side GeoprocessingFree and Open Source Software for Geospatial Conference (FOSS4G 2015), 14–19 September 2015, Seoul, South Korea © Evgeny Panidi ([email protected])
General Schema• Server-side processing is WPS-
like.
• Client-side processing: getting list of executable files with getProces request.
• Executable code:• fModules are the containers for
processing algorithms (script files, DLLs, bytecode files etc.) – the client-side Runtime Environment is needed;
• ExtraApps are active software components that can be executed directly or through RE.
8Modifications to Web Processing Service Standard for Client-Side GeoprocessingFree and Open Source Software for Geospatial Conference (FOSS4G 2015), 14–19 September 2015, Seoul, South Korea © Evgeny Panidi ([email protected])
HGWS Architecture
9Modifications to Web Processing Service Standard for Client-Side GeoprocessingFree and Open Source Software for Geospatial Conference (FOSS4G 2015), 14–19 September 2015, Seoul, South Korea © Evgeny Panidi ([email protected])
Chain of Requests• Step by step receiving of
processes list, selected process metadata and selected process components.
• getProcess GET example:http://some.host/server?
Request=getProcess&
Service=HGWS&
Version=x.0.0&
Platform=Win32&
Identifier=Process_name 10Modifications to Web Processing Service Standard for Client-Side Geoprocessing
Free and Open Source Software for Geospatial Conference (FOSS4G 2015), 14–19 September 2015, Seoul, South Korea © Evgeny Panidi ([email protected])
Current Results
11
Geoportal prototype for HGWSs publication and access Client-side RE application
http://195.70.211.131
Modifications to Web Processing Service Standard for Client-Side GeoprocessingFree and Open Source Software for Geospatial Conference (FOSS4G 2015), 14–19 September 2015, Seoul, South Korea © Evgeny Panidi ([email protected])
Future Work
• Unification and standardization.
• Atomization and orchestration.
• Security problems.
• Discussion on findings.
12Modifications to Web Processing Service Standard for Client-Side GeoprocessingFree and Open Source Software for Geospatial Conference (FOSS4G 2015), 14–19 September 2015, Seoul, South Korea © Evgeny Panidi ([email protected])