This page is part of the FHIR Specification (v1.6.0: STU 3 Ballot 4). 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: R5 R4B R4 R3 R2
Patient Care Work Group | Maturity Level: 1 | Compartments: Encounter, Patient, Practitioner, RelatedPerson |
An action that is or was performed on a patient. This can be a physical intervention like an operation, or less invasive like counseling or hypnotherapy.
This resource is used to record the details of procedures performed on a patient. 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, counseling, physiotherapy, exercise, etc. Procedures may be performed by a healthcare professional, a friend or relative or in some cases by the patient themselves.
This resource provides summary information about the occurrence of the procedure and is not intended to provide real-time snapshots of a procedure as it unfolds, though for long-running procedures such as psychotherapy, it could represent summary level information about overall progress. The creation of a resource to support detailed real-time procedure information awaits the identification of a specific implementation use-case to share such information.
The Procedure resource should not be used to capture an event if a more specific resource already exists - i.e. immunizations, drug administrations and communications. The boundary between determining whether an action is considered to be training or counseling (and thus a procedure) as opposed to a Communication is based on whether there's a specific intent to change the mind-set of the patient. Mere disclosure of information would be considered a Communication. A process that involves verification of the patient's comprehension or to change the patient's mental state would be a Procedure.
Note that many diagnostic processes are procedures that generate Observations and DiagnosticReports. In many cases, such an observation does not require an explicit representation of the procedure used to create the observation, but where there are details of interest about how the diagnostic procedure was performed, the procedure resource is used to describe the activity.
Some diagnostic procedures may not have a Procedure record. The Procedure record is only necessary when there is a need to capture information about the physical intervention that was performed to capture the diagnostic information (e.g. anesthetic, incision, scope size, etc.)
PLANNED CHANGE:
Procedure is one of the Event resources in the FHIR Workflow specification. As such, it is expected to be adjusted to align with the Event workflow pattern which will involve adding a number of additional data elements and potentially renaming a few elements. Any concerns about performing such alignment are welcome as ballot comments and/or tracker items.
This resource is referenced by Claim, ClinicalImpression, Encounter, ExplanationOfBenefit, Flag, ImagingStudy and QuestionnaireResponse
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Procedure | I | DomainResource | An action that is being or was performed on a patient Reason not performed is only permitted if notPerformed indicator is true | |
identifier | Σ | 0..* | Identifier | External Identifiers for this procedure |
subject | Σ | 1..1 | Reference(Patient | Group) | Who the procedure was performed on |
status | ?!Σ | 1..1 | code | in-progress | aborted | completed | entered-in-error ProcedureStatus (Required) |
category | Σ | 0..1 | CodeableConcept | Classification of the procedure Procedure Category Codes (SNOMED CT) (Example) |
code | Σ | 1..1 | CodeableConcept | Identification of the procedure Procedure Codes (SNOMED CT) (Example) |
notPerformed | ?!Σ | 0..1 | boolean | True if procedure was not performed as scheduled |
reasonNotPerformed | I | 0..* | CodeableConcept | Reason procedure was not performed Procedure Not Performed Reason (SNOMED-CT) (Example) |
bodySite | Σ | 0..* | CodeableConcept | Target body sites SNOMED CT Body Structures (Example) |
reasonReference | Σ | 0..* | Reference(Condition) | Condition that is the reason the procedure performed |
reasonCode | Σ | 0..* | CodeableConcept | Coded reason procedure performed Procedure Reason Codes (Example) |
performer | Σ | 0..* | BackboneElement | The people who performed the procedure |
actor | Σ | 0..1 | Reference(Practitioner | Organization | Patient | RelatedPerson) | The reference to the practitioner |
role | Σ | 0..1 | CodeableConcept | The role the actor was in Procedure Performer Role Codes (Example) |
performed[x] | Σ | 0..1 | Date/Period the procedure was performed | |
performedDateTime | dateTime | |||
performedPeriod | Period | |||
encounter | Σ | 0..1 | Reference(Encounter) | The encounter associated with the procedure |
location | Σ | 0..1 | Reference(Location) | Where the procedure happened |
outcome | Σ | 0..1 | CodeableConcept | The result of procedure Procedure Outcome Codes (SNOMED CT) (Example) |
report | 0..* | Reference(DiagnosticReport) | Any report resulting from the procedure | |
complication | 0..* | CodeableConcept | Complication following the procedure Condition/Problem/Diagnosis Codes (Example) | |
followUp | 0..* | CodeableConcept | Instructions for follow up Procedure Follow up Codes (SNOMED CT) (Example) | |
request | 0..1 | Reference(CarePlan | DiagnosticRequest | ProcedureRequest | ReferralRequest) | A request for this procedure | |
notes | 0..* | Annotation | Additional information about the procedure | |
focalDevice | 0..* | BackboneElement | Device changed in procedure | |
action | 0..1 | CodeableConcept | Kind of change to device Procedure Device Action Codes (Required) | |
manipulated | 1..1 | Reference(Device) | Device that was changed | |
usedReference | 0..* | Reference(Device | Medication | Substance) | Items used during procedure | |
usedCode | 0..* | CodeableConcept | Coded items used during the procedure | |
component | 0..* | Reference(MedicationAdministration | Procedure | Observation) | Events related to the procedure | |
Documentation for this format |
UML Diagram (Legend)
XML Template
<Procedure xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier External Identifiers for this procedure --></identifier> <subject><!-- 1..1 Reference(Patient|Group) Who the procedure was performed on --></subject> <status value="[code]"/><!-- 1..1 in-progress | aborted | completed | entered-in-error --> <category><!-- 0..1 CodeableConcept Classification of the procedure --></category> <code><!-- 1..1 CodeableConcept Identification of the procedure --></code> <notPerformed value="[boolean]"/><!-- 0..1 True if procedure was not performed as scheduled --> <reasonNotPerformed><!-- 0..* CodeableConcept Reason procedure was not performed --></reasonNotPerformed> <bodySite><!-- 0..* CodeableConcept Target body sites --></bodySite> <reasonReference><!-- 0..* Reference(Condition) Condition that is the reason the procedure performed --></reasonReference> <reasonCode><!-- 0..* CodeableConcept Coded reason procedure performed --></reasonCode> <performer> <!-- 0..* The people who performed the procedure --> <actor><!-- 0..1 Reference(Practitioner|Organization|Patient|RelatedPerson) The reference to the practitioner --></actor> <role><!-- 0..1 CodeableConcept The role the actor was in --></role> </performer> <performed[x]><!-- 0..1 dateTime|Period Date/Period the procedure was performed --></performed[x]> <encounter><!-- 0..1 Reference(Encounter) The encounter associated with the procedure --></encounter> <location><!-- 0..1 Reference(Location) Where the procedure happened --></location> <outcome><!-- 0..1 CodeableConcept The result of procedure --></outcome> <report><!-- 0..* Reference(DiagnosticReport) Any report resulting from the procedure --></report> <complication><!-- 0..* CodeableConcept Complication following the procedure --></complication> <followUp><!-- 0..* CodeableConcept Instructions for follow up --></followUp> <request><!-- 0..1 Reference(CarePlan|DiagnosticRequest|ProcedureRequest| ReferralRequest) A request for this procedure --></request> <notes><!-- 0..* Annotation Additional information about the procedure --></notes> <focalDevice> <!-- 0..* Device changed in procedure --> <action><!-- 0..1 CodeableConcept Kind of change to device --></action> <manipulated><!-- 1..1 Reference(Device) Device that was changed --></manipulated> </focalDevice> <usedReference><!-- 0..* Reference(Device|Medication|Substance) Items used during procedure --></usedReference> <usedCode><!-- 0..* CodeableConcept Coded items used during the procedure --></usedCode> <component><!-- 0..* Reference(MedicationAdministration|Procedure|Observation) Events related to the procedure --></component> </Procedure>
JSON Template
{ "resourceType" : "Procedure", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // External Identifiers for this procedure "subject" : { Reference(Patient|Group) }, // R! Who the procedure was performed on "status" : "<code>", // R! in-progress | aborted | completed | entered-in-error "category" : { CodeableConcept }, // Classification of the procedure "code" : { CodeableConcept }, // R! Identification of the procedure "notPerformed" : <boolean>, // True if procedure was not performed as scheduled "reasonNotPerformed" : [{ CodeableConcept }], // C? Reason procedure was not performed "bodySite" : [{ CodeableConcept }], // Target body sites "reasonReference" : [{ Reference(Condition) }], // Condition that is the reason the procedure performed "reasonCode" : [{ CodeableConcept }], // Coded reason procedure performed "performer" : [{ // The people who performed the procedure "actor" : { Reference(Practitioner|Organization|Patient|RelatedPerson) }, // The reference to the practitioner "role" : { CodeableConcept } // The role the actor was in }], // performed[x]: Date/Period the procedure was performed. One of these 2: "performedDateTime" : "<dateTime>", "performedPeriod" : { Period }, "encounter" : { Reference(Encounter) }, // The encounter associated with the procedure "location" : { Reference(Location) }, // Where the procedure happened "outcome" : { CodeableConcept }, // The result of procedure "report" : [{ Reference(DiagnosticReport) }], // Any report resulting from the procedure "complication" : [{ CodeableConcept }], // Complication following the procedure "followUp" : [{ CodeableConcept }], // Instructions for follow up "request" : { Reference(CarePlan|DiagnosticRequest|ProcedureRequest| ReferralRequest) }, // A request for this procedure "notes" : [{ Annotation }], // Additional information about the procedure "focalDevice" : [{ // Device changed in procedure "action" : { CodeableConcept }, // Kind of change to device "manipulated" : { Reference(Device) } // R! Device that was changed }], "usedReference" : [{ Reference(Device|Medication|Substance) }], // Items used during procedure "usedCode" : [{ CodeableConcept }], // Coded items used during the procedure "component" : [{ Reference(MedicationAdministration|Procedure|Observation) }] // Events related to the procedure }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:Procedure; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:Procedure.identifier [ Identifier ], ... ; # 0..* External Identifiers for this procedure fhir:Procedure.subject [ Reference(Patient|Group) ]; # 1..1 Who the procedure was performed on fhir:Procedure.status [ code ]; # 1..1 in-progress | aborted | completed | entered-in-error fhir:Procedure.category [ CodeableConcept ]; # 0..1 Classification of the procedure fhir:Procedure.code [ CodeableConcept ]; # 1..1 Identification of the procedure fhir:Procedure.notPerformed [ boolean ]; # 0..1 True if procedure was not performed as scheduled fhir:Procedure.reasonNotPerformed [ CodeableConcept ], ... ; # 0..* Reason procedure was not performed fhir:Procedure.bodySite [ CodeableConcept ], ... ; # 0..* Target body sites fhir:Procedure.reasonReference [ Reference(Condition) ], ... ; # 0..* Condition that is the reason the procedure performed fhir:Procedure.reasonCode [ CodeableConcept ], ... ; # 0..* Coded reason procedure performed fhir:Procedure.performer [ # 0..* The people who performed the procedure fhir:Procedure.performer.actor [ Reference(Practitioner|Organization|Patient|RelatedPerson) ]; # 0..1 The reference to the practitioner fhir:Procedure.performer.role [ CodeableConcept ]; # 0..1 The role the actor was in ], ...; # Procedure.performed[x] : 0..1 Date/Period the procedure was performed. One of these 2 fhir:Procedure.performedDateTime [ dateTime ] fhir:Procedure.performedPeriod [ Period ] fhir:Procedure.encounter [ Reference(Encounter) ]; # 0..1 The encounter associated with the procedure fhir:Procedure.location [ Reference(Location) ]; # 0..1 Where the procedure happened fhir:Procedure.outcome [ CodeableConcept ]; # 0..1 The result of procedure fhir:Procedure.report [ Reference(DiagnosticReport) ], ... ; # 0..* Any report resulting from the procedure fhir:Procedure.complication [ CodeableConcept ], ... ; # 0..* Complication following the procedure fhir:Procedure.followUp [ CodeableConcept ], ... ; # 0..* Instructions for follow up fhir:Procedure.request [ Reference(CarePlan|DiagnosticRequest|ProcedureRequest|ReferralRequest) ]; # 0..1 A request for this procedure fhir:Procedure.notes [ Annotation ], ... ; # 0..* Additional information about the procedure fhir:Procedure.focalDevice [ # 0..* Device changed in procedure fhir:Procedure.focalDevice.action [ CodeableConcept ]; # 0..1 Kind of change to device fhir:Procedure.focalDevice.manipulated [ Reference(Device) ]; # 1..1 Device that was changed ], ...; fhir:Procedure.usedReference [ Reference(Device|Medication|Substance) ], ... ; # 0..* Items used during procedure fhir:Procedure.usedCode [ CodeableConcept ], ... ; # 0..* Coded items used during the procedure fhir:Procedure.component [ Reference(MedicationAdministration|Procedure|Observation) ], ... ; # 0..* Events related to the procedure ]
Changes since DSTU2
Procedure | |
Procedure.reasonReference | added |
Procedure.reasonCode | added |
Procedure.request | Remove Reference(DiagnosticOrder), Add Reference(DiagnosticRequest) |
Procedure.usedReference | added |
Procedure.usedCode | added |
Procedure.component | added |
Procedure.reason[x] | deleted |
Procedure.used | deleted |
See the Full Difference for further information
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Procedure | I | DomainResource | An action that is being or was performed on a patient Reason not performed is only permitted if notPerformed indicator is true | |
identifier | Σ | 0..* | Identifier | External Identifiers for this procedure |
subject | Σ | 1..1 | Reference(Patient | Group) | Who the procedure was performed on |
status | ?!Σ | 1..1 | code | in-progress | aborted | completed | entered-in-error ProcedureStatus (Required) |
category | Σ | 0..1 | CodeableConcept | Classification of the procedure Procedure Category Codes (SNOMED CT) (Example) |
code | Σ | 1..1 | CodeableConcept | Identification of the procedure Procedure Codes (SNOMED CT) (Example) |
notPerformed | ?!Σ | 0..1 | boolean | True if procedure was not performed as scheduled |
reasonNotPerformed | I | 0..* | CodeableConcept | Reason procedure was not performed Procedure Not Performed Reason (SNOMED-CT) (Example) |
bodySite | Σ | 0..* | CodeableConcept | Target body sites SNOMED CT Body Structures (Example) |
reasonReference | Σ | 0..* | Reference(Condition) | Condition that is the reason the procedure performed |
reasonCode | Σ | 0..* | CodeableConcept | Coded reason procedure performed Procedure Reason Codes (Example) |
performer | Σ | 0..* | BackboneElement | The people who performed the procedure |
actor | Σ | 0..1 | Reference(Practitioner | Organization | Patient | RelatedPerson) | The reference to the practitioner |
role | Σ | 0..1 | CodeableConcept | The role the actor was in Procedure Performer Role Codes (Example) |
performed[x] | Σ | 0..1 | Date/Period the procedure was performed | |
performedDateTime | dateTime | |||
performedPeriod | Period | |||
encounter | Σ | 0..1 | Reference(Encounter) | The encounter associated with the procedure |
location | Σ | 0..1 | Reference(Location) | Where the procedure happened |
outcome | Σ | 0..1 | CodeableConcept | The result of procedure Procedure Outcome Codes (SNOMED CT) (Example) |
report | 0..* | Reference(DiagnosticReport) | Any report resulting from the procedure | |
complication | 0..* | CodeableConcept | Complication following the procedure Condition/Problem/Diagnosis Codes (Example) | |
followUp | 0..* | CodeableConcept | Instructions for follow up Procedure Follow up Codes (SNOMED CT) (Example) | |
request | 0..1 | Reference(CarePlan | DiagnosticRequest | ProcedureRequest | ReferralRequest) | A request for this procedure | |
notes | 0..* | Annotation | Additional information about the procedure | |
focalDevice | 0..* | BackboneElement | Device changed in procedure | |
action | 0..1 | CodeableConcept | Kind of change to device Procedure Device Action Codes (Required) | |
manipulated | 1..1 | Reference(Device) | Device that was changed | |
usedReference | 0..* | Reference(Device | Medication | Substance) | Items used during procedure | |
usedCode | 0..* | CodeableConcept | Coded items used during the procedure | |
component | 0..* | Reference(MedicationAdministration | Procedure | Observation) | Events related to the procedure | |
Documentation for this format |
XML Template
<Procedure xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier External Identifiers for this procedure --></identifier> <subject><!-- 1..1 Reference(Patient|Group) Who the procedure was performed on --></subject> <status value="[code]"/><!-- 1..1 in-progress | aborted | completed | entered-in-error --> <category><!-- 0..1 CodeableConcept Classification of the procedure --></category> <code><!-- 1..1 CodeableConcept Identification of the procedure --></code> <notPerformed value="[boolean]"/><!-- 0..1 True if procedure was not performed as scheduled --> <reasonNotPerformed><!-- 0..* CodeableConcept Reason procedure was not performed --></reasonNotPerformed> <bodySite><!-- 0..* CodeableConcept Target body sites --></bodySite> <reasonReference><!-- 0..* Reference(Condition) Condition that is the reason the procedure performed --></reasonReference> <reasonCode><!-- 0..* CodeableConcept Coded reason procedure performed --></reasonCode> <performer> <!-- 0..* The people who performed the procedure --> <actor><!-- 0..1 Reference(Practitioner|Organization|Patient|RelatedPerson) The reference to the practitioner --></actor> <role><!-- 0..1 CodeableConcept The role the actor was in --></role> </performer> <performed[x]><!-- 0..1 dateTime|Period Date/Period the procedure was performed --></performed[x]> <encounter><!-- 0..1 Reference(Encounter) The encounter associated with the procedure --></encounter> <location><!-- 0..1 Reference(Location) Where the procedure happened --></location> <outcome><!-- 0..1 CodeableConcept The result of procedure --></outcome> <report><!-- 0..* Reference(DiagnosticReport) Any report resulting from the procedure --></report> <complication><!-- 0..* CodeableConcept Complication following the procedure --></complication> <followUp><!-- 0..* CodeableConcept Instructions for follow up --></followUp> <request><!-- 0..1 Reference(CarePlan|DiagnosticRequest|ProcedureRequest| ReferralRequest) A request for this procedure --></request> <notes><!-- 0..* Annotation Additional information about the procedure --></notes> <focalDevice> <!-- 0..* Device changed in procedure --> <action><!-- 0..1 CodeableConcept Kind of change to device --></action> <manipulated><!-- 1..1 Reference(Device) Device that was changed --></manipulated> </focalDevice> <usedReference><!-- 0..* Reference(Device|Medication|Substance) Items used during procedure --></usedReference> <usedCode><!-- 0..* CodeableConcept Coded items used during the procedure --></usedCode> <component><!-- 0..* Reference(MedicationAdministration|Procedure|Observation) Events related to the procedure --></component> </Procedure>
JSON Template
{ "resourceType" : "Procedure", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // External Identifiers for this procedure "subject" : { Reference(Patient|Group) }, // R! Who the procedure was performed on "status" : "<code>", // R! in-progress | aborted | completed | entered-in-error "category" : { CodeableConcept }, // Classification of the procedure "code" : { CodeableConcept }, // R! Identification of the procedure "notPerformed" : <boolean>, // True if procedure was not performed as scheduled "reasonNotPerformed" : [{ CodeableConcept }], // C? Reason procedure was not performed "bodySite" : [{ CodeableConcept }], // Target body sites "reasonReference" : [{ Reference(Condition) }], // Condition that is the reason the procedure performed "reasonCode" : [{ CodeableConcept }], // Coded reason procedure performed "performer" : [{ // The people who performed the procedure "actor" : { Reference(Practitioner|Organization|Patient|RelatedPerson) }, // The reference to the practitioner "role" : { CodeableConcept } // The role the actor was in }], // performed[x]: Date/Period the procedure was performed. One of these 2: "performedDateTime" : "<dateTime>", "performedPeriod" : { Period }, "encounter" : { Reference(Encounter) }, // The encounter associated with the procedure "location" : { Reference(Location) }, // Where the procedure happened "outcome" : { CodeableConcept }, // The result of procedure "report" : [{ Reference(DiagnosticReport) }], // Any report resulting from the procedure "complication" : [{ CodeableConcept }], // Complication following the procedure "followUp" : [{ CodeableConcept }], // Instructions for follow up "request" : { Reference(CarePlan|DiagnosticRequest|ProcedureRequest| ReferralRequest) }, // A request for this procedure "notes" : [{ Annotation }], // Additional information about the procedure "focalDevice" : [{ // Device changed in procedure "action" : { CodeableConcept }, // Kind of change to device "manipulated" : { Reference(Device) } // R! Device that was changed }], "usedReference" : [{ Reference(Device|Medication|Substance) }], // Items used during procedure "usedCode" : [{ CodeableConcept }], // Coded items used during the procedure "component" : [{ Reference(MedicationAdministration|Procedure|Observation) }] // Events related to the procedure }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:Procedure; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:Procedure.identifier [ Identifier ], ... ; # 0..* External Identifiers for this procedure fhir:Procedure.subject [ Reference(Patient|Group) ]; # 1..1 Who the procedure was performed on fhir:Procedure.status [ code ]; # 1..1 in-progress | aborted | completed | entered-in-error fhir:Procedure.category [ CodeableConcept ]; # 0..1 Classification of the procedure fhir:Procedure.code [ CodeableConcept ]; # 1..1 Identification of the procedure fhir:Procedure.notPerformed [ boolean ]; # 0..1 True if procedure was not performed as scheduled fhir:Procedure.reasonNotPerformed [ CodeableConcept ], ... ; # 0..* Reason procedure was not performed fhir:Procedure.bodySite [ CodeableConcept ], ... ; # 0..* Target body sites fhir:Procedure.reasonReference [ Reference(Condition) ], ... ; # 0..* Condition that is the reason the procedure performed fhir:Procedure.reasonCode [ CodeableConcept ], ... ; # 0..* Coded reason procedure performed fhir:Procedure.performer [ # 0..* The people who performed the procedure fhir:Procedure.performer.actor [ Reference(Practitioner|Organization|Patient|RelatedPerson) ]; # 0..1 The reference to the practitioner fhir:Procedure.performer.role [ CodeableConcept ]; # 0..1 The role the actor was in ], ...; # Procedure.performed[x] : 0..1 Date/Period the procedure was performed. One of these 2 fhir:Procedure.performedDateTime [ dateTime ] fhir:Procedure.performedPeriod [ Period ] fhir:Procedure.encounter [ Reference(Encounter) ]; # 0..1 The encounter associated with the procedure fhir:Procedure.location [ Reference(Location) ]; # 0..1 Where the procedure happened fhir:Procedure.outcome [ CodeableConcept ]; # 0..1 The result of procedure fhir:Procedure.report [ Reference(DiagnosticReport) ], ... ; # 0..* Any report resulting from the procedure fhir:Procedure.complication [ CodeableConcept ], ... ; # 0..* Complication following the procedure fhir:Procedure.followUp [ CodeableConcept ], ... ; # 0..* Instructions for follow up fhir:Procedure.request [ Reference(CarePlan|DiagnosticRequest|ProcedureRequest|ReferralRequest) ]; # 0..1 A request for this procedure fhir:Procedure.notes [ Annotation ], ... ; # 0..* Additional information about the procedure fhir:Procedure.focalDevice [ # 0..* Device changed in procedure fhir:Procedure.focalDevice.action [ CodeableConcept ]; # 0..1 Kind of change to device fhir:Procedure.focalDevice.manipulated [ Reference(Device) ]; # 1..1 Device that was changed ], ...; fhir:Procedure.usedReference [ Reference(Device|Medication|Substance) ], ... ; # 0..* Items used during procedure fhir:Procedure.usedCode [ CodeableConcept ], ... ; # 0..* Coded items used during the procedure fhir:Procedure.component [ Reference(MedicationAdministration|Procedure|Observation) ], ... ; # 0..* Events related to the procedure ]
Changes since DSTU2
Procedure | |
Procedure.reasonReference | added |
Procedure.reasonCode | added |
Procedure.request | Remove Reference(DiagnosticOrder), Add Reference(DiagnosticRequest) |
Procedure.usedReference | added |
Procedure.usedCode | added |
Procedure.component | added |
Procedure.reason[x] | deleted |
Procedure.used | deleted |
See the Full Difference for further information
Alternate definitions: Master Definition (XML, JSON), XML Schema/Schematron (for ) + JSON Schema, ShEx (for Turtle)
Path | Definition | Type | Reference |
---|---|---|---|
Procedure.status | A code specifying the state of the procedure. | Required | ProcedureStatus |
Procedure.category | A code that classifies a procedure for searching, sorting and display purposes. | Example | Procedure Category Codes (SNOMED CT) |
Procedure.code | A code to identify a specific procedure . | Example | Procedure Codes (SNOMED CT) |
Procedure.reasonNotPerformed | A code that identifies the reason a procedure was not performed. | Example | Procedure Not Performed Reason (SNOMED-CT) |
Procedure.bodySite | Codes describing anatomical locations. May include laterality. | Example | SNOMED CT Body Structures |
Procedure.reasonCode | A code that identifies the reason a procedure is required. | Example | Procedure Reason Codes |
Procedure.performer.role | A code that identifies the role of a performer of the procedure. | Example | Procedure Performer Role Codes |
Procedure.outcome | An outcome of a procedure - whether it was resolved or otherwise. | Example | Procedure Outcome Codes (SNOMED CT) |
Procedure.complication | Codes describing complications that resulted from a procedure. | Example | Condition/Problem/Diagnosis Codes |
Procedure.followUp | Specific follow up required for a procedure e.g. removal of sutures. | Example | Procedure Follow up Codes (SNOMED CT) |
Procedure.focalDevice.action | A kind of change that happened to the device during the procedure. | Required | Procedure Device Action Codes |
Procedure.usedCode | Codes describing items used during a procedure | Unknown | No details provided yet |
Many of the elements of Procedure have inherent relationships and may actually all be conveyed by the Procedure.code or in the text element of the Procedure.code property. I.e. You may be able to infer category, bodySite and even indication. Whether these other properties will be populated may vary by implementation.
Care should be taken to avoid nonsensical combinations/statements; e.g. "name=amputation, bodySite=heart"
For devices, these are devices that are incidental to / or used to perform the procedure - scalpels, gauze, endoscopes, etc. Devices that are the focus of the procedure should appear in Procedure.device instead.
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 |
category | token | Classification of the procedure | Procedure.category |
code | token | A code to identify a procedure | Procedure.code |
date | date | Date/Period the procedure was performed | Procedure.performed[x] |
encounter | reference | The encounter associated with the procedure | Procedure.encounter (Encounter) |
identifier | token | A unique identifier for a procedure | Procedure.identifier |
location | reference | Where the procedure happened | Procedure.location (Location) |
patient | reference | Search by subject - a patient | Procedure.subject (Patient) |
performer | reference | The reference to the practitioner | Procedure.performer.actor (Practitioner, Organization, Patient, RelatedPerson) |
subject | reference | Search by subject | Procedure.subject (Group, Patient) |