DSTU2 STU 3 Candidate
This page is part of the FHIR Specification (v1.0.2: DSTU 2). The current version which supercedes this version is

This page is part of the FHIR Specification (v1.4.0: STU 3 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 . For a full list of available versions, see the Directory of published versions . Page versions: . Page versions: R5 R4B R4 R3 R2

4.8 4.10 Resource Procedure - Content Resource Procedure - Content

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.
Patient Care Patient Care Work Group Work Group Maturity Level : 1 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.

4.8.1 Scope and Usage 4.10.1 Scope and Usage 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.

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.

4.8.2 Boundaries and Relationships 4.10.2 Boundaries and Relationships The Procedure resource should not be used to capture an event if a more specific resource already exists - i.e.

The Procedure resource should not be used to capture an event if a more specific resource already exists - i.e. immunizations , drug administrations and , 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 . 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 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.) This resource is referenced by . 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.)

This resource is referenced by Claim , ClinicalImpression , , Encounter and , ExplanationOfBenefit and ImagingStudy

4.8.3 Resource Content 4.10.3 Resource Content

Structure

Name Flags Card. Type Description & Constraints Description & Constraints doco
. . Procedure I DomainResource An action that is being or was performed on a patient An action that is being or was performed on a patient
Reason not performed is only permitted if notPerformed indicator is true Reason not performed is only permitted if notPerformed indicator is true
. . . identifier Σ 0..* Identifier External Identifiers for this procedure External Identifiers for this procedure
. . . subject Σ 1..1 Reference ( Patient | | Group ) Who the procedure was performed on Who the procedure was performed on
. . . status ?! ?! Σ 1..1 code in-progress | aborted | completed | entered-in-error in-progress | aborted | completed | entered-in-error
ProcedureStatus ( ( Required )
. . . category Σ 0..1 CodeableConcept Classification of the procedure Classification of the procedure
Procedure Category Codes (SNOMED CT) ( Procedure Category Codes (SNOMED CT) ( Example )
. . . code Σ 1..1 CodeableConcept Identification of the procedure Identification of the procedure
Procedure Codes (SNOMED CT) ( Procedure Codes (SNOMED CT) ( Example )
. . . notPerformed ?! 0..1 boolean True if procedure was not performed as scheduled True if procedure was not performed as scheduled
. . . reasonNotPerformed I 0..* CodeableConcept Reason procedure was not performed Reason procedure was not performed
Procedure Not Performed Reason (SNOMED-CT) ( Procedure Not Performed Reason (SNOMED-CT) ( Example )
. . . bodySite Σ 0..* CodeableConcept Target body sites Target body sites
SNOMED CT Body Structures ( SNOMED CT Body Structures ( Example )
. . . reason[x] Σ 0..1 Reason procedure performed Reason procedure performed
Procedure Reason Codes ( Procedure Reason Codes ( Example )
. . . . reasonCodeableConcept CodeableConcept
. . . reasonReference . reasonReference Reference ( Condition )
. . . performer Σ 0..* BackboneElement The people who performed the procedure The people who performed the procedure
. . . . actor Σ 0..1 Reference ( Practitioner | | Organization | | Patient | | RelatedPerson ) The reference to the practitioner The reference to the practitioner
. . . . role Σ 0..1 CodeableConcept The role the actor was in The role the actor was in
Procedure Performer Role Codes ( Procedure Performer Role Codes ( Example )
. . . performed[x] Σ 0..1 Date/Period the procedure was performed Date/Period the procedure was performed
. . . . performedDateTime dateTime
. . . . performedPeriod Period
. . . encounter Σ 0..1 Reference ( Encounter ) The encounter associated with the procedure The encounter associated with the procedure
. . . location Σ 0..1 Reference ( Location ) Where the procedure happened Where the procedure happened
. . . outcome Σ 0..1 CodeableConcept The result of procedure The result of procedure
Procedure Outcome Codes (SNOMED CT) ( Procedure Outcome Codes (SNOMED CT) ( Example )
. . . report 0..* Reference ( DiagnosticReport ) Any report resulting from the procedure Any report resulting from the procedure
. . . complication 0..* CodeableConcept Complication following the procedure Complication following the procedure
Condition/Problem/Diagnosis Codes ( Condition/Problem/Diagnosis Codes ( Example )
. . . followUp 0..* CodeableConcept Instructions for follow up Instructions for follow up
Procedure Follow up Codes (SNOMED CT) ( Procedure Follow up Codes (SNOMED CT) ( Example )
. . . request 0..1 Reference ( CarePlan | | DiagnosticOrder | | ProcedureRequest | | ReferralRequest ) A request for this procedure A request for this procedure
. . . notes 0..* Annotation Additional information about the procedure Additional information about the procedure
. . . focalDevice 0..* BackboneElement Device changed in procedure Device changed in procedure
. . . . action 0..1 CodeableConcept Kind of change to device Kind of change to device
Procedure Device Action Codes ( Procedure Device Action Codes ( Required )
. . . . manipulated 1..1 Reference ( Device ) Device that was changed Device that was changed
. . . used 0..* Reference ( Device | | Medication | | Substance ) Items used during procedure Items used during procedure

Documentation for this format doco Documentation for this format

UML Diagram UML Diagram

Procedure ( ( DomainResource ) This records identifiers associated with this procedure that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation) This records identifiers associated with this procedure that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation) identifier : : Identifier [0..*] [0..*] The person, animal or group on which the procedure was performed The person, animal or group on which the procedure was performed subject : : Reference [1..1] « [1..1] « Patient | Group » » A code specifying the state of the procedure. Generally this will be in-progress or completed state (this element modifies the meaning of other elements) A code specifying the state of the procedure. Generally this will be in-progress or completed state (this element modifies the meaning of other elements) status : : code [1..1] « [1..1] « A code specifying the state of the procedure. (Strength=Required) A code specifying the state of the procedure. (Strength=Required) ProcedureStatus ! » ! » A code that classifies the procedure for searching, sorting and display purposes (e.g. "Surgical Procedure") A code that classifies the procedure for searching, sorting and display purposes (e.g. "Surgical Procedure") category : : CodeableConcept [0..1] « [0..1] « A code that classifies a procedure for searching, sorting and display purposes. (Strength=Example) A code that classifies a procedure for searching, sorting and display purposes. (Strength=Example) Procedure Category Codes (SNO... Procedure Category Codes (SNO... ?? » ?? » The specific procedure that is performed. Use text if the exact nature of the procedure cannot be coded (e.g. "Laparoscopic Appendectomy") The specific procedure that is performed. Use text if the exact nature of the procedure cannot be coded (e.g. "Laparoscopic Appendectomy") code : : CodeableConcept [1..1] « [1..1] « A code to identify a specific procedure . (Strength=Example) A code to identify a specific procedure . (Strength=Example) Procedure Codes (SNOMED CT) Procedure Codes (SNOMED CT) ?? » ?? » Set this to true if the record is saying that the procedure was NOT performed (this element modifies the meaning of other elements) Set this to true if the record is saying that the procedure was NOT performed (this element modifies the meaning of other elements) notPerformed : : boolean [0..1] [0..1] A code indicating why the procedure was not performed A code indicating why the procedure was not performed reasonNotPerformed : : CodeableConcept [0..*] « [0..*] « A code that identifies the reason a procedure was not performed. (Strength=Example) A code that identifies the reason a procedure was not performed. (Strength=Example) Procedure Not Procedure Not Performed Reaso... Performed Reaso... ?? » ?? » Detailed and structured anatomical location information. Multiple locations are allowed - e.g. multiple punch biopsies of a lesion Detailed and structured anatomical location information. Multiple locations are allowed - e.g. multiple punch biopsies of a lesion bodySite : : CodeableConcept [0..*] « [0..*] « Codes describing anatomical locations. May include laterality. (Strength=Example) Codes describing anatomical locations. May include laterality. (Strength=Example) SNOMED CT Body Structures SNOMED CT Body Structures ?? » ?? » The reason why the procedure was performed. This may be due to a Condition, may be coded entity of some type, or may simply be present as text The reason why the procedure was performed. This may be due to a Condition, may be coded entity of some type, or may simply be present as text reason[x] : : Type [0..1] « [0..1] « CodeableConcept | Reference ( Condition ); ); A code that identifies the reason a procedure is required. (Strength=Example) A code that identifies the reason a procedure is required. (Strength=Example) Procedure Reason ?? » Procedure Reason ?? » The date(time)/period over which the procedure was performed. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured The date(time)/period over which the procedure was performed. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured performed[x] : : Type [0..1] « [0..1] « dateTime | Period » » The encounter during which the procedure was performed The encounter during which the procedure was performed encounter : : Reference [0..1] « [0..1] « Encounter » » The location where the procedure actually happened. E.g. a newborn at home, a tracheostomy at a restaurant The location where the procedure actually happened. E.g. a newborn at home, a tracheostomy at a restaurant location : : Reference [0..1] « [0..1] « Location » » The outcome of the procedure - did it resolve reasons for the procedure being performed? The outcome of the procedure - did it resolve reasons for the procedure being performed? outcome : : CodeableConcept [0..1] « [0..1] « An outcome of a procedure - whether it was resolved or otherwise. (Strength=Example) An outcome of a procedure - whether it was resolved or otherwise. (Strength=Example) Procedure Outcome Codes (SNOM... Procedure Outcome Codes (SNOM... ?? » ?? » This could be a histology result, pathology report, surgical report, etc. This could be a histology result, pathology report, surgical report, etc. report : : Reference [0..*] « [0..*] « DiagnosticReport » » Any complications that occurred during the procedure, or in the immediate post-performance period. These are generally tracked separately from the notes, which will typically describe the procedure itself rather than any 'post procedure' issues Any complications that occurred during the procedure, or in the immediate post-performance period. These are generally tracked separately from the notes, which will typically describe the procedure itself rather than any 'post procedure' issues complication : : CodeableConcept [0..*] « [0..*] « Codes describing complications that resulted from a procedure. (Strength=Example) Codes describing complications that resulted from a procedure. (Strength=Example) Condition/Problem/Diagnosis ?? » Condition/Problem/Diagnosis ?? » If the procedure required specific follow up - e.g. removal of sutures. The followup may be represented as a simple note, or could potentially be more complex in which case the CarePlan resource can be used If the procedure required specific follow up - e.g. removal of sutures. The followup may be represented as a simple note, or could potentially be more complex in which case the CarePlan resource can be used followUp : : CodeableConcept [0..*] « [0..*] « Specific follow up required for a procedure e.g. removal of sutures. (Strength=Example) Specific follow up required for a procedure e.g. removal of sutures. (Strength=Example) Procedure Follow up Codes (SN... Procedure Follow up Codes (SN... ?? » ?? » A reference to a resource that contains details of the request for this procedure A reference to a resource that contains details of the request for this procedure request : : Reference [0..1] « [0..1] « CarePlan | DiagnosticOrder | ProcedureRequest | ReferralRequest » » Any other notes about the procedure. E.g. the operative notes Any other notes about the procedure. E.g. the operative notes notes : : Annotation [0..*] [0..*] Identifies medications, devices and any other substance used as part of the procedure Identifies medications, devices and any other substance used as part of the procedure used : : Reference [0..*] « [0..*] « Device | Medication | Substance » » Performer The practitioner who was involved in the procedure The practitioner who was involved in the procedure actor : : Reference [0..1] « [0..1] « Practitioner | Organization | Patient | RelatedPerson » » For example: surgeon, anaethetist, endoscopist For example: surgeon, anaethetist, endoscopist role : : CodeableConcept [0..1] « [0..1] « A code that identifies the role of a performer of the procedure. (Strength=Example) A code that identifies the role of a performer of the procedure. (Strength=Example) Procedure Performer Role ?? » Procedure Performer Role ?? » FocalDevice The kind of change that happened to the device during the procedure The kind of change that happened to the device during the procedure action : : CodeableConcept [0..1] « [0..1] « A kind of change that happened to the device during the procedure. (Strength=Required) A kind of change that happened to the device during the procedure. (Strength=Required) Procedure Device Action ! » Procedure Device Action ! » The device that was manipulated (changed) during the procedure The device that was manipulated (changed) during the procedure manipulated : : Reference [1..1] « [1..1] « Device » » Limited to 'real' people rather than equipment Limited to 'real' people rather than equipment performer [0..*] A device that is implanted, removed or otherwise manipulated (calibration, battery replacement, fitting a prosthesis, attaching a wound-vac, etc.) as a focal portion of the Procedure A device that is implanted, removed or otherwise manipulated (calibration, battery replacement, fitting a prosthesis, attaching a wound-vac, etc.) as a focal portion of the Procedure focalDevice [0..*]

XML Template XML Template

<Procedure xmlns="http://hl7.org/fhir"> doco
 <!-- 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>
 <reason[x]><!-- 0..1 CodeableConcept|Reference(Condition) Reason procedure performed --></reason[x]>
 <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|DiagnosticOrder|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>
 <used><!-- 0..* Reference(Device|Medication|Substance) Items used during procedure --></used>
</Procedure>

JSON Template JSON Template

{doco
  "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
  // reason[x]: Reason procedure performed. One of these 2:
  "reasonCodeableConcept" : { CodeableConcept },
  "reasonReference" : { Reference(Condition) },
  "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|DiagnosticOrder|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
  }],
  "used" : [{ Reference(Device|Medication|Substance) }] // Items used during procedure
}

Structure

Name Flags Card. Type Description & Constraints Description & Constraints doco
. . Procedure I DomainResource An action that is being or was performed on a patient An action that is being or was performed on a patient
Reason not performed is only permitted if notPerformed indicator is true Reason not performed is only permitted if notPerformed indicator is true
. . . identifier Σ 0..* Identifier External Identifiers for this procedure External Identifiers for this procedure
. . . subject Σ 1..1 Reference ( Patient | | Group ) Who the procedure was performed on Who the procedure was performed on
. . . status ?! ?! Σ 1..1 code in-progress | aborted | completed | entered-in-error in-progress | aborted | completed | entered-in-error
ProcedureStatus ( ( Required )
. . . category Σ 0..1 CodeableConcept Classification of the procedure Classification of the procedure
Procedure Category Codes (SNOMED CT) ( Procedure Category Codes (SNOMED CT) ( Example )
. . . code Σ 1..1 CodeableConcept Identification of the procedure Identification of the procedure
Procedure Codes (SNOMED CT) ( Procedure Codes (SNOMED CT) ( Example )
. . . notPerformed ?! 0..1 boolean True if procedure was not performed as scheduled True if procedure was not performed as scheduled
. . . reasonNotPerformed I 0..* CodeableConcept Reason procedure was not performed Reason procedure was not performed
Procedure Not Performed Reason (SNOMED-CT) ( Procedure Not Performed Reason (SNOMED-CT) ( Example )
. . . bodySite Σ 0..* CodeableConcept Target body sites Target body sites
SNOMED CT Body Structures ( SNOMED CT Body Structures ( Example )
. . . reason[x] Σ 0..1 Reason procedure performed Reason procedure performed
Procedure Reason Codes ( Procedure Reason Codes ( Example )
. . . . reasonCodeableConcept CodeableConcept
. . . reasonReference . reasonReference Reference ( Condition )
. . . performer Σ 0..* BackboneElement The people who performed the procedure The people who performed the procedure
. . . . actor Σ 0..1 Reference ( Practitioner | | Organization | | Patient | | RelatedPerson ) The reference to the practitioner The reference to the practitioner
. . . . role Σ 0..1 CodeableConcept The role the actor was in The role the actor was in
Procedure Performer Role Codes ( Procedure Performer Role Codes ( Example )
. . . performed[x] Σ 0..1 Date/Period the procedure was performed Date/Period the procedure was performed
. . . . performedDateTime dateTime
. . . . performedPeriod Period
. . . encounter Σ 0..1 Reference ( Encounter ) The encounter associated with the procedure The encounter associated with the procedure
. . . location Σ 0..1 Reference ( Location ) Where the procedure happened Where the procedure happened
. . . outcome Σ 0..1 CodeableConcept The result of procedure The result of procedure
Procedure Outcome Codes (SNOMED CT) ( Procedure Outcome Codes (SNOMED CT) ( Example )
. . . report 0..* Reference ( DiagnosticReport ) Any report resulting from the procedure Any report resulting from the procedure
. . . complication 0..* CodeableConcept Complication following the procedure Complication following the procedure
Condition/Problem/Diagnosis Codes ( Condition/Problem/Diagnosis Codes ( Example )
. . . followUp 0..* CodeableConcept Instructions for follow up Instructions for follow up
Procedure Follow up Codes (SNOMED CT) ( Procedure Follow up Codes (SNOMED CT) ( Example )
. . . request 0..1 Reference ( CarePlan | | DiagnosticOrder | | ProcedureRequest | | ReferralRequest ) A request for this procedure A request for this procedure
. . . notes 0..* Annotation Additional information about the procedure Additional information about the procedure
. . . focalDevice 0..* BackboneElement Device changed in procedure Device changed in procedure
. . . . action 0..1 CodeableConcept Kind of change to device Kind of change to device
Procedure Device Action Codes ( Procedure Device Action Codes ( Required )
. . . . manipulated 1..1 Reference ( Device ) Device that was changed Device that was changed
. . . used 0..* Reference ( Device | | Medication | | Substance ) Items used during procedure Items used during procedure

Documentation for this format doco Documentation for this format

UML Diagram UML Diagram

Procedure ( ( DomainResource ) This records identifiers associated with this procedure that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation) This records identifiers associated with this procedure that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation) identifier : : Identifier [0..*] [0..*] The person, animal or group on which the procedure was performed The person, animal or group on which the procedure was performed subject : : Reference [1..1] « [1..1] « Patient | Group » » A code specifying the state of the procedure. Generally this will be in-progress or completed state (this element modifies the meaning of other elements) A code specifying the state of the procedure. Generally this will be in-progress or completed state (this element modifies the meaning of other elements) status : : code [1..1] « [1..1] « A code specifying the state of the procedure. (Strength=Required) A code specifying the state of the procedure. (Strength=Required) ProcedureStatus ! » ! » A code that classifies the procedure for searching, sorting and display purposes (e.g. "Surgical Procedure") A code that classifies the procedure for searching, sorting and display purposes (e.g. "Surgical Procedure") category : : CodeableConcept [0..1] « [0..1] « A code that classifies a procedure for searching, sorting and display purposes. (Strength=Example) A code that classifies a procedure for searching, sorting and display purposes. (Strength=Example) Procedure Category Codes (SNO... Procedure Category Codes (SNO... ?? » ?? » The specific procedure that is performed. Use text if the exact nature of the procedure cannot be coded (e.g. "Laparoscopic Appendectomy") The specific procedure that is performed. Use text if the exact nature of the procedure cannot be coded (e.g. "Laparoscopic Appendectomy") code : : CodeableConcept [1..1] « [1..1] « A code to identify a specific procedure . (Strength=Example) A code to identify a specific procedure . (Strength=Example) Procedure Codes (SNOMED CT) Procedure Codes (SNOMED CT) ?? » ?? » Set this to true if the record is saying that the procedure was NOT performed (this element modifies the meaning of other elements) Set this to true if the record is saying that the procedure was NOT performed (this element modifies the meaning of other elements) notPerformed : : boolean [0..1] [0..1] A code indicating why the procedure was not performed A code indicating why the procedure was not performed reasonNotPerformed : : CodeableConcept [0..*] « [0..*] « A code that identifies the reason a procedure was not performed. (Strength=Example) A code that identifies the reason a procedure was not performed. (Strength=Example) Procedure Not Procedure Not Performed Reaso... Performed Reaso... ?? » ?? » Detailed and structured anatomical location information. Multiple locations are allowed - e.g. multiple punch biopsies of a lesion Detailed and structured anatomical location information. Multiple locations are allowed - e.g. multiple punch biopsies of a lesion bodySite : : CodeableConcept [0..*] « [0..*] « Codes describing anatomical locations. May include laterality. (Strength=Example) Codes describing anatomical locations. May include laterality. (Strength=Example) SNOMED CT Body Structures SNOMED CT Body Structures ?? » ?? » The reason why the procedure was performed. This may be due to a Condition, may be coded entity of some type, or may simply be present as text The reason why the procedure was performed. This may be due to a Condition, may be coded entity of some type, or may simply be present as text reason[x] : : Type [0..1] « [0..1] « CodeableConcept | Reference ( Condition ); ); A code that identifies the reason a procedure is required. (Strength=Example) A code that identifies the reason a procedure is required. (Strength=Example) Procedure Reason ?? » Procedure Reason ?? » The date(time)/period over which the procedure was performed. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured The date(time)/period over which the procedure was performed. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured performed[x] : : Type [0..1] « [0..1] « dateTime | Period » » The encounter during which the procedure was performed The encounter during which the procedure was performed encounter : : Reference [0..1] « [0..1] « Encounter » » The location where the procedure actually happened. E.g. a newborn at home, a tracheostomy at a restaurant The location where the procedure actually happened. E.g. a newborn at home, a tracheostomy at a restaurant location : : Reference [0..1] « [0..1] « Location » » The outcome of the procedure - did it resolve reasons for the procedure being performed? The outcome of the procedure - did it resolve reasons for the procedure being performed? outcome : : CodeableConcept [0..1] « [0..1] « An outcome of a procedure - whether it was resolved or otherwise. (Strength=Example) An outcome of a procedure - whether it was resolved or otherwise. (Strength=Example) Procedure Outcome Codes (SNOM... Procedure Outcome Codes (SNOM... ?? » ?? » This could be a histology result, pathology report, surgical report, etc. This could be a histology result, pathology report, surgical report, etc. report : : Reference [0..*] « [0..*] « DiagnosticReport » » Any complications that occurred during the procedure, or in the immediate post-performance period. These are generally tracked separately from the notes, which will typically describe the procedure itself rather than any 'post procedure' issues Any complications that occurred during the procedure, or in the immediate post-performance period. These are generally tracked separately from the notes, which will typically describe the procedure itself rather than any 'post procedure' issues complication : : CodeableConcept [0..*] « [0..*] « Codes describing complications that resulted from a procedure. (Strength=Example) Codes describing complications that resulted from a procedure. (Strength=Example) Condition/Problem/Diagnosis ?? » Condition/Problem/Diagnosis ?? » If the procedure required specific follow up - e.g. removal of sutures. The followup may be represented as a simple note, or could potentially be more complex in which case the CarePlan resource can be used If the procedure required specific follow up - e.g. removal of sutures. The followup may be represented as a simple note, or could potentially be more complex in which case the CarePlan resource can be used followUp : : CodeableConcept [0..*] « [0..*] « Specific follow up required for a procedure e.g. removal of sutures. (Strength=Example) Specific follow up required for a procedure e.g. removal of sutures. (Strength=Example) Procedure Follow up Codes (SN... Procedure Follow up Codes (SN... ?? » ?? » A reference to a resource that contains details of the request for this procedure A reference to a resource that contains details of the request for this procedure request : : Reference [0..1] « [0..1] « CarePlan | DiagnosticOrder | ProcedureRequest | ReferralRequest » » Any other notes about the procedure. E.g. the operative notes Any other notes about the procedure. E.g. the operative notes notes : : Annotation [0..*] [0..*] Identifies medications, devices and any other substance used as part of the procedure Identifies medications, devices and any other substance used as part of the procedure used : : Reference [0..*] « [0..*] « Device | Medication | Substance » » Performer The practitioner who was involved in the procedure The practitioner who was involved in the procedure actor : : Reference [0..1] « [0..1] « Practitioner | Organization | Patient | RelatedPerson » » For example: surgeon, anaethetist, endoscopist For example: surgeon, anaethetist, endoscopist role : : CodeableConcept [0..1] « [0..1] « A code that identifies the role of a performer of the procedure. (Strength=Example) A code that identifies the role of a performer of the procedure. (Strength=Example) Procedure Performer Role ?? » Procedure Performer Role ?? » FocalDevice The kind of change that happened to the device during the procedure The kind of change that happened to the device during the procedure action : : CodeableConcept [0..1] « [0..1] « A kind of change that happened to the device during the procedure. (Strength=Required) A kind of change that happened to the device during the procedure. (Strength=Required) Procedure Device Action ! » Procedure Device Action ! » The device that was manipulated (changed) during the procedure The device that was manipulated (changed) during the procedure manipulated : : Reference [1..1] « [1..1] « Device » » Limited to 'real' people rather than equipment Limited to 'real' people rather than equipment performer [0..*] A device that is implanted, removed or otherwise manipulated (calibration, battery replacement, fitting a prosthesis, attaching a wound-vac, etc.) as a focal portion of the Procedure A device that is implanted, removed or otherwise manipulated (calibration, battery replacement, fitting a prosthesis, attaching a wound-vac, etc.) as a focal portion of the Procedure focalDevice [0..*]

XML Template XML Template

<Procedure xmlns="http://hl7.org/fhir"> doco
 <!-- 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>
 <reason[x]><!-- 0..1 CodeableConcept|Reference(Condition) Reason procedure performed --></reason[x]>
 <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|DiagnosticOrder|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>
 <used><!-- 0..* Reference(Device|Medication|Substance) Items used during procedure --></used>
</Procedure>

JSON Template JSON Template

{doco
  "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
  // reason[x]: Reason procedure performed. One of these 2:
  "reasonCodeableConcept" : { CodeableConcept },
  "reasonReference" : { Reference(Condition) },
  "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|DiagnosticOrder|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
  }],
  "used" : [{ Reference(Device|Medication|Substance) }] // Items used during procedure
}

  Alternate definitions:

Alternate definitions: Schema / Schematron , Resource Profile ( , Resource Profile ( XML , , JSON ), ), Questionnaire

4.8.3.1 Terminology Bindings 4.10.3.1 Terminology Bindings

Path Definition Type Reference
Procedure.status Procedure.status A code specifying the state of the procedure. A code specifying the state of the procedure. Required ProcedureStatus
Procedure.category Procedure.category A code that classifies a procedure for searching, sorting and display purposes. A code that classifies a procedure for searching, sorting and display purposes. Example Procedure Category Codes (SNOMED CT) Procedure Category Codes (SNOMED CT)
Procedure.code Procedure.code A code to identify a specific procedure . A code to identify a specific procedure . Example Procedure Codes (SNOMED CT) Procedure Codes (SNOMED CT)
Procedure.reasonNotPerformed Procedure.reasonNotPerformed A code that identifies the reason a procedure was not performed. A code that identifies the reason a procedure was not performed. Example Procedure Not Performed Reason (SNOMED-CT) Procedure Not Performed Reason (SNOMED-CT)
Procedure.bodySite Procedure.bodySite Codes describing anatomical locations. May include laterality. Codes describing anatomical locations. May include laterality. Example SNOMED CT Body Structures SNOMED CT Body Structures
Procedure.reason[x] Procedure.reason[x] A code that identifies the reason a procedure is required. A code that identifies the reason a procedure is required. Example Procedure Reason Codes Procedure Reason Codes
Procedure.performer.role Procedure.performer.role A code that identifies the role of a performer of the procedure. A code that identifies the role of a performer of the procedure. Example Procedure Performer Role Codes Procedure Performer Role Codes
Procedure.outcome Procedure.outcome An outcome of a procedure - whether it was resolved or otherwise. An outcome of a procedure - whether it was resolved or otherwise. Example Procedure Outcome Codes (SNOMED CT) Procedure Outcome Codes (SNOMED CT)
Procedure.complication Procedure.complication Codes describing complications that resulted from a procedure. Codes describing complications that resulted from a procedure. Example Condition/Problem/Diagnosis Codes Condition/Problem/Diagnosis Codes
Procedure.followUp Procedure.followUp Specific follow up required for a procedure e.g. removal of sutures. Specific follow up required for a procedure e.g. removal of sutures. Example Procedure Follow up Codes (SNOMED CT) Procedure Follow up Codes (SNOMED CT)
Procedure.focalDevice.action Procedure.focalDevice.action A kind of change that happened to the device during the procedure. A kind of change that happened to the device during the procedure. Required Procedure Device Action Codes Procedure Device Action Codes

4.8.3.2 Constraints 4.10.3.2 Constraints

  • pro-1 : Reason not performed is only permitted if notPerformed indicator is true (xpath: not(exists(f:reasonNotPerformed)) or f:notPerformed/@value=true() : Reason not performed is only permitted if notPerformed indicator is true ( expression : reasonNotPerformed.empty() or notPerformed = true )

4.8.3.3 4.10.3.3 Use of Procedure properties Use of Procedure properties 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"

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"

4.8.3.4 4.10.3.4 Use of Procedure.used Use of Procedure.used 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.

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.

4.8.4 Search Parameters 4.10.4 Search Parameters Search parameters for this resource. The common parameters also apply. See

Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services. for more information about searching in REST, messaging, and services.

© HL7.org 2011+. FHIR DSTU2 (v1.0.2-7202) generated on Sat, Oct 24, 2015 07:43+1100. Links: Search
Name Type Description Paths
code token A code to identify a procedure A code to identify a procedure Procedure.code
date date Date/Period the procedure was performed Date/Period the procedure was performed Procedure.performed[x]
encounter reference The encounter associated with the procedure The encounter associated with the procedure Procedure.encounter
( Encounter )
identifier token A unique identifier for a procedure A unique identifier for a procedure Procedure.identifier
location reference Where the procedure happened Where the procedure happened Procedure.location
( Location )
patient reference Search by subject - a patient Search by subject - a patient Procedure.subject
( Patient )
performer reference The reference to the practitioner The reference to the practitioner Procedure.performer.actor
( Patient , , Organization , , Practitioner , , RelatedPerson )
subject reference Search by subject Search by subject Procedure.subject
( Patient , , Group )