-
Notifications
You must be signed in to change notification settings - Fork 46
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
Migration/support of Process Description using JSON schema #45
Comments
A path forward for describing supported mimeType (topic 4) is by using the format (which can be extended) property.
The same applies for output of course. |
For providing metadata (= web client information, any other stuff), in JSON Schema it is not an error to include undefined keywords. So we may define:
Some regular kind of information:
|
I tried to come up with a simplified JSON Schema: https://github.com/Open-EO/openeo-processes/issues/64 For reference, how we describe processes in openEO with a custom Schema + JSON Schema for parameters (inputs) and return values (outputs): https://open-eo.github.io/openeo-api/v/0.4.1/apireference/#tag/Process-Discovery/paths/~1processes/get
I think you are on the wrong track. You'd describe the process description with JSON Schema only. Nothing else would change.
There's both title and description in JSON Schema. I don't see the problem here?
Yes, it is possible. But I'm not sure what this would be useful for. It would very much complicate JSON Schema, which was said should even be simplified.
For strings there's format and pattern, which should fit most cases. For numbers there are other parameters. What does WPS offer in addition to JSON Schema, which is crucial?
Look how we do it for openEO. You are too strictly trying to put everything in either openAPI or JSON Schema. In a combined document. That won't work and was never intended, I think. |
Not understood the last sentence. |
The last paragraph? I don't think the intention was to put the process descriptions into the openAPI files. The intention was to use JSON Schema and/or the JSON Schema derivation from OpenAPI. Therefore you are not limited by what a single OpenAPI document offers and your last point doesn't seem to be a problem. |
You are probably right but I didn't catch that. You suggest basically (in brief) that we only replace the complexData/literalData definition with a schema definition as you did for openEO. What I understood this morning is that we directly provide the process "interface" in the OpenAPI definition of the API (which means we don't need an operation to discover processes). The reason why I was thinking about this is because there was an equivalent way of doing that in XML (but never used it). Even if you example looks great, I think that my second approach is also interesting to think about. You only need to extend with some custom properties for supporting all usual WPS features. |
During the Hackaton discussion, we have agreed migrating the JSON Process DEscription to a JSON schema is a great idea.
My understanding of the replacement is the following:
I tried to express the process definition (inputs, outputs and metadata) using a JSON Schema definition instead of “process description” traditional document (see below my quick hackaton example). Some issues encountered when mapping Processing Description to JSON Schema:
Do you have workaround for those issues ?
The text was updated successfully, but these errors were encountered: