Skip to content
Novus Examples
hl7187 B

Healthcare ORM HL7 Message (SAMPLE)

Sample HL7 v2 ORM order message with PID and OBR segments — fictional patient and order ids.

Preview, first 2 lineshl7
MSH|^~\&|SAMPLE_LIS|LAB|SAMPLE_EHR|EHR|20260101120000||ORM^O01|MSG00001|P|2.5
PID|1||PAT-SAMPLE-001^^^SAMPLE||Rivera^Jordan||19900101|M
OBR|1||ORD-SAMPLE-001|CBC^Complete Blood Count^L

Specifications

Message
ORM^O01
Domain
healthcare

Testing contract

Expected to pass
Scenario
Exercise Healthcare ORM HL7 Message (SAMPLE) in its healthcare workflow. Sample HL7 v2 ORM order message with PID and OBR segments — fictional patient and order ids.
Expected result
4 text lines, decoded as UTF-8; first nonempty line is 'MSH|^~\\&|SAMPLE_LIS|LAB|SAMPLE_EHR|EHR|20260101120000||ORM^O01|MSG00001|P|2.5'. Declared feature checks: message=ORM^O01; domain=healthcare.

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

“Healthcare ORM HL7 Message (SAMPLE)” is a deterministic Novus Examples fixture for Data import. Realistic faker-generated datasets with documented schemas for testing import and ETL flows.

Documented properties for this file: HL7 · 187 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.

Data fixtures document their exact quirks (delimiters, encodings, null handling, schema, and row counts) in the spec table. Point your parser or importer at the file and assert it handles the documented edge cases; clean and deliberately-messy siblings make before/after diffs straightforward.

Code examples

from hl7apy.parser import parse_message  # pip install hl7apy

raw = open("orm-message.hl7").read().replace("\n", "\r")
msg = parse_message(raw)
for seg in msg.children:
    print(seg.name)

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