SlideShare ist ein Scribd-Unternehmen logo
1 von 44
Downloaden Sie, um offline zu lesen
The status of GeoServer WPS



     Ing. Andrea Aime, GeoSolutions
Ing. Simone Giannecchini, GeoSolutions




           FOSS4G 2011, Denver
          12th-16th September 2011
Overview

   Who we are
   WPS introduction
   Vector processes
   Raster processes
   Conversion processes
   Accessing local data sources
   Chaining
   Examples
   Rendering transformations
   Limitations and wish list
   Question time
                        FOSS4G 2011, Denver
                       12th-16th September 2011
GeoSolutions
   Founded in Italy in 2006
   Expertise
    •   Image Processing, GeoSpatial Data Fusion
    •   Java, Java Enterprise, C++, Python
    •   JPEG2000, JPIP, Advanced 2D visualization
   Supporting/Developing FOSS4G projects
       GeoTools, GeoServer
       GeoBatch, GeoNetwork

   Clients
       Public Agencies
       Private Companies

   http://www.geo-solutions.it
                               FOSS4G 2011, Denver
                              12th-16th September 2011
WPS Quick introduction




     FOSS4G 2011, Denver
    12th-16th September 2011
WPS

   Wikipedia introduces OGC WPS as:
         [A service] designed to standardize the
          way that GIS calculations are made
          available to the Internet.
         WPS can describe any calculation
          including all of its inputs and outputs,
          and trigger its execution
         The specific processes served up by a WPS
          implementation are defined by the owner of that
          implementation.
         Although WPS was designed to work with spatially
          referenced data, it can be used with any kind of
          data.
                        FOSS4G 2011, Denver
                       12th-16th September 2011
Capabilities document

                              Some metadata
                               about the server
                               and its owner
                              The list of available
                               processes, with a
                               description
                              Let’s say we’re
                               interested in the
                               JTS:buffer process




     FOSS4G 2011, Denver
    12th-16th September 2011
Process description

                                 List of inputs
                                  and outputs
                                 Descriptions
                                 List of accepted
                                  formats (not
                                  shown in the
                                  xml)




    FOSS4G 2011, Denver
   12th-16th September 2011
Process execution

                            Buffer a L shaped
                             geometry with
                             distance “2”
                            Get the result back
                             as GML




   FOSS4G 2011, Denver
  12th-16th September 2011
GeoServer Specifics




   FOSS4G 2011, Denver
  12th-16th September 2011
GeoServer WPS history

   Started by Refractions in 2008, with limited capabilities
    (only single geometry and single feature support)
   First overhaul attempt end of 2008 by the community,
    added testing, support for vector collections
   New development since mid 2010, mostly new
    processes and input/output formats


       Refractions      GS community                  Current activity


2008                    2009               2010               2011




                            FOSS4G 2011, Denver
                           12th-16th September 2011
WPS: demo builder




                 List processes
                 Describe
                 Set parameters and
                  execute
                 All in one form




   FOSS4G 2011, Denver
  12th-16th September 2011
Inputs and outputs




   FOSS4G 2011, Denver
  12th-16th September 2011
IO setup

   Processes parameters
    defined in terms of Java
    objects
   Pluggable converters trade
    between the java object
    and the serialized
    representation
   If a input is internal straight
    read from the source
          Leveraging on all the
           available optimizations!




                           FOSS4G 2011, Denver
                          12th-16th September 2011
“Primitives” IO Parameters

   Numbers: byte, short, int, long, float, double, any Number
    subclass, properly mapped in XML types
   Strings and CharSequence in general
   Date, Time, Timestamp
   CoordinateReferenceSystem       (EPSG:xxx and urn:… forms)

   URLs
   Range (min -> max)
   Interpolation method




                       FOSS4G 2011, Denver
                      12th-16th September 2011
Complexes IO Parameters

   Geometries                      Vectors
         GML 2                           WFS 1.0 collection
         GML 3                           WFS 1.1 collection
         WKT                             GeoJSON
   Rasters                               Zipped shapefile
         ArcGrid                   Others
         GeoTiff                         SLD 1.0
         Unreferenced                    OGC Filter (1.0, 1.1)
          PNG/JPEG
                                          CQL Filter


                      FOSS4G 2011, Denver
                     12th-16th September 2011
Open API

   Easy to plug your own custom process parameter I/O




                     FOSS4G 2011, Denver
                    12th-16th September 2011
Available Vector processes




       FOSS4G 2011, Denver
      12th-16th September 2011
JTS processes




  FOSS4G 2011, Denver
 12th-16th September 2011
Example JTS process
    Intersection




POLYGON ((5 10, 10 10, 10 5, 5 5, 5 10))

         FOSS4G 2011, Denver
        12th-16th September 2011
Query oriented processes

   AKA “All you wanted WFS to do for you but he never
    wanted to”
   gs:Aggregate: count/avg/max/median/min/stddev/sum on
    a feature collection
   gs:Count: like WFS Hits, but on whatever source
   gs:Bounds: bounds of whatever source, missing from
    WFS
   gs:Query: query any source like WFS
   gs:Unique: unique values of an attribute
   gs:Nearest: find the nearest features


                         FOSS4G 2011, Denver
                        12th-16th September 2011
Aggregation example

                          Get the min, max and
                           sum of the PERSONS
                           attribute in the
                           topp:states layer




    FOSS4G 2011, Denver
   12th-16th September 2011
Other Vector processes

   gs:BufferFeatureCollection: buffer all features
   gs:Clip: cookie cut featuresgs:Reproject: reproject any
    vector source
   gs:Simplify: DouglasPeucker simplifier, retain attributes
   gs:Snap: snap to grid
   gs:InclusionFeatureCollection: overlay and get all
    features contained
   gs:IntersectionFeatureCollection: overlay and intersect,
    retain attributes from both
   gs:UnionFeatureCollection: merge two collections in one
   gs:Import: save the features as a new GeoServer layer
                         FOSS4G 2011, Denver
                        12th-16th September 2011
Buffer example




  FOSS4G 2011, Denver
 12th-16th September 2011
Geometry <=> Feature

   gs:collectGeometries: lump up all feature geometries into
    a geometry collection
   gs:feature: turn a single geometry into a feature collection




                                 MULTIPOINT (
                                 (-74.01046109936333 40.707587626256554),
                                 (-74.0108375113659 40.70754683896324),
                                 (-74.01053023879955 40.70938711687079),
                                 (-74.00857344353275 40.711945649065406),
                                 (-74.0118315772888 40.708529961953786),
                                 (-74.00153046439813 40.719885123828675))


                        FOSS4G 2011, Denver
                       12th-16th September 2011
Raster processes




  FOSS4G 2011, Denver
 12th-16th September 2011
Raster processes

   AKA “All you wanted WCS to do for you but it never
    wanted to”
   Add/Multiply: add and multiply two rasters (waiting for full
    algebra to be implemented)
   Crop: crop a coverage based on the specified cutting
    geometry
   RangeLookup: classify raster image based on a set of
    ranges ([min,max] -> value)
   ScaleCoverage: rescale and translate a given raster
   StyleCoverage: apply a SLD style to a raster, getting back a
    styled (but still georeferenced) one
   Georectify: turn a non geo-referenced coverage into one
    based on ground control points
                        FOSS4G 2011, Denver
                       12th-16th September 2011
Crop example
Conversion processes




    FOSS4G 2011, Denver
   12th-16th September 2011
Conversion processes
   Bridging the raster and the vector world
   Contour: extracts isolines given a set of levels or a interval
   RasterAsPointCollection: extracts one point for each cell,
    with band contents as attributes
   PolygonExtraction: extracts uniform polygons from raster,
    eventually given a set of value ranges
   RasterZonalStatistics: given a raster and a polygonal
    compute min/max/sum/avg/stddev of the cells falling in
    each polygon, return an augmented polygonal
   VectorToRaster: rasterizes vectors keeping a chosen
    attribute (a CQL expression eventually) as the band value
Contour example
Chaining




 FOSS4G 2011, Denver
12th-16th September 2011
WPS Chaining
   Feed the output of a process into another process
   Allows for tree-like composition
   Let’s see a typical “clip and ship” example, both raster and
    vector:
         Extract the rivers into the “restricted areas” polygons
         Extract from Blumarble any pixel in the USA




                        FOSS4G 2011, Denver
                       12th-16th September 2011
Raster clip and ship




    FOSS4G 2011, Denver
   12th-16th September 2011
Raster clip and ship




    FOSS4G 2011, Denver
   12th-16th September 2011
Vector clip and ship




    FOSS4G 2011, Denver
   12th-16th September 2011
GeoServer Integration 1: local data access




               FOSS4G 2011, Denver
              12th-16th September 2011
Direct data integration
   WPS normally reads from remote WFS/WCS, parsing
    GML/GeoJSON or GeoTiff/ArcGrid
   When the source is local we can dodge it though, read
    directly from the source (shapefile, DBMS, geotiff)
   Hit the fictious http://geoserver/wfs url for local WFS
   Hit the fictious http://geoserver/wcs url for local WCS
Store back results (only vector)

   gs:Import: saves the
    vector results into a
    store of choice, and
    publish as a layer
   Use right away the
    new layer from
    WMS/WFS/WCS/WPS
   Still missing the
    equivalent for rasters




                        FOSS4G 2011, Denver
                       12th-16th September 2011
GeoServer Integration 2:
rendering transformations




      FOSS4G 2011, Denver
     12th-16th September 2011
Rendering transformations

   On-the-fly data transformations inside rendering
    chain
   Calling WPS processes from SLD docs
   Optimized for performance




                     FOSS4G 2011, Denver
                    12th-16th September 2011
Rendering transformations
   Point feature extraction from two band raster data (e.g.
    Wind(u,v))
   Computation of direction and module from SLD
   Full SLD
         Call gs:RasterAsPointCollection
         Magnitude and direction of the arrow are computed on
          the fly by using filter functions
         <WellKnownName>shape://carrow</WellKnownName>
   Working at visual resolution
         Use overviews and
          decimation
         Fast with large datasets


                       FOSS4G 2011, Denver
                      12th-16th September 2011
Evolution and closing remarks




        FOSS4G 2011, Denver
       12th-16th September 2011
WPS*
   Deficiencies
          No support for asynchronous requests
          Missing request limits enforcements (e.g. input/output
           maximum dimensions)
   Wish list:
          Scripting (Jython, GeoScript)
          Sextante, IDL, JGrass (Grass?) integration
          Improved robustness
          Jiffle (jai-tools) based raster algebra
          New layers as dynamic WPS processes (computing
           data on the fly as people do WMS/WCS/WFS requests)

                          FOSS4G 2011, Denver
                         12th-16th September 2011
The End




        Questions?
   andrea.aime@geo-solutions.it
simone.giannecchini@geo-solutions.it
            FOSS4G 2011, Denver
           12th-16th September 2011

Weitere ähnliche Inhalte

Was ist angesagt?

Raster data in GeoServer and GeoTools: Achievements, issues and future develo...
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...Raster data in GeoServer and GeoTools: Achievements, issues and future develo...
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...GeoSolutions
 
Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...GeoSolutions
 
Enterprise class deployment for GeoServer and GeoWebcache Optimizing perform...
Enterprise class deployment  for GeoServer and GeoWebcache Optimizing perform...Enterprise class deployment  for GeoServer and GeoWebcache Optimizing perform...
Enterprise class deployment for GeoServer and GeoWebcache Optimizing perform...GeoSolutions
 
Fossgis 2013 GeoServer Presentation
Fossgis 2013 GeoServer PresentationFossgis 2013 GeoServer Presentation
Fossgis 2013 GeoServer PresentationGeoSolutions
 
WMS Performance Shootout 2009
WMS Performance Shootout 2009WMS Performance Shootout 2009
WMS Performance Shootout 2009Jeff McKenna
 
GeoServer in Production: we do it, here is how!
GeoServer in Production: we do it, here is how!GeoServer in Production: we do it, here is how!
GeoServer in Production: we do it, here is how!GeoSolutions
 
State of GeoServer - FOSS4G 2016
State of GeoServer - FOSS4G 2016State of GeoServer - FOSS4G 2016
State of GeoServer - FOSS4G 2016GeoSolutions
 
GeoServer, GeoNetwork and INSPIRE: where we are and what is missing
GeoServer, GeoNetwork and INSPIRE: where we are and what is missingGeoServer, GeoNetwork and INSPIRE: where we are and what is missing
GeoServer, GeoNetwork and INSPIRE: where we are and what is missingGeoSolutions
 
Mapserver vs. geoserver
Mapserver vs. geoserverMapserver vs. geoserver
Mapserver vs. geoserver鸣 饶
 
GeoServer on Steroids
GeoServer on Steroids GeoServer on Steroids
GeoServer on Steroids GeoSolutions
 
Raster data in GeoServer and GeoTools: Achievements, issues and future devel...
Raster data in GeoServer and GeoTools:  Achievements, issues and future devel...Raster data in GeoServer and GeoTools:  Achievements, issues and future devel...
Raster data in GeoServer and GeoTools: Achievements, issues and future devel...GeoSolutions
 
GeoNetwork, The Open Source Solution for the interoperable management of ge...
GeoNetwork, The Open Source Solution  for the interoperable management  of ge...GeoNetwork, The Open Source Solution  for the interoperable management  of ge...
GeoNetwork, The Open Source Solution for the interoperable management of ge...GeoSolutions
 
WMS Performance Shootout 2011
WMS Performance Shootout 2011WMS Performance Shootout 2011
WMS Performance Shootout 2011Jeff McKenna
 
Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017
Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017
Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017GeoSolutions
 
State of GeoServer
State of GeoServerState of GeoServer
State of GeoServerJody Garnett
 
Wms Performance Tests Map Server Vs Geo Server
Wms Performance Tests Map Server Vs Geo ServerWms Performance Tests Map Server Vs Geo Server
Wms Performance Tests Map Server Vs Geo ServerDonnyV
 
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS stylesCreating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS stylesGeoSolutions
 
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...GeoSolutions
 
Geoserver introduction, GeoBusiness 2015
Geoserver introduction, GeoBusiness 2015Geoserver introduction, GeoBusiness 2015
Geoserver introduction, GeoBusiness 2015GeoSolutions
 
State of GeoServer 2.12
State of GeoServer 2.12State of GeoServer 2.12
State of GeoServer 2.12GeoSolutions
 

Was ist angesagt? (20)

Raster data in GeoServer and GeoTools: Achievements, issues and future develo...
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...Raster data in GeoServer and GeoTools: Achievements, issues and future develo...
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...
 
Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...
 
Enterprise class deployment for GeoServer and GeoWebcache Optimizing perform...
Enterprise class deployment  for GeoServer and GeoWebcache Optimizing perform...Enterprise class deployment  for GeoServer and GeoWebcache Optimizing perform...
Enterprise class deployment for GeoServer and GeoWebcache Optimizing perform...
 
Fossgis 2013 GeoServer Presentation
Fossgis 2013 GeoServer PresentationFossgis 2013 GeoServer Presentation
Fossgis 2013 GeoServer Presentation
 
WMS Performance Shootout 2009
WMS Performance Shootout 2009WMS Performance Shootout 2009
WMS Performance Shootout 2009
 
GeoServer in Production: we do it, here is how!
GeoServer in Production: we do it, here is how!GeoServer in Production: we do it, here is how!
GeoServer in Production: we do it, here is how!
 
State of GeoServer - FOSS4G 2016
State of GeoServer - FOSS4G 2016State of GeoServer - FOSS4G 2016
State of GeoServer - FOSS4G 2016
 
GeoServer, GeoNetwork and INSPIRE: where we are and what is missing
GeoServer, GeoNetwork and INSPIRE: where we are and what is missingGeoServer, GeoNetwork and INSPIRE: where we are and what is missing
GeoServer, GeoNetwork and INSPIRE: where we are and what is missing
 
Mapserver vs. geoserver
Mapserver vs. geoserverMapserver vs. geoserver
Mapserver vs. geoserver
 
GeoServer on Steroids
GeoServer on Steroids GeoServer on Steroids
GeoServer on Steroids
 
Raster data in GeoServer and GeoTools: Achievements, issues and future devel...
Raster data in GeoServer and GeoTools:  Achievements, issues and future devel...Raster data in GeoServer and GeoTools:  Achievements, issues and future devel...
Raster data in GeoServer and GeoTools: Achievements, issues and future devel...
 
GeoNetwork, The Open Source Solution for the interoperable management of ge...
GeoNetwork, The Open Source Solution  for the interoperable management  of ge...GeoNetwork, The Open Source Solution  for the interoperable management  of ge...
GeoNetwork, The Open Source Solution for the interoperable management of ge...
 
WMS Performance Shootout 2011
WMS Performance Shootout 2011WMS Performance Shootout 2011
WMS Performance Shootout 2011
 
Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017
Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017
Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017
 
State of GeoServer
State of GeoServerState of GeoServer
State of GeoServer
 
Wms Performance Tests Map Server Vs Geo Server
Wms Performance Tests Map Server Vs Geo ServerWms Performance Tests Map Server Vs Geo Server
Wms Performance Tests Map Server Vs Geo Server
 
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS stylesCreating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
 
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
 
Geoserver introduction, GeoBusiness 2015
Geoserver introduction, GeoBusiness 2015Geoserver introduction, GeoBusiness 2015
Geoserver introduction, GeoBusiness 2015
 
State of GeoServer 2.12
State of GeoServer 2.12State of GeoServer 2.12
State of GeoServer 2.12
 

Ähnlich wie The status of the GeoServer WPS

GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...GeoSolutions
 
GFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork PresentationGFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork PresentationGeoSolutions
 
GeoServer an introduction for beginners
GeoServer an introduction for beginnersGeoServer an introduction for beginners
GeoServer an introduction for beginnersGeoSolutions
 
Geosolutions Foss4g It 2010
Geosolutions Foss4g It 2010Geosolutions Foss4g It 2010
Geosolutions Foss4g It 2010GeoSolutions
 
GeoServer The Open Source Solution for the interoperable management of geos...
GeoServer The Open Source Solution  for the interoperable management  of geos...GeoServer The Open Source Solution  for the interoperable management  of geos...
GeoServer The Open Source Solution for the interoperable management of geos...GeoSolutions
 
Zoo Presentation Cumtb 2010
Zoo Presentation Cumtb 2010Zoo Presentation Cumtb 2010
Zoo Presentation Cumtb 2010djayzen
 
Geoprocessing with Neo4j-Spatial and OSM
Geoprocessing with Neo4j-Spatial and OSMGeoprocessing with Neo4j-Spatial and OSM
Geoprocessing with Neo4j-Spatial and OSMCraig Taverner
 
Advanced Security With GeoServer
Advanced Security With GeoServerAdvanced Security With GeoServer
Advanced Security With GeoServerGeoSolutions
 
Geo Package and OWS Context at FOSS4G PDX
Geo Package and OWS Context at FOSS4G PDXGeo Package and OWS Context at FOSS4G PDX
Geo Package and OWS Context at FOSS4G PDXLuis Bermudez
 
The Galaxy bioinformatics workflow environment
The Galaxy bioinformatics workflow environmentThe Galaxy bioinformatics workflow environment
The Galaxy bioinformatics workflow environmentRutger Vos
 
Ekon bestof rtl_delphi
Ekon bestof rtl_delphiEkon bestof rtl_delphi
Ekon bestof rtl_delphiMax Kleiner
 
Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015GeoSolutions
 
Leveraging Model-Driven Technologies for JSON Artefacts: The Shipyard Case Study
Leveraging Model-Driven Technologies for JSON Artefacts: The Shipyard Case StudyLeveraging Model-Driven Technologies for JSON Artefacts: The Shipyard Case Study
Leveraging Model-Driven Technologies for JSON Artefacts: The Shipyard Case StudyLuca Berardinelli
 
GeoKettle: A powerful open source spatial ETL tool
GeoKettle: A powerful open source spatial ETL toolGeoKettle: A powerful open source spatial ETL tool
GeoKettle: A powerful open source spatial ETL toolThierry Badard
 
OSGeo Conferences Report
OSGeo Conferences ReportOSGeo Conferences Report
OSGeo Conferences ReportJeff McKenna
 
Foss4g2009tokyo Gerald Zoo
Foss4g2009tokyo Gerald ZooFoss4g2009tokyo Gerald Zoo
Foss4g2009tokyo Gerald ZooOSgeo Japan
 
Zoo First Presentation
Zoo First PresentationZoo First Presentation
Zoo First Presentationdjayzen
 
[Nuxeo World 2013] Nuxeo Studio
[Nuxeo World 2013] Nuxeo Studio[Nuxeo World 2013] Nuxeo Studio
[Nuxeo World 2013] Nuxeo StudioNuxeo
 
Flowdock's full-text search with MongoDB
Flowdock's full-text search with MongoDBFlowdock's full-text search with MongoDB
Flowdock's full-text search with MongoDBFlowdock
 

Ähnlich wie The status of the GeoServer WPS (20)

GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
 
GFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork PresentationGFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork Presentation
 
GeoServer an introduction for beginners
GeoServer an introduction for beginnersGeoServer an introduction for beginners
GeoServer an introduction for beginners
 
Geosolutions Foss4g It 2010
Geosolutions Foss4g It 2010Geosolutions Foss4g It 2010
Geosolutions Foss4g It 2010
 
GeoServer The Open Source Solution for the interoperable management of geos...
GeoServer The Open Source Solution  for the interoperable management  of geos...GeoServer The Open Source Solution  for the interoperable management  of geos...
GeoServer The Open Source Solution for the interoperable management of geos...
 
Zoo Presentation Cumtb 2010
Zoo Presentation Cumtb 2010Zoo Presentation Cumtb 2010
Zoo Presentation Cumtb 2010
 
Geoprocessing with Neo4j-Spatial and OSM
Geoprocessing with Neo4j-Spatial and OSMGeoprocessing with Neo4j-Spatial and OSM
Geoprocessing with Neo4j-Spatial and OSM
 
Advanced Security With GeoServer
Advanced Security With GeoServerAdvanced Security With GeoServer
Advanced Security With GeoServer
 
Geo Package and OWS Context at FOSS4G PDX
Geo Package and OWS Context at FOSS4G PDXGeo Package and OWS Context at FOSS4G PDX
Geo Package and OWS Context at FOSS4G PDX
 
The Galaxy bioinformatics workflow environment
The Galaxy bioinformatics workflow environmentThe Galaxy bioinformatics workflow environment
The Galaxy bioinformatics workflow environment
 
Ekon bestof rtl_delphi
Ekon bestof rtl_delphiEkon bestof rtl_delphi
Ekon bestof rtl_delphi
 
Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015
 
ODF Mashups
ODF MashupsODF Mashups
ODF Mashups
 
Leveraging Model-Driven Technologies for JSON Artefacts: The Shipyard Case Study
Leveraging Model-Driven Technologies for JSON Artefacts: The Shipyard Case StudyLeveraging Model-Driven Technologies for JSON Artefacts: The Shipyard Case Study
Leveraging Model-Driven Technologies for JSON Artefacts: The Shipyard Case Study
 
GeoKettle: A powerful open source spatial ETL tool
GeoKettle: A powerful open source spatial ETL toolGeoKettle: A powerful open source spatial ETL tool
GeoKettle: A powerful open source spatial ETL tool
 
OSGeo Conferences Report
OSGeo Conferences ReportOSGeo Conferences Report
OSGeo Conferences Report
 
Foss4g2009tokyo Gerald Zoo
Foss4g2009tokyo Gerald ZooFoss4g2009tokyo Gerald Zoo
Foss4g2009tokyo Gerald Zoo
 
Zoo First Presentation
Zoo First PresentationZoo First Presentation
Zoo First Presentation
 
[Nuxeo World 2013] Nuxeo Studio
[Nuxeo World 2013] Nuxeo Studio[Nuxeo World 2013] Nuxeo Studio
[Nuxeo World 2013] Nuxeo Studio
 
Flowdock's full-text search with MongoDB
Flowdock's full-text search with MongoDBFlowdock's full-text search with MongoDB
Flowdock's full-text search with MongoDB
 

Mehr von GeoSolutions

MapStore 2 - The Story
MapStore 2 - The StoryMapStore 2 - The Story
MapStore 2 - The StoryGeoSolutions
 
One GeoNode, many GeoNodes
One GeoNode, many GeoNodesOne GeoNode, many GeoNodes
One GeoNode, many GeoNodesGeoSolutions
 
Introduction to GeoNode
Introduction to GeoNodeIntroduction to GeoNode
Introduction to GeoNodeGeoSolutions
 
Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...GeoSolutions
 
GeoServer Feature FRENZY
GeoServer Feature FRENZYGeoServer Feature FRENZY
GeoServer Feature FRENZYGeoSolutions
 
MapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and ReactMapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and ReactGeoSolutions
 
Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...GeoSolutions
 
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...GeoSolutions
 
Mapping the world beyond web mercator - FOSS4G 2015
Mapping the world beyond web mercator - FOSS4G 2015Mapping the world beyond web mercator - FOSS4G 2015
Mapping the world beyond web mercator - FOSS4G 2015GeoSolutions
 
Advanced Cartographic Map Rendering in GeoServer
Advanced Cartographic Map Rendering in GeoServerAdvanced Cartographic Map Rendering in GeoServer
Advanced Cartographic Map Rendering in GeoServerGeoSolutions
 
Spatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
Spatio-temporal Data Handling With GeoServer for MetOc And Remote SensingSpatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
Spatio-temporal Data Handling With GeoServer for MetOc And Remote SensingGeoSolutions
 
GeoSolutions Keynote at WebMGS 2015
GeoSolutions Keynote at WebMGS 2015GeoSolutions Keynote at WebMGS 2015
GeoSolutions Keynote at WebMGS 2015GeoSolutions
 
GeoServer beginners gwf_2015
GeoServer beginners gwf_2015GeoServer beginners gwf_2015
GeoServer beginners gwf_2015GeoSolutions
 
Geosolutions gwf-2015-v01.04
Geosolutions gwf-2015-v01.04Geosolutions gwf-2015-v01.04
Geosolutions gwf-2015-v01.04GeoSolutions
 
Introduzione a GeoServer ed ai servizi OGC
Introduzione a GeoServer ed ai servizi OGCIntroduzione a GeoServer ed ai servizi OGC
Introduzione a GeoServer ed ai servizi OGCGeoSolutions
 

Mehr von GeoSolutions (15)

MapStore 2 - The Story
MapStore 2 - The StoryMapStore 2 - The Story
MapStore 2 - The Story
 
One GeoNode, many GeoNodes
One GeoNode, many GeoNodesOne GeoNode, many GeoNodes
One GeoNode, many GeoNodes
 
Introduction to GeoNode
Introduction to GeoNodeIntroduction to GeoNode
Introduction to GeoNode
 
Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...
 
GeoServer Feature FRENZY
GeoServer Feature FRENZYGeoServer Feature FRENZY
GeoServer Feature FRENZY
 
MapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and ReactMapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and React
 
Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...
 
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
 
Mapping the world beyond web mercator - FOSS4G 2015
Mapping the world beyond web mercator - FOSS4G 2015Mapping the world beyond web mercator - FOSS4G 2015
Mapping the world beyond web mercator - FOSS4G 2015
 
Advanced Cartographic Map Rendering in GeoServer
Advanced Cartographic Map Rendering in GeoServerAdvanced Cartographic Map Rendering in GeoServer
Advanced Cartographic Map Rendering in GeoServer
 
Spatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
Spatio-temporal Data Handling With GeoServer for MetOc And Remote SensingSpatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
Spatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
 
GeoSolutions Keynote at WebMGS 2015
GeoSolutions Keynote at WebMGS 2015GeoSolutions Keynote at WebMGS 2015
GeoSolutions Keynote at WebMGS 2015
 
GeoServer beginners gwf_2015
GeoServer beginners gwf_2015GeoServer beginners gwf_2015
GeoServer beginners gwf_2015
 
Geosolutions gwf-2015-v01.04
Geosolutions gwf-2015-v01.04Geosolutions gwf-2015-v01.04
Geosolutions gwf-2015-v01.04
 
Introduzione a GeoServer ed ai servizi OGC
Introduzione a GeoServer ed ai servizi OGCIntroduzione a GeoServer ed ai servizi OGC
Introduzione a GeoServer ed ai servizi OGC
 

Kürzlich hochgeladen

COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaborationbruanjhuli
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Adtran
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IES VE
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Will Schroeder
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8DianaGray10
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6DianaGray10
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXTarek Kalaji
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1DianaGray10
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfinfogdgmi
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfDaniel Santiago Silva Capera
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.YounusS2
 
Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024SkyPlanner
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URLRuncy Oommen
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemAsko Soukka
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...DianaGray10
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDELiveplex
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesDavid Newbury
 

Kürzlich hochgeladen (20)

COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
 
20230104 - machine vision
20230104 - machine vision20230104 - machine vision
20230104 - machine vision
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBX
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdf
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.
 
Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URL
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystem
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond Ontologies
 

The status of the GeoServer WPS

  • 1. The status of GeoServer WPS Ing. Andrea Aime, GeoSolutions Ing. Simone Giannecchini, GeoSolutions FOSS4G 2011, Denver 12th-16th September 2011
  • 2. Overview  Who we are  WPS introduction  Vector processes  Raster processes  Conversion processes  Accessing local data sources  Chaining  Examples  Rendering transformations  Limitations and wish list  Question time FOSS4G 2011, Denver 12th-16th September 2011
  • 3. GeoSolutions  Founded in Italy in 2006  Expertise • Image Processing, GeoSpatial Data Fusion • Java, Java Enterprise, C++, Python • JPEG2000, JPIP, Advanced 2D visualization  Supporting/Developing FOSS4G projects  GeoTools, GeoServer  GeoBatch, GeoNetwork  Clients  Public Agencies  Private Companies  http://www.geo-solutions.it FOSS4G 2011, Denver 12th-16th September 2011
  • 4. WPS Quick introduction FOSS4G 2011, Denver 12th-16th September 2011
  • 5. WPS  Wikipedia introduces OGC WPS as:  [A service] designed to standardize the way that GIS calculations are made available to the Internet.  WPS can describe any calculation including all of its inputs and outputs, and trigger its execution  The specific processes served up by a WPS implementation are defined by the owner of that implementation.  Although WPS was designed to work with spatially referenced data, it can be used with any kind of data. FOSS4G 2011, Denver 12th-16th September 2011
  • 6. Capabilities document  Some metadata about the server and its owner  The list of available processes, with a description  Let’s say we’re interested in the JTS:buffer process FOSS4G 2011, Denver 12th-16th September 2011
  • 7. Process description  List of inputs and outputs  Descriptions  List of accepted formats (not shown in the xml) FOSS4G 2011, Denver 12th-16th September 2011
  • 8. Process execution  Buffer a L shaped geometry with distance “2”  Get the result back as GML FOSS4G 2011, Denver 12th-16th September 2011
  • 9. GeoServer Specifics FOSS4G 2011, Denver 12th-16th September 2011
  • 10. GeoServer WPS history  Started by Refractions in 2008, with limited capabilities (only single geometry and single feature support)  First overhaul attempt end of 2008 by the community, added testing, support for vector collections  New development since mid 2010, mostly new processes and input/output formats Refractions GS community Current activity 2008 2009 2010 2011 FOSS4G 2011, Denver 12th-16th September 2011
  • 11. WPS: demo builder  List processes  Describe  Set parameters and execute  All in one form FOSS4G 2011, Denver 12th-16th September 2011
  • 12. Inputs and outputs FOSS4G 2011, Denver 12th-16th September 2011
  • 13. IO setup  Processes parameters defined in terms of Java objects  Pluggable converters trade between the java object and the serialized representation  If a input is internal straight read from the source  Leveraging on all the available optimizations! FOSS4G 2011, Denver 12th-16th September 2011
  • 14. “Primitives” IO Parameters  Numbers: byte, short, int, long, float, double, any Number subclass, properly mapped in XML types  Strings and CharSequence in general  Date, Time, Timestamp  CoordinateReferenceSystem (EPSG:xxx and urn:… forms)  URLs  Range (min -> max)  Interpolation method FOSS4G 2011, Denver 12th-16th September 2011
  • 15. Complexes IO Parameters  Geometries  Vectors  GML 2  WFS 1.0 collection  GML 3  WFS 1.1 collection  WKT  GeoJSON  Rasters  Zipped shapefile  ArcGrid  Others  GeoTiff  SLD 1.0  Unreferenced  OGC Filter (1.0, 1.1) PNG/JPEG  CQL Filter FOSS4G 2011, Denver 12th-16th September 2011
  • 16. Open API  Easy to plug your own custom process parameter I/O FOSS4G 2011, Denver 12th-16th September 2011
  • 17. Available Vector processes FOSS4G 2011, Denver 12th-16th September 2011
  • 18. JTS processes FOSS4G 2011, Denver 12th-16th September 2011
  • 19. Example JTS process Intersection POLYGON ((5 10, 10 10, 10 5, 5 5, 5 10)) FOSS4G 2011, Denver 12th-16th September 2011
  • 20. Query oriented processes  AKA “All you wanted WFS to do for you but he never wanted to”  gs:Aggregate: count/avg/max/median/min/stddev/sum on a feature collection  gs:Count: like WFS Hits, but on whatever source  gs:Bounds: bounds of whatever source, missing from WFS  gs:Query: query any source like WFS  gs:Unique: unique values of an attribute  gs:Nearest: find the nearest features FOSS4G 2011, Denver 12th-16th September 2011
  • 21. Aggregation example  Get the min, max and sum of the PERSONS attribute in the topp:states layer FOSS4G 2011, Denver 12th-16th September 2011
  • 22. Other Vector processes  gs:BufferFeatureCollection: buffer all features  gs:Clip: cookie cut featuresgs:Reproject: reproject any vector source  gs:Simplify: DouglasPeucker simplifier, retain attributes  gs:Snap: snap to grid  gs:InclusionFeatureCollection: overlay and get all features contained  gs:IntersectionFeatureCollection: overlay and intersect, retain attributes from both  gs:UnionFeatureCollection: merge two collections in one  gs:Import: save the features as a new GeoServer layer FOSS4G 2011, Denver 12th-16th September 2011
  • 23. Buffer example FOSS4G 2011, Denver 12th-16th September 2011
  • 24. Geometry <=> Feature  gs:collectGeometries: lump up all feature geometries into a geometry collection  gs:feature: turn a single geometry into a feature collection MULTIPOINT ( (-74.01046109936333 40.707587626256554), (-74.0108375113659 40.70754683896324), (-74.01053023879955 40.70938711687079), (-74.00857344353275 40.711945649065406), (-74.0118315772888 40.708529961953786), (-74.00153046439813 40.719885123828675)) FOSS4G 2011, Denver 12th-16th September 2011
  • 25. Raster processes FOSS4G 2011, Denver 12th-16th September 2011
  • 26. Raster processes  AKA “All you wanted WCS to do for you but it never wanted to”  Add/Multiply: add and multiply two rasters (waiting for full algebra to be implemented)  Crop: crop a coverage based on the specified cutting geometry  RangeLookup: classify raster image based on a set of ranges ([min,max] -> value)  ScaleCoverage: rescale and translate a given raster  StyleCoverage: apply a SLD style to a raster, getting back a styled (but still georeferenced) one  Georectify: turn a non geo-referenced coverage into one based on ground control points FOSS4G 2011, Denver 12th-16th September 2011
  • 28. Conversion processes FOSS4G 2011, Denver 12th-16th September 2011
  • 29. Conversion processes  Bridging the raster and the vector world  Contour: extracts isolines given a set of levels or a interval  RasterAsPointCollection: extracts one point for each cell, with band contents as attributes  PolygonExtraction: extracts uniform polygons from raster, eventually given a set of value ranges  RasterZonalStatistics: given a raster and a polygonal compute min/max/sum/avg/stddev of the cells falling in each polygon, return an augmented polygonal  VectorToRaster: rasterizes vectors keeping a chosen attribute (a CQL expression eventually) as the band value
  • 31. Chaining FOSS4G 2011, Denver 12th-16th September 2011
  • 32. WPS Chaining  Feed the output of a process into another process  Allows for tree-like composition  Let’s see a typical “clip and ship” example, both raster and vector:  Extract the rivers into the “restricted areas” polygons  Extract from Blumarble any pixel in the USA FOSS4G 2011, Denver 12th-16th September 2011
  • 33. Raster clip and ship FOSS4G 2011, Denver 12th-16th September 2011
  • 34. Raster clip and ship FOSS4G 2011, Denver 12th-16th September 2011
  • 35. Vector clip and ship FOSS4G 2011, Denver 12th-16th September 2011
  • 36. GeoServer Integration 1: local data access FOSS4G 2011, Denver 12th-16th September 2011
  • 37. Direct data integration  WPS normally reads from remote WFS/WCS, parsing GML/GeoJSON or GeoTiff/ArcGrid  When the source is local we can dodge it though, read directly from the source (shapefile, DBMS, geotiff)  Hit the fictious http://geoserver/wfs url for local WFS  Hit the fictious http://geoserver/wcs url for local WCS
  • 38. Store back results (only vector)  gs:Import: saves the vector results into a store of choice, and publish as a layer  Use right away the new layer from WMS/WFS/WCS/WPS  Still missing the equivalent for rasters FOSS4G 2011, Denver 12th-16th September 2011
  • 39. GeoServer Integration 2: rendering transformations FOSS4G 2011, Denver 12th-16th September 2011
  • 40. Rendering transformations  On-the-fly data transformations inside rendering chain  Calling WPS processes from SLD docs  Optimized for performance FOSS4G 2011, Denver 12th-16th September 2011
  • 41. Rendering transformations  Point feature extraction from two band raster data (e.g. Wind(u,v))  Computation of direction and module from SLD  Full SLD  Call gs:RasterAsPointCollection  Magnitude and direction of the arrow are computed on the fly by using filter functions  <WellKnownName>shape://carrow</WellKnownName>  Working at visual resolution  Use overviews and decimation  Fast with large datasets FOSS4G 2011, Denver 12th-16th September 2011
  • 42. Evolution and closing remarks FOSS4G 2011, Denver 12th-16th September 2011
  • 43. WPS*  Deficiencies  No support for asynchronous requests  Missing request limits enforcements (e.g. input/output maximum dimensions)  Wish list:  Scripting (Jython, GeoScript)  Sextante, IDL, JGrass (Grass?) integration  Improved robustness  Jiffle (jai-tools) based raster algebra  New layers as dynamic WPS processes (computing data on the fly as people do WMS/WCS/WFS requests) FOSS4G 2011, Denver 12th-16th September 2011
  • 44. The End Questions? andrea.aime@geo-solutions.it simone.giannecchini@geo-solutions.it FOSS4G 2011, Denver 12th-16th September 2011