## Profile Comparison between http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-medicationstatement vs http://hl7.org/fhir/ca/baseline/StructureDefinition/profile-medicationstatement

Left: | IPA-MedicationStatement (http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-medicationstatement)
Right: | MedicationStatement Profile (http://hl7.org/fhir/ca/baseline/StructureDefinition/profile-medicationstatement)

### Messages

Error | StructureDefinition.url | Values for url differ: 'http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-medicationstatement' vs 'http://hl7.org/fhir/ca/baseline/StructureDefinition/profile-medicationstatement'
Error | StructureDefinition.version | Values for version differ: '1.1.0' vs '1.2.0'
Information | StructureDefinition.name | Values for name differ: 'IPAMedicationStatement' vs 'MedicationStatementProfile'
Information | StructureDefinition.title | Values for title differ: 'IPA-MedicationStatement' vs 'MedicationStatement Profile'
Information | StructureDefinition.status | Values for status differ: 'active' vs 'draft'
Information | StructureDefinition.date | Values for date differ: '2022-08-02' vs '2024-12-13'
Information | StructureDefinition.publisher | Values for publisher differ: 'HL7 International / Patient Care' vs 'HL7 Canada - FHIR Implementation Work Group'
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#CA'
Information | StructureDefinition.short | Values for short differ: 'Record of medication being taken by a patient' vs 'MedicationStatement Profile'
Information | StructureDefinition.definition | Values for definition differ: 'A record of a medication that is being consumed by a patient. A MedicationStatement may indicate that the patient may be taking the medication now or has taken the medication in the past or will be taking the medication in the future. The source of this information can be the patient, significant other (such as a family member or spouse), or a clinician. A common scenario where this information is captured is during the history taking process during a patient visit or stay. The medication information may come from sources such as the patient's memory, from a prescription bottle, or from a list of medications the patient, clinician or other party maintains. The primary difference between a medication statement and a medication administration is that the medication administration has complete administration information and is based on actual administration information from the person who administered the medication. A medication statement is often, if not always, less specific. There is no required date/time when the medication was administered, in fact we only know that a source has reported the patient is taking this medication, where details such as time, quantity, or rate or even medication product may be incomplete or missing or less precise. As stated earlier, the medication statement information may come from the patient's memory, from a prescription bottle or from a list of medications the patient, clinician or other party maintains. Medication administration is more formal and is not missing detailed information.' vs 'The MedicationStatement Profile is based upon the core FHIR MedicationStatement Resource'
Information | MedicationStatement.language | Example/preferred bindings differ at MedicationStatement.language using binding from IPAMedicationStatement
Warning | MedicationStatement.statusReason | Elements differ in definition for mustSupport: 'true' vs 'false'
Information | MedicationStatement.category | Example/preferred bindings differ at MedicationStatement.category using binding from IPAMedicationStatement
Information | MedicationStatement.medication[x] | Example/preferred bindings differ at MedicationStatement.medication[x] using binding from MedicationStatementProfile
Warning | MedicationStatement.context | Elements differ in definition for mustSupport: 'true' vs 'false'
Error | MedicationStatement.informationSource | Type Mismatch: Reference([CanonicalType[http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-practitioner], CanonicalType[http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-practitionerrole], CanonicalType[http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-patient], CanonicalType[http://hl7.org/fhir/StructureDefinition/Organization], CanonicalType[http://hl7.org/fhir/StructureDefinition/RelatedPerson]]) vs Reference([CanonicalType[http://hl7.org/fhir/ca/baseline/StructureDefinition/profile-patient], CanonicalType[http://hl7.org/fhir/ca/baseline/StructureDefinition/profile-practitioner], CanonicalType[http://hl7.org/fhir/ca/baseline/StructureDefinition/profile-practitionerrole], CanonicalType[http://hl7.org/fhir/StructureDefinition/RelatedPerson], CanonicalType[http://hl7.org/fhir/ca/baseline/StructureDefinition/profile-organization]])

### Metadata

Name | Value | Comments
--- | --- | ---
abstract | false |
baseDefinition | http://hl7.org/fhir/StructureDefinition/MedicationStatement |
copyright | Used by permission of HL7 International all rights reserved Creative Commons License |  | Removed the item 'Used by permission of HL7 International all rights reserved Creative Commons License'
date | 2022-08-02 | 2024-12-13 | Values Differ
description | Minimum expectations for a MedicationStatement resource when accessed via a International Patient Access API. The MedicationStatement resource represents all medications a patient is taking, be it those ordered by a clinician or reported by another organization, the patient or a caregiver. | Proposed constraints and extensions on the MedicationStatement resource. Generated as a first step toward creating a set of Canadian Baseline FHIR profiles. | Values Differ
experimental | false |  | Removed the item 'false'
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#CA | Added the item 'urn:iso:std:iso:3166#CA'
kind | resource |
name | IPAMedicationStatement | MedicationStatementProfile | Values Differ
publisher | HL7 International / Patient Care | HL7 Canada - FHIR Implementation Work Group | Values Differ
purpose |  |
status | active | draft | Values Differ
title | IPA-MedicationStatement | MedicationStatement Profile | Values Differ
type | MedicationStatement |
url | http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-medicationstatement | http://hl7.org/fhir/ca/baseline/StructureDefinition/profile-medicationstatement | Values Differ
version | 1.1.0 | 1.2.0 | 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..* | MedicationStatement | MedicationStatement Profile |
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
| Example/preferred bindings differ at MedicationStatement.language using binding from IPAMedicationStatement
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 identifier | Σ | 0..* | Identifier | External identifier |
basedOn | Σ | 0..* | Reference(MedicationRequest | CarePlan | ServiceRequest) | Fulfils plan, proposal or order | Σ | 0..* | Reference(MedicationRequest Profile | CarePlan | ServiceRequest) | Fulfils plan, proposal or order |
partOf | Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Observation) | Part of referenced event | Σ | 0..* | Reference(MedicationAdministration Profile | MedicationDispense Profile | MedicationStatement Profile | Procedure Profile | Observation Profile (General Use)) | Part of referenced event |
status | ?!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
SHALL:populate-if-known | Server
SHALL:handle | Client
| ?!S Σ | 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. |
statusReason | S | 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. | Elements differ in definition for mustSupport: 'true' vs 'false'
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. | Example/preferred bindings differ at MedicationStatement.category using binding from IPAMedicationStatement
medication[x] | SO Σ | 1..1 | CodeableConcept, Reference(IPA-Medication) | What medication was taken Binding: ?? (example): A coded concept identifying the substance or product being taken.
Obligations | Actor
SHALL:populate-if-known | Server
SHALL:handle | Client
| S Σ | 1..1 | CodeableConcept, Reference(Medication Profile) | What medication was taken Binding: ?? (preferred): TBD. This is a placeholder for a comprehensive valueset, consisting of all Manufactured Product (MP), Non-proprietary Therapeutic Product (NTP) and Therapeutic Moiety (TM) codes, which would be created and maintained by Canada Health Infoway. Medicinal products for prescribing and dispensing in Canada. The content of this subset only contains commonly used medicinal products that are available for prescribing and dispensing in Canada. This content will expand to include all human medicinal products over time. | Example/preferred bindings differ at MedicationStatement.medication[x] using binding from MedicationStatementProfile
subject | SO Σ | 1..1 | Reference(IPA-Patient) | Who is/was taking the medication
Obligations | Actor
SHALL:populate-if-known | Server
SHALL:handle | Client
| S Σ | 1..1 | Reference(Patient Profile) | Who is/was taking the medication |
context | SO Σ | 0..1 | Reference(Encounter | EpisodeOfCare) | Encounter / Episode associated with MedicationStatement
Obligations | Actor
SHALL:populate-if-known | Server
| Σ | 0..1 | Reference(Encounter Profile | EpisodeOfCare) | Encounter / Episode associated with MedicationStatement | Elements differ in definition for mustSupport: 'true' vs 'false'
effective[x] | SO Σ | 0..1 | dateTime, Period | The date/time or interval when the medication is/was/will be taken
Obligations | Actor
SHALL:populate-if-known | Server
SHOULD:handle | Client
| S Σ | 0..1 | dateTime, Period | The date/time or interval when the medication is/was/will be taken |
dateAsserted | Σ | 0..1 | dateTime | When the statement was asserted? | Σ | 0..1 | dateTime | When the statement was asserted? |
informationSource | SO | 0..1 | Reference(IPA-Practitioner | IPA-PractitionerRole | IPA-Patient | Organization | RelatedPerson) | Person or organization that provided the information about the taking of this medication
Obligations | Actor
SHALL:populate-if-known | Server
| S | 0..1 | Reference(Patient Profile | Practitioner Profile (General) | PractitionerRole Profile (General) | RelatedPerson | Organization Profile) | Person or organization that provided the information about the taking of this medication | Type Mismatch: Reference([CanonicalType[http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-practitioner], CanonicalType[http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-practitionerrole], CanonicalType[http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-patient], CanonicalType[http://hl7.org/fhir/StructureDefinition/Organization], CanonicalType[http://hl7.org/fhir/StructureDefinition/RelatedPerson]]) vs Reference([CanonicalType[http://hl7.org/fhir/ca/baseline/StructureDefinition/profile-patient], CanonicalType[http://hl7.org/fhir/ca/baseline/StructureDefinition/profile-practitioner], CanonicalType[http://hl7.org/fhir/ca/baseline/StructureDefinition/profile-practitionerrole], CanonicalType[http://hl7.org/fhir/StructureDefinition/RelatedPerson], CanonicalType[http://hl7.org/fhir/ca/baseline/StructureDefinition/profile-organization]])
derivedFrom |  | 0..* | Reference(Resource) | Additional supporting information |  | 0..* | Reference(MedicationRequest Profile | MedicationDispense Profile | Claim | Observation Profile (General Use) | QuestionnaireResponse) | 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. |  | 0..* | CodeableConcept | Reason for why the medication is being/was taken Binding: ?? (example): A coded concept identifying why the medication is being taken. |
reasonReference |  | 0..* | Reference(Condition | Observation | DiagnosticReport) | Condition or observation that supports why the medication is being/was taken |  | 0..* | Reference(Condition Profile | Observation Profile (General Use) | DiagnosticReport Profile for Laboratory Results Reporting | Diagnostic Report for Report and Note Exchange Profile) | Condition or observation that supports why the medication is being/was taken |
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 | Server
SHOULD:handle | Client
| S | 0..* | Dosage | Details of how medication is/was taken or should be taken |
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 | Server
SHOULD:handle | Client
| S Σ | 0..1 | string | Free text dosage instructions e.g. SIG |
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: ?? (example): A coded concept identifying additional instructions such as "take with water" or "avoid operating heavy machinery". |
patientInstruction | Σ | 0..1 | string | Patient or consumer oriented instructions | Σ | 0..1 | string | Patient or consumer oriented instructions |
timing | Σ | 0..1 | Timing | When medication should be administered | Σ | 0..1 | Timing | When medication should be administered |
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: ?? (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. |
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: ?? (example): A coded concept describing the site location the medicine enters into or onto the body. |
route | Σ | 0..1 | CodeableConcept | How drug should enter body Binding: ?? (example): A coded concept describing the route or physiological path of administration of a therapeutic agent into or onto the body of a subject. | Σ | 0..1 | CodeableConcept | How drug should enter body Binding: ?? (example): A coded concept describing the route or physiological path of administration of a therapeutic agent into or onto the body of a subject. |
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: ?? (example): A coded concept describing the technique by which the medicine is administered. |
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