HL7 Europe Imaging Report R4, published by HL7 Europe. This guide is not an authorized publication; it is the continuous build for version 1.0.0-ballot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7-eu/imaging-r4/ and changes regularly. See the Directory of published versions
| Official URL: http://hl7.eu/fhir/imaging-r4/StructureDefinition/ProcedureEuImaging | Version: 1.0.0-ballot | ||||
| Standards status: Draft Draft as of 2026-03-11 | Maturity Level: 1 | Computable Name: ProcedureEuImaging | |||
Copyright/Legal: Copyright HL7 Europe. Licensed under Creative Commons public domain (CC0 1.0). |
|||||
This profile on Procedure represents the imaging procedure. In this DICOM this is referred as the 'Performed Procedure Step' (PPS). This profile is used to capture metadata about the imaging procedure itself.
Usages:
You can also check for usages in the FHIR IG Statistics
Description Differentials, Snapshots, and other representations.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | Procedure | An action that is being or was performed on a patient | |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
?!Σ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): A code specifying the state of the procedure. |
![]() ![]() |
Σ | 1..1 | CodeableConcept | Identification of the procedure Binding: ValueSet: Imaging Procedure Type (extensible) |
![]() ![]() |
Σ | 1..1 | Reference(Patient | Group) | Who the procedure was performed on |
![]() ![]() |
Σ | 0..* | BackboneElement | The people who performed the procedure Slice: Unordered, Open by value:function |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of performance Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure. |
![]() ![]() ![]() ![]() |
Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) | The reference to the practitioner |
![]() ![]() ![]() |
Σ | 0..* | BackboneElement | The people who performed the procedure |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of performance Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure. |
![]() ![]() ![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:""$this"" |
![]() ![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | Coding | Code defined by a terminology system Required Pattern: At least the following |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 223366009 | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |
![]() ![]() ![]() ![]() |
Σ | 1..1 | Reference(PractitionerRole (EU core)(2.0.0-recon)) | The reference to the practitioner |
![]() ![]() ![]() |
Σ | 0..* | BackboneElement | The people who performed the procedure |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of performance Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure. |
![]() ![]() ![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:""$this"" |
![]() ![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | Coding | Code defined by a terminology system Required Pattern: At least the following |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 314789007 | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |
![]() ![]() ![]() ![]() |
Σ | 1..1 | Reference(Device: Imaging Device) | The reference to the practitioner |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Procedure.status | Base | required | EventStatus | 📍4.0.1 | FHIR Std. |
| Procedure.code | Base | extensible | ValueSet: Imaging Procedure Type | 📦1.0.0-ballot | This IG |
| Procedure.performer.function | Base | example | Procedure Performer Role Codes | 📍4.0.1 | FHIR Std. |
| Procedure.performer:performer.function | Base | example | Procedure Performer Role Codes | 📍4.0.1 | FHIR Std. |
| Procedure.performer:imaging-device.function | Base | example | Procedure Performer Role Codes | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | Procedure | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Procedure | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | Procedure | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | Procedure | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Procedure | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
Procedure | |||
![]() ![]() |
1..1 | CodeableConcept | Identification of the procedure Binding: ValueSet: Imaging Procedure Type (extensible) | |
![]() ![]() |
0..* | BackboneElement | The people who performed the procedure Slice: Unordered, Open by value:function | |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | Type of performance | |
![]() ![]() ![]() |
0..* | BackboneElement | The people who performed the procedure | |
![]() ![]() ![]() ![]() |
||||
![]() ![]() ![]() ![]() ![]() |
0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:""$this"" | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | Coding | Code defined by a terminology system Required Pattern: At least the following | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 223366009 | |
![]() ![]() ![]() ![]() |
1..1 | Reference(PractitionerRole (EU core)(2.0.0-recon)) | The reference to the practitioner | |
![]() ![]() ![]() |
0..* | BackboneElement | The people who performed the procedure | |
![]() ![]() ![]() ![]() |
||||
![]() ![]() ![]() ![]() ![]() |
0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:""$this"" | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | Coding | Code defined by a terminology system Required Pattern: At least the following | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 314789007 | |
![]() ![]() ![]() ![]() |
1..1 | Reference(Device: Imaging Device) | The reference to the practitioner | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Procedure.code | Base | extensible | ValueSet: Imaging Procedure Type | 📦1.0.0-ballot | This IG |
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
0..* | Procedure | An action that is being or was performed on a patient | |||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
Σ | 0..* | Identifier | External Identifiers for this procedure | ||||
![]() ![]() |
Σ | 0..* | canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) | Instantiates FHIR protocol or definition | ||||
![]() ![]() |
Σ | 0..* | uri | Instantiates external protocol or definition | ||||
![]() ![]() |
Σ | 0..* | Reference(CarePlan | ServiceRequest) | A request for this procedure | ||||
![]() ![]() |
Σ | 0..* | Reference(Procedure | Observation | MedicationAdministration) | Part of referenced event | ||||
![]() ![]() |
?!Σ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): A code specifying the state of the procedure. | ||||
![]() ![]() |
Σ | 0..1 | CodeableConcept | Reason for current status Binding: ProcedureNotPerformedReason(SNOMED-CT) (example): A code that identifies the reason a procedure was not performed. | ||||
![]() ![]() |
Σ | 0..1 | CodeableConcept | Classification of the procedure Binding: ProcedureCategoryCodes(SNOMEDCT) (example): A code that classifies a procedure for searching, sorting and display purposes. | ||||
![]() ![]() |
Σ | 1..1 | CodeableConcept | Identification of the procedure Binding: ValueSet: Imaging Procedure Type (extensible) | ||||
![]() ![]() |
Σ | 1..1 | Reference(Patient | Group) | Who the procedure was performed on | ||||
![]() ![]() |
Σ | 0..1 | Reference(Encounter) | Encounter created as part of | ||||
![]() ![]() |
Σ | 0..1 | When the procedure was performed | |||||
![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() |
Age | |||||||
![]() ![]() ![]() |
Range | |||||||
![]() ![]() |
Σ | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) | Who recorded the procedure | ||||
![]() ![]() |
Σ | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) | Person who asserts this procedure | ||||
![]() ![]() |
Σ | 0..* | BackboneElement | The people who performed the procedure Slice: Unordered, Open by value:function | ||||
![]() ![]() ![]() |
Content/Rules for all slices | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of performance Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure. | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) | The reference to the practitioner | ||||
![]() ![]() ![]() ![]() |
0..1 | Reference(Organization) | Organization the device or practitioner was acting for | |||||
![]() ![]() ![]() |
Σ | 0..* | BackboneElement | The people who performed the procedure | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of performance Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure. | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:""$this"" | ||||
![]() ![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | Coding | Code defined by a terminology system Required Pattern: At least the following | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 223366009 | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | Reference(PractitionerRole (EU core)(2.0.0-recon)) | The reference to the practitioner | ||||
![]() ![]() ![]() ![]() |
0..1 | Reference(Organization) | Organization the device or practitioner was acting for | |||||
![]() ![]() ![]() |
Σ | 0..* | BackboneElement | The people who performed the procedure | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of performance Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure. | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:""$this"" | ||||
![]() ![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | Coding | Code defined by a terminology system Required Pattern: At least the following | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 314789007 | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | Reference(Device: Imaging Device) | The reference to the practitioner | ||||
![]() ![]() ![]() ![]() |
0..1 | Reference(Organization) | Organization the device or practitioner was acting for | |||||
![]() ![]() |
Σ | 0..1 | Reference(Location) | Where the procedure happened | ||||
![]() ![]() |
Σ | 0..* | CodeableConcept | Coded reason procedure performed Binding: ProcedureReasonCodes (example): A code that identifies the reason a procedure is required. | ||||
![]() ![]() |
Σ | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | The justification that the procedure was performed | ||||
![]() ![]() |
Σ | 0..* | CodeableConcept | Target body sites Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | ||||
![]() ![]() |
Σ | 0..1 | CodeableConcept | The result of procedure Binding: ProcedureOutcomeCodes(SNOMEDCT) (example): An outcome of a procedure - whether it was resolved or otherwise. | ||||
![]() ![]() |
0..* | Reference(DiagnosticReport | DocumentReference | Composition) | Any report resulting from the procedure | |||||
![]() ![]() |
0..* | CodeableConcept | Complication following the procedure Binding: Condition/Problem/DiagnosisCodes (example): Codes describing complications that resulted from a procedure. | |||||
![]() ![]() |
0..* | Reference(Condition) | A condition that is a result of the procedure | |||||
![]() ![]() |
0..* | CodeableConcept | Instructions for follow up Binding: ProcedureFollowUpCodes(SNOMEDCT) (example): Specific follow up required for a procedure e.g. removal of sutures. | |||||
![]() ![]() |
0..* | Annotation | Additional information about the procedure | |||||
![]() ![]() |
0..* | BackboneElement | Manipulated, implanted, or removed device | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
0..1 | CodeableConcept | Kind of change to device Binding: ProcedureDeviceActionCodes (preferred): A kind of change that happened to the device during the procedure. | |||||
![]() ![]() ![]() |
1..1 | Reference(Device) | Device that was changed | |||||
![]() ![]() |
0..* | Reference(Device | Medication | Substance) | Items used during procedure | |||||
![]() ![]() |
0..* | CodeableConcept | Coded items used during the procedure Binding: FHIRDeviceTypes (example): Codes describing items used during a procedure. | |||||
Documentation for this format | ||||||||
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | Procedure | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Procedure | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | Procedure | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | Procedure | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Procedure | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
Summary
Mandatory: 1 element(1 nested mandatory element)
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Maturity: 1
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | Procedure | An action that is being or was performed on a patient | |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
?!Σ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): A code specifying the state of the procedure. |
![]() ![]() |
Σ | 1..1 | CodeableConcept | Identification of the procedure Binding: ValueSet: Imaging Procedure Type (extensible) |
![]() ![]() |
Σ | 1..1 | Reference(Patient | Group) | Who the procedure was performed on |
![]() ![]() |
Σ | 0..* | BackboneElement | The people who performed the procedure Slice: Unordered, Open by value:function |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of performance Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure. |
![]() ![]() ![]() ![]() |
Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) | The reference to the practitioner |
![]() ![]() ![]() |
Σ | 0..* | BackboneElement | The people who performed the procedure |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of performance Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure. |
![]() ![]() ![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:""$this"" |
![]() ![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | Coding | Code defined by a terminology system Required Pattern: At least the following |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 223366009 | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |
![]() ![]() ![]() ![]() |
Σ | 1..1 | Reference(PractitionerRole (EU core)(2.0.0-recon)) | The reference to the practitioner |
![]() ![]() ![]() |
Σ | 0..* | BackboneElement | The people who performed the procedure |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of performance Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure. |
![]() ![]() ![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:""$this"" |
![]() ![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | Coding | Code defined by a terminology system Required Pattern: At least the following |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 314789007 | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |
![]() ![]() ![]() ![]() |
Σ | 1..1 | Reference(Device: Imaging Device) | The reference to the practitioner |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Procedure.status | Base | required | EventStatus | 📍4.0.1 | FHIR Std. |
| Procedure.code | Base | extensible | ValueSet: Imaging Procedure Type | 📦1.0.0-ballot | This IG |
| Procedure.performer.function | Base | example | Procedure Performer Role Codes | 📍4.0.1 | FHIR Std. |
| Procedure.performer:performer.function | Base | example | Procedure Performer Role Codes | 📍4.0.1 | FHIR Std. |
| Procedure.performer:imaging-device.function | Base | example | Procedure Performer Role Codes | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | Procedure | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Procedure | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | Procedure | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | Procedure | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Procedure | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
Differential View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
Procedure | |||
![]() ![]() |
1..1 | CodeableConcept | Identification of the procedure Binding: ValueSet: Imaging Procedure Type (extensible) | |
![]() ![]() |
0..* | BackboneElement | The people who performed the procedure Slice: Unordered, Open by value:function | |
![]() ![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | Type of performance | |
![]() ![]() ![]() |
0..* | BackboneElement | The people who performed the procedure | |
![]() ![]() ![]() ![]() |
||||
![]() ![]() ![]() ![]() ![]() |
0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:""$this"" | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | Coding | Code defined by a terminology system Required Pattern: At least the following | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 223366009 | |
![]() ![]() ![]() ![]() |
1..1 | Reference(PractitionerRole (EU core)(2.0.0-recon)) | The reference to the practitioner | |
![]() ![]() ![]() |
0..* | BackboneElement | The people who performed the procedure | |
![]() ![]() ![]() ![]() |
||||
![]() ![]() ![]() ![]() ![]() |
0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:""$this"" | |
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | Coding | Code defined by a terminology system Required Pattern: At least the following | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 314789007 | |
![]() ![]() ![]() ![]() |
1..1 | Reference(Device: Imaging Device) | The reference to the practitioner | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Procedure.code | Base | extensible | ValueSet: Imaging Procedure Type | 📦1.0.0-ballot | This IG |
Snapshot ViewView
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
0..* | Procedure | An action that is being or was performed on a patient | |||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
Σ | 0..* | Identifier | External Identifiers for this procedure | ||||
![]() ![]() |
Σ | 0..* | canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) | Instantiates FHIR protocol or definition | ||||
![]() ![]() |
Σ | 0..* | uri | Instantiates external protocol or definition | ||||
![]() ![]() |
Σ | 0..* | Reference(CarePlan | ServiceRequest) | A request for this procedure | ||||
![]() ![]() |
Σ | 0..* | Reference(Procedure | Observation | MedicationAdministration) | Part of referenced event | ||||
![]() ![]() |
?!Σ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): A code specifying the state of the procedure. | ||||
![]() ![]() |
Σ | 0..1 | CodeableConcept | Reason for current status Binding: ProcedureNotPerformedReason(SNOMED-CT) (example): A code that identifies the reason a procedure was not performed. | ||||
![]() ![]() |
Σ | 0..1 | CodeableConcept | Classification of the procedure Binding: ProcedureCategoryCodes(SNOMEDCT) (example): A code that classifies a procedure for searching, sorting and display purposes. | ||||
![]() ![]() |
Σ | 1..1 | CodeableConcept | Identification of the procedure Binding: ValueSet: Imaging Procedure Type (extensible) | ||||
![]() ![]() |
Σ | 1..1 | Reference(Patient | Group) | Who the procedure was performed on | ||||
![]() ![]() |
Σ | 0..1 | Reference(Encounter) | Encounter created as part of | ||||
![]() ![]() |
Σ | 0..1 | When the procedure was performed | |||||
![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() |
Age | |||||||
![]() ![]() ![]() |
Range | |||||||
![]() ![]() |
Σ | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) | Who recorded the procedure | ||||
![]() ![]() |
Σ | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) | Person who asserts this procedure | ||||
![]() ![]() |
Σ | 0..* | BackboneElement | The people who performed the procedure Slice: Unordered, Open by value:function | ||||
![]() ![]() ![]() |
Content/Rules for all slices | |||||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of performance Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure. | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) | The reference to the practitioner | ||||
![]() ![]() ![]() ![]() |
0..1 | Reference(Organization) | Organization the device or practitioner was acting for | |||||
![]() ![]() ![]() |
Σ | 0..* | BackboneElement | The people who performed the procedure | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of performance Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure. | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:""$this"" | ||||
![]() ![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | Coding | Code defined by a terminology system Required Pattern: At least the following | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 223366009 | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | Reference(PractitionerRole (EU core)(2.0.0-recon)) | The reference to the practitioner | ||||
![]() ![]() ![]() ![]() |
0..1 | Reference(Organization) | Organization the device or practitioner was acting for | |||||
![]() ![]() ![]() |
Σ | 0..* | BackboneElement | The people who performed the procedure | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | CodeableConcept | Type of performance Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure. | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..* | Coding | Code defined by a terminology system Slice: Unordered, Open by value:""$this"" | ||||
![]() ![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | Coding | Code defined by a terminology system Required Pattern: At least the following | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Version of the system - if relevant | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1..1 | code | Symbol in syntax defined by the system Fixed Value: 314789007 | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Representation defined by the system | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | boolean | If this coding was chosen directly by the user | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | Reference(Device: Imaging Device) | The reference to the practitioner | ||||
![]() ![]() ![]() ![]() |
0..1 | Reference(Organization) | Organization the device or practitioner was acting for | |||||
![]() ![]() |
Σ | 0..1 | Reference(Location) | Where the procedure happened | ||||
![]() ![]() |
Σ | 0..* | CodeableConcept | Coded reason procedure performed Binding: ProcedureReasonCodes (example): A code that identifies the reason a procedure is required. | ||||
![]() ![]() |
Σ | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | The justification that the procedure was performed | ||||
![]() ![]() |
Σ | 0..* | CodeableConcept | Target body sites Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | ||||
![]() ![]() |
Σ | 0..1 | CodeableConcept | The result of procedure Binding: ProcedureOutcomeCodes(SNOMEDCT) (example): An outcome of a procedure - whether it was resolved or otherwise. | ||||
![]() ![]() |
0..* | Reference(DiagnosticReport | DocumentReference | Composition) | Any report resulting from the procedure | |||||
![]() ![]() |
0..* | CodeableConcept | Complication following the procedure Binding: Condition/Problem/DiagnosisCodes (example): Codes describing complications that resulted from a procedure. | |||||
![]() ![]() |
0..* | Reference(Condition) | A condition that is a result of the procedure | |||||
![]() ![]() |
0..* | CodeableConcept | Instructions for follow up Binding: ProcedureFollowUpCodes(SNOMEDCT) (example): Specific follow up required for a procedure e.g. removal of sutures. | |||||
![]() ![]() |
0..* | Annotation | Additional information about the procedure | |||||
![]() ![]() |
0..* | BackboneElement | Manipulated, implanted, or removed device | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
0..1 | CodeableConcept | Kind of change to device Binding: ProcedureDeviceActionCodes (preferred): A kind of change that happened to the device during the procedure. | |||||
![]() ![]() ![]() |
1..1 | Reference(Device) | Device that was changed | |||||
![]() ![]() |
0..* | Reference(Device | Medication | Substance) | Items used during procedure | |||||
![]() ![]() |
0..* | CodeableConcept | Coded items used during the procedure Binding: FHIRDeviceTypes (example): Codes describing items used during a procedure. | |||||
Documentation for this format | ||||||||
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | Procedure | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Procedure | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | Procedure | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | Procedure | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Procedure | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
Summary
Mandatory: 1 element(1 nested mandatory element)
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Maturity: 1
Other representations of profile: CSV, Excel, Schematron