Skip to content

Commit 393efee

Browse files
authored
Merge pull request #635 from opengeospatial/multiple_locations-update
Multiple locations update
2 parents 92ce962 + ac7330d commit 393efee

File tree

11 files changed

+57
-9
lines changed

11 files changed

+57
-9
lines changed

core/standard/abstract_tests/ATS_class_collections.adoc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ conformance-test:: /conf/edr/rc-common-variables
2020
conformance-test:: /conf/edr/rc-radius-variables
2121
conformance-test:: /conf/edr/rc-cube-variables
2222
conformance-test:: /conf/edr/rc-corridor-variables
23+
conformance-test:: /conf/edr/rc-locations-variables
2324
conformance-test:: /conf/edr/rc-items-variables
2425
conformance-test:: /conf/edr/rc-md-query-links
2526
conformance-test:: /conf/core/rc-collection-info-links
@@ -84,6 +85,8 @@ include::collections/ATS_rc-cube-variables.adoc[]
8485

8586
include::collections/ATS_rc-corridor-variables.adoc[]
8687

88+
include::collections/ATS_rc-locations-variables.adoc[]
89+
8790
include::collections/ATS_rc-items-variables.adoc[]
8891

8992
include::collections/ATS_rc-md-query-links.adoc[]
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
[[ats_edr_rc-locations-variables]]
2+
[abstract_test]
3+
====
4+
[%metadata]
5+
identifier:: /conf/edr/rc-locations-variables
6+
target:: /req/edr/rc-locations-variables
7+
test-purpose:: Validate `variables` property for a query data type in the `data_queries` section in the collection is correctly defined.
8+
test-method::
9+
step::: Verify that the `variables` property complies with <<ats_edr_rc-common-variables,/req/edr/rc-common-variables>>
10+
step::: Verify that if the `variables` property has a `multiple_locations` property it is a boolean value of *true* or *false*
11+
====

core/standard/openapi/oas30/parameters/queries/locationId.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,6 @@ in: path
33
required: true
44
description: Comma delimited list of location identifiers (i.e. EGLL or EGLL,YBBN,CYOW or London,Brisbane)
55
schema:
6-
type: string
6+
type: string
7+
style: simple
8+
explode: false

core/standard/openapi/oas30/schemas/collections/locationsDataQuery.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,4 @@ properties:
77
enum:
88
- locations
99
example: locations
10+

core/standard/openapi/oas31/parameters/queries/locationId.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,6 @@ in: path
33
required: true
44
description: Comma delimited list of location identifiers (i.e. EGLL or EGLL,YBBN,CYOW or London,Brisbane)
55
schema:
6-
type: string
6+
type: string
7+
style: simple
8+
explode: false

core/standard/openapi/oas31/schemas/collections/locationsDataQuery.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@ properties:
77
enum:
88
- locations
99
examples:
10-
- locations
10+
- locations

core/standard/requirements/edr/REQ_rc-common-query-type.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,6 @@ A `link` property of a `<<col-data_queries,data_queries>>` object SHALL include
3434
. if the attribute `type` has the value `trajectory`, the `variables` property SHALL comply with <<ats_edr_rc-common-variables,/req/edr/rc-common-variables>>
3535
. if the attribute `type` has the value `corridor`, the `variables` property SHALL comply with <<ats_edr_rc-corridor-variables,/req/edr/rc-corridor-variables>>
3636
. if the attribute `type` has the value `items`, the `variables` property SHALL complys with <<ats_edr_rc-items-variables,/req/edr/rc-items-variables>>
37-
. if the attribute `type` has the value `locations`, the `variables` property SHALL comply with <<ats_edr_rc-common-variables,/req/edr/rc-common-variables>>
37+
. if the attribute `type` has the value `locations`, the `variables` property SHALL comply with <<ats_edr_rc-locations-variables,/req/edr/rc-locations-variables>>
3838
3939
====

core/standard/requirements/edr/REQ_rc-locationid-response.adoc

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,16 @@
77
identifier:: /req/edr/REQ_rc-locationid-response
88
99
*A:*
10-
If the `locationId` parameter is provided only data for locations matching the requested identifers SHOULD be returned.
10+
11+
If the collection supports <<req_edr_rc-locations-variables,multiple locations>> the `locationId` parameter SHALL be a *comma delimited* string. Each delimited value representing a unique location.
1112
1213
---
14+
1315
*B:*
16+
If the `locationId` parameter is provided only data for locations matching the requested identifers SHOULD be returned.
17+
18+
---
19+
*C:*
1420
If there is no data available for the requested location identifiers a HTTP 204 response SHOULD be returned
1521
1622
====
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
[[req_edr_rc-locations-variables]]
2+
3+
[requirement]
4+
====
5+
[%metadata]
6+
identifier:: /req/edr/rc-locations-variables
7+
8+
*A:*
9+
10+
A locations `data_queries` object `variables` property SHALL comply with the requirement `/req/edr/rc-variables-common`.
11+
12+
---
13+
*B:*
14+
15+
A locations `data_queries` object `variables` property MAY include a `multiple_locations` property which SHALL be a boolean value (true/false).
16+
17+
---
18+
*C:*
19+
20+
If the `variables` property of a `data_queries` object does not include a `multiple_locations` property, the client SHALL assume that the server does not support requests for multiple locations.
21+
====

core/standard/requirements/edr/query_type/locations.adoc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ The filter constraints are defined by the following query parameters:
77
|====
88
|Path Parameter| Type | Required|Description|Examples
99
a| **locationId**| String|No| Unique identifier(s) for the required location(s), such as a https://en.wikipedia.org/wiki/Geohash[GeoHash], a World Meteorological Organization (WMO) station identifier or place name. a| * `EGLL`
10-
* `Ottawa`
11-
* `limit.broom.flip`
12-
* `gbsvn`
13-
* `London,Paris,Washington`
10+
* `Ottawa` (single location id)
11+
* `limit.broom.flip` (what three words)
12+
* `gbsvn` (geohash)
13+
* `London,Paris,Washington` (delimited list of location ids)
1414
|====
1515

1616
[cols="2,1,1,2,3"]

0 commit comments

Comments
 (0)