## Profile Comparison between http://hl7.org/fhir/uv/ips/StructureDefinition/Procedure-uv-ips vs http://hl7.org/fhir/uv/ips/StructureDefinition/Procedure-uv-ips

Left: | Procedure (IPS) (http://hl7.org/fhir/uv/ips/StructureDefinition/Procedure-uv-ips)
Right: | Procedure (IPS) (http://hl7.org/fhir/uv/ips/StructureDefinition/Procedure-uv-ips)

### Messages

Error | StructureDefinition.version | Values for version differ: '2.0.0-ballot' vs '2.0.0'
Information | StructureDefinition.short | Values for short differ: 'Concept - reference to a terminology or just text' vs 'Identification of the procedure'
Information | StructureDefinition.short | Values for short differ: 'Concept - reference to a terminology or just text' vs 'Target body sites'
Information | StructureDefinition.definition | Values for definition differ: 'A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.' vs 'Detailed and structured anatomical location information. Multiple locations are allowed - e.g. multiple punch biopsies of a lesion.'
Information | StructureDefinition.comment | Values for comment differ: 'Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.' vs 'If the use case requires attributes from the BodySite resource (e.g. to identify and track separately) then use the standard extension [procedure-targetbodystructure](http://hl7.org/fhir/R4/extension-procedure-targetbodystructure.html).'

### Metadata

Name | Value | Comments
--- | --- | ---
abstract | false |
baseDefinition | http://hl7.org/fhir/StructureDefinition/Procedure |
copyright |  |
date | 2024-06-19T10:50:07-05:00 |
description | This profile represents the constraints applied to the Procedure resource by the IPS project, which specifies an entry of the History of Procedure for the international patient summary based on the FHIR standard R4. |
experimental |  |
fhirVersion | 4.0.1 |
jurisdiction |  |
jurisdiction[0] | http://unstats.un.org/unsd/methods/m49/m49.htm#001 |
kind | resource |
name | ProcedureUvIps |
publisher | HL7 International / Patient Care |
purpose |  |
status | active |
title | Procedure (IPS) |
type | Procedure |
url | http://hl7.org/fhir/uv/ips/StructureDefinition/Procedure-uv-ips |
version | 2.0.0-ballot | 2.0.0 | Values Differ

### Structure

Name | L Flags | L Card. | L Type | L Description & Constraints | R Flags | R Card. | R Type | R Description & Constraints | Comments
--- | --- | --- | --- | --- | --- | --- | --- | --- | ---
Procedure |  | 0..* | Procedure | An action that is being or was performed on a patient |  | 0..* | Procedure | An action that is being or was performed on a patient |
id | Σ | 0..1 | id | Logical id of this artifact | Σ | 0..1 | id | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language |  | 0..1 | code | Language of the resource content Binding: ?? (preferred): A human language.
Additional Bindings | Purpose
?? | Max Binding
|  | 0..1 | code | Language of the resource content Binding: ?? (preferred): A human language.
Additional Bindings | Purpose
?? | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements |
contained |  | 0..* | Resource | Contained, inline Resources |  | 0..* | Resource | Contained, inline Resources |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | External Identifiers for this procedure | Σ | 0..* | Identifier | External Identifiers for this procedure |
instantiatesCanonical | Σ | 0..* | canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) | Instantiates FHIR protocol or definition | Σ | 0..* | canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) | Instantiates FHIR protocol or definition |
instantiatesUri | Σ | 0..* | uri | Instantiates external protocol or definition | Σ | 0..* | uri | Instantiates external protocol or definition |
basedOn | Σ | 0..* | Reference(CarePlan | ServiceRequest) | A request for this procedure | Σ | 0..* | Reference(CarePlan | ServiceRequest) | A request for this procedure |
partOf | Σ | 0..* | Reference(Procedure | Observation | MedicationAdministration) | Part of referenced event | Σ | 0..* | Reference(Procedure | Observation | MedicationAdministration) | Part of referenced event |
status | ?!Σ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: ?? (required): A code specifying the state of the procedure. | ?!Σ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: ?? (required): A code specifying the state of the procedure. |
statusReason | Σ | 0..1 | CodeableConcept | Reason for current status Binding: ?? (example): A code that identifies the reason a procedure was not performed. | Σ | 0..1 | CodeableConcept | Reason for current status Binding: ?? (example): A code that identifies the reason a procedure was not performed. |
category | Σ | 0..1 | CodeableConcept | Classification of the procedure Binding: ?? (example): A code that classifies a procedure for searching, sorting and display purposes. | Σ | 0..1 | CodeableConcept | Classification of the procedure Binding: ?? (example): A code that classifies a procedure for searching, sorting and display purposes. |
code | S | 1..1 | ?? | Concept - reference to a terminology or just text Binding: ?? (preferred): SNOMED CT procedure code set or a code for absent/unknown procedure | SO Σ | 1..1 | ?? | Identification of the procedure Binding: ?? (preferred): SNOMED CT procedure code set or a code for absent/unknown procedure
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
subject | S Σ | 1..1 | Reference(Patient (IPS)) | Who the procedure was performed on | SO Σ | 1..1 | Reference(Patient (IPS)) | Who the procedure was performed on
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
reference | S Σ C | 1..1 | string | Literal reference, Relative, internal or absolute URL | SO Σ C | 1..1 | string | Literal reference, Relative, internal or absolute URL
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ?? (extensible): Aa resource (or, for logical models, the URI of the logical model). | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ?? (extensible): Aa resource (or, for logical models, the URI of the logical model). |
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known |
display | Σ | 0..1 | string | Text alternative for the resource | Σ | 0..1 | string | Text alternative for the resource |
encounter | Σ | 0..1 | Reference(Encounter) | Encounter created as part of | Σ | 0..1 | Reference(Encounter) | Encounter created as part of |
performed[x] | S Σ | 1..1 | dateTime, Period, string, Age, Range | When the procedure was performed | SO Σ | 1..1 | dateTime, Period, string, Age, Range | When the procedure was performed Slice: Unordered, Open by type:$this
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
id |  | 0..1 | string | Unique id for inter-element referencing |  |  |  |  | Removed this element
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |  |  |  |  | Removed this element
recorder | Σ | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) | Who recorded the procedure | Σ | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) | Who recorded the procedure |
asserter | Σ | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) | Person who asserts this procedure | Σ | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) | Person who asserts this procedure |
performer | Σ | 0..* | BackboneElement | The people who performed the procedure | Σ | 0..* | BackboneElement | The people who performed the procedure |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
function | Σ | 0..1 | CodeableConcept | Type of performance Binding: ?? (example): A code that identifies the role of a performer of the procedure. | Σ | 0..1 | CodeableConcept | Type of performance Binding: ?? (example): A code that identifies the role of a performer of the procedure. |
actor | Σ | 1..1 | Reference(Patient (IPS) | RelatedPerson | Device - performer, observer | Practitioner (IPS) | PractitionerRole (IPS) | Organization (IPS)) | The reference to the practitioner | Σ | 1..1 | Reference(Patient (IPS) | RelatedPerson | Device - Performer or Observer (IPS) | Practitioner (IPS) | PractitionerRole (IPS) | Organization (IPS)) | The reference to the practitioner |
onBehalfOf |  | 0..1 | Reference(Organization (IPS)) | Organization the device or practitioner was acting for |  | 0..1 | Reference(Organization (IPS)) | Organization the device or practitioner was acting for |
location | Σ | 0..1 | Reference(Location) | Where the procedure happened | Σ | 0..1 | Reference(Location) | Where the procedure happened |
reasonCode | Σ | 0..* | CodeableConcept | Coded reason procedure performed Binding: ?? (example): A code that identifies the reason a procedure is required. | Σ | 0..* | CodeableConcept | Coded reason procedure performed Binding: ?? (example): A code that identifies the reason a procedure is required. |
reasonReference | Σ | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | The justification that the procedure was performed | Σ | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | The justification that the procedure was performed |
bodySite |  | 0..* | ?? | Concept - reference to a terminology or just text Binding: ?? (example) | Σ | 0..* | CodeableConcept | Target body sites Binding: ?? (preferred) |
outcome | Σ | 0..1 | CodeableConcept | The result of procedure Binding: ?? (example): An outcome of a procedure - whether it was resolved or otherwise. | Σ | 0..1 | CodeableConcept | The result of procedure Binding: ?? (example): An outcome of a procedure - whether it was resolved or otherwise. |
report |  | 0..* | Reference(DiagnosticReport | DocumentReference | Composition) | Any report resulting from the procedure |  | 0..* | Reference(DiagnosticReport | DocumentReference | Composition) | Any report resulting from the procedure |
complication |  | 0..* | CodeableConcept | Complication following the procedure Binding: ?? (example): Codes describing complications that resulted from a procedure. |  | 0..* | CodeableConcept | Complication following the procedure Binding: ?? (example): Codes describing complications that resulted from a procedure. |
complicationDetail |  | 0..* | Reference(Condition) | A condition that is a result of the procedure |  | 0..* | Reference(Condition) | A condition that is a result of the procedure |
followUp |  | 0..* | CodeableConcept | Instructions for follow up Binding: ?? (example): Specific follow up required for a procedure e.g. removal of sutures. |  | 0..* | CodeableConcept | Instructions for follow up Binding: ?? (example): Specific follow up required for a procedure e.g. removal of sutures. |
note |  | 0..* | Annotation | Additional information about the procedure |  | 0..* | Annotation | Additional information about the procedure |
focalDevice |  | 0..* | BackboneElement | Manipulated, implanted, or removed device |  | 0..* | BackboneElement | Manipulated, implanted, or removed device |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
action |  | 0..1 | CodeableConcept | Kind of change to device Binding: ?? (preferred): A kind of change that happened to the device during the procedure. |  | 0..1 | CodeableConcept | Kind of change to device Binding: ?? (preferred): A kind of change that happened to the device during the procedure. |
manipulated |  | 1..1 | Reference(Device) | Device that was changed |  | 1..1 | Reference(Device) | Device that was changed |
usedReference |  | 0..* | Reference(Device | Medication | Substance) | Items used during procedure |  | 0..* | Reference(Device | Medication | Substance) | Items used during procedure |
usedCode |  | 0..* | CodeableConcept | Coded items used during the procedure Binding: ?? (example): Codes describing items used during a procedure. |  | 0..* | CodeableConcept | Coded items used during the procedure Binding: ?? (example): Codes describing items used during a procedure. |
Documentation for this format