Kenya Patient Summary FHIR IG
0.1.0 - ci-build Kenya flag

Kenya Patient Summary FHIR IG - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: MediacationRequest Profile - KPS

Official URL: https://example.org/fhir/StructureDefinition/kps-medication-request Version: 0.1.0
Draft as of 2025-12-09 Computable Name: KpsMedicationRequest

This profile defines constraints on the MedicationRequest resource for use within the Kenya Patient Summary. It captures information about medications prescribed to a patient by a healthcare provider, supporting prescription management, continuity of care, and interoperability within the national Health Information Exchange (HIE).

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationRequest 0..* MedicationRequestIPS Ordering of medication for patient or group
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 1..1 code Medication Status
Binding: Medication Status ValueSet (required)
... category 0..* CodeableConcept Intended use
Binding: Medication Category Value Set (required)
... doNotPerform ?!Σ 0..1 boolean True if request is prohibiting action
... medication[x] SΣ 1..1 Medication name/code
Binding: Medications - SNOMED CT + Absent/Unknown (IPS) (preferred): SNOMED CT medications (Pharmaceutical / biologic product) or a code for absent/unknown medication
.... medicationCodeableConcept CodeableConcept
.... medicationReference Reference(Medication (IPS))
... subject SΣ 1..1 Reference(Patient (IPS)) Who or group medication request is for
.... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
... supportingInformation S 0..* Reference(Resource) External reference
... reasonReference S 0..* Reference(Condition | Observation) Medication reason
... basedOn SΣ 0..* Reference(CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation) Plan of care / Related with
... dosageInstruction S 0..* Dosage How the medication should be taken
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... text SΣ 0..1 string Dosage Regimen
.... timing SΣ 0..1 Timing Date of onset of treatment
.... route 0..1 CodeableConceptIPS Route of administration
Binding: Medicine Route of Administration - IPS (preferred): EDQM Standards Terms

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MedicationRequest.status Base required Medication Status ValueSet 📦0.1.0 This IG
MedicationRequest.intent Base required Medication request intent 📍4.0.1 FHIR Std.
MedicationRequest.category Base required Medication Category Value Set 📦0.1.0 This IG
MedicationRequest.medication[x] Base preferred Medications - SNOMED CT + Absent/Unknown (IPS) 📦1.1.0 International Patient Summary Implementation Guide v1.1
MedicationRequest.dosageInstruction.​route Base preferred Medicine Route of Administration - IPS 📦1.1.0 International Patient Summary Implementation Guide v1.1

Constraints

Id Grade Path(s) Description Expression
dom-2 error MedicationRequest If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error MedicationRequest 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 MedicationRequest 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 MedicationRequest If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice MedicationRequest 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 MedicationRequestIPS

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationRequest 0..* MedicationRequestIPS Ordering of medication for patient or group
... status 1..1 code Medication Status
Binding: Medication Status ValueSet (required)
... category 0..* CodeableConcept Intended use
Binding: Medication Category Value Set (required)
... medication[x] 1..1 CodeableConcept, Reference(Medication (IPS)) Medication name/code
... reasonReference S 0..* Reference(Condition | Observation) Medication reason
... basedOn S 0..* Reference(CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation) Plan of care / Related with
... dosageInstruction
.... text 0..1 string Dosage Regimen
.... timing 0..1 Timing Date of onset of treatment
.... route 0..1 CodeableConceptIPS Route of administration

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
MedicationRequest.status Base required Medication Status ValueSet 📦0.1.0 This IG
MedicationRequest.category Base required Medication Category Value Set 📦0.1.0 This IG
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationRequest 0..* MedicationRequestIPS Ordering of medication for patient or group
... 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 BindingsPurpose
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
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier 0..* Identifier External ids for this request
... status ?!Σ 1..1 code Medication Status
Binding: Medication Status ValueSet (required)
... statusReason 0..1 CodeableConcept Reason for current status
Binding: medicationRequest Status Reason Codes (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: medicationRequest Intent (required): The kind of medication order.
... category 0..* CodeableConcept Intended use
Binding: Medication Category Value Set (required)
... priority Σ 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.
... doNotPerform ?!Σ 0..1 boolean True if request is prohibiting action
... reported[x] Σ 0..1 Reported rather than primary record
.... reportedBoolean boolean
.... reportedReference Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Organization)
... medication[x] SΣ 1..1 Medication name/code
Binding: Medications - SNOMED CT + Absent/Unknown (IPS) (preferred): SNOMED CT medications (Pharmaceutical / biologic product) or a code for absent/unknown medication
.... medicationCodeableConcept CodeableConcept
.... medicationReference Reference(Medication (IPS))
... subject SΣ 1..1 Reference(Patient (IPS)) Who or group medication request is for
.... 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 0..1 Reference(Encounter) Encounter created as part of encounter/admission/stay
... supportingInformation S 0..* Reference(Resource) External reference
... authoredOn Σ 0..1 dateTime When request was initially authored
... requester Σ 0..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) Who/What requested the Request
... performer 0..1 Reference(Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson | CareTeam) Intended performer of administration
... performerType Σ 0..1 CodeableConcept Desired kind of performer of the medication administration
Binding: ProcedurePerformerRoleCodes (example): Identifies the type of individual that is desired to administer the medication.
... recorder 0..1 Reference(Practitioner | PractitionerRole) Person who entered the request
... reasonCode 0..* CodeableConcept Reason or indication for ordering or not ordering the medication
Binding: Condition/Problem/DiagnosisCodes (example): A coded concept indicating why the medication was ordered.
... reasonReference S 0..* Reference(Condition | Observation) Medication reason
... instantiatesCanonical Σ 0..* canonical() Instantiates FHIR protocol or definition
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition
... basedOn SΣ 0..* Reference(CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation) Plan of care / Related with
... groupIdentifier Σ 0..1 Identifier Composite request this is part of
... courseOfTherapyType 0..1 CodeableConcept Overall pattern of medication administration
Binding: medicationRequest Course of Therapy Codes (example): Identifies the overall pattern of medication administratio.
... insurance 0..* Reference(Coverage | ClaimResponse) Associated insurance coverage
... note 0..* Annotation Information about the prescription
... dosageInstruction S 0..* Dosage How the medication should be taken
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... sequence Σ 0..1 integer The order of the dosage instructions
.... text SΣ 0..1 string Dosage Regimen
.... additionalInstruction Σ 0..* CodeableConcept Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
Binding: SNOMEDCTAdditionalDosageInstructions (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
.... timing SΣ 0..1 Timing Date of onset of treatment
.... asNeeded[x] Σ 0..1 Take "as needed" (for x)
Binding: SNOMEDCTMedicationAsNeededReasonCodes (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.
..... asNeededBoolean boolean
..... asNeededCodeableConcept CodeableConcept
.... site Σ 0..1 CodeableConcept Body site to administer to
Binding: SNOMEDCTAnatomicalStructureForAdministrationSiteCodes (example): A coded concept describing the site location the medicine enters into or onto the body.
.... route 0..1 CodeableConceptIPS Route of administration
Binding: Medicine Route of Administration - IPS (preferred): EDQM Standards Terms
.... method Σ 0..1 CodeableConcept Technique for administering medication
Binding: SNOMEDCTAdministrationMethodCodes (example): A coded concept describing the technique by which the medicine is administered.
.... doseAndRate Σ 0..* Element Amount of medication administered
..... id 0..1 string Unique id for inter-element referencing
..... extension 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: DoseAndRateType (example): The kind of dose or rate specified.
..... dose[x] Σ 0..1 Amount of medication per dose
...... doseRange Range
...... doseQuantity Quantity(SimpleQuantity)
..... rate[x] Σ 0..1 Amount of medication per unit of time
...... rateRatio Ratio
...... rateRange Range
...... rateQuantity Quantity(SimpleQuantity)
.... maxDosePerPeriod Σ 0..1 Ratio Upper limit on medication per unit of time
.... maxDosePerAdministration Σ 0..1 SimpleQuantity Upper limit on medication per administration
.... maxDosePerLifetime Σ 0..1 SimpleQuantity Upper limit on medication per lifetime of the patient
... dispenseRequest 0..1 BackboneElement Medication supply authorization
.... 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
.... initialFill 0..1 BackboneElement First fill details
..... 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
..... quantity 0..1 SimpleQuantity First fill quantity
..... duration 0..1 Duration First fill duration
.... dispenseInterval 0..1 Duration Minimum period of time between dispenses
.... validityPeriod 0..1 Period Time period supply is authorized for
..... id 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
...... extension:data-absent-reason 0..1 code validityPeriod absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required)
..... start ΣC 0..1 dateTime Starting time with inclusive boundary
..... end ΣC 0..1 dateTime End time with inclusive boundary, if not ongoing
.... numberOfRepeatsAllowed 0..1 unsignedInt Number of refills authorized
.... quantity 0..1 SimpleQuantity Amount of medication to supply per dispense
.... expectedSupplyDuration 0..1 Duration Number of days supply per dispense
.... performer 0..1 Reference(Organization) Intended dispenser
... substitution 0..1 BackboneElement Any restrictions on medication substitution
.... 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
.... allowed[x] 1..1 Whether substitution is allowed or not
Binding: ActSubstanceAdminSubstitutionCode (example): Identifies the type of substitution allowed.
..... allowedBoolean boolean
..... allowedCodeableConcept CodeableConcept
.... reason 0..1 CodeableConcept Why should (not) substitution be made
Binding: SubstanceAdminSubstitutionReason (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(MedicationRequest) An order/prescription that is being replaced
... detectedIssue 0..* Reference(DetectedIssue) Clinical Issue with action
... eventHistory 0..* Reference(Provenance) A list of events of interest in the lifecycle

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MedicationRequest.language Base preferred Common Languages 📦4.0.1 FHIR Std.
MedicationRequest.status Base required Medication Status ValueSet 📦0.1.0 This IG
MedicationRequest.statusReason Base example Medication request status reason codes 📦4.0.1 FHIR Std.
MedicationRequest.intent Base required Medication request intent 📍4.0.1 FHIR Std.
MedicationRequest.category Base required Medication Category Value Set 📦0.1.0 This IG
MedicationRequest.priority Base required Request priority 📍4.0.1 FHIR Std.
MedicationRequest.medication[x] Base preferred Medications - SNOMED CT + Absent/Unknown (IPS) 📦1.1.0 International Patient Summary Implementation Guide v1.1
MedicationRequest.subject.​type Base extensible ResourceType 📦4.0.1 FHIR Std.
MedicationRequest.performerType Base example Procedure Performer Role Codes 📦4.0.1 FHIR Std.
MedicationRequest.reasonCode Base example Condition/Problem/Diagnosis Codes 📦4.0.1 FHIR Std.
MedicationRequest.courseOfTherapyType Base example Medication request course of therapy codes 📦4.0.1 FHIR Std.
MedicationRequest.dosageInstruction.​additionalInstruction Base example SNOMED CT Additional Dosage Instructions 📦4.0.1 FHIR Std.
MedicationRequest.dosageInstruction.​asNeeded[x] Base example SNOMED CT Medication As Needed Reason Codes 📦4.0.1 FHIR Std.
MedicationRequest.dosageInstruction.​site Base example SNOMED CT Anatomical Structure for Administration Site Codes 📦4.0.1 FHIR Std.
MedicationRequest.dosageInstruction.​route Base preferred Medicine Route of Administration - IPS 📦1.1.0 International Patient Summary Implementation Guide v1.1
MedicationRequest.dosageInstruction.​method Base example SNOMED CT Administration Method Codes 📦4.0.1 FHIR Std.
MedicationRequest.dosageInstruction.​doseAndRate.type Base example DoseAndRateType 📦4.0.1 FHIR Std.
MedicationRequest.substitution.​allowed[x] Base example ActSubstanceAdminSubstitutionCode 📦3.0.0 THO v7.0
MedicationRequest.substitution.​reason Base example SubstanceAdminSubstitutionReason 📦3.0.0 THO v7.0

Constraints

Id Grade Path(s) Description Expression
dom-2 error MedicationRequest If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error MedicationRequest 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 MedicationRequest 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 MedicationRequest If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice MedicationRequest 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 MedicationRequestIPS

Summary

Must-Support: 3 elements

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationRequest 0..* MedicationRequestIPS Ordering of medication for patient or group
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 1..1 code Medication Status
Binding: Medication Status ValueSet (required)
... category 0..* CodeableConcept Intended use
Binding: Medication Category Value Set (required)
... doNotPerform ?!Σ 0..1 boolean True if request is prohibiting action
... medication[x] SΣ 1..1 Medication name/code
Binding: Medications - SNOMED CT + Absent/Unknown (IPS) (preferred): SNOMED CT medications (Pharmaceutical / biologic product) or a code for absent/unknown medication
.... medicationCodeableConcept CodeableConcept
.... medicationReference Reference(Medication (IPS))
... subject SΣ 1..1 Reference(Patient (IPS)) Who or group medication request is for
.... reference SΣC 1..1 string Literal reference, Relative, internal or absolute URL
... supportingInformation S 0..* Reference(Resource) External reference
... reasonReference S 0..* Reference(Condition | Observation) Medication reason
... basedOn SΣ 0..* Reference(CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation) Plan of care / Related with
... dosageInstruction S 0..* Dosage How the medication should be taken
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... text SΣ 0..1 string Dosage Regimen
.... timing SΣ 0..1 Timing Date of onset of treatment
.... route 0..1 CodeableConceptIPS Route of administration
Binding: Medicine Route of Administration - IPS (preferred): EDQM Standards Terms

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MedicationRequest.status Base required Medication Status ValueSet 📦0.1.0 This IG
MedicationRequest.intent Base required Medication request intent 📍4.0.1 FHIR Std.
MedicationRequest.category Base required Medication Category Value Set 📦0.1.0 This IG
MedicationRequest.medication[x] Base preferred Medications - SNOMED CT + Absent/Unknown (IPS) 📦1.1.0 International Patient Summary Implementation Guide v1.1
MedicationRequest.dosageInstruction.​route Base preferred Medicine Route of Administration - IPS 📦1.1.0 International Patient Summary Implementation Guide v1.1

Constraints

Id Grade Path(s) Description Expression
dom-2 error MedicationRequest If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error MedicationRequest 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 MedicationRequest 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 MedicationRequest If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice MedicationRequest 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()

Differential View

This structure is derived from MedicationRequestIPS

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationRequest 0..* MedicationRequestIPS Ordering of medication for patient or group
... status 1..1 code Medication Status
Binding: Medication Status ValueSet (required)
... category 0..* CodeableConcept Intended use
Binding: Medication Category Value Set (required)
... medication[x] 1..1 CodeableConcept, Reference(Medication (IPS)) Medication name/code
... reasonReference S 0..* Reference(Condition | Observation) Medication reason
... basedOn S 0..* Reference(CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation) Plan of care / Related with
... dosageInstruction
.... text 0..1 string Dosage Regimen
.... timing 0..1 Timing Date of onset of treatment
.... route 0..1 CodeableConceptIPS Route of administration

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
MedicationRequest.status Base required Medication Status ValueSet 📦0.1.0 This IG
MedicationRequest.category Base required Medication Category Value Set 📦0.1.0 This IG

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MedicationRequest 0..* MedicationRequestIPS Ordering of medication for patient or group
... 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 BindingsPurpose
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
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier 0..* Identifier External ids for this request
... status ?!Σ 1..1 code Medication Status
Binding: Medication Status ValueSet (required)
... statusReason 0..1 CodeableConcept Reason for current status
Binding: medicationRequest Status Reason Codes (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: medicationRequest Intent (required): The kind of medication order.
... category 0..* CodeableConcept Intended use
Binding: Medication Category Value Set (required)
... priority Σ 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.
... doNotPerform ?!Σ 0..1 boolean True if request is prohibiting action
... reported[x] Σ 0..1 Reported rather than primary record
.... reportedBoolean boolean
.... reportedReference Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Organization)
... medication[x] SΣ 1..1 Medication name/code
Binding: Medications - SNOMED CT + Absent/Unknown (IPS) (preferred): SNOMED CT medications (Pharmaceutical / biologic product) or a code for absent/unknown medication
.... medicationCodeableConcept CodeableConcept
.... medicationReference Reference(Medication (IPS))
... subject SΣ 1..1 Reference(Patient (IPS)) Who or group medication request is for
.... 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 0..1 Reference(Encounter) Encounter created as part of encounter/admission/stay
... supportingInformation S 0..* Reference(Resource) External reference
... authoredOn Σ 0..1 dateTime When request was initially authored
... requester Σ 0..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device) Who/What requested the Request
... performer 0..1 Reference(Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson | CareTeam) Intended performer of administration
... performerType Σ 0..1 CodeableConcept Desired kind of performer of the medication administration
Binding: ProcedurePerformerRoleCodes (example): Identifies the type of individual that is desired to administer the medication.
... recorder 0..1 Reference(Practitioner | PractitionerRole) Person who entered the request
... reasonCode 0..* CodeableConcept Reason or indication for ordering or not ordering the medication
Binding: Condition/Problem/DiagnosisCodes (example): A coded concept indicating why the medication was ordered.
... reasonReference S 0..* Reference(Condition | Observation) Medication reason
... instantiatesCanonical Σ 0..* canonical() Instantiates FHIR protocol or definition
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition
... basedOn SΣ 0..* Reference(CarePlan | MedicationRequest | ServiceRequest | ImmunizationRecommendation) Plan of care / Related with
... groupIdentifier Σ 0..1 Identifier Composite request this is part of
... courseOfTherapyType 0..1 CodeableConcept Overall pattern of medication administration
Binding: medicationRequest Course of Therapy Codes (example): Identifies the overall pattern of medication administratio.
... insurance 0..* Reference(Coverage | ClaimResponse) Associated insurance coverage
... note 0..* Annotation Information about the prescription
... dosageInstruction S 0..* Dosage How the medication should be taken
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... sequence Σ 0..1 integer The order of the dosage instructions
.... text SΣ 0..1 string Dosage Regimen
.... additionalInstruction Σ 0..* CodeableConcept Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
Binding: SNOMEDCTAdditionalDosageInstructions (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
.... timing SΣ 0..1 Timing Date of onset of treatment
.... asNeeded[x] Σ 0..1 Take "as needed" (for x)
Binding: SNOMEDCTMedicationAsNeededReasonCodes (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.
..... asNeededBoolean boolean
..... asNeededCodeableConcept CodeableConcept
.... site Σ 0..1 CodeableConcept Body site to administer to
Binding: SNOMEDCTAnatomicalStructureForAdministrationSiteCodes (example): A coded concept describing the site location the medicine enters into or onto the body.
.... route 0..1 CodeableConceptIPS Route of administration
Binding: Medicine Route of Administration - IPS (preferred): EDQM Standards Terms
.... method Σ 0..1 CodeableConcept Technique for administering medication
Binding: SNOMEDCTAdministrationMethodCodes (example): A coded concept describing the technique by which the medicine is administered.
.... doseAndRate Σ 0..* Element Amount of medication administered
..... id 0..1 string Unique id for inter-element referencing
..... extension 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: DoseAndRateType (example): The kind of dose or rate specified.
..... dose[x] Σ 0..1 Amount of medication per dose
...... doseRange Range
...... doseQuantity Quantity(SimpleQuantity)
..... rate[x] Σ 0..1 Amount of medication per unit of time
...... rateRatio Ratio
...... rateRange Range
...... rateQuantity Quantity(SimpleQuantity)
.... maxDosePerPeriod Σ 0..1 Ratio Upper limit on medication per unit of time
.... maxDosePerAdministration Σ 0..1 SimpleQuantity Upper limit on medication per administration
.... maxDosePerLifetime Σ 0..1 SimpleQuantity Upper limit on medication per lifetime of the patient
... dispenseRequest 0..1 BackboneElement Medication supply authorization
.... 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
.... initialFill 0..1 BackboneElement First fill details
..... 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
..... quantity 0..1 SimpleQuantity First fill quantity
..... duration 0..1 Duration First fill duration
.... dispenseInterval 0..1 Duration Minimum period of time between dispenses
.... validityPeriod 0..1 Period Time period supply is authorized for
..... id 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
...... extension:data-absent-reason 0..1 code validityPeriod absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required)
..... start ΣC 0..1 dateTime Starting time with inclusive boundary
..... end ΣC 0..1 dateTime End time with inclusive boundary, if not ongoing
.... numberOfRepeatsAllowed 0..1 unsignedInt Number of refills authorized
.... quantity 0..1 SimpleQuantity Amount of medication to supply per dispense
.... expectedSupplyDuration 0..1 Duration Number of days supply per dispense
.... performer 0..1 Reference(Organization) Intended dispenser
... substitution 0..1 BackboneElement Any restrictions on medication substitution
.... 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
.... allowed[x] 1..1 Whether substitution is allowed or not
Binding: ActSubstanceAdminSubstitutionCode (example): Identifies the type of substitution allowed.
..... allowedBoolean boolean
..... allowedCodeableConcept CodeableConcept
.... reason 0..1 CodeableConcept Why should (not) substitution be made
Binding: SubstanceAdminSubstitutionReason (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(MedicationRequest) An order/prescription that is being replaced
... detectedIssue 0..* Reference(DetectedIssue) Clinical Issue with action
... eventHistory 0..* Reference(Provenance) A list of events of interest in the lifecycle

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MedicationRequest.language Base preferred Common Languages 📦4.0.1 FHIR Std.
MedicationRequest.status Base required Medication Status ValueSet 📦0.1.0 This IG
MedicationRequest.statusReason Base example Medication request status reason codes 📦4.0.1 FHIR Std.
MedicationRequest.intent Base required Medication request intent 📍4.0.1 FHIR Std.
MedicationRequest.category Base required Medication Category Value Set 📦0.1.0 This IG
MedicationRequest.priority Base required Request priority 📍4.0.1 FHIR Std.
MedicationRequest.medication[x] Base preferred Medications - SNOMED CT + Absent/Unknown (IPS) 📦1.1.0 International Patient Summary Implementation Guide v1.1
MedicationRequest.subject.​type Base extensible ResourceType 📦4.0.1 FHIR Std.
MedicationRequest.performerType Base example Procedure Performer Role Codes 📦4.0.1 FHIR Std.
MedicationRequest.reasonCode Base example Condition/Problem/Diagnosis Codes 📦4.0.1 FHIR Std.
MedicationRequest.courseOfTherapyType Base example Medication request course of therapy codes 📦4.0.1 FHIR Std.
MedicationRequest.dosageInstruction.​additionalInstruction Base example SNOMED CT Additional Dosage Instructions 📦4.0.1 FHIR Std.
MedicationRequest.dosageInstruction.​asNeeded[x] Base example SNOMED CT Medication As Needed Reason Codes 📦4.0.1 FHIR Std.
MedicationRequest.dosageInstruction.​site Base example SNOMED CT Anatomical Structure for Administration Site Codes 📦4.0.1 FHIR Std.
MedicationRequest.dosageInstruction.​route Base preferred Medicine Route of Administration - IPS 📦1.1.0 International Patient Summary Implementation Guide v1.1
MedicationRequest.dosageInstruction.​method Base example SNOMED CT Administration Method Codes 📦4.0.1 FHIR Std.
MedicationRequest.dosageInstruction.​doseAndRate.type Base example DoseAndRateType 📦4.0.1 FHIR Std.
MedicationRequest.substitution.​allowed[x] Base example ActSubstanceAdminSubstitutionCode 📦3.0.0 THO v7.0
MedicationRequest.substitution.​reason Base example SubstanceAdminSubstitutionReason 📦3.0.0 THO v7.0

Constraints

Id Grade Path(s) Description Expression
dom-2 error MedicationRequest If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error MedicationRequest 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 MedicationRequest 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 MedicationRequest If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice MedicationRequest 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 MedicationRequestIPS

Summary

Must-Support: 3 elements

 

Other representations of profile: CSV, Excel, Schematron