diff --git a/src/SOL002/VNFIndicator/VNFIndicator.yaml b/src/SOL002/VNFIndicator/VNFIndicator.yaml index 792f499775f7042eb266cf6add6017b77794b3e4..84a5ced4fe0c6f63a2b171aa137cfb98e3e63219 100644 --- a/src/SOL002/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL002/VNFIndicator/VNFIndicator.yaml @@ -130,100 +130,52 @@ paths: of that response. type: string required: true - - name: filter - description: > - Attribute-based filtering expression according to clause 4.3.2. - The VNFM shall support receiving this parameter as part of the URI query string. - The EM/VNF shall support receiving filtering parameters as part of the URI query string. - The VNFM may supply filtering parameters. - All attribute names that appear in the VnfIndicator data type and in data types referenced - from it shall be supported in attribute-based filtering parameters. - - EXAMPLE - objects - obj1: {"id":123, "weight":100, "parts":[{"id":1, "color":"red"}, {"id":2, "color":"green"}]} - obj2: {"id":456, "weight":500, "parts":[{"id":3, "color":"green"}, {"id":4, "color":"blue"}]} - - Request 1: - GET …/container - - Response 1: - [ - {"id":123, "weight":100, "parts":[{"id":1, "color":"red"}, {"id":2, "color":"green"}]}, - {"id":456, "weight":500, "parts":[{"id":3, "color":"green"}, {"id":4, "color":"blue"}]} - ] - - Request 2: - GET …/container?filter=(eq.weight,100) - - Response 2: - [ - {"id":123, "weight":100, "parts":[{"id":1, "color":"red"}, {"id":2, "color":"green"}]} - ] - #Request 2 in EXAMPLE from clause 4.3.2 probably wrong, since "," should be used after opOne (eq), "." is used - in: query - required: false - type: string - - name: nextpage_opaque_marker - description: > - Marker to obtain the next page of a paged response. Shall be supported by the EM/VNF - if the EM/VNF supports alternative 2 (paging) according to clause 4.7.2.1 for this resource. - in: query - required: false - type: string get: summary: Query multiple indicators related to a VNF instance. description: > Get a list of indicators related to a specific VNF instance. Support of attribute based filtering via query parameters. -# parameters: -# - name: id.eq -# in: query -# description: Attribute based filtering for indicator identifer as specified in VNFD. -# type: array -# items: -# type: string -# - name: name.eq -# in: query -# description: Attribute based filtering for indicator name as specified in VNFD. -# type: array -# items: -# type: string -# - name: value.eq -# in: query -# description: Attribute based filtering for indicator value equality. -# type: array -# items: -# type: string -# - name: value.neq -# in: query -# description: Attribute based filtering for indicator value unequality. -# type: array -# items: -# type: string -# - name: value.gt -# in: query -# description: Attribute based filtering for indicator value greater than. -# type: array -# items: -# type: string -# - name: value.gte -# in: query -# description: Attribute based filtering for indicator value greater then or equal. -# type: array -# items: -# type: string -# - name: value.lt -# in: query -# description: Attribute based filtering for indicator value less than. -# type: array -# items: -# type: string -# - name: value.lte -# in: query -# description: Attribute based filtering for indicator value less than or equal. -# type: array -# items: -# type: string + parameters: + - name: filter + description: > + Attribute-based filtering expression according to clause 4.3.2. + The VNFM shall support receiving this parameter as part of the URI query string. + The EM/VNF shall support receiving filtering parameters as part of the URI query string. + The VNFM may supply filtering parameters. + All attribute names that appear in the VnfIndicator data type and in data types referenced + from it shall be supported in attribute-based filtering parameters. + + EXAMPLE + objects + obj1: {"id":123, "weight":100, "parts":[{"id":1, "color":"red"}, {"id":2, "color":"green"}]} + obj2: {"id":456, "weight":500, "parts":[{"id":3, "color":"green"}, {"id":4, "color":"blue"}]} + + Request 1: + GET …/container + + Response 1: + [ + {"id":123, "weight":100, "parts":[{"id":1, "color":"red"}, {"id":2, "color":"green"}]}, + {"id":456, "weight":500, "parts":[{"id":3, "color":"green"}, {"id":4, "color":"blue"}]} + ] + + Request 2: + GET …/container?filter=(eq.weight,100) + + Response 2: + [ + {"id":123, "weight":100, "parts":[{"id":1, "color":"red"}, {"id":2, "color":"green"}]} + ] + #Request 2 in EXAMPLE from clause 4.3.2 probably wrong, since "," should be used after opOne (eq), "." is used + in: query + required: false + type: string + - name: nextpage_opaque_marker + description: > + Marker to obtain the next page of a paged response. Shall be supported by the EM/VNF + if the EM/VNF supports alternative 2 (paging) according to clause 4.7.2.1 for this resource. + in: query + required: false + type: string responses: 200: description: > @@ -379,77 +331,49 @@ paths: The GET method queries the list of active subscriptions of the functional block that invokes the method. It can be used e.g. for resynchronization after error situations. -# parameters: -# - name: id.eq -# in: query -# description: > -# Attribute based filtering for subscription identifiers. -# type: array -# items: -# type: string -# - name: callbackUri.eq -# in: query -# description: > -# Attribute based filtering for the subscription's call back URIs. -# type: array -# items: -# type: string -# - name: filter.indicatorIds.cont -# in: query -# description: > -# Attribute based filtering for indicator identifiers. -# type: array -# items: -# type: string -# - name: filter.vnfInstanceSubscriptionFilter.vnfdIds.cont -# in: query -# description: > -# Attribute based filtering for VNFD identifiers. -# type: array -# items: -# type: string -# - name: filter.vnfInstanceSubscriptionFilter.vnfProductsFromProviders.vnfProvider.eq -# in: query -# description: > -# Attribute based filtering for VNF providers. -# type: array -# items: -# type: string -# - name: filter.vnfInstanceSubscriptionFilter.vnfProductsFromProviders.vnfProducts.vnfProductName.eq -# in: query -# description: > -# Attribute based filtering for VNF product name. -# type: array -# items: -# type: string -# - name: filter.vnfInstanceSubscriptionFilter.vnfProductsFromProviders.vnfProducts.versions.vnfSoftwareVersion.cont -# in: query -# description: > -# Attribute based filtering for VNF software versions. -# type: array -# items: -# type: string -# - name: filter.vnfInstanceSubscriptionFilter.vnfProductsFromProviders.vnfProducts.versions.vnfdVersion.cont -# in: query -# description: > -# Attribute based filtering for VNFD versions. -# type: array -# items: -# type: string -# - name: filter.vnfInstanceSubscriptionFilter.vnfInstanceIds.cont -# in: query -# description: > -# Attribute based filtering for VNF instance identifiers. -# type: array -# items: -# type: string -# - name: filter.vnfInstanceSubscriptionFilter.vnfInstanceNames.cont -# in: query -# description: > -# Attribute based filtering for VNF instance names. -# type: array -# items: -# type: string + parameters: + - name: filter + description: > + Attribute-based filtering expression according to clause 4.3.2. + The EM shall and the VNF may support receiving this parameter as part + of the URI query string. The VNFM may supply this parameter. + All attribute names that appear in the VnfIndicatorSubscription data + type and in data types referenced from it shall be supported in the filter expression. + If receiving, this parameter is not supported, a 400 Bad Request response shall + be returned (see table 8.4.5.3.2-2). + + EXAMPLE + objects + obj1: {"id":123, "weight":100, "parts":[{"id":1, "color":"red"}, {"id":2, "color":"green"}]} + obj2: {"id":456, "weight":500, "parts":[{"id":3, "color":"green"}, {"id":4, "color":"blue"}]} + + Request 1: + GET …/container + + Response 1: + [ + {"id":123, "weight":100, "parts":[{"id":1, "color":"red"}, {"id":2, "color":"green"}]}, + {"id":456, "weight":500, "parts":[{"id":3, "color":"green"}, {"id":4, "color":"blue"}]} + ] + + Request 2: + GET …/container?filter=(eq.weight,100) + + Response 2: + [ + {"id":123, "weight":100, "parts":[{"id":1, "color":"red"}, {"id":2, "color":"green"}]} + ] + #Request 2 in EXAMPLE from clause 4.3.2 probably wrong, since "," should be used after opOne (eq), "." is used + in: query + required: false + type: string + - name: nextpage_opaque_marker + description: > + Marker to obtain the next page of a paged response. Shall be supported by the EM + if the EM supports alternative 2 (paging) according to clause 4.7.2.1 for this resource. + in: query + required: false + type: string responses: 200: description: >