HL7 Europe Imaging Study Report
0.1.0 - ci-build 150

HL7 Europe Imaging Study Report, published by HL7 Europe. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7-eu/imaging/ and changes regularly. See the Directory of published versions

Resource Profile: Imaging Procedure

Official URL: http://hl7.eu/fhir/imaging/StructureDefinition/im-procedure Version: 0.1.0
Standards status: Draft Maturity Level: 1 Computable Name: ImProcedure

Copyright/Legal: Used by permission of HL7 Europe, all rights reserved Creative Commons License

This profile on Procedure represents the imaging procedure.

When the resource points to a bodysite it:

  • SHALL populate the bodysite field.
  • when additional information on the body site is known (such as laterality), it SHALL reference a ImBodyStructure resource referring to the same body site as is coded in the bodysite field.

Usage:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraintsdoco
.. Procedure 0..* Procedure An action that is being or was performed on an individual or entity
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: 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
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
... meta Σ 0..1 Meta Metadata about the resource
ele-1: All FHIR elements must have a @value or children
.... security SΣ 0..* Coding Security Labels applied to this resource
Binding: AllSecurityLabels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


ele-1: All FHIR elements must have a @value or children
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
ele-1: All FHIR elements must have a @value or children
... language S 0..1 code Language of the resource content
Binding: AllLanguages (required): IETF language tag for a human language

Additional BindingsPurpose
CommonLanguages Starter Set

ele-1: All FHIR elements must have a @value or children
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... identifier SOΣ 0..1 ImAccessionNumberIdentifier External Identifiers for this procedure
ele-1: All FHIR elements must have a @value or children
ObligationsActor
SHALL:populate-if-known IM Producer
... Slices for basedOn Σ 0..* Reference(CarePlan | ServiceRequest) A request for this procedure
Slice: Unordered, Open by type:$this
ele-1: All FHIR elements must have a @value or children
.... basedOn:imorderaccession SΣ 0..1 Reference(Imaging Order) A request for this procedure
ele-1: All FHIR elements must have a @value or children
... status ?!Σ 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.


ele-1: All FHIR elements must have a @value or children
... subject Σ 1..1 Reference(Patient | Group | Device | Practitioner | Organization | Location) Individual or entity the procedure was performed on
ele-1: All FHIR elements must have a @value or children
... Slices for performer SΣC 0..* BackboneElement Who performed the procedure and what they did
Slice: Unordered, Open by value:""function""
ele-1: All FHIR elements must have a @value or children
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
.... performer:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... function SΣ 1..1 CodeableConcept Type of performance
Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure.


ele-1: All FHIR elements must have a @value or children
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
ele-1: All FHIR elements must have a @value or children
.... performer:performer SOΣC 0..* BackboneElement Who performed the procedure and what they did
ele-1: All FHIR elements must have a @value or children
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
ObligationsActor
SHALL:populate-if-known IM Producer
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... function SΣ 1..1 CodeableConcept Type of performance
Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure.


ele-1: All FHIR elements must have a @value or children
...... Slices for coding Σ 0..* Coding Code defined by a terminology system
Slice: Unordered, Open by value:""$this""
ele-1: All FHIR elements must have a @value or children
....... coding:healthcare-professional SΣ 0..1 Coding Code defined by a terminology system
ele-1: All FHIR elements must have a @value or children

Required Pattern: At least the following
........ system 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
........ code 1..1 code Symbol in syntax defined by the system
Fixed Value: 223366009
........ display 1..1 string Representation defined by the system
Fixed Value: Healthcare professional
..... actor ΣC 1..1 Reference(Imaging study performer) Who performed the procedure
ele-1: All FHIR elements must have a @value or children
.... performer:imaging-device SOΣC 0..* BackboneElement Who performed the procedure and what they did
ele-1: All FHIR elements must have a @value or children
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
ObligationsActor
SHALL:populate-if-known IM Producer
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... function SΣ 1..1 CodeableConcept Type of performance
Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure.


ele-1: All FHIR elements must have a @value or children
...... Slices for coding Σ 0..* Coding Code defined by a terminology system
Slice: Unordered, Open by value:""$this""
ele-1: All FHIR elements must have a @value or children
....... coding:imaging-equipment SΣ 0..1 Coding Code defined by a terminology system
ele-1: All FHIR elements must have a @value or children

Required Pattern: At least the following
........ system 1..1 uri Identity of the terminology system
Fixed Value: http://snomed.info/sct
........ code 1..1 code Symbol in syntax defined by the system
Fixed Value: 314789007
........ display 1..1 string Representation defined by the system
Fixed Value: Diagnostic imaging equipment
..... actor ΣC 1..1 Reference(Imaging Device) Who performed the procedure
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Procedure.meta.securityextensibleAllSecurityLabels
http://hl7.org/fhir/ValueSet/security-labels
from the FHIR Standard
Procedure.languagerequiredAllLanguages
http://hl7.org/fhir/ValueSet/all-languages|5.0.0
from the FHIR Standard
Procedure.statusrequiredEventStatus
http://hl7.org/fhir/ValueSet/event-status|5.0.0
from the FHIR Standard
Procedure.performer.functionexampleProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Procedure.performer:performer.functionexampleProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Procedure.performer:imaging-device.functionexampleProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorProcedureIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorProcedureIf 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorProcedureIf 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-5errorProcedureIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceProcedureA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
prc-1errorProcedure.performer, Procedure.performer:performer, Procedure.performer:imaging-deviceProcedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
: onBehalfOf.exists() and actor.resolve().exists() implies actor.resolve().where($this is Practitioner or $this is PractitionerRole).empty()

 

Other representations of profile: CSV, Excel, Schematron