Sparked Logical Models
0.0.1 - CI Build
Australia (AUS)
Sparked Logical Models, published by CSIRO. This guide is not an authorized publication; it is the continuous build for version 0.0.1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/aehrc/logical-model-web/ and changes regularly. See the Directory of published versions
| Draft as of 2023-09-11 |
Definitions for the Procedure logical model.
Guidance on how to interpret the contents of this table can be foundhere
| 0. Procedure | |
| Definition | A clinical activity carried out for screening, investigative, diagnostic, curative, therapeutic, evaluative or palliative purposes. |
| Short | Procedure |
| Comments | Purpose To record information about the activities required to carry out a procedure, including the planning, scheduling, performance, suspension, cancellation, documentation and completion. Misuse Not to be used to record details about the anaesthetic - use a separate ACTION archetype for this purpose. Not to be used to record details about imaging investigations - use ACTION.imaging_exam for this purpose. Not to be used to record details about laboratory investigations - use ACTION.laboratory_test for this purpose. Not to be used to record details about education delivered - use ACTION.health_education for this purpose. Not to be used to record details about administrative activities - use specific ADMIN archetypes for this purpose. Not to be used to record details about related activities such as the use of frozen sections taken during an operation, medication administered as part of the procedure or when imaging guidance is used during the procedure - use separate and specific ACTION archetypes within the same template for this purpose . Not to be used to record a whole operation or procedure report - use a template in which this archetype is only one component of the full report. Considerations Use to record information about the activities required to carry out a procedure, including the planning, scheduling, performance, suspension, cancellation, documentation and completion. This is done by the recording of data against specific activities, as defined by the 'Pathway' careflow steps in this archetype. The scope of this archetype encompasses activities for a broad range of clinical procedures performed for evaluative, investigative, screening, diagnostic, curative, therapeutic or palliative purposes. Examples range from the relatively simple activities, such as insertion of an intravenous cannula, through to complex surgical operations. Additional structured and detailed information about the procedure can be captured using purpose-specific archetypes inserted into the 'Procedure detail' slot, where required. Timings related to a procedure can be managed in one of two ways:
Within the context of an Operation Report, this archetype will be used to record only what was done during the procedure. Separate archetypes will be used to record the other required components of the Operation Report, including the taking of tissue specimen samples, use of imaging guidance, operation findings, post-operative instructions and plans for follow up. Within the context of a Problem list or summary, this archetype may be used to represent procedures that have been performed. The EVALUATION.problem_diagnosis will be used to represent the patient's problems and diagnoses. In practice, many procedures (for example, in ambulatory care) will occur once and not be ordered in advance. The details about the procedure will be added against the pathway step, 'Procedure completed'. In some cases a recurring procedure will be ordered, and in this situation data against the 'Procedure performed' step will be recorded on each occasion, leaving the instruction in the active state. When the last occurrence is recorded the 'Procedure completed' action is recorded showing that this order is now in the completed state. In other situations, such as secondary care, there may be a formal order for a procedure using a corresponding INSTRUCTION archetype. This ACTION archetype can then be used to record the workflow of when and how the order has been carried out. Recording information using this ACTION archetype indicates that some sort of activity has actually occurred; this will usually be the procedure itself but may be a failed attempt or another activity such as postponing the procedure. If there is a formal order for the procedure, the state of this order is represented by the Pathway step against which the data is recorded. For example, using this archetype the progressing state of a Gastroscopy order may be recorded through separate entries in the EHR progress notes at each 'Pathway' step:
Please note that in the openEHR Reference Model there is a 'Time' attribute, which is intended to record the date and time at which each pathway step of the Action was performed. This is the attribute to use to record the start of the procedure (using the 'Procedure performed' pathway step) or the time that the procedure was aborted (using the 'Procedure aborted' pathway step). |
| Control | 0..* |
| Is Modifier | false |
| Must Support | true |
| Logical Model | Instances of this logical model are not marked to be the target of a Reference |
| Alternate Names | procedure |
| 2. Procedure.Description | |
| Definition | @ internal @ |
| Short | Description |
| Control | 0..1 |
| Type | BackboneElement |
| Must Support | true |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 4. Procedure.Description.id | |
| Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
| Short | Unique id for inter-element referencing |
| Control | 0..1 |
| Type | string |
| Is Modifier | false |
| XML Format | In the XML format, this property is represented as an attribute. |
| Summary | false |
| 6. Procedure.Description.extension | |
| Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
| Short | Additional content defined by implementations |
| Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | false |
| Summary | false |
| Alternate Names | extensions, user content |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
| Slicing | This element introduces a set of slices on Procedure.Description.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 8. Procedure.Description.modifierExtension | |
| Definition | May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself). |
| Short | Extensions that cannot be ignored even if unrecognized |
| Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | true because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them |
| Summary | true |
| Requirements | Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. |
| Alternate Names | extensions, user content, modifiers |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
| 10. Procedure.Description.Procedurename | |
| Definition | Identification of the procedure by name. |
| Short | Procedure name |
| Comments | Considerations Coding of the specific procedure with a terminology is preferred, where possible. |
| Control | 1..1 |
| Type | CodeableConcept |
| Must Support | true |
| 12. Procedure.Description.ProcedureDescription | |
| Definition | Narrative description about the procedure, as appropriate for the pathway step. |
| Short | Procedure Description |
| Comments | Considerations For example: description about the performance and findings from the the procedure, the aborted attempt or the cancellation of the procedure. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 14. Procedure.Description.Indication | |
| Definition | The clinical or process-related reason for the procedure. |
| Short | Indication |
| Comments | Considerations Coding of the indication with a terminology is preferred, where possible. This data element allows multiple occurrences. For example: 'Failed bowel preparation' or 'Bowel cancer screening'. |
| Control | 0..* |
| Type | CodeableConcept |
| Must Support | true |
| 16. Procedure.Description.Method | |
| Definition | Identification of specific method or technique for the procedure. |
| Short | Method |
| Comments | Considerations Use this data element to record simple terms or a narrative description. If the requirements for recording the method require more complex modelling then this can be represented by additional archetypes within the 'Procedure detail' SLOT in this archetype. If the method is included in the 'Procedure name' via precoordinated codes, this data element becomes redundant. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 18. Procedure.Description.Urgency | |
| Definition | Urgency of the procedure. |
| Short | Urgency |
| Comments | Considerations Coding with a terminology is preferred, where possible. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 20. Procedure.Description.Bodysite | |
| Definition | Identification of the body site for the procedure. |
| Short | Body site |
| Comments | Considerations Occurrences for this data element are unbounded to allow for clinical scenarios such as removing multiple skin lesions in different places, but where all of the other attributes are identical. Use this data element to record simple terms or precoordinated anatomical locations. If the requirements for recording the anatomical location are determined at run-time by the application or require more complex modelling such as relative locations then use the CLUSTER.anatomical_location or CLUSTER.relative_location within the 'Procedure detail' SLOT in this archetype. If the anatomical location is included in the 'Procedure name' via precoordinated codes, this data element becomes redundant. |
| Control | 0..* |
| Type | CodeableConcept |
| Must Support | true |
| 22. Procedure.Description.Proceduredetail | |
| Definition | Structured information about the procedure. |
| Short | Procedure detail |
| Comments | Considerations Use to capture detailed, structured information about anatomical location, method & technique, equipment used, devices implanted, results, findings etc. |
| Control | 0..* |
| Type | Reference |
| Must Support | true |
| 24. Procedure.Description.Outcome | |
| Definition | Outcome of procedure performed. |
| Short | Outcome |
| Comments | Considerations Coding with a terminology is preferred, where possible. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 26. Procedure.Description.Proceduraldifficulty | |
| Definition | Difficulties or issues encountered during performance of the procedure. |
| Short | Procedural difficulty |
| Comments | Considerations Examples: The patient was agitated, insufficient emptying of the stomach before gastroscopy, a tumour in the bile ducts made it impossible to pass the scope through. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 28. Procedure.Description.Complication | |
| Definition | Details about any complication arising from the procedure. |
| Short | Complication |
| Comments | Considerations Use this data element to record simple terms or precoordinated complications. If the requirements for recording complication are more complex then use of a specific CLUSTER archetype within the 'Procedure detail' SLOT in this archetype is advised and this data element becomes redundant. Examples: Hematuria after a kidney biopsy, tissue irritation after insertion of intravenous catheter. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 30. Procedure.Description.Scheduleddatetime | |
| Definition | The date and/or time on which the procedure is intended to be performed. |
| Short | Scheduled date time |
| Comments | Considerations Only for use in association with the 'Procedure scheduled' pathway step. |
| Control | 0..1 |
| Type | dateTime |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 32. Procedure.Description.Finalenddatetime | |
| Definition | The date and/or time when the entire procedure, or the last component of a multicomponent procedure, was finished. |
| Short | Final end date time |
| Comments | Considerations Only for use in association with the 'Procedure performed' pathway step, and in situations where the procedure is repeated on multiple occasions before being completed or there are multiple components to the whole procedure. This may be the same as the RM time attribute for the 'Procedure completed' pathway step. |
| Control | 0..1 |
| Type | dateTime |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 34. Procedure.Description.Multimedia | |
| Definition | Mulitimedia representation of a performed procedure. |
| Short | Multimedia |
| Control | 0..* |
| Type | Reference |
| Must Support | true |
| 36. Procedure.Description.Proceduretype | |
| Definition | The type of procedure. |
| Short | Procedure type |
| Comments | Considerations This pragmatic data element may be used to support organisation within the user interface. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 38. Procedure.Description.Reason | |
| Definition | Reason that the activity or care pathway step for the identified procedure was carried out. |
| Short | Reason |
| Comments | Considerations For example: the reason for the cancellation or suspension of the procedure. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 40. Procedure.Description.Comment | |
| Definition | Additional narrative about the activity or care pathway step not captured in other fields. |
| Short | Comment |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 42. Procedure.Protocol | |
| Definition | @ internal @ |
| Short | Protocol |
| Control | 0..1 |
| Type | BackboneElement |
| Must Support | true |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 44. Procedure.Protocol.id | |
| Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
| Short | Unique id for inter-element referencing |
| Control | 0..1 |
| Type | string |
| Is Modifier | false |
| XML Format | In the XML format, this property is represented as an attribute. |
| Summary | false |
| 46. Procedure.Protocol.extension | |
| Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
| Short | Additional content defined by implementations |
| Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | false |
| Summary | false |
| Alternate Names | extensions, user content |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
| Slicing | This element introduces a set of slices on Procedure.Protocol.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 48. Procedure.Protocol.modifierExtension | |
| Definition | May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself). |
| Short | Extensions that cannot be ignored even if unrecognized |
| Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | true because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them |
| Summary | true |
| Requirements | Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. |
| Alternate Names | extensions, user content, modifiers |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
| 50. Procedure.Protocol.Requestororderidentifier | |
| Definition | The local ID assigned to the order by the healthcare provider or organisation requesting the service. |
| Short | Requestor order identifier |
| Comments | Considerations This is equivalent to Placer Order Number in HL7 v2 specifications. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 52. Procedure.Protocol.Requestor | |
| Definition | Details about the healthcare provider or organisation requesting the service. |
| Short | Requestor |
| Control | 0..1 |
| Type | Reference |
| Must Support | true |
| 54. Procedure.Protocol.Receiverorderidentifier | |
| Definition | The ID assigned to the order by the healthcare provider or organisation receiving the request for service. This is also referred to as Filler Order Identifier. |
| Short | Receiver order identifier |
| Comments | Considerations This is equivalent to Filler Order Number in HL7 v2 specifications. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 56. Procedure.Protocol.Receiver | |
| Definition | Details about the healthcare provider or organisation receiving the request for service. |
| Short | Receiver |
| Control | 0..* |
| Type | Reference |
| Must Support | true |
| 58. Procedure.Protocol.Extension | |
| Definition | Additional information required to capture local content or to align with other reference models/formalisms. |
| Short | Extension |
| Comments | Considerations For example: local information requirements or additional metadata to align with FHIR or CIMI equivalents. |
| Control | 0..* |
| Type | Reference |
| Must Support | true |
Guidance on how to interpret the contents of this table can be foundhere
| 0. Procedure | |
| Definition | A clinical activity carried out for screening, investigative, diagnostic, curative, therapeutic, evaluative or palliative purposes. |
| Short | Procedure |
| Comments | Purpose To record information about the activities required to carry out a procedure, including the planning, scheduling, performance, suspension, cancellation, documentation and completion. Misuse Not to be used to record details about the anaesthetic - use a separate ACTION archetype for this purpose. Not to be used to record details about imaging investigations - use ACTION.imaging_exam for this purpose. Not to be used to record details about laboratory investigations - use ACTION.laboratory_test for this purpose. Not to be used to record details about education delivered - use ACTION.health_education for this purpose. Not to be used to record details about administrative activities - use specific ADMIN archetypes for this purpose. Not to be used to record details about related activities such as the use of frozen sections taken during an operation, medication administered as part of the procedure or when imaging guidance is used during the procedure - use separate and specific ACTION archetypes within the same template for this purpose . Not to be used to record a whole operation or procedure report - use a template in which this archetype is only one component of the full report. Considerations Use to record information about the activities required to carry out a procedure, including the planning, scheduling, performance, suspension, cancellation, documentation and completion. This is done by the recording of data against specific activities, as defined by the 'Pathway' careflow steps in this archetype. The scope of this archetype encompasses activities for a broad range of clinical procedures performed for evaluative, investigative, screening, diagnostic, curative, therapeutic or palliative purposes. Examples range from the relatively simple activities, such as insertion of an intravenous cannula, through to complex surgical operations. Additional structured and detailed information about the procedure can be captured using purpose-specific archetypes inserted into the 'Procedure detail' slot, where required. Timings related to a procedure can be managed in one of two ways:
Within the context of an Operation Report, this archetype will be used to record only what was done during the procedure. Separate archetypes will be used to record the other required components of the Operation Report, including the taking of tissue specimen samples, use of imaging guidance, operation findings, post-operative instructions and plans for follow up. Within the context of a Problem list or summary, this archetype may be used to represent procedures that have been performed. The EVALUATION.problem_diagnosis will be used to represent the patient's problems and diagnoses. In practice, many procedures (for example, in ambulatory care) will occur once and not be ordered in advance. The details about the procedure will be added against the pathway step, 'Procedure completed'. In some cases a recurring procedure will be ordered, and in this situation data against the 'Procedure performed' step will be recorded on each occasion, leaving the instruction in the active state. When the last occurrence is recorded the 'Procedure completed' action is recorded showing that this order is now in the completed state. In other situations, such as secondary care, there may be a formal order for a procedure using a corresponding INSTRUCTION archetype. This ACTION archetype can then be used to record the workflow of when and how the order has been carried out. Recording information using this ACTION archetype indicates that some sort of activity has actually occurred; this will usually be the procedure itself but may be a failed attempt or another activity such as postponing the procedure. If there is a formal order for the procedure, the state of this order is represented by the Pathway step against which the data is recorded. For example, using this archetype the progressing state of a Gastroscopy order may be recorded through separate entries in the EHR progress notes at each 'Pathway' step:
Please note that in the openEHR Reference Model there is a 'Time' attribute, which is intended to record the date and time at which each pathway step of the Action was performed. This is the attribute to use to record the start of the procedure (using the 'Procedure performed' pathway step) or the time that the procedure was aborted (using the 'Procedure aborted' pathway step). |
| Control | 0..* |
| Must Support | true |
| Logical Model | Instances of this logical model are not marked to be the target of a Reference |
| Alternate Names | procedure |
| 2. Procedure.Description | |
| Definition | @ internal @ |
| Short | Description |
| Control | 0..1 |
| Type | BackboneElement |
| Must Support | true |
| 4. Procedure.Description.Procedurename | |
| Definition | Identification of the procedure by name. |
| Short | Procedure name |
| Comments | Considerations Coding of the specific procedure with a terminology is preferred, where possible. |
| Control | 1..1 |
| Type | CodeableConcept |
| Must Support | true |
| 6. Procedure.Description.ProcedureDescription | |
| Definition | Narrative description about the procedure, as appropriate for the pathway step. |
| Short | Procedure Description |
| Comments | Considerations For example: description about the performance and findings from the the procedure, the aborted attempt or the cancellation of the procedure. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 8. Procedure.Description.Indication | |
| Definition | The clinical or process-related reason for the procedure. |
| Short | Indication |
| Comments | Considerations Coding of the indication with a terminology is preferred, where possible. This data element allows multiple occurrences. For example: 'Failed bowel preparation' or 'Bowel cancer screening'. |
| Control | 0..* |
| Type | CodeableConcept |
| Must Support | true |
| 10. Procedure.Description.Method | |
| Definition | Identification of specific method or technique for the procedure. |
| Short | Method |
| Comments | Considerations Use this data element to record simple terms or a narrative description. If the requirements for recording the method require more complex modelling then this can be represented by additional archetypes within the 'Procedure detail' SLOT in this archetype. If the method is included in the 'Procedure name' via precoordinated codes, this data element becomes redundant. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 12. Procedure.Description.Urgency | |
| Definition | Urgency of the procedure. |
| Short | Urgency |
| Comments | Considerations Coding with a terminology is preferred, where possible. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 14. Procedure.Description.Bodysite | |
| Definition | Identification of the body site for the procedure. |
| Short | Body site |
| Comments | Considerations Occurrences for this data element are unbounded to allow for clinical scenarios such as removing multiple skin lesions in different places, but where all of the other attributes are identical. Use this data element to record simple terms or precoordinated anatomical locations. If the requirements for recording the anatomical location are determined at run-time by the application or require more complex modelling such as relative locations then use the CLUSTER.anatomical_location or CLUSTER.relative_location within the 'Procedure detail' SLOT in this archetype. If the anatomical location is included in the 'Procedure name' via precoordinated codes, this data element becomes redundant. |
| Control | 0..* |
| Type | CodeableConcept |
| Must Support | true |
| 16. Procedure.Description.Proceduredetail | |
| Definition | Structured information about the procedure. |
| Short | Procedure detail |
| Comments | Considerations Use to capture detailed, structured information about anatomical location, method & technique, equipment used, devices implanted, results, findings etc. |
| Control | 0..* |
| Type | Reference |
| Must Support | true |
| 18. Procedure.Description.Outcome | |
| Definition | Outcome of procedure performed. |
| Short | Outcome |
| Comments | Considerations Coding with a terminology is preferred, where possible. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 20. Procedure.Description.Proceduraldifficulty | |
| Definition | Difficulties or issues encountered during performance of the procedure. |
| Short | Procedural difficulty |
| Comments | Considerations Examples: The patient was agitated, insufficient emptying of the stomach before gastroscopy, a tumour in the bile ducts made it impossible to pass the scope through. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 22. Procedure.Description.Complication | |
| Definition | Details about any complication arising from the procedure. |
| Short | Complication |
| Comments | Considerations Use this data element to record simple terms or precoordinated complications. If the requirements for recording complication are more complex then use of a specific CLUSTER archetype within the 'Procedure detail' SLOT in this archetype is advised and this data element becomes redundant. Examples: Hematuria after a kidney biopsy, tissue irritation after insertion of intravenous catheter. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 24. Procedure.Description.Scheduleddatetime | |
| Definition | The date and/or time on which the procedure is intended to be performed. |
| Short | Scheduled date time |
| Comments | Considerations Only for use in association with the 'Procedure scheduled' pathway step. |
| Control | 0..1 |
| Type | dateTime |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 26. Procedure.Description.Finalenddatetime | |
| Definition | The date and/or time when the entire procedure, or the last component of a multicomponent procedure, was finished. |
| Short | Final end date time |
| Comments | Considerations Only for use in association with the 'Procedure performed' pathway step, and in situations where the procedure is repeated on multiple occasions before being completed or there are multiple components to the whole procedure. This may be the same as the RM time attribute for the 'Procedure completed' pathway step. |
| Control | 0..1 |
| Type | dateTime |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 28. Procedure.Description.Multimedia | |
| Definition | Mulitimedia representation of a performed procedure. |
| Short | Multimedia |
| Control | 0..* |
| Type | Reference |
| Must Support | true |
| 30. Procedure.Description.Proceduretype | |
| Definition | The type of procedure. |
| Short | Procedure type |
| Comments | Considerations This pragmatic data element may be used to support organisation within the user interface. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 32. Procedure.Description.Reason | |
| Definition | Reason that the activity or care pathway step for the identified procedure was carried out. |
| Short | Reason |
| Comments | Considerations For example: the reason for the cancellation or suspension of the procedure. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 34. Procedure.Description.Comment | |
| Definition | Additional narrative about the activity or care pathway step not captured in other fields. |
| Short | Comment |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 36. Procedure.Protocol | |
| Definition | @ internal @ |
| Short | Protocol |
| Control | 0..1 |
| Type | BackboneElement |
| Must Support | true |
| 38. Procedure.Protocol.Requestororderidentifier | |
| Definition | The local ID assigned to the order by the healthcare provider or organisation requesting the service. |
| Short | Requestor order identifier |
| Comments | Considerations This is equivalent to Placer Order Number in HL7 v2 specifications. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 40. Procedure.Protocol.Requestor | |
| Definition | Details about the healthcare provider or organisation requesting the service. |
| Short | Requestor |
| Control | 0..1 |
| Type | Reference |
| Must Support | true |
| 42. Procedure.Protocol.Receiverorderidentifier | |
| Definition | The ID assigned to the order by the healthcare provider or organisation receiving the request for service. This is also referred to as Filler Order Identifier. |
| Short | Receiver order identifier |
| Comments | Considerations This is equivalent to Filler Order Number in HL7 v2 specifications. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 44. Procedure.Protocol.Receiver | |
| Definition | Details about the healthcare provider or organisation receiving the request for service. |
| Short | Receiver |
| Control | 0..* |
| Type | Reference |
| Must Support | true |
| 46. Procedure.Protocol.Extension | |
| Definition | Additional information required to capture local content or to align with other reference models/formalisms. |
| Short | Extension |
| Comments | Considerations For example: local information requirements or additional metadata to align with FHIR or CIMI equivalents. |
| Control | 0..* |
| Type | Reference |
| Must Support | true |
Guidance on how to interpret the contents of this table can be foundhere
| 0. Procedure | |
| Definition | A clinical activity carried out for screening, investigative, diagnostic, curative, therapeutic, evaluative or palliative purposes. |
| Short | Procedure |
| Comments | Purpose To record information about the activities required to carry out a procedure, including the planning, scheduling, performance, suspension, cancellation, documentation and completion. Misuse Not to be used to record details about the anaesthetic - use a separate ACTION archetype for this purpose. Not to be used to record details about imaging investigations - use ACTION.imaging_exam for this purpose. Not to be used to record details about laboratory investigations - use ACTION.laboratory_test for this purpose. Not to be used to record details about education delivered - use ACTION.health_education for this purpose. Not to be used to record details about administrative activities - use specific ADMIN archetypes for this purpose. Not to be used to record details about related activities such as the use of frozen sections taken during an operation, medication administered as part of the procedure or when imaging guidance is used during the procedure - use separate and specific ACTION archetypes within the same template for this purpose . Not to be used to record a whole operation or procedure report - use a template in which this archetype is only one component of the full report. Considerations Use to record information about the activities required to carry out a procedure, including the planning, scheduling, performance, suspension, cancellation, documentation and completion. This is done by the recording of data against specific activities, as defined by the 'Pathway' careflow steps in this archetype. The scope of this archetype encompasses activities for a broad range of clinical procedures performed for evaluative, investigative, screening, diagnostic, curative, therapeutic or palliative purposes. Examples range from the relatively simple activities, such as insertion of an intravenous cannula, through to complex surgical operations. Additional structured and detailed information about the procedure can be captured using purpose-specific archetypes inserted into the 'Procedure detail' slot, where required. Timings related to a procedure can be managed in one of two ways:
Within the context of an Operation Report, this archetype will be used to record only what was done during the procedure. Separate archetypes will be used to record the other required components of the Operation Report, including the taking of tissue specimen samples, use of imaging guidance, operation findings, post-operative instructions and plans for follow up. Within the context of a Problem list or summary, this archetype may be used to represent procedures that have been performed. The EVALUATION.problem_diagnosis will be used to represent the patient's problems and diagnoses. In practice, many procedures (for example, in ambulatory care) will occur once and not be ordered in advance. The details about the procedure will be added against the pathway step, 'Procedure completed'. In some cases a recurring procedure will be ordered, and in this situation data against the 'Procedure performed' step will be recorded on each occasion, leaving the instruction in the active state. When the last occurrence is recorded the 'Procedure completed' action is recorded showing that this order is now in the completed state. In other situations, such as secondary care, there may be a formal order for a procedure using a corresponding INSTRUCTION archetype. This ACTION archetype can then be used to record the workflow of when and how the order has been carried out. Recording information using this ACTION archetype indicates that some sort of activity has actually occurred; this will usually be the procedure itself but may be a failed attempt or another activity such as postponing the procedure. If there is a formal order for the procedure, the state of this order is represented by the Pathway step against which the data is recorded. For example, using this archetype the progressing state of a Gastroscopy order may be recorded through separate entries in the EHR progress notes at each 'Pathway' step:
Please note that in the openEHR Reference Model there is a 'Time' attribute, which is intended to record the date and time at which each pathway step of the Action was performed. This is the attribute to use to record the start of the procedure (using the 'Procedure performed' pathway step) or the time that the procedure was aborted (using the 'Procedure aborted' pathway step). |
| Control | 0..* |
| Is Modifier | false |
| Must Support | true |
| Logical Model | Instances of this logical model are not marked to be the target of a Reference |
| Alternate Names | procedure |
| 2. Procedure.Description | |
| Definition | @ internal @ |
| Short | Description |
| Control | 0..1 |
| Type | BackboneElement |
| Must Support | true |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 4. Procedure.Description.id | |
| Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
| Short | Unique id for inter-element referencing |
| Control | 0..1 |
| Type | string |
| Is Modifier | false |
| XML Format | In the XML format, this property is represented as an attribute. |
| Summary | false |
| 6. Procedure.Description.extension | |
| Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
| Short | Additional content defined by implementations |
| Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | false |
| Summary | false |
| Alternate Names | extensions, user content |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists()) |
| Slicing | This element introduces a set of slices on Procedure.Description.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 8. Procedure.Description.modifierExtension | |
| Definition | May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself). |
| Short | Extensions that cannot be ignored even if unrecognized |
| Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | true because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them |
| Summary | true |
| Requirements | Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. |
| Alternate Names | extensions, user content, modifiers |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists()) |
| 10. Procedure.Description.Procedurename | |
| Definition | Identification of the procedure by name. |
| Short | Procedure name |
| Comments | Considerations Coding of the specific procedure with a terminology is preferred, where possible. |
| Control | 1..1 |
| Type | CodeableConcept |
| Must Support | true |
| 12. Procedure.Description.ProcedureDescription | |
| Definition | Narrative description about the procedure, as appropriate for the pathway step. |
| Short | Procedure Description |
| Comments | Considerations For example: description about the performance and findings from the the procedure, the aborted attempt or the cancellation of the procedure. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 14. Procedure.Description.Indication | |
| Definition | The clinical or process-related reason for the procedure. |
| Short | Indication |
| Comments | Considerations Coding of the indication with a terminology is preferred, where possible. This data element allows multiple occurrences. For example: 'Failed bowel preparation' or 'Bowel cancer screening'. |
| Control | 0..* |
| Type | CodeableConcept |
| Must Support | true |
| 16. Procedure.Description.Method | |
| Definition | Identification of specific method or technique for the procedure. |
| Short | Method |
| Comments | Considerations Use this data element to record simple terms or a narrative description. If the requirements for recording the method require more complex modelling then this can be represented by additional archetypes within the 'Procedure detail' SLOT in this archetype. If the method is included in the 'Procedure name' via precoordinated codes, this data element becomes redundant. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 18. Procedure.Description.Urgency | |
| Definition | Urgency of the procedure. |
| Short | Urgency |
| Comments | Considerations Coding with a terminology is preferred, where possible. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 20. Procedure.Description.Bodysite | |
| Definition | Identification of the body site for the procedure. |
| Short | Body site |
| Comments | Considerations Occurrences for this data element are unbounded to allow for clinical scenarios such as removing multiple skin lesions in different places, but where all of the other attributes are identical. Use this data element to record simple terms or precoordinated anatomical locations. If the requirements for recording the anatomical location are determined at run-time by the application or require more complex modelling such as relative locations then use the CLUSTER.anatomical_location or CLUSTER.relative_location within the 'Procedure detail' SLOT in this archetype. If the anatomical location is included in the 'Procedure name' via precoordinated codes, this data element becomes redundant. |
| Control | 0..* |
| Type | CodeableConcept |
| Must Support | true |
| 22. Procedure.Description.Proceduredetail | |
| Definition | Structured information about the procedure. |
| Short | Procedure detail |
| Comments | Considerations Use to capture detailed, structured information about anatomical location, method & technique, equipment used, devices implanted, results, findings etc. |
| Control | 0..* |
| Type | Reference |
| Must Support | true |
| 24. Procedure.Description.Outcome | |
| Definition | Outcome of procedure performed. |
| Short | Outcome |
| Comments | Considerations Coding with a terminology is preferred, where possible. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 26. Procedure.Description.Proceduraldifficulty | |
| Definition | Difficulties or issues encountered during performance of the procedure. |
| Short | Procedural difficulty |
| Comments | Considerations Examples: The patient was agitated, insufficient emptying of the stomach before gastroscopy, a tumour in the bile ducts made it impossible to pass the scope through. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 28. Procedure.Description.Complication | |
| Definition | Details about any complication arising from the procedure. |
| Short | Complication |
| Comments | Considerations Use this data element to record simple terms or precoordinated complications. If the requirements for recording complication are more complex then use of a specific CLUSTER archetype within the 'Procedure detail' SLOT in this archetype is advised and this data element becomes redundant. Examples: Hematuria after a kidney biopsy, tissue irritation after insertion of intravenous catheter. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 30. Procedure.Description.Scheduleddatetime | |
| Definition | The date and/or time on which the procedure is intended to be performed. |
| Short | Scheduled date time |
| Comments | Considerations Only for use in association with the 'Procedure scheduled' pathway step. |
| Control | 0..1 |
| Type | dateTime |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 32. Procedure.Description.Finalenddatetime | |
| Definition | The date and/or time when the entire procedure, or the last component of a multicomponent procedure, was finished. |
| Short | Final end date time |
| Comments | Considerations Only for use in association with the 'Procedure performed' pathway step, and in situations where the procedure is repeated on multiple occasions before being completed or there are multiple components to the whole procedure. This may be the same as the RM time attribute for the 'Procedure completed' pathway step. |
| Control | 0..1 |
| Type | dateTime |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 34. Procedure.Description.Multimedia | |
| Definition | Mulitimedia representation of a performed procedure. |
| Short | Multimedia |
| Control | 0..* |
| Type | Reference |
| Must Support | true |
| 36. Procedure.Description.Proceduretype | |
| Definition | The type of procedure. |
| Short | Procedure type |
| Comments | Considerations This pragmatic data element may be used to support organisation within the user interface. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 38. Procedure.Description.Reason | |
| Definition | Reason that the activity or care pathway step for the identified procedure was carried out. |
| Short | Reason |
| Comments | Considerations For example: the reason for the cancellation or suspension of the procedure. |
| Control | 0..* |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 40. Procedure.Description.Comment | |
| Definition | Additional narrative about the activity or care pathway step not captured in other fields. |
| Short | Comment |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 42. Procedure.Protocol | |
| Definition | @ internal @ |
| Short | Protocol |
| Control | 0..1 |
| Type | BackboneElement |
| Must Support | true |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
| 44. Procedure.Protocol.id | |
| Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
| Short | Unique id for inter-element referencing |
| Control | 0..1 |
| Type | string |
| Is Modifier | false |
| XML Format | In the XML format, this property is represented as an attribute. |
| Summary | false |
| 46. Procedure.Protocol.extension | |
| Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
| Short | Additional content defined by implementations |
| Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | false |
| Summary | false |
| Alternate Names | extensions, user content |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists()) |
| Slicing | This element introduces a set of slices on Procedure.Protocol.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators: |
| 48. Procedure.Protocol.modifierExtension | |
| Definition | May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself). |
| Short | Extensions that cannot be ignored even if unrecognized |
| Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
| Control | 0..* |
| Type | Extension |
| Is Modifier | true because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them |
| Summary | true |
| Requirements | Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions. |
| Alternate Names | extensions, user content, modifiers |
| Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists()) |
| 50. Procedure.Protocol.Requestororderidentifier | |
| Definition | The local ID assigned to the order by the healthcare provider or organisation requesting the service. |
| Short | Requestor order identifier |
| Comments | Considerations This is equivalent to Placer Order Number in HL7 v2 specifications. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 52. Procedure.Protocol.Requestor | |
| Definition | Details about the healthcare provider or organisation requesting the service. |
| Short | Requestor |
| Control | 0..1 |
| Type | Reference |
| Must Support | true |
| 54. Procedure.Protocol.Receiverorderidentifier | |
| Definition | The ID assigned to the order by the healthcare provider or organisation receiving the request for service. This is also referred to as Filler Order Identifier. |
| Short | Receiver order identifier |
| Comments | Considerations This is equivalent to Filler Order Number in HL7 v2 specifications. |
| Control | 0..1 |
| Type | string |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| Must Support | true |
| 56. Procedure.Protocol.Receiver | |
| Definition | Details about the healthcare provider or organisation receiving the request for service. |
| Short | Receiver |
| Control | 0..* |
| Type | Reference |
| Must Support | true |
| 58. Procedure.Protocol.Extension | |
| Definition | Additional information required to capture local content or to align with other reference models/formalisms. |
| Short | Extension |
| Comments | Considerations For example: local information requirements or additional metadata to align with FHIR or CIMI equivalents. |
| Control | 0..* |
| Type | Reference |
| Must Support | true |