You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This project is designed to convert FHIR-compliant JSON data (e.g., Immunization records) into a flat JSON format based on a configurable schema layout. It is intended to support synchronization of Immunisation API generated data from external sources to DPS (Data Processing System) data system
4
+
5
+
---
6
+
7
+
## 📁 File Structure Overview
8
+
9
+
| File Name | What It Does |
10
+
|------------------------|---------------|
11
+
|**`converter.py`**| 🧠 The main brain — applies the schema, runs conversions, handles errors. |
12
+
|**`FHIRParser.py`**| 🪜 Knows how to dig into nested FHIR structures and pull out values like dates, IDs, and patient names. |
13
+
|**`SchemaParser.py`**| 📐 Reads your schema layout and tells the converter which FHIR fields to extract and how to rename/format them. |
14
+
|**`ConversionLayout.py`**| ✍️ A plain Python list that defines which fields you want, and how they should be formatted (e.g. date format, renaming rules). |
15
+
|**`ConversionChecker.py`**| 🔧 Handles transformation logic — e.g. turning a FHIR datetime into `YYYY-MM-DD`, applying lookups, gender codes, defaults, etc. |
16
+
|**`Extractor.py`**| 🎣 Specialized logic to pull practitioner names, site codes, addresses, and apply time-aware rules. |
17
+
|**`ExceptionMessages.py`**| 🚨 Holds reusable error messages and codes for clean debugging and validation feedback. |
18
+
19
+
---
20
+
21
+
22
+
## 🛠️ Key Features
23
+
24
+
- Schema-driven field extraction and formatting
25
+
- Support for custom date formats like `YYYYMMDD`, and CSV-safe UTC timestamps
26
+
- Robust handling of patient, practitioner, and address data using time-aware logic
27
+
- Extendable structure with static helper methods and modular architecture
0 commit comments