Skip to content

Support new version of OGC API based on OpenAPI

Stéphane Brunner edited this page Apr 27, 2023 · 24 revisions

OGC web site: https://ogcapi.ogc.org/

The first goal of this page is to prepare the Camptocamp-OGC CodeSprint: https://developer.ogc.org/sprints/20/

Analyze the API that concerns GeoMapFish

Are we impacted?

We should update TileCloud-chain probably with https://pypi.org/project/pyramid-openapi3/ and https://pypi.org/project/python-openapi/ Using it didn't look to give any benefit at medium therm

Features https://ogcapi.ogc.org/features/ (part 1 & 2 accepted, 3: Filtering and 4: CRUD draft)

No benefit since we didn’t get JSON geometries with CRS and layer. See e.g. https://github.com/opengeospatial/ogc-feat-geo-json https://www.ogc.org/news/ogc-members-propose-new-features-and-geometries-json-standards-working-group-public-comment-sought/ But looks to be abandoned…

Are we impacted by legend?

Using it didn't look to give any benefit at medium therm

Landing page

It should work to have the benefit of that.

Landing page implementation impact and action: See how it works with MapServer and QgisServer do we have a page that presents all the projects?

Should we have a URL like .../mapserv_proxy/<ogs_server_base>/<project>?

I yes we probably should add a new kind of object in GeoMapFish admin.

Code sprint action

  • Get Status of projects OpenLayers, QgisServer, MapServer, GeoServer
    • QgisServer, MapServer, GeoServer: OGC API Feature implemented
    • OpenLayers: don't looks to have any implementation
  • Start landing page of QgisServer ant MapServer:
  • Tiles: implement it in TileCloud-chain
    • URL's to provide: /api, /collections/{collectionId}/map/tiles, /tileMatrixSets/{tileMatrixSet}, /map/tiles/{tileMatrixSetId}/{tileMatrix}/{tileRow}/{tileCol}.
    • No more dimentions
  • Maps
    • Not possible to query more than one map
  • Create an index page on /mapserv_proxy (no sub path and no ogcserver in query string) with a link to the landing pages of all the OGC servers.
  • Create a table named ‘Base OGC Server’:
    • Move into it the field Base URL (sub URL will be in OGC Server), Server Type, Auth type (what about support WFS)
    • The new API will be /mapserv_proxy///…
    • The old API will continue to work (/mapserv_proxy?ogcserver=...)
    • The QGIS server plugin should be updated to support the new schema (URL and database)
  • Missing in OpenLayers:
    • CQL formatter
    • OGC API Tile source
    • OGC API Tile parser
    • OGC API Map source