source: branches/PublicaMundi_David-devel/workshop/2010/introduction.rst

Last change on this file was 715, checked in by nbozon, 8 years ago

corrected title colors in docs css

  • Property svn:keywords set to Date Author
File size: 5.2 KB
[686]1.. _introduction:
6.. contents:: Table of Contents
7    :depth: 5
8    :backlinks: top
10What is ZOO ?
13ZOO is a WPS (Web Processing Service) open source project recently released under a `MIT/X-11 <>`__ style license. It provides an OGC WPS compliant developer-friendly framework to create and chain WPS Web services. ZOO is made of three parts:
15  - `ZOO Kernel <>`__ : A powerful server-side C Kernel which makes it possible to manage and chain Web services coded in different programming languages.
16  - `ZOO Services <>`__ : A growing suite of example Web Services based on various open source libraries.
17  - `ZOO API <>`__ : A server-side JavaScript API able to call and chain the ZOO Services, which makes the development and chaining processes easier.
19ZOO is designed to make the service development easier by providing a powerful system
20able to understand and execute WPS compliant queries. It supports several programming
21languages, thus allowing you to create Web Services in your favorite one and from an
22already existing code. Further information on the project is available on the 
23`ZOO Project official website <>`__ .
25How does ZOO works ?
28ZOO is based on a 'WPS Service Kernel' which constitutes the ZOO's core system
29(aka ZOO Kernel). The latter is able to load dynamic libraries and to handle them
30as on-demand Web services. The ZOO Kernel is written in C language, but supports
31several common programming languages for creating ZOO Services.
33A ZOO Service is a link composed of a ZOO metadata file (.zcfg) and the code for
34the corresponding implementation. The metadata file describes all the available
35functions which can be called using a WPS Exec Request, as well as the desired
36input/output. Services contain the algorithms and functions, and can now be
37implemented in C/C++, Fortran, Java, Python, Perl, PHP and JavaScript.
39ZOO Kernel works with Apache and can communicate with cartographic engines and
40Web mapping clients. It simply adds the WPS support to your spatial data infrastructure
41and your Web mapping application. It can use every GDAL/OGR supported formats as input
42data and create suitable vector or raster output for your cartographic engine and/or
43your web-mapping client application.
45What are we going to do in this workshop?
48This workshop aims to present the ZOO Project and its features, and to explain its
49capabilities regarding the  `OGC WPS 1.0.0 specification <>`__.
50The participants will learn in 3 hours how to use ZOO Kernel, how to create
51ZOO Services and their configuration files and finally how to link the created
52Service with a client-side webmapping application. A pre-compiled ZOO 1.0 version
53is provided inside OSGeoLive, the OSGeo official Live DVD. For the sack of simplicity,
54an OSGeoLive Virtual Machine image disk is already installed on your computers.
55This will be used during this workshop, so the participants won't have to compile
56and install ZOO Kernel manually. Running and testing ZOO Kernel from this OSGeoLive
57image disk is thus the first step of the workshop, and every participants should
58get a working ZOO Kernel in less than 30 minutes.
60Once ZOO Kernel will be tested from a Web browser using GetCapabilities requests,
61participants will be invited to create an OGR based ZOO Service Provider aiming to
62enable simple spatial operations on vector data. Participants will first have to
63choose whether they will create the service using C or Python language. Every programming
64step of the ZOO Service Provider and the related Services will be each time detailed in
65C and Python. Once the ZOO Services will be ready and callable by ZOO Kernel, participants
66will finally learn how to use its different functions from an  OpenLayers simple application.
67A sample dataset was providen by Orkney and included in the OSGeoLiveDVD, data are
68available trough OGC WMS/WFS WebServices using  MapServer and will be displayed on a
69simple map and used as input data by the ZOO Services. Then, some specific selection
70and execution controls will be added in the JavaScript code in order to execute single
71and multiple geometries on the displayed polygons.
73Once again, the whole procedure will be organized step-by-step and detailed with
74numerous code snippets and their respective explanations. The instructors will check
75the ZOO Kernel functioning on each machine and will assist you while coding. Technical
76questions are of course welcome during the workshop.
78Usefull tips for reading :
81.. code-block:: guess
83    this is a code block
85.. warning:: This is a warning message.
87.. note:: This is an important note.
90**Let's go !**
Note: See TracBrowser for help on using the repository browser.


Context Navigation

ZOO Sponsors

Become a sponsor !

Knowledge partners

Become a knowledge partner

Related links