AU Patient Summary Implementation Guide
0.2.0-preview - Preview

AU Patient Summary Implementation Guide - Local Development build (v0.2.0-preview) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

## Resource Profile: AU PS Procedure

Official URL: http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-procedure | Version: 0.2.0-preview
Standards status: Draft | Maturity Level: 0 | Computable Name: AUPSProcedure
Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License. HL7 Australia© 2022+; Licensed Under Creative Commons No Rights Reserved.

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 profile, and applies the additional requirements from Procedure (IPS).

See Comparison with other national and international IGs for a comparison between AU Patient Summary profiles and profiles in other implementation guides.

### Profile specific implementation guidance

- See the guidance on implementing the Procedure resource in AU Core.

Usages:

- Use this Profile: AU PS Bundle
- Refer to this Profile: AU PS Composition, AU PS Encounter and AU PS Procedure

### Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

- Differential Table
- Key Elements Table
- Snapshot Table
- Statistics/References
- All

This structure is derived from AUCoreProcedure

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Procedure |  | 0..* | AUCoreProcedure | A procedure in an Australian healthcare context This profile also complies with the profile Procedure (IPS)
code |  | 1..1 | CodeableConceptIPS | Identification of the procedure
subject |  | 1..1 | Reference(AU PS Patient) | Who the procedure was performed on
reference | S | 1..1 | string | Literal reference, Relative, internal or absolute URL
encounter |  | 0..1 | Reference(AU PS Encounter) | Encounter created as part of
performed[x] |  | 1..1 | dateTime, Period, string, Age, Range | When the procedure was performed
performer |  |  |  |
actor |  | 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(AU PS Organization) | Organization the device or practitioner was acting for
reasonReference |  | 0..* | Reference(AU PS Condition | Observation | AU PS Procedure | DocumentReference) | The justification that the procedure was performed
bodySite |  | 0..* | CodeableConceptIPS | Target body sites
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Procedure |  | 0..* | AUCoreProcedure | A procedure in an Australian healthcare context This profile also complies with the profile Procedure (IPS)
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
Slices for extension |  |  |  | Content/Rules for all slices
extension:targetBodyStructure |  | 0..* | Reference(BodyStructure) | The target point for this procedure URL: http://hl7.org/fhir/StructureDefinition/procedure-targetBodyStructure
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!SO Σ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): A code specifying the state of the procedure.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
code | SO Σ | 1..1 | CodeableConceptIPS | Identification of the procedure Binding: Procedure (extensible)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
subject | SO Σ | 1..1 | Reference(AU PS Patient) | Who the procedure was performed on
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
reference | S Σ C | 1..1 | string | Literal reference, Relative, internal or absolute URL
encounter | SO Σ | 0..1 | Reference(AU PS Encounter) | Encounter created as part of
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
performed[x] | SO Σ | 1..1 |  | When the procedure was performed
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
performedDateTime |  |  | dateTime |
performedPeriod |  |  | Period |
performedString |  |  | string |
performedAge |  |  | Age |
performedRange |  |  | Range |
reasonCode | SO Σ | 0..* | CodeableConcept | Coded reason procedure performed Binding: ProcedureReasonCodes (example): A code that identifies the reason a procedure is required.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
reasonReference | SO Σ | 0..* | Reference(AU PS Condition | Observation | AU PS Procedure | DocumentReference) | The justification that the procedure was performed
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
bodySite | Σ C | 0..* | CodeableConceptIPS | Target body sites Binding: Body Site (extensible) Constraints: au-core-pro-01
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet | URI
Procedure.status | required | EventStatus `http://hl7.org/fhir/ValueSet/event-status|4.0.1` From the FHIR Standard
Procedure.code | extensible | Procedure `https://healthterminologies.gov.au/fhir/ValueSet/procedure-1` From https://tx.ontoserver.csiro.au/fhir
Procedure.reasonCode | example | ProcedureReasonCodes `http://hl7.org/fhir/ValueSet/procedure-reason` From the FHIR Standard
Procedure.bodySite | extensible | BodySite `https://healthterminologies.gov.au/fhir/ValueSet/body-site-1` From https://tx.ontoserver.csiro.au/fhir

#### Constraints

Id | Grade | Path(s) | Details | Requirements
au-core-pro-01 | error | Procedure.bodySite | If a coded body site is provided, at least one coding shall be from SNOMED CT : coding.exists() implies coding.where(system='http://snomed.info/sct').exists() |
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() |

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Procedure |  | 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
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.
Additional Bindings | Purpose
AllLanguages | 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
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:targetBodyStructure |  | 0..* | Reference(BodyStructure) | The target point for this procedure URL: http://hl7.org/fhir/StructureDefinition/procedure-targetBodyStructure
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(CarePlan | ServiceRequest) | A request for this procedure
partOf | Σ | 0..* | Reference(Procedure | Observation | MedicationAdministration) | Part of referenced event
status | ?!SO Σ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): A code specifying the state of the procedure.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
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 | SO Σ | 1..1 | CodeableConceptIPS | Identification of the procedure Binding: Procedure (extensible)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
subject | SO Σ | 1..1 | Reference(AU PS Patient) | Who the procedure was performed on
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 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
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (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
display | Σ | 0..1 | string | Text alternative for the resource
encounter | SO Σ | 0..1 | Reference(AU PS Encounter) | Encounter created as part of
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
performed[x] | SO Σ | 1..1 |  | When the procedure was performed
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
performedDateTime |  |  | dateTime |
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(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(AU PS Organization) | Organization the device or practitioner was acting for
location | Σ | 0..1 | Reference(Location) | Where the procedure happened
reasonCode | SO Σ | 0..* | CodeableConcept | Coded reason procedure performed Binding: ProcedureReasonCodes (example): A code that identifies the reason a procedure is required.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
reasonReference | SO Σ | 0..* | Reference(AU PS Condition | Observation | AU PS Procedure | DocumentReference) | The justification that the procedure was performed
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
bodySite | Σ C | 0..* | CodeableConceptIPS | Target body sites Binding: Body Site (extensible) Constraints: au-core-pro-01
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

#### Terminology Bindings

Path | Conformance | ValueSet | URI
Procedure.language | preferred | CommonLanguages `http://hl7.org/fhir/ValueSet/languages` From the FHIR Standard
Additional Bindings | Purpose
AllLanguages | Max Binding
Procedure.status | required | EventStatus `http://hl7.org/fhir/ValueSet/event-status|4.0.1` 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 | Procedure `https://healthterminologies.gov.au/fhir/ValueSet/procedure-1` From https://tx.ontoserver.csiro.au/fhir
Procedure.subject.type | extensible | ResourceType `http://hl7.org/fhir/ValueSet/resource-types` From the FHIR Standard
Procedure.performer.function | example | ProcedurePerformerRoleCodes `http://hl7.org/fhir/ValueSet/performer-role` From the FHIR Standard
Procedure.reasonCode | example | ProcedureReasonCodes `http://hl7.org/fhir/ValueSet/procedure-reason` From the FHIR Standard
Procedure.bodySite | extensible | BodySite `https://healthterminologies.gov.au/fhir/ValueSet/body-site-1` From https://tx.ontoserver.csiro.au/fhir
Procedure.outcome | example | ProcedureOutcomeCodes(SNOMEDCT) `http://hl7.org/fhir/ValueSet/procedure-outcome` From the FHIR Standard
Procedure.complication | example | Condition/Problem/DiagnosisCodes `http://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 | ProcedureDeviceActionCodes `http://hl7.org/fhir/ValueSet/device-action` From the FHIR Standard
Procedure.usedCode | example | FHIRDeviceTypes `http://hl7.org/fhir/ValueSet/device-kind` From the FHIR Standard

#### Constraints

Id | Grade | Path(s) | Details | Requirements
au-core-pro-01 | error | Procedure.bodySite | If a coded body site is provided, at least one coding shall be from SNOMED CT : coding.exists() implies coding.where(system='http://snomed.info/sct').exists() |
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() |

This structure is derived from AUCoreProcedure

Summary

Mandatory: 2 elements
Must-Support: 1 element

Structures

This structure refers to these other structures:

- Codeable Concept (IPS) (http://hl7.org/fhir/uv/ips/StructureDefinition/CodeableConcept-uv-ips)
- AU PS Patient (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-patient)
- AU PS Encounter (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-encounter)
- AU PS RelatedPerson (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-relatedperson)
- Device - Performer or Observer (IPS) (http://hl7.org/fhir/uv/ips/StructureDefinition/Device-observer-uv-ips)
- AU PS Practitioner (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-practitioner)
- AU PS PractitionerRole (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-practitionerrole)
- AU PS Organization (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-organization)
- AU PS Condition (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-condition)
- AU PS Procedure (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-procedure)

Maturity: 0

Differential View

This structure is derived from AUCoreProcedure

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Procedure |  | 0..* | AUCoreProcedure | A procedure in an Australian healthcare context This profile also complies with the profile Procedure (IPS)
code |  | 1..1 | CodeableConceptIPS | Identification of the procedure
subject |  | 1..1 | Reference(AU PS Patient) | Who the procedure was performed on
reference | S | 1..1 | string | Literal reference, Relative, internal or absolute URL
encounter |  | 0..1 | Reference(AU PS Encounter) | Encounter created as part of
performed[x] |  | 1..1 | dateTime, Period, string, Age, Range | When the procedure was performed
performer |  |  |  |
actor |  | 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(AU PS Organization) | Organization the device or practitioner was acting for
reasonReference |  | 0..* | Reference(AU PS Condition | Observation | AU PS Procedure | DocumentReference) | The justification that the procedure was performed
bodySite |  | 0..* | CodeableConceptIPS | Target body sites
Documentation for this format

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Procedure |  | 0..* | AUCoreProcedure | A procedure in an Australian healthcare context This profile also complies with the profile Procedure (IPS)
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
Slices for extension |  |  |  | Content/Rules for all slices
extension:targetBodyStructure |  | 0..* | Reference(BodyStructure) | The target point for this procedure URL: http://hl7.org/fhir/StructureDefinition/procedure-targetBodyStructure
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!SO Σ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): A code specifying the state of the procedure.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
code | SO Σ | 1..1 | CodeableConceptIPS | Identification of the procedure Binding: Procedure (extensible)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
subject | SO Σ | 1..1 | Reference(AU PS Patient) | Who the procedure was performed on
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
reference | S Σ C | 1..1 | string | Literal reference, Relative, internal or absolute URL
encounter | SO Σ | 0..1 | Reference(AU PS Encounter) | Encounter created as part of
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
performed[x] | SO Σ | 1..1 |  | When the procedure was performed
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
performedDateTime |  |  | dateTime |
performedPeriod |  |  | Period |
performedString |  |  | string |
performedAge |  |  | Age |
performedRange |  |  | Range |
reasonCode | SO Σ | 0..* | CodeableConcept | Coded reason procedure performed Binding: ProcedureReasonCodes (example): A code that identifies the reason a procedure is required.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
reasonReference | SO Σ | 0..* | Reference(AU PS Condition | Observation | AU PS Procedure | DocumentReference) | The justification that the procedure was performed
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
bodySite | Σ C | 0..* | CodeableConceptIPS | Target body sites Binding: Body Site (extensible) Constraints: au-core-pro-01
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet | URI
Procedure.status | required | EventStatus `http://hl7.org/fhir/ValueSet/event-status|4.0.1` From the FHIR Standard
Procedure.code | extensible | Procedure `https://healthterminologies.gov.au/fhir/ValueSet/procedure-1` From https://tx.ontoserver.csiro.au/fhir
Procedure.reasonCode | example | ProcedureReasonCodes `http://hl7.org/fhir/ValueSet/procedure-reason` From the FHIR Standard
Procedure.bodySite | extensible | BodySite `https://healthterminologies.gov.au/fhir/ValueSet/body-site-1` From https://tx.ontoserver.csiro.au/fhir

#### Constraints

Id | Grade | Path(s) | Details | Requirements
au-core-pro-01 | error | Procedure.bodySite | If a coded body site is provided, at least one coding shall be from SNOMED CT : coding.exists() implies coding.where(system='http://snomed.info/sct').exists() |
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() |

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Procedure |  | 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
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.
Additional Bindings | Purpose
AllLanguages | 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
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:targetBodyStructure |  | 0..* | Reference(BodyStructure) | The target point for this procedure URL: http://hl7.org/fhir/StructureDefinition/procedure-targetBodyStructure
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(CarePlan | ServiceRequest) | A request for this procedure
partOf | Σ | 0..* | Reference(Procedure | Observation | MedicationAdministration) | Part of referenced event
status | ?!SO Σ | 1..1 | code | preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown Binding: EventStatus (required): A code specifying the state of the procedure.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
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 | SO Σ | 1..1 | CodeableConceptIPS | Identification of the procedure Binding: Procedure (extensible)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
subject | SO Σ | 1..1 | Reference(AU PS Patient) | Who the procedure was performed on
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 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
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (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
display | Σ | 0..1 | string | Text alternative for the resource
encounter | SO Σ | 0..1 | Reference(AU PS Encounter) | Encounter created as part of
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
performed[x] | SO Σ | 1..1 |  | When the procedure was performed
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
performedDateTime |  |  | dateTime |
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(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(AU PS Organization) | Organization the device or practitioner was acting for
location | Σ | 0..1 | Reference(Location) | Where the procedure happened
reasonCode | SO Σ | 0..* | CodeableConcept | Coded reason procedure performed Binding: ProcedureReasonCodes (example): A code that identifies the reason a procedure is required.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
reasonReference | SO Σ | 0..* | Reference(AU PS Condition | Observation | AU PS Procedure | DocumentReference) | The justification that the procedure was performed
Obligations | Actor
SHALL:populate-if-known | AU Core Responder | from AU Core Procedure
SHALL:no-error | AU Core Requester | from AU Core Procedure
bodySite | Σ C | 0..* | CodeableConceptIPS | Target body sites Binding: Body Site (extensible) Constraints: au-core-pro-01
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

#### Terminology Bindings

Path | Conformance | ValueSet | URI
Procedure.language | preferred | CommonLanguages `http://hl7.org/fhir/ValueSet/languages` From the FHIR Standard
Additional Bindings | Purpose
AllLanguages | Max Binding
Procedure.status | required | EventStatus `http://hl7.org/fhir/ValueSet/event-status|4.0.1` 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 | Procedure `https://healthterminologies.gov.au/fhir/ValueSet/procedure-1` From https://tx.ontoserver.csiro.au/fhir
Procedure.subject.type | extensible | ResourceType `http://hl7.org/fhir/ValueSet/resource-types` From the FHIR Standard
Procedure.performer.function | example | ProcedurePerformerRoleCodes `http://hl7.org/fhir/ValueSet/performer-role` From the FHIR Standard
Procedure.reasonCode | example | ProcedureReasonCodes `http://hl7.org/fhir/ValueSet/procedure-reason` From the FHIR Standard
Procedure.bodySite | extensible | BodySite `https://healthterminologies.gov.au/fhir/ValueSet/body-site-1` From https://tx.ontoserver.csiro.au/fhir
Procedure.outcome | example | ProcedureOutcomeCodes(SNOMEDCT) `http://hl7.org/fhir/ValueSet/procedure-outcome` From the FHIR Standard
Procedure.complication | example | Condition/Problem/DiagnosisCodes `http://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 | ProcedureDeviceActionCodes `http://hl7.org/fhir/ValueSet/device-action` From the FHIR Standard
Procedure.usedCode | example | FHIRDeviceTypes `http://hl7.org/fhir/ValueSet/device-kind` From the FHIR Standard

#### Constraints

Id | Grade | Path(s) | Details | Requirements
au-core-pro-01 | error | Procedure.bodySite | If a coded body site is provided, at least one coding shall be from SNOMED CT : coding.exists() implies coding.where(system='http://snomed.info/sct').exists() |
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() |

This structure is derived from AUCoreProcedure

Summary

Mandatory: 2 elements
Must-Support: 1 element

Structures

This structure refers to these other structures:

- Codeable Concept (IPS) (http://hl7.org/fhir/uv/ips/StructureDefinition/CodeableConcept-uv-ips)
- AU PS Patient (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-patient)
- AU PS Encounter (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-encounter)
- AU PS RelatedPerson (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-relatedperson)
- Device - Performer or Observer (IPS) (http://hl7.org/fhir/uv/ips/StructureDefinition/Device-observer-uv-ips)
- AU PS Practitioner (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-practitioner)
- AU PS PractitionerRole (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-practitionerrole)
- AU PS Organization (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-organization)
- AU PS Condition (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-condition)
- AU PS Procedure (http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-procedure)

Maturity: 0

Other representations of profile: CSV, Excel, Schematron