IE (Ireland) Core Implementation Guide
1.0.0-ballot - Ballot
Publication Build: This will be filled in by the publication tooling
Official URL: http://iehr.ai/fhir/ie/core/StructureDefinition/ie-core-procedure | Version: 1.0.0-ballot | |||
Standards status: Trial-use | Maturity Level: 3 | Computable Name: IECoreProcedureProfile | ||
Other Identifiers: OID:1.3.6.1.4.1.54392.5.2690.42.49 | ||||
Copyright/Legal: iEHR.ai, all rights reserved Creative Commons License |
The IE Core Procedure Profile inherits from the FHIR Procedure resource; refer to it for scope and usage definitions. This profile meets the requirements of the iEHR IE Core Data for Interoperability (IECDI) Procedures Data Class. It sets minimum expectations for the Procedure resource to record, search, and fetch procedure information associated with a patient. It specifies which core elements, extensions, vocabularies, and value sets SHALL be present and constrains how the elements are used. Providing the floor for standards development for specific use cases promotes interoperability and adoption.
Example Usage Scenarios:
The following are example usage scenarios for this profile:
The following data elements must always be present (Mandatory definition) or must be supported if the data is present in the sending system (Must Support definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Views below provides the formal summary, definitions, and terminology requirements.
Each Procedure Must Have:
Each Procedure Must Support:
Additional IECDI Requirements:
This Additional IECDI Requirements element is not Mandatory or Must Support but is required for certification testing and is included in the formal definition of the profile and the Procedure examples.
*see guidance below
Profile Specific Implementation Guidance:
Procedure.code
is mandatory if Procedure.status
is 'completed' or 'in-progress'.Procedure.code
has an additional binding of "current" and a base "preferred" binding.
Procedure.focalDevice
referencing the IE Core Implantable Device Profile.See the Screening and Assessments guidance page for more information when exchanging Social Determinants of Health (SDOH) Procedures
Procedure.basedOn
linking the Procedure to the IE Core ServiceRequest Profile that includes either ServiceRequest.reasonCode
or ServiceRequest.reasonReference
. When the Procedure does not have an associated ServiceRequest, it is communicated through the IE Core Procedure Profile's Procedure.reasonCode
or Procedure.reasonReference
. Depending on the procedure being documented, a server will select the appropriate Profile to use.
Procedure.reasonCode
and Procedure.reasonReference
are marked as Additional IECDI Requirements, the certifying server system is not required to support both, but SHALL support at least one of these elements. The certifying client application SHALL support both elements.
Procedure.reasonReference
:
Procedure.reasonReference
. Clients SHALL support all target resources in Procedure.reasonReference
.Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from Procedure
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Procedure | C | 0..* | Procedure | An action that is being or was performed on a patient ie-core-7: Performed SHALL be present if the status is 'completed' or 'in-progress' | ||||
basedOn | 0..* | Reference(IE Core CarePlan Profile | IE Core ServiceRequest Profile) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: A request for this procedure | |||||
status | SC | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required) | ||||
code | S | 1..1 | CodeableConcept | Identification of the procedure Binding: IE Core Procedure Codes (preferred): Codes describing the type of Procedure
| ||||
subject | S | 1..1 | Reference(IE Core Patient Profile S | Group) | Who the procedure was performed on | ||||
encounter | S | 0..1 | Reference(IE Core Encounter Profile) | Encounter associated with the procedure | ||||
performed[x] | SC | 0..1 | When the procedure was performed | |||||
performedDateTime | dateTime S | |||||||
performedPeriod | Period | |||||||
performedString | string | |||||||
performedAge | Age | |||||||
performedRange | Range | |||||||
performer | 0..* | BackboneElement | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: The people who performed the procedure | |||||
actor | 1..1 | Reference(IE Core Practitioner Profile | IE Core PractitionerRole Profile | IE Core Organization Profile | IE Core Patient Profile | IE Core RelatedPerson Profile | Device) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: The reference to the practitioner | |||||
reasonCode | 0..* | CodeableConcept | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: Coded reason procedure performed Binding: IE Core Condition Codes (extensible) | |||||
reasonReference | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: IE Core Profile justifying the reason procedure performed | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI |
Procedure.status | required | EventStatushttp://hl7.org/fhir/ValueSet/event-status from the FHIR Standard | |
Procedure.code | preferred | IECoreProcedureCodeshttp://iehr.ai/fhir/ie/core/ValueSet/ie-core-procedure-code from this IG | |
Procedure.reasonCode | extensible | IECoreConditionCodeshttp://iehr.ai/fhir/ie/core/ValueSet/ie-core-condition-code from this IG |
Id | Grade | Path(s) | Details | Requirements |
ie-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..* | Procedure | An action that is being or was performed on a patient ie-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 | ||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
basedOn | Σ | 0..* | Reference(IE Core CarePlan Profile | IE Core ServiceRequest Profile) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: A request for this procedure | ||||
status | ?!SΣC | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required) | ||||
code | SΣ | 1..1 | CodeableConcept | Identification of the procedure Binding: IE Core Procedure Codes (preferred): Codes describing the type of Procedure
| ||||
subject | SΣ | 1..1 | Reference(IE Core Patient Profile) | Who the procedure was performed on | ||||
encounter | SΣ | 0..1 | Reference(IE Core Encounter Profile) | Encounter associated with the procedure | ||||
performed[x] | SΣC | 0..1 | When the procedure was performed | |||||
performedDateTime | dateTime | |||||||
performer | Σ | 0..* | BackboneElement | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: The people who performed the procedure | ||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
actor | Σ | 1..1 | Reference(IE Core Practitioner Profile) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: The reference to the practitioner | ||||
reasonCode | Σ | 0..* | CodeableConcept | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: Coded reason procedure performed Binding: IE Core Condition Codes (extensible) | ||||
reasonReference | Σ | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: IE Core Profile justifying the reason procedure performed | ||||
Documentation for this format |
Path | Conformance | ValueSet | URI |
Procedure.status | required | EventStatushttp://hl7.org/fhir/ValueSet/event-status from the FHIR Standard | |
Procedure.code | preferred | IECoreProcedureCodeshttp://iehr.ai/fhir/ie/core/ValueSet/ie-core-procedure-code from this IG | |
Procedure.reasonCode | extensible | IECoreConditionCodeshttp://iehr.ai/fhir/ie/core/ValueSet/ie-core-condition-code from this IG |
Id | Grade | Path(s) | Details | Requirements |
ie-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..* | Procedure | An action that is being or was performed on a patient ie-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 | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
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(IE Core CarePlan Profile | IE Core ServiceRequest Profile) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: A request for this procedure | ||||
partOf | Σ | 0..* | Reference(Procedure | Observation | MedicationAdministration) | Part of referenced event | ||||
status | ?!SΣC | 1..1 | code | 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 | Identification of the procedure Binding: IE Core Procedure Codes (preferred): Codes describing the type of Procedure
| ||||
subject | SΣ | 1..1 | Reference(IE Core Patient Profile S | Group) | Who the procedure was performed on | ||||
encounter | SΣ | 0..1 | Reference(IE Core Encounter Profile) | Encounter associated with the procedure | ||||
performed[x] | SΣC | 0..1 | 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(IE Core Practitioner Profile | IE Core PractitionerRole Profile | IE Core Organization Profile | IE Core Patient Profile | IE Core RelatedPerson Profile | 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: IE Core Condition Codes (extensible) | ||||
reasonReference | Σ | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: IE Core Profile justifying the reason procedure 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 | preferred | IECoreProcedureCodeshttp://iehr.ai/fhir/ie/core/ValueSet/ie-core-procedure-code from this IG | ||||
Procedure.performer.function | example | ProcedurePerformerRoleCodeshttp://hl7.org/fhir/ValueSet/performer-role from the FHIR Standard | ||||
Procedure.reasonCode | extensible | IECoreConditionCodeshttp://iehr.ai/fhir/ie/core/ValueSet/ie-core-condition-code from this IG | ||||
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 |
ie-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 Procedure
Summary
Mandatory: 1 element
Must-Support: 5 elements
Structures
This structure refers to these other structures:
Maturity: 3
Differential View
This structure is derived from Procedure
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Procedure | C | 0..* | Procedure | An action that is being or was performed on a patient ie-core-7: Performed SHALL be present if the status is 'completed' or 'in-progress' | ||||
basedOn | 0..* | Reference(IE Core CarePlan Profile | IE Core ServiceRequest Profile) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: A request for this procedure | |||||
status | SC | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required) | ||||
code | S | 1..1 | CodeableConcept | Identification of the procedure Binding: IE Core Procedure Codes (preferred): Codes describing the type of Procedure
| ||||
subject | S | 1..1 | Reference(IE Core Patient Profile S | Group) | Who the procedure was performed on | ||||
encounter | S | 0..1 | Reference(IE Core Encounter Profile) | Encounter associated with the procedure | ||||
performed[x] | SC | 0..1 | When the procedure was performed | |||||
performedDateTime | dateTime S | |||||||
performedPeriod | Period | |||||||
performedString | string | |||||||
performedAge | Age | |||||||
performedRange | Range | |||||||
performer | 0..* | BackboneElement | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: The people who performed the procedure | |||||
actor | 1..1 | Reference(IE Core Practitioner Profile | IE Core PractitionerRole Profile | IE Core Organization Profile | IE Core Patient Profile | IE Core RelatedPerson Profile | Device) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: The reference to the practitioner | |||||
reasonCode | 0..* | CodeableConcept | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: Coded reason procedure performed Binding: IE Core Condition Codes (extensible) | |||||
reasonReference | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: IE Core Profile justifying the reason procedure performed | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI |
Procedure.status | required | EventStatushttp://hl7.org/fhir/ValueSet/event-status from the FHIR Standard | |
Procedure.code | preferred | IECoreProcedureCodeshttp://iehr.ai/fhir/ie/core/ValueSet/ie-core-procedure-code from this IG | |
Procedure.reasonCode | extensible | IECoreConditionCodeshttp://iehr.ai/fhir/ie/core/ValueSet/ie-core-condition-code from this IG |
Id | Grade | Path(s) | Details | Requirements |
ie-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() |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Procedure | C | 0..* | Procedure | An action that is being or was performed on a patient ie-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 | ||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
basedOn | Σ | 0..* | Reference(IE Core CarePlan Profile | IE Core ServiceRequest Profile) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: A request for this procedure | ||||
status | ?!SΣC | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required) | ||||
code | SΣ | 1..1 | CodeableConcept | Identification of the procedure Binding: IE Core Procedure Codes (preferred): Codes describing the type of Procedure
| ||||
subject | SΣ | 1..1 | Reference(IE Core Patient Profile) | Who the procedure was performed on | ||||
encounter | SΣ | 0..1 | Reference(IE Core Encounter Profile) | Encounter associated with the procedure | ||||
performed[x] | SΣC | 0..1 | When the procedure was performed | |||||
performedDateTime | dateTime | |||||||
performer | Σ | 0..* | BackboneElement | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: The people who performed the procedure | ||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
actor | Σ | 1..1 | Reference(IE Core Practitioner Profile) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: The reference to the practitioner | ||||
reasonCode | Σ | 0..* | CodeableConcept | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: Coded reason procedure performed Binding: IE Core Condition Codes (extensible) | ||||
reasonReference | Σ | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: IE Core Profile justifying the reason procedure performed | ||||
Documentation for this format |
Path | Conformance | ValueSet | URI |
Procedure.status | required | EventStatushttp://hl7.org/fhir/ValueSet/event-status from the FHIR Standard | |
Procedure.code | preferred | IECoreProcedureCodeshttp://iehr.ai/fhir/ie/core/ValueSet/ie-core-procedure-code from this IG | |
Procedure.reasonCode | extensible | IECoreConditionCodeshttp://iehr.ai/fhir/ie/core/ValueSet/ie-core-condition-code from this IG |
Id | Grade | Path(s) | Details | Requirements |
ie-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..* | Procedure | An action that is being or was performed on a patient ie-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 | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
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(IE Core CarePlan Profile | IE Core ServiceRequest Profile) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: A request for this procedure | ||||
partOf | Σ | 0..* | Reference(Procedure | Observation | MedicationAdministration) | Part of referenced event | ||||
status | ?!SΣC | 1..1 | code | 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 | Identification of the procedure Binding: IE Core Procedure Codes (preferred): Codes describing the type of Procedure
| ||||
subject | SΣ | 1..1 | Reference(IE Core Patient Profile S | Group) | Who the procedure was performed on | ||||
encounter | SΣ | 0..1 | Reference(IE Core Encounter Profile) | Encounter associated with the procedure | ||||
performed[x] | SΣC | 0..1 | 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(IE Core Practitioner Profile | IE Core PractitionerRole Profile | IE Core Organization Profile | IE Core Patient Profile | IE Core RelatedPerson Profile | 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: IE Core Condition Codes (extensible) | ||||
reasonReference | Σ | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗜𝗘𝗖𝗗𝗜: IE Core Profile justifying the reason procedure 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 | preferred | IECoreProcedureCodeshttp://iehr.ai/fhir/ie/core/ValueSet/ie-core-procedure-code from this IG | ||||
Procedure.performer.function | example | ProcedurePerformerRoleCodeshttp://hl7.org/fhir/ValueSet/performer-role from the FHIR Standard | ||||
Procedure.reasonCode | extensible | IECoreConditionCodeshttp://iehr.ai/fhir/ie/core/ValueSet/ie-core-condition-code from this IG | ||||
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 |
ie-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 Procedure
Summary
Mandatory: 1 element
Must-Support: 5 elements
Structures
This structure refers to these other structures:
Maturity: 3
Other representations of profile: CSV, Excel, Schematron
Below is an overview of the required Server RESTful FHIR interactions for this profile - for example, search and read operations - when supporting the IE Core interactions to access this profile's information (Profile Support + Interaction Support). Note that systems that support only IE Core Profiles (Profile Only Support) are not required to support these interactions. See the IE Core Server CapabilityStatement for a complete list of supported RESTful interactions for this IG.
Servers providing access to procedure data SHALL support these IE Core SMART Scopes:
<patient|user|system>/Procedure.rs
The following search parameters and search parameter combinations SHALL be supported:
SHALL support searching for all procedures for a patient using the patient
search parameter:
GET [base]/Procedure?patient={Type/}[id]
Example:
Implementation Notes: Fetches a bundle of all Procedure resources for the specified patient (how to search by reference)
SHALL support searching using the combination of the patient
and date
search parameters:
date
comparators: gt,lt,ge,le
date
(e.g.date=[date]&date=[date]]&...
)GET [base]/Procedure?patient={Type/}[id]&date={gt|lt|ge|le}[date]{&date={gt|lt|ge|le}[date]&...}
Example:
Implementation Notes: Fetches a bundle of all Procedure resources for the specified patient and date (how to search by reference and how to search by token)
The following search parameter combinations SHOULD be supported:
patient
and status
search parameters:
status
(e.g.status={system|}[code],{system|}[code],...
)GET [base]/Procedure?patient={Type/}[id]&status={system|}[code]{,{system|}[code],...}
Example:
Implementation Notes: Fetches a bundle of all Procedure resources for the specified patient and status (how to search by reference and how to search by token)
patient
and code
and date
search parameters:
code
(e.g.code={system|}[code],{system|}[code],...
)date
comparators: gt,lt,ge,le
date
(e.g.date=[date]&date=[date]]&...
)GET [base]/Procedure?patient={Type/}[id]&code={system|}[code]{,{system|}[code],...}&date={gt|lt|ge|le}[date]{&date={gt|lt|ge|le}[date]&...}
Example:
Implementation Notes: Fetches a bundle of all Procedure resources for the specified patient and date and procedure code(s). SHOULD support search by multiple codes. (how to search by reference and how to search by token and how to search by date)