-
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
Changes for closer alignment with OpenEO. #477
base: master
Are you sure you want to change the base?
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,13 @@ | ||
type: string | ||
nullable: false | ||
enum: | ||
- accepted | ||
- created | ||
- queued | ||
- running | ||
- cancelled | ||
- finished | ||
- error | ||
- accepted | ||
- succeeded | ||
- failed | ||
- dismissed |
Original file line number | Diff line number | Diff line change | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
@@ -1,42 +1,47 @@ | ||||||||||||||
type: object | ||||||||||||||
required: | ||||||||||||||
- id | ||||||||||||||
- status | ||||||||||||||
- type | ||||||||||||||
properties: | ||||||||||||||
id: | ||||||||||||||
type: string | ||||||||||||||
processID: | ||||||||||||||
type: string | ||||||||||||||
type: | ||||||||||||||
type: string | ||||||||||||||
example: | ||||||||||||||
- process | ||||||||||||||
- wps | ||||||||||||||
- openeo | ||||||||||||||
status: | ||||||||||||||
$ref: "statusCode.yaml" | ||||||||||||||
message: | ||||||||||||||
type: string | ||||||||||||||
exception: | ||||||||||||||
$ref: "../common-core/exception.yaml" | ||||||||||||||
created: | ||||||||||||||
type: string | ||||||||||||||
format: date-time | ||||||||||||||
started: | ||||||||||||||
type: string | ||||||||||||||
format: date-time | ||||||||||||||
finished: | ||||||||||||||
type: string | ||||||||||||||
format: date-time | ||||||||||||||
updated: | ||||||||||||||
type: string | ||||||||||||||
format: date-time | ||||||||||||||
progress: | ||||||||||||||
type: integer | ||||||||||||||
minimum: 0 | ||||||||||||||
maximum: 100 | ||||||||||||||
links: | ||||||||||||||
type: array | ||||||||||||||
items: | ||||||||||||||
$ref: "../common-core/link.yaml" | ||||||||||||||
allOf: | ||||||||||||||
- $ref: descriptionType.yaml | ||||||||||||||
- type: object | ||||||||||||||
required: | ||||||||||||||
- id | ||||||||||||||
- status | ||||||||||||||
- created | ||||||||||||||
- process | ||||||||||||||
- type | ||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Should it be required or optional? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I reverted back to the required fields for OAProc and included text in the descriptions based on the value of the "type" property. If the value of "type" is "openeo" then both "created" and "process" MUST be present as per the OpenEO API definition. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thanks. Generally, I think we can do better to avoid these if/then conditionals as much as possible :-) |
||||||||||||||
properties: | ||||||||||||||
id: | ||||||||||||||
type: string | ||||||||||||||
process: | ||||||||||||||
$ref: process.yaml | ||||||||||||||
type: | ||||||||||||||
type: string | ||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. process type? It should probably just describe the encoding of the process property There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I've updated the description to indicate that if "type" is "openeo" then the "process" property MUST be present and its value shall be a process graph as per the OpenEO API definition. Otherwise if can be an OAProc process description, a WPS process description, a link to either of these or a link to the request that created the job (e.g. an async coverages request). There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Do we want this condition to be more explicit? Since we have the allOf:
- $ref: descriptionType.yaml
- type: object
# ... all other fields ...
- if:
properties:
type:
const: openeo # or 'enum' equivalent if prefered
then:
required:
- id
- type
- status
- process
properties:
process:
$ref: "<uri-to-openeo-process-graph>" There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm wondering whether OGC API - Processes should just define the framework and not have direct dependencies to openEO due to the issue that there are multiple versions of the openEO API... As long as openEO follows the framework, I guess it's fine, isn't it? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm expecting that anyone that wants to do strong schema validation would actually use the reference openEO schemas rather than depend on OGC API, so it's fine if we don't define field requirements of openEO explicitly here. However, if we do so, I don't see much point to have the long description either for specific frameworks. Saying in the description that There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes, I think the spec should not include specifics about openEO. Maybe as an appendix only. |
||||||||||||||
example: | ||||||||||||||
- process | ||||||||||||||
- wps | ||||||||||||||
- openeo | ||||||||||||||
status: | ||||||||||||||
oneOf: | ||||||||||||||
$ref: "statusCode.yaml" | ||||||||||||||
message: | ||||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
Looks invalid There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fixed. |
||||||||||||||
type: string | ||||||||||||||
exception: | ||||||||||||||
$ref: "../common-core/exception.yaml" | ||||||||||||||
created: | ||||||||||||||
type: string | ||||||||||||||
format: date-time | ||||||||||||||
started: | ||||||||||||||
type: string | ||||||||||||||
format: date-time | ||||||||||||||
finished: | ||||||||||||||
type: string | ||||||||||||||
format: date-time | ||||||||||||||
updated: | ||||||||||||||
type: string | ||||||||||||||
format: date-time | ||||||||||||||
progress: | ||||||||||||||
type: integer | ||||||||||||||
minimum: 0 | ||||||||||||||
maximum: 100 | ||||||||||||||
links: | ||||||||||||||
type: array | ||||||||||||||
items: | ||||||||||||||
$ref: "../common-core/link.yaml" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
openEO uses "canceled", is it double l in OGC API Processes?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed.