Scope

These guidelines describe the mapping of the Kmehr data to the summary view of the Vitalink medication scheme for healthcare professionals.

The screenshots below are all from this reference PDF.

Data source

The Vitalink PDF is a visualisation of a <kmehrmessage> with CD-STANDARD "20161201".
All data of the Vitalink PDF are taken from the <folder>.

The <folder> contains:

  • exactly 1 patient
  • exactly 1 transaction of the type medicationscheme (further referred to as MS)
  • 0 or more transactions of the type medicationscheemeelement (further referred to as MSE)
  • 0 or more transactions of the type treatmentsuspension (further referred to as TS), where each TS is linked to exactly 1 MSE.

Mapping

Header (MS)

NrDescriptionValue from Kmehrmessage
1"Afgedrukt op:"Does not occur in the Kmehrmessage, but it is generated. today() + " - " + now()
2"Medicatieschema:" 

folder/patient/firstname + " " +  folder/patient/lastname

3"Laatst gewijzigd op:"folder/transaction[content/cd[text()='medicationscheme']/date + " - " + folder.transaction[content/cd[text()='medicationscheme']/time
4 "Naam:"

All name data from folder/transaction[content/cd[text()='medicationscheme']/hcparty[?]

(warning) VAZG-110 - Getting issue details... STATUS Which HCParty exactly?

5"Functie:"

Dutch translation for the code of the role data in folder/transaction[content/cd[text()='medicationscheme']/hcparty[?], translated according to https://www.ehealth.fgov.be/standards/kmehr/en/tables/healthcare-party-type

(warning) VAZG-110 - Getting issue details... STATUS Which HCParty exactly?

6"Versienummer:"folder/transaction[content/cd[text()='medicationscheme']/version


Intake blocks

The overview shows the schedule in 6 intake blocks: "Nog in te plannen medicatie", "Ontbijt", "Middagmaal", "Avondmaal", "Bij het slapen" and "Indien nodig".
Each of these intake block has up to 3 columns.

The table below indicates what a medicationschemeelement-transaction must meet in order to occur in a specific intake block.

Intake block

How to use this intake block

Condition from Kmehrmessage

/folder/transaction[content/cd[text()='medicationschemeelement']/item[cd[@S='CD-ITEM'][text()='medication']]...




AND
"Nog in te plannen medicatie"

Unlabeled

  • Spread over 3 columns
If / posology is present, it is used, otherwise it is empty

(

/temporality == chronic

OR

/temporality == acute

)

AND

/regimen is not present
"Ontbijt"



"'s morgens"

  • Spread over 3 columns
  • At the top
  1. /regimen/daytime/dayperiod == morning
  2. /regimen/daytime/time in range 00:01-7:59, as defined in the requirements

(

/temporality == chronic

OR

/temporality == acute

)

AND

/regimen is present

"voor"

  • First columns from the left
/regimen/daytime/dayperiod == beforebreakfast

"tijdens"

  • Second columns from the left
/regimen/daytime/dayperiod == duringbreakfast

"na"

  • Third columns from the left
/regimen/daytime/dayperiod == afterbreakfast

"tussen ontbijt en middagmaal"

  • Spread over 3 columns
  • At the bottom
  1. /regimen/daytime/time in range 08:00-11:59, as defined in the requirements
  2. /regimen/daytime/dayperiod == betweenbreakfastandlunch
"Middagmaal"


"voor"

  • First columns from the left
/regimen/daytime/dayperiod == beforelunch

"tijdens"

  • Second columns from the left
/regimen/daytime/dayperiod == duringlunch

"na"

  • Third columns from the left
/regimen/daytime/dayperiod == afterlunch

"tussen middagmaal en avondmaal"

  • Spread over 3 columns
  • At the bottom
  1. /regimen/daytime/time in range 12:00-17:59, as defined in the requirements
  2. /regimen/daytime/dayperiod == betweenlunchanddinner
"Avondmaal"


"voor"

  • First columns from the left
/regimen/daytime/dayperiod == beforedinner

"tijdens"

  • Second columns from the left
/regimen/daytime/dayperiod == duringdinner

"na"

  • Third columns from the left
/regimen/daytime/dayperiod == afterdinner

"tussen avondmaal en nacht"

  • Spread over 3 columns
  1. /regimen/daytime/time in range 18:00-20:59, as defined in the requirements
  2. /regimen/daytime/dayperiod == betweendinnerandsleep
"Bij het slapen"

"voor"

  • First columns from the left
  1. /regimen/daytime/time in range 21:00-00:00, as defined in the requirements
  2. /regimen/daytime/dayperiod == thehourofsleep
"Indien nodig"

Unlabeled

  • Spread over 3 columns
/regimen/daytime/dayperiod is used

/temporality == oneshot

If /posology is present, it is used, otherwise it is empty


Medicationline (MSE+TS)

General

MSE

NrDescription

Value from Kmehrmessage

/folder/transaction[content/cd[text()='medicationschemeelement']...

1

name medication

If one of the following is present, show this:

  1. /item[cd[@S='CD-ITEM'][text()='medication']]/medicinalproduct/deliveredname
  2. /item[cd[@S='CD-ITEM'][text()='medication']]/medicinalproduct/intendedname
  3. /item[cd[@S='CD-ITEM'][text()='medication']]/substanceproduct/deliveredname
  4. /item[cd[@S='CD-ITEM'][text()='medication']]/substanceproduct/intendedname
  5. /item[cd[@S='CD-ITEM'][text()='medication']][content[cd[@S='CD-EAN']]]]/text
  6. /item[cd[@S='CD-ITEM'][text()='medication']]/content/text (present if /compoundprescription is present)

2

drugroute

Dutch translation of code from item[cd[@S='CD-ITEM'][text()='medication']]/route, according to https://www.ehealth.fgov.be/standards/kmehr/en/tables/drug-administration-route

If route is not present: "-"


unit

Dutch translation of code from first entered item[cd[@S='CD-ITEM'][text()='medication']]/regimen/quantity/unit, according to https://www.ehealth.fgov.be/standards/kmehr/en/tables/unit

if no unit is present: "-" (warning) TBD:validation-error, but how to visualize?

4quantityitem[cd[@S='CD-ITEM'][text()='medication']]/regimen/quantity/decimal
5frequency

Dutch translation of code from /frequency/periodicity according to M. Specific translation of supported Kmehr table codes

The order of the table "Sorting value Vitalink" in the table above should be pursued.

if no periodicity is present: no visualisation.

6end date

/endmoment/date

If /endmoment/date is not present and /duration is present:

/beginmoment/date + /duration/decimal * /duration/unit

If both are not present:

  • and if end condition is not present: "Niet opgegeven".
  • and if end condition is present: no visualisation.
7end condition

item[cd[text()='endcondition']]/content[text]/text

If end condition is not present: no visualisation.

7'begin condition

item[cd[text()='begincondition']]/content[text]/text

If begin condition is not present: no visualisation.

8start date/beginmoment/date
15instructions/instructionforpatient/text

TS

NrDescription

Value from Kmehrmessage

/folder/transaction[content/cd[text()='medicationschemeelement']...

9start date of suspension/beginmoment/date
10end date of suspension

/endmoment/date

If /endmoment/date is not present and /duration is present:

/beginmoment/date + /duration/decimal * /duration/unit

11reason of suspensionitem[cd[text()='transactionreason']]/content[text]/text
12author of suspension

All name data from /hcparty[?]

(warning) VAZG-111 - Getting issue details... STATUS Which HCParty exactly?

13role of author of suspension

Dutch translation for the code of the role data in /hcparty[?], translated according to https://www.ehealth.fgov.be/standards/kmehr/en/tables/healthcare-party-type

(warning) VAZG-111 - Getting issue details... STATUS Which HCParty exactly?

14decision date of suspension/date + " - " + /time

Deviations for "Nog in te plannen medicatie" and "Indien nodig"

NrDescription

Value from Kmehrmessage

/folder/transaction[content/cd[text()='medicationschemeelement']...

1free text posology

/posology/text

If /posology is not present and /regimen is also not present: no visualisation.

2unit

Dutch translation of code from first entered item[cd[@S='CD-ITEM'][text()='medication']]/regimen/quantity/unit, according to https://www.ehealth.fgov.be/standards/kmehr/en/tables/unit

If no unit is present:

  • and if /regimen is not present: no visualisation.
  • and if /regimen is present: "-"
3quantityitem[cd[@S='CD-ITEM'][text()='medication']]/regimen/quantity/decimal
4intake moment

If item[cd[@S='CD-ITEM'][text()='medication']]/regimen/daytime/dayperiod is present:


If item[cd[@S='CD-ITEM'][text()='medication']]/regimen/daytime/time is present:

  • Display (rounded to format HH:MM) of this hour.
5frequency

Dutch translation of code from /frequency/periodicity according to https://www.ehealth.fgov.be/standards/kmehr/en/tables/periodicity

If periodicity is not present: no visualisation.

One medication with 2 or more intake moments with discrete hours

If one medication has 2 or more intake moments with discrete hours, for example the medication has to be taken at 14:00, 15:00 and 16:00, these are displayed as 3 separate medication lines in chronological order.

Validation error

 

  • No labels