Template-driven extraction of airports, runways, frequencies, and navaids from PDF AIPs into schema-valid AIXM 5.1.1.
Project description
aviconv-aip
Template-driven extraction of airports, runways, radio frequencies, and navaids from a published PDF AIP into schema-valid AIXM 5.1.1.
Part of the aviconv converter family. This is the v1.0 headline feature: most States publish their AIP only as PDF, and nothing free turns those PDFs into structured AIXM.
What it is — and is not
aviconv-aip is a template-driven, human-in-the-loop extractor, not a
magic button. PDF AIP extraction is heuristic — layouts vary between
publishers and OCR mis-reads. So the honest deliverable is:
- one declarative template per AIP publisher (adding a publisher means adding a YAML template, not changing extractor code);
- a provenance record on every extracted value — AIP edition, AIRAC cycle, template version, and source page — so a reviewer can audit any value back to the PDF;
- a coarse per-field confidence signal (
high= matched table cell,low= OCR/heuristic fallback); - a human-review report listing every value beside its source page;
- output routed through the released
aviconv-aixmwriter and theaviconv aixm validate --semanticgate, so an implausible extraction surfaces as a finding before it reaches a user.
Scope is locked to airports/runways/frequencies/navaids — not procedures, not airspace.
Offline / Pyodide boundary
The PDF and OCR dependencies (pdfplumber, optional pytesseract) are not
Pyodide-safe. aviconv-aip is therefore a CLI-and-service feature only,
never a browser-playground feature. This boundary is locked.
Install
pip install aviconv-aip # base install (pdfplumber)
pip install "aviconv-aip[ocr]" # + optional OCR fallback (needs tesseract)
Without the ocr extra, image-only pages are flagged in the extraction
result rather than causing a crash.
Usage
aviconv aip list-templates # bundled publishers
aviconv aip extract --template pakistan AD-2.pdf # PDF → records JSON
aviconv aip extract --template pakistan --review AD-2.pdf # human-review report
aviconv aip to-aixm --template pakistan AD-2.pdf # PDF → AIXM 5.1.1
See the package docs and the template-authoring guide.
Source AIP licensing
No source AIP PDF is committed to this repository — only extraction templates
and small synthetic, licence-clean fixtures ship. AIP content licensing varies
by State; see LICENSES/README.md.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aviconv_aip-1.0.0.tar.gz.
File metadata
- Download URL: aviconv_aip-1.0.0.tar.gz
- Upload date:
- Size: 34.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0ca24eb2a121b2de34e9e2d020cb30548299ff401213cf39e54e27eda68675e7
|
|
| MD5 |
c503f2406c903a4f5b26437416dd98e8
|
|
| BLAKE2b-256 |
45326f3ce1eb8b6f3749e80b42c266b26cc25af8e0126f88bba4ae72b74ec6d0
|
Provenance
The following attestation bundles were made for aviconv_aip-1.0.0.tar.gz:
Publisher:
release.yml on ams-mmd/aviconv
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
aviconv_aip-1.0.0.tar.gz -
Subject digest:
0ca24eb2a121b2de34e9e2d020cb30548299ff401213cf39e54e27eda68675e7 - Sigstore transparency entry: 2148996008
- Sigstore integration time:
-
Permalink:
ams-mmd/aviconv@ad80d82f30ce87ddb260aa49d4b2f8655f65d5c4 -
Branch / Tag:
refs/tags/aviconv-aip-v1.0.0 - Owner: https://github.com/ams-mmd
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ad80d82f30ce87ddb260aa49d4b2f8655f65d5c4 -
Trigger Event:
push
-
Statement type:
File details
Details for the file aviconv_aip-1.0.0-py3-none-any.whl.
File metadata
- Download URL: aviconv_aip-1.0.0-py3-none-any.whl
- Upload date:
- Size: 25.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
26ddbdcb94ff1297faee72efe4722c324b352e442ad6064e5cec5f524237bfcc
|
|
| MD5 |
7afc0adc839971f150173102c4c3ee24
|
|
| BLAKE2b-256 |
05c5917b42961e1bb5b9863c832985ed65ac5abc4039861f8fc94536a5d4738e
|
Provenance
The following attestation bundles were made for aviconv_aip-1.0.0-py3-none-any.whl:
Publisher:
release.yml on ams-mmd/aviconv
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
aviconv_aip-1.0.0-py3-none-any.whl -
Subject digest:
26ddbdcb94ff1297faee72efe4722c324b352e442ad6064e5cec5f524237bfcc - Sigstore transparency entry: 2148996210
- Sigstore integration time:
-
Permalink:
ams-mmd/aviconv@ad80d82f30ce87ddb260aa49d4b2f8655f65d5c4 -
Branch / Tag:
refs/tags/aviconv-aip-v1.0.0 - Owner: https://github.com/ams-mmd
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ad80d82f30ce87ddb260aa49d4b2f8655f65d5c4 -
Trigger Event:
push
-
Statement type: