Andrew Martinez

ICAO Models

ICAOManufacturerModel

Purpose

Canonical ICAO manufacturer reference record supporting alias resolution, lifecycle tracking, and search indexing.

Fields
  • id (str) — manufacturer identifier
  • display_name (str)
  • aliases (List[str])
  • country (Optional[str]) — ISO-3166 country code
  • parent_name (Optional[str])
  • status (ManufacturerStatusEnum)
DynamoDB Keys
  • PK: ICAO#MANUFACTURERS
  • SK: MFR#{id}
Query strategy
  • Point lookup by manufacturer id using PK/SK.
  • Partition query returns all manufacturers for listing/export operations.

ICAOTypeVariantModel

Purpose

Stores canonical manufacturer/model variants associated with a specific ICAO type designator. Enables linking between registry manufacturer/model values and ICAO aircraft types.

Fields
  • type_designator (str)
  • manufacturer, model (Optional[str])
  • engine_type (Optional[str])
  • engine_count (Optional[int])
  • wtc (Optional[str])
  • description (Optional[str])
  • count (Optional[int]) — FAA evidence count
  • source (ICAOVariantSourceEnum)
Validation
  • engine_count coerced to integer when possible.
DynamoDB Keys
  • PK: ICAO#VARIANTS
  • SK: MFR#{manufacturer}#ICAO#{type_designator}#MDL#{model}
  • GSI1PK: ICAO#VARIANTS#TYPE#{type_designator}
  • GSI1SK: SRC#{source}#MFR#{manufacturer}#MDL#{model}
Query strategy
  • Manufacturer-scoped queries using SK prefix MFR#{manufacturer}.
  • ICAO type queries via GSI1 enabling retrieval of all manufacturer/model variants mapped to a designator.
  • Partition scans support export/rebuild workflows.

ICAOAircraftTypeModel

Purpose

Canonical ICAO aircraft type record representing a single ICAO designator with normalized manufacturer/model attributes and search aliases.

Fields
  • type_designator (str)
  • manufacturer, model (Optional[str])
  • engine_count, engine_type (Optional)
  • wtc (Optional[str])
  • description (Optional[str])
  • aliases (List[str])
DynamoDB Keys
  • PK: ICAO#AIRCRAFT
  • SK: TYPE#{type_designator}
  • GSI2PK: MFR#{manufacturer}
Query strategy
  • Direct lookup by ICAO type designator.
  • Manufacturer-based browsing via GSI2.
  • Partition listing used for export or search index rebuilds.

ICAOEntityMatcherModel

Purpose

Evidence table capturing observed manufacturer/model combinations associated with ICAO types. Used by batch matching jobs to generate learned entity-matching patterns.

Fields
  • type_designator, manufacturer, model
  • count (int)
  • first_seen, last_seen (Optional[int])
DynamoDB Keys
  • PK: ICAO#MATCHES
  • SK: TYPE#{type_designator}#MFR#{manufacturer}#MDL#{model}
  • GSI1PK: ICAO#MATCHES#TYPE#{type_designator}
  • GSI1SK: CNT#{count}
Query strategy
  • Per-ICAO listing using SK prefix queries.
  • Frequency-sorted retrieval possible via GSI1.
  • Atomic counters (ADD count) enable streaming evidence accumulation.