(Note: this issue is opened in the context of #754 regarding modifications to the observation API of a Display Provider)
The display provider's observation API is missing some optional fields that are defined in the standard, mainly:
(legend: d - added to draft pr, v - nothing to do)
timestamp accuracy (missing entirely) d
geodetic altitude (present in openAPI) v
geodetic vertical accuracy (missing entirely) d
horizontal accuracy (missing entirely) d
speed accuracy (missing entirely) d
vertical speed (missing entirely) d
UA Type (missing entirely) d
UA Classification Type (missing entirely: this field does not actually exist. See observations)
eu_classification (the actual field we need to optionally inject and provide) d
height (included but not expressed in the Python classes, should be checked) v
height type (included but not expressed in the Python classes) v
As-is, the qualifier is not able to fully verify compliance with NET0470 due to this. The solution we discussed at the community meeting is to expand the existing Observation API for it to include these optional fields.
The API definition for the display provider is here.
We probably want to add data types or modify the existing ones in commons.yaml and injection.yaml where required, given that any field we wish to observe must also be injected – though the injection API seems to cover all of them, except for the UA Type
observations
Where possible, we will want to mimic the existing USS uss/flights endpoint (in terms of the data structure) to avoid possible confusion and making the update of the mock_uss easier.
UA Classification Type
According to the OpenAPI spec for RID v2, the classification type is inferred implicitly depending on the presence of the eu_classification field:
When this field is specified, the Classification Type is "European
Union". If no other classification field is specified, the Classification Type
is "Undeclared"
It is assumed that this should be taken over for the RID testing interfaces as-is (injection and observation APIs)
misc
We will also need (in a second step) to update our mock_uss to ensure it populates new fields
Things to check:
height is available at injection and observation, and is validated by the qualifier. Need to confirm the validation occurs. If it does, nothing else to do.
height_type: same as height, should be covered in theory. Confirm that the check actually happens.
(Note: this issue is opened in the context of #754 regarding modifications to the observation API of a Display Provider)
The display provider's observation API is missing some optional fields that are defined in the standard, mainly:
(legend: d - added to draft pr, v - nothing to do)
eu_classification
(the actual field we need to optionally inject and provide) dAs-is, the qualifier is not able to fully verify compliance with NET0470 due to this. The solution we discussed at the community meeting is to expand the existing Observation API for it to include these optional fields.
The API definition for the display provider is here.
We probably want to add data types or modify the existing ones in commons.yaml and injection.yaml where required, given that any field we wish to observe must also be injected – though the injection API seems to cover all of them, except for the UA Type
observations
Where possible, we will want to mimic the existing USS
uss/flights
endpoint (in terms of the data structure) to avoid possible confusion and making the update of the mock_uss easier.UA Classification Type
According to the OpenAPI spec for RID v2, the classification type is inferred implicitly depending on the presence of the
eu_classification
field:It is assumed that this should be taken over for the RID testing interfaces as-is (injection and observation APIs)
misc