Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
MEC - Multi-access Edge Computing
MEC Robot Test Suite
Commits
31208d0c
Commit
31208d0c
authored
Dec 24, 2019
by
Elian Kraja
Browse files
Fixies after MEC013 tests
parent
22f68efa
Pipeline
#2197
passed with stage
in 0 seconds
Changes
14
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
GenericKeywords.robot
View file @
31208d0c
...
...
@@ -15,7 +15,6 @@ Check HTTP Response Status Code Is
Log
Status code validated
Check HTTP Response Body Json Schema Is
[
Tags
]
INCLUDE_UNDEFINED_SCHEMAS
[
Arguments
]
${input}
Should Contain
${response['headers']['Content-Type']}
application/json
${schema}
=
Catenate
SEPARATOR=
${input}
.schema.json
...
...
SRV/RLOCLOOK/PlatRadioNodeLocation.robot
View file @
31208d0c
...
...
@@ -21,7 +21,7 @@ TC_MEC_SRV_RLOCLOOK_001_OK
...
Reference
ETSI GS MEC 013 V2.1.1, clause 7.3.7
...
OpenAPI
https://forge.etsi.org/gitlab/mec/gs013-location-api/blob/master/LocationAPI.yaml#/definitions/AccessPointList
[
Tags
]
PIC_MEC_PLAT
PIC_SERVICES
[
Tags
]
PIC_MEC_PLAT
PIC_SERVICES
INCLUDE_UNDEFINED_SCHEMAS
Get the access points list
${ZONE_ID}
Check HTTP Response Status Code Is
200
Check HTTP Response Body Json Schema Is
AccessPointList
...
...
@@ -48,3 +48,7 @@ Get the access points list
Get
${apiRoot}
/
${apiName}
/
${apiVersion}
/zones/
${zoneId}
/accessPoints
${output}
=
Output
response
Set Suite Variable
${response}
${output}
SRV/RLOCLOOK/schemas/AccessPointList.schema.json
View file @
31208d0c
...
...
@@ -8,4 +8,4 @@
"required"
:
[
"undefinedJsonSchema"
]
}
\ No newline at end of file
}
SRV/UEAREASUB/PlatUeAreaSubscription.robot
View file @
31208d0c
...
...
@@ -13,7 +13,6 @@ Default Tags TC_MEC_SRV_UEAREASUB
*** Test Cases ***
TC_MEC_SRV_UEAREASUB_001_OK
[
Documentation
]
...
Check that the IUT acknowledges the UE area change subscription request when
...
...
@@ -22,7 +21,7 @@ TC_MEC_SRV_UEAREASUB_001_OK
...
Reference
ETSI GS MEC 013 V2.1.1, clause 7.3.11
...
OpenAPI
# TODO check this
[
Tags
]
PIC_MEC_PLAT
PIC_SERVICES
[
Tags
]
PIC_MEC_PLAT
PIC_SERVICES
INCLUDE_UNDEFINED_SCHEMAS
Create new subscription
CircleNotificationSubscription
Check HTTP Response Status Code Is
201
Check HTTP Response Body Json Schema Is
CircleNotificationSubscription
...
...
@@ -85,4 +84,4 @@ Remove subscription
Set Headers
{"Authorization":"
${TOKEN}
"}
Delete
${apiRoot}
/
${apiName}
/
${apiVersion}
/subscriptions/area/circle/
${subscriptionId}
${output}
=
Output
response
Set Suite Variable
${response}
${output}
\ No newline at end of file
Set Suite Variable
${response}
${output}
SRV/UEDISTLOOK/PlatUeDistanceLookup.robot
View file @
31208d0c
...
...
@@ -11,6 +11,9 @@ Library OperatingSystem
Default Tags
TC_MEC_SRV_UEDISTLOOK
*** Variables ***
${response}
*** Test Cases ***
...
...
@@ -22,10 +25,12 @@ TC_MEC_SRV_UEDISTLOOK_001_OK
...
Reference
ETSI GS MEC 013 V2.1.1, clause 7.3.9
...
OpenAPI
# TODO check this
[
Tags
]
PIC_MEC_PLAT
PIC_SERVICES
[
Tags
]
PIC_MEC_PLAT
PIC_SERVICES
INCLUDE_UNDEFINED_SCHEMAS
Set Headers
{"Accept":"application/json"}
Set Headers
{"Authorization":"
${TOKEN}
"}
Get
${apiRoot}
/
${apiName}
/
${apiVersion}
/queries/distance?address=
${LOC_QRY_UE_ADDRESS}
&latitude=
${LOC_QRY_UE_LAT}
&longitude=
${LOC_QRY_UE_LONG}
${output}
=
Output
response
Set Suite Variable
${response}
${output}
Check HTTP Response Status Code Is
200
Check HTTP Response Body Json Schema Is
TerminalDistance
...
...
@@ -41,4 +46,6 @@ TC_MEC_SRV_UEDISTLOOK_001_BR
Set Headers
{"Accept":"application/json"}
Set Headers
{"Authorization":"
${TOKEN}
"}
Get
${apiRoot}
/
${apiName}
/
${apiVersion}
/queries/distance?address=
${LOC_QRY_UE_ADDRESS}
&lat=
${LOC_QRY_UE_LAT}
&longitude=
${LOC_QRY_UE_LONG}
${output}
=
Output
response
Set Suite Variable
${response}
${output}
Check HTTP Response Status Code Is
400
SRV/UEINFOLOOK/PlatUeInformationLookup.robot
View file @
31208d0c
...
...
@@ -21,7 +21,7 @@ TC_MEC_SRV_UEINFOLOOK_001_OK
...
Reference
ETSI GS MEC 013 V2.1.1, clause 7.3.3
...
OpenAPI
https://forge.etsi.org/gitlab/mec/gs013-location-api/blob/master/LocationAPI.yaml#/definitions/UserList
[
Tags
]
PIC_MEC_PLAT
PIC_SERVICES
[
Tags
]
PIC_MEC_PLAT
PIC_SERVICES
INCLUDE_UNDEFINED_SCHEMAS
Get list of users with filter
address
${ACR_ADDRESS}
Check HTTP Response Status Code Is
200
Check HTTP Response Body Json Schema Is
UserList
...
...
SRV/UEINFOLOOK/schemas/UserList.schema.json
View file @
31208d0c
{
"type"
:
"object"
,
"properties"
:
{
"userList"
:
{
"description"
:
"A type containing list of users."
,
"type"
:
"object"
,
"required"
:
[
...
...
@@ -62,7 +65,7 @@
"type"
:
"number"
},
"latitude"
:
{
"description"
:
"Location latitude, expressed in the range -90 to +90. Cardinality greater than one only if
\"
shape
\"
equals 7."
,
"description"
:
"Location latitude, expressed in the range -90
°
to +90°
.
Cardinality greater than one only if
\"
shape
\"
equals 7."
,
"items"
:
{
"type"
:
"number"
},
...
...
@@ -71,7 +74,7 @@
"x-etsi-mec-origin-type"
:
"Float"
},
"longitude"
:
{
"description"
:
"Location longitude, expressed in the range -180 to +180. Cardinality greater than one only if
\"
shape
\"
equals 7."
,
"description"
:
"Location longitude, expressed in the range -180
°
to +180°
.
Cardinality greater than one only if
\"
shape
\"
equals 7."
,
"items"
:
{
"type"
:
"number"
},
...
...
@@ -104,7 +107,7 @@
"type"
:
"number"
},
"velocity"
:
{
"description"
:
"Structure with attributes relating to the target entity
s
velocity, as defined in [14]."
,
"description"
:
"Structure with attributes relating to the target entity
’s
velocity, as defined in [14]."
,
"type"
:
"object"
,
"x-etsi-mec-cardinality"
:
"0..1"
,
"x-etsi-mec-origin-type"
:
"Structure (inlined)"
...
...
@@ -166,4 +169,6 @@
"example"
:
"http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123"
}
}
}
\ No newline at end of file
}
}
}
SRV/UEINFOSUB/PlatUeInformationSubscription.robot
View file @
31208d0c
...
...
@@ -25,8 +25,9 @@ TC_MEC_SRV_UEINFOSUB_001_OK
Create new subscription
ZonalTrafficSubscription
Check HTTP Response Status Code Is
201
Check HTTP Response Body Json Schema Is
ZonalTrafficSubscription
Should Be Equal As Strings
${response['body']['zonalTrafficSubscription']['callbackReference']}
${ZONAL_TRAF_NOTIF_CALLBACK_URI}
Should Be Equal As Strings
${response['body']['zonalTrafficSubscription']['zoneId']}
${ZONAL_TRAF_ZONE_ID}
Should Be Equal As Strings
${response['body']['zonalTrafficSubscription']['clientCorrelator']}
${ZONAL_TRAF_SUB_CLIENT_ID}
Should Be Equal As Strings
${response['body']['zonalTrafficSubscription']['callbackReference']}
${ZONAL_TRAF_NOTIF_CALLBACK_URI}
TC_MEC_SRV_UEINFOSUB_001_BR
...
...
@@ -86,3 +87,4 @@ Remove subscription
${output}
=
Output
response
Set Suite Variable
${response}
${output}
SRV/UEINFOSUB/jsons/ZonalTrafficSubscription.json
View file @
31208d0c
...
...
@@ -4,8 +4,8 @@
"callbackReference"
:
{
"notifyURL"
:
"http://clientApp.example.com/location_notifications/123456"
},
"zoneId"
:
"zone
0
1"
,
"zoneId"
:
"zone1"
,
"interestRealm"
:
"LA"
,
"userEventCriteria"
:
"Transferring"
}
}
\ No newline at end of file
}
SRV/UEINFOSUB/jsons/ZonalTrafficSubscriptionError.json
View file @
31208d0c
...
...
@@ -4,8 +4,8 @@
"callbackReference"
:
{
"notifyURL"
:
"http://clientApp.example.com/location_notifications/123456"
},
"zone"
:
"zone
0
1"
,
"zone"
:
"zone1"
,
"interestRealm"
:
"LA"
,
"userEventCriteria"
:
"Transferring"
}
}
\ No newline at end of file
}
SRV/UEINFOSUB/schemas/ZonalTrafficSubscription.schema.json
View file @
31208d0c
...
...
@@ -8,4 +8,5 @@
"required"
:
[
"undefinedJsonSchema"
]
}
\ No newline at end of file
}
SRV/UELOCLOOK/environment/variables.txt
View file @
31208d0c
*** Variables ***
# Generic variables
${SCHEMA} http
${HOST} 10.
192.2.172
${PORT}
8081
${HOST} 10.
30.7.120
${PORT}
30007
${response} {}
${TOKEN} Basic YWxhZGRpbjpvcGVuc2VzYW1l
${apiRoot}
${apiRoot}
etsi-013
${apiName} location
${apiVersion} v2
# Specific variables
${ZONE_ID} zone01
${ZONE_ID} zone1
${NON_EXISTENT_ZONE_ID} NON_EXISTENT_ZONE_ID
${USER_ID} ue1
${NON_EXISTENT_USER_ID} NON_EXISTENT_USER_ID
${NON_EXISTENT_ZONE_ID} NON_EXISTENT_ZONE_ID
\ No newline at end of file
SRV/UELOCLOOK/schemas/UserInfo.schema.json
View file @
31208d0c
{
"properties"
:
{
"accessPointId"
:
{
"description"
:
"The identity of the access point the user is currently on, see note 1."
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"1"
,
"x-etsi-mec-origin-type"
:
"String"
},
"address"
:
{
"description"
:
"Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI) currently on the access point, see note 1."
,
"format"
:
"uri"
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"1"
,
"x-etsi-mec-origin-type"
:
"AnyURI"
},
"ancillaryInfo"
:
{
"description"
:
"Reserved for future use."
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"0..1"
,
"x-etsi-mec-origin-type"
:
"String"
},
"contextLocationInfo"
:
{
"description"
:
"Contextual information of a user location (e.g. aisle, floor, room number, etc.)."
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"0..1"
,
"x-etsi-mec-origin-type"
:
"String"
},
"locationInfo"
:
{
"properties"
:
{
"accuracy"
:
{
"type"
:
"number"
},
"accuracyAltitude"
:
{
"type"
:
"number"
},
"accuracySemiMinor"
:
{
"type"
:
"number"
},
"altitude"
:
{
"description"
:
"Location altitude relative to the WGS84 ellipsoid surface."
,
"type"
:
"number"
,
"x-etsi-mec-cardinality"
:
"0..1"
,
"x-etsi-mec-origin-type"
:
"Float"
},
"confidence"
:
{
"type"
:
"number"
},
"includedAngle"
:
{
"type"
:
"number"
},
"innerRadius"
:
{
"type"
:
"number"
},
"latitude"
:
{
"description"
:
"Location latitude, expressed in the range -90 to +90. Cardinality greater than one only if
\"
shape
\"
equals 7."
,
"items"
:
{
"type"
:
"number"
},
"type"
:
"array"
,
"x-etsi-mec-cardinality"
:
"1..N"
,
"x-etsi-mec-origin-type"
:
"Float"
},
"longitude"
:
{
"description"
:
"Location longitude, expressed in the range -180 to +180. Cardinality greater than one only if
\"
shape
\"
equals 7."
,
"items"
:
{
"type"
:
"number"
},
"type"
:
"array"
,
"x-etsi-mec-cardinality"
:
"1..N"
,
"x-etsi-mec-origin-type"
:
"Float"
},
"offsetAngle"
:
{
"type"
:
"number"
},
"orientationMajorAxis"
:
{
"type"
:
"number"
},
"shape"
:
{
"description"
:
"Shape information, as detailed in [14], associated with the reported location coordinate:
\n
1 = Ellipsoid_Arc
\n
2 = ellipsoid_Point
\n
3 = ellipsoid_Point_Altitude
\n
4 = ellipsoid_Point_Altitude_Uncert_Ellipsoid
\n
5 = ellipsoid_Point_Uncert_Circle
\n
6 = ellipsoid_Point_Uncert_Ellipse
\n
7 = polygon"
,
"enum"
:
[
"ELLIPSOID_ARC"
,
"ELLIPSOID_POINT"
,
"ELLIPSOID_POINT_ALTITUDE"
,
"ELLIPSOID_POINT_ALTITUDE_UNCERT_ELLIPSOID"
,
"ELLIPSOID_POINT_UNCERT_CIRCLE"
,
"ELLIPSOID_POINT_UNCERT_ELLIPSE"
,
"POLYGON"
],
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"1"
,
"x-etsi-mec-origin-type"
:
"Enum (inlined)"
},
"uncertaintyRadius"
:
{
"type"
:
"number"
},
"velocity"
:
{
"description"
:
"Structure with attributes relating to the target entitys velocity, as defined in [14]."
,
"type"
:
"object"
,
"x-etsi-mec-cardinality"
:
"0..1"
,
"x-etsi-mec-origin-type"
:
"Structure (inlined)"
}
},
"required"
:
[
"latitude"
,
"longitude"
,
"shape"
],
"type"
:
"object"
,
"x-etsi-ref"
:
"6.5.3"
},
"resourceURL"
:
{
"description"
:
"Self-referring URL, see note 1."
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"1"
,
"x-etsi-mec-origin-type"
:
"String"
},
"timeStamp"
:
{
"properties"
:
{
"nanoSeconds"
:
{
"type"
:
"number"
},
"seconds"
:
{
"type"
:
"number"
}
},
"required"
:
[
"seconds"
,
"nanoSeconds"
],
"type"
:
"object"
,
"x-etsi-ref"
:
"6.5.2"
},
"zoneId"
:
{
"description"
:
"The identity of the zone the user is currently within, see note 1."
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"1"
,
"x-etsi-mec-origin-type"
:
"String"
}
},
"required"
:
[
"address"
,
"accessPointId"
,
"zoneId"
,
"resourceURL"
,
"timeStamp"
],
"type"
:
"object"
,
"x-etsi-notes"
:
":
\t
As specified in [5], clause 5.2.2.7.
\n
NOTE 2:
\t
As specified in [5], clause 5.2.2.5."
,
"x-etsi-ref"
:
"6.2.2"
}
\ No newline at end of file
"type"
:
"object"
,
"properties"
:
{
"userInfo"
:
{
"type"
:
"object"
,
"properties"
:
{
"accessPointId"
:
{
"description"
:
"The identity of the access point the user is currently on, see note 1."
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"1"
,
"x-etsi-mec-origin-type"
:
"String"
},
"address"
:
{
"description"
:
"Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI) currently on the access point, see note 1."
,
"format"
:
"uri"
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"1"
,
"x-etsi-mec-origin-type"
:
"AnyURI"
},
"ancillaryInfo"
:
{
"description"
:
"Reserved for future use."
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"0..1"
,
"x-etsi-mec-origin-type"
:
"String"
},
"contextLocationInfo"
:
{
"description"
:
"Contextual information of a user location (e.g. aisle, floor, room number, etc.)."
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"0..1"
,
"x-etsi-mec-origin-type"
:
"String"
},
"locationInfo"
:
{
"properties"
:
{
"accuracy"
:
{
"type"
:
"number"
},
"accuracyAltitude"
:
{
"type"
:
"number"
},
"accuracySemiMinor"
:
{
"type"
:
"number"
},
"altitude"
:
{
"description"
:
"Location altitude relative to the WGS84 ellipsoid surface."
,
"type"
:
"number"
,
"x-etsi-mec-cardinality"
:
"0..1"
,
"x-etsi-mec-origin-type"
:
"Float"
},
"confidence"
:
{
"type"
:
"number"
},
"includedAngle"
:
{
"type"
:
"number"
},
"innerRadius"
:
{
"type"
:
"number"
},
"latitude"
:
{
"description"
:
"Location latitude, expressed in the range -90° to +90°. Cardinality greater than one only if
\"
shape
\"
equals 7."
,
"items"
:
{
"type"
:
"number"
},
"type"
:
"array"
,
"x-etsi-mec-cardinality"
:
"1..N"
,
"x-etsi-mec-origin-type"
:
"Float"
},
"longitude"
:
{
"description"
:
"Location longitude, expressed in the range -180° to +180°. Cardinality greater than one only if
\"
shape
\"
equals 7."
,
"items"
:
{
"type"
:
"number"
},
"type"
:
"array"
,
"x-etsi-mec-cardinality"
:
"1..N"
,
"x-etsi-mec-origin-type"
:
"Float"
},
"offsetAngle"
:
{
"type"
:
"number"
},
"orientationMajorAxis"
:
{
"type"
:
"number"
},
"shape"
:
{
"description"
:
"Shape information, as detailed in [14], associated with the reported location coordinate:
\n
1 = Ellipsoid_Arc
\n
2 = ellipsoid_Point
\n
3 = ellipsoid_Point_Altitude
\n
4 = ellipsoid_Point_Altitude_Uncert_Ellipsoid
\n
5 = ellipsoid_Point_Uncert_Circle
\n
6 = ellipsoid_Point_Uncert_Ellipse
\n
7 = polygon"
,
"enum"
:
[
"ELLIPSOID_ARC"
,
"ELLIPSOID_POINT"
,
"ELLIPSOID_POINT_ALTITUDE"
,
"ELLIPSOID_POINT_ALTITUDE_UNCERT_ELLIPSOID"
,
"ELLIPSOID_POINT_UNCERT_CIRCLE"
,
"ELLIPSOID_POINT_UNCERT_ELLIPSE"
,
"POLYGON"
],
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"1"
,
"x-etsi-mec-origin-type"
:
"Enum (inlined)"
},
"uncertaintyRadius"
:
{
"type"
:
"number"
},
"velocity"
:
{
"description"
:
"Structure with attributes relating to the target entity’s velocity, as defined in [14]."
,
"type"
:
"object"
,
"x-etsi-mec-cardinality"
:
"0..1"
,
"x-etsi-mec-origin-type"
:
"Structure (inlined)"
}
},
"required"
:
[
"latitude"
,
"longitude"
,
"shape"
],
"type"
:
"object"
,
"x-etsi-ref"
:
"6.5.3"
},
"resourceURL"
:
{
"description"
:
"Self-referring URL, see note 1."
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"1"
,
"x-etsi-mec-origin-type"
:
"String"
},
"timeStamp"
:
{
"properties"
:
{
"nanoSeconds"
:
{
"type"
:
"number"
},
"seconds"
:
{
"type"
:
"number"
}
},
"required"
:
[
"seconds"
,
"nanoSeconds"
],
"type"
:
"object"
,
"x-etsi-ref"
:
"6.5.2"
},
"zoneId"
:
{
"description"
:
"The identity of the zone the user is currently within, see note 1."
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"1"
,
"x-etsi-mec-origin-type"
:
"String"
}
},
"required"
:
[
"address"
,
"accessPointId"
,
"zoneId"
,
"resourceURL"
,
"timeStamp"
],
"x-etsi-notes"
:
":
\t
As specified in [5], clause 5.2.2.7.
\n
NOTE 2:
\t
As specified in [5], clause 5.2.2.5."
,
"x-etsi-ref"
:
"6.2.2"
}
}
}
SRV/UELOCLOOK/schemas/UserList.schema.json
0 → 100644
View file @
31208d0c
{
"description"
:
"A type containing list of users."
,
"type"
:
"object"
,
"required"
:
[
"resourceURL"
],
"properties"
:
{
"user"
:
{
"description"
:
"Collection of the zone information list."
,
"type"
:
"array"
,
"items"
:
{
"properties"
:
{
"accessPointId"
:
{
"description"
:
"The identity of the access point the user is currently on, see note 1."
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"1"
,
"x-etsi-mec-origin-type"
:
"String"
},
"address"
:
{
"description"
:
"Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI) currently on the access point, see note 1."
,
"format"
:
"uri"
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"1"
,
"x-etsi-mec-origin-type"
:
"AnyURI"
},
"ancillaryInfo"
:
{
"description"
:
"Reserved for future use."
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"0..1"
,
"x-etsi-mec-origin-type"
:
"String"
},
"contextLocationInfo"
:
{
"description"
:
"Contextual information of a user location (e.g. aisle, floor, room number, etc.)."
,
"type"
:
"string"
,
"x-etsi-mec-cardinality"
:
"0..1"
,
"x-etsi-mec-origin-type"
:
"String"
},
"locationInfo"
:
{
"properties"
:
{
"accuracy"
:
{
"type"
:
"number"
},
"accuracyAltitude"
:
{
"type"
:
"number"
},
"accuracySemiMinor"
:
{
"type"
:
"number"
},
"altitude"
:
{
"description"
:
"Location altitude relative to the WGS84 ellipsoid surface."
,
"type"
:
"number"
,
"x-etsi-mec-cardinality"
:
"0..1"
,
"x-etsi-mec-origin-type"
:
"Float"
},
"confidence"
:
{
"type"
:
"number"
},
"includedAngle"
:
{
"type"
:
"number"
},
"innerRadius"
:
{
"type"
:
"number"
},
"latitude"
:
{
"description"
:
"Location latitude, expressed in the range -90° to +90°. Cardinality greater than one only if
\"
shape
\"
equals 7."
,
"items"
:
{
"type"
:
"number"
},
"type"
:
"array"
,
"x-etsi-mec-cardinality"
:
"1..N"
,
"x-etsi-mec-origin-type"
:
"Float"
},
"longitude"
:
{
"description"
:
"Location longitude, expressed in the range -180° to +180°. Cardinality greater than one only if
\"
shape
\"
equals 7."
,
"items"
:
{
"type"
:
"number"
},
"type"
:
"array"
,
"x-etsi-mec-cardinality"
:
"1..N"
,
"x-etsi-mec-origin-type"
:
"Float"
},