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

Left: | MedicationStatement (IPS) (http://hl7.org/fhir/uv/ips/StructureDefinition/MedicationStatement-uv-ips)
Right: | Medication Statement (EPS) (http://hl7.eu/fhir/eps/StructureDefinition/MedicationStatement-eu-eps)

### Messages

Error | StructureDefinition.url | Values for url differ: 'http://hl7.org/fhir/uv/ips/StructureDefinition/MedicationStatement-uv-ips' vs 'http://hl7.eu/fhir/eps/StructureDefinition/MedicationStatement-eu-eps'
Error | StructureDefinition.version | Values for version differ: '2.0.0' vs '1.0.0-alpha'
Information | StructureDefinition.name | Values for name differ: 'MedicationStatementIPS' vs 'MedicationStatementEuEps'
Information | StructureDefinition.title | Values for title differ: 'MedicationStatement (IPS)' vs 'Medication Statement (EPS)'
Information | StructureDefinition.status | Values for status differ: 'active' vs 'draft'
Information | StructureDefinition.date | Values for date differ: '2024-06-19T10:50:07-05:00' vs '2026-02-25T10:52:47+01:00'
Information | StructureDefinition.publisher | Values for publisher differ: 'HL7 International / Patient Care' vs 'HL7 Europe'
Information | StructureDefinition.jurisdiction | Removed the item 'http://unstats.un.org/unsd/methods/m49/m49.htm#001'
Information | StructureDefinition.jurisdiction | Added the item 'http://unstats.un.org/unsd/methods/m49/m49.htm#150'
Error | StructureDefinition.baseDefinition | Values for baseDefinition differ: 'http://hl7.org/fhir/StructureDefinition/MedicationStatement' vs 'http://hl7.eu/fhir/base/StructureDefinition/medicationStatement-eu-core'
Information | StructureDefinition.short | Values for short differ: 'Language of the resource content' vs 'Language of the statement'
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.short | Values for short differ: 'External identifier' vs 'Medication Statement Identifier'
Information | StructureDefinition.short | Values for short differ: 'active | completed | entered-in-error | intended | stopped | on-hold | unknown | not-taken' vs 'State of the medication'
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.'
Information | StructureDefinition.short | Values for short differ: 'Reason for current status' vs 'Reason for the 'exception' statuses of the medication'
Information | StructureDefinition.short | Values for short differ: 'Type of medication usage' vs 'Type of intended use'
Information | MedicationStatement.category | Example/preferred bindings differ at MedicationStatement.category using binding from MedicationStatementIPS
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.'
Warning | MedicationStatement.medication[x] | Elements differ in definition for mustSupport: 'true' vs 'false'
Warning | MedicationStatement.subject | Elements differ in definition for mustSupport: 'true' vs 'false'
Warning | MedicationStatement.subject.reference | Elements differ in definition for mustSupport: 'true' vs 'false'
Warning | MedicationStatement.effective[x] | Elements differ in definition for mustSupport: 'true' vs 'false'
Information | StructureDefinition.short | Values for short differ: 'Additional supporting information' vs 'The reference to the source of the statement'
Information | StructureDefinition.short | Values for short differ: 'Reason for why the medication is being/was taken' vs 'Coded reason for use'
Information | StructureDefinition.short | Values for short differ: 'Details of how medication is/was taken or should be taken' vs 'Details of how medication is/was taken or should be taken.'
Warning | MedicationStatement.dosage | Elements differ in definition for mustSupport: 'true' vs 'false'
Warning | MedicationStatement.dosage.text | Elements differ in definition for mustSupport: 'true' vs 'false'
Warning | MedicationStatement.dosage.timing | Elements differ in definition for mustSupport: 'true' vs 'false'
Information | StructureDefinition.short | Values for short differ: 'How drug should enter body' vs 'Route of administration'
Information | MedicationStatement.dosage.route | Example/preferred bindings differ at MedicationStatement.dosage.route using binding from MedicationStatementIPS

### Metadata

Name | Value | Comments
--- | --- | ---
abstract | false |
baseDefinition | http://hl7.org/fhir/StructureDefinition/MedicationStatement | http://hl7.eu/fhir/base/StructureDefinition/medicationStatement-eu-core | Values Differ
copyright |  | Used by permission of HL7 Europe, all rights reserved Creative Commons License | Added the item 'Used by permission of HL7 Europe, all rights reserved Creative Commons License'
date | 2024-06-19T10:50:07-05:00 | 2026-02-25T10:52:47+01: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 constrains the MedicationStatement resource for the purpose of the European patient summary. | Values Differ
experimental |  | false | Added 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] |  | http://unstats.un.org/unsd/methods/m49/m49.htm#150 | Added the item 'http://unstats.un.org/unsd/methods/m49/m49.htm#150'
kind | resource |
name | MedicationStatementIPS | MedicationStatementEuEps | Values Differ
publisher | HL7 International / Patient Care | HL7 Europe | 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. | This profile constrains the MedicationStatement resource for the purpose of the European patient summary. | Values Differ
status | active | draft | Values Differ
title | MedicationStatement (IPS) | Medication Statement (EPS) | Values Differ
type | MedicationStatement |
url | http://hl7.org/fhir/uv/ips/StructureDefinition/MedicationStatement-uv-ips | http://hl7.eu/fhir/eps/StructureDefinition/MedicationStatement-eu-eps | Values Differ
version | 2.0.0 | 1.0.0-alpha | 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..* | MedicationStatementEuCore | Record of medication being taken by a patient This profile also imposes 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 statement 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 | Medication Statement 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. | ?!Σ | 1..1 | code | State of the medication Binding: ?? (required): A coded concept indicating the current status of a MedicationStatement. |
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 the 'exception' statuses of the medication 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 intended use Binding: ?? (preferred): A coded concept identifying where the medication included in the MedicationStatement is expected to be consumed or administered.
Additional Bindings | Purpose
?? | Preferred
| Example/preferred bindings differ at MedicationStatement.category using binding from MedicationStatementIPS
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)
| O Σ | 1..1 | ??, Reference(Medication (EU core)) | What medication was taken Binding: ?? (example)
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
| Elements differ in definition for mustSupport: 'true' vs 'false'
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)
| O Σ | 1..1 | Reference(Patient (EPS)) | Who is/was taking the medication
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
| Elements differ in definition for mustSupport: 'true' vs 'false'
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)
| O Σ C | 1..1 | string | Literal reference, Relative, internal or absolute URL
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
| Elements differ in definition for mustSupport: 'true' vs 'false'
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)
| O Σ | 1..1 | dateTime, Period | The date/time or interval when the medication is/was/will be taken Slice: Unordered, Closed by type:$this
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
| Elements differ in definition for mustSupport: 'true' vs 'false'
dateAsserted | Σ | 0..1 | dateTime | When the statement was asserted? | Σ | 0..1 | dateTime | When the statement was asserted? |
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 (EU core) | Practitioner (EU core) | PractitionerRole (EU core) | Organization (EU core) | RelatedPerson) | Person or organization that provided the information about the taking of this medication |
derivedFrom |  | 0..* | Reference(Resource) | Additional supporting information |  | 0..* | Reference(Resource) | The reference to the source of the statement |
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 | Coded reason for use 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 | Observation | DiagnosticReport) | 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 |
id |  |  |  |  |  | 0..1 | string | Unique id for inter-element referencing | Added this element
Slices for extension |  |  |  |  |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | Added this element
author[x] |  |  |  |  | Σ | 0..1 | Reference(Practitioner | Patient | RelatedPerson | Organization), string | Individual responsible for the annotation | Added this element
time |  |  |  |  | Σ | 0..1 | dateTime | When the annotation was made | Added this element
text |  |  |  |  | Σ | 1..1 | markdown | Textual note about the statement | Added this element
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)
| O | 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)
| Elements differ in definition for mustSupport: 'true' vs 'false'
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)
| O Σ | 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)
| Elements differ in definition for mustSupport: 'true' vs 'false'
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 | 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)
| O Σ | 0..1 | Timing | When medication should be administered
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
| Elements differ in definition for mustSupport: 'true' vs 'false'
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: ?? (preferred): SNOMED Route Terms
Additional Bindings | Purpose
?? | candidate
| Σ | 0..1 | CodeableConcept | Route of administration 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. | 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: ?? (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