Profiles & Operations Index > Profile: MedicationStatement

Profile: MedicationStatement

Canonical URL:http://ontariohealth.ca/fhir/StructureDefinition/ca-on-ps-profile-medicationstatement

Simplifier project page: Medication Statement (PS-ON)

Derived from: MedicationStatement (R4)

Formal Views of Profile Content

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

Differential View

versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceΣ0..1uri
profileS Σ1..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
tagΣ0..*Coding
RenderedDosageInstructionI0..1Extension(string)
identifierΣ0..*Identifier
basedOnΣ I0..*Reference(MedicationRequest | CarePlan | ServiceRequest)
partOfΣ I0..*Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Observation)
statusS Σ ?!1..1codeBinding
statusReason0..*CodeableConcept
categoryΣ0..1CodeableConceptBinding
medicationReferenceS Σ0..1Reference(Medication (PS-ON))
medicationCodeableConceptS Σ0..1Codeable Concept (PS-ON)Binding
referenceS Σ I1..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
contextΣ I0..1Reference(Encounter | EpisodeOfCare)
data-absent-reasonS I0..1Extension(code)
effectiveDateTimedateTime
effectivePeriodPeriod
dateAssertedΣ0..1dateTime
informationSourceI0..1Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Organization)
derivedFromI0..*Reference(Resource)
reasonCode0..*CodeableConcept
reasonReferenceI0..*Reference(Condition | Observation | DiagnosticReport)
note0..*Annotation
sequenceΣ0..1integer
textS Σ0..1string
additionalInstructionΣ0..*CodeableConcept
patientInstructionΣ0..1string
timingS Σ0..1Timing
asNeededBooleanboolean
asNeededCodeableConceptCodeableConcept
siteΣ0..1CodeableConcept
routeSCTCAΣ0..*Coding (PS-ON)Binding
textS Σ0..1string
methodΣ0..1CodeableConcept
typeΣ0..1CodeableConcept
doseRangeRange
doseQuantitySimpleQuantity
rateRatioRatio
rateRangeRange
rateQuantitySimpleQuantity
maxDosePerPeriodΣ I0..1Ratio
maxDosePerAdministrationΣ I0..1SimpleQuantity
maxDosePerLifetimeΣ I0..1SimpleQuantity

Hybrid View

versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceΣ0..1uri
profileS Σ1..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
tagΣ0..*Coding
RenderedDosageInstructionI0..1Extension(string)
identifierΣ0..*Identifier
basedOnΣ I0..*Reference(MedicationRequest | CarePlan | ServiceRequest)
partOfΣ I0..*Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Observation)
statusS Σ ?!1..1codeBinding
statusReason0..*CodeableConcept
categoryΣ0..1CodeableConceptBinding
medicationReferenceS Σ0..1Reference(Medication (PS-ON))
medicationCodeableConceptS Σ0..1Codeable Concept (PS-ON)Binding
referenceS Σ I1..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
contextΣ I0..1Reference(Encounter | EpisodeOfCare)
data-absent-reasonS I0..1Extension(code)
effectiveDateTimedateTime
effectivePeriodPeriod
dateAssertedΣ0..1dateTime
informationSourceI0..1Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Organization)
derivedFromI0..*Reference(Resource)
reasonCode0..*CodeableConcept
reasonReferenceI0..*Reference(Condition | Observation | DiagnosticReport)
note0..*Annotation
sequenceΣ0..1integer
textS Σ0..1string
additionalInstructionΣ0..*CodeableConcept
patientInstructionΣ0..1string
timingS Σ0..1Timing
asNeededBooleanboolean
asNeededCodeableConceptCodeableConcept
siteΣ0..1CodeableConcept
routeSCTCAΣ0..*Coding (PS-ON)Binding
textS Σ0..1string
methodΣ0..1CodeableConcept
typeΣ0..1CodeableConcept
doseRangeRange
doseQuantitySimpleQuantity
rateRatioRatio
rateRangeRange
rateQuantitySimpleQuantity
maxDosePerPeriodΣ I0..1Ratio
maxDosePerAdministrationΣ I0..1SimpleQuantity
maxDosePerLifetimeΣ I0..1SimpleQuantity

Snapshot View

versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceΣ0..1uri
profileS Σ1..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
tagΣ0..*Coding
RenderedDosageInstructionI0..1Extension(string)
identifierΣ0..*Identifier
basedOnΣ I0..*Reference(MedicationRequest | CarePlan | ServiceRequest)
partOfΣ I0..*Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Observation)
statusS Σ ?!1..1codeBinding
statusReason0..*CodeableConcept
categoryΣ0..1CodeableConceptBinding
medicationReferenceS Σ0..1Reference(Medication (PS-ON))
medicationCodeableConceptS Σ0..1Codeable Concept (PS-ON)Binding
referenceS Σ I1..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayΣ0..1string
contextΣ I0..1Reference(Encounter | EpisodeOfCare)
data-absent-reasonS I0..1Extension(code)
effectiveDateTimedateTime
effectivePeriodPeriod
dateAssertedΣ0..1dateTime
informationSourceI0..1Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Organization)
derivedFromI0..*Reference(Resource)
reasonCode0..*CodeableConcept
reasonReferenceI0..*Reference(Condition | Observation | DiagnosticReport)
note0..*Annotation
sequenceΣ0..1integer
textS Σ0..1string
additionalInstructionΣ0..*CodeableConcept
patientInstructionΣ0..1string
timingS Σ0..1Timing
asNeededBooleanboolean
asNeededCodeableConceptCodeableConcept
siteΣ0..1CodeableConcept
routeSCTCAΣ0..*Coding (PS-ON)Binding
textS Σ0..1string
methodΣ0..1CodeableConcept
typeΣ0..1CodeableConcept
doseRangeRange
doseQuantitySimpleQuantity
rateRatioRatio
rateRangeRange
rateQuantitySimpleQuantity
maxDosePerPeriodΣ I0..1Ratio
maxDosePerAdministrationΣ I0..1SimpleQuantity
maxDosePerLifetimeΣ I0..1SimpleQuantity

Table View

MedicationStatement..
MedicationStatement.meta1..
MedicationStatement.meta.profile1..
MedicationStatement.extensionExtension..1
MedicationStatement.status..
MedicationStatement.medication[x]..
MedicationStatement.medication[x]Reference(Medication (PS-ON))0..1
MedicationStatement.medication[x]Codeable Concept (PS-ON)0..1
MedicationStatement.subjectReference(Patient (PS-ON))..
MedicationStatement.subject.reference1..
MedicationStatement.effective[x]1..1
MedicationStatement.effective[x].extensionExtension..1
MedicationStatement.dosage..
MedicationStatement.dosage.text..
MedicationStatement.dosage.timing..
MedicationStatement.dosage.routeCodeable Concept (PS-ON)0..1
MedicationStatement.dosage.route.codingCoding (PS-ON)..
MedicationStatement.dosage.route.coding..


JSON View

{
    "resourceType": "StructureDefinition",
    "id": "ca-on-ps-profile-medicationstatement",
    "url": "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-ps-profile-medicationstatement",
    "version": "0.10.0",
    "name": "MedicationStatementPSON",
    "title": "Medication Statement (PS-ON)",
    "status": "draft",
    "date": "2022-10-15T12:00:00+00:00",
    "publisher": "Ontario Health",
    "description": "This profile defines a set of constraints to the FHIR MedicationStatement resource for use in Ontario Patient Summaries (PS-ON).  It refines constraints applied to the MedicationStatement resource by the PS-CA project to represent a record of a medication statement in the patient summary. It is informed by the constraints of the [MedicationStatement-UV-IPS profile](http://hl7.org/fhir/uv/ips/StructureDefinition-MedicationStatement-uv-ips.html) and the [Canadian Baseline Profile](http://build.fhir.org/ig/HL7-Canada/ca-baseline/branches/master/StructureDefinition-profile-medicationstatement.html) to allow for cross-border and cross-jurisdiction sharing of Medication Summary information.",
    "fhirVersion": "4.0.1",
    "kind": "resource",
    "abstract": false,
    "type": "MedicationStatement",
    "baseDefinition": "http://hl7.org/fhir/StructureDefinition/MedicationStatement",
    "derivation": "constraint",
    "differential": {
        "element":  [
            {
                "id": "MedicationStatement",
                "path": "MedicationStatement",
                "comment": "Jurisdictions mapping prescription data into FHIR profiles for the patient summary should use the MedicationRequest resource. Use of the MedicationStatement profile should be reserved for communicating a statement about the patient's usage of the medication that is ultimately provided by a patient, significant other, or a clinican."
            },
            {
                "id": "MedicationStatement.meta",
                "path": "MedicationStatement.meta",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "MedicationStatement.meta.profile",
                "path": "MedicationStatement.meta.profile",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "MedicationStatement.extension:RenderedDosageInstruction",
                "path": "MedicationStatement.extension",
                "sliceName": "RenderedDosageInstruction",
                "short": "Extension for representing rendered dosage instruction.",
                "definition": "A free form textual specification generated from the input specifications as created by the provider.This is made up of either an 'Ad-hoc instruction' or 'Textual rendition of the structured dosage lines', plus route, dosage unit, and other pertinent administration information specified by the provider.",
                "comment": "Use of structured fields for dosage instructions is heavily encouraged by this specification to promote interoperability of patient summaries. However, this extension is provided to make implementers aware that legacy medication data may come from some systems in this format. This extension is used by PrescribeIT implementations when the system has difficulty sending very complex dosage instructions in the form of structured data. Implementers are encouraged to read the PrescribeIT Specification (https://specs.prescribeit.ca/R5.0/erx/extension-ext-medication-rendered-dosage.html) to understand the context around its use.",
                "max": "1",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://prescribeit.ca/fhir/StructureDefinition/ext-rendered-dosage-instruction"
                        ]
                    }
                ]
            },
            {
                "id": "MedicationStatement.status",
                "path": "MedicationStatement.status",
                "comment": "In the scope of the IPS the entered-in-error concept is not allowed. Implementors should be aware that the shift to R5 MedicationUsage will also involve a new value set for status that is constrained to: recorded, entered-in-error, and draft.",
                "mustSupport": true
            },
            {
                "id": "MedicationStatement.medication[x]",
                "path": "MedicationStatement.medication[x]",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "type",
                            "path": "$this"
                        }
                    ],
                    "rules": "closed"
                },
                "definition": "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 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.",
                "comment": "Work is underway to define the pan-Canadian terminology that will be preferred and/or socialized for this element.",
                "mustSupport": true,
                "binding": {
                    "strength": "example",
                    "valueSet": "https://fhir.infoway-inforoute.ca/ValueSet/prescriptionmedicinalproduct"
                }
            },
            {
                "id": "MedicationStatement.medication[x]:medicationReference",
                "path": "MedicationStatement.medication[x]",
                "sliceName": "medicationReference",
                "definition": "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 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.",
                "comment": "IPS-UV Note: If only a code is specified, then it needs to be a code for a specific product. If more information is required, then the use of the medication resource is recommended.  For example, if you require form or lot number, then you must reference the Medication resource.",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-ps-profile-medication"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "MedicationStatement.medication[x]:medicationCodeableConcept",
                "path": "MedicationStatement.medication[x]",
                "sliceName": "medicationCodeableConcept",
                "short": "Code for absent or unknown medication - or for supplying a codeableConcept when no information other than a simple code is available",
                "definition": "Code for a negated/excluded medication statement.  This describes a categorical negated statement (e.g., \"No known medications\") Because the IPS-UV value set on this slice is extensible, it can be used to supply other medication codes when only a simple code is available.",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "CodeableConcept",
                        "profile":  [
                            "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-ps-profile-codeableconcept"
                        ]
                    }
                ],
                "mustSupport": true,
                "binding": {
                    "extension":  [
                        {
                            "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
                            "valueString": "UnknownMedicationCode"
                        }
                    ],
                    "strength": "extensible",
                    "description": "Representation of unknown or absent medications",
                    "valueSet": "http://hl7.org/fhir/uv/ips/ValueSet/absent-or-unknown-medications-uv-ips"
                }
            },
            {
                "id": "MedicationStatement.subject",
                "path": "MedicationStatement.subject",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-ps-profile-patient"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "MedicationStatement.subject.reference",
                "path": "MedicationStatement.subject.reference",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "MedicationStatement.effective[x]",
                "path": "MedicationStatement.effective[x]",
                "min": 1,
                "max": "1",
                "mustSupport": true
            },
            {
                "id": "MedicationStatement.effective[x].extension:data-absent-reason",
                "path": "MedicationStatement.effective[x].extension",
                "sliceName": "data-absent-reason",
                "short": "effective[x] absence reason",
                "definition": "Provides a reason why the effectiveTime is missing.",
                "max": "1",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://hl7.org/fhir/StructureDefinition/data-absent-reason"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "MedicationStatement.dosage",
                "path": "MedicationStatement.dosage",
                "mustSupport": true
            },
            {
                "id": "MedicationStatement.dosage.text",
                "path": "MedicationStatement.dosage.text",
                "mustSupport": true
            },
            {
                "id": "MedicationStatement.dosage.timing",
                "path": "MedicationStatement.dosage.timing",
                "mustSupport": true
            },
            {
                "id": "MedicationStatement.dosage.route",
                "path": "MedicationStatement.dosage.route",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "CodeableConcept",
                        "profile":  [
                            "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-ps-profile-codeableconcept"
                        ]
                    }
                ],
                "binding": {
                    "strength": "preferred",
                    "description": "SCTCA Route of Administration",
                    "valueSet": "https://fhir.infoway-inforoute.ca/ValueSet/routeofadministration"
                }
            },
            {
                "id": "MedicationStatement.dosage.route.coding",
                "path": "MedicationStatement.dosage.route.coding",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "pattern",
                            "path": "$this"
                        }
                    ],
                    "description": "Discriminated by value set",
                    "rules": "open"
                },
                "mustSupport": true,
                "type":  [
                    {
                        "code": "Coding",
                        "profile":  [
                            "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-ps-profile-coding"
                        ]
                    }
                ]
            },
            {
                "id": "MedicationStatement.dosage.route.coding:routeSCTCA",
                "path": "MedicationStatement.dosage.route.coding",
                "sliceName": "routeSCTCA",
                "short": "Optional slice for representing SNOMED CT Canadian edition routes of administration",
                "definition": "SNOMED CT Canadian edition routes of administration",
                "binding": {
                    "strength": "required",
                    "valueSet": "https://fhir.infoway-inforoute.ca/ValueSet/routeofadministration"
                }
            }
        ]
    }
}

Usage

The MedicationStatement Resource is used to populate entries in the MedicationStatement section of a Patient Summary.

Notes

.id

  • Definition: Logical id of this artifact
  • used to uniquely identify the resource
  • if a persistent identity for the resource is not available to use when constructing the composition Bundle, a UUID SHOULD be used in this element (with a corresponding value in Bundle.entry.fullUrl)
  • Where .id is populated with a persistent identifier, consumers SHALL NOT expect to be able to resolve the resource and SHALL always use the version of the resource contained in the Bundle to render the composition.

.meta.profile

  • used to declare conformance to this profile
  • populate with a fixed value: http://ontariohealth.ca/fhir/StructureDefinition/ca-on-ps-profile-medicationstatement|0.9.1

.meta.versionId

  • SHALL be populated by the Patient Summary Repository server
  • consuming systems can expect this element to be populated when retrieving patient summary instances from the repository
  • source systems do not need to populate this element prior to submission

.status

  • SHALL be used to indicate the status of the medication usage described by this record (e.g. "active", "stopped", "on-hold"
  • When no medications are provided in the Medication Summary section (i.e. .medication indicates absent or unknown medications), .status SHALL be set to 'unknown'
  • mustSupport element in international patient summary
  • MedicationStatements with a .status of entered-in-error SHALL NOT be included in the patient summary

.medication

  • SHALL be used to either:
    • identify the medication in the entry
    • explicitly state that the patient has no known or unknown medications when the section in the patient summary does not contain any medications
  • in situations where a medication is present, a reference to a Medication resource contained in this patient summary Bundle SHALL be provided
  • in situations where a medication is not present, this SHALL be conveyed using .coding from the prescribed valueSet
  • mustSupport element in international patient summary

.subject

  • SHALL provide a .reference to the same Patient resource identified in Composition.subject
  • mustSupport element in international patient summary

.effective

  • SHOULD be used to convey the period of time for which the medication in this entry is/was being taken
  • mustSupport element in international patient summary

.effective.dataAbsentReason

  • NOTE: There is currently a rendering issue with this profile; the dataAbsentReason extension should be rendering under the .effective element
  • If no data is available about the effective date or period of the record, .dataAbsentReason SHOULD be used to indicate why this information is absent
  • If no medications are present (i.e. .medication is used to convey absent or unknown), .dataAbsentReason SHALL be set to "not-applicable"
  • mustSupport element in international patient summary

.informationSource

  • used to provide source of information when not Composition.author
  • mustSupport element in international patient summary

.dosage.text

  • SHOULD be used to convey free-text instructions about how the medication is to be taken. It is expected that dosage.text will always be populated; if dosage.timing and/or dosage.route are also populated, dosage.text should convey the same timing and route information as the coded elements.
  • mustSupport element in international patient summary

.dosage.timing

  • SHOULD be used to convey the timing schedule for the medication in this record if coded timing is available.
  • If present, dosage.timing should reflect the same timing information conveyed by dosage.text
  • mustSupport element in international patient summary

dosage.route

  • may be used to convey the route by which the medication is administered (e.g. oral use, nasal use) if coded route data is available.
  • If present, dosage.route should reflect the same administration route information conveyed by dosage.text
  • mustSupport element in international patient summary