EURODEO / rodeo-edr-profile

This is a repository to make EDR profiles used in EURODEO visible for all use
https://rodeo-project.eu/rodeo-edr-profile
Creative Commons Attribution 4.0 International
2 stars 0 forks source link

All profiles will require the service to be described by OpenAPI #3

Closed havardf closed 1 month ago

havardf commented 2 months ago

Each service that conforms to one of the RODEO profiles must be described by OpenAPI 3.0 or higher.

Which means:

E.g snippet from landingpage:

 {
      "href": "https://example.com/openapi.json",
      "rel": "service-desc",
      "type": "application/json",
      "title": "API description in JSON"
  },

Any other requirements? And, how would be best define the requirement about collections beeing compliant to the openapi spec?

havardf commented 2 months ago

I think this one is relatively straightforward, I will create a PR for adding it to the profile.

havardf commented 2 months ago

@tomkralidis I have a couple of questions regarding the standard specification for openapi. 1. There are requirements for OpenAPI already in EDR, albeit not mandatory. Its also described in the OGC-API Common specification? Should we copy and paste, or can we refer to a requiremnts class in another spec?

  1. The requirements classes for OpenAPI all specify 3.0. We need to allow for 3.1, and maybe also just 3.0.3 or higher. Are there any previous work on specifying this?
havardf commented 2 months ago

Or, for future proofing, require OpenAPI 3.1 or higher?

The services in RODEO seems already to have adopted 3.1. I am guessing mainly because they use FastAPI and FastAPI probably generate 3.1 by default.

ways commented 2 months ago

Or, for future proofing, require OpenAPI 3.1 or higher?

The services in RODEO seems already to have adopted 3.1. I am guessing mainly because they use FastAPI and FastAPI probably generate 3.1 by default.

We decided in a video meeting to go for >= OpenAPI 3.1.

ways commented 2 months ago

"type": "application/json",

Instead of this we should have a type mentioning openapi.

@tomkralidis What was the correct one?

tomkralidis commented 2 months ago

We should make sure that by supporting OpenAPI 3.1+ (and not OpenAPI 3.0) that this doesn't affect compliance to EDR proper. cc @m-burgoyne for clarification/confirmation.

tomkralidis commented 2 months ago

"type": "application/json",

Instead of this we should have a type mentioning openapi.

@tomkralidis What was the correct one?

application/vnd.oai.openapi+json;version=3.0 (for OpenAPI 3.0).