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

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

### Messages

Error | StructureDefinition.url | Values for url differ: 'http://hl7.org/fhir/uv/ips/StructureDefinition/MedicationStatement-uv-ips' vs 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-medicationstatement'
Error | StructureDefinition.version | Values for version differ: '2.0.0' vs '0.5.0-preview'
Information | StructureDefinition.name | Values for name differ: 'MedicationStatementIPS' vs 'AUPSMedicationStatement'
Information | StructureDefinition.title | Values for title differ: 'MedicationStatement (IPS)' vs 'AU PS MedicationStatement'
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/MedicationStatement' vs 'http://hl7.org.au/fhir/core/StructureDefinition/au-core-medicationstatement'
Information | StructureDefinition.short | Values for short differ: 'Record of medication being taken by a patient' vs 'A record of medication being taken by a patient 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'
Information | StructureDefinition.comment | Values for comment differ: 'In the scope of the IPS the entered-in-error concept is not allowed.' vs 'MedicationStatement is a statement at a point in time. The status is only representative at the point when it was asserted. The value set for MedicationStatement.status contains codes that assert the status of the use of the medication by the patient (for example, stopped or on hold) as well as codes that assert the status of the medication statement itself (for example, entered in error). This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.'
Warning | MedicationStatement.status | Elements differ in definition for mustSupport: 'false' vs 'true'
Information | StructureDefinition.short | Values for short differ: 'What medication was taken' vs 'Medication Detail'
Information | StructureDefinition.definition | Values for definition differ: 'Identifies the medication being administered or the reason for absent or unknown Medication. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code. To improve global interoperability, it is strongly encouraged that the reference to a medication resource is used, limiting the usage of the medicationCodeableConcept only to the cases in which no other information than a simple code is available.' vs 'Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.'
Information | StructureDefinition.comment | Values for comment differ: 'If only a code is specified, then it needs to be a code for a specific product. If more information is required, then the use of the medication resource is recommended. For example, if you require form or lot number, then you must reference the Medication resource.' vs 'If only a code is specified, then it needs to be a code for a specific product. If more information is required, then the use of the medication resource is recommended. For example, if you require form or lot number, then you must reference the Medication resource. To improve global interoperability, IPS strongly encourages the use of a reference to a Medication resource, and medicationCodeableConcept is only recommended for cases where no other information than a simple code is available. AU PS does not adopt the IPS guidance that systems should only populate a Medication reference when more information than a simple code is available; either medicationReference or medicationCodeableConcept can be used. Future releases of AU PS, based on implementation experience in Australia may adopt that IPS guidance.'
Information | MedicationStatement.medication[x] | Example/preferred bindings differ at MedicationStatement.medication[x] using binding from MedicationStatementIPS
Warning | MedicationStatement.dateAsserted | Elements differ in definition for mustSupport: 'false' vs 'true'
Warning | MedicationStatement.reasonCode | Elements differ in definition for mustSupport: 'false' vs 'true'
Information | MedicationStatement.reasonCode | Example/preferred bindings differ at MedicationStatement.reasonCode using binding from AUPSMedicationStatement
Warning | MedicationStatement.reasonReference | Elements differ in definition for mustSupport: 'false' vs 'true'
Information | MedicationStatement.dosage.additionalInstruction | Example/preferred bindings differ at MedicationStatement.dosage.additionalInstruction using binding from AUPSMedicationStatement
Information | MedicationStatement.dosage.asNeeded[x] | Example/preferred bindings differ at MedicationStatement.dosage.asNeeded[x] using binding from AUPSMedicationStatement
Information | MedicationStatement.dosage.site | Example/preferred bindings differ at MedicationStatement.dosage.site using binding from AUPSMedicationStatement
Information | MedicationStatement.dosage.route | Example/preferred bindings differ at MedicationStatement.dosage.route using binding from MedicationStatementIPS
Information | MedicationStatement.dosage.method | Example/preferred bindings differ at MedicationStatement.dosage.method using binding from AUPSMedicationStatement

### Metadata

Name | Value | Comments
--- | --- | ---
abstract | false |
baseDefinition | http://hl7.org/fhir/StructureDefinition/MedicationStatement | http://hl7.org.au/fhir/core/StructureDefinition/au-core-medicationstatement | 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 MedicationStatement resource by the International Patient Summary (IPS) FHIR Implementation Guide, based on FHIR R4. A record of a medication statement is represented in the patient summary as an instance of a MedicationStatement resource constrained by this profile. | This profile sets minimum expectations for a MedicationStatement resource in the context of a patient summary in an Australian context. It is based on the [AU Core MedicationStatement](https://build.fhir.org/ig/hl7au/au-fhir-core/StructureDefinition-au-core-medicationstatement.html) profile, and applies the additional requirements from [MedicationStatement (IPS)](http://hl7.org/fhir/uv/ips/StructureDefinition/MedicationStatement-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 | MedicationStatementIPS | AUPSMedicationStatement | Values Differ
publisher | HL7 International / Patient Care | HL7 Australia | Values Differ
purpose | This profile constrains the representation of a medication statement related to the patient, in the context of the international patient summary as specified by the IPS project of HL7 International. |  | Removed the item 'This profile constrains the representation of a medication statement related to the patient, in the context of the international patient summary as specified by the IPS project of HL7 International.'
status | active |
title | MedicationStatement (IPS) | AU PS MedicationStatement | Values Differ
type | MedicationStatement |
url | http://hl7.org/fhir/uv/ips/StructureDefinition/MedicationStatement-uv-ips | http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-medicationstatement | 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
--- | --- | --- | --- | --- | --- | --- | --- | --- | ---
MedicationStatement |  | 0..* | MedicationStatement | Record of medication being taken by a patient |  | 0..* | AUCoreMedicationStatement | A record of medication being taken by a patient in an Australian healthcare context This profile also complies with the profile MedicationStatement (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 identifier | Σ | 0..* | Identifier | External identifier |
basedOn | Σ | 0..* | Reference(MedicationRequest | CarePlan | ServiceRequest) | Fulfils plan, proposal or order | Σ | 0..* | Reference(MedicationRequest | CarePlan | ServiceRequest) | Fulfils plan, proposal or order |
partOf | Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Observation) | Part of referenced event | Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Observation) | Part of referenced event |
status | ?!Σ | 1..1 | code | active | completed | entered-in-error | intended | stopped | on-hold | unknown | not-taken Binding: ?? (required): A coded concept indicating the current status of a MedicationStatement. | ?!SO Σ | 1..1 | code | active | completed | entered-in-error | intended | stopped | on-hold | unknown | not-taken Binding: ?? (required): A coded concept indicating the current status of a MedicationStatement.
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core MedicationStatement
SHALL:no-error | AU Core Requester | from AU Core MedicationStatement
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..* | CodeableConcept | Reason for current status Binding: ?? (example): A coded concept indicating the reason for the status of the statement. |  | 0..* | CodeableConcept | Reason for current status Binding: ?? (example): A coded concept indicating the reason for the status of the statement. |
category | Σ | 0..1 | CodeableConcept | Type of medication usage Binding: ?? (preferred): A coded concept identifying where the medication included in the MedicationStatement is expected to be consumed or administered. | Σ | 0..1 | CodeableConcept | Type of medication usage Binding: ?? (preferred): A coded concept identifying where the medication included in the MedicationStatement is expected to be consumed or administered. |
medication[x] | SO Σ | 1..1 | ??, Reference(Medication (IPS)) | What medication was taken Binding: ?? (preferred): SNOMED CT medications (Medicinal product) or a code for absent/unknown medication
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
| SO Σ | 1..1 | CodeableConcept, Reference(Medication) | Medication Detail Slice: Unordered, Closed by type:$this Binding: ?? (example): A coded concept identifying the substance or product being taken.
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core MedicationStatement
SHALL:no-error | AU Core Requester | from AU Core MedicationStatement
SHALL:populate | AU PS Producer |
SHALL:handle | AU PS Consumer |
SHOULD:display | AU PS Consumer |
| Example/preferred bindings differ at MedicationStatement.medication[x] using binding from MedicationStatementIPS
subject | SO Σ | 1..1 | Reference(Patient (IPS)) | Who is/was taking the medication
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
| SO Σ | 1..1 | Reference(AU PS Patient) | Who is/was taking the medication
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core MedicationStatement
SHALL:no-error | AU Core Requester | from AU Core MedicationStatement
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 |
context | Σ | 0..1 | Reference(Encounter | EpisodeOfCare) | Encounter / Episode associated with MedicationStatement | Σ | 0..1 | Reference(Encounter | EpisodeOfCare) | Encounter / Episode associated with MedicationStatement |
Slices for effective[x] | SO Σ | 1..1 | dateTime, Period | The date/time or interval when the medication is/was/will be taken 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 | The date/time or interval when the medication is/was/will be taken
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core MedicationStatement
SHALL:no-error | AU Core Requester | from AU Core MedicationStatement
SHALL:populate-if-known | AU PS Producer |
SHALL:handle | AU PS Consumer |
SHOULD:display | AU PS Consumer |
dateAsserted | Σ | 0..1 | dateTime | When the statement was asserted? | SO Σ | 0..1 | dateTime | When the statement was asserted?
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core MedicationStatement
SHALL:no-error | AU Core Requester | from AU Core MedicationStatement
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'
informationSource |  | 0..1 | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Organization) | Person or organization that provided the information about the taking of this medication |  | 0..1 | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Organization) | Person or organization that provided the information about the taking of this medication |
derivedFrom |  | 0..* | Reference(Resource) | Additional supporting information |  | 0..* | Reference(Resource) | Additional supporting information |
reasonCode |  | 0..* | CodeableConcept | Reason for why the medication is being/was taken Binding: ?? (example): A coded concept identifying why the medication is being taken. | SO | 0..* | ?? | Reason for why the medication is being/was taken Binding: ?? (preferred)
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core MedicationStatement
SHALL:no-error | AU Core Requester | from AU Core MedicationStatement
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' Example/preferred bindings differ at MedicationStatement.reasonCode using binding from AUPSMedicationStatement
reasonReference |  | 0..* | Reference(Condition | Observation | DiagnosticReport) | Condition or observation that supports why the medication is being/was taken | SO | 0..* | Reference(AU PS Condition | Observation | DiagnosticReport (IPS)) | Condition or observation that supports why the medication is being/was taken
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core MedicationStatement
SHALL:no-error | AU Core Requester | from AU Core MedicationStatement
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'
note |  | 0..* | Annotation | Further information about the statement |  | 0..* | Annotation | Further information about the statement |
dosage | SO | 0..* | Dosage | Details of how medication is/was taken or should be taken
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
| SO | 0..* | ?? | Details of how medication is/was taken or should be taken
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core MedicationStatement
SHALL:no-error | AU Core Requester | from AU Core MedicationStatement
SHALL:populate-if-known | 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 |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
sequence | Σ | 0..1 | integer | The order of the dosage instructions | Σ | 0..1 | integer | The order of the dosage instructions |
text | SO Σ | 0..1 | string | Free text dosage instructions e.g. SIG
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
| SO Σ | 0..1 | string | Free text dosage instructions e.g. SIG
Obligations | Actor | Source
SHALL:populate-if-known | AU Core Responder | from AU Core MedicationStatement
SHALL:no-error | AU Core Requester | from AU Core MedicationStatement
SHALL:populate-if-known | AU PS Producer |
SHALL:handle | AU PS Consumer |
SHOULD:display | AU PS Consumer |
additionalInstruction | Σ | 0..* | CodeableConcept | Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness" Binding: ?? (example): A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery". | Σ | 0..* | CodeableConcept | Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness" Binding: ?? (preferred) | Example/preferred bindings differ at MedicationStatement.dosage.additionalInstruction using binding from AUPSMedicationStatement
patientInstruction | Σ | 0..1 | string | Patient or consumer oriented instructions | Σ | 0..1 | string | Patient or consumer oriented instructions |
timing | SO Σ | 0..1 | Timing | When medication should be administered
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
| SO Σ | 0..1 | Timing | When medication should be administered
Obligations | Actor
SHALL:populate-if-known | AU PS Producer
SHALL:handle | AU PS Consumer
SHOULD:display | AU PS Consumer
asNeeded[x] | Σ | 0..1 | boolean, CodeableConcept | Take "as needed" (for x) Binding: ?? (example): A coded concept identifying the precondition that should be met or evaluated prior to consuming or administering a medication dose. For example "pain", "30 minutes prior to sexual intercourse", "on flare-up" etc. | Σ | 0..1 | boolean, CodeableConcept | Take "as needed" (for x) Binding: ?? (preferred) | Example/preferred bindings differ at MedicationStatement.dosage.asNeeded[x] using binding from AUPSMedicationStatement
site | Σ | 0..1 | CodeableConcept | Body site to administer to Binding: ?? (example): A coded concept describing the site location the medicine enters into or onto the body. | Σ | 0..1 | CodeableConcept | Body site to administer to Binding: ?? (preferred) | Example/preferred bindings differ at MedicationStatement.dosage.site using binding from AUPSMedicationStatement
route | Σ | 0..1 | CodeableConcept | How drug should enter body Binding: ?? (preferred): SNOMED Route Terms
Additional Bindings | Purpose
?? | candidate
| Σ | 0..1 | CodeableConcept | How drug should enter body Binding: ?? (preferred) | Example/preferred bindings differ at MedicationStatement.dosage.route using binding from MedicationStatementIPS
method | Σ | 0..1 | CodeableConcept | Technique for administering medication Binding: ?? (example): A coded concept describing the technique by which the medicine is administered. | Σ | 0..1 | CodeableConcept | Technique for administering medication Binding: ?? (preferred) | Example/preferred bindings differ at MedicationStatement.dosage.method using binding from AUPSMedicationStatement
doseAndRate | Σ | 0..* | Element | Amount of medication administered | Σ | 0..* | Element | Amount of medication administered |
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 |
type | Σ | 0..1 | CodeableConcept | The kind of dose or rate specified Binding: ?? (example): The kind of dose or rate specified. | Σ | 0..1 | CodeableConcept | The kind of dose or rate specified Binding: ?? (example): The kind of dose or rate specified. |
dose[x] | Σ | 0..1 | Range, ?? | Amount of medication per dose | Σ | 0..1 | Range, ?? | Amount of medication per dose |
rate[x] | Σ | 0..1 | Ratio, Range, ?? | Amount of medication per unit of time | Σ | 0..1 | Ratio, Range, ?? | Amount of medication per unit of time |
maxDosePerPeriod | Σ | 0..1 | Ratio | Upper limit on medication per unit of time | Σ | 0..1 | Ratio | Upper limit on medication per unit of time |
maxDosePerAdministration | Σ | 0..1 | ?? | Upper limit on medication per administration | Σ | 0..1 | ?? | Upper limit on medication per administration |
maxDosePerLifetime | Σ | 0..1 | ?? | Upper limit on medication per lifetime of the patient | Σ | 0..1 | ?? | Upper limit on medication per lifetime of the patient |
Documentation for this format