at.adsb.flight.defs
Schema Diff
+10 -10
Compatibility Analysis
Breaking Changes Detected
4 breaking changes, 4 non-breaking changes.
Breaking Changes (4)
- RemovedVertex RemovedVertex { vertex_id: "at.adsb.flight.defs#contributor.sightingUri" }
- RemovedVertex RemovedVertex { vertex_id: "at.adsb.flight.defs#contributor.stationUri" }
- RemovedEdge RemovedEdge { src: "at.adsb.flight.defs#contributor", tgt: "at.adsb.flight.defs#contributor.sightingUri", kind: "prop", name: Some("sightingUri") }
- RemovedEdge RemovedEdge { src: "at.adsb.flight.defs#contributor", tgt: "at.adsb.flight.defs#contributor.stationUri", kind: "prop", name: Some("stationUri") }
Non-Breaking Changes (4)
- AddedVertex AddedVertex { vertex_id: "at.adsb.flight.defs#contributor.sighting" }
- AddedVertex AddedVertex { vertex_id: "at.adsb.flight.defs#contributor.station" }
- AddedEdge AddedEdge { src: "at.adsb.flight.defs#contributor", tgt: "at.adsb.flight.defs#contributor.sighting", kind: "prop", name: Some("sighting") }
- AddedEdge AddedEdge { src: "at.adsb.flight.defs#contributor", tgt: "at.adsb.flight.defs#contributor.station", kind: "prop", name: Some("station") }
Migration Guidance
Removed Elements
RemovedVertex { vertex_id: "at.adsb.flight.defs#contributor.sightingUri" }RemovedVertex { vertex_id: "at.adsb.flight.defs#contributor.stationUri" }
Added Elements
AddedVertex { vertex_id: "at.adsb.flight.defs#contributor.sighting" }AddedVertex { vertex_id: "at.adsb.flight.defs#contributor.station" }
Additional Notes
- Breaking: RemovedEdge { src: "at.adsb.flight.defs#contributor", tgt: "at.adsb.flight.defs#contributor.sightingUri", kind: "prop", name: Some("sightingUri") }
- Breaking: RemovedEdge { src: "at.adsb.flight.defs#contributor", tgt: "at.adsb.flight.defs#contributor.stationUri", kind: "prop", name: Some("stationUri") }
- Non-breaking: AddedEdge { src: "at.adsb.flight.defs#contributor", tgt: "at.adsb.flight.defs#contributor.sighting", kind: "prop", name: Some("sighting") }
- Non-breaking: AddedEdge { src: "at.adsb.flight.defs#contributor", tgt: "at.adsb.flight.defs#contributor.station", kind: "prop", name: Some("station") }
1
1
{
2
2
"id": "at.adsb.flight.defs",
3
3
"defs": {
4
4
"position": {
5
5
"type": "object",
6
6
"required": [
7
7
"latitude",
8
8
"longitude",
9
9
"timestamp"
10
10
],
11
11
"properties": {
12
12
"latitude": {
13
13
"type": "string",
14
14
"maxLength": 20,
15
15
"description": "Decimal degrees north, WGS84. Negative for south."
16
16
},
17
17
"trackDeg": {
18
18
"type": "string",
19
19
"maxLength": 20,
20
20
"description": "Track angle in degrees true north."
21
21
},
22
22
"longitude": {
23
23
"type": "string",
24
24
"maxLength": 20,
25
25
"description": "Decimal degrees east, WGS84. Negative for west."
26
26
},
27
27
"timestamp": {
28
28
"type": "string",
29
29
"format": "datetime"
30
30
},
31
31
"altitudeFt": {
32
32
"type": "integer",
33
33
"description": "Barometric altitude in feet."
34
34
},
35
35
"groundSpeedKts": {
36
36
"type": "string",
37
37
"maxLength": 20,
38
38
"description": "Ground speed in knots."
39
39
},
40
40
"verticalRateFpm": {
41
41
"type": "integer",
42
42
"description": "Vertical rate in feet per minute. Negative is descending."
43
43
}
44
44
},
45
45
"description": "A single aircraft position report. Coordinates follow community.lexicon.location conventions: decimal degree strings, WGS84."
46
46
},
47
47
"contributor": {
48
48
"type": "object",
49
49
"required": [
50
50
"did"
51
51
],
52
52
"properties": {
53
53
"did": {
54
54
"type": "string",
55
55
"format": "did",
56
56
"description": "DID of the contributing receiver account."
57
57
},
58
+
"station": {
59
+
"ref": "com.atproto.repo.strongRef",
60
+
"type": "ref",
61
+
"description": "Strong reference to the contributor's at.adsb.receiver.station record."
62
+
},
58
63
"lastSeen": {
59
64
"type": "string",
60
65
"format": "datetime",
61
66
"description": "When this receiver last observed the aircraft."
62
67
},
68
+
"sighting": {
69
+
"ref": "com.atproto.repo.strongRef",
70
+
"type": "ref",
71
+
"description": "Strong reference to the contributor's at.adsb.receiver.sighting record for this aircraft."
72
+
},
63
73
"firstSeen": {
64
74
"type": "string",
65
75
"format": "datetime",
66
76
"description": "When this receiver first observed the aircraft."
67
-
},
68
-
"stationUri": {
69
-
"type": "string",
70
-
"format": "at-uri",
71
-
"description": "AT-URI of the contributor's at.adsb.receiver.station record."
72
-
},
73
-
"sightingUri": {
74
-
"type": "string",
75
-
"format": "at-uri",
76
-
"description": "AT-URI of the contributor's at.adsb.receiver.sighting record for this aircraft."
77
77
},
78
78
"positionCount": {
79
79
"type": "integer",
80
80
"minimum": 0,
81
81
"description": "Number of position reports this receiver contributed."
82
82
}
83
83
},
84
84
"description": "A receiver that contributed data to a flight sighting."
85
85
},
86
86
"trackSummary": {
87
87
"type": "object",
88
88
"properties": {
89
89
"origin": {
90
90
"ref": "community.lexicon.location.geo",
91
91
"type": "ref",
92
92
"description": "First observed position."
93
93
},
94
94
"distanceNm": {
95
95
"type": "string",
96
96
"maxLength": 20,
97
97
"description": "Great-circle distance between first and last observed positions, in nautical miles."
98
98
},
99
99
"destination": {
100
100
"ref": "community.lexicon.location.geo",
101
101
"type": "ref",
102
102
"description": "Last observed position."
103
103
},
104
104
"maxAltitudeFt": {
105
105
"type": "integer"
106
106
},
107
107
"minAltitudeFt": {
108
108
"type": "integer"
109
109
}
110
110
},
111
111
"description": "Summary of a flight's path without the full position history. Coordinates follow community.lexicon.location conventions."
112
112
}
113
113
},
114
114
"$type": "com.atproto.lexicon.schema",
115
115
"lexicon": 1,
116
116
"description": "Shared type definitions for flight-related records in the at.adsb namespace."
117
117
}