Skip to content

Procedure Profile

Canonical../StructureDefinition/nexus-emr-core-procedure
Statusdraft · 1.26.0
BaseProcedure (constraint)
SourceFSH · JSON

Defines the Nexus EMR FHIR profile for Procedure resources, based on CA-Core Procedure constraints, for aggregating data from multiple EMRs.

Elements / Details

Every element this profile touches, with its full definition. Element names in the tables link here.

Procedure

Short Nexus EMR Procedure Core
Definition Represents clinical procedures performed on patients, capturing key details like procedure code, status, performed date/time, and performer using standard Nexus EMR references. Uses instance-specific identifiers for tracking procedures across systems.
Cardinality 0..*
Invariants dom-2, dom-3, dom-4, dom-5, dom-6, nexus-note-extension-not-where-native

Procedure.id

Short Logical id of this artifact
Definition The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
Comments The only time that a resource does not have an id is when it is being submitted to the server using a create operation.
Cardinality 0..1
Type http://hl7.org/fhirpath/System.String

Procedure.meta

Short Metadata about the resource
Definition The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
Cardinality 0..1
Type Meta
Invariants ele-1

Procedure.meta.id

Short Unique id for inter-element referencing
Definition Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality 0..1
Type http://hl7.org/fhirpath/System.String

Procedure.meta.extension

Short Additional content defined by implementations
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.
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.
Cardinality 0..*
Type Extension
Invariants ele-1, ext-1
Also called extensions, user content

Procedure.meta.versionId

Short Version specific identifier
Definition The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.
Comments The server assigns this value, and ignores what the client specifies, except in the case that the server is imposing version integrity on updates/deletes.
Cardinality 0..1
Type id
Invariants ele-1

Procedure.meta.lastUpdated

Short When the resource version last changed
Definition When the resource last changed - e.g. when the version changed.
Comments This value is always populated except when the resource is first being created. The server / resource manager sets this value; what a client provides is irrelevant. This is equivalent to the HTTP Last-Modified and SHOULD have the same value on a read interaction.
Cardinality 0..1
Type instant
Invariants ele-1

Procedure.meta.source

Short Identifies EMR instance & pipeline version the resource came from
Definition A URI that identifies the EMR pipeline and version from which this resource originated. This tells you which EMR instance (recommend using the instance identifier), and the version of the pipeline code/transformations.
Comments In the provenance resource, this corresponds to Provenance.entity.what[x]. The exact use of the source (and the implied Provenance.entity.role) is left to implementer discretion. Only one nominated source is allowed; for additional provenance details, a full Provenance resource should be used. This element can be used to indicate where the current master source of a resource that has a canonical URL if the resource is no longer hosted at the canonical URL.
Cardinality 0..1
Type uri
Must Support yes
Invariants ele-1

Procedure.meta.profile

Short Profiles this resource claims to conform to
Definition A list of profiles (references to StructureDefinition resources) that this resource claims to conform to. The URL is a reference to StructureDefinition.url.
Comments It is up to the server and/or other infrastructure of policy to determine whether/how these claims are verified and/or updated over time. The list of profile URLs is a set.
Cardinality 0..*
Type canonical
Invariants ele-1

Procedure.meta.security

Short Security Labels applied to this resource
Definition Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.
Comments The security labels can be updated without changing the stated version of the resource. The list of security labels is a set. Uniqueness is based the system/code, and version and display are ignored.
Cardinality 0..*
Type Coding
Binding security-labels (extensible)
Invariants ele-1

Procedure.meta.tag

Short Tags applied to this resource
Definition Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.
Comments The tags can be updated without changing the stated version of the resource. The list of tags is a set. Uniqueness is based the system/code, and version and display are ignored.
Cardinality 0..*
Type Coding
Binding common-tags (example)
Invariants ele-1

Procedure.implicitRules

Short A set of rules under which this content was created
Definition A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Comments Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
Cardinality 0..1
Type uri
Modifier yes — This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation
Invariants ele-1

Procedure.language

Short Language of the resource content
Definition The base language in which the resource is written.
Comments Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).
Cardinality 0..1
Type code
Binding languages (preferred)
Invariants ele-1

Procedure.text

Short Narrative
Definition A human-readable narrative summary of the NexusEmrCoreProcedure resource for human interpretation.
Comments Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.
Cardinality 0..1
Type Narrative
Must Support yes
Invariants ele-1
Also called narrative, html, xhtml, display

Procedure.contained

Short Contained, inline Resources
Definition These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
Comments This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.
Cardinality 0..*
Type Resource
Also called inline resources, anonymous resources, contained resources

Procedure.extension

Short Additional content defined by implementations
Definition May be used to represent additional information that is not part of the basic definition of the resource. 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.
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.
Cardinality 0..*
Type Extension
Invariants ele-1, ext-1
Also called extensions, user content

Procedure.modifierExtension

Short Extensions that cannot be ignored
Definition May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it 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 is allowed to 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).
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.
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.
Cardinality 0..*
Type Extension
Modifier yes — Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them
Invariants ele-1, ext-1
Also called extensions, user content

Procedure.identifier

Short Business identifier(s) for procedure
Definition Unique identifiers for the procedure. A business identifier is recommended but not required (identifier is 0..*). Where available, carry the source-system identifier using the most appropriate system URI. No specific canonical system is mandated. A source system's own identifier SHOULD be carried alongside this one, flagged use = secondary. See Carrying the raw code.
Requirements Allows identification of the procedure as it is known by various participating systems and in a way that remains consistent across servers.
Comments This is a business identifier, not a resource identifier (see discussion). It is best practice for the identifier to only appear on a single resource instance, however business practices may occasionally dictate that multiple resource instances with the same identifier can exist - possibly even with different resource types. For example, multiple Patient and Person resource instances might share the same social insurance number.
Cardinality 0..*
Type Identifier
Must Support yes
Invariants ele-1

Procedure.identifier.id

Short Unique id for inter-element referencing
Definition Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality 0..1
Type http://hl7.org/fhirpath/System.String

Procedure.identifier.extension

Short Additional content defined by implementations
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.
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.
Cardinality 0..*
Type Extension
Invariants ele-1, ext-1
Also called extensions, user content

Procedure.identifier.use

Short usual | official | temp | secondary | old (If known)
Definition The purpose of this identifier.
Requirements Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.
Comments Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.
Cardinality 0..1
Type code
Modifier yes — This is labeled as "Is Modifier" because applications should not mistake a temporary id for a permanent one.
Binding identifier-use (required)
Invariants ele-1

Procedure.identifier.type

Short Description of identifier
Definition A coded type for the identifier that can be used to determine which identifier to use for a specific purpose.
Requirements Allows users to make use of identifiers when the identifier system is not known.
Comments This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.
Cardinality 0..1
Type CodeableConcept
Binding identifier-type (extensible)
Invariants ele-1

Procedure.identifier.system

Short The namespace for the identifier value
Definition Establishes the namespace for the value - that is, a URL that describes a set values that are unique.
Requirements There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.
Comments Identifier.system is always case sensitive.
Cardinality 1..1
Type uri
Invariants ele-1

Procedure.identifier.value

Short The value that is unique
Definition The portion of the identifier typically relevant to the user and which is unique within the context of the system.
Comments If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.
Cardinality 1..1
Type string
Invariants ele-1

Procedure.identifier.period

Short Time period when id is/was valid for use
Definition Time period during which identifier is/was valid for use.
Cardinality 0..1
Type Period
Invariants ele-1

Procedure.identifier.assigner

Short Organization that issued id (may be just text)
Definition Organization that issued/manages the identifier.
Comments The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
Cardinality 0..1
Type Reference(Organization)
Invariants ele-1

Procedure.instantiatesCanonical

Short Instantiates FHIR protocol or definition
Definition The URL pointing to a FHIR-defined protocol, guideline, order set or other definition that is adhered to in whole or in part by this Procedure.
Cardinality 0..*
Type canonical
Invariants ele-1

Procedure.instantiatesUri

Short Instantiates external protocol or definition
Definition The URL pointing to an externally maintained protocol, guideline, order set or other definition that is adhered to in whole or in part by this Procedure.
Comments This might be an HTML page, PDF, etc. or could just be a non-resolvable URI identifier.
Cardinality 0..*
Type uri
Invariants ele-1

Procedure.basedOn

Short A request for this procedure
Definition A reference to a resource that contains details of the request for this procedure.
Cardinality 0..*
Type Reference(CarePlan | ServiceRequest)
Invariants ele-1
Also called fulfills

Procedure.partOf

Short Part of referenced event
Definition A larger event of which this particular procedure is a component or step.
Comments The MedicationAdministration resource has a partOf reference to Procedure, but this is not a circular reference. For example, the anesthesia MedicationAdministration is part of the surgical Procedure (MedicationAdministration.partOf = Procedure). For example, the procedure to insert the IV port for an IV medication administration is part of the medication administration (Procedure.partOf = MedicationAdministration).
Cardinality 0..*
Type Reference(Procedure | Observation | MedicationAdministration)
Invariants ele-1
Also called container

Procedure.status

Short preparation | in-progress | completed | entered-in-error
Definition A code specifying the state of the procedure. Generally this will be completed or entered-in-error.
Comments This is a modifier element. The status affects the interpretation of the procedure.
Cardinality 1..1
Type code
Must Support yes
Modifier yes — This element is labelled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid
Binding event-status (required)
Invariants ele-1

Procedure.statusReason

Short Why the procedure was not done
Definition The reason a procedure that was expected or recommended was not carried out. Meaningful only where status is not-done.
Comments Where a care-gap recommendation is recorded as not carried out, status is not-done and this element carries TWO codings on the one CodeableConcept. The first is the local kind, from the Care Satisfier Reason code system (../CodeSystem/care-satisfier-reason): declined, or not-applicable. The second is a SNOMED CT concept from R4's procedure-not-performed-reason value set beside it -- 416432009 (Procedure not wanted) for declined, 428119001 (Procedure not indicated) for not-applicable. The SNOMED coding is what an outside reader interprets; the local coding is what the recording surface reads back. Both are written, on purpose. The SNOMED concepts are the nearest that value set offers rather than exact equivalents, so recovering the recorded reason from them alone would be an inference rather than a read. The clinician's own words are in statusReason.text, and are patient information. No binding is declared here, deliberately. A not-done Procedure carrying only a SNOMED reason -- or a reason from neither system -- was written by some other path and is ordinary chart data. It is left alone rather than mapped back. Read the local coding where it is present; do not require it, and do not treat its absence as a defect.
Cardinality 0..1
Type CodeableConcept
Must Support yes
Binding procedure-not-performed-reason (example)
Invariants ele-1
Also called Suspended Reason, Cancelled Reason

Procedure.category

Short Classification of the procedure
Definition A code that classifies the procedure for searching, sorting and display purposes.
Comments Examples include: surgical, diagnostic, therapeutic, preventive.
Cardinality 0..1
Type CodeableConcept
Must Support yes
Binding procedure-category (example)
Invariants ele-1

Procedure.code

Short Procedure performed with raw code support
Definition The specific procedure that was performed. REQUIRED: text element for human readability RECOMMENDED: Standard terminology codes (CPT, SNOMED CT, LOINC, etc.) OPTIONAL: Raw EMR procedure codes for source system preservation Nexus EMR does not mandate a specific coding system for procedures. The text element ensures human readability even when coded values are not recognized.
Requirements 0..1 to account for primarily narrative only resources.
Comments Where this code was mapped from a source system's own vocabulary, carry the raw coding alongside the mapped one, flagged userSelected = true. See Carrying the raw code.
Cardinality 1..1
Type CodeableConcept
Must Support yes
Binding procedure-code (example)
Invariants ele-1
Also called type

Procedure.code.id

Short Unique id for inter-element referencing
Definition Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality 0..1
Type http://hl7.org/fhirpath/System.String

Procedure.code.extension

Short Additional content defined by implementations
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.
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.
Cardinality 0..*
Type Extension
Invariants ele-1, ext-1
Also called extensions, user content

Procedure.code.coding

Short A coded form of the procedure
Definition A reference to a code defined by a terminology system.
Requirements Allows for alternative encodings within a code system, and translations to other code systems.
Comments Optional overall (aggregation from source EMRs cannot always code). For ORIGINATING writes (a clinician recording a procedure directly), a coded value SHOULD be captured -- SNOMED CT preferred -- for IPS / US Core / Ontario forward interop. Text-primary remains valid where no raw coding exists.
Cardinality 0..*
Type Coding
Must Support yes
Invariants ele-1

Procedure.code.coding:cci

Short CCI coding (system slot only; codes not enumerated -- CIHI-licensed)
Definition A reference to a code defined by a terminology system.
Requirements Allows for alternative encodings within a code system, and translations to other code systems.
Comments Optional overall (aggregation from source EMRs cannot always code). For ORIGINATING writes (a clinician recording a procedure directly), a coded value SHOULD be captured -- SNOMED CT preferred -- for IPS / US Core / Ontario forward interop. Text-primary remains valid where no raw coding exists.
Cardinality 0..*
Type Coding
Invariants ele-1

Procedure.code.coding:cci.id

Short Unique id for inter-element referencing
Definition Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality 0..1
Type http://hl7.org/fhirpath/System.String

Procedure.code.coding:cci.extension

Short Additional content defined by implementations
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.
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.
Cardinality 0..*
Type Extension
Invariants ele-1, ext-1
Also called extensions, user content

Procedure.code.coding:cci.system

Short Identity of the terminology system
Definition The identification of the code system that defines the meaning of the symbol in the code.
Requirements Need to be unambiguous about the source of the definition of the symbol.
Comments The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.
Cardinality 1..1
Type uri
Fixed value http://cihi.ca/fhir/CodeSystem/cihi-cci
Invariants ele-1

Procedure.code.coding:cci.version

Short Version of the system - if relevant
Definition The version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
Comments Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.
Cardinality 0..1
Type string
Invariants ele-1

Procedure.code.coding:cci.code

Short Symbol in syntax defined by the system
Definition A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
Requirements Need to refer to a particular code in the system.
Cardinality 1..1
Type code
Invariants ele-1

Procedure.code.coding:cci.display

Short Representation defined by the system
Definition A representation of the meaning of the code in the system, following the rules of the system.
Requirements Need to be able to carry a human-readable meaning of the code for readers that do not know the system.
Cardinality 0..1
Type string
Invariants ele-1

Procedure.code.coding:cci.userSelected

Short If this coding was chosen directly by the user
Definition Indicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
Requirements This has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.
Comments Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.
Cardinality 0..1
Type boolean
Invariants ele-1

Procedure.code.text

Short Human-readable procedure description (required)
Definition Plain text representation of the procedure, required for all entries
Requirements The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.
Comments Very often the text is the same as a displayName of one of the codings.
Cardinality 1..1
Type string
Must Support yes
Invariants ele-1

Procedure.subject

Short Who the procedure was performed on
Definition The patient on whom the procedure was performed. Must reference using Nexus EMR patient identifier.
Comments References should use identifier-based references following Nexus EMR patterns.
Cardinality 1..1
Type Reference(Patient Profile)
Must Support yes
Invariants ele-1
Also called patient

Procedure.encounter

Short Encounter when procedure was performed
Definition The encounter during which the procedure was performed. Optional but provides important clinical context.
Comments Linking to encounter helps establish the clinical context and timing of the procedure.
Cardinality 0..1
Type Reference(Encounter Profile)
Invariants ele-1

Procedure.performed[x]

Short When the procedure was performed
Definition The date, period, or age when the procedure was performed. For procedures that span time, use Period.
Comments Use the appropriate data type: dateTime for single point in time, Period for procedures spanning time.
Cardinality 0..1
Type dateTime, Period, string, Age, Range
Must Support yes
Invariants ele-1

Procedure.recorder

Short Who recorded the procedure
Definition Individual who recorded the record and takes responsibility for its content.
Cardinality 0..1
Type Reference(Patient | RelatedPerson | Practitioner | PractitionerRole)
Invariants ele-1

Procedure.asserter

Short Person who asserts this procedure
Definition Individual who is making the procedure statement.
Cardinality 0..1
Type Reference(Patient | RelatedPerson | Practitioner | PractitionerRole)
Invariants ele-1

Procedure.performer

Short The people who performed the procedure
Definition Limited to "real" people rather than equipment.
Cardinality 0..*
Type BackboneElement
Invariants ele-1

Procedure.performer.id

Short Unique id for inter-element referencing
Definition Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality 0..1
Type http://hl7.org/fhirpath/System.String

Procedure.performer.extension

Short Additional content defined by implementations
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.
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.
Cardinality 0..*
Type Extension
Invariants ele-1, ext-1
Also called extensions, user content

Procedure.performer.modifierExtension

Short Extensions that cannot be ignored even if unrecognized
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).
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.
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.
Cardinality 0..*
Type Extension
Modifier yes — Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
Invariants ele-1, ext-1
Also called extensions, user content, modifiers

Procedure.performer.function

Short Type of performance
Definition Distinguishes the type of involvement of the performer in the procedure. For example, surgeon, anaesthetist, endoscopist.
Requirements Allows disambiguation of the types of involvement of different performers.
Cardinality 0..1
Type CodeableConcept
Binding performer-role (example)
Invariants ele-1

Procedure.performer.actor

Short The reference to the practitioner
Definition The practitioner who was involved in the procedure.
Requirements A reference to Device supports use cases, such as pacemakers.
Cardinality 1..1
Type Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device)
Invariants ele-1

Procedure.performer.onBehalfOf

Short Organization the device or practitioner was acting for
Definition The organization the device or practitioner was acting on behalf of.
Requirements Practitioners and Devices can be associated with multiple organizations. This element indicates which organization they were acting on behalf of when performing the action.
Cardinality 0..1
Type Reference(Organization)
Invariants ele-1

Procedure.location

Short Where the procedure happened
Definition The location where the procedure actually happened. E.g. a newborn at home, a tracheostomy at a restaurant.
Requirements Ties a procedure to where the records are likely kept.
Cardinality 0..1
Type Reference(Location)
Invariants ele-1

Procedure.reasonCode

Short Coded reason procedure performed
Definition The coded reason why the procedure was performed. This may be a coded entity of some type, or may simply be present as text.
Comments Use Procedure.reasonCode when a code sufficiently describes the reason. Use Procedure.reasonReference when referencing a resource, which allows more information to be conveyed, such as onset date. Procedure.reasonCode and Procedure.reasonReference are not meant to be duplicative. For a single reason, either Procedure.reasonCode or Procedure.reasonReference can be used. Procedure.reasonCode may be a summary code, or Procedure.reasonReference may be used to reference a very precise definition of the reason using Condition | Observation | Procedure | DiagnosticReport | DocumentReference. Both Procedure.reasonCode and Procedure.reasonReference can be used if they are describing different reasons for the procedure.
Cardinality 0..*
Type CodeableConcept
Binding procedure-reason (example)
Invariants ele-1

Procedure.reasonReference

Short The justification that the procedure was performed
Definition The justification of why the procedure was performed.
Comments It is possible for a procedure to be a reason (such as C-Section) for another procedure (such as an epidural). Other examples include endoscopy for dilatation and biopsy (a combination of diagnostic and therapeutic use). Use Procedure.reasonCode when a code sufficiently describes the reason. Use Procedure.reasonReference when referencing a resource, which allows more information to be conveyed, such as onset date. Procedure.reasonCode and Procedure.reasonReference are not meant to be duplicative. For a single reason, either Procedure.reasonCode or Procedure.reasonReference can be used. Procedure.reasonCode may be a summary code, or Procedure.reasonReference may be used to reference a very precise definition of the reason using Condition | Observation | Procedure | DiagnosticReport | DocumentReference. Both Procedure.reasonCode and Procedure.reasonReference can be used if they are describing different reasons for the procedure.
Cardinality 0..*
Type Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference)
Invariants ele-1

Procedure.bodySite

Short Target body sites
Definition Detailed and structured anatomical location information.
Comments Multiple body sites can be specified for procedures affecting multiple areas.
Cardinality 0..*
Type CodeableConcept
Must Support yes
Binding body-site (example)
Invariants ele-1

Procedure.bodySite.id

Short Unique id for inter-element referencing
Definition Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality 0..1
Type http://hl7.org/fhirpath/System.String

Procedure.bodySite.extension

Short Additional content defined by implementations
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.
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.
Cardinality 0..*
Type Extension
Invariants ele-1, ext-1
Also called extensions, user content

Procedure.bodySite.coding

Short Code defined by a terminology system
Definition A reference to a code defined by a terminology system.
Requirements Allows for alternative encodings within a code system, and translations to other code systems.
Comments Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.
Cardinality 0..*
Type Coding
Invariants ele-1

Procedure.bodySite.text

Short Plain text representation of the concept
Definition A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.
Requirements The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.
Comments Very often the text is the same as a displayName of one of the codings.
Cardinality 1..1
Type string
Must Support yes
Invariants ele-1

Procedure.outcome

Short The result of procedure
Definition The outcome of the procedure - successful, partially successful, unsuccessful, etc.
Comments If outcome contains narrative text only, it can be captured using the CodeableConcept.text.
Cardinality 0..1
Type CodeableConcept
Binding procedure-outcome (example)
Invariants ele-1

Procedure.report

Short Any report resulting from the procedure
Definition This could be a histology result, pathology report, surgical report, etc.
Comments There could potentially be multiple reports - e.g. if this was a procedure which took multiple biopsies resulting in a number of anatomical pathology reports.
Cardinality 0..*
Type Reference(DiagnosticReport | DocumentReference | Composition)
Invariants ele-1

Procedure.complication

Short Complication following the procedure
Definition Any complications that occurred during or following the procedure.
Comments If complications are tracked as separate conditions, reference them here.
Cardinality 0..*
Type CodeableConcept
Binding condition-code (example)
Invariants ele-1

Procedure.complicationDetail

Short A condition that is a result of the procedure
Definition Any complications that occurred during the procedure, or in the immediate post-performance period.
Requirements This is used to document a condition that is a result of the procedure, not the condition that was the reason for the procedure.
Cardinality 0..*
Type Reference(Condition)
Invariants ele-1

Procedure.followUp

Short Instructions for follow up
Definition If the procedure required specific follow up - e.g. removal of sutures. The follow up may be represented as a simple note or could potentially be more complex, in which case the CarePlan resource can be used.
Cardinality 0..*
Type CodeableConcept
Binding procedure-followup (example)
Invariants ele-1

Procedure.note

Short Additional information about the procedure
Definition Any additional information or comments about the procedure.
Cardinality 0..*
Type Annotation
Must Support yes
Invariants ele-1

Procedure.focalDevice

Short Manipulated, implanted, or removed device
Definition A device that is implanted, removed or otherwise manipulated (calibration, battery replacement, fitting a prosthesis, attaching a wound-vac, etc.) as a focal portion of the Procedure.
Cardinality 0..*
Type BackboneElement
Invariants ele-1

Procedure.focalDevice.id

Short Unique id for inter-element referencing
Definition Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality 0..1
Type http://hl7.org/fhirpath/System.String

Procedure.focalDevice.extension

Short Additional content defined by implementations
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.
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.
Cardinality 0..*
Type Extension
Invariants ele-1, ext-1
Also called extensions, user content

Procedure.focalDevice.modifierExtension

Short Extensions that cannot be ignored even if unrecognized
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).
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.
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.
Cardinality 0..*
Type Extension
Modifier yes — Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
Invariants ele-1, ext-1
Also called extensions, user content, modifiers

Procedure.focalDevice.action

Short Kind of change to device
Definition The kind of change that happened to the device during the procedure.
Cardinality 0..1
Type CodeableConcept
Binding device-action (preferred)
Invariants ele-1

Procedure.focalDevice.manipulated

Short Device that was changed
Definition The device that was manipulated (changed) during the procedure.
Cardinality 1..1
Type Reference(Device)
Invariants ele-1

Procedure.usedReference

Short Items used during procedure
Definition Identifies medications, devices and any other substance used as part of the procedure.
Requirements Used for tracking contamination, etc.
Comments For devices actually implanted or removed, use Procedure.device.
Cardinality 0..*
Type Reference(Device | Medication | Substance)
Invariants ele-1

Procedure.usedCode

Short Coded items used during the procedure
Definition Identifies coded items that were used as part of the procedure.
Comments For devices actually implanted or removed, use Procedure.device.
Cardinality 0..*
Type CodeableConcept
Binding device-kind (example)
Invariants ele-1