Jorge Gustavo Rocha

Jorge Gustavo has a PhD in Computer Science. He is Assistant Professor at the Computer Science Department at Minho University, where he teaches and researches on Geographic Information System and Science. Jorge has contributed to several open source projects, like QGIS and GDAL. With former PhD students he started Geomaster, a company that provides professional services on top of open source GIS software.


Sessions

06-02
13:30
30min
Turning PostGIS Databases into Web Maps
Jorge Gustavo Rocha

In 2019, the Portuguese national mapping agency updated the standards and technical specifications for topographic mapping to leverage recent technological advancements and better meet the evolving needs of geographical information users. This revision also strengthens alignment with the INSPIRE Directive, facilitating the harmonization of national geographic data.

As a result, all newly produced topographic maps must be represented as geographic features in a relational database. Since then, all topographic mapping submissions for approval have been delivered to the agency as PostGIS backups.

Storing this data in PostGIS unlocks new possibilities, including automated validation workflows. Continuous integration workflows can now check dozens of validation rules each time new cartographic data is added to the approval database.

In this presentation, we will demonstrate an automated workflow that transforms PostGIS-stored topographic data into high-quality web maps. This fully automated process ensures that as soon as new cartographic data is inserted into PostGIS, the following steps are triggered:
* Creating a new QGIS project with all layers organized into 10 thematic groups
* Assigning one or more styles to each feature class
* Generating printable reports
* Creating a 2D web interface for visualization
* Creating a 3D web interface for enhanced visualization of 3D features
* Configuring QGIS Server to serve all layers
* Setting up MapProxy to handle complex rendering tasks

The final output is an interactive web map that effectively visualizes topographic data. Comprehensive documentation will be provided to ensure reproducibility for other datasets. Additionally, a 90-minute workshop is being prepared to complement this presentation.

Databases & Web
Birollen
06-03
11:00
90min
Publishing Maps on the Web with QGIS Server
Jorge Gustavo Rocha

Publishing geographic information on the web is a common requirement, and numerous platforms are available to support this need. Whether using commercial or self-hosted solutions, understanding the underlying workflows is essential for those looking to develop web map-based applications.

This workshop will focus on using QGIS and QGIS Server to create and publish web map applications. We will leverage QGIS, QGIS Server, and PostgreSQL to build a seamless and automated workflow.

On the server side, projects will be stored in a PostgreSQL database, where a database trigger will extract all necessary project information using PyQGIS. This process will automatically generate a fully functional web map application. QGIS Server will serve project layers, ensuring that any updates or customizations made in QGIS are reflected in the web app in real-time.

To maintain a consistent user experience between QGIS and the web, we will systematically review project components, including layers, column properties, and relationships. This ensures that users see the same content in their browser as they do in QGIS. Additionally, we will explore how QGIS layouts can be used for printing, including the ability to add custom content. The Atlas layout feature will also be demonstrated for generating print-ready maps of selected items or search results.

To simplify setup, the workshop will use a pre-configured Docker environment with all required software, making it accessible for beginners.

Prerequisites

To fully benefit from this workshop, participants should:
* Be familiar with QGIS
* Have basic Python knowledge (we will use PyQGIS, both in the QGIS console and externally)
* Be comfortable using Docker
* Be able to navigate a PostgreSQL client (e.g., pgAdmin or DBeaver)
* Have a basic understanding of how the web works

Workshop
KO22 (WS1)