Conflicting KVP execute parameters
fmigneault opened this issue · comments
Description
As previously highlighted in #96 and #290, the KVP request format has potentially conflicting query parameters names.
Since there is no distinction between the <inputID>=<value>
where inputID
happens to be prefer
or f
, and control parameters prefer=respond-async
or f=application/json
, a process using those technically valid input IDs will be impossible to submit for execution. One potential solution would be to have response[prefer]
and response[f]
(or response[format]
) to distinguish input IDs from control parameters.
Similarly, the bounding box input currently uses <inputID>-crs
to provide the CRS. If the process took inputs with IDs bbox
(BoundingBoxInput) and bbox-crs
(LiteralStringInput), the execution request would cause side effects. There would be no way to distinguish from an input named bbox-crs
and the "CRS for bbox
". Instead, bbox[crs]
should be used with the deepObject
convention employed for all other formats (ie: by-reference, output[include]
and so on).
References
- https://github.com/opengeospatial/ogcapi-processes/blob/1a54686aa27023ed6adb19c98dba3f55a39bb1d8/core/requirements/kvp-execute/REQ_prefer-definition.adoc
- https://github.com/opengeospatial/ogcapi-processes/blob/1a54686aa27023ed6adb19c98dba3f55a39bb1d8/core/requirements/kvp-execute/REQ_f-definition.adoc
- https://github.com/opengeospatial/ogcapi-processes/blob/1a54686aa27023ed6adb19c98dba3f55a39bb1d8/core/sections/clause_15_kvp-execute.adoc