From 0e5fd6e55b1f5b26b1276b5558bbf3856d0da97d Mon Sep 17 00:00:00 2001 From: Tom Kralidis Date: Fri, 3 Jul 2026 01:50:52 -0400 Subject: [PATCH 1/3] Exercise 4: Maps: add feature provider for airports --- workshop/content/docs/publishing/ogcapi-maps.md | 9 +++++++++ workshop/exercises/pygeoapi.config.yml | 5 +++++ 2 files changed, 14 insertions(+) diff --git a/workshop/content/docs/publishing/ogcapi-maps.md b/workshop/content/docs/publishing/ogcapi-maps.md index 4e4c16b..450ae83 100644 --- a/workshop/content/docs/publishing/ogcapi-maps.md +++ b/workshop/content/docs/publishing/ogcapi-maps.md @@ -59,12 +59,21 @@ In this section we'll be exposing a Geopackage file available at `workshop/exerc format: name: png mimetype: image/png + - type: feature + name: SQLiteGPKG + data: /data/airport.gpkg + id_field: fid + table: airport ``` !!! note See [the official documentation](https://docs.pygeoapi.io/en/latest/publishing/ogcapi-maps.html) for more information on supported map backends +!!! note + + The airport data is published as **both** a map and a feature collection through a single endpoint (`/collections/airports`). How is this made possible in the above configuration? + ## pygeoapi as a WMS proxy You can check the "pygeoapi as a Bridge to Other Services" section to learn how to [publish WMS as OGC API - Maps](../advanced/bridges.md#publishing-wms-as-ogc-api-maps). diff --git a/workshop/exercises/pygeoapi.config.yml b/workshop/exercises/pygeoapi.config.yml index 9241d98..d0c5ac5 100644 --- a/workshop/exercises/pygeoapi.config.yml +++ b/workshop/exercises/pygeoapi.config.yml @@ -315,6 +315,11 @@ resources: # name: png # mimetype: image/png # storage_crs: http://www.opengis.net/def/crs/EPSG/0/4326 +# - type: feature +# name: SQLiteGPKG +# data: /data/airport.gpkg +# id_field: fid +# table: airport ## END - EXERCISE 4 - Maps ## START - EXERCISE 5 - Tiles From 7b3192d38acff520768f620ff496d567a2956bef Mon Sep 17 00:00:00 2001 From: Tom Kralidis Date: Fri, 3 Jul 2026 01:50:57 -0400 Subject: [PATCH 2/3] update .gitignore --- .gitignore | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index ff316ab..d3de239 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,9 @@ .DS_Store workshop/exercises/data/tiles +workshop/exercises/data/brazil/guama_river.gpkg +workshop/exercises/data/airport.gpkg-* +workshop/exercises/data/tartu/metadata/load_tinydb_records.py workshop/content/.cache workshop/content/site - .idea .venv From 010a045e18fc80b9cbc333686d9859fe814adc10 Mon Sep 17 00:00:00 2001 From: Tom Kralidis Date: Fri, 3 Jul 2026 01:53:12 -0400 Subject: [PATCH 3/3] fix --- workshop/exercises/pygeoapi.config.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/workshop/exercises/pygeoapi.config.yml b/workshop/exercises/pygeoapi.config.yml index d0c5ac5..c3e0e03 100644 --- a/workshop/exercises/pygeoapi.config.yml +++ b/workshop/exercises/pygeoapi.config.yml @@ -315,11 +315,11 @@ resources: # name: png # mimetype: image/png # storage_crs: http://www.opengis.net/def/crs/EPSG/0/4326 -# - type: feature -# name: SQLiteGPKG -# data: /data/airport.gpkg -# id_field: fid -# table: airport +# - type: feature +# name: SQLiteGPKG +# data: /data/airport.gpkg +# id_field: fid +# table: airport ## END - EXERCISE 4 - Maps ## START - EXERCISE 5 - Tiles