HL7 OML_O35 Lab Orders for One Container

HL7 message structure OML_O35 groups and segments from HL7 v2.5.1 Hide structure

These are the generated groups and segments for the version selected at the top of the page. The article explains the workflow, and this panel follows the chosen HL7 version.

Message Structure

SegmentNameRequiredRepeatable
Message Header Yes No
Software Segment No Yes
Notes and Comments No Yes
OML_O35.PATIENT
Patient group No No
Patient Identification Yes No
Patient Additional Demographic No No
Notes and Comments No Yes
Next of Kin / Associated Parties No Yes
OML_O35.PATIENT_VISIT
Patient Visit group No No
Patient Visit Yes No
Patient Visit - Additional Information No No
OML_O35.INSURANCE
Insurance group No Yes
Insurance Yes No
Insurance Additional Information No No
Insurance Additional Information, Certification No No
Guarantor No No
Patient Allergy Information No Yes
OML_O35.SPECIMEN
Specimen group Yes Yes
Specimen Yes No
Observation/Result No Yes
OML_O35.SPECIMEN_CONTAINER
Specimen Container group Yes Yes
Specimen Container detail Yes No
OML_O35.ORDER
Order group Yes Yes
Common Order Yes No
OML_O35.TIMING
Timing group No Yes
Timing/Quantity Yes No
Timing/Quantity Relationship No Yes
OML_O35.OBSERVATION_REQUEST
Observation Request group No No
Observation Request Yes No
Test Code Detail No No
Notes and Comments No Yes
Diagnosis No Yes
OML_O35.OBSERVATION
Observation group No Yes
Observation/Result Yes No
Test Code Detail No No
Notes and Comments No Yes
OML_O35.PRIOR_RESULT
Prior Result group No Yes
OML_O35.PATIENT_PRIOR
Patient Prior group No No
Patient Identification Yes No
Patient Additional Demographic No No
OML_O35.PATIENT_VISIT_PRIOR
Patient Visit Prior group No No
Patient Visit Yes No
Patient Visit - Additional Information No No
Patient Allergy Information No Yes
OML_O35.ORDER_PRIOR
Order Prior group Yes Yes
Common Order No No
Observation Request Yes No
Notes and Comments No Yes
OML_O35.TIMING_PRIOR
Timing Prior group No Yes
Timing/Quantity Yes No
Timing/Quantity Relationship No Yes
OML_O35.OBSERVATION_PRIOR
Observation Prior group Yes Yes
Observation/Result Yes No
Notes and Comments No Yes
Financial Transaction No Yes
Clinical Trial Identification No Yes
Billing No No

OML_O35 is a laboratory order message for multiple orders related to a single container of a specimen. It is useful when the physical container is the organizing unit for the lab workflow, not just a detail attached somewhere below the order.

Compared with OML_O33, O35 pushes the hierarchy one step deeper: patient, specimen, specimen container, then orders. That distinction matters in automation, aliquoting, routing, and container-specific cancellation or rejection workflows.

A small OML O35 example

MSH|^~\&|EHR|CITYHOSP|LAB|CITYLAB|20260718104000||OML^O35^OML_O35|OML350001|P|2.5.1 PID|1||123456^^^CITYHOSP^MR||Smith^Jane^Anne^^Ms^^L||19800314|F PV1|1|O|CLINIC^12^^CITYHOSP||||12345^Careful^Clara SPM|1|SPEC350001^EHR||BLD^Blood^HL70487|||||||P SAC|||TUBE350001^EHR||||||||||||LAV^Lavender top tube^L ORC|NW|ORD350001^EHR|||||^^^20260718105000|||12345^Careful^Clara OBR|1|ORD350001^EHR||CBC^Complete blood count^L|||20260718105000 ORC|NW|ORD350002^EHR|||||^^^20260718105000|||12345^Careful^Clara OBR|2|ORD350002^EHR||RETIC^Reticulocyte count^L|||20260718105000

What systems do with it

The sender is saying: here is the specimen, here is a specific container, and here are the orders that belong to that container. The lab can use that hierarchy for accessioning, tracking, automation routing, and container-level status.

SPM identifies the specimen. SAC identifies the container. ORC and OBR describe each order under that container.

How to read the structure

The required specimen group contains a required specimen-container group, and that container group contains the repeating order groups. That is the core difference from OML_O33.

Optional OBX and TCD details can carry specimen/order observations or test-code detail. Use them deliberately; do not make the receiver guess whether an OBX is an order question, a specimen observation, or a prior result.

Implementation traps

The danger is ignoring the container level. If the receiver only reads the ORC/OBR pairs, it can lose the association between an order and the tube or container that should perform it.

Also be careful when one specimen has several containers. O35 is best when the container hierarchy is meaningful. If the order is simply specimen-centric with optional containers, O33 may be a cleaner fit.

Reference notes

HL7 describes OML_O35 as a laboratory order where one or more specimens have one to many containers and each container may have one to many orders. See HL7 Europe OML_O35.