The OBR segment is the detail header for an observation order or result. It names what was ordered or reported (OBR-4, the Universal Service Identifier — usually a battery or panel code), carries the placer and filler order numbers, the collection and observation timestamps, the providers involved, and the overall result status. In a result message the OBR groups the OBX result lines that follow it.
Purpose
OBR describes a single observation request or report: the service ordered (OBR-4), order identifiers shared with ORC, specimen and timing details, the ordering provider and result interpreters, and the report-level status (OBR-25). It is the parent of the OBX observations beneath it.
Used in
OBR appears in order and result messages: ORU (results — its most common home, grouping OBX segments), ORM/OML/OMG (orders), OMI (imaging), and DFT (charges derived from orders). See ORU and ORM.
Field-by-field reference
Source: the Vorro HL7 segment database (extracted from the official v2-to-FHIR IG). R = required (cardinality min ≥ 1). Repeat = field may repeat. Length is not carried by the FHIR source and is shown as —.
| Seq | Name | Data Type | Length | Req | Repeat | Table # | Description |
|---|---|---|---|---|---|---|---|
| OBR-1 | Set ID - OBR | SI | — | O | — | — | Sequence number within the message. |
| OBR-2 | Placer Order Number | EI | — | O | — | — | Placing system's order id; matches ORC-2. |
| OBR-3 | Filler Order Number | EI | — | O | — | — | Filling system's order id; matches ORC-3. |
| OBR-4 | Universal Service Identifier | CWE | — | R | — | — | What was ordered/reported (battery/panel code, often LOINC). The one required field. |
| OBR-5 | Priority | ID | — | O | — | — | Order priority (legacy; usually in TQ1). |
| OBR-6 | Requested Date/Time | TS | — | O | — | — | When the service was requested (legacy). |
| OBR-7 | Observation Date/Time | DTM | — | O | — | — | When the observation/specimen applies. |
| OBR-8 | Observation End Date/Time | DTM | — | O | — | — | End of an observation period. |
| OBR-9 | Collection Volume | CQ | — | O | — | — | Specimen volume collected. |
| OBR-10 | Collector Identifier | XCN | — | O | Y | — | Who collected the specimen. |
| OBR-11 | Specimen Action Code | ID | — | O | — | HL70065 | Action on the specimen (add-on, reflex, etc.). |
| OBR-12 | Danger Code | CWE | — | O | — | — | Hazard associated with the specimen. |
| OBR-13 | Relevant Clinical Information | CWE | — | O | Y | HL70916 | Clinical context (e.g. fasting status). |
| OBR-14 | Specimen Received Date/Time | TS | — | O | — | — | When the lab received the specimen. |
| OBR-15 | Specimen Source | CM | — | O | — | — | Deprecated; superseded by the SPM segment in v2.5. |
| OBR-16 | Ordering Provider | XCN | — | O | Y | — | Clinician who placed the order. |
| OBR-17 | Order Callback Phone Number | XTN | — | O | Y | — | Phone for result callback. |
| OBR-18 | Placer Field 1 | ST | — | O | — | — | Placer-defined value. |
| OBR-19 | Placer Field 2 | ST | — | O | — | — | Placer-defined value. |
| OBR-20 | Filler Field 1 | ST | — | O | — | — | Filler-defined value. |
| OBR-21 | Filler Field 2 | ST | — | O | — | — | Filler-defined value. |
| OBR-22 | Results Rpt/Status Chng - Date/Time | DTM | — | O | — | — | When results were reported / status changed. |
| OBR-23 | Charge to Practice | MOC | — | O | — | — | Charge associated with the order. |
| OBR-24 | Diagnostic Serv Sect ID | ID | — | O | — | HL70074 | Section that performed the service (e.g. CH, HM). |
| OBR-25 | Result Status | ID | — | O | — | HL70123 | Report-level status: F final, P preliminary, C corrected. |
| OBR-26 | Parent Result | PRL | — | O | — | — | Link to a parent result (reflex testing). |
| OBR-27 | Quantity/Timing | TQ | — | O | Y | — | Deprecated; superseded by TQ1/TQ2 in v2.5. |
| OBR-28 | Result Copies To | XCN | — | O | Y | — | Who receives result copies. |
| OBR-29 | Parent Results Observation Identifier | EIP | — | O | — | — | Parent order for reflex/child results. |
| OBR-30 | Transportation Mode | ID | — | O | — | HL70124 | How the patient travels for the study. |
| OBR-31 | Reason for Study | CWE | — | O | Y | HL70951 | Clinical reason for the order. |
| OBR-32 | Principal Result Interpreter | NDL | — | O | — | — | Lead interpreter of the result. |
| OBR-33 | Assistant Result Interpreter | NDL | — | O | Y | — | Assisting interpreter(s). |
| OBR-34 | Technician | NDL | — | O | Y | — | Technician(s) who performed the test. |
| OBR-35 | Transcriptionist | NDL | — | O | Y | — | Who transcribed the report. |
| OBR-36 | Scheduled Date/Time | DTM | — | O | — | — | When the service is scheduled. |
| OBR-37 | Number of Sample Containers | NM | — | O | — | — | Count of specimen containers. |
| OBR-38 | Transport Logistics of Collected Sample | CWE | — | O | Y | — | How the sample is transported. |
| OBR-39 | Collector's Comment | CWE | — | O | Y | — | Free-text collection comment. |
| OBR-40 | Transport Arrangement Responsibility | CWE | — | O | — | — | Who arranges transport. |
| OBR-41 | Transport Arranged | ID | — | O | — | HL70224 | Whether transport is arranged. |
| OBR-42 | Escort Required | ID | — | O | — | HL70225 | Whether an escort is needed. |
| OBR-43 | Planned Patient Transport Comment | CWE | — | O | Y | — | Transport notes. |
| OBR-44 | Procedure Code | CNE | — | O | — | — | Procedure/CPT code for the order. |
| OBR-45 | Procedure Code Modifier | CNE | — | O | Y | — | Modifier(s) for the procedure code. |
| OBR-46 | Placer Supplemental Service Information | CWE | — | O | Y | HL70411 | Extra placer service info. |
| OBR-47 | Filler Supplemental Service Information | CWE | — | O | Y | — | Extra filler service info. |
| OBR-48 | Medically Necessary Duplicate Procedure Reason | CWE | — | O | — | HL70476 | Why a duplicate procedure is needed. |
| OBR-49 | Result Handling | CWE | — | O | — | HL70507 | How results should be handled. |
| OBR-50 | Parent Universal Service Identifier | CWE | — | O | — | — | Parent order's service id. |
| OBR-51 | Observation Group ID | EI | — | O | — | — | Groups related observations. |
| OBR-52 | Parent Observation Group ID | EI | — | O | — | — | Parent observation group. |
| OBR-53 | Alternate Placer Order Number | CX | — | O | Y | — | Alternate placer id. |
| OBR-54 | Parent Order | EIP | — | O | — | — | Link to the parent order. |
Most-used fields
- OBR-4 Universal Service Identifier is the what — the battery/panel ordered or reported (e.g.
CBC^Complete Blood Count^L, or a LOINC code). It is the only required field and the anchor for the whole order. - OBR-2 Placer Order Number and OBR-3 Filler Order Number tie the OBR to its ORC and across systems.
- OBR-25 Result Status reports whether the report is preliminary, final, or corrected — distinct from each OBX's own status.
- OBR-7 Observation Date/Time and OBR-14 Specimen Received Date/Time anchor result timing.
- OBR-16 Ordering Provider and OBR-28 Result Copies To drive result distribution.
Version differences (2.3 to 2.8.2)
- 2.5: OBR-15 Specimen Source (
CM) deprecated in favor of the SPM segment; OBR-27 Quantity/Timing deprecated in favor of TQ1/TQ2. - 2.5/2.6: OBR-49 Result Handling, OBR-50 Parent Universal Service Identifier added.
- 2.7+: OBR-51 Observation Group ID, OBR-52 Parent Observation Group ID, OBR-53 Alternate Placer Order Number, OBR-54 Parent Order added.
- Coded fields migrate from
CEtoCWEacross versions; older receivers ignore trailing fields.
Common mistakes
- Continuing to send specimen data in OBR-15 instead of the SPM segment in v2.5+ feeds.
- Confusing OBR-25 (report status) with the per-result OBX-11 status; both must be honored.
- Reading timing from the deprecated OBR-27 rather than TQ1/TQ2.
- Assuming OBR-4 is always a LOINC code — many feeds use local battery codes in the first component.
Examples
Minimal valid OBR (only the required service id):
OBR|1|||CBC^Complete Blood Count^L
Fully-populated OBR:
OBR|1|PON12345^MERCYGEN|FON98765^LAB|CBC^Complete Blood Count^L|||20260609130000|||COLL01^COLLECTOR^A|||||20260609131500||1234^SMITH^JANE^A^^^MD||||||20260609150000||CH|F
Annotated breakdown of the fully-populated example (selected fields):
OBR ← segment ID
1 ← OBR-1 Set ID
PON12345^MERCYGEN ← OBR-2 Placer Order Number
FON98765^LAB ← OBR-3 Filler Order Number
CBC^Complete Blood Count^L ← OBR-4 Universal Service Identifier
20260609130000 ← OBR-7 Observation Date/Time
COLL01^COLLECTOR^A ← OBR-10 Collector Identifier
20260609131500 ← OBR-14 Specimen Received Date/Time
1234^SMITH^JANE^A^^^MD ← OBR-16 Ordering Provider
20260609150000 ← OBR-22 Results Rpt/Status Chng Date/Time
CH ← OBR-24 Diagnostic Serv Sect ID (Chemistry)
F ← OBR-25 Result Status (Final)
In-context inside an ORU^R01 (result, OBR grouping OBX lines):
MSH|^~&|LAB|MERCYGEN|EHR|MERCYGEN|20260609150000||ORU^R01^ORU_R01|MSG305|P|2.5.1
PID|1||MR12345^^^MERCYGEN^MR||DOE^JOHN^Q||19800101|M
ORC|RE|PON12345^MERCYGEN|FON98765^LAB
OBR|1|PON12345^MERCYGEN|FON98765^LAB|CBC^Complete Blood Count^L|||20260609130000|||||||||1234^SMITH^JANE^A^^^MD|||||||20260609150000||CH|F
OBX|1|NM|718-7^Hemoglobin^LN||13.5|g/dL|13.0-17.0|N|||F
OBX|2|NM|4544-3^Hematocrit^LN||40.1|%|38.0-50.0|N|||F
In-context inside an ORM^O01 (order):
MSH|^~&|CPOE|MERCYGEN|LAB|MERCYGEN|20260609130000||ORM^O01^ORM_O01|MSG201|P|2.5.1
PID|1||MR12345^^^MERCYGEN^MR||DOE^JOHN^Q||19800101|M
ORC|NW|PON12345^MERCYGEN|||IP||||20260609130000||1234^SMITH^JANE^A^^^MD
OBR|1|PON12345^MERCYGEN||CBC^Complete Blood Count^L
FHIR mapping
OBR maps to three resources depending on context: ServiceRequest (the order), DiagnosticReport (the report header in a result), and Specimen (collection details). Official ConceptMaps: ServiceRequest, DiagnosticReport, Specimen.
Key mappings by target:
| OBR field | FHIR target |
|---|---|
| OBR-2 Placer Order Number | ServiceRequest.identifier (PLAC) · Specimen.accessionIdentifier |
| OBR-3 Filler Order Number | ServiceRequest.identifier (FILL) |
| OBR-4 Universal Service Identifier | ServiceRequest.code · DiagnosticReport.code |
| OBR-5 Priority | ServiceRequest.priority |
| OBR-6 Requested Date/Time | ServiceRequest.occurrenceDateTime |
| OBR-7 Observation Date/Time | DiagnosticReport.effective[x] · Specimen.collection.collected[x] |
| OBR-11 Specimen Action Code | ServiceRequest.intent (reflex/add-on/order) |
| OBR-14 Specimen Received Date/Time | Specimen.receivedTime |
| OBR-16 Ordering Provider | ServiceRequest.requester (Practitioner) |
| OBR-22 Results Rpt/Status Chng | DiagnosticReport.issued |
| OBR-24 Diagnostic Serv Sect ID | DiagnosticReport.category |
| OBR-25 Result Status | DiagnosticReport.status |
| OBR-31 Reason for Study | ServiceRequest.reasonCode |
| OBR-32 Principal Result Interpreter | DiagnosticReport.resultsInterpreter |
| OBR-34/35 Technician/Transcriptionist | DiagnosticReport.performer (with function) |
| OBR-39 Collector's Comment | Specimen.note |
Fields without a published target (OBR-18 through OBR-21 placer/filler fields, OBR-30, OBR-36 through OBR-38, OBR-40 through OBR-43, OBR-46 through OBR-52) are workflow/transport details not represented in these resources.
Engine considerations
- Required in practice: OBR-4 is required; result interfaces also require OBR-2/3 (correlation), OBR-7, and OBR-25.
- Keep OBR-25 (report status) and OBX-11 (per-result status) in sync — a corrected report should update both.
- In v2.5+ read specimen detail from SPM and timing from TQ1, not the deprecated OBR-15/OBR-27.
- Preserve the OBR→OBX grouping: every OBX belongs to the OBR that precedes it.
How Vorro parses and produces OBR
Vorro treats OBR as the parent of its OBX group, correlates it to the ORC by placer/filler numbers, and reads OBR-25 for report-level status transitions. Specimen and timing are taken from SPM/TQ1 in modern feeds. On the FHIR side Vorro emits a ServiceRequest for the order, a DiagnosticReport for the result header (linking the OBX-derived Observations), and a Specimen when collection data is present.
Related pages
- ORC — the common-order header OBR pairs with.
- OBX — the result observations grouped under OBR.
- ORU messages — the result message where OBR lives.
