MCC eCare Plan Implementation Guide, published by HL7 International / Patient Care. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-us-mcc/ and changes regularly. See the Directory of published versions
Official URL: http://hl7.org/fhir/us/mcc/StructureDefinition/MCCProcedure | Version: 1.0.0 | |||
Draft as of 2020-07-22 | Computable Name: MCCProcedure |
This profile constrains US Core Procedure for use in the MCC FHIR Care Plan or other FHIR Care Plans.
The US Core Procedure profile sets minimum expectations for the Procedure resource to record, search, and fetch procedures associated with a patient, including information about a Social Determinants of Health-related procedures. It identifies which core elements, extensions, vocabularies and value sets SHALL be present in the resource when using this profile.
In addition to the requirements set forth in US Core Procedure, this derived profile is designed to add requirements to the following elements:
Procedure.extension:resource-pertainsToGoal (Must Support) to encourage linking to the goal the procedure hopes to facilitate and/or to encourage systems to be able to receive and understand a goal linkage if present. Procedue.reasonReference (Must Support) to encourage linking back to the health concern, problem or observation associated with the procedure, and/or to encourage systems to be able to receive and understand a reason for a procedure, if present.
See the MCC Care Plan SDOH Guidance page for more information when exchanging Social Determinants of Health (SDOH) procedures.
No additional value sets were defined for use in this profile beyond the the value set bindings in the US Core Procedure profile, but please see the MCC Procedure and Service Request Value Set library page for guidance on use of procedure terminology in this guide.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from USCoreProcedureProfile
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Procedure | 0..* | USCoreProcedureProfile | An action that is being or was performed on a patient | |
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
resource-pertainsToGoal | S | 0..* | Reference(Goal) | The resource-pertainsToGoal relates the resource to the goal(s) that pertain to it. Whenever there is a goal associated with a health concern or problem, this extension should be present and populated in activity (event or intent) resources. URL: http://hl7.org/fhir/StructureDefinition/resource-pertainsToGoal |
code | 1..1 | CodeableConcept | Please see the Procedure and Service Request Value Set Library for value sets that are subsets of US Core Procedure Codes that can be used at the Procedure.code element element | |
reasonReference | S | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | The procedure.reason.reference should be populated with the health concern or problem for which it is or was performed. |
report | 0..* | Reference(DiagnosticReport | DocumentReference | Composition) | Any report resulting from the procedure | |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Procedure | C | 0..* | USCoreProcedureProfile | An action that is being or was performed on a patient us-core-7: Performed SHALL be present if the status is 'completed' or 'in-progress' |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
resource-pertainsToGoal | S | 0..* | Reference(Goal) | The resource-pertainsToGoal relates the resource to the goal(s) that pertain to it. Whenever there is a goal associated with a health concern or problem, this extension should be present and populated in activity (event or intent) resources. URL: http://hl7.org/fhir/StructureDefinition/resource-pertainsToGoal |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!SΣC | 1..1 | code | (USCDI) preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required) |
code | SΣ | 1..1 | CodeableConcept | Please see the Procedure and Service Request Value Set Library for value sets that are subsets of US Core Procedure Codes that can be used at the Procedure.code element element Binding: US Core Procedure Codes (extensible): Codes describing the type of Procedure |
subject | SΣ | 1..1 | Reference(US Core Patient Profile) | (USCDI) Who the procedure was performed on |
performed[x] | SΣC | 0..1 | (USCDI) When the procedure was performed | |
performedDateTime | dateTime | |||
reasonReference | SΣ | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | The procedure.reason.reference should be populated with the health concern or problem for which it is or was performed. |
report | 0..* | Reference(DiagnosticReport | DocumentReference | Composition) | Any report resulting from the procedure | |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Procedure.status | required | EventStatushttp://hl7.org/fhir/ValueSet/event-status from the FHIR Standard | |
Procedure.code | extensible | USCoreProcedureCodeshttp://hl7.org/fhir/us/core/ValueSet/us-core-procedure-code |
Id | Grade | Path(s) | Details | Requirements |
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() | |
us-core-7 | error | Procedure | Performed SHALL be present if the status is 'completed' or 'in-progress' : (status='completed' or status='in-progress') implies performed.exists() |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Procedure | C | 0..* | USCoreProcedureProfile | An action that is being or was performed on a patient us-core-7: Performed SHALL be present if the status is 'completed' or 'in-progress' | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
resource-pertainsToGoal | S | 0..* | Reference(Goal) | The resource-pertainsToGoal relates the resource to the goal(s) that pertain to it. Whenever there is a goal associated with a health concern or problem, this extension should be present and populated in activity (event or intent) resources. URL: http://hl7.org/fhir/StructureDefinition/resource-pertainsToGoal | ||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | Σ | 0..* | Identifier | External Identifiers for this procedure | ||||
instantiatesCanonical | Σ | 0..* | canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) | Instantiates FHIR protocol or definition | ||||
instantiatesUri | Σ | 0..* | uri | Instantiates external protocol or definition | ||||
basedOn | Σ | 0..* | Reference(US Core CarePlan Profile | US Core ServiceRequest Profile) | (USCDI) A request for this procedure | ||||
partOf | Σ | 0..* | Reference(Procedure | Observation | MedicationAdministration) | Part of referenced event | ||||
status | ?!SΣC | 1..1 | code | (USCDI) preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required) | ||||
statusReason | Σ | 0..1 | CodeableConcept | Reason for current status Binding: ProcedureNotPerformedReason(SNOMED-CT) (example): A code that identifies the reason a procedure was not performed. | ||||
category | Σ | 0..1 | CodeableConcept | Classification of the procedure Binding: ProcedureCategoryCodes(SNOMEDCT) (example): A code that classifies a procedure for searching, sorting and display purposes. | ||||
code | SΣ | 1..1 | CodeableConcept | Please see the Procedure and Service Request Value Set Library for value sets that are subsets of US Core Procedure Codes that can be used at the Procedure.code element element Binding: US Core Procedure Codes (extensible): Codes describing the type of Procedure | ||||
subject | SΣ | 1..1 | Reference(US Core Patient Profile) | (USCDI) Who the procedure was performed on | ||||
encounter | Σ | 0..1 | Reference(Encounter) | Encounter created as part of | ||||
performed[x] | SΣC | 0..1 | (USCDI) When the procedure was performed | |||||
performedDateTime | dateTime S | |||||||
performedPeriod | Period | |||||||
performedString | string | |||||||
performedAge | Age | |||||||
performedRange | Range | |||||||
recorder | Σ | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) | Who recorded the procedure | ||||
asserter | Σ | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) | Person who asserts this procedure | ||||
performer | Σ | 0..* | BackboneElement | The people who performed the procedure | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
function | Σ | 0..1 | CodeableConcept | Type of performance Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure. | ||||
actor | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) | The reference to the practitioner | ||||
onBehalfOf | 0..1 | Reference(Organization) | Organization the device or practitioner was acting for | |||||
location | Σ | 0..1 | Reference(Location) | Where the procedure happened | ||||
reasonCode | Σ | 0..* | CodeableConcept | Coded reason procedure performed Binding: ProcedureReasonCodes (example): A code that identifies the reason a procedure is required. | ||||
reasonReference | SΣ | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | The procedure.reason.reference should be populated with the health concern or problem for which it is or was performed. | ||||
bodySite | Σ | 0..* | CodeableConcept | Target body sites Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | ||||
outcome | Σ | 0..1 | CodeableConcept | The result of procedure Binding: ProcedureOutcomeCodes(SNOMEDCT) (example): An outcome of a procedure - whether it was resolved or otherwise. | ||||
report | 0..* | Reference(DiagnosticReport | DocumentReference | Composition) | Any report resulting from the procedure | |||||
complication | 0..* | CodeableConcept | Complication following the procedure Binding: Condition/Problem/DiagnosisCodes (example): Codes describing complications that resulted from a procedure. | |||||
complicationDetail | 0..* | Reference(Condition) | A condition that is a result of the procedure | |||||
followUp | 0..* | CodeableConcept | Instructions for follow up Binding: ProcedureFollowUpCodes(SNOMEDCT) (example): Specific follow up required for a procedure e.g. removal of sutures. | |||||
note | 0..* | Annotation | Additional information about the procedure | |||||
focalDevice | 0..* | BackboneElement | Manipulated, implanted, or removed device | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
action | 0..1 | CodeableConcept | Kind of change to device Binding: ProcedureDeviceActionCodes (preferred): A kind of change that happened to the device during the procedure. | |||||
manipulated | 1..1 | Reference(Device) | Device that was changed | |||||
usedReference | 0..* | Reference(Device | Medication | Substance) | Items used during procedure | |||||
usedCode | 0..* | CodeableConcept | Coded items used during the procedure Binding: FHIRDeviceTypes (example): Codes describing items used during a procedure. | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
Procedure.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Procedure.status | required | EventStatushttp://hl7.org/fhir/ValueSet/event-status from the FHIR Standard | ||||
Procedure.statusReason | example | ProcedureNotPerformedReason(SNOMED-CT)http://hl7.org/fhir/ValueSet/procedure-not-performed-reason from the FHIR Standard | ||||
Procedure.category | example | ProcedureCategoryCodes(SNOMEDCT)http://hl7.org/fhir/ValueSet/procedure-category from the FHIR Standard | ||||
Procedure.code | extensible | USCoreProcedureCodeshttp://hl7.org/fhir/us/core/ValueSet/us-core-procedure-code | ||||
Procedure.performer.function | example | ProcedurePerformerRoleCodeshttp://hl7.org/fhir/ValueSet/performer-role from the FHIR Standard | ||||
Procedure.reasonCode | example | ProcedureReasonCodeshttp://hl7.org/fhir/ValueSet/procedure-reason from the FHIR Standard | ||||
Procedure.bodySite | example | SNOMEDCTBodyStructureshttp://hl7.org/fhir/ValueSet/body-site from the FHIR Standard | ||||
Procedure.outcome | example | ProcedureOutcomeCodes(SNOMEDCT)http://hl7.org/fhir/ValueSet/procedure-outcome from the FHIR Standard | ||||
Procedure.complication | example | Condition/Problem/DiagnosisCodeshttp://hl7.org/fhir/ValueSet/condition-code from the FHIR Standard | ||||
Procedure.followUp | example | ProcedureFollowUpCodes(SNOMEDCT)http://hl7.org/fhir/ValueSet/procedure-followup from the FHIR Standard | ||||
Procedure.focalDevice.action | preferred | ProcedureDeviceActionCodeshttp://hl7.org/fhir/ValueSet/device-action from the FHIR Standard | ||||
Procedure.usedCode | example | FHIRDeviceTypeshttp://hl7.org/fhir/ValueSet/device-kind from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
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() | |
us-core-7 | error | Procedure | Performed SHALL be present if the status is 'completed' or 'in-progress' : (status='completed' or status='in-progress') implies performed.exists() |
This structure is derived from USCoreProcedureProfile
Differential View
This structure is derived from USCoreProcedureProfile
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Procedure | 0..* | USCoreProcedureProfile | An action that is being or was performed on a patient | |
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
resource-pertainsToGoal | S | 0..* | Reference(Goal) | The resource-pertainsToGoal relates the resource to the goal(s) that pertain to it. Whenever there is a goal associated with a health concern or problem, this extension should be present and populated in activity (event or intent) resources. URL: http://hl7.org/fhir/StructureDefinition/resource-pertainsToGoal |
code | 1..1 | CodeableConcept | Please see the Procedure and Service Request Value Set Library for value sets that are subsets of US Core Procedure Codes that can be used at the Procedure.code element element | |
reasonReference | S | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | The procedure.reason.reference should be populated with the health concern or problem for which it is or was performed. |
report | 0..* | Reference(DiagnosticReport | DocumentReference | Composition) | Any report resulting from the procedure | |
Documentation for this format |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Procedure | C | 0..* | USCoreProcedureProfile | An action that is being or was performed on a patient us-core-7: Performed SHALL be present if the status is 'completed' or 'in-progress' |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
resource-pertainsToGoal | S | 0..* | Reference(Goal) | The resource-pertainsToGoal relates the resource to the goal(s) that pertain to it. Whenever there is a goal associated with a health concern or problem, this extension should be present and populated in activity (event or intent) resources. URL: http://hl7.org/fhir/StructureDefinition/resource-pertainsToGoal |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!SΣC | 1..1 | code | (USCDI) preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required) |
code | SΣ | 1..1 | CodeableConcept | Please see the Procedure and Service Request Value Set Library for value sets that are subsets of US Core Procedure Codes that can be used at the Procedure.code element element Binding: US Core Procedure Codes (extensible): Codes describing the type of Procedure |
subject | SΣ | 1..1 | Reference(US Core Patient Profile) | (USCDI) Who the procedure was performed on |
performed[x] | SΣC | 0..1 | (USCDI) When the procedure was performed | |
performedDateTime | dateTime | |||
reasonReference | SΣ | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | The procedure.reason.reference should be populated with the health concern or problem for which it is or was performed. |
report | 0..* | Reference(DiagnosticReport | DocumentReference | Composition) | Any report resulting from the procedure | |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Procedure.status | required | EventStatushttp://hl7.org/fhir/ValueSet/event-status from the FHIR Standard | |
Procedure.code | extensible | USCoreProcedureCodeshttp://hl7.org/fhir/us/core/ValueSet/us-core-procedure-code |
Id | Grade | Path(s) | Details | Requirements |
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() | |
us-core-7 | error | Procedure | Performed SHALL be present if the status is 'completed' or 'in-progress' : (status='completed' or status='in-progress') implies performed.exists() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Procedure | C | 0..* | USCoreProcedureProfile | An action that is being or was performed on a patient us-core-7: Performed SHALL be present if the status is 'completed' or 'in-progress' | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
resource-pertainsToGoal | S | 0..* | Reference(Goal) | The resource-pertainsToGoal relates the resource to the goal(s) that pertain to it. Whenever there is a goal associated with a health concern or problem, this extension should be present and populated in activity (event or intent) resources. URL: http://hl7.org/fhir/StructureDefinition/resource-pertainsToGoal | ||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | Σ | 0..* | Identifier | External Identifiers for this procedure | ||||
instantiatesCanonical | Σ | 0..* | canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) | Instantiates FHIR protocol or definition | ||||
instantiatesUri | Σ | 0..* | uri | Instantiates external protocol or definition | ||||
basedOn | Σ | 0..* | Reference(US Core CarePlan Profile | US Core ServiceRequest Profile) | (USCDI) A request for this procedure | ||||
partOf | Σ | 0..* | Reference(Procedure | Observation | MedicationAdministration) | Part of referenced event | ||||
status | ?!SΣC | 1..1 | code | (USCDI) preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required) | ||||
statusReason | Σ | 0..1 | CodeableConcept | Reason for current status Binding: ProcedureNotPerformedReason(SNOMED-CT) (example): A code that identifies the reason a procedure was not performed. | ||||
category | Σ | 0..1 | CodeableConcept | Classification of the procedure Binding: ProcedureCategoryCodes(SNOMEDCT) (example): A code that classifies a procedure for searching, sorting and display purposes. | ||||
code | SΣ | 1..1 | CodeableConcept | Please see the Procedure and Service Request Value Set Library for value sets that are subsets of US Core Procedure Codes that can be used at the Procedure.code element element Binding: US Core Procedure Codes (extensible): Codes describing the type of Procedure | ||||
subject | SΣ | 1..1 | Reference(US Core Patient Profile) | (USCDI) Who the procedure was performed on | ||||
encounter | Σ | 0..1 | Reference(Encounter) | Encounter created as part of | ||||
performed[x] | SΣC | 0..1 | (USCDI) When the procedure was performed | |||||
performedDateTime | dateTime S | |||||||
performedPeriod | Period | |||||||
performedString | string | |||||||
performedAge | Age | |||||||
performedRange | Range | |||||||
recorder | Σ | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) | Who recorded the procedure | ||||
asserter | Σ | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) | Person who asserts this procedure | ||||
performer | Σ | 0..* | BackboneElement | The people who performed the procedure | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
function | Σ | 0..1 | CodeableConcept | Type of performance Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure. | ||||
actor | Σ | 1..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) | The reference to the practitioner | ||||
onBehalfOf | 0..1 | Reference(Organization) | Organization the device or practitioner was acting for | |||||
location | Σ | 0..1 | Reference(Location) | Where the procedure happened | ||||
reasonCode | Σ | 0..* | CodeableConcept | Coded reason procedure performed Binding: ProcedureReasonCodes (example): A code that identifies the reason a procedure is required. | ||||
reasonReference | SΣ | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | The procedure.reason.reference should be populated with the health concern or problem for which it is or was performed. | ||||
bodySite | Σ | 0..* | CodeableConcept | Target body sites Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | ||||
outcome | Σ | 0..1 | CodeableConcept | The result of procedure Binding: ProcedureOutcomeCodes(SNOMEDCT) (example): An outcome of a procedure - whether it was resolved or otherwise. | ||||
report | 0..* | Reference(DiagnosticReport | DocumentReference | Composition) | Any report resulting from the procedure | |||||
complication | 0..* | CodeableConcept | Complication following the procedure Binding: Condition/Problem/DiagnosisCodes (example): Codes describing complications that resulted from a procedure. | |||||
complicationDetail | 0..* | Reference(Condition) | A condition that is a result of the procedure | |||||
followUp | 0..* | CodeableConcept | Instructions for follow up Binding: ProcedureFollowUpCodes(SNOMEDCT) (example): Specific follow up required for a procedure e.g. removal of sutures. | |||||
note | 0..* | Annotation | Additional information about the procedure | |||||
focalDevice | 0..* | BackboneElement | Manipulated, implanted, or removed device | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
action | 0..1 | CodeableConcept | Kind of change to device Binding: ProcedureDeviceActionCodes (preferred): A kind of change that happened to the device during the procedure. | |||||
manipulated | 1..1 | Reference(Device) | Device that was changed | |||||
usedReference | 0..* | Reference(Device | Medication | Substance) | Items used during procedure | |||||
usedCode | 0..* | CodeableConcept | Coded items used during the procedure Binding: FHIRDeviceTypes (example): Codes describing items used during a procedure. | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
Procedure.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Procedure.status | required | EventStatushttp://hl7.org/fhir/ValueSet/event-status from the FHIR Standard | ||||
Procedure.statusReason | example | ProcedureNotPerformedReason(SNOMED-CT)http://hl7.org/fhir/ValueSet/procedure-not-performed-reason from the FHIR Standard | ||||
Procedure.category | example | ProcedureCategoryCodes(SNOMEDCT)http://hl7.org/fhir/ValueSet/procedure-category from the FHIR Standard | ||||
Procedure.code | extensible | USCoreProcedureCodeshttp://hl7.org/fhir/us/core/ValueSet/us-core-procedure-code | ||||
Procedure.performer.function | example | ProcedurePerformerRoleCodeshttp://hl7.org/fhir/ValueSet/performer-role from the FHIR Standard | ||||
Procedure.reasonCode | example | ProcedureReasonCodeshttp://hl7.org/fhir/ValueSet/procedure-reason from the FHIR Standard | ||||
Procedure.bodySite | example | SNOMEDCTBodyStructureshttp://hl7.org/fhir/ValueSet/body-site from the FHIR Standard | ||||
Procedure.outcome | example | ProcedureOutcomeCodes(SNOMEDCT)http://hl7.org/fhir/ValueSet/procedure-outcome from the FHIR Standard | ||||
Procedure.complication | example | Condition/Problem/DiagnosisCodeshttp://hl7.org/fhir/ValueSet/condition-code from the FHIR Standard | ||||
Procedure.followUp | example | ProcedureFollowUpCodes(SNOMEDCT)http://hl7.org/fhir/ValueSet/procedure-followup from the FHIR Standard | ||||
Procedure.focalDevice.action | preferred | ProcedureDeviceActionCodeshttp://hl7.org/fhir/ValueSet/device-action from the FHIR Standard | ||||
Procedure.usedCode | example | FHIRDeviceTypeshttp://hl7.org/fhir/ValueSet/device-kind from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
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() | |
us-core-7 | error | Procedure | Performed SHALL be present if the status is 'completed' or 'in-progress' : (status='completed' or status='in-progress') implies performed.exists() |
This structure is derived from USCoreProcedureProfile
Other representations of profile: CSV, Excel, Schematron