Documentation Index
Fetch the complete documentation index at: https://mintlify.com/paulch42/lean-spec/llms.txt
Use this file to discover all available pages before exploring further.
LeanSpec.FPL.Core defines the fundamental data elements from which all higher-level FPL entities are built. These definitions are of a general nature and are applicable beyond the narrow focus of flight plan processing — they model ICAO-standard identifiers, designators, equipment codes, speed and distance measures, position representations, and communication infrastructure. Understanding this module provides the vocabulary for every other module in the FPL specification; it is sufficient to skim it to grasp the remainder of the specification.
The module imports LeanSpec.lib.Util (for bounded string and natural number types) and LeanSpec.lib.Geo (for geographic primitives), then opens the Core namespace.
General Purpose
FreeText
A number of message fields carry free text. While ICAO restricts the character set to a subset of ASCII, the specification elides that constraint and allows any string of length 1–200 characters.
Flight-Related Definitions
These definitions relate to the flight that is the subject of a message. The key distinction throughout the specification is between a flight (the operation from departure to destination) and an aircraft (the physical airframe).AircraftIdentification
The call-sign or registration mark used by air traffic control to identify the flight in communications. Length is constrained to 2–7 characters.
SsrCode
The Secondary Surveillance Radar code — exactly four octal characters — transmitted by the aircraft’s transponder and used by ATC to track the flight. It is typically allocated by ATC shortly before take-off.
FlightRule
A single flight rule applicable at a specific point in a flight’s route. Depending on equipment held, a flight may operate under instrument or visual flight rules.
FlightRules
The operating rules for the entire duration of a flight. Rules may remain constant (IFR or VFR) or change mid-flight, in which case the initial rule and the direction of change are encoded.
TypeOfFlight
Flights are categorised to assist ATC with handling priorities and procedures.
SpecialHandling
Some flights receive non-standard ATC handling due to their nature — for example, medical evacuations, head-of-state flights, and search-and-rescue operations.
Aircraft-Related Definitions
Registration
The physical aircraft registration mark allocated by the authorising national authority. It appears as tail markings. For general aviation, the aircraft identification is often the registration. Length is constrained to 2–7 characters.
NumberOfAircraft
The number of aircraft participating in a formation flight. Constrained to 2–99.
Doc8643.Designator
The ICAO aircraft type designator as documented in ICAO Doc 8643. For example, A388 denotes the Airbus A380-800. Length is 2–4 characters.
AircraftType
Not all aircraft types have a Doc 8643 designator. AircraftType is a sum type: either a documented designator or a free-text name.
AircraftAddress
The unique 24-bit ICAO address of the airframe, encoded as exactly six hexadecimal characters. This is distinct from the flight identifier.
AircraftPerformance
An ICAO performance category that summarises speed and climb characteristics. Used in some ATC procedures.
WakeTurbulenceCategory
Describes the severity of wing-tip vortices generated by the aircraft. ATC uses this to apply separation minima between successive aircraft.
Distance: Horizontal and Vertical
UnitOfVerticalDistance
Vertical distance in aviation may be expressed in either feet (imperial) or metres (metric).
FlightLevelOrAltitude
Vertical position is expressed as a flight level (above the transition level, referenced to standard pressure) or an altitude (below the transition level, referenced to local QNH pressure).
VerticalPositionOfAircraft
A full expression of the vertical position of an aircraft, combining a numeric value with its unit of measure and the type (flight level or altitude).
UnitOfHorizontalDistance
For the purposes of this specification, only nautical miles are required for horizontal distance.
HorizontalDistance
A horizontal distance expressed as a natural number of nautical miles.
Speed
UnitOfSpeed
Aircraft speed may be expressed in knots, kilometres per hour, or as a Mach number (fraction of the speed of sound).
SpeedDatum
The reference frame against which speed is measured:
tas— true airspeed: speed through the air mass.ias— indicated airspeed: instrument-panel reading.gspd— groundspeed: speed relative to the ground.
AircraftSpeed
A complete aircraft speed value combining a numeric magnitude, a unit of measure, and a datum. The structure carries a proof of the invariant that groundspeed cannot be expressed as a Mach number (which is defined relative to the air mass, not the ground).
TrueAirspeed
A subtype of AircraftSpeed restricted to entries where the datum is tas. This is the speed measure used in route planning fields.
Location-Related Definitions
Doc7910.Designator
The four-character ICAO location indicator for aerodromes and other landing sites, as documented in ICAO Doc 7910. For example, EHAM for Amsterdam Schiphol.
Waypoint
A named geographic point used for defining the horizontal path (route) of a flight. Length is 2–5 characters.
RelativePoint
A position expressed as a bearing and distance from a known named waypoint.
Position
A position can be represented in three ways: as a geographic coordinate (latitude/longitude), as a named waypoint, or as a relative point.
Position.waypointOf
Extracts the named waypoint from a Position, if the position is expressed as a waypoint. Returns none for geographic or relative positions.