Skip to content
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

openEO oriented JSON types #539

Open
soxofaan opened this issue Jun 27, 2024 · 2 comments
Open

openEO oriented JSON types #539

soxofaan opened this issue Jun 27, 2024 · 2 comments

Comments

@soxofaan
Copy link
Member

soxofaan commented Jun 27, 2024

In the JSON world it's common to use a "type" field to indicate what the nature of an object is: e.g. GeoJSON (types "Polygon", "Point", "Feature", ...) or STAC ("Catalog", "Collection).

We're starting to integrate openEO resources outside typical openEO contexts (e.g. remote UDPs #515) and I think it makes sense to start introducing openEO-oriented types for that.

For example, an external UDP should be something like

{
  "type": "openeo-process",
  "id": "evi",
  "process_graph": ...

I arbitrarily picked "openeo-process" here. I'm unaware of any common conventions about that at the moment, so it could equally be "openEO-process", "openEO/process" or whatever

Enforcing this in openEO API 1.x itself is out of the question of course as this would be a breaking change. But it would be good to already settle on some types so that tools can build on that in a future compatible way.

@m-mohr
Copy link
Member

m-mohr commented Jun 27, 2024

Do you know any examples outside of GeoJSON-inspired formats? The STAC types are inspired by GeoJSON. I'm wondering whether type is somewhat commonly used outside our bubble...

@soxofaan
Copy link
Member Author

soxofaan commented Jun 28, 2024

Indeed, I might be extrapolating from our bubble too much here. But still, openEO has quite some touching points with GeoJSON and STAC, so it still makes sense to adapt some patterns.

Some other comparable solutions I can think of:

  • OGC's conformsTo
  • $schema as used in JSON Schema

but both of these use URIs, which makes it less human friendly than a simple short string

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

No branches or pull requests

2 participants