Skip to content

Processing Parameters and Asset Roles - #46

Open
fmigneault wants to merge 6 commits into
stac-extensions:mainfrom
crim-ca:processing-parameters
Open

fmigneault wants to merge 6 commits into
stac-extensions:mainfrom
crim-ca:processing-parameters

Conversation

@fmigneault

Copy link
Copy Markdown

Note

As discussed at the STAC Community Meeting 2026-10-19, and as replacement of:

Changes

  • New parameters field under processing:expression to provide a mapping of named input values employed.
  • Asset roles processing-input, processing-output, processing-parameters and processing-results.
  • Recommendation to employ profile in Asset using the above roles and examples for common applications.

@fmigneault

Copy link
Copy Markdown
Author

@gadomski
gadomski self-requested a review October 20, 2026 10:59

@gadomski gadomski left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, this makes more sense to me, but there's a few bits that I find confusing ... I might not be the target audience for these changes, though.

Comment thread README.md
| ------------------ | ------ | ----------- | ------- |
| `gdal-calc` | string | A [`gdal_calc.py`](https://gdal.org/programs/gdal_calc.html) expression based on numpy syntax. | `A*logical_or(A<=177,A>=185)` |
| `openeo` | object | An [openEO process](https://openeo.org/documentation/1.0/developers/api/reference.html#section/Processes) | [Example](https://raw.githubusercontent.com/Open-EO/openeo-processes/1.2.0/normalized_difference.json) |
| `ogcapi-processes` | object | An [OGC ProcessDescription](https://docs.ogc.org/is/18-062r2/18-062r2.html#ogc_process_description) | [Example](https://schemas.opengis.net/ogcapi/processes/part1/1.0/examples/json/ProcessDescription.json) |

@gadomski gadomski Oct 27, 2026 •

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change (adding ogcapi-processes) might be easier to review in its own PR, since it's technically independent of processing parameters.

Comment thread README.md
Comment on lines +180 to +183
> [!NOTE]
> To ensure portability, `format` may employ a specific profile URI from a registered naming authority
> that explicitly describes the represented `expression` without ambiguity.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not familiar with a "profile URI" — it could be helpful to link out to an explanation to help the reader understand how to use a profile?

Comment thread README.md
Comment on lines +201 to +202
| processing-input | An Asset that represents an individual input (e.g., a configuration file required by the processing expression). Note that an input STAC object should instead use the `derived_from` link [relation type](#relation-types). |
| processing-parameters | An Asset that embeds the entire processing parametrization contents that were submitted. This is similar to [Parameters](#parameters) but is not limited to `application/json` and can contain much more data. |

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't intuitively understand the different between the input and the parameters? In programming terms, aren't they both "function arguments"?

Comment thread README.md
Comment on lines +203 to +204
| processing-output | An Asset that represents an invidivudal output (possibily amongst multiple) that was generated by the processing expression. These Assets should typically include `data` role as well, although not strictly required. |
| processing-results | An Asset that embeds the entire processing results contents generated by the processing expression (e.g., an _OGC API - Processes_ [Results](https://schemas.opengis.net/ogcapi/processes/part1/1.0/examples/json/Result.json) document. |

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Similarly, what's the different between an "output" and a "result"? Aren't these both akin to "the return value of the function"?

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants