diff --git a/extensions/job_management/standard/recommendations/provenance/run/PER_content-negotiation.adoc b/extensions/job_management/standard/recommendations/provenance/prov/PER_content-negotiation.adoc similarity index 82% rename from extensions/job_management/standard/recommendations/provenance/run/PER_content-negotiation.adoc rename to extensions/job_management/standard/recommendations/provenance/prov/PER_content-negotiation.adoc index 4feb104a..f257518a 100644 --- a/extensions/job_management/standard/recommendations/provenance/run/PER_content-negotiation.adoc +++ b/extensions/job_management/standard/recommendations/provenance/prov/PER_content-negotiation.adoc @@ -1,8 +1,8 @@ -[[per_job-provenance_run_content-negotiation]] +[[per_job-provenance_prov_content-negotiation]] [permission] ==== [%metadata] -label:: /per/provenance/run-content-negotiation +label:: /per/provenance/prov-content-negotiation part:: Content negotiation MAY be supported to provide alternate representations of the response. part:: The server MAY support the following additional content type: `application/ld+json` for PROV-O as JSON-LD part:: The server MAY support the following additional content type: `application/xml` for PROV-XML diff --git a/extensions/job_management/standard/requirements/provenance/prov/REQ_get-op.adoc b/extensions/job_management/standard/requirements/provenance/prov/REQ_get-op.adoc new file mode 100644 index 00000000..2e06e8a6 --- /dev/null +++ b/extensions/job_management/standard/requirements/provenance/prov/REQ_get-op.adoc @@ -0,0 +1,8 @@ +[[req_job-provenance_prov_get-op]] +[requirement] +==== +[%metadata] +label:: /req/provenance/prov-get-op +part:: For every created jobs (path: `/jobs/{jobId}/prov`), the server SHALL support the HTTP GET operation. +part:: The parameter `{jobId}` is each `id` property in the job list response (JSONPath: `$.jobs[*].id`). +==== diff --git a/extensions/job_management/standard/requirements/provenance/run/REQ_response.adoc b/extensions/job_management/standard/requirements/provenance/prov/REQ_response.adoc similarity index 86% rename from extensions/job_management/standard/requirements/provenance/run/REQ_response.adoc rename to extensions/job_management/standard/requirements/provenance/prov/REQ_response.adoc index f31d4963..2a6edc47 100644 --- a/extensions/job_management/standard/requirements/provenance/run/REQ_response.adoc +++ b/extensions/job_management/standard/requirements/provenance/prov/REQ_response.adoc @@ -1,8 +1,8 @@ -[[req_provenance_run_response]] +[[req_provenance_prov_response]] [requirement] ==== [%metadata] -label:: /req/provenance/run-response +label:: /req/provenance/prov-response part:: A successful execution of the operation SHALL be reported as a response with a HTTP status code '200'. part:: Per default, the response SHALL contains a JSON document that conforms to the https://www.w3.org/submissions/prov-json/schema[schema for PROV-JSON]. part:: In case content-negotiation is used, the response MAY contain other representations including PROV-O as JSON-LD, PROV-XML or PROV-N. diff --git a/extensions/job_management/standard/requirements/provenance/run/REQ_get-op.adoc b/extensions/job_management/standard/requirements/provenance/run/REQ_get-op.adoc deleted file mode 100644 index a2ca4da7..00000000 --- a/extensions/job_management/standard/requirements/provenance/run/REQ_get-op.adoc +++ /dev/null @@ -1,8 +0,0 @@ -[[req_job-provenance_run_get-op]] -[requirement] -==== -[%metadata] -label:: /req/provenance/run-get-op -part:: For every created jobs (path: `/jobs/{jobId}/run`), the server SHALL support the HTTP GET operation. -part:: The parameter `{jobId}` is each `id` property in the job list response (JSONPath: `$.jobs[*].id`). -==== diff --git a/extensions/job_management/standard/sections/clause_9_provenance.adoc b/extensions/job_management/standard/sections/clause_9_provenance.adoc index ab3d4e1a..cc881207 100644 --- a/extensions/job_management/standard/sections/clause_9_provenance.adoc +++ b/extensions/job_management/standard/sections/clause_9_provenance.adoc @@ -21,18 +21,18 @@ include::../requirements/provenance/inputs/REQ_get-op.adoc[] include::../requirements/provenance/inputs/REQ_response.adoc[] -==== Run +==== Prov -The server MUST provide an endpoint to retrieve the run of a job. +The server MUST provide an endpoint to retrieve the provenance of a job. ===== Operation -include::../requirements/provenance/run/REQ_get-op.adoc[] +include::../requirements/provenance/prov/REQ_get-op.adoc[] -include::../recommendations/provenance/run/PER_content-negotiation.adoc[] +include::../recommendations/provenance/prov/PER_content-negotiation.adoc[] ===== Response -include::../requirements/provenance/run/REQ_response.adoc[] +include::../requirements/provenance/prov/REQ_response.adoc[] diff --git a/openapi/paths/processes-dru/pDeploy.yaml b/openapi/paths/processes-dru/pDeploy.yaml index e84843e8..0947c156 100644 --- a/openapi/paths/processes-dru/pDeploy.yaml +++ b/openapi/paths/processes-dru/pDeploy.yaml @@ -29,6 +29,8 @@ post: responses: 201: $ref: "../../schemas/processes-core/processSummary.yaml" + 400: + $ref: "../../responses/processes-dru/rWorkflowNotFound.yaml" 403: $ref: "../../responses/processes-dru/rImmutableProcess.yaml" 409: diff --git a/openapi/paths/processes-dru/pProcessDescriptionReplaceUndeploy.yaml b/openapi/paths/processes-dru/pProcessDescriptionReplaceUndeploy.yaml index 76020cc2..4a40d3f1 100644 --- a/openapi/paths/processes-dru/pProcessDescriptionReplaceUndeploy.yaml +++ b/openapi/paths/processes-dru/pProcessDescriptionReplaceUndeploy.yaml @@ -48,6 +48,8 @@ put: responses: 204: $ref: "../../responses/processes-core/rEmpty.yaml" + 400: + $ref: "../../responses/processes-dru/rWorkflowNotFound.yaml" 403: $ref: "../../responses/processes-dru/rImmutableProcess.yaml" 404: diff --git a/openapi/paths/processes-dru/pProcessListDeploy.yaml b/openapi/paths/processes-dru/pProcessListDeploy.yaml index 8b9cfb38..c5c0fadd 100644 --- a/openapi/paths/processes-dru/pProcessListDeploy.yaml +++ b/openapi/paths/processes-dru/pProcessListDeploy.yaml @@ -41,6 +41,8 @@ post: responses: 201: $ref: "../../schemas/processes-core/processSummary.yaml" + 400: + $ref: "../../responses/processes-dru/rWorkflowNotFound.yaml" 403: $ref: "../../responses/processes-dru/rImmutableProcess.yaml" 409: diff --git a/openapi/paths/processes-dru/pReplace.yaml b/openapi/paths/processes-dru/pReplace.yaml index 36adc337..3c049db8 100644 --- a/openapi/paths/processes-dru/pReplace.yaml +++ b/openapi/paths/processes-dru/pReplace.yaml @@ -29,6 +29,8 @@ put: responses: 204: $ref: "../../responses/processes-core/rEmpty.yaml" + 400: + $ref: "../../responses/processes-dru/rWorkflowNotFound.yaml" 403: $ref: "../../responses/processes-dru/rImmutableProcess.yaml" 404: diff --git a/openapi/schemas/processes-job-management/headers.yaml b/openapi/schemas/processes-job-management/headers.yaml new file mode 100644 index 00000000..c1ed337f --- /dev/null +++ b/openapi/schemas/processes-job-management/headers.yaml @@ -0,0 +1,3 @@ +type: object +additionalProperties: + type: string \ No newline at end of file diff --git a/openapi/schemas/processes-job-management/inputs.yaml b/openapi/schemas/processes-job-management/inputs.yaml index 88701fe2..79ead9ad 100644 --- a/openapi/schemas/processes-job-management/inputs.yaml +++ b/openapi/schemas/processes-job-management/inputs.yaml @@ -19,3 +19,5 @@ properties: type: array items: $ref: "../processes-core/metadata.yaml" + headers: + $ref: "headers.yaml" \ No newline at end of file