Skip to main content

aviconv-aixm

AIXM 5.1.1 and 5.2 reader (write stays 5.1.1) for full AIP datasets, plus GeoJSON export, AIRAC-cycle diff, and a temporality flattener that materialises a snapshot at any date T.

Part of the aviconv monorepo.

Install

pip install aviconv-aixm

This pulls in aviconv-core (shared XML / coords / errors) and brings the aviconv aixm … subcommands under the umbrella aviconv CLI.

Status

  • v0.6.0 covers the AIP feature core: AirportHeliport, Runway, RunwayDirection, Navaid (VOR/DME/NDB/ILS/TACAN), DesignatedPoint, Airspace + AirspaceVolume, Route + RouteSegment, Procedure (envelope), Obstacle, Organisation, Unit.
  • Version support: reads both AIXM 5.1.1 and 5.2 (version="auto" by default, sniffed from the document's namespace) into the same typed model — no property renames between the two dialects across any modelled feature type. The writer stays 5.1.1-only; there is no version-conversion feature. See the docs for the full support matrix.
  • TaxiwayElement, ApronElement, full Procedure leg algebra, and the ADR-23.5.0 extension surface are deferred to a future release.
  • Streaming reader (constant memory on 100MB+ datasets) via lxml.iterparse. Writer streams via lxml.etree.xmlfile.

Library

from aviconv_aixm import (
    read_aixm, read_aixm_dataset,
    write_aixm,
    to_geojson,
    diff_datasets,
    snapshot_at,
)

# Stream features one at a time (constant memory on 100MB+ inputs)
for feature in read_aixm("aip.xml"):
    print(feature.gml_identifier.value, type(feature).__name__)

# Materialise the whole dataset (random access for diff/flatten)
ds = read_aixm_dataset("aip.xml")
print(len(ds.features), "features")

CLI

aviconv aixm parse      aip.xml > aip.ndjson
aviconv aixm to-aixm    aip.ndjson -o roundtrip.xml
aviconv aixm to-geojson aip.xml -o aip.geojson
aviconv aixm diff       cycle_2603.xml cycle_2604.xml --format json
aviconv aixm flatten    aip.xml --at 2026-05-09T00:00Z -o snapshot.xml
aviconv aixm validate   aip.xml --strict

# --version [auto|5.1.1|5.2] on every read-side subcommand (not to-aixm):
aviconv aixm parse aip_5.2.xml --version 5.2 > aip.ndjson

Round-trip semantics

AIXM round-trip is field-level, not byte-stable: namespace prefix choices and gml:id values are intentionally not preserved on read. gml:identifier (the stable feature ID) is preserved, as are all modelled feature properties and time-slice metadata.

Licence

MIT. The vendored AIXM 5.1.1 / GML 3.2.1 / ISO 19139 / xlink schemas retain their upstream licences — see LICENSES/.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aviconv_aixm-0.6.0.tar.gz (406.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aviconv_aixm-0.6.0-py3-none-any.whl (441.7 kB view details)

Uploaded Python 3

File details

Details for the file aviconv_aixm-0.6.0.tar.gz.

File metadata

  • Download URL: aviconv_aixm-0.6.0.tar.gz
  • Upload date:
  • Size: 406.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for aviconv_aixm-0.6.0.tar.gz
Algorithm Hash digest
SHA256 285a7f615c1dd3838fd32199157a460d85a4adb284f0327cf74266f6295b499d
MD5 49748e4095675ff2272baed9cb21435a
BLAKE2b-256 235edda02b689f964315226bb208892f7cf3741ace51d74e9d73162e23456ef4

See more details on using hashes here.

Provenance

The following attestation bundles were made for aviconv_aixm-0.6.0.tar.gz:

Publisher: release.yml on ams-mmd/aviconv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file aviconv_aixm-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: aviconv_aixm-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 441.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for aviconv_aixm-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 74f6a1a89e985ea46848250b0fdec7f6cefc37dfbfa176dd8dcdc8dce0f92f79
MD5 163ae4fafe13452e6fe381b12efe825e
BLAKE2b-256 8b2f64018205aa0b7a1aad24b6c4364c0cd56f403e9e7b48e1cc5d54ab00ecec

See more details on using hashes here.

Provenance

The following attestation bundles were made for aviconv_aixm-0.6.0-py3-none-any.whl:

Publisher: release.yml on ams-mmd/aviconv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.6.0 This release

2 files

0.5.0

2 files

0.4.1

2 files

0.4.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page