Skip to content

How to return a reference for Processes results? #2255

@francescoingv

Description

@francescoingv

I am trying to offer a process having the capability of outputTransmission = reference
I am focused on:

  • execution-mode = async
  • response = raw
  • all outputs requested with "transmissionMode": "reference"

According to Table 11 and Requirement 30 of the standard:

  • the body will be empty
  • the returned status will be 204
  • the media type will be none
  • there will be one or more Link headers that reference each requested output

My understanding in pygeoapi architecture is that the Processor offering outputTransmission = reference will make the resource(s), one per requested output, and the client will be able to access that resource(s) at the provided link(s).
The URL where the Processor will make the resource(s) available is out of the scope of the standard, is not part of pygeoapi, and it is the sole responsibility of the Processor to make them, and only the Processor knows them.

In the case I am focusing on (i.e. execution-mode = async, response = raw, all outputs with "transmissionMode": "reference")
I understand the result of the Processor.execute() will be:

  • mime_type = none
  • outputs = "" (or none?)
  • status = 204

From this result the Manager cannot add to the response_headers the Link headers that reference each requested output.

Please can someone address me if I am missing something.
If not, I would like Processor.execute() may also return the Link headers required in this case.

Also, I didn't find in the standard what attributes the link header should have.
Specifically what attribute should contain the output identifier for each header? Any other attribute required?
May I ask if there is an example?

Thank you

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions