From 02ff9a03701b677deabdb32e2aab720fa0bfe7d3 Mon Sep 17 00:00:00 2001 From: Michael Barroco Date: Tue, 8 Aug 2023 16:47:27 +0200 Subject: [PATCH 01/10] Add to details operator location and altitude fields --- rid/v1/injection.yaml | 67 ++++++++++++++++++++--------------------- rid/v1/observation.yaml | 39 ++++++++++++++---------- 2 files changed, 55 insertions(+), 51 deletions(-) diff --git a/rid/v1/injection.yaml b/rid/v1/injection.yaml index 953adb0..4e91014 100644 --- a/rid/v1/injection.yaml +++ b/rid/v1/injection.yaml @@ -229,14 +229,7 @@ components: lng: $ref: '#/components/schemas/Longitude' alt: - format: float - description: 'Geodetic altitude (NOT altitude above launch, altitude above - ground, or EGM96): aircraft distance above the WGS84 ellipsoid as measured - along a line that passes through the aircraft and is normal to the surface - of the WGS84 ellipsoid. This value is provided in meters and must have - a minimum resolution of 1 meter.' - type: number - example: 1321.2 + $ref: '#/components/schemas/Altitude' accuracy_h: anyOf: - $ref: '#/components/schemas/HorizontalAccuracy' @@ -312,9 +305,13 @@ components: $ref: '#/components/schemas/Latitude' Altitude: format: float - description: An altitude, in meters, above the WGS84 ellipsoid. + description: 'Geodetic altitude (NOT altitude above launch, altitude above + ground, or EGM96): aircraft distance above the WGS84 ellipsoid as measured + along a line that passes through the aircraft and is normal to the surface + of the WGS84 ellipsoid. This value is provided in meters and must have + a minimum resolution of 1 meter.' type: number - example: 19.5 + example: 1321.2 RIDOperationalStatus: description: Indicates operational status of associated aircraft. enum: @@ -337,9 +334,7 @@ components: type: string example: a3423b-213401-0023 operator_id: - description: 'CAA-issued registration/license ID for the remote pilot or - operator. ' - type: string + $ref: '#/components/schemas/OperatorId' operator_location: anyOf: - $ref: '#/components/schemas/LatLngPoint' @@ -388,6 +383,23 @@ components: type: string position: $ref: '#/components/schemas/RIDAircraftPosition' + RIDTrack: + format: float + description: Direction of flight expressed as a "True North-based" ground + track angle. This value is provided in degrees East of North with a minimum + resolution of 1 degree. + maximum: 360 + exclusiveMaximum: true + minimum: 0 + exclusiveMinimum: false + type: number + RIDSpeed: + format: float + description: Ground speed of flight in meters per second. + minimum: 0 + exclusiveMinimum: false + type: number + example: 1.9 RIDAircraftState: description: State of an aircraft for the purposes of remote ID. required: @@ -426,22 +438,9 @@ components: position: $ref: '#/components/schemas/RIDAircraftPosition' track: - format: float - description: Direction of flight expressed as a "True North-based" ground - track angle. This value is provided in degrees East of North with a minimum - resolution of 1 degree. - maximum: 360 - exclusiveMaximum: true - minimum: 0 - exclusiveMinimum: false - type: number + $ref: '#/components/schemas/RIDTrack' speed: - format: float - description: Ground speed of flight in meters per second. - minimum: 0 - exclusiveMinimum: false - type: number - example: 1.9 + $ref: '#/components/schemas/RIDSpeed' speed_accuracy: anyOf: - $ref: '#/components/schemas/SpeedAccuracy' @@ -542,18 +541,16 @@ components: - Class5 - Class6 default: EUClassUndefined - + OperatorId: + description: 'CAA-issued registration/license ID for the remote pilot or + operator. ' + type: string OperatorAltitude: description: Altitude associated with the Remote Pilot type: object properties: altitude: - description: Provides the Operator Altitude based on WGS-84 height above ellipsoid (HAE) - (See Geodetic Altitude). This value is provided in meters and must have a minimum - resolution of 1 m. - type: number - format: float - example: 120 + $ref: "#/components/schemas/Altitude" altitude_type: description: Source of data for the altitude field. type: string diff --git a/rid/v1/observation.yaml b/rid/v1/observation.yaml index ad3b4e7..1c9963f 100644 --- a/rid/v1/observation.yaml +++ b/rid/v1/observation.yaml @@ -1,7 +1,7 @@ openapi: 3.0.2 info: title: Remote ID Display Data Observation - version: 0.0.1 + version: 0.0.2 description: >- This interface is implemented by every Display Provider wishing to be tested by the automated testing framework. The automated testing suite calls this interface to obtain current remote ID information from the perspective of the Display Provider. @@ -86,6 +86,10 @@ components: GetDetailsResponse: description: Response to a request to get details about a flight. type: object + properties: + operator: + allOf: + - $ref: '#/components/schemas/Operator' Flight: description: '' required: @@ -106,6 +110,20 @@ components: type: array items: $ref: '#/components/schemas/Path' + Operator: + description: "Operator's information" + type: object + properties: + id: + description: 'CAA-issued registration/license ID for the remote pilot or + operator. ' + type: string + location: + anyOf: + - $ref: 'injection.yaml#/components/schemas/LatLngPoint' + altitude: + anyOf: + - $ref: 'injection.yaml#/components/schemas/OperatorAltitude' Cluster: description: 'A general area containing one or more flight.' type: object @@ -138,23 +156,11 @@ components: type: object properties: lat: - format: double - description: >- - Degrees of latitude north of the equator, with reference to the WGS84 ellipsoid. - type: number + $ref: 'injection.yaml#/components/schemas/Latitude' lng: - format: double - description: >- - Degrees of longitude east of the Prime Meridian, with reference to the WGS84 - ellipsoid. - type: number + $ref: 'injection.yaml#/components/schemas/Longitude' alt: - format: double - description: >- - Geodetic altitude (NOT altitude above launch, altitude above ground, or EGM96): - aircraft distance above the WGS84 ellipsoid as measured along a line that passes - through the aircraft and is normal to the surface of the WGS84 ellipsoid. - type: number + $ref: 'injection.yaml#/components/schemas/Altitude' Path: description: Path followed by a flight. required: @@ -180,3 +186,4 @@ components: security: - RIDAuth: - dss.read.identification_service_areas + From d29fcb7420f8c18e3e3036a69d0b17323ca9a6aa Mon Sep 17 00:00:00 2001 From: Michael Barroco Date: Fri, 25 Aug 2023 14:48:05 +0200 Subject: [PATCH 02/10] Move common schemas to commons.yaml --- rid/v1/commons.yaml | 81 +++++++++++++++++++++++++++++++++++++ rid/v1/injection.yaml | 89 ++++------------------------------------- rid/v1/observation.yaml | 10 ++--- 3 files changed, 93 insertions(+), 87 deletions(-) create mode 100644 rid/v1/commons.yaml diff --git a/rid/v1/commons.yaml b/rid/v1/commons.yaml new file mode 100644 index 0000000..7ca9e02 --- /dev/null +++ b/rid/v1/commons.yaml @@ -0,0 +1,81 @@ +openapi: 3.2.0 +info: + title: Definitions used in RID ASTM F3411-22a injection and observation interfaces + version: 0.1.0 +components: + schemas: + Altitude: + format: float + description: 'Geodetic altitude (NOT altitude above launch, altitude above + ground, or EGM96): aircraft distance above the WGS84 ellipsoid as measured + along a line that passes through the aircraft and is normal to the surface + of the WGS84 ellipsoid. This value is provided in meters and must have + a minimum resolution of 1 meter.' + type: number + example: 1321.2 + Latitude: + format: double + description: Degrees of latitude north of the equator, with reference to the + WGS84 ellipsoid. + maximum: 90 + exclusiveMaximum: false + minimum: -90 + exclusiveMinimum: false + type: number + example: 34.123 + Longitude: + format: double + description: Degrees of longitude east of the Prime Meridian, with reference + to the WGS84 ellipsoid. + maximum: -180 + exclusiveMaximum: false + minimum: 180 + exclusiveMinimum: false + type: number + example: -118.456 + LatLngPoint: + description: Point on the earth's surface. + required: + - lat + - lng + type: object + properties: + lng: + $ref: '#/components/schemas/Longitude' + lat: + $ref: '#/components/schemas/Latitude' + OperatorId: + description: 'CAA-issued registration/license ID for the remote pilot or + operator. ' + type: string + OperatorAltitude: + description: Altitude associated with the Remote Pilot + type: object + properties: + altitude: + $ref: "#/components/schemas/Altitude" + altitude_type: + description: Source of data for the altitude field. + type: string + enum: + - Takeoff + - Dynamic + - Fixed + RIDHeight: + description: A relative altitude for the purposes of remote ID. + required: + - distance + - reference + type: object + properties: + distance: + format: float + description: Distance above reference datum. This value is provided in + meters and must have a minimum resolution of 1 meter. + type: number + reference: + description: The reference datum above which the height is reported. + enum: + - TakeoffLocation + - GroundLevel + type: string diff --git a/rid/v1/injection.yaml b/rid/v1/injection.yaml index 4e91014..1da5bef 100644 --- a/rid/v1/injection.yaml +++ b/rid/v1/injection.yaml @@ -225,11 +225,11 @@ components: type: object properties: lat: - $ref: '#/components/schemas/Latitude' + $ref: 'commons.yaml#/components/schemas/Latitude' lng: - $ref: '#/components/schemas/Longitude' + $ref: 'commons.yaml#/components/schemas/Longitude' alt: - $ref: '#/components/schemas/Altitude' + $ref: 'commons.yaml#/components/schemas/Altitude' accuracy_h: anyOf: - $ref: '#/components/schemas/HorizontalAccuracy' @@ -254,64 +254,6 @@ components: deltas" between aircraft. This value is provided in meters and must have a minimum resolution of 1 meter. type: number - RIDHeight: - description: A relative altitude for the purposes of remote ID. - required: - - distance - - reference - type: object - properties: - distance: - format: float - description: Distance above reference datum. This value is provided in - meters and must have a minimum resolution of 1 meter. - type: number - reference: - description: The reference datum above which the height is reported. - enum: - - TakeoffLocation - - GroundLevel - type: string - Latitude: - format: double - description: Degrees of latitude north of the equator, with reference to the - WGS84 ellipsoid. - maximum: 90 - exclusiveMaximum: false - minimum: -90 - exclusiveMinimum: false - type: number - example: 34.123 - Longitude: - format: double - description: Degrees of longitude east of the Prime Meridian, with reference - to the WGS84 ellipsoid. - maximum: -180 - exclusiveMaximum: false - minimum: 180 - exclusiveMinimum: false - type: number - example: -118.456 - LatLngPoint: - description: Point on the earth's surface. - required: - - lat - - lng - type: object - properties: - lng: - $ref: '#/components/schemas/Longitude' - lat: - $ref: '#/components/schemas/Latitude' - Altitude: - format: float - description: 'Geodetic altitude (NOT altitude above launch, altitude above - ground, or EGM96): aircraft distance above the WGS84 ellipsoid as measured - along a line that passes through the aircraft and is normal to the surface - of the WGS84 ellipsoid. This value is provided in meters and must have - a minimum resolution of 1 meter.' - type: number - example: 1321.2 RIDOperationalStatus: description: Indicates operational status of associated aircraft. enum: @@ -334,10 +276,10 @@ components: type: string example: a3423b-213401-0023 operator_id: - $ref: '#/components/schemas/OperatorId' + $ref: 'commons.yaml#/components/schemas/OperatorId' operator_location: anyOf: - - $ref: '#/components/schemas/LatLngPoint' + - $ref: 'commons.yaml#/components/schemas/LatLngPoint' description: Location of party controlling the aircraft. operation_description: description: Free-text field that enables the operator to describe the purpose @@ -362,7 +304,7 @@ components: uas_id: $ref: '#/components/schemas/UASID' operator_altitude: - $ref: '#/components/schemas/OperatorAltitude' + $ref: 'commons.yaml#/components/schemas/OperatorAltitude' eu_classification: description: When this field is specified, the Classification Type is "European Union". If no other classification field is specified, the Classification Type @@ -451,7 +393,7 @@ components: type: number example: 0.2 height: - $ref: '#/components/schemas/RIDHeight' + $ref: 'commons.yaml#/components/schemas/RIDHeight' group_radius: format: float description: Farthest horizontal distance from reported group location at @@ -541,23 +483,6 @@ components: - Class5 - Class6 default: EUClassUndefined - OperatorId: - description: 'CAA-issued registration/license ID for the remote pilot or - operator. ' - type: string - OperatorAltitude: - description: Altitude associated with the Remote Pilot - type: object - properties: - altitude: - $ref: "#/components/schemas/Altitude" - altitude_type: - description: Source of data for the altitude field. - type: string - enum: - - Takeoff - - Dynamic - - Fixed SpecificSessionID: description: |- A unique 20 byte ID intended to identify a specific flight (session) while providing a diff --git a/rid/v1/observation.yaml b/rid/v1/observation.yaml index 1c9963f..a59166a 100644 --- a/rid/v1/observation.yaml +++ b/rid/v1/observation.yaml @@ -120,10 +120,10 @@ components: type: string location: anyOf: - - $ref: 'injection.yaml#/components/schemas/LatLngPoint' + - $ref: 'commons.yaml#/components/schemas/LatLngPoint' altitude: anyOf: - - $ref: 'injection.yaml#/components/schemas/OperatorAltitude' + - $ref: 'commons.yaml#/components/schemas/OperatorAltitude' Cluster: description: 'A general area containing one or more flight.' type: object @@ -156,11 +156,11 @@ components: type: object properties: lat: - $ref: 'injection.yaml#/components/schemas/Latitude' + $ref: 'commons.yaml#/components/schemas/Latitude' lng: - $ref: 'injection.yaml#/components/schemas/Longitude' + $ref: 'commons.yaml#/components/schemas/Longitude' alt: - $ref: 'injection.yaml#/components/schemas/Altitude' + $ref: 'commons.yaml#/components/schemas/Altitude' Path: description: Path followed by a flight. required: From ec36b6ddc6e770060ec0bcef179b814094cf295e Mon Sep 17 00:00:00 2001 From: Michael Barroco Date: Fri, 25 Aug 2023 15:01:28 +0200 Subject: [PATCH 03/10] Add current state and move RIDTrack and RIDSpeed to commons --- rid/v1/commons.yaml | 17 +++++++++++++++++ rid/v1/injection.yaml | 21 ++------------------- rid/v1/observation.yaml | 27 +++++++++++++++++++++++---- 3 files changed, 42 insertions(+), 23 deletions(-) diff --git a/rid/v1/commons.yaml b/rid/v1/commons.yaml index 7ca9e02..1426659 100644 --- a/rid/v1/commons.yaml +++ b/rid/v1/commons.yaml @@ -79,3 +79,20 @@ components: - TakeoffLocation - GroundLevel type: string + RIDSpeed: + format: float + description: Ground speed of flight in meters per second. + minimum: 0 + exclusiveMinimum: false + type: number + example: 1.9 + RIDTrack: + format: float + description: Direction of flight expressed as a "True North-based" ground + track angle. This value is provided in degrees East of North with a minimum + resolution of 1 degree. + maximum: 360 + exclusiveMaximum: true + minimum: 0 + exclusiveMinimum: false + type: number diff --git a/rid/v1/injection.yaml b/rid/v1/injection.yaml index 1da5bef..c0365ef 100644 --- a/rid/v1/injection.yaml +++ b/rid/v1/injection.yaml @@ -325,23 +325,6 @@ components: type: string position: $ref: '#/components/schemas/RIDAircraftPosition' - RIDTrack: - format: float - description: Direction of flight expressed as a "True North-based" ground - track angle. This value is provided in degrees East of North with a minimum - resolution of 1 degree. - maximum: 360 - exclusiveMaximum: true - minimum: 0 - exclusiveMinimum: false - type: number - RIDSpeed: - format: float - description: Ground speed of flight in meters per second. - minimum: 0 - exclusiveMinimum: false - type: number - example: 1.9 RIDAircraftState: description: State of an aircraft for the purposes of remote ID. required: @@ -380,9 +363,9 @@ components: position: $ref: '#/components/schemas/RIDAircraftPosition' track: - $ref: '#/components/schemas/RIDTrack' + $ref: 'commons.yaml#/components/schemas/RIDTrack' speed: - $ref: '#/components/schemas/RIDSpeed' + $ref: 'commons.yaml#/components/schemas/RIDSpeed' speed_accuracy: anyOf: - $ref: '#/components/schemas/SpeedAccuracy' diff --git a/rid/v1/observation.yaml b/rid/v1/observation.yaml index a59166a..9381ff7 100644 --- a/rid/v1/observation.yaml +++ b/rid/v1/observation.yaml @@ -88,8 +88,11 @@ components: type: object properties: operator: - allOf: + anyOf: - $ref: '#/components/schemas/Operator' + uas: + anyOf: + - $ref: '#/components/schemas/UAS' Flight: description: '' required: @@ -101,6 +104,8 @@ components: Identifier of flight that may be used to obtain details about the flight. This is not necessarily the UTM/flight ID in the remote ID system. type: string + current_state: + $ref: '#/components/schemas/CurrentState' most_recent_position: description: Most recent position known for the flight. allOf: @@ -110,13 +115,25 @@ components: type: array items: $ref: '#/components/schemas/Path' + CurrentState: + description: 'Current state of an aircraft.' + type: object + properties: + timestamp: + description: Time at which this state was valid. + type: string + track: + $ref: 'commons.yaml#/components/schemas/RIDTrack' + speed: + $ref: 'commons.yaml#/components/schemas/RIDSpeed' + # TODO for next version: Move most_recent_position here. Operator: description: "Operator's information" type: object properties: id: - description: 'CAA-issued registration/license ID for the remote pilot or - operator. ' + description: >- + CAA-issued registration/license ID for the remote pilot or operator. type: string location: anyOf: @@ -147,7 +164,7 @@ components: description: Number of flights within the cluster. type: number format: int32 - minValue: 1 + minimum: 1 Position: description: 'A position on Earth.' required: @@ -161,6 +178,8 @@ components: $ref: 'commons.yaml#/components/schemas/Longitude' alt: $ref: 'commons.yaml#/components/schemas/Altitude' + height: + $ref: 'commons.yaml#/components/schemas/RIDHeight' Path: description: Path followed by a flight. required: From 85f12da0c33225d2158d0e6462f91bc0169fc355 Mon Sep 17 00:00:00 2001 From: Michael Barroco Date: Fri, 25 Aug 2023 15:06:15 +0200 Subject: [PATCH 04/10] Add operational status --- rid/v1/commons.yaml | 9 +++++++++ rid/v1/injection.yaml | 9 --------- rid/v1/observation.yaml | 9 +++++++++ 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/rid/v1/commons.yaml b/rid/v1/commons.yaml index 1426659..9898718 100644 --- a/rid/v1/commons.yaml +++ b/rid/v1/commons.yaml @@ -79,6 +79,15 @@ components: - TakeoffLocation - GroundLevel type: string + RIDOperationalStatus: + description: Indicates operational status of associated aircraft. + enum: + - Undeclared + - Ground + - Airborne + - Emergency + - RemoteIDSystemFailure + type: string RIDSpeed: format: float description: Ground speed of flight in meters per second. diff --git a/rid/v1/injection.yaml b/rid/v1/injection.yaml index c0365ef..b2f8d03 100644 --- a/rid/v1/injection.yaml +++ b/rid/v1/injection.yaml @@ -254,15 +254,6 @@ components: deltas" between aircraft. This value is provided in meters and must have a minimum resolution of 1 meter. type: number - RIDOperationalStatus: - description: Indicates operational status of associated aircraft. - enum: - - Undeclared - - Ground - - Airborne - - Emergency - - RemoteIDSystemFailure - type: string RIDFlightDetails: description: Details about a flight reported by a remote ID service provider. At least one of the registration or serial fields must be filled if required diff --git a/rid/v1/observation.yaml b/rid/v1/observation.yaml index 9381ff7..b4a2ebb 100644 --- a/rid/v1/observation.yaml +++ b/rid/v1/observation.yaml @@ -122,6 +122,8 @@ components: timestamp: description: Time at which this state was valid. type: string + operational_status: + $ref: 'commons.yaml#/components/schemas/RIDOperationalStatus' track: $ref: 'commons.yaml#/components/schemas/RIDTrack' speed: @@ -141,6 +143,13 @@ components: altitude: anyOf: - $ref: 'commons.yaml#/components/schemas/OperatorAltitude' + UAS: + description: 'UAS information' + type: object + properties: + id: + description: Format agnostic identification of the UAS performing this flight. + type: string Cluster: description: 'A general area containing one or more flight.' type: object From a160dfa467d5f0b5da8447e19c5ca31c3261fd22 Mon Sep 17 00:00:00 2001 From: Michael Barroco Date: Fri, 25 Aug 2023 15:18:29 +0200 Subject: [PATCH 05/10] Improve wording --- rid/v1/commons.yaml | 2 +- rid/v1/observation.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/rid/v1/commons.yaml b/rid/v1/commons.yaml index 9898718..76a1b03 100644 --- a/rid/v1/commons.yaml +++ b/rid/v1/commons.yaml @@ -1,6 +1,6 @@ openapi: 3.2.0 info: - title: Definitions used in RID ASTM F3411-22a injection and observation interfaces + title: Definitions used for the injection and observation interfaces version: 0.1.0 components: schemas: diff --git a/rid/v1/observation.yaml b/rid/v1/observation.yaml index b4a2ebb..06f11ef 100644 --- a/rid/v1/observation.yaml +++ b/rid/v1/observation.yaml @@ -148,7 +148,7 @@ components: type: object properties: id: - description: Format agnostic identification of the UAS performing this flight. + description: Observed arbitrary and format agnostic (string) identification of a UAS. type: string Cluster: description: 'A general area containing one or more flight.' From 42ca7cdf14793a21bcb803222ef228536f9e7ce0 Mon Sep 17 00:00:00 2001 From: Michael Barroco Date: Thu, 7 Sep 2023 22:47:48 +0200 Subject: [PATCH 06/10] Address PR comment: Update Altitude description --- rid/v1/commons.yaml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/rid/v1/commons.yaml b/rid/v1/commons.yaml index 76a1b03..c977b9c 100644 --- a/rid/v1/commons.yaml +++ b/rid/v1/commons.yaml @@ -6,11 +6,7 @@ components: schemas: Altitude: format: float - description: 'Geodetic altitude (NOT altitude above launch, altitude above - ground, or EGM96): aircraft distance above the WGS84 ellipsoid as measured - along a line that passes through the aircraft and is normal to the surface - of the WGS84 ellipsoid. This value is provided in meters and must have - a minimum resolution of 1 meter.' + description: An altitude, in meters, above the WGS84 ellipsoid. type: number example: 1321.2 Latitude: From 78a6e6845c6da9ad3798c28ae92138b09a48cc42 Mon Sep 17 00:00:00 2001 From: Michael Barroco Date: Wed, 13 Sep 2023 17:35:04 +0200 Subject: [PATCH 07/10] Fix wrong link --- rid/v1/injection.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rid/v1/injection.yaml b/rid/v1/injection.yaml index b2f8d03..ec2cdfe 100644 --- a/rid/v1/injection.yaml +++ b/rid/v1/injection.yaml @@ -350,7 +350,7 @@ components: exclusiveMinimum: false type: number operational_status: - $ref: '#/components/schemas/RIDOperationalStatus' + $ref: 'commons.yaml#/components/schemas/RIDOperationalStatus' position: $ref: '#/components/schemas/RIDAircraftPosition' track: From 0603379238cad0c0daadc7a72105e00f430d88a1 Mon Sep 17 00:00:00 2001 From: Michael Barroco Date: Wed, 13 Sep 2023 20:11:47 +0200 Subject: [PATCH 08/10] Fix OperatorLocationType instead of Altitude Type --- rid/v1/commons.yaml | 20 +++++++------------- rid/v1/injection.yaml | 8 ++++++-- rid/v1/observation.yaml | 5 ++++- 3 files changed, 17 insertions(+), 16 deletions(-) diff --git a/rid/v1/commons.yaml b/rid/v1/commons.yaml index c977b9c..046c754 100644 --- a/rid/v1/commons.yaml +++ b/rid/v1/commons.yaml @@ -44,19 +44,13 @@ components: description: 'CAA-issued registration/license ID for the remote pilot or operator. ' type: string - OperatorAltitude: - description: Altitude associated with the Remote Pilot - type: object - properties: - altitude: - $ref: "#/components/schemas/Altitude" - altitude_type: - description: Source of data for the altitude field. - type: string - enum: - - Takeoff - - Dynamic - - Fixed + OperatorLocationType: + description: Takeoff location, fixed location, or dynamic location representing the Operator Location + type: string + enum: + - Takeoff + - Dynamic + - Fixed RIDHeight: description: A relative altitude for the purposes of remote ID. required: diff --git a/rid/v1/injection.yaml b/rid/v1/injection.yaml index ec2cdfe..c7c0e56 100644 --- a/rid/v1/injection.yaml +++ b/rid/v1/injection.yaml @@ -272,6 +272,12 @@ components: anyOf: - $ref: 'commons.yaml#/components/schemas/LatLngPoint' description: Location of party controlling the aircraft. + operator_altitude: + description: Altitude associated with the Remote Pilot + anyOf: + - $ref: 'commons.yaml#/components/schemas/Altitude' + operator_location_type: + $ref: 'commons.yaml#/components/schemas/OperatorLocationType' operation_description: description: Free-text field that enables the operator to describe the purpose of a flight, if so desired. @@ -294,8 +300,6 @@ components: example: FA12345897 uas_id: $ref: '#/components/schemas/UASID' - operator_altitude: - $ref: 'commons.yaml#/components/schemas/OperatorAltitude' eu_classification: description: When this field is specified, the Classification Type is "European Union". If no other classification field is specified, the Classification Type diff --git a/rid/v1/observation.yaml b/rid/v1/observation.yaml index 06f11ef..b45baf7 100644 --- a/rid/v1/observation.yaml +++ b/rid/v1/observation.yaml @@ -140,9 +140,12 @@ components: location: anyOf: - $ref: 'commons.yaml#/components/schemas/LatLngPoint' + location_type: + $ref: 'commons.yaml#/components/schemas/OperatorLocationType' altitude: + description: Altitude associated with the Remote Pilot anyOf: - - $ref: 'commons.yaml#/components/schemas/OperatorAltitude' + - $ref: 'commons.yaml#/components/schemas/Altitude' UAS: description: 'UAS information' type: object From a6e81dc9a64ea8360f479f504b41de83b8ed7d07 Mon Sep 17 00:00:00 2001 From: Michael Barroco Date: Wed, 13 Sep 2023 20:16:49 +0200 Subject: [PATCH 09/10] Revert "Fix OperatorLocationType instead of Altitude Type" This reverts commit 0603379238cad0c0daadc7a72105e00f430d88a1. --- rid/v1/commons.yaml | 20 +++++++++++++------- rid/v1/injection.yaml | 8 ++------ rid/v1/observation.yaml | 5 +---- 3 files changed, 16 insertions(+), 17 deletions(-) diff --git a/rid/v1/commons.yaml b/rid/v1/commons.yaml index 046c754..c977b9c 100644 --- a/rid/v1/commons.yaml +++ b/rid/v1/commons.yaml @@ -44,13 +44,19 @@ components: description: 'CAA-issued registration/license ID for the remote pilot or operator. ' type: string - OperatorLocationType: - description: Takeoff location, fixed location, or dynamic location representing the Operator Location - type: string - enum: - - Takeoff - - Dynamic - - Fixed + OperatorAltitude: + description: Altitude associated with the Remote Pilot + type: object + properties: + altitude: + $ref: "#/components/schemas/Altitude" + altitude_type: + description: Source of data for the altitude field. + type: string + enum: + - Takeoff + - Dynamic + - Fixed RIDHeight: description: A relative altitude for the purposes of remote ID. required: diff --git a/rid/v1/injection.yaml b/rid/v1/injection.yaml index c7c0e56..ec2cdfe 100644 --- a/rid/v1/injection.yaml +++ b/rid/v1/injection.yaml @@ -272,12 +272,6 @@ components: anyOf: - $ref: 'commons.yaml#/components/schemas/LatLngPoint' description: Location of party controlling the aircraft. - operator_altitude: - description: Altitude associated with the Remote Pilot - anyOf: - - $ref: 'commons.yaml#/components/schemas/Altitude' - operator_location_type: - $ref: 'commons.yaml#/components/schemas/OperatorLocationType' operation_description: description: Free-text field that enables the operator to describe the purpose of a flight, if so desired. @@ -300,6 +294,8 @@ components: example: FA12345897 uas_id: $ref: '#/components/schemas/UASID' + operator_altitude: + $ref: 'commons.yaml#/components/schemas/OperatorAltitude' eu_classification: description: When this field is specified, the Classification Type is "European Union". If no other classification field is specified, the Classification Type diff --git a/rid/v1/observation.yaml b/rid/v1/observation.yaml index b45baf7..06f11ef 100644 --- a/rid/v1/observation.yaml +++ b/rid/v1/observation.yaml @@ -140,12 +140,9 @@ components: location: anyOf: - $ref: 'commons.yaml#/components/schemas/LatLngPoint' - location_type: - $ref: 'commons.yaml#/components/schemas/OperatorLocationType' altitude: - description: Altitude associated with the Remote Pilot anyOf: - - $ref: 'commons.yaml#/components/schemas/Altitude' + - $ref: 'commons.yaml#/components/schemas/OperatorAltitude' UAS: description: 'UAS information' type: object From d800d32e6e922f21273f27ca256bbfcd7f5ef4ad Mon Sep 17 00:00:00 2001 From: Michael Barroco Date: Thu, 14 Sep 2023 20:08:32 +0200 Subject: [PATCH 10/10] Update description --- rid/v1/observation.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rid/v1/observation.yaml b/rid/v1/observation.yaml index 06f11ef..9938f16 100644 --- a/rid/v1/observation.yaml +++ b/rid/v1/observation.yaml @@ -120,7 +120,7 @@ components: type: object properties: timestamp: - description: Time at which this state was valid. + description: Time at which the message containing the current state information was generated by the display provider. type: string operational_status: $ref: 'commons.yaml#/components/schemas/RIDOperationalStatus'