From 996c8e1042d3145f06f5575dcce37808db52d8bb Mon Sep 17 00:00:00 2001 From: Alex Robin Date: Wed, 12 Jun 2024 12:11:05 +0200 Subject: [PATCH] [API Part2] Completed advanced filtering section --- .../parameters/controlStreamIdList.yaml | 10 - .../openapi/parameters/dataStreamIdList.yaml | 10 - api/part2/openapi/parameters/eventTime.yaml | 4 +- .../openapi/parameters/eventTypeList.yaml | 12 + api/part2/openapi/parameters/senderList.yaml | 12 + .../openapi/parameters/statusCodeList.yaml | 13 + api/part2/openapi/paths/commandStatus.yaml | 2 +- api/part2/openapi/paths/commands.yaml | 2 + .../openapi/paths/controlStreamCommands.yaml | 2 + api/part2/openapi/paths/systemEvents.yaml | 2 + api/part2/openapi/paths/systemEventsAll.yaml | 2 + api/part2/standard/23-002r0.adoc | 2 +- .../systemevent/req_resources_endpoint.adoc | 2 +- ...requirements_class_advanced_filtering.adoc | 263 +++++++++++++++++- 14 files changed, 302 insertions(+), 36 deletions(-) delete mode 100644 api/part2/openapi/parameters/controlStreamIdList.yaml delete mode 100644 api/part2/openapi/parameters/dataStreamIdList.yaml create mode 100644 api/part2/openapi/parameters/eventTypeList.yaml create mode 100644 api/part2/openapi/parameters/senderList.yaml create mode 100644 api/part2/openapi/parameters/statusCodeList.yaml diff --git a/api/part2/openapi/parameters/controlStreamIdList.yaml b/api/part2/openapi/parameters/controlStreamIdList.yaml deleted file mode 100644 index 7554c71e..00000000 --- a/api/part2/openapi/parameters/controlStreamIdList.yaml +++ /dev/null @@ -1,10 +0,0 @@ - -name: control -description: |- - List of control stream local IDs or unique IDs (URI). - Only commands that are part of a control stream that has one of the provided identifiers are selected. -in: query -required: false -schema: - $ref: idListSchema.yaml -explode: false \ No newline at end of file diff --git a/api/part2/openapi/parameters/dataStreamIdList.yaml b/api/part2/openapi/parameters/dataStreamIdList.yaml deleted file mode 100644 index c722f1d0..00000000 --- a/api/part2/openapi/parameters/dataStreamIdList.yaml +++ /dev/null @@ -1,10 +0,0 @@ - -name: datastream -description: |- - List of datastream local IDs or unique IDs (URI). - Only observations that are part of a datastream that has one of the provided identifiers are selected. -in: query -required: false -schema: - $ref: idListSchema.yaml -explode: false \ No newline at end of file diff --git a/api/part2/openapi/parameters/eventTime.yaml b/api/part2/openapi/parameters/eventTime.yaml index 2ecfd4e8..e96a33f6 100644 --- a/api/part2/openapi/parameters/eventTime.yaml +++ b/api/part2/openapi/parameters/eventTime.yaml @@ -1,11 +1,11 @@ -name: eventTime +name: datetime in: query description: |- Either a date-time or an interval. Date and time expressions adhere to RFC 3339. Intervals may be bounded or half-bounded (double-dots at start or end). Only resources with a `time` property that intersects the value of the - `eventTime` parameter are selected. + `datetime` parameter are selected. required: false schema: $ref: ../../../part1/openapi/parameters/datetimeSchema.yaml diff --git a/api/part2/openapi/parameters/eventTypeList.yaml b/api/part2/openapi/parameters/eventTypeList.yaml new file mode 100644 index 00000000..4b6935d1 --- /dev/null +++ b/api/part2/openapi/parameters/eventTypeList.yaml @@ -0,0 +1,12 @@ +name: eventType +description: |- + List of event types. + Only event resources with a type that matches one of the provided types are selected. +in: query +required: false +schema: + type: array + minItems: 1 + items: + type: string +explode: false \ No newline at end of file diff --git a/api/part2/openapi/parameters/senderList.yaml b/api/part2/openapi/parameters/senderList.yaml new file mode 100644 index 00000000..3070c903 --- /dev/null +++ b/api/part2/openapi/parameters/senderList.yaml @@ -0,0 +1,12 @@ +name: sender +description: |- + List of sender IDs. + Only command resources issued by one of the specified senders are selected. +in: query +required: false +schema: + type: array + minItems: 1 + items: + type: string +explode: false \ No newline at end of file diff --git a/api/part2/openapi/parameters/statusCodeList.yaml b/api/part2/openapi/parameters/statusCodeList.yaml new file mode 100644 index 00000000..71e4aac9 --- /dev/null +++ b/api/part2/openapi/parameters/statusCodeList.yaml @@ -0,0 +1,13 @@ +name: statusCode +description: |- + List of command status codes. + Only command resources whose current status matches one of the provided status codes are selected. +in: query +required: false +schema: + type: array + minItems: 1 + items: + type: string + enum: ["PENDING", "ACCEPTED", "REJECTED", "SCHEDULED", "UPDATED", "CANCELED", "EXECUTING", "FAILED", "COMPLETED"] +explode: false \ No newline at end of file diff --git a/api/part2/openapi/paths/commandStatus.yaml b/api/part2/openapi/paths/commandStatus.yaml index 6a0d5bc6..a04485d3 100644 --- a/api/part2/openapi/paths/commandStatus.yaml +++ b/api/part2/openapi/paths/commandStatus.yaml @@ -10,7 +10,7 @@ get: parameters: - $ref: ../../../part1/openapi/parameters/idList.yaml - $ref: ../parameters/reportTime.yaml - - $ref: ../parameters/executionTime.yaml + - $ref: ../parameters/statusCodeList.yaml #- $ref: '#/components/parameters/select' - $ref: ../../../part1/openapi/parameters/limit.yaml responses: diff --git a/api/part2/openapi/paths/commands.yaml b/api/part2/openapi/paths/commands.yaml index 7240637d..5c348915 100644 --- a/api/part2/openapi/paths/commands.yaml +++ b/api/part2/openapi/paths/commands.yaml @@ -8,6 +8,8 @@ get: - $ref: ../../../part1/openapi/parameters/idList.yaml - $ref: ../parameters/issueTime.yaml - $ref: ../parameters/executionTime.yaml + - $ref: ../parameters/statusCodeList.yaml + - $ref: ../parameters/senderList.yaml - $ref: ../../../part1/openapi/parameters/controlStreamIdList.yaml - $ref: ../../../part1/openapi/parameters/systemIdList.yaml - $ref: ../../../part1/openapi/parameters/foiIdList.yaml diff --git a/api/part2/openapi/paths/controlStreamCommands.yaml b/api/part2/openapi/paths/controlStreamCommands.yaml index 626f08e8..51aec88e 100644 --- a/api/part2/openapi/paths/controlStreamCommands.yaml +++ b/api/part2/openapi/paths/controlStreamCommands.yaml @@ -11,6 +11,8 @@ get: - $ref: ../../../part1/openapi/parameters/idList.yaml - $ref: ../parameters/issueTime.yaml - $ref: ../parameters/executionTime.yaml + - $ref: ../parameters/statusCodeList.yaml + - $ref: ../parameters/senderList.yaml - $ref: ../../../part1/openapi/parameters/foiIdList.yaml - $ref: ../../../part1/openapi/parameters/controlPropIdList.yaml #- $ref: '#/components/parameters/select' diff --git a/api/part2/openapi/paths/systemEvents.yaml b/api/part2/openapi/paths/systemEvents.yaml index d5019049..7d8b7614 100644 --- a/api/part2/openapi/paths/systemEvents.yaml +++ b/api/part2/openapi/paths/systemEvents.yaml @@ -9,7 +9,9 @@ get: - System Events parameters: - $ref: ../parameters/eventTime.yaml + - $ref: ../parameters/eventTypeList.yaml - $ref: ../../../part1/openapi/parameters/keyword.yaml + - $ref: ../../../part1/openapi/parameters/systemIdList.yaml #- $ref: '#/components/parameters/select' - $ref: ../../../part1/openapi/parameters/limit.yaml responses: diff --git a/api/part2/openapi/paths/systemEventsAll.yaml b/api/part2/openapi/paths/systemEventsAll.yaml index 473ace73..c5761116 100644 --- a/api/part2/openapi/paths/systemEventsAll.yaml +++ b/api/part2/openapi/paths/systemEventsAll.yaml @@ -6,7 +6,9 @@ get: - System Events parameters: - $ref: ../parameters/eventTime.yaml + - $ref: ../parameters/eventTypeList.yaml - $ref: ../../../part1/openapi/parameters/keyword.yaml + - $ref: ../../../part1/openapi/parameters/systemIdList.yaml #- $ref: '#/components/parameters/select' - $ref: ../../../part1/openapi/parameters/limit.yaml responses: diff --git a/api/part2/standard/23-002r0.adoc b/api/part2/standard/23-002r0.adoc index 376f0a78..feda8ad2 100644 --- a/api/part2/standard/23-002r0.adoc +++ b/api/part2/standard/23-002r0.adoc @@ -38,7 +38,7 @@ :systemevent-resources-endpoint: <> // :jsonschema-base-url: https://raw.githubusercontent.com/opengeospatial/connected-systems/master/api/part2/openapi/schemas - +:filter-idlist-schema: link:https://docs.ogc.org/DRAFTS/23-001r0.html#filter-idlist-schema[ID_List] //// Make sure to complete each included document diff --git a/api/part2/standard/requirements/systemevent/req_resources_endpoint.adoc b/api/part2/standard/requirements/systemevent/req_resources_endpoint.adoc index 023c8d23..4a68c65f 100644 --- a/api/part2/standard/requirements/systemevent/req_resources_endpoint.adoc +++ b/api/part2/standard/requirements/systemevent/req_resources_endpoint.adoc @@ -5,7 +5,7 @@ identifier:: /req/system-event/resources-endpoint part:: The server SHALL support the HTTP GET operation at the path associated to the `SystemEvent` resources endpoint. -part:: The operation SHALL support the parameters `limit` and `datetime` defined in https://docs.ogc.org/is/17-069r4/17-069r4.html#_parameter_limit[Clause 7.15.2] of {ogcapi-features-1}. All references to the term “features” or “feature” in {ogcapi-features-1} requirements SHALL be replaced by the terms “resources” or “resource”, respectively. +part:: The operation SHALL support the parameters `limit` and `datetime` defined in https://docs.ogc.org/is/17-069r4/17-069r4.html#_parameter_limit[Clause 7.15.2] and https://docs.ogc.org/is/17-069r4/17-069r4.html#_parameter_datetime[Clause 7.15.4] of {ogcapi-features-1}. All references to the term “features” or “feature” in {ogcapi-features-1} requirements SHALL be replaced by the terms “resources” or “resource”, respectively. part:: A successful execution of the operation SHALL be reported as a response with a HTTP status code 200. The response SHALL only include the <> selected by the request. diff --git a/api/part2/standard/sections/clause_14_requirements_class_advanced_filtering.adoc b/api/part2/standard/sections/clause_14_requirements_class_advanced_filtering.adoc index df4c8b6b..bc72b1d5 100644 --- a/api/part2/standard/sections/clause_14_requirements_class_advanced_filtering.adoc +++ b/api/part2/standard/sections/clause_14_requirements_class_advanced_filtering.adoc @@ -8,9 +8,8 @@ include::../requirements/query/requirements_class_advanced_filtering.adoc[] This requirements class specifies additional filtering options that may be used to select only a subset of the resources in a collection. -All filters defined in this section are implemented using URL query parameters and can be used in addition to the ones defined in other requirements classes. +All filters defined in this section are implemented using URL query parameters and are used in addition to the ones defined in other requirements classes. In particular, all parameters defined in https://docs.ogc.org/DRAFTS/23-001r0.html#_common_resource_query_parameters[Clause 16.3] of {ogcapi-cs-1} shall also be supported on all resource types. -#TODO# [[clause-datastream-query-params]] @@ -20,12 +19,66 @@ The following query parameters are used to filter `DataStream` resources at a {d ==== Phenomenon Time Filter +This filter is used to select datastreams based on their `phenomenonTime` extent. + +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/datastream-by-phenomenontime + +part:: The HTTP GET operation at an {datastream-resources-endpoint} SHALL support a parameter `phenomenonTime`. + +part:: The parameter SHALL fulfill the same requirements as the parameter `datetime` defined in https://docs.ogc.org/is/17-069r4/17-069r4.html#_parameter_datetime[Clause 7.15.4] of {ogcapi-features-1}. All references to the term “features” or “feature” in these requirements SHALL be replaced by the terms “resources” or “resource”, respectively. + +part:: Only the `phenomenonTime` property of `DataStream` resources SHALL be used to determine the temporal extent evaluated against the parameter. +==== + ==== Result Time Filter +This filter is used to select datastreams based on their `resultTime` extent. + +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/datastream-by-resulttime + +part:: The HTTP GET operation at an {datastream-resources-endpoint} SHALL support a parameter `resultTime`. + +part:: The parameter SHALL fulfill the same requirements as the parameter `datetime` defined in https://docs.ogc.org/is/17-069r4/17-069r4.html#_parameter_datetime[Clause 7.15.4] of {ogcapi-features-1}. All references to the term “features” or “feature” in these requirements SHALL be replaced by the terms “resources” or “resource”, respectively. + +part:: Only the `resultTime` property of `DataStream` resources SHALL be used to determine the temporal extent evaluated against the parameter. +==== + ==== Observed Property Filter +This filter is used to select datastreams that include specific observable properties. + +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/datastream-by-obsprop + +part:: The HTTP GET operation at a {datastream-resources-endpoint} SHALL support a parameter `observedProperty` of type {filter-idlist-schema}. + +part:: Only datastreams that include an observed property that has one of the requested identifiers SHALL be part of the result set. +==== + ==== Feature of Interest Filter +This filter is used to select datastreams that are associated to specific sampling features or (ultimate) features of interest. + +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/datastream-by-foi + +part:: The HTTP GET operation at an {datastream-resources-endpoint} SHALL support a parameter `foi` of type {filter-idlist-schema}. + +part:: Only `DataStream` resources that are associated to a feature of interest that has one of the requested identifiers SHALL be part of the result set. + +part:: Both sampling features and domain features of interest SHALL be included in the search. +==== + [[clause-observation-query-params]] @@ -40,11 +93,11 @@ This filter is used to select observations based on their `phenomenonTime` prope [requirement,model=ogc] ==== [%metadata] -identifier:: /req/datastream/obs-by-phenomenontime +identifier:: /req/advanced-filtering/obs-by-phenomenontime part:: The HTTP GET operation at an {observation-resources-endpoint} SHALL support a parameter `phenomenonTime`. -part:: The parameter SHALL fulfill the same requirements as the parameter `datetime` defined in https://docs.ogc.org/is/17-069r4/17-069r4.html#_parameter_limit[Clause 7.15.4] of {ogcapi-features-1}. All references to the term “features” or “feature” in these requirements SHALL be replaced by the terms “resources” or “resource”, respectively. +part:: The parameter SHALL fulfill the same requirements as the parameter `datetime` defined in https://docs.ogc.org/is/17-069r4/17-069r4.html#_parameter_datetime[Clause 7.15.4] of {ogcapi-features-1}. All references to the term “features” or “feature” in these requirements SHALL be replaced by the terms “resources” or “resource”, respectively. part:: Only the `phenomenonTime` property of `Observation` resources SHALL be used to determine the temporal extent evaluated against the parameter. ==== @@ -67,11 +120,11 @@ This filter is used to select observations based on their `resultTime` property. [requirement,model=ogc] ==== [%metadata] -identifier:: /req/datastream/obs-by-resulttime +identifier:: /req/advanced-filtering/obs-by-resulttime part:: The HTTP GET operation at an {observation-resources-endpoint} SHALL support a parameter `resultTime`. -part:: The parameter SHALL fulfill the same requirements as the parameter `datetime` defined in https://docs.ogc.org/is/17-069r4/17-069r4.html#_parameter_limit[Clause 7.15.4] of {ogcapi-features-1}. All references to the term “features” or “feature” in these requirements SHALL be replaced by the terms “resources” or “resource”, respectively. +part:: The parameter SHALL fulfill the same requirements as the parameter `datetime` defined in https://docs.ogc.org/is/17-069r4/17-069r4.html#_parameter_datetime[Clause 7.15.4] of {ogcapi-features-1}. All references to the term “features” or “feature” in these requirements SHALL be replaced by the terms “resources” or “resource”, respectively. part:: Only the `resultTime` property of `Observation` resources SHALL be used to determine the temporal extent evaluated against the parameter. @@ -91,6 +144,20 @@ part:: In addition to the possible parameter values defined in {ogcapi-features- ==== Feature of Interest Filter +This filter is used to select observations that are associated to specific sampling features or ultimate features of interests. + +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/obs-by-foi + +part:: The HTTP GET operation at an {observation-resources-endpoint} SHALL support a parameter `foi` of type {filter-idlist-schema}. + +part:: Only `Observation` resources that are associated to a feature of interest that has one of the requested identifiers SHALL be part of the result set. + +part:: Both sampling features and domain features of interest SHALL be included in the search. +==== + [[clause-controlstream-query-params]] @@ -100,12 +167,66 @@ The following query parameters are used to filter `ControlStream` resources at a ==== Issue Time Filter +This filter is used to select control streams based on their `issueTime` extent. + +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/commandstream-by-issuetime + +part:: The HTTP GET operation at an {commandstream-resources-endpoint} SHALL support a parameter `issueTime`. + +part:: The parameter SHALL fulfill the same requirements as the parameter `datetime` defined in https://docs.ogc.org/is/17-069r4/17-069r4.html#_parameter_datetime[Clause 7.15.4] of {ogcapi-features-1}. All references to the term “features” or “feature” in these requirements SHALL be replaced by the terms “resources” or “resource”, respectively. + +part:: Only the `issueTime` property of `CommandStream` resources SHALL be used to determine the temporal extent evaluated against the parameter. +==== + ==== Execution Time Filter +This filter is used to select control streams based on their `executionTime` extent. + +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/commandstream-by-exectime + +part:: The HTTP GET operation at an {commandstream-resources-endpoint} SHALL support a parameter `executionTime`. + +part:: The parameter SHALL fulfill the same requirements as the parameter `datetime` defined in https://docs.ogc.org/is/17-069r4/17-069r4.html#_parameter_datetime[Clause 7.15.4] of {ogcapi-features-1}. All references to the term “features” or “feature” in these requirements SHALL be replaced by the terms “resources” or “resource”, respectively. + +part:: Only the `executionTime` property of `CommandStream` resources SHALL be used to determine the temporal extent evaluated against the parameter. +==== + ==== Controlled Property Filter +This filter is used to select control streams that include specific controllable properties. + +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/controlstream-by-obsprop + +part:: The HTTP GET operation at a {controlstream-resources-endpoint} SHALL support a parameter `controlledProperty` of type {filter-idlist-schema}. + +part:: Only control streams that include a controlled property that has one of the requested identifiers SHALL be part of the result set. +==== + ==== Feature of Interest Filter +This filter is used to select control streams that are associated to specific sampling features or (ultimate) features of interest. + +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/commandstream-by-foi + +part:: The HTTP GET operation at an {commandstream-resources-endpoint} SHALL support a parameter `foi` of type {filter-idlist-schema}. + +part:: Only `CommandStream` resources that are associated to a feature of interest that has one of the requested identifiers SHALL be part of the result set. + +part:: Both sampling features and domain features of interest SHALL be included in the search. +==== + [[clause-command-query-params]] @@ -115,14 +236,98 @@ The following query parameters are used to filter `Command` resources at a {comm ==== Issue Time Filter +This filter is used to select commands based on their `issueTime` property. + +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/cmd-by-issuetime + +part:: The HTTP GET operation at an {command-resources-endpoint} SHALL support a parameter `issueTime`. + +part:: The parameter SHALL fulfill the same requirements as the parameter `datetime` defined in https://docs.ogc.org/is/17-069r4/17-069r4.html#_parameter_datetime[Clause 7.15.4] of {ogcapi-features-1}. All references to the term “features” or “feature” in these requirements SHALL be replaced by the terms “resources” or “resource”, respectively. + +part:: Only the `issueTime` property of `Command` resources SHALL be used to determine the temporal extent evaluated against the parameter. +==== + ==== Execution Time Filter -==== Sender Filter +This filter is used to select commands based on their `executionTime` property. + +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/cmd-by-exectime + +part:: The HTTP GET operation at an {command-resources-endpoint} SHALL support a parameter `executionTime`. + +part:: The parameter SHALL fulfill the same requirements as the parameter `datetime` defined in https://docs.ogc.org/is/17-069r4/17-069r4.html#_parameter_datetime[Clause 7.15.4] of {ogcapi-features-1}. All references to the term “features” or “feature” in these requirements SHALL be replaced by the terms “resources” or “resource”, respectively. + +part:: Only the `executionTime` property of `Command` resources SHALL be used to determine the temporal extent evaluated against the parameter. +==== ==== Status Filter +This filter is used to select commands based on their `statusCode` property. + +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/cmd-by-status + +[.component,class=part] +-- +The HTTP GET operation at an {command-resources-endpoint} SHALL support a parameter `statusCode` with the following characteristics (using an OpenAPI 3.0 fragment): + +```yaml +include::../openapi/parameters/statusCodeList.yaml[] +``` +-- + +[.component,class=part] +-- +Only `Command` resources whose current status matches one of the specified status codes SHALL be part of the result set. +-- +==== + +==== Sender Filter + +This filter is used to select commands issued by a specific sender. + +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/cmd-by-sender + +[.component,class=part] +-- +The HTTP GET operation at an {command-resources-endpoint} SHALL support a parameter `sender` with the following characteristics (using an OpenAPI 3.0 fragment): + +```yaml +include::../openapi/parameters/senderList.yaml[] +``` +-- + +[.component,class=part] +-- +Only `Command` resources issued by one of the specified senders SHALL be part of the result set. +-- +==== + ==== Feature of Interest Filter +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/cmd-by-foi + +part:: The HTTP GET operation at an {command-resources-endpoint} SHALL support a parameter `foi` of type {filter-idlist-schema}. + +part:: Only `Command` resources that are associated to a feature of interest that has one of the requested identifiers SHALL be part of the result set. + +part:: Both sampling features and domain features of interest SHALL be included in the search. +==== + [[clause-commandstatus-query-params]] @@ -130,9 +335,27 @@ The following query parameters are used to filter `Command` resources at a {comm The following query parameters are used to filter `CommandStatus` resources at a {commandstatus-resources-endpoint}. -==== Report Time Filter +==== StatusCode Filter -==== Status Filter +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/status-by-statuscode + +[.component,class=part] +-- +The HTTP GET operation at an {commandstatus-resources-endpoint} SHALL support a parameter `statusCode` with the following characteristics (using an OpenAPI 3.0 fragment): + +```yaml +include::../openapi/parameters/statusCodeList.yaml[] +``` +-- + +[.component,class=part] +-- +Only `CommandStatus` resources with a status that matches one of the specified status codes SHALL be part of the result set. +-- +==== @@ -141,6 +364,24 @@ The following query parameters are used to filter `CommandStatus` resources at a The following query parameters are used to filter `SystemEvent` resources at a {systemevent-resources-endpoint}. -==== Event Time Filter +==== Event Type Filter -==== Event Type Filter \ No newline at end of file +[requirement,model=ogc] +==== +[%metadata] +identifier:: /req/advanced-filtering/event-by-type + +[.component,class=part] +-- +The HTTP GET operation at an {systemevent-resources-endpoint} SHALL support a parameter `eventType` with the following characteristics (using an OpenAPI 3.0 fragment): + +```yaml +include::../openapi/parameters/eventTypeList.yaml[] +``` +-- + +[.component,class=part] +-- +Only `SystemEvent` resources with a type that matches one of the specified types SHALL be part of the result set. +-- +==== \ No newline at end of file