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

Left: | Procedure (IPS) (http://hl7.org/fhir/uv/ips/StructureDefinition/Procedure-uv-ips)
Right: | AU PS Procedure (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-procedure)

### Messages

Error | StructureDefinition.url | Values for url differ: 'http://hl7.org/fhir/uv/ips/StructureDefinition/Procedure-uv-ips' vs 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-procedure'
Error | StructureDefinition.version | Values for version differ: '2.0.0' vs '0.5.0-preview'
Information | StructureDefinition.name | Values for name differ: 'ProcedureUvIps' vs 'AUPSProcedure'
Information | StructureDefinition.title | Values for title differ: 'Procedure (IPS)' vs 'AU PS Procedure'
Information | StructureDefinition.date | Values for date differ: '2024-06-19T10:50:07-05:00' vs '2025-12-03T03:25:00+00:00'
Information | StructureDefinition.publisher | Values for publisher differ: 'HL7 International / Patient Care' vs 'HL7 Australia'
Information | StructureDefinition.jurisdiction | Removed the item 'http://unstats.un.org/unsd/methods/m49/m49.htm#001'
Information | StructureDefinition.jurisdiction | Added the item 'urn:iso:std:iso:3166#AU'
Error | StructureDefinition.baseDefinition | Values for baseDefinition differ: 'http://hl7.org/fhir/StructureDefinition/Procedure' vs 'http://hl7.org.au/fhir/core/StructureDefinition/au-core-procedure'
Information | StructureDefinition.short | Values for short differ: 'An action that is being or was performed on a patient' vs 'A procedure in an Australian healthcare context'
Information | StructureDefinition.short | Values for short differ: 'Additional content defined by implementations' vs 'Extension'
Information | StructureDefinition.definition | Values for definition differ: '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.' vs 'An Extension'
Warning | Procedure.status | Elements differ in definition for mustSupport: 'false' vs 'true'
Information | StructureDefinition.definition | Values for definition differ: 'Identification of the procedure or recording of 'absence of relevant procedures' or of 'procedures unknown'.' vs 'The specific procedure that is performed. Use text if the exact nature of the procedure cannot be coded (e.g. 'Laparoscopic Appendectomy').'
Information | StructureDefinition.definition | Values for definition differ: 'The person on which the procedure was performed.' vs 'The person, animal or group on which the procedure was performed.'
Warning | Procedure.encounter | Elements differ in definition for mustSupport: 'false' vs 'true'
Warning | Procedure.reasonCode | Elements differ in definition for mustSupport: 'false' vs 'true'
Warning | Procedure.reasonReference | Elements differ in definition for mustSupport: 'false' vs 'true'

### Metadata

Name | Value | Comments
--- | --- | ---
abstract | false |
baseDefinition | http://hl7.org/fhir/StructureDefinition/Procedure | http://hl7.org.au/fhir/core/StructureDefinition/au-core-procedure | Values Differ
copyright |  | Used by permission of HL7 International, all rights reserved Creative Commons License. HL7 Australia© 2022+; Licensed Under Creative Commons No Rights Reserved. | Added the item 'Used by permission of HL7 International, all rights reserved Creative Commons License. HL7 Australia© 2022+; Licensed Under Creative Commons No Rights Reserved.'
date | 2024-06-19T10:50:07-05:00 | 2025-12-03T03:25:00+00:00 | Values Differ
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. | This profile sets minimum expectations for a Procedure resource in the context of a patient summary in an Australian context. It is based on the [AU Core Procedure](https://build.fhir.org/ig/hl7au/au-fhir-core/StructureDefinition-au-core-procedure.html) profile, and applies the additional requirements from [Procedure (IPS)](http://hl7.org/fhir/uv/ips/StructureDefinition/Procedure-uv-ips). | Values Differ
experimental |  |
fhirVersion | 4.0.1 |
jurisdiction |  |
jurisdiction[0] | http://unstats.un.org/unsd/methods/m49/m49.htm#001 |  | Removed the item 'http://unstats.un.org/unsd/methods/m49/m49.htm#001'
jurisdiction[1] |  | urn:iso:std:iso:3166#AU | Added the item 'urn:iso:std:iso:3166#AU'
kind | resource |
name | ProcedureUvIps | AUPSProcedure | Values Differ
publisher | HL7 International / Patient Care | HL7 Australia | Values Differ
purpose |  |
status | active |
title | Procedure (IPS) | AU PS Procedure | Values Differ
type | Procedure |
url | http://hl7.org/fhir/uv/ips/StructureDefinition/Procedure-uv-ips | http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-procedure | Values Differ
version | 2.0.0 | 0.5.0-preview | 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..* | AUCoreProcedure | A procedure in an Australian healthcare context This profile also complies with the profile Procedure (IPS) |
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 | Extension Slice: Unordered, Open by value:url |
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. | ?!SO Σ | 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.
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
SHALL:populate-if-known | AU PS Producer |
SHALL:handle | AU PS Consumer |
SHOULD:display | AU PS Consumer |
| Elements differ in definition for mustSupport: 'false' vs 'true'
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 | 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)
| SO Σ | 1..1 | ?? | Identification of the procedure Binding: ?? (extensible)
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
SHALL:populate | AU PS Producer |
SHALL:handle | AU PS Consumer |
SHOULD:display | AU PS Consumer |
subject | 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)
| SO Σ | 1..1 | Reference(AU PS Patient) | Who the procedure was performed on
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
SHALL:populate | AU PS Producer |
SHALL:handle | AU PS Consumer |
SHOULD:display | AU PS Consumer |
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 | SO Σ C | 1..1 | string | Literal reference, Relative, internal or absolute URL
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
| SO Σ C | 1..1 | string | Literal reference, Relative, internal or absolute URL
Obligations | Actor
SHALL:populate | AU PS Producer
SHALL:handle | AU PS Consumer
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 | SO Σ | 0..1 | Reference(AU PS Encounter) | Encounter created as part of
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
SHALL:populate-if-known | AU PS Producer |
SHALL:handle | AU PS Consumer |
SHOULD:display | AU PS Consumer |
| Elements differ in definition for mustSupport: 'false' vs 'true'
Slices for performed[x] | 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)
| SO Σ | 1..1 | dateTime S, Period, string, Age, Range | When the procedure was performed
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
SHALL:populate-if-known | AU PS Producer |
SHALL:handle | AU PS Consumer |
SHOULD:display | AU PS Consumer |
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 or Observer (IPS) | Practitioner (IPS) | PractitionerRole (IPS) | Organization (IPS)) | The reference to the practitioner | Σ | 1..1 | Reference(AU PS Patient | AU PS RelatedPerson | Device - Performer or Observer (IPS) | AU PS Practitioner | AU PS PractitionerRole | AU PS Organization) | The reference to the practitioner |
onBehalfOf |  | 0..1 | Reference(Organization (IPS)) | Organization the device or practitioner was acting for |  | 0..1 | Reference(AU PS Organization) | 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. | SO Σ | 0..* | ?? | Coded reason procedure performed Binding: ?? (example): A code that identifies the reason a procedure is required.
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
SHALL:populate-if-known | AU PS Producer |
SHALL:handle | AU PS Consumer |
SHOULD:display | AU PS Consumer |
| Elements differ in definition for mustSupport: 'false' vs 'true'
reasonReference | Σ | 0..* | Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) | The justification that the procedure was performed | SO Σ | 0..* | Reference(AU PS Condition | Observation | AU PS Procedure | DocumentReference) | The justification that the procedure was performed
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
SHALL:populate-if-known | AU PS Producer |
SHALL:handle | AU PS Consumer |
SHOULD:display | AU PS Consumer |
| Elements differ in definition for mustSupport: 'false' vs 'true'
bodySite | Σ | 0..* | CodeableConcept | Target body sites Binding: ?? (preferred) | Σ C | 0..* | CodeableConcept | Target body sites Binding: ?? (extensible) |
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