This page is part of the FHIR Specification (v1.0.0: DSTU 2 Ballot 3). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R3 R2
Patient Care Work Group | Maturity Level: 0 | Compartments: Device, Encounter, Patient, Practitioner, RelatedPerson |
A request for a procedure to be performed. May be a proposal or an order.
A Procedure Request is a record of a request for a procedure to be performed. It can be used to represent a procedure that is planned, that is proposed, or that is ordered, as distinguished by the value of the ProcedureRequestStatus field.
A procedure is an activity that is performed with or on a patient as part of the provision of care. Examples include surgical procedures, diagnostic procedures, endoscopic procedures, biopsies, counselling, physiotherapy, exercise, etc. Procedures may be performed by a healthcare professional, a friend or relative or in some cases by the patient themselves.
The procedure request may represent an order that is entered by a practitioner in a CPOE system as well as a proposal made by a clinical decision support (CDS) system based on a patient's clinical record and context of care. Planned procedures referenced by a CarePlan may also be represented by this resource.
ProcedureRequest is closely related to other types of "request" resources, particularly DiagnosticOrder and ReferralRequest. In fact, for some services, it may be appropriate to use any one of these resources to request that the procedure be performed. Which one is used may be driven by organization practice and by context. When it is unclear which to use, the following principles may be helpful:
Irrespective of the guidance above, systems should be prepared for some degree of overlap between these resources and be prepared to execute searches against multiple resources in cases where differentiation cannot be guaranteed. As well, in some workflows more than one type of resource or even all three might exist. E.g. Upon receiving a ReferralRequest a practitioner might initiate a DiagnosticOrder. The diagnostic service might then initiate a ProcedureRequest.
The notion of ProcedureRequest and CommunicationRequest are also closely related. The boundary between determining whether an action is considered to be training or counselling (and thus a ProcedureRequest) as opposed to a CommunicationRequest is based on whether there's a specific intent to change the mind-set of the patient. A request to merely disclose information would be considered a CommunicationRequest. Invocation of a process that will involve verification of the patient's comprehension or an attempt to change the patient's mental state would be a ProcedureRequest.
This resource is referenced by CarePlan, ClinicalImpression, DiagnosticReport, Goal and Procedure
Structure
UML Diagram
XML Template
<ProcedureRequest xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Identifier --></identifier> <subject><!-- 1..1 Reference(Patient|Group) Subject --></subject> <code><!-- 1..1 CodeableConcept Procedure Code --></code> <bodySite><!-- 0..* CodeableConcept Target body sites --></bodySite> <reason[x]><!-- 0..1 CodeableConcept|Reference(Condition) Indication --></reason[x]> <scheduled[x]><!-- 0..1 dateTime|Period|Timing Procedure timing schedule --></scheduled[x]> <encounter><!-- 0..1 Reference(Encounter) Encounter --></encounter> <performer><!-- 0..1 Reference(Practitioner|Organization|Patient|RelatedPerson) Performer --></performer> <status value="[code]"/><!-- 0..1 proposed | draft | requested | received | accepted | in-progress | completed | suspended | rejected | aborted --> <notes><!-- 0..* Annotation Notes --></notes> <asNeeded[x]><!-- 0..1 boolean|CodeableConcept PRN --></asNeeded[x]> <orderedOn value="[dateTime]"/><!-- 0..1 When Requested --> <orderer><!-- 0..1 Reference(Practitioner|Patient|RelatedPerson|Device) Ordering Party --></orderer> <priority value="[code]"/><!-- 0..1 routine | urgent | stat | asap --> </ProcedureRequest>
JSON Template
{ "resourceType" : "ProcedureRequest", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Identifier "subject" : { Reference(Patient|Group) }, // R! Subject "code" : { CodeableConcept }, // R! Procedure Code "bodySite" : [{ CodeableConcept }], // Target body sites // reason[x]: Indication. One of these 2: "reasonCodeableConcept" : { CodeableConcept }, "reasonReference" : { Reference(Condition) }, // scheduled[x]: Procedure timing schedule. One of these 3: "scheduledDateTime" : "<dateTime>", "scheduledPeriod" : { Period }, "scheduledTiming" : { Timing }, "encounter" : { Reference(Encounter) }, // Encounter "performer" : { Reference(Practitioner|Organization|Patient|RelatedPerson) }, // Performer "status" : "<code>", // proposed | draft | requested | received | accepted | in-progress | completed | suspended | rejected | aborted "notes" : [{ Annotation }], // Notes // asNeeded[x]: PRN. One of these 2: "asNeededBoolean" : <boolean>, "asNeededCodeableConcept" : { CodeableConcept }, "orderedOn" : "<dateTime>", // When Requested "orderer" : { Reference(Practitioner|Patient|RelatedPerson|Device) }, // Ordering Party "priority" : "<code>" // routine | urgent | stat | asap }
Structure
XML Template
<ProcedureRequest xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Identifier --></identifier> <subject><!-- 1..1 Reference(Patient|Group) Subject --></subject> <code><!-- 1..1 CodeableConcept Procedure Code --></code> <bodySite><!-- 0..* CodeableConcept Target body sites --></bodySite> <reason[x]><!-- 0..1 CodeableConcept|Reference(Condition) Indication --></reason[x]> <scheduled[x]><!-- 0..1 dateTime|Period|Timing Procedure timing schedule --></scheduled[x]> <encounter><!-- 0..1 Reference(Encounter) Encounter --></encounter> <performer><!-- 0..1 Reference(Practitioner|Organization|Patient|RelatedPerson) Performer --></performer> <status value="[code]"/><!-- 0..1 proposed | draft | requested | received | accepted | in-progress | completed | suspended | rejected | aborted --> <notes><!-- 0..* Annotation Notes --></notes> <asNeeded[x]><!-- 0..1 boolean|CodeableConcept PRN --></asNeeded[x]> <orderedOn value="[dateTime]"/><!-- 0..1 When Requested --> <orderer><!-- 0..1 Reference(Practitioner|Patient|RelatedPerson|Device) Ordering Party --></orderer> <priority value="[code]"/><!-- 0..1 routine | urgent | stat | asap --> </ProcedureRequest>
JSON Template
{ "resourceType" : "ProcedureRequest", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Identifier "subject" : { Reference(Patient|Group) }, // R! Subject "code" : { CodeableConcept }, // R! Procedure Code "bodySite" : [{ CodeableConcept }], // Target body sites // reason[x]: Indication. One of these 2: "reasonCodeableConcept" : { CodeableConcept }, "reasonReference" : { Reference(Condition) }, // scheduled[x]: Procedure timing schedule. One of these 3: "scheduledDateTime" : "<dateTime>", "scheduledPeriod" : { Period }, "scheduledTiming" : { Timing }, "encounter" : { Reference(Encounter) }, // Encounter "performer" : { Reference(Practitioner|Organization|Patient|RelatedPerson) }, // Performer "status" : "<code>", // proposed | draft | requested | received | accepted | in-progress | completed | suspended | rejected | aborted "notes" : [{ Annotation }], // Notes // asNeeded[x]: PRN. One of these 2: "asNeededBoolean" : <boolean>, "asNeededCodeableConcept" : { CodeableConcept }, "orderedOn" : "<dateTime>", // When Requested "orderer" : { Reference(Practitioner|Patient|RelatedPerson|Device) }, // Ordering Party "priority" : "<code>" // routine | urgent | stat | asap }
Alternate definitions: Schema/Schematron, Resource Profile (XML, JSON), Questionnaire
Path | Definition | Type | Reference |
---|---|---|---|
ProcedureRequest.code | A code to identify a specific procedure | Example | Procedure Codes (SNOMED CT) |
ProcedureRequest.bodySite | A code that identifies anatomical location | Example | SNOMED CT Body Structures |
ProcedureRequest.reason[x] | A code that explains a reason why a procedure is required. | Example | Procedure Reason Codes |
ProcedureRequest.status | The status of the request | Required | ProcedureRequestStatus |
ProcedureRequest.asNeeded[x] | A coded concept identifying the pre-condition that should hold prior to performing a procedure. For example "pain", "on flare-up", etc. | Unknown | No details provided yet |
ProcedureRequest.priority | The priority of the request | Required | ProcedureRequestPriority |
Notes to reviewers:
At this time, the code bindings are placeholders to be fleshed out upon further review by the community.
Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
Name | Type | Description | Paths |
encounter | reference | Encounter | ProcedureRequest.encounter (Encounter) |
identifier | token | A unique identifier of the Procedure Request | ProcedureRequest.identifier |
orderer | reference | Ordering Party | ProcedureRequest.orderer (Device, Patient, Practitioner, RelatedPerson) |
patient | reference | Search by subject - a patient | ProcedureRequest.subject (Patient) |
performer | reference | Performer | ProcedureRequest.performer (Patient, Organization, Practitioner, RelatedPerson) |
subject | reference | Search by subject | ProcedureRequest.subject (Patient, Group) |