## Profile Comparison between https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-medication-request vs https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-medication-request

Left: | FI Base MedicationRequest (https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-medication-request)
Right: | FI Base MedicationRequest (https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-medication-request)

### Messages

Error | StructureDefinition.version | Values for version differ: '1.0.0' vs '2.0.0'
Information | StructureDefinition.date | Values for date differ: '2023-11-10T00:34:45+02:00' vs '2025-10-05T15:38:20+00:00'
Information | MedicationRequest.language | Example/preferred bindings differ at MedicationRequest.language using binding from FiBaseMedicationRequest
Error | MedicationRequest.priorPrescription | Type Mismatch: Reference([CanonicalType[https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-medication-request], CanonicalType[https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-patient-medication-request]]) vs Reference([CanonicalType[https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-medication-request]])

### Metadata

Name | Value | Comments
--- | --- | ---
abstract | false |
baseDefinition | http://hl7.org/fhir/StructureDefinition/MedicationRequest |
copyright |  |
date | 2023-11-10T00:34:45+02:00 | 2025-10-05T15:38:20+00:00 | Values Differ
description | This is the Finnish base profile for the MedicationRequest resource, for other than patient access use cases. |
experimental |  |
fhirVersion | 4.0.1 |
jurisdiction |  |
jurisdiction[0] | urn:iso:std:iso:3166#FI |
kind | resource |
name | FiBaseMedicationRequest |
publisher | HL7 Finland |
purpose |  |
status | active |
title | FI Base MedicationRequest |
type | MedicationRequest |
url | https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-medication-request |
version | 1.0.0 | 2.0.0 | Values Differ

### Structure

Name | L Flags | L Card. | L Type | L Description & Constraints | R Flags | R Card. | R Type | R Description & Constraints | Comments
--- | --- | --- | --- | --- | --- | --- | --- | --- | ---
MedicationRequest |  | 0..* | MedicationRequest | Ordering of medication for patient or group |  | 0..* | MedicationRequest | Ordering of medication for patient or group |
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 MedicationRequest.language using binding from FiBaseMedicationRequest
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 ids for this request |  | 0..* | Identifier | External ids for this request |
status | ?!Σ | 1..1 | code | active | on-hold | cancelled | completed | entered-in-error | stopped | draft | unknown Binding: ?? (required): A coded concept specifying the state of the prescribing event. Describes the lifecycle of the prescription. | ?!Σ | 1..1 | code | active | on-hold | cancelled | completed | entered-in-error | stopped | draft | unknown Binding: ?? (required): A coded concept specifying the state of the prescribing event. Describes the lifecycle of the prescription. |
statusReason |  | 0..1 | CodeableConcept | Reason for current status Binding: ?? (example): Identifies the reasons for a given status. |  | 0..1 | CodeableConcept | Reason for current status Binding: ?? (example): Identifies the reasons for a given status. |
intent | ?!Σ | 1..1 | code | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Binding: ?? (required): The kind of medication order. | ?!Σ | 1..1 | code | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option Binding: ?? (required): The kind of medication order. |
category |  | 0..* | CodeableConcept | Type of medication usage Binding: ?? (example): A coded concept identifying the category of medication request. For example, where the medication is to be consumed or administered, or the type of medication treatment. |  | 0..* | CodeableConcept | Type of medication usage Binding: ?? (example): A coded concept identifying the category of medication request. For example, where the medication is to be consumed or administered, or the type of medication treatment. |
priority | Σ | 0..1 | code | routine | urgent | asap | stat Binding: ?? (required): Identifies the level of importance to be assigned to actioning the request. | Σ | 0..1 | code | routine | urgent | asap | stat Binding: ?? (required): Identifies the level of importance to be assigned to actioning the request. |
doNotPerform | ?!Σ | 0..1 | boolean | True if request is prohibiting action | ?!Σ | 0..1 | boolean | True if request is prohibiting action |
Slices for reported[x] | Σ | 0..1 | boolean, Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Organization) | Reported rather than primary record Slice: Unordered, Open by type:$this | Σ | 0..1 | boolean, Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Organization) | Reported rather than primary record Slice: Unordered, Open by type:$this |
Slices for medication[x] | Σ | 1..1 | CodeableConcept, Reference(Medication) | Medication to be taken Slice: Unordered, Open by type:$this Binding: ?? (example): A coded concept identifying substance or product that can be ordered. | Σ | 1..1 | CodeableConcept, Reference(Medication) | Medication to be taken Slice: Unordered, Open by type:$this Binding: ?? (example): A coded concept identifying substance or product that can be ordered. |
subject | Σ | 1..1 | Reference(FI Base Patient) | Who or group medication request is for | Σ | 1..1 | Reference(FI Base Patient(2.0.0)) | Who or group medication request is for |
encounter |  | 0..1 | Reference(FI Base Encounter) | Encounter created as part of encounter/admission/stay |  | 0..1 | Reference(FI Base Encounter(2.0.0)) | Encounter created as part of encounter/admission/stay |
supportingInformation |  | 0..* | Reference(Resource) | Information to support ordering of the medication |  | 0..* | Reference(Resource) | Information to support ordering of the medication |
authoredOn | Σ | 0..1 | dateTime | When request was initially authored | Σ | 0..1 | dateTime | When request was initially authored |
requester | Σ | 0..1 | Reference(FI Base Practitioner | FI Base PractitionerRole | FI Base Patient) | Who/What requested the Request | Σ | 0..1 | Reference(FI Base Practitioner(2.0.0) | FI Base PractitionerRole(2.0.0) | FI Base Patient(2.0.0)) | Who/What requested the Request |
performer |  | 0..1 | Reference(FI Base Practitioner | FI Base PractitionerRole | FI Base Patient | FI Base Organization | Device | RelatedPerson | CareTeam) | Intended performer of administration |  | 0..1 | Reference(FI Base Practitioner(2.0.0) | FI Base PractitionerRole(2.0.0) | FI Base Patient(2.0.0) | FI Base Organization(2.0.0) | Device | RelatedPerson | CareTeam) | Intended performer of administration |
performerType | Σ | 0..1 | CodeableConcept | Desired kind of performer of the medication administration Binding: ?? (example): Identifies the type of individual that is desired to administer the medication. | Σ | 0..1 | CodeableConcept | Desired kind of performer of the medication administration Binding: ?? (example): Identifies the type of individual that is desired to administer the medication. |
recorder |  | 0..1 | Reference(FI Base Practitioner | FI Base PractitionerRole) | Person who entered the request |  | 0..1 | Reference(FI Base Practitioner(2.0.0) | FI Base PractitionerRole(2.0.0)) | Person who entered the request |
reasonCode |  | 0..* | CodeableConcept | Reason or indication for ordering or not ordering the medication Binding: ?? (example): A coded concept indicating why the medication was ordered. |  | 0..* | CodeableConcept | Reason or indication for ordering or not ordering the medication Binding: ?? (example): A coded concept indicating why the medication was ordered. |
reasonReference |  | 0..* | Reference(FI Base Condition | FI Base Observation) | Condition or observation that supports why the prescription is being written |  | 0..* | Reference(FI Base Condition(2.0.0) | FI Base Observation(2.0.0)) | Condition or observation that supports why the prescription is being written |
instantiatesCanonical | Σ | 0..* | canonical() | Instantiates FHIR protocol or definition | Σ | 0..* | canonical() | Instantiates FHIR protocol or definition |
instantiatesUri | Σ | 0..* | uri | Instantiates external protocol or definition | Σ | 0..* | uri | Instantiates external protocol or definition |
basedOn | Σ | 0..* | Reference(CarePlan | FI Base MedicationRequest | FI Base Patient MedicationRequest | ServiceRequest | ImmunizationRecommendation) | What request fulfills | Σ | 0..* | Reference(CarePlan | FI Base MedicationRequest(2.0.0) | ServiceRequest | ImmunizationRecommendation) | What request fulfills |
groupIdentifier | Σ | 0..1 | Identifier | Composite request this is part of | Σ | 0..1 | Identifier | Composite request this is part of |
courseOfTherapyType |  | 0..1 | CodeableConcept | Overall pattern of medication administration Binding: ?? (example): Identifies the overall pattern of medication administratio. |  | 0..1 | CodeableConcept | Overall pattern of medication administration Binding: ?? (example): Identifies the overall pattern of medication administratio. |
insurance |  | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage |  | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage |
note |  | 0..* | Annotation | Information about the prescription |  | 0..* | Annotation | Information about the prescription |
dosageInstruction |  | 0..* | Dosage | How the medication should be taken |  | 0..* | Dosage | How the medication should be taken |
dispenseRequest |  | 0..1 | BackboneElement | Medication supply authorization |  | 0..1 | BackboneElement | Medication supply authorization |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
initialFill |  | 0..1 | BackboneElement | First fill details |  | 0..1 | BackboneElement | First fill details |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
quantity |  | 0..1 | ?? | First fill quantity |  | 0..1 | ?? | First fill quantity |
duration |  | 0..1 | Duration | First fill duration |  | 0..1 | Duration | First fill duration |
dispenseInterval |  | 0..1 | Duration | Minimum period of time between dispenses |  | 0..1 | Duration | Minimum period of time between dispenses |
validityPeriod |  | 0..1 | Period | Time period supply is authorized for |  | 0..1 | Period | Time period supply is authorized for |
numberOfRepeatsAllowed |  | 0..1 | unsignedInt | Number of refills authorized |  | 0..1 | unsignedInt | Number of refills authorized |
quantity |  | 0..1 | ?? | Amount of medication to supply per dispense |  | 0..1 | ?? | Amount of medication to supply per dispense |
expectedSupplyDuration |  | 0..1 | Duration | Number of days supply per dispense |  | 0..1 | Duration | Number of days supply per dispense |
performer |  | 0..1 | Reference(FI Base Organization) | Intended dispenser |  | 0..1 | Reference(FI Base Organization(2.0.0)) | Intended dispenser |
substitution |  | 0..1 | BackboneElement | Any restrictions on medication substitution |  | 0..1 | BackboneElement | Any restrictions on medication substitution |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
allowed[x] |  | 1..1 | boolean, CodeableConcept | Whether substitution is allowed or not Binding: ?? (example): Identifies the type of substitution allowed. |  | 1..1 | boolean, CodeableConcept | Whether substitution is allowed or not Binding: ?? (example): Identifies the type of substitution allowed. |
reason |  | 0..1 | CodeableConcept | Why should (not) substitution be made Binding: ?? (example): A coded concept describing the reason that a different medication should (or should not) be substituted from what was prescribed. |  | 0..1 | CodeableConcept | Why should (not) substitution be made Binding: ?? (example): A coded concept describing the reason that a different medication should (or should not) be substituted from what was prescribed. |
priorPrescription |  | 0..1 | Reference(FI Base MedicationRequest | FI Base Patient MedicationRequest) | An order/prescription that is being replaced |  | 0..1 | Reference(FI Base MedicationRequest(2.0.0)) | An order/prescription that is being replaced | Type Mismatch: Reference([CanonicalType[https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-medication-request], CanonicalType[https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-patient-medication-request]]) vs Reference([CanonicalType[https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-medication-request]])
detectedIssue |  | 0..* | Reference(DetectedIssue) | Clinical Issue with action |  | 0..* | Reference(DetectedIssue) | Clinical Issue with action |
eventHistory |  | 0..* | Reference(FI Base Provenance) | A list of events of interest in the lifecycle |  | 0..* | Reference(FI Base Provenance(2.0.0)) | A list of events of interest in the lifecycle |
Documentation for this format