HL7 v2 ADT^A01 Admission Message
An HL7 v2.5 ADT^A01 patient-admission message — pipe/caret-delimited segments (MSH, EVN, PID, PV1, allergies, diagnosis). A fixture for testing healthcare integration engines and HL7 parsers. The patient is fictional.
MSH|^~\&|ADT1|MERIDIAN|LABADT|MERIDIAN|20260115093000||ADT^A01|MSG00001|P|2.5
EVN|A01|20260115093000
PID|1||100001^^^MERIDIAN^MR||Lovelace^Ada^B||19851210|F|||1 Example Street^^London^^SW1A 1AA^GB||(555) 010-0199|||M
NK1|1|Byron^Augusta|SIS|2 Example Road^^London^^SW1A 2BB^GB
PV1|1|I|WARD3^0301^01^MERIDIAN||||1234^Turing^Alan|||MED||||ADM|A0|
AL1|1|DA|^Penicillin|MO|Rash
DG1|1|I10|I10^Essential hypertension^ICD-10|20251120
Specifications
- Standard
- HL7 v2.5
- Message
- ADT^A01 (admit)
- Segments
- MSH, EVN, PID, NK1, PV1, AL1, DG1
- Note
- synthetic patient
What is a .hl7 file?
HL7 v2 is the dominant messaging standard for exchanging clinical and administrative data between healthcare systems. A message is plain text made of segments (one per line, e.g. MSH, PID, PV1), each split into fields by pipe (|) delimiters, with components separated by carets (^). It drives admissions, lab orders, and results across hospitals.
How to use this file
Use an example HL7 v2 message to test healthcare integration engines, HL7 parsers, and segment/field extraction, or to exercise mapping from HL7 to FHIR or other formats. The data here is synthetic — not a real patient.
How to use this file for testing
“HL7 v2 ADT^A01 Admission Message” is a deterministic Novus Examples fixture for Data import, Conversion testing. Realistic faker-generated datasets with documented schemas for testing import and ETL flows.
Documented properties for this file: HL7 · 434 bytes. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.
Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.
Document fixtures list their internal structure (pages, fields, tracked changes, embedded objects) in the spec table. Test extractors, converters, and OCR against that known structure, and compare searchable↔scanned or format-twin companions when present.
Code examples
from hl7apy.parser import parse_message # pip install hl7apy
raw = open("adt-a01.hl7").read().replace("\n", "\r")
msg = parse_message(raw)
for seg in msg.children:
print(seg.name)Related files
- ediX12 EDI 810 InvoiceAn ANSI X12 810 invoice that references the 850 purchase order — ISA/GS/ST envelope with BIG, IT1 line items, and a total. The invoice twin of the purchase order, for testing EDI document flows.

- ediX12 EDI 850 Purchase OrderAn ANSI X12 850 purchase order — ISA/GS/ST envelope with BEG, N1, and PO1 line items. A fixture for testing EDI parsers and translators. Paired with the 810 invoice for the same order.

- csvBank Transactions (CSV, 60 rows)A bank-transaction statement — 60 debits and credits across three accounts (masked numbers) with running balances, categories, and merchants. Synthetic data for testing statement parsers, categorisation, and reconciliation.

- jsonBank Transactions (JSON, 60 records)The bank transactions as a JSON array — the format twin of the CSV, for import and reconciliation testing.

- jsonColumnar Nulls Schema (JSON)JSON description of nullable columns in the null-heavy columnar fixtures.

- csvCoverage — Per-File Table (CSV)The same coverage as a flat table with a TOTAL row, for spreadsheets, trend charts and diffing two runs without an XML parser. The TOTAL row is the arithmetic sum of the four file rows, so it doubles as a checksum on any tool that regenerates it. Every file in this group describes the same four-file source tree and reports 127/140 lines, 17/24 branch outcomes and 18/20 functions, so a converter can be diffed against a known answer.

Generated by generation/docs_realworld.py. Free for any use, no attribution required — license.