citysciencelab / urban-model-platform

This repository contains a prototype for a urban model platform. It is written in Python and implements the OGC API Processes Standard as an execution management service.
GNU General Public License v3.0
10 stars 1 forks source link

Output/result scheme implementation #3

Open herzogrh opened 4 months ago

herzogrh commented 4 months ago

Problem: OGC API Processes does not define the data schema of job-results, but allows schemas to be freely defined. The geoserver/storage component of the UMP must interpret the job results and extract the relevant information.

depending on the output schema, a "value" key may be prescribed according to the api spec, under which the output can be found (qualified values)

Implementation on both sides: Model server should adequately describe the output schemas and UMP (geoserver/storage component) must read the output description and thus parse job results

The geoserver/storage component must read the output structure of the process description:

Example:

grafik
hwbllmnn commented 1 month ago

The OGC API processes allows for a lot of freedom in the definition of the output. Wouldn't it be better if we'd define some kind of convention on how the output should look like? Looking for feature collections anywhere in the output tree might be overkill IMHO, especially in case of special output constructs containing several features/feature collections in different places.

herzogrh commented 1 month ago

For us it would be best if we could have as much freedom as possible in the configuration. Maybe it's good to conceptually separate it into two parts:

  1. A modular architecture where the parsing of various output types and connection to the GeoServer happens (which could be flexibly extended in the future with additional formats)
  2. A configuration in which one would specify which parts of the output of a model would be handed over to the parsing part I also think it'd make sense that for each job/simulation run, there is only one single Layer in the Geoserver created. What do you think @hhmric @StefanSchuhart ?
herzogrh commented 1 month ago

I think #62 works well, but it seems like I can only configure one path in the results that will be stored in the Geoserver. We should incorporate the graph section in the details page aswell and some way to specify if either multiple forms of geodata will be provided or which form (eg. GeoTIFF).