Blog
Field notes on regulated data import.
Working posts on mapping messy partner files to clean, coded, validated output — written by the people who build the cascade. Specific, checkable against the code, and honest about the compliance trade-offs.
Latest
What we’ve been writing down.
Every technical claim in these posts is checked against the code that ships — thresholds, route names, response fields and failure codes, not adjectives.
Reading Excel Macros Without Running Them
An .xlsm is three file formats stacked inside each other, and none of them is deflate. Here is how AdaptivMapr reads the VBA project out of a workbook — deterministically, for free, and without ever executing a line — plus why a password-locked project is not encrypted and why a partial macro strip is worse than none.
- SNOMED7 min
Why We Removed Our SNOMED Validator
We shipped a snomed_code validator, no template ever used it, and SNOMED CT requires an Affiliate Licence. In June 2026 we deleted it. Here is the reasoning, the list of code-system validators we did keep, and the rule we now apply before adding another one.
Read - schema drift8 min
Schema Drift, Detected From a Header Fingerprint
A partner adds a column and your nightly import silently drops a field. You can catch that with one sha256 over the normalised header row — no model, no diffing service, no schema registry. Here is exactly how /v1/layouts/drift works and where the technique stops being enough.
Read - cascade9 min
What a Five-Layer Matching Cascade Costs You (And What It Doesn’t)
Column matching is usually posed as an AI problem. It is mostly a bookkeeping problem with an AI-shaped tail. Here are the five layers AdaptivMapr runs, the exact thresholds each one auto-accepts at, and what each one does — and does not — put on your bill.
Read - FHIR8 min
CSV to FHIR: Mapping Patient Demographics Step by Step
Walk a messy partner CSV through the patient_demographics template and out the other side as a clean FHIR Patient resource — name, gender, birthDate, and identifier — without hand-writing a mapping file.
Read - HIPAA7 min
HIPAA-Safe CSV Import: What Schema-Only Mode Actually Does
Schema-only mode sends only column headers and up to three short sample rows — never the full file. Here is precisely what leaves your system, why so little leaving you usually means no DPA, and how the compliance posture changes when you switch to full-data mode.
Read - LOINC8 min
LOINC Codes in CSV: Resolving Free-Text Lab Values
Lab CSVs almost never arrive with LOINC codes — they arrive as free text like "Hgb" or "Glukose nüchtern". Here is how the cascade and the loinc validator turn that free text into a coded lab result you can trust.
Read
Subjects
What keeps coming up.
Drawn from the posts themselves rather than from a content plan — this is the actual distribution of what we have had reason to write about.
- compliance2
- CSV import2
- determinism2
- terminology2
- validators2
- API1
- architecture1
- cascade1
- cost1
- data minimisation1
- data pipelines1
- Excel1
Rather read the reference?
The mechanics live in the docs.
Posts argue a point. If you are evaluating rather than reading, these are the pages that state the behaviour without the narrative.
- How the cascade decidesThe five layers, their thresholds, and where the model is not called.Open
- FHIR emitWhich templates carry a resource mapping and what comes back.Open
- Schema-only vs full-dataWhat leaves you in each mode, and what the clamp actually is.Open
- Layouts & driftThe header fingerprint, the reuse cache, and the three drift verdicts.Open
- API referenceEvery /v1 route, its request shape, and its response.Open
When you’re done reading
Run one of these files through the cascade.
Schema-only sends headers and up to three clamped sample rows. You can see how a file maps before deciding anything about the rest of it.