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

Add OpenAPI 3.1 support #590

Open
wants to merge 15 commits into
base: master
Choose a base branch
from
4 changes: 2 additions & 2 deletions LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ THIS LICENSE IS A COPYRIGHT LICENSE ONLY, AND DOES NOT CONVEY ANY RIGHTS UNDER A

THE INTELLECTUAL PROPERTY IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE DO NOT WARRANT THAT THE FUNCTIONS CONTAINED IN THE INTELLECTUAL PROPERTY WILL MEET YOUR REQUIREMENTS OR THAT THE OPERATION OF THE INTELLECTUAL PROPERTY WILL BE UNINTERRUPTED OR ERROR FREE. ANY USE OF THE INTELLECTUAL PROPERTY SHALL BE MADE ENTIRELY AT THE USER’S OWN RISK. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR ANY CONTRIBUTOR OF INTELLECTUAL PROPERTY RIGHTS TO THE INTELLECTUAL PROPERTY BE LIABLE FOR ANY CLAIM, OR ANY DIRECT, SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM ANY ALLEGED INFRINGEMENT OR ANY LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR UNDER ANY OTHER LEGAL THEORY, ARISING OUT OF OR IN CONNECTION WITH THE IMPLEMENTATION, USE, COMMERCIALIZATION OR PERFORMANCE OF THIS INTELLECTUAL PROPERTY.

This license is effective until terminated. You may terminate it at any time by destroying the Intellectual Property together with all copies in any form. The license will also terminate if you fail to comply with any term or condition of this Agreement. Except as provided in the following sentence, no such termination of this license shall require the termination of any third party end-user sublicense to the Intellectual Property which is in force as of the date of notice of such termination. In addition, should the Intellectual Property, or the operation of the Intellectual Property, infringe, or in LICENSOR’s sole opinion be likely to infringe, any patent, copyright, trademark or other right of a third party, you agree that LICENSOR, in its sole discretion, may terminate this license without any compensation or liability to you, your licensees or any other party. You agree upon termination of any kind to destroy or cause to be destroyed the Intellectual Property together with all copies in any form, whether held by you or by any third party.
This license is effective until terminated. You may terminate it at any time by destroying the Intellectual Property together with all copies in any form. The license will also terminate if you fail to comply with any term or condition of this Agreement. Except as provided in the following sentence, no such termination of this license SHALL require the termination of any third party end-user sublicense to the Intellectual Property which is in force as of the date of notice of such termination. In addition, should the Intellectual Property, or the operation of the Intellectual Property, infringe, or in LICENSOR’s sole opinion be likely to infringe, any patent, copyright, trademark or other right of a third party, you agree that LICENSOR, in its sole discretion, may terminate this license without any compensation or liability to you, your licensees or any other party. You agree upon termination of any kind to destroy or cause to be destroyed the Intellectual Property together with all copies in any form, whether held by you or by any third party.
chris-little marked this conversation as resolved.
Show resolved Hide resolved

Except as contained in this notice, the name of LICENSOR or of any other holder of a copyright in all or part of the Intellectual Property shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Intellectual Property without prior written authorization of LICENSOR or such copyright holder. LICENSOR is and shall at all times be the sole entity that may authorize you or any third party to use certification marks, trademarks or other special designations to indicate compliance with any LICENSOR standards or specifications. This Agreement is governed by the laws of the Commonwealth of Massachusetts. The application to this Agreement of the United Nations Convention on Contracts for the International Sale of Goods is hereby expressly excluded. In the event any provision of this Agreement shall be deemed unenforceable, void or invalid, such provision shall be modified so as to make it valid and enforceable, and as so modified the entire Agreement shall remain in full force and effect. No decision, action or inaction by LICENSOR shall be construed to be a waiver of any rights or remedies available to it.
Except as contained in this notice, the name of LICENSOR or of any other holder of a copyright in all or part of the Intellectual Property SHALL not be used in advertising or otherwise to promote the sale, use or other dealings in this Intellectual Property without prior written authorization of LICENSOR or such copyright holder. LICENSOR is and SHALL at all times be the sole entity that may authorize you or any third party to use certification marks, trademarks or other special designations to indicate compliance with any LICENSOR standards or specifications. This Agreement is governed by the laws of the Commonwealth of Massachusetts. The application to this Agreement of the United Nations Convention on Contracts for the International Sale of Goods is hereby expressly excluded. In the event any provision of this Agreement SHALL be deemed unenforceable, void or invalid, such provision SHALL be modified so as to make it valid and enforceable, and as so modified the entire Agreement SHALL remain in full force and effect. No decision, action or inaction by LICENSOR SHALL be construed to be a waiver of any rights or remedies available to it.
2 changes: 1 addition & 1 deletion README.md
chris-little marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,6 @@ The Working Group is now developing a backwards-compatible V1.1 and future enhan

### Contributing

The contributor understands that any contributions, if accepted by the OGC Membership, shall be incorporated into OGC standards documents and that all copyright and intellectual property shall be vested to the OGC.
The contributor understands that any contributions, if accepted by the OGC Membership, SHALL be incorporated into OGC standards documents and that all copyright and intellectual property SHALL be vested to the OGC.

Pull Requests from contributors are welcomed. However, please note that by sending a Pull Request or Commit to this GitHub repository, you are agreeing to the terms in the Observer Agreement https://portal.ogc.org/files/?artifact_id=92169
2 changes: 1 addition & 1 deletion core/standard/abstract_tests/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,4 @@ The test is expressed according to this pattern:
* <<req_cc_req,Requirement /req/cc/req>>
````

NOTE: for each test, there shall be one or more requirements in the "requirements" folder.
NOTE: for each test, there SHALL be one or more requirements in the "requirements" folder.
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,6 @@ test-method::
--
. Verify that only resources that have a spatial geometry that intersects the coordinates are returned as part of the result set.
. Verify `coords` values are valid for the specified coordinate reference system
. Verify that the coordinate reference system of the geometries is valid for the parameter defined by `crs`. If the `crs` parameter is not defined the geometries shall be valid for the coordinate reference system defined by the spatial element of the extent section in the collection response.
. Verify that the coordinate reference system of the geometries is valid for the parameter defined by `crs`. If the `crs` parameter is not defined the geometries SHALL be valid for the coordinate reference system defined by the spatial element of the extent section in the collection response.
--
====
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,6 @@ test-method::
--
. Verify that only resources that have a spatial geometry that intersects the coordinates are returned as part of the result set.
. Verify `coords` values are valid for the specified coordinate reference system
. Verify that the coordinate reference system of the geometries is valid for the parameter defined by `crs`. If the `crs` parameter is not defined the geometries shall be valid for the coordinate reference system defined by the spatial element of the extent section in the collection response.
. Verify that the coordinate reference system of the geometries is valid for the parameter defined by `crs`. If the `crs` parameter is not defined the geometries SHALL be valid for the coordinate reference system defined by the spatial element of the extent section in the collection response.
--
====
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,6 @@ test-method::
--
. Verify that only resources that have a spatial geometry that intersects the coordinates are returned as part of the result set.
. Verify `coords` values are valid for the specified coordinate reference system
. Verify that the coordinate reference system of the geometries is valid for the parameter defined by `crs`. If the `crs` parameter is not defined the geometries shall be valid for the coordinate reference system defined by the spatial element of the extent section in the collection response.
. Verify that the coordinate reference system of the geometries is valid for the parameter defined by `crs`. If the `crs` parameter is not defined the geometries SHALL be valid for the coordinate reference system defined by the spatial element of the extent section in the collection response.
--
====
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,6 @@ test-method::
--
. Verify that only resources that have a spatial geometry that intersects the coordinates are returned as part of the result set.
. Verify `coords` values are valid for the specified coordinate reference system
. Verify that the coordinate reference system of the geometries is valid for the parameter defined by `crs`. If the `crs` parameter is not defined the geometries shall be valid for the coordinate reference system defined by the spatial element of the extent section in the collection response.
. Verify that the coordinate reference system of the geometries is valid for the parameter defined by `crs`. If the `crs` parameter is not defined the geometries SHALL be valid for the coordinate reference system defined by the spatial element of the extent section in the collection response.
--
====
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,6 @@ test-method::
--
. Verify that only resources that have a spatial geometry that intersects the coordinates are returned as part of the result set.
. Verify `coords` values are valid for the specified coordinate reference system
. Verify that the coordinate reference system of the geometries is valid for the parameter defined by `crs`. If the `crs` parameter is not defined the geometries shall be valid for the coordinate reference system defined by the spatial element of the extent section in the collection response.
. Verify that the coordinate reference system of the geometries is valid for the parameter defined by `crs`. If the `crs` parameter is not defined the geometries SHALL be valid for the coordinate reference system defined by the spatial element of the extent section in the collection response.
--
====
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,6 @@ test-method::
--
. Verify that only resources that have a spatial geometry that intersects the coordinates are returned as part of the result set.
. Verify `coords` values are valid for the specified coordinate reference system
. Verify that the coordinate reference system of the geometries is valid for the parameter defined by `crs`. If the `crs` parameter is not defined the geometries shall be valid for the coordinate reference system defined by the spatial element of the extent section in the collection response.
. Verify that the coordinate reference system of the geometries is valid for the parameter defined by `crs`. If the `crs` parameter is not defined the geometries SHALL be valid for the coordinate reference system defined by the spatial element of the extent section in the collection response.
--
====
4 changes: 2 additions & 2 deletions core/standard/abstract_tests/core/ATS_http.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ identifier:: /conf/core/http
target:: /req/core/http
test-purpose:: Validate that the resource paths advertised through the API conform with HTTP 1.1 and, where appropriate, TLS.
test-method::
step::: All compliance tests shall be configured to use the HTTP 1.1 protocol exclusively.
step::: For APIs which support HTTPS, all compliance tests shall be configured to use <<RFC2818,HTTP over TLS>> (RFC 2818) with their HTTP 1.1 protocol.
step::: All compliance tests SHALL be configured to use the HTTP 1.1 protocol exclusively.
step::: For APIs which support HTTPS, all compliance tests SHALL be configured to use <<RFC2818,HTTP over TLS>> (RFC 2818) with their HTTP 1.1 protocol.
====
6 changes: 3 additions & 3 deletions core/standard/abstract_tests/queries/ATS_corridor.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ identifier:: /conf/corridor/coords-param-invalid-linestringm
target:: /req/edr/rc-corridor
test-purpose:: Validate that an error is returned by a `corridor` query when the coords query parameter does not contain a valid LINESTRINGM or MULTILINESTRINGM Well Known Text value.
test-method::
step::: Check coords query parameter with time parameter is a valid Well Known Text LINESTRINGM or MULTILINESTRINGM value, the `M` coordinate shall be a valid Epoch value (as known as UNIX time)
step::: Check coords query parameter with time parameter is a valid Well Known Text LINESTRINGM or MULTILINESTRINGM value, the `M` coordinate SHALL be a valid Epoch value (as known as UNIX time)
step::: Validate that a document was returned with a status code 400.
====

Expand Down Expand Up @@ -119,7 +119,7 @@ identifier:: /conf/corridor/coords-param-invalid-linestringzm
target:: /req/edr/rc-corridor
test-purpose:: Validate that an error is returned by a `corridor` query when the coords query parameter does not contain a valid LINESTRINGZM or MULTILINESTRINGZM Well Known Text value.
test-method::
. Check coords query parameter with time parameter is a valid Well Known Text LLINESTRINGZM or MULTILINESTRINGZM value, the `Z` coordinate shall be within the range of vertical levels advertised in the Collection metadata
. Check coords query parameter with time parameter is a valid Well Known Text LINESTRINGZM or MULTILINESTRINGZM value, the `Z` coordinate SHALL be within the range of vertical levels advertised in the Collection metadata
. Validate that a document was returned with a status code 400.
====

Expand All @@ -131,7 +131,7 @@ identifier:: /conf/corridor/coords-param-invalid-linestringz
target:: /req/edr/rc-corridor
test-purpose:: Validate that an error is returned by a `corridor` query when the coords query parameter does not contain a valid LINESTRINGZ or MULTILINESTRINGZ Well Known Text value.
test-method::
step::: Check coords query parameter with time parameter is a valid Well Known Text LINESTRINGZ or MULTILINESTRINGZ value, the `Z` coordinate shall be within the range of vertical levels advertised in the Collection metadata
step::: Check coords query parameter with time parameter is a valid Well Known Text LINESTRINGZ or MULTILINESTRINGZ value, the `Z` coordinate SHALL be within the range of vertical levels advertised in the Collection metadata
step::: Validate that a document was returned with a status code 400.
====

Expand Down
6 changes: 3 additions & 3 deletions core/standard/abstract_tests/queries/ATS_trajectory.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ identifier:: /conf/trajectory/coords-param-invalid-linestringm
target:: /req/edr/rc-trajectory
test-purpose:: Validate that an error is returned by a `Trajectory` query when the coords query parameter does not contain a valid LINESTRINGM or MULTILINESTRINGM Well Known Text value.
test-method::
step::: Check coords query parameter with time parameter is a valid Well Known Text LINESTRINGM or MULTILINESTRINGM value, the `M` coordinate shall be a valid Epoch value (as known as UNIX time)
step::: Check coords query parameter with time parameter is a valid Well Known Text LINESTRINGM or MULTILINESTRINGM value, the `M` coordinate SHALL be a valid Epoch value (as known as UNIX time)
step::: Validate that a document was returned with a status code 400.
====

Expand Down Expand Up @@ -73,7 +73,7 @@ identifier:: /conf/trajectory/coords-param-invalid-linestringzm
target:: /req/edr/rc-trajectory
test-purpose:: Validate that an error is returned by a `Trajectory` query when the coords query parameter does not contain a valid LINESTRINGZM or MULTILINESTRINGZM Well Known Text value.
test-method::
step::: Check coords query parameter with time parameter is a valid Well Known Text LINESTRINGZM or MULTILINESTRINGZM value, the `Z` coordinate shall be within the range of vertical levels advertised in the Collection metadata
step::: Check coords query parameter with time parameter is a valid Well Known Text LINESTRINGZM or MULTILINESTRINGZM value, the `Z` coordinate SHALL be within the range of vertical levels advertised in the Collection metadata
step::: Validate that a document was returned with a status code 400.
====

Expand All @@ -85,7 +85,7 @@ identifier:: /conf/trajectory/coords-param-invalid-linestringz
target:: /req/edr/rc-trajectory
test-purpose:: Validate that an error is returned by a `Trajectory` query when the coords query parameter does not contain a valid LINESTRINGZ or MULTILINESTRINGZ Well Known Text value.
test-method::
step::: Check coords query parameter with time parameter is a valid Well Known Text LINESTRINGZ or MULTILINESTRINGZ value, the `Z` coordinate shall be within the range of vertical levels advertised in the Collection metadata
step::: Check coords query parameter with time parameter is a valid Well Known Text LINESTRINGZ or MULTILINESTRINGZ value, the `Z` coordinate SHALL be within the range of vertical levels advertised in the Collection metadata
step::: Validate that a document was returned with a status code 400.
====

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ properties:
id:
type: string
type:
description: Type of the parameter object, shall be "Parameter"
description: Type of the parameter object, SHALL be "Parameter"
type: string
enum:
- Parameter
Expand Down
2 changes: 1 addition & 1 deletion core/standard/openapi/oas30/schemas/numberReturned.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ description: |-
A server may omit this information in a response, if the information
about the number of features is not known or difficult to compute.

If the value is provided, the value shall be identical to the number
If the value is provided, the value SHALL be identical to the number
of items in the "features" array.
minimum: 0
example: 10
2 changes: 1 addition & 1 deletion core/standard/openapi/oas30/schemas/parameterGroup.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ type: object
description: Represents logical groups of parameters
properties:
type:
description: Type of the parameter group object, shall be "ParameterGroup"
description: Type of the parameter group object, SHALL be "ParameterGroup"
type: string
enum:
- ParameterGroup
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ properties:
id:
type: string
type:
description: Type of the parameter object, shall be "Parameter"
description: Type of the parameter object, SHALL be "Parameter"
type: string
enum:
- Parameter
Expand Down
2 changes: 1 addition & 1 deletion core/standard/openapi/oas31/schemas/numberReturned.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ description: |-
A server may omit this information in a response, if the information
about the number of features is not known or difficult to compute.

If the value is provided, the value shall be identical to the number
If the value is provided, the value SHALL be identical to the number
of items in the "features" array.
minimum: 0
examples:
Expand Down
2 changes: 1 addition & 1 deletion core/standard/openapi/oas31/schemas/parameterGroup.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ type: object
description: Represents logical groups of parameters
properties:
type:
description: Type of the parameter group object, shall be "ParameterGroup"
description: Type of the parameter group object, SHALL be "ParameterGroup"
type: string
enum:
- ParameterGroup
Expand Down
Loading
Loading