Metadata-Version: 2.4
Name: aion-clinical
Version: 1.0.1
Summary: AION — Algebraic Interval Ontology for Clinical Networks. Formal mathematical model for clinical information systems.
Author-email: Friedhelm Matten <licensing@iscad-it.de>
License: EUPL-1.2
Project-URL: Homepage, https://codeberg.org/fm2-project/aion
Project-URL: Repository, https://codeberg.org/fm2-project/aion
Project-URL: Documentation, https://codeberg.org/fm2-project/aion/wiki
Project-URL: Bug Tracker, https://codeberg.org/fm2-project/aion/issues
Project-URL: Changelog, https://codeberg.org/fm2-project/aion/src/branch/main/CHANGELOG.md
Keywords: FHIR,HL7,clinical-informatics,formal-methods,Allen-algebra,temporal-logic,differential-privacy,causal-inference,openEHR,health-informatics
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Healthcare Industry
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering :: Medical Science Apps.
Classifier: Topic :: Scientific/Engineering :: Mathematics
Classifier: License :: OSI Approved :: European Union Public Licence 1.2 (EUPL 1.2)
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: networkx>=3.0
Requires-Dist: pydantic>=2.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: click>=8.1
Provides-Extra: fhir
Requires-Dist: fhir.resources>=7.0; extra == "fhir"
Provides-Extra: db
Requires-Dist: sqlalchemy>=2.0; extra == "db"
Requires-Dist: alembic>=1.13; extra == "db"
Provides-Extra: api
Requires-Dist: fastapi>=0.110; extra == "api"
Requires-Dist: uvicorn[standard]>=0.28; extra == "api"
Provides-Extra: nlp
Requires-Dist: sentence-transformers>=2.2; extra == "nlp"
Provides-Extra: causal
Requires-Dist: pgmpy>=0.1.25; extra == "causal"
Provides-Extra: formal
Requires-Dist: z3-solver>=4.12; extra == "formal"
Provides-Extra: reports
Requires-Dist: pandas>=2.0; extra == "reports"
Requires-Dist: openpyxl>=3.1; extra == "reports"
Requires-Dist: jinja2>=3.1; extra == "reports"
Provides-Extra: all
Requires-Dist: fhir.resources>=7.0; extra == "all"
Requires-Dist: sqlalchemy>=2.0; extra == "all"
Requires-Dist: alembic>=1.13; extra == "all"
Requires-Dist: fastapi>=0.110; extra == "all"
Requires-Dist: uvicorn[standard]>=0.28; extra == "all"
Requires-Dist: pandas>=2.0; extra == "all"
Requires-Dist: openpyxl>=3.1; extra == "all"
Requires-Dist: jinja2>=3.1; extra == "all"
Requires-Dist: z3-solver>=4.12; extra == "all"
Provides-Extra: dev
Requires-Dist: pytest>=8.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.23; extra == "dev"
Requires-Dist: hypothesis>=6.0; extra == "dev"
Requires-Dist: coverage>=7.0; extra == "dev"
Requires-Dist: pytest-cov>=5.0; extra == "dev"
Requires-Dist: ruff>=0.4; extra == "dev"
Requires-Dist: black>=24.0; extra == "dev"
Requires-Dist: networkx>=3.0; extra == "dev"
Requires-Dist: pydantic>=2.0; extra == "dev"

# AION — Algebraic Interval Ontology for Clinical Networks

> Formal structure for consistent, time-aware clinical data.

[![Tests](https://img.shields.io/badge/tests-326%20passing-brightgreen)](https://codeberg.org/fm2-project/aion)
[![Python](https://img.shields.io/badge/python-3.10%2B-blue)](https://www.python.org)
[![License](https://img.shields.io/badge/license-EUPL--1.2-blue)](LICENSE)
[![FHIR R4](https://img.shields.io/badge/FHIR-R4-orange)](https://hl7.org/fhir/R4/)

---

## Why AION?

Clinical data systems often produce inconsistent results.

Not because of missing interfaces —  
but because **time, semantics and causality are not modelled consistently**.

Typical consequences:

- inconsistent analytics across systems  
- manual correction logic in every project  
- limited reliability for AI applications  

**AION solves this.**

It provides a **formal, executable model** to:

- represent clinical events over time  
- define and validate relationships between them  
- ensure consistent interpretation across systems  

---

## Quick Start

```bash
pip install aion
```

```python
from aion.core import Interval, classify
import datetime

dt = lambda h: datetime.datetime(2024, 1, 1, h, 0)

anaesthesia = Interval(dt(7), dt(12))
operation   = Interval(dt(8), dt(11))

print(classify(anaesthesia, operation))
# → AllenRelation.CONTAINS
```

👉 AION models **relations between events**, not just events themselves.

---

## What makes AION different?

Most systems model clinical data as isolated events.

AION models:

- **intervals instead of points**  
- **relations instead of implicit assumptions**  
- **causal structures instead of static data**  

This enables:

- consistent temporal reasoning  
- reproducible analytics  
- verifiable data models  

---

## Core Capabilities

### Temporal Model

- Complete Allen interval algebra (13 relations)  
- Fuzzy intervals with probabilistic reasoning  

### Data Model

- Universal clinical event model (6-tuple)  
- Type system with hierarchy and schema evolution  

### Query & Analytics

- Cohort algebra  
- temporal pattern languages  

### Causal Inference

- causal graphs  
- do-operator  
- structure learning  

### AI Integration

- formal AI component model  
- explainability (Shapley, counterfactuals)  

### Privacy

- differential privacy (Laplace / Gaussian)  
- federated computation  

### Interoperability

- FHIR mapping via structural homomorphism  

---

## Architecture Overview

```
aion/
├── core        Temporal algebra, event model
├── abstraction Episodes and trajectories
├── query       Cohort algebra
├── causal      Causal inference
├── privacy     Differential privacy
├── ai          AI model integration
├── explain     Explainability
├── schema      Schema evolution
└── adapters    FHIR mapping
```

---

## Test Suite

```bash
pytest aion/tests/
# 326 tests, ~2s runtime
```

---

## Positioning

AION is not:

- a data format  
- a data warehouse  
- a FHIR replacement  

AION is:

> **the structural layer beneath clinical data systems**

---

## License & Citation

EUPL-1.2 — open source  
Commercial licensing: `licensing@iscad-it.de`

```bibtex
@software{aion2025,
  title  = {AION: Algebraic Interval Ontology for Clinical Networks},
  author = {Matten, Friedhelm},
  year   = {2025},
  url    = {https://codeberg.org/fm2-project/aion}
}
```

© Friedhelm Matten, ISCaD GmbH
