DICOM Attribute

Scheduled Procedure Step ID (0040,0009)

Keyword
ScheduledProcedureStepID
VR
SH
VM
1

Attribute Metadata

This attribute is part of the current DICOM Standard. Its value representation is SH with multiplicity 1.

This attribute uses the SH Value Representation. Multiplicity 1 governs how many values may be encoded.

Integration Notes

Real-world integration guidance for engineers implementing this attribute in Mirth Connect, FHIR gateways, HL7 v2 bridges, and cloud DICOM services. Authoritative source data where available; reference examples and operational notes where they add value.

FHIR Mapping

No direct FHIR ImagingStudy mapping published for this attribute. Some tags map indirectly via the Patient, Endpoint, or ImagingSelection resources — Phase 2b will expand coverage to those.

HL7 v2 Equivalent

  • OBR-3 / ORC-3 Filler Order Number
    ORM

    ScheduledProcedureStepID in DICOM matches the filler-side identifier of the order. ORC-3 is the formal field; OBR-3 mirrors it.

    Source: IHE RAD-TF Vol 2 §4.7

Verify against IHE Radiology TF Vol 2 and your facility's interface specification before production use.

Cloud DICOM Support

AWS HealthImaging, Azure DICOM, and GCP Healthcare DICOM coverage rolls out by attribute. The QIDO-RS matching keys + Patient/Study/Series core (~50 attributes) are documented; lower-traffic attributes will be added as Saga teams encounter them in production.

Real-World Sample Values

  • ANON 693_J2KI.dcm

Extracted from pydicom test fixtures (MIT, de-identified).

Mirth Connect Example

Bridge HL7 v2 ORC-3 (Filler Order Number) to DICOM Scheduled Procedure Step ID — Common in HL7 v2 ORM → DICOM MWL (Modality Worklist) bridges where the modality

Common in HL7 v2 ORM → DICOM MWL (Modality Worklist) bridges where the modality requests work scheduled by the order entry system.

// (0040,0009) Scheduled Procedure Step ID — bridge from HL7 v2 ORC-3 Filler Order Number
var fillerOrderNum = String(msg['ORC'] && msg['ORC'][3] && msg['ORC'][3][1] || '').trim();
if (fillerOrderNum) {
  channelMap.put('dicom_sps_id', fillerOrderNum);
} else {
  // Fallback to OBR-3 (Filler Order Number, redundant in older messages)
  var obr3 = String(msg['OBR'] && msg['OBR'][3] && msg['OBR'][3][1] || '').trim();
  if (obr3) channelMap.put('dicom_sps_id', obr3);
}

Reference only — validate before production. Snippets are starting points, not turnkey solutions. Always test against your channel's specific message structure and your facility's interface specification. See Mirth Connect User Guide + NEMA PS3.6 + your vendor conformance statement for authoritative specification.

Common Operational Errors

Operational error patterns for the most-queried tags will be added as coverage expands.

DICOM Integration Services

Saga IT builds production DICOM integrations across Mirth Connect, FHIR gateways, and cloud imaging platforms. If you're working with ScheduledProcedureStepID or the broader (0040,0009) context: