source: trunk/docs/workshop/2014/introduction.txt @ 574

Last change on this file since 574 was 574, checked in by djay, 8 years ago

Add 2014 workshop material.

  • Property svn:keywords set to HeadURL Date Author Id Rev
File size: 3.9 KB
1.. _introduction:
7.. contents:: Table of Contents
8    :depth: 5
9    :backlinks: top
11What is ZOO ?
14ZOO-Project is a WPS (Web Processing Service) open source project 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:
16* `ZOO Kernel <>`__ : A powerful server-side C Kernel which makes it possible to manage and chain Web services coded in different programming languages.
17* `ZOO Services <>`__ : A growing suite of example Web Services based on various open source libraries.
18* `ZOO API <>`__ : A server-side JavaScript API able to call and chain the ZOO Services, which makes the development and chaining processes easier and faster.
20ZOO was designed to make the service creation and deployment easy, by providing a powerful system able to understand and execute WPS compliant queries. It supports seven programming languages, thus allowing you to create Web Services using the one you prefer. It also lets you use an existing code and to turn it as a WPS Service.
21The current supported programming languages are the following:
23* C/C++
24* Python
25* Perl
26* Java
27* Fortran
28* PHP
29* JavaScript
31More information on the project is available on the  `ZOO-Project official website <>`__ .
33How does ZOO works ?
36ZOO is based on a C Kernel which is the ZOO-Project core system (aka ZOO-Kernel). The latter is able to dynamically load libraries and to handle them as on-demand Web services.
38A ZOO-Service is a link composed of a ZOO metadata file (.zcfg) and the code for the corresponding implementation. The metadata file describes the function that can be called using a WPS Execute Request, as well as the supported input/output formats. Service contains the algorithms and functions, and can be implemented using any of the supported languages.
40ZOO-Kernel works as CGI through Apache and can communicate with cartographic engines and Web mapping clients. It simply adds the WPS support to your spatial data infrastructure and your webmapping applications. It can use every GDAL/OGR supported formats as input data and create suitable vector or raster output for your cartographic engine and/or your web-mapping client application.
42What are we going to do in this workshop?
45You will learn how to use ZOO-Kernel and how to create ZOO-Services using the OSGeoLiveDVD 7.9 `iso image <>`_ provided at the begining of this workshop on MapMint USB Sticks. Despite a pre-compiled ZOO 1.3.0 package is provided inside the official OSGeoLive, some optional supports are not available in the default setup and the ZOO-Kernel made available correspond to the 1.4-dev version, so let say the current version. So you will use the binary version of ZOO-Kernel available on the iso image provided. Configuration file and basic ways to use ZOO-Kernel and ZOO-Service will be presented. Then you will be invited to start programming your own simple service using Python language. Some ZOO-Services will be presented and individually tested inside a ready-to-use OpenLayers application. Finally, this services will be chained using the server-side Javascript ZOO-API.
47The whole workshop is organized step-by-step and numerous code snippets are available. The instructors will check the ZOO-Kernel is functioning on each machine and will assist you while coding. Technical questions are of course welcome during the workshop.
49Usefull tips for reading
52.. code-block:: guess
54    this is a code block
56.. warning:: This is a warning message.
58.. note:: This is an important note.
60**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