{ "$schema":                                  "https://json-schema.org/draft/2020-12/schema",
  "$id":                                      "https://schemas.mpai.community/OSD/V1.5/data/RADARObject.json",
  "title":                                    "RADAR Object V1.5", 
  "type":                                     "object", 
  "required":                                 [ "Header", "RADARObjectID", "RADARObjectSpaceTime" ], 
  "additionalProperties":                     false, 
  "properties":                               {

    "Header":                                 { "type": "string", "pattern": "^OSD-RAO-V[0-9]{1,2}[.][0-9]{1,2}$" },
    "MInstanceID":                            { "type": "string" },
    "UEnvironmentID":                         { "type": "string" },
    "RADARObjectID":                          { "type": "string" },

    "RADARObjectSpaceTime":                   { "$ref": "https://schemas.mpai.community/OSD/V1.5/data/SpaceTime.json" },

    "BasicRADARObjectCount":                  { "type": "integer", "minimum": 0 },

    "BasicRADARObjects":                      { "type": "array", "items": { "type": "object",
                                                "required": [ "BasicRADARObjectIDOrBasicRADARObject" ],
                                                "additionalProperties": false, "properties": {

      "BasicRADARObjectSpaceTime":            { "$ref": "https://schemas.mpai.community/OSD/V1.5/data/SpaceTime.json" },
      "BasicRADARObjectIDOrBasicRADARObject": { "$ref": "#/$defs/BasicRADARObjectIDOrBasicRADARObject" } } } },

    "SubRADARObjectCount":                    { "type": "integer", "minimum": 0 },

    "SubRADARObjects":                        { "type": "array", "items": { "type": "object",
                                                "required": [ "SubRADARObjectIDOrSubRADARObject" ],
                                                "additionalProperties": false, "properties": {

      "SubRADARObjectSpaceTime":              { "$ref": "https://schemas.mpai.community/OSD/V1.5/data/SpaceTime.json" },
      "SubRADARObjectIDOrSubRADARObject":     { "$ref": "#/$defs/SubRADARObjectIDOrSubRADARObject" } } } },

    "BasicRADARObjectOrRADARObject":          { "$ref": "#/$defs/BasicRADARObjectOrRADARObject" },

    "DataXMData":                             { "$ref": "https://schemas.mpai.community/PTF/V1.0/data/DataExchangeMetadata.json" },
    "DescrMetadata":                          { "type": "string", "maxLength": 2048 } },

  "$defs":                                    {

    "BasicRADARObjectOrRADARObject":          { "type": "array", "items": { "oneOf": [
                                                { "$ref": "https://schemas.mpai.community/OSD/V1.5/data/BasicRADARObject.json" },
                                                { "$ref": "#/$defs/BasicRADARObjectOrRADARObject" } ] } },

    "BasicRADARObjectIDOrBasicRADARObject":   { "type": "array", "minItems": 1, "maxItems": 1, "items": { "oneOf": [
                                                { "$ref": "https://schemas.mpai.community/OSD/V1.5/data/BasicRADARObject.json" },
                                                { "type": "string" } ] } },

    "SubRADARObjectIDOrSubRADARObject":       { "type": "array", "minItems": 1, "maxItems": 1, "items": { "oneOf": [
                                                { "$ref": "https://schemas.mpai.community/OSD/V1.5/data/RADARObject.json" },
                                                { "type": "string" } ] } } } }