Overview
This page provides more detail on how the web interface displays medication information, which it fetches from the Aggregated FHIR API. Note:
...
The current medications are ordered by start timestamp descending, then end timestamp descending, and then alphabetically.
Past medications will be visually grouped together when they match on the following criteria:
medicationCodeableConcept
Source Organization
Access route
Mappings
Component | MedicationRequest | MedicationStatement |
---|---|---|
Status This is not shown explicitly, but is included in the logic which determines if the medication is current or past. | status status code mappings (FHIR → PKB):
| status status code mappings (FHIR → PKB):
|
Substance The medication substance is shown in 2 places:
| <conditional> If medicationReference is populated: Primary display string
Additional details The code and system of all medicationCodeableConcept.coding Codings are shown. Other elements of the Coding are not shown. Note: the system will be replaced with user-friendly name when known to PKB. Else: Primary display string
Additional details As per the logic above for primary display string. | |
Start Timestamp | <conditional> If this extension is present: http://nictiz.nl/fhir/StructureDefinition/zib-Medication-PeriodOfUse extension[x]: valuePeriod.start Else: authoredOn | effectivePeriod.start |
End Timestamp | <conditional> If this extension is present: http://nictiz.nl/fhir/StructureDefinition/zib-Medication-PeriodOfUse extension[x]: valuePeriod.end Else: No value. | effectivePeriod.end |
For the dosage and frequency-related information, except where noted PKB will use the Primary Dosage, which is the Dosage determined as follows:
| ||
“Structured Frequency” (Frequency Priority / Frequency Value / Frequency Units) | <conditional> If asNeededCodeableConcept is present, or asNeededBoolean is set to true: “Take as needed” will be shown; i18n is applied. Else if Timing.code is populated with any value: “Take as directed” will be shown; i18n is applied. Else if Timing.repeat has frequency set to 1, periodUnit has a value of either “d” or “h”, and period is a known integer for the corresponding periodUnit: A corresponding textual description; i18n is applied. Example: “Every four hours” Else: No value. | |
Frequency Text This is shown underneath the main line for the medication. | <conditional> If text is populated: the same text Else if there was no Structured Frequency found, and Timing.repeat is populated with both period and periodUnit: If frequency element is also populated: “<frequency> time(s) every <period> <periodUnit>(s)” will be generated and shown; i18n is not applied. Else: “Every <period> <periodUnit>(s)” will be generated and shown; i18n is not applied. Else: No value. | |
Dose Value | doseAndRep[0].doseQuantity.value | |
Dose Units / Medication Unit The dose unit is shown in 2 places:
| <conditional> If doseAndRep[0].doseQuantity has a code, no unit and no system: The code is assumed to be one of the supported unit values as per [[Medication Unit]]. Primary display string The primary display string will be an appropriate display name with i18n applied. Additional details There is no additional code information to display. Else: We inspect the first Dosage (which might differ from the previously determined Primary Dosage) and inspect doseAndRep[0].doseQuantity for the http://fhir.patientsknowbest.com/structuredefinition/dose-units extension. Primary display string
Additional details The code and system of all Codings are shown. Other elements of the Coding are not shown. Note: the system will be replaced with user-friendly name when known to PKB. | |
Instructions | The instructions displayed will be the concatenation of all of the following information, in this order:
|