FOSS4G 2023

Francesco Bartoli

OSGeo charter member, contributors of pygeoapi and GeoNode


Sessions

06-30
11:30
30min
pygeoapi project status 2023
Tom Kralidis, Francesco Bartoli, Angelos Tzotsos, Just van den Broecke

pygeoapi is an OGC API Reference Implementation. Implemented in Python, pygeoapi supports numerous OGC APIs via a core agnostic API, different web frameworks (Flask, Starlette, Django) and a fully integrated OpenAPI capability. Lightweight, easy to deploy and cloud-ready, pygeoapi's architecture facilitates publishing datasets and processes from multiple sources. The project also provides an extensible plugin framework, enabling developers to implement custom data adapters, filters and processes to meet their specific requirements and workflows. pygeoapi also supports the STAC specification in support of static data publishing.

pygeoapi has a significant install base around the world, with numerous projects in academia, government and industry deployments. The project is also an OGC API Reference Implementation, lowering the barrier to publishing geospatial data for all users.

This presentation will provide an update on the current status, latest developments in the project, including new core features and plugins. In addition, the presentation will highlight key projects using pygeoapi for geospatial data discovery, access and visualization.

State of software
Lumbardhi
06-28
13:50
5min
Catasto-Open: open-source tools for the Italian Cadastre
Francesco Bartoli, Antonio Cerciello, Louis Nantenaina Andrianaivo

Catasto-Open is an open-source set of tools for the Italian Cadastre that manages geospatial data in a user-friendly and efficient manner. The tool is designed to store, retrieve and manipulate cadastral data, including property boundaries, ownership information, and other relevant details. By leveraging GeoServer and MapStore technologies, it allows for the integration with existing GIS systems, making it a versatile and valuable resource for managing geospatial data in an OGC-compliant pipeline. The tool is accessible to a wide range of users, including government agencies, private companies, and individual property owners, also Catasto-Open can be easily customizable to meet the specific needs of different users.

Open source geospatial ‘Made in Europe’
UBT C / N110 - Second Floor
06-30
14:00
30min
Implementing OGC API - Processes with prefect and pygeoapi
Francesco Bartoli, Ricardo Garcia Silva

The Open Geospatial Consortium API family of standards (OGC API) are being developed to make it easy for anyone to provide geospatial data to the web, and are the next generation of geospatial web API standards designed with resource-oriented architecture, RESTful principles and OpenAPI. In addition, OGC APIs are being built for cloud capability and agility.

The OGC API - Processes standard supports the wrapping of computational tasks into executable processes that can be offered by a server through a Web API and be invoked by a client application. The standard specifies a processing interface to communicate over a RESTful protocol using JavaScript Object Notation (JSON) encodings. Typically, these processes execute well-defined algorithms that ingest or process vector and/or coverage data to produce new datasets or analyses.

pygeoapi is an open source Python server implementation of the OGC API suite of standards. The project emerged as one of the most effective reference implementations that provides the capability for organizations to deploy OGC API endpoints using OpenAPI, GeoJSON, and HTML. pygeoapi is built on an extensible plugin framework in support of clean, adaptive data integration and easy customization.

Prefect is an open source data workflow orchestration platform developed in Python. It provides robust orchestration of workflows and offers a large set of features that range from monitoring to supporting cloud storage, to periodic execution, etc. It is a robust and very capable workflow engine, which is a perfect fit for managing execution of OGC API – Processes requests in pygeoapi.

This presentation will provide an overview of the prefect process manager plugin for pygeoapi and will demonstrate:

  • How to use pygeoapi for handling OGC API - Processes use cases
  • How the pygeoapi prefect plugin is a good match for managing the execution of processes and what are its main strengths as a geospatial data processing platform
State of software
UBT C / N109 - Second Floor
06-28
15:00
30min
How to secure pygeoapi and streamline protected OGC APIs
Francesco Bartoli, Antonio Cerciello

Securing a modern API in an effective way is critical to prevent unauthorized access and ensure the privacy and integrity of data. In general, there are three common mechanisms that can be used for API security: API keys, OAuth2/OpenID Connect, and JSON Web Tokens (JWT). Each of these mechanisms provides a different level of security and flexibility, depending on the requirements of the API. Modern OGC APIs are agnostic and rely completely on the adoption of OpenAPI security schemes so the implementers can use the mechanism that perfectly fits with their requirements.
fastgeoapi is a new open-source tool designed to be an authentication and authorization layer on top of a vanilla pygeoapi that offers out-of-the-box a secured infrastructure easily pluggable and configurable through the a standard OpenID Connect protocol.
This talk aims to describe the recipe to configure and protect a vanilla pygeoapi with Keycloak and Open Policy Agent in order to publish secured OGC APIs in a standard manner.

Open Standard
UBT D / N112 - Second Floor
06-28
11:00
30min
geoserverx - a new CLI and library to interact with GeoServer
Francesco Bartoli, krishna lodha

geoserverx is a modern Python package that provides an efficient and scalable way to interact with Geoserver REST APIs. It leverages the asynchronous capabilities of Python to offer a high-performance and reliable solution for managing Geoserver data and services.
With geoserverx, users can easily access and modify data in Geoserver, such as uploading and deleting shapefiles, publishing layers, creating workspaces, styles, etc. . The package supports asynchronous requests along with synchronous method to the Geoserver REST API, which enables users to perform multiple tasks simultaneously, improving performance and reducing wait times.
Apart from being implemented in Python Projects, geoserverx also provides CLI support for all of it's operations. Which makes it useful for people who want to avoid Python all-together.
In this talk we discover for the very first time about how geoserverx work and underlying code ideology. Along with that we'll also spread some light on upcoming modules to be integrated in geoserverx

Transition to FOSS4G
UBT F / N212 - Floor 3