diff --git a/schemas/monitoring/monitorlib/fetch/RequestDescription.json b/schemas/monitoring/monitorlib/fetch/RequestDescription.json index 6b96254576..167ef825a4 100644 --- a/schemas/monitoring/monitorlib/fetch/RequestDescription.json +++ b/schemas/monitoring/monitorlib/fetch/RequestDescription.json @@ -1,28 +1,28 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/monitorlib/fetch/RequestDescription.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "monitoring.monitorlib.fetch.RequestDescription, as defined in monitoring/monitorlib/fetch/__init__.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, - "initiated_at": { + "body": { "type": [ "string", "null" - ], - "format": "date-time" + ] }, - "received_at": { + "headers": { "type": [ - "string", + "object", "null" - ], - "format": "date-time" + ] }, - "headers": { + "initiated_at": { + "format": "date-time", "type": [ - "object", + "string", "null" ] }, @@ -35,20 +35,20 @@ "method": { "type": "string" }, - "url": { - "type": "string" - }, - "body": { + "received_at": { + "format": "date-time", "type": [ "string", "null" ] + }, + "url": { + "type": "string" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/monitorlib/fetch/RequestDescription.json", - "description": "monitoring.monitorlib.fetch.RequestDescription, as defined in monitoring/monitorlib/fetch/__init__.py", "required": [ "method", "url" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/monitorlib/fetch/ResponseDescription.json b/schemas/monitoring/monitorlib/fetch/ResponseDescription.json index b141547224..34afcab1f0 100644 --- a/schemas/monitoring/monitorlib/fetch/ResponseDescription.json +++ b/schemas/monitoring/monitorlib/fetch/ResponseDescription.json @@ -1,10 +1,17 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/monitorlib/fetch/ResponseDescription.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "monitoring.monitorlib.fetch.ResponseDescription, as defined in monitoring/monitorlib/fetch/__init__.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "body": { + "type": [ + "string", + "null" + ] }, "code": { "type": [ @@ -12,6 +19,9 @@ "null" ] }, + "elapsed_s": { + "type": "number" + }, "failure": { "type": [ "string", @@ -30,24 +40,14 @@ "null" ] }, - "elapsed_s": { - "type": "number" - }, - "body": { - "type": [ - "string", - "null" - ] - }, "reported": { - "type": "string", - "format": "date-time" + "format": "date-time", + "type": "string" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/monitorlib/fetch/ResponseDescription.json", - "description": "monitoring.monitorlib.fetch.ResponseDescription, as defined in monitoring/monitorlib/fetch/__init__.py", "required": [ "elapsed_s", "reported" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/monitorlib/geo/LatLngBoundingBox.json b/schemas/monitoring/monitorlib/geo/LatLngBoundingBox.json deleted file mode 100644 index da84055d29..0000000000 --- a/schemas/monitoring/monitorlib/geo/LatLngBoundingBox.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/monitorlib/geo/LatLngBoundingBox.json", - "$schema": "https://json-schema.org/draft/2020-12/schema", - "description": "Bounding box in latitude and longitude\n\nmonitoring.monitorlib.geo.LatLngBoundingBox, as defined in monitoring/monitorlib/geo.py", - "properties": { - "$ref": { - "description": "Path to content that replaces the $ref", - "type": "string" - }, - "lat_max": { - "description": "Upper latitude bound (degrees)", - "type": "number" - }, - "lat_min": { - "description": "Lower latitude bound (degrees)", - "type": "number" - }, - "lng_max": { - "description": "Upper longitude bound (degrees)", - "type": "number" - }, - "lng_min": { - "description": "Lower longitude bound (degrees)", - "type": "number" - } - }, - "required": [ - "lat_max", - "lat_min", - "lng_max", - "lng_min" - ], - "type": "object" -} \ No newline at end of file diff --git a/schemas/monitoring/monitorlib/geo/Volume3D.json b/schemas/monitoring/monitorlib/geo/Volume3D.json deleted file mode 100644 index abbbc30120..0000000000 --- a/schemas/monitoring/monitorlib/geo/Volume3D.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/monitorlib/geo/Volume3D.json", - "$schema": "https://json-schema.org/draft/2020-12/schema", - "description": "monitoring.monitorlib.geo.Volume3D, as defined in monitoring/monitorlib/geo.py", - "properties": { - "$ref": { - "description": "Path to content that replaces the $ref", - "type": "string" - }, - "altitude_lower": { - "oneOf": [ - { - "type": "null" - }, - { - "$ref": "Altitude.json" - } - ] - }, - "altitude_upper": { - "oneOf": [ - { - "type": "null" - }, - { - "$ref": "Altitude.json" - } - ] - }, - "outline_circle": { - "oneOf": [ - { - "type": "null" - }, - { - "$ref": "Circle.json" - } - ] - }, - "outline_polygon": { - "oneOf": [ - { - "type": "null" - }, - { - "$ref": "Polygon.json" - } - ] - } - }, - "type": "object" -} \ No newline at end of file diff --git a/schemas/monitoring/monitorlib/geotemporal/NextDay.json b/schemas/monitoring/monitorlib/geotemporal/NextDay.json new file mode 100644 index 0000000000..c7dcf08b96 --- /dev/null +++ b/schemas/monitoring/monitorlib/geotemporal/NextDay.json @@ -0,0 +1,43 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/monitorlib/geotemporal/NextDay.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.monitorlib.geotemporal.NextDay, as defined in monitoring/monitorlib/geotemporal.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "days_of_the_week": { + "description": "Acceptable days of the week. Omit to indicate that any day of the week is acceptable.", + "items": { + "enum": [ + "Mo", + "Tu", + "We", + "Th", + "Fr", + "Sa", + "Su" + ], + "type": "string" + }, + "type": [ + "array", + "null" + ] + }, + "starting_from": { + "$ref": "TestTime.json", + "description": "The time after which the first instance of one of the days should be found." + }, + "time_zone": { + "description": "Time zone in which \"day\" is understood. Examples:\n * \"local\" (local time of machine running this code)\n * \"Z\" (Zulu time)\n * \"-08:00\" (ISO time zone)\n * \"US/Pacific\" (IANA time zone)", + "type": "string" + } + }, + "required": [ + "starting_from", + "time_zone" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/monitorlib/geotemporal/NextSunPosition.json b/schemas/monitoring/monitorlib/geotemporal/NextSunPosition.json new file mode 100644 index 0000000000..23ec5b041b --- /dev/null +++ b/schemas/monitoring/monitorlib/geotemporal/NextSunPosition.json @@ -0,0 +1,29 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/monitorlib/geotemporal/NextSunPosition.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.monitorlib.geotemporal.NextSunPosition, as defined in monitoring/monitorlib/geotemporal.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "elevation_deg": { + "description": "Elevation of the center of the sun above horizontal, in degrees.", + "type": "number" + }, + "observed_from": { + "$ref": "../geo/LatLngPoint.json", + "description": "The location on earth observing the sun." + }, + "starting_from": { + "$ref": "TestTime.json", + "description": "The time after which the first time the sun is at the specified position should be found." + } + }, + "required": [ + "elevation_deg", + "observed_from", + "starting_from" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/monitorlib/geotemporal/OffsetTime.json b/schemas/monitoring/monitorlib/geotemporal/OffsetTime.json new file mode 100644 index 0000000000..8ffef9f9b9 --- /dev/null +++ b/schemas/monitoring/monitorlib/geotemporal/OffsetTime.json @@ -0,0 +1,25 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/monitorlib/geotemporal/OffsetTime.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.monitorlib.geotemporal.OffsetTime, as defined in monitoring/monitorlib/geotemporal.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "offset": { + "description": "Offset from starting time.", + "format": "duration", + "type": "string" + }, + "starting_from": { + "$ref": "TestTime.json", + "description": "The time from which the offset should be applied." + } + }, + "required": [ + "offset", + "starting_from" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/monitorlib/geotemporal/TestTime.json b/schemas/monitoring/monitorlib/geotemporal/TestTime.json new file mode 100644 index 0000000000..a88291be01 --- /dev/null +++ b/schemas/monitoring/monitorlib/geotemporal/TestTime.json @@ -0,0 +1,67 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/monitorlib/geotemporal/TestTime.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "Exactly one of the time option fields of this object must be specified.\n\nmonitoring.monitorlib.geotemporal.TestTime, as defined in monitoring/monitorlib/geotemporal.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "absolute_time": { + "description": "Time option field to use a precise timestamp which does not change with test conditions.\n\nThe value of absolute_time is limited given that the specific time a test will be started is unknown, and the jurisdictions usually impose a limit on how far in the future an operation can be planned.", + "format": "date-time", + "type": [ + "string", + "null" + ] + }, + "next_day": { + "description": "Time option field to use a timestamp equal to midnight beginning the next occurrence of any matching day following the specified reference timestamp.", + "oneOf": [ + { + "type": "null" + }, + { + "$ref": "NextDay.json" + } + ] + }, + "next_sun_position": { + "description": "Time option field to use a timestamp equal to the next time after the specified reference timestamp at which the sun will be at the specified angle above the horizon.", + "oneOf": [ + { + "type": "null" + }, + { + "$ref": "NextSunPosition.json" + } + ] + }, + "offset_from": { + "description": "Time option field to use a timestamp that is offset by the specified amount from the specified time.", + "oneOf": [ + { + "type": "null" + }, + { + "$ref": "OffsetTime.json" + } + ] + }, + "start_of_test": { + "description": "Time option field to, if specified, use the timestamp at which the current test run started.", + "type": [ + "object", + "null" + ] + }, + "use_timezone": { + "description": "If specified, report the timestamp in the specified time zone. Examples:\n * \"local\" (local time of machine running this code)\n * \"Z\" (Zulu time)\n * \"-08:00\" (ISO time zone)\n * \"US/Pacific\" (IANA time zone)", + "type": [ + "string", + "null" + ] + } + }, + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/monitorlib/geotemporal/Volume4DTemplate.json b/schemas/monitoring/monitorlib/geotemporal/Volume4DTemplate.json new file mode 100644 index 0000000000..bbf22ce12c --- /dev/null +++ b/schemas/monitoring/monitorlib/geotemporal/Volume4DTemplate.json @@ -0,0 +1,86 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/monitorlib/geotemporal/Volume4DTemplate.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.monitorlib.geotemporal.Volume4DTemplate, as defined in monitoring/monitorlib/geotemporal.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "altitude_lower": { + "description": "The minimum altitude at which the virtual user will fly while using this volume for their flight.", + "oneOf": [ + { + "type": "null" + }, + { + "$ref": "../geo/Altitude.json" + } + ] + }, + "altitude_upper": { + "description": "The maximum altitude at which the virtual user will fly while using this volume for their flight.", + "oneOf": [ + { + "type": "null" + }, + { + "$ref": "../geo/Altitude.json" + } + ] + }, + "duration": { + "description": "If only one of start_time and end_time is specified, then the other time should be separated from the specified time by this amount. May not be defined in both start_time and end_time are defined.", + "format": "duration", + "type": [ + "string", + "null" + ] + }, + "end_time": { + "description": "The time at which the virtual user will be finished using the specified geospatial area for their flight. May not be defined if duration and start_time are defined.", + "oneOf": [ + { + "type": "null" + }, + { + "$ref": "TestTime.json" + } + ] + }, + "outline_circle": { + "description": "Circular outline/footprint of the specified area. May not be defined if outline_polygon is defined.", + "oneOf": [ + { + "type": "null" + }, + { + "$ref": "../geo/Circle.json" + } + ] + }, + "outline_polygon": { + "description": "Polygonal 2D outline/footprint of the specified area. May not be defined if outline_circle is defined.", + "oneOf": [ + { + "type": "null" + }, + { + "$ref": "../../../uas_standards/astm/f3411/v22a/api/Polygon.json" + } + ] + }, + "start_time": { + "description": "The time at which the virtual user may start using the specified geospatial area for their flight. May not be defined if duration and end_time are defined.", + "oneOf": [ + { + "type": "null" + }, + { + "$ref": "TestTime.json" + } + ] + } + }, + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/action_generators/astm/f3411/for_each_dss/ForEachDSSSpecification.json b/schemas/monitoring/uss_qualifier/action_generators/astm/f3411/for_each_dss/ForEachDSSSpecification.json new file mode 100644 index 0000000000..026f9e185d --- /dev/null +++ b/schemas/monitoring/uss_qualifier/action_generators/astm/f3411/for_each_dss/ForEachDSSSpecification.json @@ -0,0 +1,29 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/action_generators/astm/f3411/for_each_dss/ForEachDSSSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.action_generators.astm.f3411.for_each_dss.ForEachDSSSpecification, as defined in monitoring/uss_qualifier/action_generators/astm/f3411/for_each_dss.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "action_to_repeat": { + "$ref": "../../../../suites/definitions/TestSuiteActionDeclaration.json", + "description": "Test suite action to run for each DSS instance" + }, + "dss_instance_id": { + "description": "Resource IDs of DSS input to the action_to_repeat", + "type": "string" + }, + "dss_instances_source": { + "description": "ID of the resource providing the single DSS instance", + "type": "string" + } + }, + "required": [ + "action_to_repeat", + "dss_instance_id", + "dss_instances_source" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/action_generators/astm/f3548/for_each_dss/ForEachDSSSpecification.json b/schemas/monitoring/uss_qualifier/action_generators/astm/f3548/for_each_dss/ForEachDSSSpecification.json new file mode 100644 index 0000000000..3cb25f3b8e --- /dev/null +++ b/schemas/monitoring/uss_qualifier/action_generators/astm/f3548/for_each_dss/ForEachDSSSpecification.json @@ -0,0 +1,29 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/action_generators/astm/f3548/for_each_dss/ForEachDSSSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.action_generators.astm.f3548.for_each_dss.ForEachDSSSpecification, as defined in monitoring/uss_qualifier/action_generators/astm/f3548/for_each_dss.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "action_to_repeat": { + "$ref": "../../../../suites/definitions/TestSuiteActionDeclaration.json", + "description": "Test suite action to run for each DSS instance" + }, + "dss_instance_id": { + "description": "Resource IDs of DSS input to the action_to_repeat", + "type": "string" + }, + "dss_instances_source": { + "description": "ID of the resource providing the single DSS instance", + "type": "string" + } + }, + "required": [ + "action_to_repeat", + "dss_instance_id", + "dss_instances_source" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/action_generators/flight_planning/planner_combinations/FlightPlannerCombinationsSpecification.json b/schemas/monitoring/uss_qualifier/action_generators/flight_planning/planner_combinations/FlightPlannerCombinationsSpecification.json new file mode 100644 index 0000000000..233f95616f --- /dev/null +++ b/schemas/monitoring/uss_qualifier/action_generators/flight_planning/planner_combinations/FlightPlannerCombinationsSpecification.json @@ -0,0 +1,39 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/action_generators/flight_planning/planner_combinations/FlightPlannerCombinationsSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.action_generators.flight_planning.planner_combinations.FlightPlannerCombinationsSpecification, as defined in monitoring/uss_qualifier/action_generators/flight_planning/planner_combinations.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "action_to_repeat": { + "$ref": "../../../suites/definitions/TestSuiteActionDeclaration.json", + "description": "Test suite action to run for each combination of flight planners" + }, + "combination_selector_source": { + "description": "If specified and contained in the provided resources, the resource containing a FlightPlannerCombinationSelectorResource to select only a subset of combinations", + "type": [ + "string", + "null" + ] + }, + "flight_planners_source": { + "description": "ID of the resource providing all available flight planners", + "type": "string" + }, + "roles": { + "description": "Resource IDs of FlightPlannerResource inputs to the action_to_repeat", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "action_to_repeat", + "flight_planners_source", + "roles" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/action_generators/interuss/mock_uss/with_locality/WithLocalitySpecification.json b/schemas/monitoring/uss_qualifier/action_generators/interuss/mock_uss/with_locality/WithLocalitySpecification.json new file mode 100644 index 0000000000..9e384537c0 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/action_generators/interuss/mock_uss/with_locality/WithLocalitySpecification.json @@ -0,0 +1,29 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/action_generators/interuss/mock_uss/with_locality/WithLocalitySpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.action_generators.interuss.mock_uss.with_locality.WithLocalitySpecification, as defined in monitoring/uss_qualifier/action_generators/interuss/mock_uss/with_locality.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "action_to_wrap": { + "$ref": "../../../../suites/definitions/TestSuiteActionDeclaration.json", + "description": "Test suite action to perform after setting mock_uss localities" + }, + "locality_source": { + "description": "ID of the resource providing the locality to use temporarily for the provided mock_uss instances", + "type": "string" + }, + "mock_uss_instances_source": { + "description": "ID of the resource providing all mock_uss instances to change the locality of", + "type": "string" + } + }, + "required": [ + "action_to_wrap", + "locality_source", + "mock_uss_instances_source" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/action_generators/repetition/repeat/RepeatSpecification.json b/schemas/monitoring/uss_qualifier/action_generators/repetition/repeat/RepeatSpecification.json new file mode 100644 index 0000000000..7e7896330b --- /dev/null +++ b/schemas/monitoring/uss_qualifier/action_generators/repetition/repeat/RepeatSpecification.json @@ -0,0 +1,24 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/action_generators/repetition/repeat/RepeatSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.action_generators.repetition.repeat.RepeatSpecification, as defined in monitoring/uss_qualifier/action_generators/repetition/repeat.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "action_to_repeat": { + "$ref": "../../../suites/definitions/TestSuiteActionDeclaration.json", + "description": "Test suite action to repeat" + }, + "times_to_repeat": { + "description": "Number of times to repeat the test suite action declared above", + "type": "integer" + } + }, + "required": [ + "action_to_repeat", + "times_to_repeat" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/configurations/configuration/GraphConfiguration.json b/schemas/monitoring/uss_qualifier/configurations/configuration/GraphConfiguration.json index 0235cb737a..715d83454a 100644 --- a/schemas/monitoring/uss_qualifier/configurations/configuration/GraphConfiguration.json +++ b/schemas/monitoring/uss_qualifier/configurations/configuration/GraphConfiguration.json @@ -1,19 +1,19 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/configurations/configuration/GraphConfiguration.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "monitoring.uss_qualifier.configurations.configuration.GraphConfiguration, as defined in monitoring/uss_qualifier/configurations/configuration.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, "gv_path": { - "type": "string", - "description": "Path of GraphViz (.gv) text file to contain a visualization of the test run" + "description": "Path of GraphViz (.gv) text file to contain a visualization of the test run", + "type": "string" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/configurations/configuration/GraphConfiguration.json", - "description": "monitoring.uss_qualifier.configurations.configuration.GraphConfiguration, as defined in monitoring/uss_qualifier/configurations/configuration.py", "required": [ "gv_path" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/configurations/configuration/USSQualifierConfiguration.json b/schemas/monitoring/uss_qualifier/configurations/configuration/USSQualifierConfiguration.json index 31a9b4a767..295ed9c4ee 100644 --- a/schemas/monitoring/uss_qualifier/configurations/configuration/USSQualifierConfiguration.json +++ b/schemas/monitoring/uss_qualifier/configurations/configuration/USSQualifierConfiguration.json @@ -1,12 +1,14 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/configurations/configuration/USSQualifierConfiguration.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "monitoring.uss_qualifier.configurations.configuration.USSQualifierConfiguration, as defined in monitoring/uss_qualifier/configurations/configuration.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, "v1": { + "description": "Configuration in version 1 format", "oneOf": [ { "type": "null" @@ -14,10 +16,8 @@ { "$ref": "USSQualifierConfigurationV1.json" } - ], - "description": "Configuration in version 1 format" + ] } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/configurations/configuration/USSQualifierConfiguration.json", - "description": "monitoring.uss_qualifier.configurations.configuration.USSQualifierConfiguration, as defined in monitoring/uss_qualifier/configurations/configuration.py" + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/capability_definitions/AllConditions.json b/schemas/monitoring/uss_qualifier/reports/capability_definitions/AllConditions.json index 80545cbcdf..2ef50616d5 100644 --- a/schemas/monitoring/uss_qualifier/reports/capability_definitions/AllConditions.json +++ b/schemas/monitoring/uss_qualifier/reports/capability_definitions/AllConditions.json @@ -1,21 +1,21 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/capability_definitions/AllConditions.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "Condition will only be satisfied when all specified conditions are satisfied.\n\nNote that an empty list of conditions will result in a successful evaluation.\n\nmonitoring.uss_qualifier.reports.capability_definitions.AllConditions, as defined in monitoring/uss_qualifier/reports/capability_definitions.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, "conditions": { - "type": "array", "items": { "$ref": "CapabilityVerificationCondition.json" - } + }, + "type": "array" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/capability_definitions/AllConditions.json", - "description": "Condition will only be satisfied when all specified conditions are satisfied.\n\nNote that an empty list of conditions will result in a successful evaluation.\n\nmonitoring.uss_qualifier.reports.capability_definitions.AllConditions, as defined in monitoring/uss_qualifier/reports/capability_definitions.py", "required": [ "conditions" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/capability_definitions/AnyCondition.json b/schemas/monitoring/uss_qualifier/reports/capability_definitions/AnyCondition.json index c2c00bdd9b..9a6a00eea3 100644 --- a/schemas/monitoring/uss_qualifier/reports/capability_definitions/AnyCondition.json +++ b/schemas/monitoring/uss_qualifier/reports/capability_definitions/AnyCondition.json @@ -1,21 +1,21 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/capability_definitions/AnyCondition.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "Condition will be satisfied when any of the specified conditions are satisfied.\n\nNote that an empty list of conditions will result in an unsuccessful evaluation.\n\nmonitoring.uss_qualifier.reports.capability_definitions.AnyCondition, as defined in monitoring/uss_qualifier/reports/capability_definitions.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, "conditions": { - "type": "array", "items": { "$ref": "CapabilityVerificationCondition.json" - } + }, + "type": "array" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/capability_definitions/AnyCondition.json", - "description": "Condition will be satisfied when any of the specified conditions are satisfied.\n\nNote that an empty list of conditions will result in an unsuccessful evaluation.\n\nmonitoring.uss_qualifier.reports.capability_definitions.AnyCondition, as defined in monitoring/uss_qualifier/reports/capability_definitions.py", "required": [ "conditions" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/capability_definitions/CapabilityVerificationCondition.json b/schemas/monitoring/uss_qualifier/reports/capability_definitions/CapabilityVerificationCondition.json index 1aee4dc145..8f8fd2200b 100644 --- a/schemas/monitoring/uss_qualifier/reports/capability_definitions/CapabilityVerificationCondition.json +++ b/schemas/monitoring/uss_qualifier/reports/capability_definitions/CapabilityVerificationCondition.json @@ -1,18 +1,19 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/capability_definitions/CapabilityVerificationCondition.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "Specification of a single condition used to determine whether a capability should be verified.\n\nExactly one field must be specified.\n\nmonitoring.uss_qualifier.reports.capability_definitions.CapabilityVerificationCondition, as defined in monitoring/uss_qualifier/reports/capability_definitions.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, - "no_failed_checks": { + "all_conditions": { "oneOf": [ { "type": "null" }, { - "$ref": "NoFailedChecksCondition.json" + "$ref": "AllConditions.json" } ] }, @@ -26,37 +27,36 @@ } ] }, - "requirements_checked": { + "capability_verified": { "oneOf": [ { "type": "null" }, { - "$ref": "RequirementsCheckedCondition.json" + "$ref": "CapabilityVerifiedCondition.json" } ] }, - "all_conditions": { + "no_failed_checks": { "oneOf": [ { "type": "null" }, { - "$ref": "AllConditions.json" + "$ref": "NoFailedChecksCondition.json" } ] }, - "capability_verified": { + "requirements_checked": { "oneOf": [ { "type": "null" }, { - "$ref": "CapabilityVerifiedCondition.json" + "$ref": "RequirementsCheckedCondition.json" } ] } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/capability_definitions/CapabilityVerificationCondition.json", - "description": "Specification of a single condition used to determine whether a capability should be verified.\n\nExactly one field must be specified.\n\nmonitoring.uss_qualifier.reports.capability_definitions.CapabilityVerificationCondition, as defined in monitoring/uss_qualifier/reports/capability_definitions.py" + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/capability_definitions/CapabilityVerifiedCondition.json b/schemas/monitoring/uss_qualifier/reports/capability_definitions/CapabilityVerifiedCondition.json index 363f67ac1e..dbba84ca25 100644 --- a/schemas/monitoring/uss_qualifier/reports/capability_definitions/CapabilityVerifiedCondition.json +++ b/schemas/monitoring/uss_qualifier/reports/capability_definitions/CapabilityVerifiedCondition.json @@ -1,29 +1,29 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/capability_definitions/CapabilityVerifiedCondition.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "Condition will be satisfied when the specified capability is verified.\n\nNote that a capability which do not declare any requirement will result in an unsuccessful evaluation.\n\nmonitoring.uss_qualifier.reports.capability_definitions.CapabilityVerifiedCondition, as defined in monitoring/uss_qualifier/reports/capability_definitions.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" - }, - "capability_location": { - "type": [ - "string", - "null" - ], - "description": "Location of report to inspect for the verification of the specified capability, relative to the report in which\nthe capability is defined. Implicit default value is \"$\" (look for verified capability in the report in which the\ndependant capability is defined).\n\nIf this location resolves to multiple TestSuiteReports, then the capability must be verified in all resolved reports\nin order for this condition to be satisfied. When this location resolves to artifacts that are not\nTestSuiteReports, those artifacts will be ignored.\n\nNote that capabilities are verified in the order they are defined. So, if capability B defined in a particular\nlocation depends on whether capability A in that same location is granted, capability A must be defined before\ncapability B is defined. Also note that capability verifications are computed as test components are completed.\nSince a parent test component (e.g., test suite) is not complete until all of its child components are complete, a\ndescendant test component's capability condition cannot depend on whether an ancestor's (e.g., parent's) capability\nis verified." + "description": "Path to content that replaces the $ref", + "type": "string" }, "capability_ids": { - "type": "array", + "description": "List of identifier of capability that must be verified for this condition to be satisfied.", "items": { "type": "string" }, - "description": "List of identifier of capability that must be verified for this condition to be satisfied." + "type": "array" + }, + "capability_location": { + "description": "Location of report to inspect for the verification of the specified capability, relative to the report in which\nthe capability is defined. Implicit default value is \"$\" (look for verified capability in the report in which the\ndependant capability is defined).\n\nIf this location resolves to multiple TestSuiteReports, then the capability must be verified in all resolved reports\nin order for this condition to be satisfied. When this location resolves to artifacts that are not\nTestSuiteReports, those artifacts will be ignored.\n\nNote that capabilities are verified in the order they are defined. So, if capability B defined in a particular\nlocation depends on whether capability A in that same location is granted, capability A must be defined before\ncapability B is defined. Also note that capability verifications are computed as test components are completed.\nSince a parent test component (e.g., test suite) is not complete until all of its child components are complete, a\ndescendant test component's capability condition cannot depend on whether an ancestor's (e.g., parent's) capability\nis verified.", + "type": [ + "string", + "null" + ] } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/capability_definitions/CapabilityVerifiedCondition.json", - "description": "Condition will be satisfied when the specified capability is verified.\n\nNote that a capability which do not declare any requirement will result in an unsuccessful evaluation.\n\nmonitoring.uss_qualifier.reports.capability_definitions.CapabilityVerifiedCondition, as defined in monitoring/uss_qualifier/reports/capability_definitions.py", "required": [ "capability_ids" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/capability_definitions/NoFailedChecksCondition.json b/schemas/monitoring/uss_qualifier/reports/capability_definitions/NoFailedChecksCondition.json index ffce3f407f..ad16251e7a 100644 --- a/schemas/monitoring/uss_qualifier/reports/capability_definitions/NoFailedChecksCondition.json +++ b/schemas/monitoring/uss_qualifier/reports/capability_definitions/NoFailedChecksCondition.json @@ -1,12 +1,12 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/capability_definitions/NoFailedChecksCondition.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "Condition will only be satisfied if there are no applicable failed checks.\n\nFor a capability to be verified for a participant, only checks including the participant's ID will be considered.\n\nmonitoring.uss_qualifier.reports.capability_definitions.NoFailedChecksCondition, as defined in monitoring/uss_qualifier/reports/capability_definitions.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/capability_definitions/NoFailedChecksCondition.json", - "description": "Condition will only be satisfied if there are no applicable failed checks.\n\nFor a capability to be verified for a participant, only checks including the participant's ID will be considered.\n\nmonitoring.uss_qualifier.reports.capability_definitions.NoFailedChecksCondition, as defined in monitoring/uss_qualifier/reports/capability_definitions.py" + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/capability_definitions/ParticipantCapabilityDefinition.json b/schemas/monitoring/uss_qualifier/reports/capability_definitions/ParticipantCapabilityDefinition.json index 87d54d42ee..f8e1d0643c 100644 --- a/schemas/monitoring/uss_qualifier/reports/capability_definitions/ParticipantCapabilityDefinition.json +++ b/schemas/monitoring/uss_qualifier/reports/capability_definitions/ParticipantCapabilityDefinition.json @@ -1,34 +1,34 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/capability_definitions/ParticipantCapabilityDefinition.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "monitoring.uss_qualifier.reports.capability_definitions.ParticipantCapabilityDefinition, as defined in monitoring/uss_qualifier/reports/capability_definitions.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, "description": { - "type": "string", - "description": "Human-readable description of the capability." + "description": "Human-readable description of the capability.", + "type": "string" }, - "verification_condition": { - "$ref": "CapabilityVerificationCondition.json", - "description": "Condition required in order to verify the capability." + "id": { + "description": "Identifier of this capability, unique at the level in which this capability is defined.", + "type": "string" }, "name": { - "type": "string", - "description": "Human-readable name of the capability." + "description": "Human-readable name of the capability.", + "type": "string" }, - "id": { - "type": "string", - "description": "Identifier of this capability, unique at the level in which this capability is defined." + "verification_condition": { + "$ref": "CapabilityVerificationCondition.json", + "description": "Condition required in order to verify the capability." } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/capability_definitions/ParticipantCapabilityDefinition.json", - "description": "monitoring.uss_qualifier.reports.capability_definitions.ParticipantCapabilityDefinition, as defined in monitoring/uss_qualifier/reports/capability_definitions.py", "required": [ "description", "id", "name", "verification_condition" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/capability_definitions/RequirementsCheckedCondition.json b/schemas/monitoring/uss_qualifier/reports/capability_definitions/RequirementsCheckedCondition.json index e1b6cbb2ce..9f08ba19fd 100644 --- a/schemas/monitoring/uss_qualifier/reports/capability_definitions/RequirementsCheckedCondition.json +++ b/schemas/monitoring/uss_qualifier/reports/capability_definitions/RequirementsCheckedCondition.json @@ -1,19 +1,19 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/capability_definitions/RequirementsCheckedCondition.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "Condition will only be satisfied if at least one successful check exists for all specified requirements.\n\nNote that an empty collection of requirements will result in an unsuccessful evaluation.\n\nmonitoring.uss_qualifier.reports.capability_definitions.RequirementsCheckedCondition, as defined in monitoring/uss_qualifier/reports/capability_definitions.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, "checked": { "$ref": "../../requirements/definitions/RequirementCollection.json", "description": "Each requirement contained within this collection must be covered by at least one successful check." } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/capability_definitions/RequirementsCheckedCondition.json", - "description": "Condition will only be satisfied if at least one successful check exists for all specified requirements.\n\nNote that an empty collection of requirements will result in an unsuccessful evaluation.\n\nmonitoring.uss_qualifier.reports.capability_definitions.RequirementsCheckedCondition, as defined in monitoring/uss_qualifier/reports/capability_definitions.py", "required": [ "checked" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/capability_definitions/SpecificCondition.json b/schemas/monitoring/uss_qualifier/reports/capability_definitions/SpecificCondition.json deleted file mode 100644 index cbdd5e8c69..0000000000 --- a/schemas/monitoring/uss_qualifier/reports/capability_definitions/SpecificCondition.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", - "properties": { - "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" - } - }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/capability_definitions/SpecificCondition.json", - "description": "monitoring.uss_qualifier.reports.capability_definitions.SpecificCondition, as defined in monitoring/uss_qualifier/reports/capability_definitions.py" -} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/report/AllConditionsEvaluationReport.json b/schemas/monitoring/uss_qualifier/reports/report/AllConditionsEvaluationReport.json index 8add1360f2..f5532226bb 100644 --- a/schemas/monitoring/uss_qualifier/reports/report/AllConditionsEvaluationReport.json +++ b/schemas/monitoring/uss_qualifier/reports/report/AllConditionsEvaluationReport.json @@ -1,30 +1,30 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/AllConditionsEvaluationReport.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "Result of an evaluation of AllConditions determined by whether all the subconditions are satisfied.\n\nmonitoring.uss_qualifier.reports.report.AllConditionsEvaluationReport, as defined in monitoring/uss_qualifier/reports/report.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, "satisfied_conditions": { - "type": "array", + "description": "All of the conditions that were satisfied (there must be at least one).", "items": { "$ref": "ParticipantCapabilityConditionEvaluationReport.json" }, - "description": "All of the conditions that were satisfied (there must be at least one)." + "type": "array" }, "unsatisfied_conditions": { - "type": "array", + "description": "All of the conditions that were unsatisfied (if any, then this condition will not be satisfied).", "items": { "$ref": "ParticipantCapabilityConditionEvaluationReport.json" }, - "description": "All of the conditions that were unsatisfied (if any, then this condition will not be satisfied)." + "type": "array" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/AllConditionsEvaluationReport.json", - "description": "Result of an evaluation of AllConditions determined by whether all the subconditions are satisfied.\n\nmonitoring.uss_qualifier.reports.report.AllConditionsEvaluationReport, as defined in monitoring/uss_qualifier/reports/report.py", "required": [ "satisfied_conditions", "unsatisfied_conditions" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/report/AnyConditionEvaluationReport.json b/schemas/monitoring/uss_qualifier/reports/report/AnyConditionEvaluationReport.json index 839158a0d9..b665ee7a0c 100644 --- a/schemas/monitoring/uss_qualifier/reports/report/AnyConditionEvaluationReport.json +++ b/schemas/monitoring/uss_qualifier/reports/report/AnyConditionEvaluationReport.json @@ -1,30 +1,30 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/AnyConditionEvaluationReport.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "Result of an evaluation of AnyCondition determined by whether any of the subconditions are satisfied.\n\nmonitoring.uss_qualifier.reports.report.AnyConditionEvaluationReport, as defined in monitoring/uss_qualifier/reports/report.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, "satisfied_options": { - "type": "array", + "description": "Which of the specified options were satisfied (if any were satisfied, then this condition should be satisfied).", "items": { "$ref": "ParticipantCapabilityConditionEvaluationReport.json" }, - "description": "Which of the specified options were satisfied (if any were satisfied, then this condition should be satisfied)." + "type": "array" }, "unsatisfied_options": { - "type": "array", + "description": "Which of the specified options were not satisfied (these are informational only and do not affect the evaluation).", "items": { "$ref": "ParticipantCapabilityConditionEvaluationReport.json" }, - "description": "Which of the specified options were not satisfied (these are informational only and do not affect the evaluation)." + "type": "array" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/AnyConditionEvaluationReport.json", - "description": "Result of an evaluation of AnyCondition determined by whether any of the subconditions are satisfied.\n\nmonitoring.uss_qualifier.reports.report.AnyConditionEvaluationReport, as defined in monitoring/uss_qualifier/reports/report.py", "required": [ "satisfied_options", "unsatisfied_options" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/report/CapabilityVerifiedConditionEvaluationReport.json b/schemas/monitoring/uss_qualifier/reports/report/CapabilityVerifiedConditionEvaluationReport.json index c8e8f0aacb..4281914709 100644 --- a/schemas/monitoring/uss_qualifier/reports/report/CapabilityVerifiedConditionEvaluationReport.json +++ b/schemas/monitoring/uss_qualifier/reports/report/CapabilityVerifiedConditionEvaluationReport.json @@ -1,38 +1,38 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/CapabilityVerifiedConditionEvaluationReport.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "Result of an evaluation of a CapabilityVerifiedCondition dependent on whether other capabilities were verified.\n\nmonitoring.uss_qualifier.reports.report.CapabilityVerifiedConditionEvaluationReport, as defined in monitoring/uss_qualifier/reports/report.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, "checked_capabilities": { - "type": "array", + "description": "All capability evaluations checked for this condition.", "items": { "$ref": "CheckedCapability.json" }, - "description": "All capability evaluations checked for this condition." + "type": "array" }, - "spurious_matches": { - "type": "array", + "missing_capabilities": { + "description": "Capabilities specified for this condition but not found in the report.", "items": { - "$ref": "SpuriousReportMatch.json" + "type": "string" }, - "description": "Report elements matching the condition's `capability_location`, but not of the type TestSuiteReport." + "type": "array" }, - "missing_capabilities": { - "type": "array", + "spurious_matches": { + "description": "Report elements matching the condition's `capability_location`, but not of the type TestSuiteReport.", "items": { - "type": "string" + "$ref": "SpuriousReportMatch.json" }, - "description": "Capabilities specified for this condition but not found in the report." + "type": "array" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/CapabilityVerifiedConditionEvaluationReport.json", - "description": "Result of an evaluation of a CapabilityVerifiedCondition dependent on whether other capabilities were verified.\n\nmonitoring.uss_qualifier.reports.report.CapabilityVerifiedConditionEvaluationReport, as defined in monitoring/uss_qualifier/reports/report.py", "required": [ "checked_capabilities", "missing_capabilities", "spurious_matches" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/report/CheckedCapability.json b/schemas/monitoring/uss_qualifier/reports/report/CheckedCapability.json index fe606c3165..45786a5471 100644 --- a/schemas/monitoring/uss_qualifier/reports/report/CheckedCapability.json +++ b/schemas/monitoring/uss_qualifier/reports/report/CheckedCapability.json @@ -1,34 +1,34 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/CheckedCapability.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "Existing/previous participant-verifiable capability upon which a CapabilityVerifiedCondition depends.\n\nmonitoring.uss_qualifier.reports.report.CheckedCapability, as defined in monitoring/uss_qualifier/reports/report.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, - "capability_verified": { - "type": "boolean", - "description": "Whether this capability was successfully verified" + "capability_id": { + "description": "ID of the existing/previous participant-verifiable capability.", + "type": "string" }, "capability_location": { - "type": "string", - "description": "The location of the ParticipantCapabilityConditionEvaluationReport for the capability, relative to the TestSuiteReport in which this checked requirement is located." + "description": "The location of the ParticipantCapabilityConditionEvaluationReport for the capability, relative to the TestSuiteReport in which this checked requirement is located.", + "type": "string" }, - "report_location": { - "type": "string", - "description": "Location of the ParticipantCapabilityEvaluationReport for the existing/previous capability, relative to the TestSuiteReport in which the CapabilityVerifiedConditionEvaluationReport containing this CheckedCapability is located." + "capability_verified": { + "description": "Whether this capability was successfully verified", + "type": "boolean" }, - "capability_id": { - "type": "string", - "description": "ID of the existing/previous participant-verifiable capability." + "report_location": { + "description": "Location of the ParticipantCapabilityEvaluationReport for the existing/previous capability, relative to the TestSuiteReport in which the CapabilityVerifiedConditionEvaluationReport containing this CheckedCapability is located.", + "type": "string" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/CheckedCapability.json", - "description": "Existing/previous participant-verifiable capability upon which a CapabilityVerifiedCondition depends.\n\nmonitoring.uss_qualifier.reports.report.CheckedCapability, as defined in monitoring/uss_qualifier/reports/report.py", "required": [ "capability_id", "capability_location", "capability_verified", "report_location" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/report/CheckedRequirement.json b/schemas/monitoring/uss_qualifier/reports/report/CheckedRequirement.json index f9d77994cd..b3bfdc0374 100644 --- a/schemas/monitoring/uss_qualifier/reports/report/CheckedRequirement.json +++ b/schemas/monitoring/uss_qualifier/reports/report/CheckedRequirement.json @@ -1,35 +1,35 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/CheckedRequirement.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "A single requirement being checked for participant-verifiable capability verification.\n\nmonitoring.uss_qualifier.reports.report.CheckedRequirement, as defined in monitoring/uss_qualifier/reports/report.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, - "passed_checks": { - "type": "array", + "failed_checks": { + "description": "The location of each PassedCheck involving the requirement of interest, relative to the TestSuiteReport in which the RequirementsCheckedConditionEvaluationReport containing this checked requirement is located.", "items": { "type": "string" }, - "description": "The location of each PassedCheck involving the requirement of interest, relative to the TestSuiteReport in which the RequirementsCheckedConditionEvaluationReport containing this checked requirement is located." + "type": "array" }, - "failed_checks": { - "type": "array", + "passed_checks": { + "description": "The location of each PassedCheck involving the requirement of interest, relative to the TestSuiteReport in which the RequirementsCheckedConditionEvaluationReport containing this checked requirement is located.", "items": { "type": "string" }, - "description": "The location of each PassedCheck involving the requirement of interest, relative to the TestSuiteReport in which the RequirementsCheckedConditionEvaluationReport containing this checked requirement is located." + "type": "array" }, "requirement_id": { - "type": "string", - "description": "The requirement being checked." + "description": "The requirement being checked.", + "type": "string" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/CheckedRequirement.json", - "description": "A single requirement being checked for participant-verifiable capability verification.\n\nmonitoring.uss_qualifier.reports.report.CheckedRequirement, as defined in monitoring/uss_qualifier/reports/report.py", "required": [ "failed_checks", "passed_checks", "requirement_id" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/report/ErrorReport.json b/schemas/monitoring/uss_qualifier/reports/report/ErrorReport.json index 45a2bdb43e..1f118c6be4 100644 --- a/schemas/monitoring/uss_qualifier/reports/report/ErrorReport.json +++ b/schemas/monitoring/uss_qualifier/reports/report/ErrorReport.json @@ -1,35 +1,35 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/ErrorReport.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "monitoring.uss_qualifier.reports.report.ErrorReport, as defined in monitoring/uss_qualifier/reports/report.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, "message": { - "type": "string", - "description": "Error message" + "description": "Error message", + "type": "string" }, "stacktrace": { - "type": "string", - "description": "Full stack trace of error" - }, - "type": { - "type": "string", - "description": "Type of error" + "description": "Full stack trace of error", + "type": "string" }, "timestamp": { - "type": "string", + "description": "Time at which the error was logged", "format": "date-time", - "description": "Time at which the error was logged" + "type": "string" + }, + "type": { + "description": "Type of error", + "type": "string" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/ErrorReport.json", - "description": "monitoring.uss_qualifier.reports.report.ErrorReport, as defined in monitoring/uss_qualifier/reports/report.py", "required": [ "message", "stacktrace", "timestamp", "type" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/report/FailedCheck.json b/schemas/monitoring/uss_qualifier/reports/report/FailedCheck.json index 61c8749194..5e8de07a6b 100644 --- a/schemas/monitoring/uss_qualifier/reports/report/FailedCheck.json +++ b/schemas/monitoring/uss_qualifier/reports/report/FailedCheck.json @@ -1,76 +1,75 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/FailedCheck.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "monitoring.uss_qualifier.reports.report.FailedCheck, as defined in monitoring/uss_qualifier/reports/report.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, - "name": { - "type": "string", - "description": "Name of the check that failed" + "additional_data": { + "description": "Additional data, structured according to the checks' needs, that may be relevant for understanding this failed check", + "type": [ + "object", + "null" + ] + }, + "details": { + "description": "Human-readable description of the issue", + "type": "string" }, "documentation_url": { - "type": "string", - "description": "URL at which the check which failed is described" + "description": "URL at which the check which failed is described", + "type": "string" }, - "summary": { - "type": "string", - "description": "Human-readable summary of the issue" + "name": { + "description": "Name of the check that failed", + "type": "string" }, - "details": { - "type": "string", - "description": "Human-readable description of the issue" + "participants": { + "description": "Participants that may not meet the relevant requirements due to this failed check", + "items": { + "type": "string" + }, + "type": "array" }, "query_report_timestamps": { + "description": "List of the `report` timestamp field for queries relevant to this failed check", + "items": { + "type": "string" + }, "type": [ "array", "null" - ], + ] + }, + "requirements": { + "description": "Requirements that are not met due to this failed check", "items": { "type": "string" }, - "description": "List of the `report` timestamp field for queries relevant to this failed check" + "type": "array" }, "severity": { - "type": "string", + "description": "How severe the issue is", "enum": [ "Critical", "High", "Medium", "Low" ], - "description": "How severe the issue is" - }, - "participants": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Participants that may not meet the relevant requirements due to this failed check" + "type": "string" }, - "requirements": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Requirements that are not met due to this failed check" + "summary": { + "description": "Human-readable summary of the issue", + "type": "string" }, "timestamp": { - "type": "string", + "description": "Time the issue was discovered", "format": "date-time", - "description": "Time the issue was discovered" - }, - "additional_data": { - "type": [ - "object", - "null" - ], - "description": "Additional data, structured according to the checks' needs, that may be relevant for understanding this failed check" + "type": "string" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/FailedCheck.json", - "description": "monitoring.uss_qualifier.reports.report.FailedCheck, as defined in monitoring/uss_qualifier/reports/report.py", "required": [ "details", "documentation_url", @@ -80,5 +79,6 @@ "severity", "summary", "timestamp" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/report/NoFailedChecksConditionEvaluationReport.json b/schemas/monitoring/uss_qualifier/reports/report/NoFailedChecksConditionEvaluationReport.json index b62155425d..7bb9b8a051 100644 --- a/schemas/monitoring/uss_qualifier/reports/report/NoFailedChecksConditionEvaluationReport.json +++ b/schemas/monitoring/uss_qualifier/reports/report/NoFailedChecksConditionEvaluationReport.json @@ -1,22 +1,22 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/NoFailedChecksConditionEvaluationReport.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "Result of an evaluation of NoFailedChecksCondition dependent on whether any checks failed within the scope of the test suite in which this condition is located.\n\nmonitoring.uss_qualifier.reports.report.NoFailedChecksConditionEvaluationReport, as defined in monitoring/uss_qualifier/reports/report.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, "failed_checks": { - "type": "array", + "description": "The location of each FailedCheck, relative to the TestSuiteReport in which this report is located.", "items": { "type": "string" }, - "description": "The location of each FailedCheck, relative to the TestSuiteReport in which this report is located." + "type": "array" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/NoFailedChecksConditionEvaluationReport.json", - "description": "Result of an evaluation of NoFailedChecksCondition dependent on whether any checks failed within the scope of the test suite in which this condition is located.\n\nmonitoring.uss_qualifier.reports.report.NoFailedChecksConditionEvaluationReport, as defined in monitoring/uss_qualifier/reports/report.py", "required": [ "failed_checks" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/report/Note.json b/schemas/monitoring/uss_qualifier/reports/report/Note.json index 6ff6ddebe2..17d8d576e5 100644 --- a/schemas/monitoring/uss_qualifier/reports/report/Note.json +++ b/schemas/monitoring/uss_qualifier/reports/report/Note.json @@ -1,23 +1,23 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/Note.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "monitoring.uss_qualifier.reports.report.Note, as defined in monitoring/uss_qualifier/reports/report.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, "message": { "type": "string" }, "timestamp": { - "type": "string", - "format": "date-time" + "format": "date-time", + "type": "string" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/Note.json", - "description": "monitoring.uss_qualifier.reports.report.Note, as defined in monitoring/uss_qualifier/reports/report.py", "required": [ "message", "timestamp" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/report/ParticipantCapabilityConditionEvaluationReport.json b/schemas/monitoring/uss_qualifier/reports/report/ParticipantCapabilityConditionEvaluationReport.json index 1962dc4a51..fec24e6bca 100644 --- a/schemas/monitoring/uss_qualifier/reports/report/ParticipantCapabilityConditionEvaluationReport.json +++ b/schemas/monitoring/uss_qualifier/reports/report/ParticipantCapabilityConditionEvaluationReport.json @@ -1,74 +1,74 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/ParticipantCapabilityConditionEvaluationReport.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "Result of an evaluation of a condition related to whether a participant capability should be verified.\n\nExactly one field other than `condition_satisfied` must be specified.\n\nmonitoring.uss_qualifier.reports.report.ParticipantCapabilityConditionEvaluationReport, as defined in monitoring/uss_qualifier/reports/report.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, - "capability_verified": { + "all_conditions": { + "description": "When specified, the condition evaluated was AllConditions.", "oneOf": [ { "type": "null" }, { - "$ref": "CapabilityVerifiedConditionEvaluationReport.json" + "$ref": "AllConditionsEvaluationReport.json" } - ], - "description": "When specified, the condition evaluated was CapabilityVerifiedCondition." + ] }, - "no_failed_checks": { + "any_conditions": { + "description": "When specified, the condition evaluated was AnyCondition.", "oneOf": [ { "type": "null" }, { - "$ref": "NoFailedChecksConditionEvaluationReport.json" + "$ref": "AnyConditionEvaluationReport.json" } - ], - "description": "When specified, the condition evaluated was NoFailedChecksCondition." + ] }, - "condition_satisfied": { - "type": "boolean", - "description": "Whether the condition was satisfied for the relevant participant." - }, - "any_conditions": { + "capability_verified": { + "description": "When specified, the condition evaluated was CapabilityVerifiedCondition.", "oneOf": [ { "type": "null" }, { - "$ref": "AnyConditionEvaluationReport.json" + "$ref": "CapabilityVerifiedConditionEvaluationReport.json" } - ], - "description": "When specified, the condition evaluated was AnyCondition." + ] }, - "requirements_checked": { + "condition_satisfied": { + "description": "Whether the condition was satisfied for the relevant participant.", + "type": "boolean" + }, + "no_failed_checks": { + "description": "When specified, the condition evaluated was NoFailedChecksCondition.", "oneOf": [ { "type": "null" }, { - "$ref": "RequirementsCheckedConditionEvaluationReport.json" + "$ref": "NoFailedChecksConditionEvaluationReport.json" } - ], - "description": "When specified, the condition evaluated was RequirementsCheckedCondition." + ] }, - "all_conditions": { + "requirements_checked": { + "description": "When specified, the condition evaluated was RequirementsCheckedCondition.", "oneOf": [ { "type": "null" }, { - "$ref": "AllConditionsEvaluationReport.json" + "$ref": "RequirementsCheckedConditionEvaluationReport.json" } - ], - "description": "When specified, the condition evaluated was AllConditions." + ] } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/ParticipantCapabilityConditionEvaluationReport.json", - "description": "Result of an evaluation of a condition related to whether a participant capability should be verified.\n\nExactly one field other than `condition_satisfied` must be specified.\n\nmonitoring.uss_qualifier.reports.report.ParticipantCapabilityConditionEvaluationReport, as defined in monitoring/uss_qualifier/reports/report.py", "required": [ "condition_satisfied" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/report/ParticipantCapabilityEvaluationReport.json b/schemas/monitoring/uss_qualifier/reports/report/ParticipantCapabilityEvaluationReport.json index 26551f1915..a60c0050a9 100644 --- a/schemas/monitoring/uss_qualifier/reports/report/ParticipantCapabilityEvaluationReport.json +++ b/schemas/monitoring/uss_qualifier/reports/report/ParticipantCapabilityEvaluationReport.json @@ -1,34 +1,34 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/ParticipantCapabilityEvaluationReport.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "monitoring.uss_qualifier.reports.report.ParticipantCapabilityEvaluationReport, as defined in monitoring/uss_qualifier/reports/report.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "capability_id": { + "description": "ID of capability being evaluated.", + "type": "string" }, "condition_evaluation": { "$ref": "ParticipantCapabilityConditionEvaluationReport.json", "description": "Report produced by evaluating the condition for verifying this capability." }, - "verified": { - "type": "boolean", - "description": "Whether the capability was successfully verified." - }, "participant_id": { - "type": "string", - "description": "ID of participant for which capability is being evaluated." + "description": "ID of participant for which capability is being evaluated.", + "type": "string" }, - "capability_id": { - "type": "string", - "description": "ID of capability being evaluated." + "verified": { + "description": "Whether the capability was successfully verified.", + "type": "boolean" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/ParticipantCapabilityEvaluationReport.json", - "description": "monitoring.uss_qualifier.reports.report.ParticipantCapabilityEvaluationReport, as defined in monitoring/uss_qualifier/reports/report.py", "required": [ "capability_id", "condition_evaluation", "participant_id", "verified" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/report/RequirementsCheckedConditionEvaluationReport.json b/schemas/monitoring/uss_qualifier/reports/report/RequirementsCheckedConditionEvaluationReport.json index df9c8bc528..eb89d59a1a 100644 --- a/schemas/monitoring/uss_qualifier/reports/report/RequirementsCheckedConditionEvaluationReport.json +++ b/schemas/monitoring/uss_qualifier/reports/report/RequirementsCheckedConditionEvaluationReport.json @@ -1,38 +1,38 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/RequirementsCheckedConditionEvaluationReport.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "Result of an evaluation of RequirementsCheckedCondition dependent on whether a set of requirements were successfully checked.\n\nmonitoring.uss_qualifier.reports.report.RequirementsCheckedConditionEvaluationReport, as defined in monitoring/uss_qualifier/reports/report.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, - "passed_requirements": { - "type": "array", + "failed_requirements": { + "description": "Requirements with FailedChecks.", "items": { "$ref": "CheckedRequirement.json" }, - "description": "Requirements with only PassedChecks." + "type": "array" }, - "failed_requirements": { - "type": "array", + "passed_requirements": { + "description": "Requirements with only PassedChecks.", "items": { "$ref": "CheckedRequirement.json" }, - "description": "Requirements with FailedChecks." + "type": "array" }, "untested_requirements": { - "type": "array", + "description": "Requirements that didn't have any PassedChecks or FailedChecks within the scope of the test suite in which this condition is located.", "items": { "type": "string" }, - "description": "Requirements that didn't have any PassedChecks or FailedChecks within the scope of the test suite in which this condition is located." + "type": "array" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/RequirementsCheckedConditionEvaluationReport.json", - "description": "Result of an evaluation of RequirementsCheckedCondition dependent on whether a set of requirements were successfully checked.\n\nmonitoring.uss_qualifier.reports.report.RequirementsCheckedConditionEvaluationReport, as defined in monitoring/uss_qualifier/reports/report.py", "required": [ "failed_requirements", "passed_requirements", "untested_requirements" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/report/SpuriousReportMatch.json b/schemas/monitoring/uss_qualifier/reports/report/SpuriousReportMatch.json index 3b3d9740d4..2347f18862 100644 --- a/schemas/monitoring/uss_qualifier/reports/report/SpuriousReportMatch.json +++ b/schemas/monitoring/uss_qualifier/reports/report/SpuriousReportMatch.json @@ -1,24 +1,24 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/SpuriousReportMatch.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "Participant-verifiable capability evaluations are only present in TestSuiteReports. If a CapabilityVerifiedCondition points to a report element that is not a TestSuiteReport, an instance of this class will be generated.\n\nmonitoring.uss_qualifier.reports.report.SpuriousReportMatch, as defined in monitoring/uss_qualifier/reports/report.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" - }, - "type": { - "type": "string", - "description": "Data type of the report element (not TestSuiteReport)." + "description": "Path to content that replaces the $ref", + "type": "string" }, "location": { - "type": "string", - "description": "Location of the non-TestSuiteReport report element matching the CapabilityVerifiedCondition's `capability_location`, relative to the TestSuiteReport in which this condition is located." + "description": "Location of the non-TestSuiteReport report element matching the CapabilityVerifiedCondition's `capability_location`, relative to the TestSuiteReport in which this condition is located.", + "type": "string" + }, + "type": { + "description": "Data type of the report element (not TestSuiteReport).", + "type": "string" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/SpuriousReportMatch.json", - "description": "Participant-verifiable capability evaluations are only present in TestSuiteReports. If a CapabilityVerifiedCondition points to a report element that is not a TestSuiteReport, an instance of this class will be generated.\n\nmonitoring.uss_qualifier.reports.report.SpuriousReportMatch, as defined in monitoring/uss_qualifier/reports/report.py", "required": [ "location", "type" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/report/TestStepReport.json b/schemas/monitoring/uss_qualifier/reports/report/TestStepReport.json index 658b1297c0..7f48438c72 100644 --- a/schemas/monitoring/uss_qualifier/reports/report/TestStepReport.json +++ b/schemas/monitoring/uss_qualifier/reports/report/TestStepReport.json @@ -1,64 +1,64 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/TestStepReport.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "monitoring.uss_qualifier.reports.report.TestStepReport, as defined in monitoring/uss_qualifier/reports/report.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" - }, - "failed_checks": { - "type": "array", - "items": { - "$ref": "FailedCheck.json" - }, - "description": "The checks which failed in this test step" - }, - "name": { - "type": "string", - "description": "Name of this test step" + "description": "Path to content that replaces the $ref", + "type": "string" }, "documentation_url": { - "type": "string", - "description": "URL at which this test step is described" + "description": "URL at which this test step is described", + "type": "string" }, "end_time": { + "description": "Time at which the test step completed or encountered an error", + "format": "date-time", "type": [ "string", "null" - ], - "format": "date-time", - "description": "Time at which the test step completed or encountered an error" + ] }, - "queries": { - "type": [ - "array", - "null" - ], + "failed_checks": { + "description": "The checks which failed in this test step", "items": { - "$ref": "../../../monitorlib/fetch/Query.json" + "$ref": "FailedCheck.json" }, - "description": "Description of HTTP requests relevant to this issue" + "type": "array" }, - "start_time": { - "type": "string", - "format": "date-time", - "description": "Time at which the test step started" + "name": { + "description": "Name of this test step", + "type": "string" }, "passed_checks": { - "type": "array", + "description": "The checks which successfully passed in this test step", "items": { "$ref": "PassedCheck.json" }, - "description": "The checks which successfully passed in this test step" + "type": "array" + }, + "queries": { + "description": "Description of HTTP requests relevant to this issue", + "items": { + "$ref": "../../../monitorlib/fetch/Query.json" + }, + "type": [ + "array", + "null" + ] + }, + "start_time": { + "description": "Time at which the test step started", + "format": "date-time", + "type": "string" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/TestStepReport.json", - "description": "monitoring.uss_qualifier.reports.report.TestStepReport, as defined in monitoring/uss_qualifier/reports/report.py", "required": [ "documentation_url", "failed_checks", "name", "passed_checks", "start_time" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/reports/report/TestSuiteActionReport.json b/schemas/monitoring/uss_qualifier/reports/report/TestSuiteActionReport.json index 612cf3e094..41becebf3c 100644 --- a/schemas/monitoring/uss_qualifier/reports/report/TestSuiteActionReport.json +++ b/schemas/monitoring/uss_qualifier/reports/report/TestSuiteActionReport.json @@ -1,34 +1,36 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/TestSuiteActionReport.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "monitoring.uss_qualifier.reports.report.TestSuiteActionReport, as defined in monitoring/uss_qualifier/reports/report.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, - "test_scenario": { + "action_generator": { + "description": "If this action was an action generator, this field will hold its report", "oneOf": [ { "type": "null" }, { - "$ref": "TestScenarioReport.json" + "$ref": "ActionGeneratorReport.json" } - ], - "description": "If this action was a test scenario, this field will hold its report" + ] }, - "action_generator": { + "test_scenario": { + "description": "If this action was a test scenario, this field will hold its report", "oneOf": [ { "type": "null" }, { - "$ref": "ActionGeneratorReport.json" + "$ref": "TestScenarioReport.json" } - ], - "description": "If this action was an action generator, this field will hold its report" + ] }, "test_suite": { + "description": "If this action was a test suite, this field will hold its report", "oneOf": [ { "type": "null" @@ -36,10 +38,8 @@ { "$ref": "TestSuiteReport.json" } - ], - "description": "If this action was a test suite, this field will hold its report" + ] } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/reports/report/TestSuiteActionReport.json", - "description": "monitoring.uss_qualifier.reports.report.TestSuiteActionReport, as defined in monitoring/uss_qualifier/reports/report.py" + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/requirements/definitions/RequirementCollection.json b/schemas/monitoring/uss_qualifier/requirements/definitions/RequirementCollection.json index 406db7992c..66d5cf2a0b 100644 --- a/schemas/monitoring/uss_qualifier/requirements/definitions/RequirementCollection.json +++ b/schemas/monitoring/uss_qualifier/requirements/definitions/RequirementCollection.json @@ -1,53 +1,53 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/requirements/definitions/RequirementCollection.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "monitoring.uss_qualifier.requirements.definitions.RequirementCollection, as defined in monitoring/uss_qualifier/requirements/definitions.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "exclude": { + "description": "This collection does not include any of these requirements, despite all previous fields.", + "oneOf": [ + { + "type": "null" + }, + { + "$ref": "RequirementCollection.json" + } + ] }, "requirement_collections": { - "type": [ - "array", - "null" - ], + "description": "This collection includes all of the requirements in all of these requirement collections.", "items": { "$ref": "RequirementCollection.json" }, - "description": "This collection includes all of the requirements in all of these requirement collections." - }, - "requirements": { "type": [ "array", "null" - ], + ] + }, + "requirement_sets": { + "description": "This collection includes all requirements in all of these requirement sets.", "items": { "type": "string" }, - "description": "This collection includes all of these requirements." - }, - "requirement_sets": { "type": [ "array", "null" - ], + ] + }, + "requirements": { + "description": "This collection includes all of these requirements.", "items": { "type": "string" }, - "description": "This collection includes all requirements in all of these requirement sets." - }, - "exclude": { - "oneOf": [ - { - "type": "null" - }, - { - "$ref": "RequirementCollection.json" - } - ], - "description": "This collection does not include any of these requirements, despite all previous fields." + "type": [ + "array", + "null" + ] } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/requirements/definitions/RequirementCollection.json", - "description": "monitoring.uss_qualifier.requirements.definitions.RequirementCollection, as defined in monitoring/uss_qualifier/requirements/definitions.py" + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/astm/f3411/dss/DSSInstanceSpecification.json b/schemas/monitoring/uss_qualifier/resources/astm/f3411/dss/DSSInstanceSpecification.json new file mode 100644 index 0000000000..c49140ffa8 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/astm/f3411/dss/DSSInstanceSpecification.json @@ -0,0 +1,47 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/astm/f3411/dss/DSSInstanceSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.astm.f3411.dss.DSSInstanceSpecification, as defined in monitoring/uss_qualifier/resources/astm/f3411/dss.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "base_url": { + "description": "Base URL for the DSS instance according to the ASTM F3411 API appropriate to the specified rid_version", + "type": "string" + }, + "has_private_address": { + "description": "Whether this DSS instance is expected to have a private address that is not publicly addressable.", + "type": [ + "boolean", + "null" + ] + }, + "local_debug": { + "description": "Whether this DSS instance is running locally for debugging or development purposes. Mostly used for relaxing\nconstraints around encryption.\nAssumed to be true if left unspecified and has_private_address is true, otherwise defaults to false", + "type": [ + "boolean", + "null" + ] + }, + "participant_id": { + "description": "ID of the USS responsible for this DSS instance", + "type": "string" + }, + "rid_version": { + "description": "Version of ASTM F3411 implemented by this DSS instance", + "enum": [ + "F3411-19", + "F3411-22a" + ], + "type": "string" + } + }, + "required": [ + "base_url", + "participant_id", + "rid_version" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/monitorlib/geo/Polygon.json b/schemas/monitoring/uss_qualifier/resources/astm/f3411/dss/DSSInstancesSpecification.json similarity index 50% rename from schemas/monitoring/monitorlib/geo/Polygon.json rename to schemas/monitoring/uss_qualifier/resources/astm/f3411/dss/DSSInstancesSpecification.json index c7bb037d14..2644fe76b4 100644 --- a/schemas/monitoring/monitorlib/geo/Polygon.json +++ b/schemas/monitoring/uss_qualifier/resources/astm/f3411/dss/DSSInstancesSpecification.json @@ -1,21 +1,21 @@ { - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/monitorlib/geo/Polygon.json", + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/astm/f3411/dss/DSSInstancesSpecification.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "description": "monitoring.monitorlib.geo.Polygon, as defined in monitoring/monitorlib/geo.py", + "description": "monitoring.uss_qualifier.resources.astm.f3411.dss.DSSInstancesSpecification, as defined in monitoring/uss_qualifier/resources/astm/f3411/dss.py", "properties": { "$ref": { "description": "Path to content that replaces the $ref", "type": "string" }, - "vertices": { + "dss_instances": { "items": { - "$ref": "LatLngPoint.json" + "$ref": "DSSInstanceSpecification.json" }, "type": "array" } }, "required": [ - "vertices" + "dss_instances" ], "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/astm/f3548/v21/dss/DSSInstanceSpecification.json b/schemas/monitoring/uss_qualifier/resources/astm/f3548/v21/dss/DSSInstanceSpecification.json new file mode 100644 index 0000000000..9e6338eade --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/astm/f3548/v21/dss/DSSInstanceSpecification.json @@ -0,0 +1,31 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/astm/f3548/v21/dss/DSSInstanceSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.astm.f3548.v21.dss.DSSInstanceSpecification, as defined in monitoring/uss_qualifier/resources/astm/f3548/v21/dss.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "base_url": { + "description": "Base URL for the DSS instance according to the ASTM F3548-21 API", + "type": "string" + }, + "has_private_address": { + "description": "Whether this DSS instance is expected to have a private address that is not publicly addressable.", + "type": [ + "boolean", + "null" + ] + }, + "participant_id": { + "description": "ID of the USS responsible for this DSS instance", + "type": "string" + } + }, + "required": [ + "base_url", + "participant_id" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/astm/f3548/v21/dss/DSSInstancesSpecification.json b/schemas/monitoring/uss_qualifier/resources/astm/f3548/v21/dss/DSSInstancesSpecification.json new file mode 100644 index 0000000000..854fe6df55 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/astm/f3548/v21/dss/DSSInstancesSpecification.json @@ -0,0 +1,21 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/astm/f3548/v21/dss/DSSInstancesSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.astm.f3548.v21.dss.DSSInstancesSpecification, as defined in monitoring/uss_qualifier/resources/astm/f3548/v21/dss.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "dss_instances": { + "items": { + "$ref": "DSSInstanceSpecification.json" + }, + "type": "array" + } + }, + "required": [ + "dss_instances" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/communications/auth_adapter/AuthAdapterSpecification.json b/schemas/monitoring/uss_qualifier/resources/communications/auth_adapter/AuthAdapterSpecification.json new file mode 100644 index 0000000000..aca02c7a45 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/communications/auth_adapter/AuthAdapterSpecification.json @@ -0,0 +1,26 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/communications/auth_adapter/AuthAdapterSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "Specification for an AuthAdapter resource.\n\nExactly one of the fields defined must be populated.\n\nmonitoring.uss_qualifier.resources.communications.auth_adapter.AuthAdapterSpecification, as defined in monitoring/uss_qualifier/resources/communications/auth_adapter.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "auth_spec": { + "description": "Literal representation of auth spec. WARNING: Specifying this directly may cause sensitive information to be included in reports and unprotected configuration files.", + "type": [ + "string", + "null" + ] + }, + "environment_variable_containing_auth_spec": { + "description": "Name of environment variable containing the auth spec. This is the preferred method of providing the auth spec.", + "type": [ + "string", + "null" + ] + } + }, + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/definitions/ResourceCollection.json b/schemas/monitoring/uss_qualifier/resources/definitions/ResourceCollection.json index ddd017ba45..87fa54a430 100644 --- a/schemas/monitoring/uss_qualifier/resources/definitions/ResourceCollection.json +++ b/schemas/monitoring/uss_qualifier/resources/definitions/ResourceCollection.json @@ -1,28 +1,28 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/definitions/ResourceCollection.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "monitoring.uss_qualifier.resources.definitions.ResourceCollection, as defined in monitoring/uss_qualifier/resources/definitions.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, "resource_declarations": { - "type": "object", + "additionalProperties": { + "$ref": "ResourceDeclaration.json" + }, + "description": "Mapping of globally (within resource collection) unique name identifying a resource to the declaration of that resource", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" } }, - "additionalProperties": { - "$ref": "ResourceDeclaration.json" - }, - "description": "Mapping of globally (within resource collection) unique name identifying a resource to the declaration of that resource" + "type": "object" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/definitions/ResourceCollection.json", - "description": "monitoring.uss_qualifier.resources.definitions.ResourceCollection, as defined in monitoring/uss_qualifier/resources/definitions.py", "required": [ "resource_declarations" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/definitions/ResourceDeclaration.json b/schemas/monitoring/uss_qualifier/resources/definitions/ResourceDeclaration.json index 8399217fd9..1e6eb6bbda 100644 --- a/schemas/monitoring/uss_qualifier/resources/definitions/ResourceDeclaration.json +++ b/schemas/monitoring/uss_qualifier/resources/definitions/ResourceDeclaration.json @@ -1,36 +1,36 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/definitions/ResourceDeclaration.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "monitoring.uss_qualifier.resources.definitions.ResourceDeclaration, as defined in monitoring/uss_qualifier/resources/definitions.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" }, "dependencies": { - "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Mapping of dependency parameter (additional argument to concrete resource constructor) to `name` of resource to use", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" } }, - "additionalProperties": { - "type": "string" - }, - "description": "Mapping of dependency parameter (additional argument to concrete resource constructor) to `name` of resource to use" + "type": "object" }, "resource_type": { - "type": "string", - "description": "Type of resource, expressed as a Python class name qualified relative to this `resources` module" + "description": "Type of resource, expressed as a Python class name qualified relative to this `resources` module", + "type": "string" }, "specification": { - "type": "object", - "description": "Specification of resource; format is the SpecificationType that corresponds to the `resource_type`" + "description": "Specification of resource; format is the SpecificationType that corresponds to the `resource_type`", + "type": "object" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/definitions/ResourceDeclaration.json", - "description": "monitoring.uss_qualifier.resources.definitions.ResourceDeclaration, as defined in monitoring/uss_qualifier/resources/definitions.py", "required": [ "resource_type" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/dev/noop/NoOpSpecification.json b/schemas/monitoring/uss_qualifier/resources/dev/noop/NoOpSpecification.json new file mode 100644 index 0000000000..652585a2ca --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/dev/noop/NoOpSpecification.json @@ -0,0 +1,19 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/dev/noop/NoOpSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.dev.noop.NoOpSpecification, as defined in monitoring/uss_qualifier/resources/dev/noop.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "sleep_secs": { + "description": "Duration for which to sleep, expressed in seconds.", + "type": "integer" + } + }, + "required": [ + "sleep_secs" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/eurocae/ed269/source_document/SourceDocumentSpecification.json b/schemas/monitoring/uss_qualifier/resources/eurocae/ed269/source_document/SourceDocumentSpecification.json new file mode 100644 index 0000000000..319dcd6a31 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/eurocae/ed269/source_document/SourceDocumentSpecification.json @@ -0,0 +1,19 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/eurocae/ed269/source_document/SourceDocumentSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.eurocae.ed269.source_document.SourceDocumentSpecification, as defined in monitoring/uss_qualifier/resources/eurocae/ed269/source_document.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "url": { + "description": "Url of the ED-269 document to verify", + "type": "string" + } + }, + "required": [ + "url" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/files/ExternalFile.json b/schemas/monitoring/uss_qualifier/resources/files/ExternalFile.json new file mode 100644 index 0000000000..bbc6cff8d8 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/files/ExternalFile.json @@ -0,0 +1,26 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/files/ExternalFile.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.files.ExternalFile, as defined in monitoring/uss_qualifier/resources/files.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "hash_sha512": { + "description": "SHA-512 hash of the external file.\n\nIf specified, the external file's content will be verified to have this hash or else produce an error.\n\nIf not specified, will be populated with the hash of the external file at the time of execution.", + "type": [ + "string", + "null" + ] + }, + "path": { + "description": "Location of the external file.", + "type": "string" + } + }, + "required": [ + "path" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_intent/FlightIntentsSpecification.json b/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_intent/FlightIntentsSpecification.json new file mode 100644 index 0000000000..6c391acfbd --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_intent/FlightIntentsSpecification.json @@ -0,0 +1,25 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_intent/FlightIntentsSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.flight_planning.flight_intent.FlightIntentsSpecification, as defined in monitoring/uss_qualifier/resources/flight_planning/flight_intent.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "file": { + "$ref": "../../files/ExternalFile.json", + "description": "Location of file to load" + }, + "planning_time": { + "description": "Time delta between the time uss_qualifier initiates this FlightInjectionAttempt and when a timestamp within the test_injection equal to reference_time occurs", + "format": "duration", + "type": "string" + } + }, + "required": [ + "file", + "planning_time" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planner/FlightPlannerConfiguration.json b/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planner/FlightPlannerConfiguration.json new file mode 100644 index 0000000000..13e2532ed0 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planner/FlightPlannerConfiguration.json @@ -0,0 +1,31 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planner/FlightPlannerConfiguration.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.flight_planning.flight_planner.FlightPlannerConfiguration, as defined in monitoring/uss_qualifier/resources/flight_planning/flight_planner.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "injection_base_url": { + "description": "Base URL for the flight planner's implementation of the interfaces/automated-testing/scd/scd.yaml API", + "type": "string" + }, + "participant_id": { + "description": "ID of the flight planner into which test data can be injected", + "type": "string" + }, + "timeout_seconds": { + "description": "Number of seconds to allow for requests to this flight planner. If None, use default.", + "type": [ + "number", + "null" + ] + } + }, + "required": [ + "injection_base_url", + "participant_id" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planners/FlightPlannerCombinationSelectorSpecification.json b/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planners/FlightPlannerCombinationSelectorSpecification.json new file mode 100644 index 0000000000..266c94ec48 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planners/FlightPlannerCombinationSelectorSpecification.json @@ -0,0 +1,38 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planners/FlightPlannerCombinationSelectorSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.flight_planning.flight_planners.FlightPlannerCombinationSelectorSpecification, as defined in monitoring/uss_qualifier/resources/flight_planning/flight_planners.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "maximum_roles": { + "additionalProperties": { + "type": "integer" + }, + "description": "Maximum number of roles a particular participant may fill in any given combination", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + } + }, + "type": [ + "object", + "null" + ] + }, + "must_include": { + "description": "The set of flight planners which must be included in every combination", + "items": { + "type": "string" + }, + "type": [ + "array", + "null" + ] + } + }, + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planners/FlightPlannerSpecification.json b/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planners/FlightPlannerSpecification.json new file mode 100644 index 0000000000..991d50c7cf --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planners/FlightPlannerSpecification.json @@ -0,0 +1,18 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planners/FlightPlannerSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.flight_planning.flight_planners.FlightPlannerSpecification, as defined in monitoring/uss_qualifier/resources/flight_planning/flight_planners.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "flight_planner": { + "$ref": "../flight_planner/FlightPlannerConfiguration.json" + } + }, + "required": [ + "flight_planner" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planners/FlightPlannersSpecification.json b/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planners/FlightPlannersSpecification.json new file mode 100644 index 0000000000..00c2169527 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planners/FlightPlannersSpecification.json @@ -0,0 +1,21 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/flight_planning/flight_planners/FlightPlannersSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.flight_planning.flight_planners.FlightPlannersSpecification, as defined in monitoring/uss_qualifier/resources/flight_planning/flight_planners.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "flight_planners": { + "items": { + "$ref": "../flight_planner/FlightPlannerConfiguration.json" + }, + "type": "array" + } + }, + "required": [ + "flight_planners" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/interuss/flight_authorization/definitions/FlightCheck.json b/schemas/monitoring/uss_qualifier/resources/interuss/flight_authorization/definitions/FlightCheck.json new file mode 100644 index 0000000000..7ee3137a1d --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/interuss/flight_authorization/definitions/FlightCheck.json @@ -0,0 +1,63 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/interuss/flight_authorization/definitions/FlightCheck.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.interuss.flight_authorization.definitions.FlightCheck, as defined in monitoring/uss_qualifier/resources/interuss/flight_authorization/definitions.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "acceptance_expectation": { + "description": "Expected outcome when authorizing a flight as described.", + "enum": [ + "MustBeRejected", + "MustBeAccepted", + "Irrelevant" + ], + "type": "string" + }, + "additional_information": { + "description": "Any additional information that should be provided to a USS planning the flight.\n\nFormat is agreed upon between test designer and USSs.", + "type": "object" + }, + "conditions_expectation": { + "description": "Expected conditions/advisories produced when authorizing a flight as described.", + "enum": [ + "Irrelevant", + "MustBePresent", + "MustBeAbsent" + ], + "type": "string" + }, + "description": { + "description": "Human-readable test step description to aid in the debugging and traceability.", + "type": "string" + }, + "flight_check_id": { + "description": "Unique (within table) test step/row identifier.", + "type": "string" + }, + "requirement_ids": { + "description": "Jurisdictional identifiers of the requirements this test step is evaluating.", + "items": { + "type": "string" + }, + "type": "array" + }, + "volumes": { + "description": "Spatial and temporal definition of the areas the virtual user intends to fly in.\n\nA service provider is expected to authorizing a flight covering the entire area specified and for any of the entire time specified.", + "items": { + "$ref": "../../../../../monitorlib/geotemporal/Volume4DTemplate.json" + }, + "type": "array" + } + }, + "required": [ + "additional_information", + "description", + "flight_check_id", + "requirement_ids", + "volumes" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/interuss/flight_authorization/definitions/FlightCheckTable.json b/schemas/monitoring/uss_qualifier/resources/interuss/flight_authorization/definitions/FlightCheckTable.json new file mode 100644 index 0000000000..1a4955e1a2 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/interuss/flight_authorization/definitions/FlightCheckTable.json @@ -0,0 +1,21 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/interuss/flight_authorization/definitions/FlightCheckTable.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.interuss.flight_authorization.definitions.FlightCheckTable, as defined in monitoring/uss_qualifier/resources/interuss/flight_authorization/definitions.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "rows": { + "items": { + "$ref": "FlightCheck.json" + }, + "type": "array" + } + }, + "required": [ + "rows" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/interuss/flight_authorization/flight_check_table/FlightCheckTableSpecification.json b/schemas/monitoring/uss_qualifier/resources/interuss/flight_authorization/flight_check_table/FlightCheckTableSpecification.json new file mode 100644 index 0000000000..60edbbc6b3 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/interuss/flight_authorization/flight_check_table/FlightCheckTableSpecification.json @@ -0,0 +1,18 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/interuss/flight_authorization/flight_check_table/FlightCheckTableSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.interuss.flight_authorization.flight_check_table.FlightCheckTableSpecification, as defined in monitoring/uss_qualifier/resources/interuss/flight_authorization/flight_check_table.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "table": { + "$ref": "../definitions/FlightCheckTable.json" + } + }, + "required": [ + "table" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/interuss/geospatial_map/definitions/FeatureCheck.json b/schemas/monitoring/uss_qualifier/resources/interuss/geospatial_map/definitions/FeatureCheck.json new file mode 100644 index 0000000000..803a730faf --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/interuss/geospatial_map/definitions/FeatureCheck.json @@ -0,0 +1,64 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/interuss/geospatial_map/definitions/FeatureCheck.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.interuss.geospatial_map.definitions.FeatureCheck, as defined in monitoring/uss_qualifier/resources/interuss/geospatial_map/definitions.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "description": { + "description": "Human-readable test step description to aid in the debugging and traceability.", + "type": "string" + }, + "expected_result": { + "description": "Expected outcome when checking map for features as described.", + "enum": [ + "Block", + "Advise", + "Neither" + ], + "type": "string" + }, + "geospatial_check_id": { + "description": "Unique (within table) test step/row identifier.", + "type": "string" + }, + "operation_rule_set": { + "description": "The set of operating rules (or rule set) under which the operation described in the feature check should be performed.", + "type": [ + "string", + "null" + ] + }, + "requirement_ids": { + "description": "Jurisdictional identifiers of the requirements this test step is evaluating.", + "items": { + "type": "string" + }, + "type": "array" + }, + "restriction_source": { + "description": "Which source for geospatial features describing restrictions should be considered when looking for the expected outcome.", + "type": [ + "string", + "null" + ] + }, + "volumes": { + "description": "Spatial and temporal definition of the areas the virtual user intends to fly in.\n\nA service provider is expected to provide geospatial features relevant to any of the entire area specified and for any of the entire time specified.", + "items": { + "$ref": "../../../../../monitorlib/geotemporal/Volume4DTemplate.json" + }, + "type": "array" + } + }, + "required": [ + "description", + "expected_result", + "geospatial_check_id", + "requirement_ids", + "volumes" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/interuss/geospatial_map/definitions/FeatureCheckTable.json b/schemas/monitoring/uss_qualifier/resources/interuss/geospatial_map/definitions/FeatureCheckTable.json new file mode 100644 index 0000000000..ece3ed5710 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/interuss/geospatial_map/definitions/FeatureCheckTable.json @@ -0,0 +1,21 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/interuss/geospatial_map/definitions/FeatureCheckTable.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.interuss.geospatial_map.definitions.FeatureCheckTable, as defined in monitoring/uss_qualifier/resources/interuss/geospatial_map/definitions.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "rows": { + "items": { + "$ref": "FeatureCheck.json" + }, + "type": "array" + } + }, + "required": [ + "rows" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/interuss/geospatial_map/feature_check_table/FeatureCheckTableSpecification.json b/schemas/monitoring/uss_qualifier/resources/interuss/geospatial_map/feature_check_table/FeatureCheckTableSpecification.json new file mode 100644 index 0000000000..051a9dd672 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/interuss/geospatial_map/feature_check_table/FeatureCheckTableSpecification.json @@ -0,0 +1,18 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/interuss/geospatial_map/feature_check_table/FeatureCheckTableSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.interuss.geospatial_map.feature_check_table.FeatureCheckTableSpecification, as defined in monitoring/uss_qualifier/resources/interuss/geospatial_map/feature_check_table.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "table": { + "$ref": "../definitions/FeatureCheckTable.json" + } + }, + "required": [ + "table" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/interuss/id_generator/IDGeneratorSpecification.json b/schemas/monitoring/uss_qualifier/resources/interuss/id_generator/IDGeneratorSpecification.json new file mode 100644 index 0000000000..28d40d41a2 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/interuss/id_generator/IDGeneratorSpecification.json @@ -0,0 +1,24 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/interuss/id_generator/IDGeneratorSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "Generated IDs contain the client's identity so the appropriate client can clean up any dangling resources.\n\nNote that this may not be necessary/important with the resolution of https://github.com/interuss/dss/issues/939\n\nTo determine the client's identity, an access token is retrieved and the subscriber is read from the obtained token.\nTherefore, the client running uss_qualifier must have the ability to obtain an access token via an auth adapter.\n\nmonitoring.uss_qualifier.resources.interuss.id_generator.IDGeneratorSpecification, as defined in monitoring/uss_qualifier/resources/interuss/id_generator.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "whoami_audience": { + "description": "Audience to request for the access token used to determine subscriber identity.", + "type": "string" + }, + "whoami_scope": { + "description": "Scope to request for the access token used to determine subscribe identity. Must be a scope that the client is\nauthorized to obtain.", + "type": "string" + } + }, + "required": [ + "whoami_audience", + "whoami_scope" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/interuss/mock_uss/client/MockUSSSpecification.json b/schemas/monitoring/uss_qualifier/resources/interuss/mock_uss/client/MockUSSSpecification.json new file mode 100644 index 0000000000..30f7b4cc0c --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/interuss/mock_uss/client/MockUSSSpecification.json @@ -0,0 +1,24 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/interuss/mock_uss/client/MockUSSSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.interuss.mock_uss.client.MockUSSSpecification, as defined in monitoring/uss_qualifier/resources/interuss/mock_uss/client.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "mock_uss_base_url": { + "description": "The base URL for the mock USS.\n\nIf the mock USS had scdsc enabled, for instance, then these URLs would be\nvalid:\n * /mock/scd/uss/v1/reports\n * /scdsc/v1/status", + "type": "string" + }, + "participant_id": { + "description": "Test participant responsible for this mock USS.", + "type": "string" + } + }, + "required": [ + "mock_uss_base_url", + "participant_id" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/interuss/mock_uss/client/MockUSSsSpecification.json b/schemas/monitoring/uss_qualifier/resources/interuss/mock_uss/client/MockUSSsSpecification.json new file mode 100644 index 0000000000..382fcff6c6 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/interuss/mock_uss/client/MockUSSsSpecification.json @@ -0,0 +1,21 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/interuss/mock_uss/client/MockUSSsSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.interuss.mock_uss.client.MockUSSsSpecification, as defined in monitoring/uss_qualifier/resources/interuss/mock_uss/client.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "instances": { + "items": { + "$ref": "MockUSSSpecification.json" + }, + "type": "array" + } + }, + "required": [ + "instances" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/monitorlib/dicts/RemovedElement.json b/schemas/monitoring/uss_qualifier/resources/interuss/mock_uss/locality/LocalitySpecification.json similarity index 50% rename from schemas/monitoring/monitorlib/dicts/RemovedElement.json rename to schemas/monitoring/uss_qualifier/resources/interuss/mock_uss/locality/LocalitySpecification.json index baacca58a5..157b71ba2c 100644 --- a/schemas/monitoring/monitorlib/dicts/RemovedElement.json +++ b/schemas/monitoring/uss_qualifier/resources/interuss/mock_uss/locality/LocalitySpecification.json @@ -1,18 +1,18 @@ { - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/monitorlib/dicts/RemovedElement.json", + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/interuss/mock_uss/locality/LocalitySpecification.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "description": "monitoring.monitorlib.dicts.RemovedElement, as defined in monitoring/monitorlib/dicts.py", + "description": "monitoring.uss_qualifier.resources.interuss.mock_uss.locality.LocalitySpecification, as defined in monitoring/uss_qualifier/resources/interuss/mock_uss/locality.py", "properties": { "$ref": { "description": "Path to content that replaces the $ref", "type": "string" }, - "address": { + "locality_code": { "type": "string" } }, "required": [ - "address" + "locality_code" ], "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/netrid/evaluation/EvaluationConfiguration.json b/schemas/monitoring/uss_qualifier/resources/netrid/evaluation/EvaluationConfiguration.json new file mode 100644 index 0000000000..561bd72df7 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/netrid/evaluation/EvaluationConfiguration.json @@ -0,0 +1,30 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/netrid/evaluation/EvaluationConfiguration.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.netrid.evaluation.EvaluationConfiguration, as defined in monitoring/uss_qualifier/resources/netrid/evaluation.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "max_propagation_latency": { + "description": "Allow up to this much time for data to propagate through the system.", + "format": "duration", + "type": "string" + }, + "min_polling_interval": { + "description": "Do not repeat system observations with intervals smaller than this.", + "format": "duration", + "type": "string" + }, + "min_query_diagonal": { + "description": "Do not make queries with diagonals smaller than this many meters.", + "type": "number" + }, + "repeat_query_rect_period": { + "description": "If set to a value above zero, reuse the most recent query rectangle/view every this many queries.", + "type": "integer" + } + }, + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/netrid/flight_data/AdjacentCircularFlightsSimulatorConfiguration.json b/schemas/monitoring/uss_qualifier/resources/netrid/flight_data/AdjacentCircularFlightsSimulatorConfiguration.json new file mode 100644 index 0000000000..94ad03e5e7 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/netrid/flight_data/AdjacentCircularFlightsSimulatorConfiguration.json @@ -0,0 +1,51 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/netrid/flight_data/AdjacentCircularFlightsSimulatorConfiguration.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.netrid.flight_data.AdjacentCircularFlightsSimulatorConfiguration, as defined in monitoring/uss_qualifier/resources/netrid/flight_data.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "altitude_of_ground_level_wgs_84": { + "type": "integer" + }, + "flight_start_shift": { + "description": "Delay generated flight starts from the reference time to spread flights over time. Expressed in seconds. Use 0 to disable.", + "type": "integer" + }, + "maxx": { + "description": "Eastern edge of bounding box (degrees longitude)", + "type": "number" + }, + "maxy": { + "description": "Northern edge of bounding box (degrees latitude)", + "type": "number" + }, + "minx": { + "description": "Western edge of bounding box (degrees longitude)", + "type": "number" + }, + "miny": { + "description": "Southern edge of bounding box (degrees latitude)", + "type": "number" + }, + "random_seed": { + "description": "Pseudorandom seed that should be used, or specify None to use default Random.", + "type": [ + "integer", + "null" + ] + }, + "reference_time": { + "description": "The reference time relative to which flight data should be generated.\n\nThe time should be irrelevant in real-world use as times are adjusted to be\nrelative to a time close to the time of test.", + "format": "date-time", + "type": "string" + }, + "utm_zone": { + "description": "UTM Zone integer for the location, see https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system to identify the zone for the location.", + "type": "integer" + } + }, + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/netrid/flight_data/FlightDataKMLFileConfiguration.json b/schemas/monitoring/uss_qualifier/resources/netrid/flight_data/FlightDataKMLFileConfiguration.json new file mode 100644 index 0000000000..4d47c36726 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/netrid/flight_data/FlightDataKMLFileConfiguration.json @@ -0,0 +1,31 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/netrid/flight_data/FlightDataKMLFileConfiguration.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.netrid.flight_data.FlightDataKMLFileConfiguration, as defined in monitoring/uss_qualifier/resources/netrid/flight_data.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "kml_file": { + "$ref": "../../files/ExternalFile.json", + "description": "Location of KML describing a FlightRecordCollection." + }, + "random_seed": { + "description": "Pseudorandom seed that should be used, or specify None to use default Random.", + "type": [ + "integer", + "null" + ] + }, + "reference_time": { + "description": "The reference time relative to which flight data should be generated.\n\nThe time should be irrelevant in real-world use as times are adjusted to be\nrelative to a time close to the time of test.", + "format": "date-time", + "type": "string" + } + }, + "required": [ + "kml_file" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/netrid/flight_data/FlightDataSpecification.json b/schemas/monitoring/uss_qualifier/resources/netrid/flight_data/FlightDataSpecification.json new file mode 100644 index 0000000000..de7aaf5c68 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/netrid/flight_data/FlightDataSpecification.json @@ -0,0 +1,49 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/netrid/flight_data/FlightDataSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.netrid.flight_data.FlightDataSpecification, as defined in monitoring/uss_qualifier/resources/netrid/flight_data.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "adjacent_circular_flights_simulation_source": { + "oneOf": [ + { + "type": "null" + }, + { + "$ref": "AdjacentCircularFlightsSimulatorConfiguration.json" + } + ] + }, + "flight_start_delay": { + "description": "Amount of time between starting the test and commencement of flights", + "format": "duration", + "type": "string" + }, + "kml_source": { + "description": "When this field is populated, flight data will be generated from a KML file", + "oneOf": [ + { + "type": "null" + }, + { + "$ref": "FlightDataKMLFileConfiguration.json" + } + ] + }, + "record_source": { + "description": "When this field is populated, flight record data will be loaded directly from this file", + "oneOf": [ + { + "type": "null" + }, + { + "$ref": "../../files/ExternalFile.json" + } + ] + } + }, + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/netrid/flight_data_resources/FlightDataStorageSpecification.json b/schemas/monitoring/uss_qualifier/resources/netrid/flight_data_resources/FlightDataStorageSpecification.json new file mode 100644 index 0000000000..33a4356c66 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/netrid/flight_data_resources/FlightDataStorageSpecification.json @@ -0,0 +1,26 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/netrid/flight_data_resources/FlightDataStorageSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.netrid.flight_data_resources.FlightDataStorageSpecification, as defined in monitoring/uss_qualifier/resources/netrid/flight_data_resources.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "flight_record_collection_path": { + "description": "Path, usually ending with .json, at which to store the FlightRecordCollection", + "type": [ + "string", + "null" + ] + }, + "geojson_tracks_path": { + "description": "Path (folder) in which to store track_XX.geojson files, 1 for each flight", + "type": [ + "string", + "null" + ] + } + }, + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/netrid/observers/NetRIDObserversSpecification.json b/schemas/monitoring/uss_qualifier/resources/netrid/observers/NetRIDObserversSpecification.json new file mode 100644 index 0000000000..9275c487e7 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/netrid/observers/NetRIDObserversSpecification.json @@ -0,0 +1,21 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/netrid/observers/NetRIDObserversSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.netrid.observers.NetRIDObserversSpecification, as defined in monitoring/uss_qualifier/resources/netrid/observers.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "observers": { + "items": { + "$ref": "ObserverConfiguration.json" + }, + "type": "array" + } + }, + "required": [ + "observers" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/netrid/observers/ObserverConfiguration.json b/schemas/monitoring/uss_qualifier/resources/netrid/observers/ObserverConfiguration.json new file mode 100644 index 0000000000..50cc918518 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/netrid/observers/ObserverConfiguration.json @@ -0,0 +1,31 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/netrid/observers/ObserverConfiguration.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.netrid.observers.ObserverConfiguration, as defined in monitoring/uss_qualifier/resources/netrid/observers.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "local_debug": { + "description": "Whether this Observer instance is running locally for debugging or development purposes. Mostly used for relaxing\nconstraints around encryption.\nAssumed to be true if left unspecified and has_private_address is true, otherwise defaults to false", + "type": [ + "boolean", + "null" + ] + }, + "observation_base_url": { + "description": "Base URL for the observer's implementation of the interfaces/automated-testing/rid/observation.yaml API", + "type": "string" + }, + "participant_id": { + "description": "Participant ID of the observer providing a view of RID data in the system", + "type": "string" + } + }, + "required": [ + "observation_base_url", + "participant_id" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/netrid/service_area/ServiceAreaSpecification.json b/schemas/monitoring/uss_qualifier/resources/netrid/service_area/ServiceAreaSpecification.json new file mode 100644 index 0000000000..3b83058ed6 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/netrid/service_area/ServiceAreaSpecification.json @@ -0,0 +1,53 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/netrid/service_area/ServiceAreaSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.netrid.service_area.ServiceAreaSpecification, as defined in monitoring/uss_qualifier/resources/netrid/service_area.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "altitude_max": { + "description": "Upper altitude bound of service area, meters above WGS84 ellipsoid", + "type": "number" + }, + "altitude_min": { + "description": "Lower altitude bound of service area, meters above WGS84 ellipsoid", + "type": "number" + }, + "base_url": { + "description": "Base URL to use for the Identification Service Area.\n\nNote that this is the API base URL, not the flights URL (as specified in F3411-19).\n\nThis URL will probably not identify a real resource in tests.", + "type": "string" + }, + "footprint": { + "description": "2D outline of service area", + "items": { + "$ref": "../../../../monitorlib/geo/LatLngPoint.json" + }, + "type": "array" + }, + "reference_time": { + "description": "Reference time used to adjust start and end times at runtime", + "format": "date-time", + "type": "string" + }, + "time_end": { + "description": "End time of service area (relative to reference_time)", + "format": "date-time", + "type": "string" + }, + "time_start": { + "description": "Start time of service area (relative to reference_time)", + "format": "date-time", + "type": "string" + } + }, + "required": [ + "base_url", + "footprint", + "reference_time", + "time_end", + "time_start" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/netrid/service_providers/NetRIDServiceProvidersSpecification.json b/schemas/monitoring/uss_qualifier/resources/netrid/service_providers/NetRIDServiceProvidersSpecification.json new file mode 100644 index 0000000000..cc93bc352d --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/netrid/service_providers/NetRIDServiceProvidersSpecification.json @@ -0,0 +1,21 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/netrid/service_providers/NetRIDServiceProvidersSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.netrid.service_providers.NetRIDServiceProvidersSpecification, as defined in monitoring/uss_qualifier/resources/netrid/service_providers.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "service_providers": { + "items": { + "$ref": "ServiceProviderConfiguration.json" + }, + "type": "array" + } + }, + "required": [ + "service_providers" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/netrid/service_providers/ServiceProviderConfiguration.json b/schemas/monitoring/uss_qualifier/resources/netrid/service_providers/ServiceProviderConfiguration.json new file mode 100644 index 0000000000..e53ee6c7d1 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/netrid/service_providers/ServiceProviderConfiguration.json @@ -0,0 +1,31 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/netrid/service_providers/ServiceProviderConfiguration.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.netrid.service_providers.ServiceProviderConfiguration, as defined in monitoring/uss_qualifier/resources/netrid/service_providers.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "injection_base_url": { + "description": "Base URL for the Service Provider's implementation of the interfaces/automated-testing/rid/injection.yaml API", + "type": "string" + }, + "local_debug": { + "description": "Whether this Service Provider instance is running locally for debugging or development purposes. Mostly used for relaxing\nconstraints around encryption.", + "type": [ + "boolean", + "null" + ] + }, + "participant_id": { + "description": "ID of the NetRID Service Provider into which test data can be injected", + "type": "string" + } + }, + "required": [ + "injection_base_url", + "participant_id" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/versioning/client/InterUSSVersionProvider.json b/schemas/monitoring/uss_qualifier/resources/versioning/client/InterUSSVersionProvider.json new file mode 100644 index 0000000000..9ebc1bbb06 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/versioning/client/InterUSSVersionProvider.json @@ -0,0 +1,19 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/versioning/client/InterUSSVersionProvider.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.versioning.client.InterUSSVersionProvider, as defined in monitoring/uss_qualifier/resources/versioning/client.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "base_url": { + "description": "The base URL at which the participant is hosting its implementation of the InterUSS automated testing versioning API.", + "type": "string" + } + }, + "required": [ + "base_url" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/versioning/client/VersionProviderSpecification.json b/schemas/monitoring/uss_qualifier/resources/versioning/client/VersionProviderSpecification.json new file mode 100644 index 0000000000..bc18d1cba1 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/versioning/client/VersionProviderSpecification.json @@ -0,0 +1,30 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/versioning/client/VersionProviderSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.versioning.client.VersionProviderSpecification, as defined in monitoring/uss_qualifier/resources/versioning/client.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "interuss": { + "description": "Populated when the version provider is using the InterUSS automated testing versioning API to provide versioning information.", + "oneOf": [ + { + "type": "null" + }, + { + "$ref": "InterUSSVersionProvider.json" + } + ] + }, + "participant_id": { + "description": "Test participant providing system versions.", + "type": "string" + } + }, + "required": [ + "participant_id" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/versioning/client/VersionProvidersSpecification.json b/schemas/monitoring/uss_qualifier/resources/versioning/client/VersionProvidersSpecification.json new file mode 100644 index 0000000000..6ad1492c08 --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/versioning/client/VersionProvidersSpecification.json @@ -0,0 +1,21 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/versioning/client/VersionProvidersSpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.versioning.client.VersionProvidersSpecification, as defined in monitoring/uss_qualifier/resources/versioning/client.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "instances": { + "items": { + "$ref": "VersionProviderSpecification.json" + }, + "type": "array" + } + }, + "required": [ + "instances" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/resources/versioning/system_identity/SystemIdentitySpecification.json b/schemas/monitoring/uss_qualifier/resources/versioning/system_identity/SystemIdentitySpecification.json new file mode 100644 index 0000000000..099ef3091e --- /dev/null +++ b/schemas/monitoring/uss_qualifier/resources/versioning/system_identity/SystemIdentitySpecification.json @@ -0,0 +1,19 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/resources/versioning/system_identity/SystemIdentitySpecification.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "monitoring.uss_qualifier.resources.versioning.system_identity.SystemIdentitySpecification, as defined in monitoring/uss_qualifier/resources/versioning/system_identity.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "system_identity": { + "description": "Identity of a system, as understood identically by the test designer and test participants.", + "type": "string" + } + }, + "required": [ + "system_identity" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/suites/definitions/TestSuiteDeclaration.json b/schemas/monitoring/uss_qualifier/suites/definitions/TestSuiteDeclaration.json index aca1fbc705..98b2341e36 100644 --- a/schemas/monitoring/uss_qualifier/suites/definitions/TestSuiteDeclaration.json +++ b/schemas/monitoring/uss_qualifier/suites/definitions/TestSuiteDeclaration.json @@ -1,12 +1,27 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/suites/definitions/TestSuiteDeclaration.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "monitoring.uss_qualifier.suites.definitions.TestSuiteDeclaration, as defined in monitoring/uss_qualifier/suites/definitions.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "resources": { + "additionalProperties": { + "type": "string" + }, + "description": "Mapping of the ID a resource will be known by in the child test suite -> the ID a resource is known by in the parent test suite.\n\nThe child suite resource is supplied by the parent suite resource .", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + } + }, + "type": "object" }, "suite_definition": { + "description": "Definition of test suite internal to the configuration -- specified instead of `suite_type`.", "oneOf": [ { "type": "null" @@ -14,33 +29,18 @@ { "$ref": "TestSuiteDefinition.json" } - ], - "description": "Definition of test suite internal to the configuration -- specified instead of `suite_type`." - }, - "resources": { - "type": "object", - "properties": { - "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" - } - }, - "additionalProperties": { - "type": "string" - }, - "description": "Mapping of the ID a resource will be known by in the child test suite -> the ID a resource is known by in the parent test suite.\n\nThe child suite resource is supplied by the parent suite resource ." + ] }, "suite_type": { + "description": "Type/location of test suite. Usually expressed as the file name of the suite definition (without extension) qualified relative to the `uss_qualifier` folder", "type": [ "string", "null" - ], - "description": "Type/location of test suite. Usually expressed as the file name of the suite definition (without extension) qualified relative to the `uss_qualifier` folder" + ] } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/suites/definitions/TestSuiteDeclaration.json", - "description": "monitoring.uss_qualifier.suites.definitions.TestSuiteDeclaration, as defined in monitoring/uss_qualifier/suites/definitions.py", "required": [ "resources" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/monitoring/uss_qualifier/suites/definitions/TestSuiteDefinition.json b/schemas/monitoring/uss_qualifier/suites/definitions/TestSuiteDefinition.json index dc091f2848..6afdf01f0f 100644 --- a/schemas/monitoring/uss_qualifier/suites/definitions/TestSuiteDefinition.json +++ b/schemas/monitoring/uss_qualifier/suites/definitions/TestSuiteDefinition.json @@ -1,16 +1,35 @@ { + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/suites/definitions/TestSuiteDefinition.json", "$schema": "https://json-schema.org/draft/2020-12/schema", - "type": "object", + "description": "Schema for the definition of a test suite, analogous to the Python TestScenario subclass for scenarios\n\nmonitoring.uss_qualifier.suites.definitions.TestSuiteDefinition, as defined in monitoring/uss_qualifier/suites/definitions.py", "properties": { "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "actions": { + "description": "The actions to take when running the test suite. Components will be executed in order.", + "items": { + "$ref": "TestSuiteActionDeclaration.json" + }, + "type": "array" }, "name": { - "type": "string", - "description": "Name of the test suite" + "description": "Name of the test suite", + "type": "string" + }, + "participant_verifiable_capabilities": { + "description": "Definitions of capabilities verified by this test suite for individual participants.", + "items": { + "$ref": "../../reports/capability_definitions/ParticipantCapabilityDefinition.json" + }, + "type": [ + "array", + "null" + ] }, "report_evaluation_scenario": { + "description": "The scenario executed after all the actions that evaluates the test suite report. Must be a ReportEvaluationScenario.", "oneOf": [ { "type": "null" @@ -18,45 +37,26 @@ { "$ref": "../../scenarios/definitions/TestScenarioDeclaration.json" } - ], - "description": "The scenario executed after all the actions that evaluates the test suite report. Must be a ReportEvaluationScenario." - }, - "participant_verifiable_capabilities": { - "type": [ - "array", - "null" - ], - "items": { - "$ref": "../../reports/capability_definitions/ParticipantCapabilityDefinition.json" - }, - "description": "Definitions of capabilities verified by this test suite for individual participants." + ] }, "resources": { - "type": "object", - "properties": { - "$ref": { - "type": "string", - "description": "Path to content that replaces the $ref" - } - }, "additionalProperties": { "type": "string" }, - "description": "Enumeration of the resources used by this test suite" - }, - "actions": { - "type": "array", - "items": { - "$ref": "TestSuiteActionDeclaration.json" + "description": "Enumeration of the resources used by this test suite", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + } }, - "description": "The actions to take when running the test suite. Components will be executed in order." + "type": "object" } }, - "$id": "https://github.com/interuss/monitoring/blob/main/schemas/monitoring/uss_qualifier/suites/definitions/TestSuiteDefinition.json", - "description": "Schema for the definition of a test suite, analogous to the Python TestScenario subclass for scenarios\n\nmonitoring.uss_qualifier.suites.definitions.TestSuiteDefinition, as defined in monitoring/uss_qualifier/suites/definitions.py", "required": [ "actions", "name", "resources" - ] + ], + "type": "object" } \ No newline at end of file diff --git a/schemas/uas_standards/astm/f3411/v22a/api/LatLngPoint.json b/schemas/uas_standards/astm/f3411/v22a/api/LatLngPoint.json new file mode 100644 index 0000000000..5adcac5df8 --- /dev/null +++ b/schemas/uas_standards/astm/f3411/v22a/api/LatLngPoint.json @@ -0,0 +1,22 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/uas_standards/astm/f3411/v22a/api/LatLngPoint.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "Point on the earth's surface.\n\nuas_standards.astm.f3411.v22a.api.LatLngPoint, as defined in uas_standards/astm/f3411/v22a/api.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "lat": { + "type": "number" + }, + "lng": { + "type": "number" + } + }, + "required": [ + "lat", + "lng" + ], + "type": "object" +} \ No newline at end of file diff --git a/schemas/uas_standards/astm/f3411/v22a/api/Polygon.json b/schemas/uas_standards/astm/f3411/v22a/api/Polygon.json new file mode 100644 index 0000000000..5327ab8bf1 --- /dev/null +++ b/schemas/uas_standards/astm/f3411/v22a/api/Polygon.json @@ -0,0 +1,21 @@ +{ + "$id": "https://github.com/interuss/monitoring/blob/main/schemas/uas_standards/astm/f3411/v22a/api/Polygon.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "An enclosed area on the earth. The bounding edges of this polygon are defined to be the shortest paths between connected vertices. This means, for instance, that the edge between two points both defined at a particular latitude is not generally contained at that latitude. The winding order must be interpreted as the order which produces the smaller area. The path between two vertices is defined to be the shortest possible path between those vertices. Edges may not cross. Vertices may not be duplicated. In particular, the final polygon vertex must not be identical to the first vertex.\n\nuas_standards.astm.f3411.v22a.api.Polygon, as defined in uas_standards/astm/f3411/v22a/api.py", + "properties": { + "$ref": { + "description": "Path to content that replaces the $ref", + "type": "string" + }, + "vertices": { + "items": { + "$ref": "LatLngPoint.json" + }, + "type": "array" + } + }, + "required": [ + "vertices" + ], + "type": "object" +} \ No newline at end of file