diff --git a/GenericKeywords.robot b/GenericKeywords.robot index 90d51c56a049fba2fa18634d6c73f3099a5ffabb..68eb6075bd572d129676acc009bb72aa1bd315a4 100644 --- a/GenericKeywords.robot +++ b/GenericKeywords.robot @@ -15,6 +15,7 @@ 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 diff --git a/SRV/RLOCLOOK/PlatRadioNodeLocation.robot b/SRV/RLOCLOOK/PlatRadioNodeLocation.robot index f995c18ffe6d568bfd552461947696f75609b541..54c282ab5857c15f4a3cbfdfbe2293895cef365a 100644 --- a/SRV/RLOCLOOK/PlatRadioNodeLocation.robot +++ b/SRV/RLOCLOOK/PlatRadioNodeLocation.robot @@ -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 Get the access points list ${ZONE_ID} Check HTTP Response Status Code Is 200 Check HTTP Response Body Json Schema Is AccessPointList diff --git a/SRV/RLOCLOOK/schemas/AccessPointList.schema.json b/SRV/RLOCLOOK/schemas/AccessPointList.schema.json index 50efd4edbdfc79a1e5740017c0e89b8ab08cc56b..f8b20f2828e1fd1b88440ada9a8a1e83b2814f7b 100644 --- a/SRV/RLOCLOOK/schemas/AccessPointList.schema.json +++ b/SRV/RLOCLOOK/schemas/AccessPointList.schema.json @@ -1,128 +1,11 @@ { - "properties": { - "accessPointList": { - "description": "A type containing list of access points.", - "type": "object", - "required": [ - "zoneId", - "resourceURL" - ], - "properties": { - "zoneId": { - "description": "Identifier of zone", - "type": "string", - "example": "zone01" - }, - "accessPoint": { - "description": "Collection of the access point information list.", - "type": "array", - "items": { - "description": "A type containing access point information.", - "type": "object", - "required": [ - "accessPointId", - "connectionType", - "operationStatus", - "numberOfUsers", - "resourceURL" - ], - "properties": { - "accessPointId": { - "description": "Identifier of access point, (reference ETSI TS 129 171). Where the E-CGI is made up of the PLMN and Cell Identity (28 bit string). Then the PLMN is made up of the 3 digit MCC & 2 or 3 digit MNC. The Cell Portion is an optional element", - "type": "string", - "example": "001010000000000000000000000000001" - }, - "locationInfo": { - "description": "A type containing location information with latitude, longitude and altitude, in addition the accuracy of the information are provided.", - "type": "object", - "required": [ - "latitude", - "longitude", - "accuracy" - ], - "properties": { - "latitude": { - "type": "number", - "format": "float", - "example": "80.123" - }, - "longitude": { - "type": "number", - "format": "float", - "example": "70.123" - }, - "altitude": { - "type": "number", - "format": "float", - "example": "10.0" - }, - "accuracy": { - "type": "integer", - "format": "int32", - "example": "10" - } - } - }, - "connectionType": { - "description": "The connection type for the access point", - "type": "string", - "enum": [ - "Femto", - "LTE-femto", - "Smallcell", - "LTE-smallcell", - "Wifi", - "Pico", - "Micro", - "Macro", - "Wimax", - "Unknown" - ], - "example": "Macro" - }, - "operationStatus": { - "description": "The operation status of the access point", - "type": "string", - "enum": [ - "Serviceable", - "Unserviceable", - "Unknown" - ], - "example": "Serviceable" - }, - "numberOfUsers": { - "description": "The number of users currently on the access point.", - "type": "integer", - "format": "uint32", - "example": "7" - }, - "timezone": { - "description": "Time zone of access point", - "type": "string", - "format": "date-time", - "example": "2017-01-01T02:51:43Z" - }, - "interestRealm": { - "description": "Interest realm of access point (e.g. geographical area, a type of industry etc.).", - "type": "string", - "example": "LA" - }, - "resourceURL": { - "description": "Self referring URL.", - "type": "string", - "format": "uri", - "example": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123" - } - } - } - }, - "resourceURL": { - "description": "Self referring URL.", - "type": "string", - "format": "uri", - "example": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123" - } - } - } - } - } \ No newline at end of file + "properties": { + "undefinedJsonSchema": { + "type": "string", + "description": "Json Schema for the given object is not yet defined" + } + }, + "required": [ + "undefinedJsonSchema" + ] +} \ No newline at end of file diff --git a/SRV/UEAREASUB/schemas/CircleNotificationSubscription.schema.json b/SRV/UEAREASUB/schemas/CircleNotificationSubscription.schema.json index 6b745ec421507748b6cdc299bf4a8c31d4ede14d..f8b20f2828e1fd1b88440ada9a8a1e83b2814f7b 100644 --- a/SRV/UEAREASUB/schemas/CircleNotificationSubscription.schema.json +++ b/SRV/UEAREASUB/schemas/CircleNotificationSubscription.schema.json @@ -1,142 +1,11 @@ { - "definitions": {}, - "$schema": "http://json-schema.org/draft-07/schema#", - "$id": "http://example.com/root.json", - "type": "object", - "title": "The Root Schema", - "required": [ - "address", - "callbackReference", - "checkImmediate", - "clientCorrelator", - "enteringLeavingCriteria", - "frequency", - "latitude", - "longitude", - "radius", - "trackingAccuracy" - ], "properties": { - "address": { - "$id": "#/properties/address", - "type": "string", - "title": "The Address Schema", - "default": "", - "examples": [ - "acr:10.0.0.1" - ], - "pattern": "^(.*)$" - }, - "callbackReference": { - "$id": "#/properties/callbackReference", - "type": "object", - "title": "The Callbackreference Schema", - "required": [ - "callbackData", - "notifyURL" - ], - "properties": { - "callbackData": { - "$id": "#/properties/callbackReference/properties/callbackData", - "type": "string", - "title": "The Callbackdata Schema", - "default": "", - "examples": [ - "1234" - ], - "pattern": "^(.*)$" - }, - "notifyURL": { - "$id": "#/properties/callbackReference/properties/notifyURL", - "type": "string", - "title": "The Notifyurl Schema", - "default": "", - "examples": [ - "http://application.example.com/notifications/distance_notifications/123456" - ], - "pattern": "^(.*)$" - } - } - }, - "checkImmediate": { - "$id": "#/properties/checkImmediate", - "type": "string", - "title": "The Checkimmediate Schema", - "default": "", - "examples": [ - "true" - ], - "pattern": "^(.*)$" - }, - "clientCorrelator": { - "$id": "#/properties/clientCorrelator", - "type": "string", - "title": "The Clientcorrelator Schema", - "default": "", - "examples": [ - "0123" - ], - "pattern": "^(.*)$" - }, - "enteringLeavingCriteria": { - "$id": "#/properties/enteringLeavingCriteria", - "type": "string", - "title": "The Enteringleavingcriteria Schema", - "default": "", - "examples": [ - "Entering" - ], - "pattern": "^(.*)$" - }, - "frequency": { - "$id": "#/properties/frequency", + "undefinedJsonSchema": { "type": "string", - "title": "The Frequency Schema", - "default": "", - "examples": [ - "10" - ], - "pattern": "^(.*)$" - }, - "latitude": { - "$id": "#/properties/latitude", - "type": "string", - "title": "The Latitude Schema", - "default": "", - "examples": [ - "-80.86302" - ], - "pattern": "^(.*)$" - }, - "longitude": { - "$id": "#/properties/longitude", - "type": "string", - "title": "The Longitude Schema", - "default": "", - "examples": [ - "41.277306" - ], - "pattern": "^(.*)$" - }, - "radius": { - "$id": "#/properties/radius", - "type": "string", - "title": "The Radius Schema", - "default": "", - "examples": [ - "500" - ], - "pattern": "^(.*)$" - }, - "trackingAccuracy": { - "$id": "#/properties/trackingAccuracy", - "type": "string", - "title": "The Trackingaccuracy Schema", - "default": "", - "examples": [ - "10" - ], - "pattern": "^(.*)$" + "description": "Json Schema for the given object is not yet defined" } - } + }, + "required": [ + "undefinedJsonSchema" + ] } \ No newline at end of file diff --git a/SRV/UEDISTLOOK/schemas/TerminalDistance.schema.json b/SRV/UEDISTLOOK/schemas/TerminalDistance.schema.json index b23ded186f8f1270e7ddcd32dd63515ebda4665c..f8b20f2828e1fd1b88440ada9a8a1e83b2814f7b 100644 --- a/SRV/UEDISTLOOK/schemas/TerminalDistance.schema.json +++ b/SRV/UEDISTLOOK/schemas/TerminalDistance.schema.json @@ -1,32 +1,11 @@ { - "definitions": {}, - "$schema": "http://json-schema.org/draft-07/schema#", - "$id": "http://example.com/root.json", - "type": "object", - "title": "The Root Schema", - "required": [ - " terminalDistance" - ], "properties": { - " terminalDistance": { - "$id": "#/properties/ terminalDistance", - "type": "object", - "title": "The terminaldistance Schema", - "required": [ - "distance" - ], - "properties": { - "distance": { - "$id": "#/properties/ terminalDistance/properties/distance", - "type": "string", - "title": "The Distance Schema", - "default": "", - "examples": [ - "123" - ], - "pattern": "^(.*)$" - } - } + "undefinedJsonSchema": { + "type": "string", + "description": "Json Schema for the given object is not yet defined" } - } -} + }, + "required": [ + "undefinedJsonSchema" + ] +} \ No newline at end of file diff --git a/SRV/UEDISTSUB/schemas/DistanceNotificationSubscription.schema.json b/SRV/UEDISTSUB/schemas/DistanceNotificationSubscription.schema.json index bc698763fb68d5a6b900dcd2e36dd995d98839a4..f8b20f2828e1fd1b88440ada9a8a1e83b2814f7b 100644 --- a/SRV/UEDISTSUB/schemas/DistanceNotificationSubscription.schema.json +++ b/SRV/UEDISTSUB/schemas/DistanceNotificationSubscription.schema.json @@ -1,147 +1,11 @@ { - "definitions": {}, - "$schema": "http://json-schema.org/draft-07/schema#", - "$id": "http://example.com/root.json", - "type": "object", - "title": "The Root Schema", - "required": [ - "distanceNotificationSubscription" - ], "properties": { - "distanceNotificationSubscription": { - "$id": "#/properties/distanceNotificationSubscription", - "type": "object", - "title": "The Distancenotificationsubscription Schema", - "required": [ - "callbackReference", - "checkImmediate", - "clientCorrelator", - "criteria", - "distance", - "frequency", - "monitoredAddress", - "referenceAddress", - "trackingAccuracy" - ], - "properties": { - "callbackReference": { - "$id": "#/properties/distanceNotificationSubscription/properties/callbackReference", - "type": "object", - "title": "The Callbackreference Schema", - "required": [ - "callbackData", - "notifyURL" - ], - "properties": { - "callbackData": { - "$id": "#/properties/distanceNotificationSubscription/properties/callbackReference/properties/callbackData", - "type": "string", - "title": "The Callbackdata Schema", - "default": "", - "examples": [ - "1234" - ], - "pattern": "^(.*)$" - }, - "notifyURL": { - "$id": "#/properties/distanceNotificationSubscription/properties/callbackReference/properties/notifyURL", - "type": "string", - "title": "The Notifyurl Schema", - "default": "", - "examples": [ - "http://application.example.com/notifications/distance_notifications/123456" - ], - "pattern": "^(.*)$" - } - } - }, - "checkImmediate": { - "$id": "#/properties/distanceNotificationSubscription/properties/checkImmediate", - "type": "string", - "title": "The Checkimmediate Schema", - "default": "", - "examples": [ - "true" - ], - "pattern": "^(.*)$" - }, - "clientCorrelator": { - "$id": "#/properties/distanceNotificationSubscription/properties/clientCorrelator", - "type": "string", - "title": "The Clientcorrelator Schema", - "default": "", - "examples": [ - "0123" - ], - "pattern": "^(.*)$" - }, - "criteria": { - "$id": "#/properties/distanceNotificationSubscription/properties/criteria", - "type": "string", - "title": "The Criteria Schema", - "default": "", - "examples": [ - "AllWithinDistance" - ], - "pattern": "^(.*)$" - }, - "distance": { - "$id": "#/properties/distanceNotificationSubscription/properties/distance", - "type": "string", - "title": "The Distance Schema", - "default": "", - "examples": [ - "100" - ], - "pattern": "^(.*)$" - }, - "frequency": { - "$id": "#/properties/distanceNotificationSubscription/properties/frequency", - "type": "string", - "title": "The Frequency Schema", - "default": "", - "examples": [ - "10" - ], - "pattern": "^(.*)$" - }, - "monitoredAddress": { - "$id": "#/properties/distanceNotificationSubscription/properties/monitoredAddress", - "type": "array", - "title": "The Monitoredaddress Schema", - "items": { - "$id": "#/properties/distanceNotificationSubscription/properties/monitoredAddress/items", - "type": "string", - "title": "The Items Schema", - "default": "", - "examples": [ - "acr:10.0.0.1", - "acr:10.0.0.2" - ], - "pattern": "^(.*)$" - } - }, - "referenceAddress": { - "$id": "#/properties/distanceNotificationSubscription/properties/referenceAddress", - "type": "string", - "title": "The Referenceaddress Schema", - "default": "", - "examples": [ - "acr:10.0.0.3" - ], - "pattern": "^(.*)$" - }, - "trackingAccuracy": { - "$id": "#/properties/distanceNotificationSubscription/properties/trackingAccuracy", - "type": "string", - "title": "The Trackingaccuracy Schema", - "default": "", - "examples": [ - "10" - ], - "pattern": "^(.*)$" - } - } + "undefinedJsonSchema": { + "type": "string", + "description": "Json Schema for the given object is not yet defined" } - } -} + }, + "required": [ + "undefinedJsonSchema" + ] +} \ No newline at end of file diff --git a/SRV/UEINFOLOOK/schemas/UserList.schema.json b/SRV/UEINFOLOOK/schemas/UserList.schema.json index ae608d6fa010519efd99e249663b530b21dbccd3..51f8a2e0c57fcfcd40aa60782a61ac0c965889c0 100644 --- a/SRV/UEINFOLOOK/schemas/UserList.schema.json +++ b/SRV/UEINFOLOOK/schemas/UserList.schema.json @@ -1,93 +1,169 @@ { - "description": "A type containing list of users.", - "type": "object", - "required": [ - "resourceURL" - ], - "properties": { - "user": { - "description": "Collection of the zone information list.", - "type": "array", - "items": { - "description": "A type containing user information.", - "type": "object", - "required": [ - "address", - "accessPointId", - "zoneId", - "resourceURL" - ], - "properties": { - "address": { - "description": "Address of user (e.g. \"sip\" URI, \"tel\" URI, \"acr\" URI).", - "type": "string", - "format": "uri", - "example": "acr:192.0.2.1" - }, - "accessPointId": { - "description": "Identifier of access point, (reference ETSI TS 129 171). Where the E-CGI is made up of the PLMN and Cell Identity (28 bit string). Then the PLMN is made up of the 3 digit MCC & 2 or 3 digit MNC. The Cell Portion is an optional element", - "type": "string", - "example": "001010000000000000000000000000001" - }, - "zoneId": { - "description": "Identifier of zone", - "type": "string", - "example": "zone01" - }, - "resourceURL": { - "description": "Self referring URL.", - "type": "string", - "format": "uri", - "example": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123" - }, - "locationInfo": { - "description": "A type containing location information with latitude, longitude and altitude, in addition the accuracy of the information are provided.", - "type": "object", - "required": [ - "latitude", - "longitude", - "accuracy" - ], - "properties": { - "latitude": { - "type": "number", - "format": "float", - "example": "80.123" - }, - "longitude": { - "type": "number", - "format": "float", - "example": "70.123" - }, - "altitude": { - "type": "number", - "format": "float", - "example": "10.0" - }, - "accuracy": { - "type": "integer", - "format": "int32", - "example": "10" - } - } - }, - "contextLocationInfo": { - "description": "Contextual information of a user location (e.g., aisle, floor, room number, etc.)", - "type": "string", - "example": "GroundFloor" - }, - "ancillaryInfo": { - "description": "Reserved for future use.", - "type": "string" - } - } - } - }, - "resourceURL": { - "description": "Self referring URL.", - "type": "string", - "format": "uri", - "example": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123" - } - } - } \ No newline at end of file + "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" + }, + "offsetAngle": { + "type": "number" + }, + "orientationMajorAxis": { + "type": "number" + }, + "shape": { + "description": "Shape information, as detailed in [14], associated with the reported location coordinate:\n1 = Ellipsoid_Arc\n2 = ellipsoid_Point\n3 = ellipsoid_Point_Altitude\n4 = ellipsoid_Point_Altitude_Uncert_Ellipsoid\n5 = ellipsoid_Point_Uncert_Circle\n6 = ellipsoid_Point_Uncert_Ellipse\n7 = 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" + ], + "type": "object", + "x-etsi-notes": ":\tAs specified in [5], clause 5.2.2.7.\nNOTE 2: \tAs specified in [5], clause 5.2.2.5.", + "x-etsi-ref": "6.2.2" + } + }, + "resourceURL": { + "description": "Self referring URL.", + "type": "string", + "format": "uri", + "example": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123" + } + } +} \ No newline at end of file diff --git a/SRV/UEINFOSUB/schemas/ZonalTrafficSubscription.schema.json b/SRV/UEINFOSUB/schemas/ZonalTrafficSubscription.schema.json index 6c9a35d36307177c7cd311aba463e0f70c202875..f8b20f2828e1fd1b88440ada9a8a1e83b2814f7b 100644 --- a/SRV/UEINFOSUB/schemas/ZonalTrafficSubscription.schema.json +++ b/SRV/UEINFOSUB/schemas/ZonalTrafficSubscription.schema.json @@ -1,71 +1,11 @@ { - "zonalTrafficSubscription": { - "description": "A type containing zonal traffic subscription", - "type": "object", - "required": [ - "callbackReference", - "zoneId" - ], - "properties": { - "clientCorrelator": { - "description": "Uniquely identifies this create subscription request. If there is a communication failure during the request, using the same clientCorrelator when retrying the request allows the operator to avoid creating a duplicate subscription.", - "type": "string", - "example": "0123" - }, - "callbackReference": { - "description": "Notification callback definition.", - "type": "object", - "required": [ - "notifyURL" - ], - "properties": { - "notifyURL": { - "description": "The URL of your own listener application.", - "type": "string", - "format": "url", - "example": "http://clientApp.example.com/location_notifications/123456" - } - } - }, - "zoneId": { - "description": "Identifier of zone", - "type": "string", - "example": "zone01" - }, - "interestRealm": { - "description": "Interest realms of access points within a zone (e.g. geographical area, a type of industry etc.).", - "type": "array", - "items": { - "description": "Interest realm of access point (e.g. geographical area, a type of industry etc.).", - "type": "string", - "example": "LA" - } - }, - "userEventCriteria": { - "description": "List of user event values to generate notifications for (these apply to zone identifier or all interest realms within zone identifier specified). If this element is missing, a notification is requested to be generated for any change in user event.", - "type": "array", - "items": { - "description": "User event", - "type": "string", - "enum": [ - "Entering", - "Leaving", - "Transferring" - ], - "example": "Entering" - } - }, - "duration": { - "description": "Period (in seconds) of time notifications are provided for. If set to \"0\" (zero), a default duration time, which is specified by the service policy, will be used. If the parameter is omitted, the notifications will continue until the maximum duration time, which is specified by the service policy, unless the notifications are stopped by deletion of subscription for notifications. This element MAY be given by the client during resource creation in order to signal the desired lifetime of the subscription. The server MUST return in this element the period of time for which the subscription will still be valid.", - "type": "string", - "example": "0" - }, - "resourceURL": { - "description": "Self referring URL.", - "type": "string", - "format": "uri", - "example": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123" - } - } - } - } \ No newline at end of file + "properties": { + "undefinedJsonSchema": { + "type": "string", + "description": "Json Schema for the given object is not yet defined" + } + }, + "required": [ + "undefinedJsonSchema" + ] +} \ No newline at end of file diff --git a/SRV/UELOCLOOK/schemas/UserInfo.schema.json b/SRV/UELOCLOOK/schemas/UserInfo.schema.json index 8f5cef3759c895e70a78f4bd2f9e99737dc204a7..83c184066a4eff12e9554bf62fbc45b56c487df6 100644 --- a/SRV/UELOCLOOK/schemas/UserInfo.schema.json +++ b/SRV/UELOCLOOK/schemas/UserInfo.schema.json @@ -1,74 +1,150 @@ { - "description": "A type containing user information.", - "type": "object", - "required": [ - "address", - "accessPointId", - "zoneId", - "resourceURL" - ], - "properties": { - "address": { - "description": "Address of user (e.g. \"sip\" URI, \"tel\" URI, \"acr\" URI).", - "type": "string", - "format": "uri", - "example": "acr:192.0.2.1" - }, - "accessPointId": { - "description": "Identifier of access point, (reference ETSI TS 129 171). Where the E-CGI is made up of the PLMN and Cell Identity (28 bit string). Then the PLMN is made up of the 3 digit MCC & 2 or 3 digit MNC. The Cell Portion is an optional element", - "type": "string", - "example": "001010000000000000000000000000001" - }, - "zoneId": { - "description": "Identifier of zone", - "type": "string", - "example": "zone01" - }, - "resourceURL": { - "description": "Self referring URL.", - "type": "string", - "format": "uri", - "example": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123" - }, - "locationInfo": { - "description": "A type containing location information with latitude, longitude and altitude, in addition the accuracy of the information are provided.", - "type": "object", - "required": [ - "latitude", - "longitude", - "accuracy" - ], - "properties": { - "latitude": { - "type": "number", - "format": "float", - "example": "80.123" - }, - "longitude": { - "type": "number", - "format": "float", - "example": "70.123" - }, - "altitude": { - "type": "number", - "format": "float", - "example": "10.0" - }, - "accuracy": { - "type": "integer", - "format": "int32", - "example": "10" - } - } - }, - "contextLocationInfo": { - "description": "Contextual information of a user location (e.g., aisle, floor, room number, etc.)", - "type": "string", - "example": "GroundFloor" - }, - "ancillaryInfo": { - "description": "Reserved for future use.", - "type": "string" - } - } - } \ No newline at end of file + "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:\n1 = Ellipsoid_Arc\n2 = ellipsoid_Point\n3 = ellipsoid_Point_Altitude\n4 = ellipsoid_Point_Altitude_Uncert_Ellipsoid\n5 = ellipsoid_Point_Uncert_Circle\n6 = ellipsoid_Point_Uncert_Ellipse\n7 = 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" + ], + "type": "object", + "x-etsi-notes": ":\tAs specified in [5], clause 5.2.2.7.\nNOTE 2: \tAs specified in [5], clause 5.2.2.5.", + "x-etsi-ref": "6.2.2" +} \ No newline at end of file diff --git a/SRV/UELOCSUB/schemas/UserTrackingSubscription.schema.json b/SRV/UELOCSUB/schemas/UserTrackingSubscription.schema.json index c7e590d6f5398879d4daabba75e3a530263db8b3..f8b20f2828e1fd1b88440ada9a8a1e83b2814f7b 100644 --- a/SRV/UELOCSUB/schemas/UserTrackingSubscription.schema.json +++ b/SRV/UELOCSUB/schemas/UserTrackingSubscription.schema.json @@ -1,77 +1,11 @@ { - "definitions": {}, - "$schema": "http://json-schema.org/draft-07/schema#", - "$id": "https://example.com/object1575044080.json", - "title": "Root", - "type": "object", - "required": [ - "userTrackingSubscription" - ], - "properties": { - "userTrackingSubscription": { - "$id": "#root/userTrackingSubscription", - "title": "Usertrackingsubscription", - "type": "object", - "required": [ - "clientCorrelator", - "callbackReference", - "address", - "userEventCriteria" - ], - "properties": { - "clientCorrelator": { - "$id": "#root/userTrackingSubscription/clientCorrelator", - "title": "Clientcorrelator", - "type": "string", - "default": "", - "examples": [ - "0123" - ], - "pattern": "^.*$" - }, - "callbackReference": { - "$id": "#root/userTrackingSubscription/callbackReference", - "title": "Callbackreference", - "type": "object", - "required": [ - "notifyURL" - ], - "properties": { - "notifyURL": { - "$id": "#root/userTrackingSubscription/callbackReference/notifyURL", - "title": "Notifyurl", - "type": "string", - "default": "", - "examples": [ - "http://clientApp.example.com/location_notifications/123456" - ], - "pattern": "^.*$" - } - } - } -, - "address": { - "$id": "#root/userTrackingSubscription/address", - "title": "Address", - "type": "string", - "default": "", - "examples": [ - "acr:10.0.0.1" - ], - "pattern": "^.*$" - }, - "userEventCriteria": { - "$id": "#root/userTrackingSubscription/userEventCriteria", - "title": "Usereventcriteria", - "type": "string", - "default": "", - "examples": [ - "Transferring" - ], - "pattern": "^.*$" - } - } - } - - } -} + "properties": { + "undefinedJsonSchema": { + "type": "string", + "description": "Json Schema for the given object is not yet defined" + } + }, + "required": [ + "undefinedJsonSchema" + ] +} \ No newline at end of file diff --git a/SRV/UETRACKSUB/schemas/PeriodicNotificationSubscription.schema.json b/SRV/UETRACKSUB/schemas/PeriodicNotificationSubscription.schema.json index 4a1d50ec1228db0367834bb06d876e60d339c193..f8b20f2828e1fd1b88440ada9a8a1e83b2814f7b 100644 --- a/SRV/UETRACKSUB/schemas/PeriodicNotificationSubscription.schema.json +++ b/SRV/UETRACKSUB/schemas/PeriodicNotificationSubscription.schema.json @@ -1,99 +1,11 @@ { - "definitions": {}, - "$schema": "http://json-schema.org/draft-07/schema#", - "$id": "https://example.com/object1575044234.json", - "title": "Root", - "type": "object", - "required": [ - "periodicNotificationSubscription" - ], - "properties": { - "periodicNotificationSubscription": { - "$id": "#root/periodicNotificationSubscription", - "title": "Periodicnotificationsubscription", - "type": "object", - "required": [ - "address", - "callbackReference", - "clientCorrelator", - "frequency", - "requestedAccuracy" - ], - "properties": { - "address": { - "$id": "#root/periodicNotificationSubscription/address", - "title": "Address", - "type": "string", - "default": "", - "examples": [ - "acr:10.0.0.1" - ], - "pattern": "^.*$" - }, - "callbackReference": { - "$id": "#root/periodicNotificationSubscription/callbackReference", - "title": "Callbackreference", - "type": "object", - "required": [ - "callbackData", - "notifyURL" - ], - "properties": { - "callbackData": { - "$id": "#root/periodicNotificationSubscription/callbackReference/callbackData", - "title": "Callbackdata", - "type": "string", - "default": "", - "examples": [ - "0123" - ], - "pattern": "^.*$" - }, - "notifyURL": { - "$id": "#root/periodicNotificationSubscription/callbackReference/notifyURL", - "title": "Notifyurl", - "type": "string", - "default": "", - "examples": [ - "http://clientApp.example.com/location_notifications/123456" - ], - "pattern": "^.*$" - } - } - } -, - "clientCorrelator": { - "$id": "#root/periodicNotificationSubscription/clientCorrelator", - "title": "Clientcorrelator", - "type": "string", - "default": "", - "examples": [ - "0123" - ], - "pattern": "^.*$" - }, - "frequency": { - "$id": "#root/periodicNotificationSubscription/frequency", - "title": "Frequency", - "type": "string", - "default": "", - "examples": [ - "10" - ], - "pattern": "^.*$" - }, - "requestedAccuracy": { - "$id": "#root/periodicNotificationSubscription/requestedAccuracy", - "title": "Requestedaccuracy", - "type": "string", - "default": "", - "examples": [ - "10" - ], - "pattern": "^.*$" - } - } - } - - } -} + "properties": { + "undefinedJsonSchema": { + "type": "string", + "description": "Json Schema for the given object is not yet defined" + } + }, + "required": [ + "undefinedJsonSchema" + ] +} \ No newline at end of file