{
  "properties": {
    "_links": {
      "description": "Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests.",
      "properties": {
        "subscription": {
          "properties": {
            "href": {
              "description": "URI referring to a resource.",
              "format": "uri",
              "type": "string",
              "x-etsi-mec-cardinality": "1",
              "x-etsi-mec-origin-type": "Uri"
            }
          },
          "required": [
            "href"
          ],
          "type": "object",
          "x-etsi-ref": "6.7.2"
        }
      },
      "required": [
        "subscription"
      ],
      "type": "object",
      "x-etsi-mec-cardinality": "0..1",
      "x-etsi-mec-origin-type": "Structure (inlined)"
    },
    "distanceEvent": {
      "description": "An enumeration, defining the distance criteria between devices.",
      "enum": [
        "AllWithinDistance",
        "AnyWithinDistance",
        "AllBeyondDistance",
        "AnyBeyondDistance"
      ],
      "type": "string"
    },
    "monitoredUsers": {
      "description": "A type containing list of users.",
      "properties": {
        "resourceURL": {
          "description": "Self referring URL",
          "type": "string",
          "x-etsi-mec-cardinality": 1,
          "x-etsi-mec-origin-type": "anyURI"
        },
        "user": {
          "description": "Collection of the zone information list.",
          "items": {
            "description": "This type represents the information related to a user attached to an access point associated to the MEC host, such access point is in scope of the Location Service instance.",
            "required": [
              "address",
              "accessPointId",
              "zoneId",
              "resourceURL",
              "timestamp"
            ],
            "type": "object",
            "x-etsi-notes": "NOTE 1:\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",
            "properties": {
              "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"
              },
              "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"
              },
              "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"
              },
              "resourceURL": {
                "description": "Self-referring URL, see note 1.",
                "type": "string",
                "x-etsi-mec-cardinality": "1",
                "x-etsi-mec-origin-type": "AnyURI"
              },
              "timestamp": {
                "properties": {
                  "nanoSeconds": {
                    "description": "The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC.",
                    "format": "uint32",
                    "type": "integer",
                    "x-etsi-mec-cardinality": "1",
                    "x-etsi-mec-origin-type": "Uint32"
                  },
                  "seconds": {
                    "description": "The seconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC.",
                    "format": "uint32",
                    "type": "integer",
                    "x-etsi-mec-cardinality": "1",
                    "x-etsi-mec-origin-type": "Uint32"
                  }
                },
                "required": [
                  "seconds",
                  "nanoSeconds"
                ],
                "type": "object",
                "x-etsi-ref": "6.5.2"
              },
              "locationInfo": {
                "properties": {
                  "accuracy": {
                    "description": "Horizontal accuracy/(semi-major) uncertainty of location provided in meters, as defined in [14]. Present only if \"shape\" equals 4, 5 or 6.",
                    "type": "integer",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "UnsignedInt"
                  },
                  "accuracyAltitude": {
                    "description": "Altitude accuracy/uncertainty of location provided in meters, as defined in [14]. Present only if \"shape\" equals 3 or 4.",
                    "type": "integer",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "UnsignedInt"
                  },
                  "accuracySemiMinor": {
                    "description": "Horizontal accuracy/(semi-major) uncertainty of location provided in meters, as defined in [14]. Present only if \"shape\" equals 4, 5 or 6.",
                    "type": "integer",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "UnsignedInt"
                  },
                  "altitude": {
                    "description": "Location altitude relative to the WGS84 ellipsoid surface.",
                    "format": "float",
                    "type": "number",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "Float"
                  },
                  "confidence": {
                    "description": "Confidence by which the position of a target entity is known to be within the shape description, expressed as a percentage and defined in [14]. Present only if \"shape\" equals 1, 4 or 6.",
                    "type": "integer",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "UnsignedInt"
                  },
                  "includedAngle": {
                    "description": "Present only if \"shape\" equals 6.",
                    "type": "integer",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "UnsignedInt"
                  },
                  "innerRadius": {
                    "description": "Present only if \"shape\" equals 6.",
                    "type": "integer",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "UnsignedInt"
                  },
                  "latitude": {
                    "description": "Location latitude, expressed in the range -90° to +90°. Cardinality greater than one only if \"shape\" equals 7.",
                    "format": "float",
                    "items": {
                      "type": "number"
                    },
                    "minItems": 1,
                    "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.",
                    "format": "float",
                    "items": {
                      "type": "number"
                    },
                    "minItems": 1,
                    "type": "array",
                    "x-etsi-mec-cardinality": "1..N",
                    "x-etsi-mec-origin-type": "Float"
                  },
                  "offsetAngle": {
                    "description": "Present only if \"shape\" equals 6.",
                    "type": "integer",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "UnsignedInt"
                  },
                  "orientationMajorAxis": {
                    "description": "Angle of orientation of the major axis, expressed in the range 0° to 180°, as defined in [14]. Present only if \"shape\" equals 4 or 6.",
                    "type": "integer",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "UnsignedInt"
                  },
                  "shape": {
                    "description": "Shape information, as detailed in [14], associated with the reported location coordinate: 1 = Ellipsoid_Arc 2 = ellipsoid_Point 3 = ellipsoid_Point_Altitude 4 = ellipsoid_Point_Altitude_Uncert_Ellipsoid 5 = ellipsoid_Point_Uncert_Circle 6 = ellipsoid_Point_Uncert_Ellipse 7 = polygon",
                    "enum": [
                      1,
                      2,
                      3,
                      4,
                      5,
                      6,
                      7
                    ],
                    "type": "integer",
                    "x-etsi-mec-cardinality": "1",
                    "x-etsi-mec-origin-type": "Enum_inlined"
                  },
                  "uncertaintyRadius": {
                    "description": "Present only if \"shape\" equals 6.",
                    "type": "integer",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "UnsignedInt"
                  },
                  "velocity": {
                    "description": "Structure with attributes relating to the target entity’s velocity, as defined in [14].",
                    "properties": {
                      "bearing": {
                        "description": "Bearing, expressed in the range 0° to 360°, as defined in [14].",
                        "type": "integer",
                        "x-etsi-mec-cardinality": "1",
                        "x-etsi-mec-origin-type": "UnsignedInt"
                      },
                      "horizontalSpeed": {
                        "description": "Horizontal speed, expressed in km/h and defined in [14].",
                        "type": "integer",
                        "x-etsi-mec-cardinality": "1",
                        "x-etsi-mec-origin-type": "UnsignedInt"
                      },
                      "uncertainty": {
                        "description": "Horizontal uncertainty, as defined in [14]. Present only if \"velocityType\" equals 3 or 4.",
                        "type": "integer",
                        "x-etsi-mec-cardinality": "0..1",
                        "x-etsi-mec-origin-type": "UnsignedInt"
                      },
                      "velocityType": {
                        "description": "Velocity information, as detailed in [14], associated with the reported location coordinate: 1 = Horizontal 2 = Horizontal_Vertical 3 = Horizontal_Uncert 4 = Horizontal_Vertical_Uncert",
                        "enum": [
                          1,
                          2,
                          3,
                          4
                        ],
                        "type": "integer",
                        "x-etsi-mec-cardinality": "1",
                        "x-etsi-mec-origin-type": "Enum_inlined"
                      },
                      "verticalSpeed": {
                        "description": "Vertical speed, expressed in km/h and defined in [14]. Present only if \"velocityType\" equals 2 or 4.",
                        "type": "integer",
                        "x-etsi-mec-cardinality": "0..1",
                        "x-etsi-mec-origin-type": "Int"
                      },
                      "verticalUncertainty": {
                        "description": "Vertical uncertainty, as defined in [14]. Present only if \"velocityType\" equals 4.",
                        "type": "integer",
                        "x-etsi-mec-cardinality": "0..1",
                        "x-etsi-mec-origin-type": "UnsignedInt"
                      }
                    },
                    "required": [
                      "velocityType",
                      "bearing",
                      "horizontalSpeed"
                    ],
                    "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"
              },
              "civicInfo": {
                "description": "Indicates a Civic address",
                "type": "object",
                "required": [
                  "country"
                ],
                "properties": {
                  "country": {
                    "description": "The two-letter ISO 3166 country code in capital ASCII letters, e.g., DE or US",
                    "type": "string",
                    "x-etsi-mec-cardinality": 1,
                    "x-etsi-mec-origin-type": "String"
                  },
                  "A1": {
                    "description": "National subdivisions (state, canton, region, province, prefecture)",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "A2": {
                    "description": "County, parish, gun (JP), district (IN)",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "A3": {
                    "description": "City, township, shi (JP)",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "A4": {
                    "description": "City division, borough, city district, ward, chou (JP)",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "A5": {
                    "description": "Neighbourhood, block",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "A6": {
                    "description": "Group of streets below the neighbourhood level",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "PRD": {
                    "description": "Leading street direction",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "POD": {
                    "description": "Trailing street suffix",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "STS": {
                    "description": "Street suffix or type",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "HNO": {
                    "description": "House number",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "HNS": {
                    "description": "House number suffix",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "LMK": {
                    "description": "Landmark or vanity address",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "LOC": {
                    "description": "Additional location information",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "NAM": {
                    "description": "Name (residence and office occupant)",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "PC": {
                    "description": "Postal/zip code",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "BLD": {
                    "description": "Building (structure)",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "UNIT": {
                    "description": "Unit (apartment, suite)",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "FLR": {
                    "description": "Floor",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "ROOM": {
                    "description": "Room",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "PLC": {
                    "description": "Place-type",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "PCN": {
                    "description": "Postal community name",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "POBOX": {
                    "description": "Post office box (P.O. box)",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "ADDCODE": {
                    "description": "Additional code",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "SEAT": {
                    "description": "Seat (desk, cubicle, workstation)",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "RD": {
                    "description": "Primary road or street",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "RDSEC": {
                    "description": "Road clause",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "RDBR": {
                    "description": "Road branch",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "RDSUBBR": {
                    "description": "Road sub-branch",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "PRM": {
                    "description": "Road pre-modifier",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "POM": {
                    "description": "Road post-modifier",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "usageRules": {
                    "description": "When present, this IE shall carry the value of \"usagerules\" Element of the PIDL-LO XML document, with UTF-8 encoding.",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "method": {
                    "description": "When present, this IE shall contain the method token, carried by the \"method\" Element of the PIDLLO XML document.",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  },
                  "providedBy": {
                    "description": "When present, this IE shall carry the value of \"provided-by\" Element of the PIDL-LO XML document, with UTF-8 encoding.",
                    "type": "string",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "String"
                  }
                }
              },
              "ancillaryInfo": {
                "description": "Reserved for future use.",
                "type": "string",
                "x-etsi-mec-cardinality": "0..1",
                "x-etsi-mec-origin-type": "String"
              },
              "relativeLocationInfo": {
                "properties": {
                  "X": {
                    "description": "Indicates the value (in the unit of meters) on x-axis of the relative location in the Cartesian system. Positive value represents easting from origin.",
                    "format": "float",
                    "type": "number",
                    "x-etsi-mec-cardinality": "1",
                    "x-etsi-mec-origin-type": "Float"
                  },
                  "Y": {
                    "description": "Indicates the value (in the unit of meters) on y-axis of the relative location in the Cartesian system. Positive value represents northing from origin.",
                    "format": "float",
                    "type": "number",
                    "x-etsi-mec-cardinality": "1",
                    "x-etsi-mec-origin-type": "Float"
                  },
                  "Z": {
                    "description": "Indicates the value (in the unit of meters) on z-axis of the relative location in the Cartesian system for a 3DPoint. Positive value represents height above origin.",
                    "format": "float",
                    "type": "number",
                    "x-etsi-mec-cardinality": "0..1",
                    "x-etsi-mec-origin-type": "Float"
                  },
                  "mapInfo": {
                    "properties": {
                      "ancillaryMapInfo": {
                        "description": "Ancillary map information may be used to convert coordinates between different coordinate systems.",
                        "type": "object",
                        "x-etsi-mec-cardinality": "0..1",
                        "x-etsi-mec-origin-type": "Not_specified"
                      },
                      "mapId": {
                        "description": "Indicates the ID of the map. ",
                        "type": "string",
                        "x-etsi-mec-cardinality": "1",
                        "x-etsi-mec-origin-type": "String"
                      },
                      "origin": {
                        "description": "Indicates the location of the map origin in the local Cartesian coordinate system.",
                        "properties": {
                          "altitude": {
                            "description": "Location altitude relative to the WGS84 ellipsoid surface.",
                            "format": "float",
                            "type": "number",
                            "x-etsi-mec-cardinality": "0..1",
                            "x-etsi-mec-origin-type": "Float"
                          },
                          "latitude": {
                            "description": "Location latitude, expressed in the range -90° to +90°.",
                            "format": "float",
                            "type": "number",
                            "x-etsi-mec-cardinality": "1",
                            "x-etsi-mec-origin-type": "Float"
                          },
                          "longitude": {
                            "description": "Location longitude, expressed in the range -180° to +180°.",
                            "format": "float",
                            "type": "number",
                            "x-etsi-mec-cardinality": "1",
                            "x-etsi-mec-origin-type": "Float"
                          }
                        },
                        "required": [
                          "latitude",
                          "longitude"
                        ],
                        "type": "object",
                        "x-etsi-mec-cardinality": "0..1",
                        "x-etsi-mec-origin-type": "Structure(inlined)"
                      }
                    },
                    "required": [
                      "mapId"
                    ],
                    "type": "object",
                    "x-etsi-ref": "6.2.4"
                  }
                },
                "required": [
                  "mapInfo",
                  "X",
                  "Y"
                ],
                "type": "object",
                "x-etsi-ref": "6.2.3"
              }
            }
          },
          "type": "array",
          "x-etsi-mec-cardinality": "0..N",
          "x-etsi-mec-origin-type": "UserInfo"
        }
      },
      "required": [
        "resourceURL"
      ],
      "type": "object"
    },
    "notificationType": {
      "description": "Shall be set to \"UserDistanceNotification\".",
      "type": "string",
      "x-etsi-mec-cardinality": "1",
      "x-etsi-mec-origin-type": "String"
    },
    "timeStamp": {
      "properties": {
        "nanoSeconds": {
          "description": "The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC.",
          "format": "uint32",
          "type": "integer",
          "x-etsi-mec-cardinality": "1",
          "x-etsi-mec-origin-type": "Uint32"
        },
        "seconds": {
          "description": "The seconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC.",
          "format": "uint32",
          "type": "integer",
          "x-etsi-mec-cardinality": "1",
          "x-etsi-mec-origin-type": "Uint32"
        }
      },
      "required": [
        "seconds",
        "nanoSeconds"
      ],
      "type": "object",
      "x-etsi-ref": "6.5.2"
    }
  },
  "required": [
    "notificationType",
    "monitoredUsers",
    "distanceEvent",
    "_links"
  ],
  "type": "object",
  "x-etsi-notes": "NOTE:\tAs specified in [6], clause 5.2.3.2.",
  "x-etsi-ref": "6.4.9"
}