-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Specify target collection metadata in UDP (& batch jobs) #514
Comments
Update for myself: example of metadata that users are asking for.
|
With regards to 2: The GEE driver has a parameter for save_result which can contain STAC metadata that is added to the output. Isn't stac_modify also suitable here? |
I created a PR here as one alternative to solve this: The idea is not to extend the UDP spec, but rather to link to another STAC document that describes the collection that is generated by the UDP. So this is a kind of 'virtual' STAC object, that only materializes when the UDP is executed. Advantages:
Challenges/questions:
|
Generally, the link seems like a good idea. I think I'd need a bit more time to investigate the usecase to come up with potential solutions. |
I'm not sure I understand this. I thought the STAC Collection should already be present before the UDP is executed. To indicate users about the scope and potentially for validation in clients, e.g. the Web Editor Wizard. The STAC Items would only materialize when the UDP is executed though (and the Collection may be updated, too). Assuming my comment above is correct, my initial thoughts on this: A link to a STAC collections seems like the most reasonable approach. It pretty much is a STAC Collection, where you expect the items to be generated for. So the STAC Collection should be valid for that assumption, not STAC Items should be generated that do not match the collection metadata. Primary issue that I see is that you can only easily specify a bbox, not a geometry (unless we use proj:geometry on the top-level, but that is pretty uncommmon). Relation types
Remark: STAC has no dedicated media type for collections, so it's always a bit ambiguous whether something links to STAC or not. If a client detects a link with Populating STAC ItemsYou can't simply provide the Collection via stac_modify (due to JSON Patch Merge), but back-ends find such a STAC collection in the process metadata, they can automatically fill in some of the metadata:
Mapping the exampleThe metadata described in #514 (comment), is not really STAC compliant. Here's a mapping to a Collection:
Open questions/challengesI think most questions, challenges and usecases would be solved with the approach described above.
I can't think of a simple solution right now, especially not one that is STAC compliant. |
2 new use cases came up, with a similar solution:
Note that this collection metadata also acts as a definition of constraints: if the output aoi is europe, than it will probably not accept an input aoi in north america. So UDP tools can use this for input field validation, which is very useful for generic wizards like the openEO editor has.
My proposed solution is to simply add a property with the target STAC collection metadata to the UDP and batch job schema:
https://api.openeo.org/#tag/User-Defined-Processes/operation/store-custom-process
I'll probably experiment with this myself, but also wanted to share the idea. These cases are triggered by user projects.
The text was updated successfully, but these errors were encountered: