This article will discuss two different strategies for uniquely identifying aeronautical data and their advantages resp. disadvantages as well as advise, why combining them could be the solution to hit the spot.
The aeronautical information/data based on paper documentation and telex-based text messages cannot meet anymore the requirements of the Air Traffic Management (ATM) integrated and interoperable system and therefore the Aeronautical Information Service (AIS) is required to evolve from the paper product-centric service to the data-centric Aeronautical Information Management (AIM) with a different method of information provision and management.
The International Civil Aviation Organization (ICAO) has developed a roadmap to reflect the importance of the evolution and to address the required changes and is being referred to as the transition from AIS to AIM. Three phases of action are envisaged for States and ICAO to complete the transition to AIM. During Phase 2 of the transition to AIM, the main focus will be on the establishment of data-driven processes for the production of the current products in all States. States that have not yet done so will be encouraged “to go digital” by using computer technology or digital communications and introducing structured digital data from databases into their production processes. Improvements to the existing mechanisms for the unique identification of aeronautical features are required to increase the effectiveness of information exchange without the need for human intervention.
Aeronautical Information Exchange Model (AIXM)
The AIXM specification supports the data-centric environment. It supports aeronautical information collection, dissemination and transformation throughout the data chain.
The latest main revision, AIXM 5.1, is a Geography Markup Language (GML) 3.2 application schema meant to allow for the machine-to-machine exchange of aeronautical information in a structured format. As services that disseminate information in AIXM 5.1 to consumers are developed, the ability to manage the linkages between aeronautical features is key. This encompasses the concepts of feature identification and feature reference.
For feature identification, the AIXM 5.1 schema relies on the use of Universally Unique Identifiers (UUID) as artificial identifiers for AIXM features, while the preceding version AIXM 4.5, which is still in operational use in many systems around the world, relies on the definition of natural keys.
Natural Keys vs. Artificial Identifiers
So there are two strategies in question for assigning keys. The first is to simply use a natural key, one or more existing data attributes that are unique to the business concept. For the Airport feature, there is one candidate key, in this case Designator, which is a coded identifier derived from the well-known ICAO airport code (e.g. EGLL for London Heathrow) as defined by ICAO. The second strategy is to introduce a new attribute to be used as a key. This new attribute is called a surrogate key, a key that has no business meaning. Obstacles for instance don’t have an “easy” natural key, because you would need to use nearly all of the columns of the corresponding feature to form a key for itself; therefore, introducing an artificial identifier is a much better choice in this case.
The primary advantage of natural keys is that they exist already, you don’t need to introduce a new “artificial” value to your data schema. Using a natural key (when one can be identified) simplifies data quality: It ensures that there can only be one feature for a key; this “one version of the truth” can be verified, because the natural key is based on a real-world observation. However, the primary disadvantage of natural keys is, that because they have business meaning it is possible that they may need to change if your business requirements change, or they change by nature as for example Runway direction designators do. Generally, a runway is numbered based on 1/10 on its magnetic direction (rounding as needed). On a runway facing toward the magnetic north pole (360 degrees), it would be labeled “36”. Since a runway runs in two directions, the other side would be facing south (180 degrees) and would thus be labeled “18”. Due to the changing position of the magnetic north pole, the magnetic heading of the runway will continuously change, eventually to the point where the runway will be re-numbered and need to be repainted. And in addition to updating the designator of the Runway feature, you would have to update every single feature where the Runway designator is used as foreign key.
If you choose to take a surrogate key approach to your database design keep in mind that your applications must continue to support working with the domain columns that still uniquely identify rows. For example, the Runway table may have a Runway_UUID column used as a surrogate key as well as a Runway_Designator column. You would likely need to communicate with the users of your applications based on the Runway designator (e.g. “18/36”) instead of the Runway UUID (e.g. “6384a4e0-8497-4f83-8eaa-d73ef549d90e”).
For me THE most concerning problem with artificial keys is that UUIDs don’t guarantee non duplicated data. You can always have two rows with all the same column values but with a different generated value.
Natural Keys AND Artificial Identifiers
The fundamental issue is that keys are a significant source of coupling within a relational schema, and as a result they are difficult to change. The implication is, that you want to avoid keys with business meaning because business meaning changes. However, at the same time, you need to remember that some data is commonly accessed by unique identifiers, for example Airspaces via their designators and types (e.g. “LOVV, FIR”). In these cases, you may want to use the natural key instead of a surrogate key such as a UUID. Or you may simply want to support alternate keys.
Keys are one of the religious issues within the data community. Some people prefer all natural keys, whereas others prefer all artificial keys. Both “parties” are extremists in my opinion. We are much better advised to hit the spot and use a combination of natural and artificial identifiers as appropriate.