
ZOO Project Documentation Release 1.2 Nicolas Bozon, Gérald Fenoy July 14, 2011 CONTENTS 1 About ZOO Documentation 3 2 ZOO Wiki 5 3 Workshop 7 3.1 Practical introduction to ZOO: The Open WPS Platform........................7 3.1.1 FOSS4G 2010 Osaka / Tokyo / Beijing.............................7 3.1.2 Sponsored By..........................................8 3.1.3 Special thanks to our Knowledge Partners...........................9 3.1.4 WorkShop table of content...................................9 Introduction............................................9 Using ZOO from an OSGeoLive virtual machine........................ 10 Creating OGR based Web Services............................... 13 Building a WPS client using OpenLayers............................ 34 Exercise.............................................. 43 4 Official Documentation 45 4.1 ZOO Kernel Documentation....................................... 45 4.1.1 Introduction........................................... 45 Using ZOO Kernel as a Web Processing Platform........................ 45 Supported Languages....................................... 45 ZOO Kernel is a WPS Espresso Machine............................ 46 4.1.2 Installation........................................... 46 Prerequisites........................................... 46 Unix............................................... 47 OpenSUSE............................................ 50 CentOS.............................................. 51 Debian / Ubuntu......................................... 53 Windows............................................. 55 Mac OS X............................................ 58 4.2 ZOO Services Documentation...................................... 61 4.2.1 Introduction........................................... 61 What is a ZOO Service?..................................... 61 Example ZOO Services...................................... 61 4.2.2 ZCFG : the ZOO Service Configuration File.......................... 61 Main Metadata Information................................... 62 List of Inputs........................................... 62 List of Outputs.......................................... 63 Type Of Data Nodes....................................... 63 i 4.2.3 How To Setup ZOO Services.................................. 65 Python.............................................. 65 PHP................................................ 66 Java................................................ 66 Javascript............................................. 66 4.2.4 Service Examples........................................ 67 GDAL ZOO Service....................................... 67 OGR ZOO Service........................................ 67 4.3 ZOO API Documentation........................................ 67 4.3.1 Description........................................... 67 Download ZOO API....................................... 67 ZOO API MIT/X-11 License................................... 68 4.3.2 Classes............................................. 68 ZOO............................................... 68 ZOO.Bounds........................................... 70 ZOO.Feature........................................... 74 ZOO.Format........................................... 75 ZOO.Format.GeoJSON...................................... 76 ZOO.Format.GML........................................ 82 ZOO.Format.JSON........................................ 86 ZOO.Format.KML........................................ 89 ZOO.Format.WKT........................................ 94 ZOO.Format.WPS........................................ 96 ZOO.Geometry.......................................... 97 ZOO.Geometry.Collection.................................... 99 ZOO.Geometry.Curve...................................... 104 ZOO.Geometry.LinearRing................................... 104 ZOO.Geometry.LineString.................................... 108 ZOO.Geometry.MultiLineString................................. 110 ZOO.Geometry.MultiPoint.................................... 111 ZOO.Geometry.MultiPolygon.................................. 112 ZOO.Geometry.Point....................................... 112 ZOO.Geometry.Polygon..................................... 115 ZOO.Geometry.Surface..................................... 116 ZOO.Process........................................... 117 ZOO.Projection.......................................... 118 ZOO.Request........................................... 120 ZOO.String............................................ 121 4.3.3 Examples............................................ 123 ZOO.Process example of use................................... 123 ZOO.UpdateStatus........................................ 123 4.4 ZOO Community............................................. 123 4.4.1 Mailing Lists.......................................... 123 ZOO-Discuss........................................... 123 4.4.2 IRC Chat............................................ 124 Server and Channel Information................................. 124 Why IRC?............................................ 124 How do I join?.......................................... 124 4.5 Documentation Development Guide................................... 125 4.5.1 Background........................................... 125 4.5.2 reStructuredText Reference Guides............................... 125 4.5.3 reStructuredText Formatting.................................. 125 4.5.4 Installing and Using Sphinx for rst-html Generation...................... 125 ii ZOO Project Documentation, Release 1.2 Table 1: Quick Links ZOO Kernel Documentation ZOO Services Documentation ZOO API Documentation Installation ZOO Community Search mailing list Documentation Development Guide Note: The entire documentation is also available as a single PDF document and ePub document CONTENTS 1 ZOO Project Documentation, Release 1.2 2 CONTENTS CHAPTER ONE ABOUT ZOO DOCUMENTATION ZOO Documentation is a collaborative process; once users contribute documentation through the ZOO Wiki, the Documentation Committee will then review the contributions to add them into the official docs. The committee is currently composed of: Nicolas Bozon (nicolas.bozon at gmail.com) Gérald Fenoy (gerald.fenoy at geolabs.fr) Jeff McKenna (jmckenna at gatewaygeomatics.com) The committee would like to thank the early contributors to the documentation: Luca Delucchi, René-Luc D’Hont, Angelos Tzotsos. 3 ZOO Project Documentation, Release 1.2 4 Chapter 1. About ZOO Documentation CHAPTER TWO ZOO WIKI Users wishing to contribute steps and documents should use the ZOO Wiki. 5 ZOO Project Documentation, Release 1.2 6 Chapter 2. ZOO Wiki CHAPTER THREE WORKSHOP This section contains the ZOO-project workshop 3.1 Practical introduction to ZOO: The Open WPS Platform Author Gérald Fenoy, Nicolas Bozon Contact gerald.fenoy at geolabs.fr, nicolas.bozon at gmail.com Last Updated 2011-07-13 3.1.1 FOSS4G 2010 Osaka / Tokyo / Beijing 7 ZOO Project Documentation, Release 1.2 3.1.2 Sponsored By 8 Chapter 3. Workshop ZOO Project Documentation, Release 1.2 3.1.3 Special thanks to our Knowledge Partners 3.1.4 WorkShop table of content Introduction Table of Contents • Introduction – What is ZOO ? – How does ZOO works ? – What are we going to do in this workshop? – Usefull tips for reading : What is ZOO ? ZOO 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: • ZOO Kernel : A powerful server-side C Kernel which makes it possible to manage and chain Web services coded in different programming languages. • ZOO Services : A growing suite of example Web Services based on various open source libraries. • ZOO API : A server-side JavaScript API able to call and chain the ZOO Services, which makes the development and chaining processes easier. ZOO is designed to make the service development easier by providing a powerful system able to understand and execute WPS compliant queries. It supports several programming languages, thus allowing you to create Web Services in your favorite one and from an already existing code. Further information on the project is available on the ZOO Project official website. How does ZOO works ? ZOO is based on a ‘WPS Service Kernel’ which constitutes the ZOO’s core system (aka ZOO Kernel). The latter is able to load dynamic libraries and to handle them as on-demand Web services. The ZOO Kernel is written in C language, but supports several common programming languages for creating ZOO Services. A ZOO Service is a link composed of a ZOO metadata file (.zcfg) and the code for the corresponding implementation. The metadata file describes all the available functions which can be called using a WPS Exec Request, as well as the desired input/output. Services contain the algorithms and functions, and can now be implemented in C/C++, Fortran, Java, Python, Perl, PHP and JavaScript. ZOO Kernel works with Apache and can communicate with cartographic engines and Web mapping clients. It sim- ply adds the WPS support to your spatial data infrastructure and your Web mapping application. It can use every 3.1. Practical introduction to ZOO: The Open WPS Platform 9 ZOO Project Documentation, Release 1.2 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. What are we going to do in this workshop? This workshop aims to present the ZOO
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages131 Page
-
File Size-