{
    "properties": {
        "_links": {
            "description": "Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests.",
            "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-mec-cardinality": "0..1",
            "x-etsi-mec-origin-type": "Structure (inlined)"
        },
        "address": {
            "description": "Address of user (e.g. ‘sip’ URI, ‘tel’ URI, ‘acr’ URI).",
            "format": "uri",
            "type": "string",
            "x-etsi-mec-cardinality": "1",
            "x-etsi-mec-origin-type": "Uri"
        },
        "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"
                }
            }
        },
        "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"
        },
        "notificationType": {
            "description": "Shall be set to \"UserAreaNotification\".",
            "type": "string",
            "x-etsi-mec-cardinality": "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"
        },
        "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"
        },
        "userLocationEvent": {
            "description": "This type represents specified event types for UE location report.",
            "enum": [
                "ENTERING_AREA_EVENT",
                "LEAVING_AREA_EVENT"
            ],
            "type": "string"
        }
    },
    "required": [
        "notificationType",
        "address",
        "userLocationEvent",
        "_links"
    ],
    "type": "object",
    "x-etsi-notes": "NOTE 1:\tAs specified in [17], clause 6.1.6.2.14.\nNOTE 2:\tAt least one of these attributes shall be present only when reportingLocationReq is set to TRUE in the UserAreaSubscription.",
    "x-etsi-ref": "6.4.8"
}