This page specifies how to map a version 6.12 'verstrekkingenlijst' response into the Medicatieproces (MP) version 9 transaction: 'beschikbaarstellen medicatiegegevens'. The MP 9 version datamodel is based on the following [https://zibs.nl/wiki/HCIM_Mainpage#Health_and_Care_information_models healthcare information models]: Patient, MedicationAgreement, DispenseRequest, AdministrationAgreement, MedicationDispense, MedicationUse and MedicationAdministration.
A version 6.12 verstrekkingenlijst maps to three healthcare information models: Patient, AdministrationAgreement and MedicationDispense.
Find the current version here: https://informatiestandaarden.nictiz.nl/wiki/Mappings/MP612Dispense_2_MP9MedicationInformation
Since the mapping is done between different versions of the MP standard there are some pitfalls that need to be accounted for:
}}
*not all MP-9 functionality is available in 6.12 and
| 1|| Medicamenteuze behandeling (MBH) niet ondersteund || Bij iedere verstrekking wordt een eigen MBH-id gegenereerd. Dit MBH-id is gebaseerd op de verstrekkingsidentificatie. Dit gebeurt door te concateneren (concat('MedBehConverted_', ./@extension)) met dezelfde root OID. Dit betekent dat bij het opnieuw converteren de id wél hetzelfde is. Echter, het groeperen van verstrekkingen op basis van MBH heeft geen toegevoegde waarde voor op deze manier geconverteerde 6.12-verstrekkingen.
|-
| 2|| Toedieningsafspraak (TA) niet ondersteund als aparte bouwsteen || De informatie van de toedieningsafspraak is verweven met de informatie van de verstrekking. De toedieningsafspraak is niet apart identificeerbaar of opvraagbaar. Bij iedere verstrekking wordt een eigen TA-id gegenereerd. Dit TA-id is gebaseerd op de verstrekkingsidentificatie. Dit gebeurt door te concateneren (concat('TAConverted_', ./@extension)) met dezelfde root OID.
|-
| 3|| TA/afspraakdatum niet beschikbaar|| De verstrekkingsdatum(tijd) overnemen als afspraakdatum(tijd)
|-
| 4|| Gebruiksperiode soms moeilijk afleidbaar|| In versie 6.12 is de juiste gebruiksperiode soms moeilijk afleidbaar. Gebruiksperiode wordt in de volgende gevallen afgeleid:
*Als er één 6.12 MedicationAdministrationRequest (MAR) is:
**Bij eenmalig gebruik, de datum(/tijd) van het eenmalig gebruik overnemen als startdatum gebruik.
*Als er meer dan één 6.12 MAR is, dan moeten deze allemaal een startdatum hebben om een mapping te kunnen doen (met minimaal één 'zwevende' periode bij meerdere MARs kan geen gebruiksduur berekend worden):
**startdatum: als alle MARs een startdatum hebben: vroegste startdatum overnemen als startdatum gebruik
**duur: niet van toepassing, bij meerdere MARs de einddatum berekenen
**einddatum:
***als alle MARs een einddatum hebben: chronologisch laatste einddatum overnemen als einddatum gebruik
***als alle MARs een startdatum én duur hebben: de einddatums berekenen door de bij de startdatum horende duur op te tellen bij die startdatum, en dan de chronologisch laatste einddatum overnemen als einddatum gebruik.
***niet ondersteund in de mapping: een combinatie van einddatum en duur in de verschillende MAR's. In theorie kan dan ook een einddatum worden uitgerekend. Echter in de praktijk komt zo'n combinatie niet voor in 6.12 berichten. Dat is ook niet logisch, een leverancier kiest eigenlijk altijd één van de twee methoden (ofwel startdaum en duur ofwel start- en einddatum).
***als minimaal één MAR geen duur of einddatum heeft, dan is de medicatie 'tot nader order'. Er wordt dan geen duur of einddatum opgenomen.
**bij meer dan één MAR met 'eenmalig gebruik' wordt geen gebruiksperiode opgenomen.
|-
| 5|| TA/geannuleerd indicator niet ondersteund|| Niet opgenomen
|-
| 6|| TA/stoptype niet ondersteund|| Niet opgenomen
|-
| 7|| TA/verstrekker//organisatie_naam niet verplicht|| Deze organisatie_naam is 1..1 Required in MP-9, maar heeft niet altijd een waarde in 6.12. Wordt opgenomen met een nullFLavor NI indien niet aangetroffen in de 6.12 verstrekking.
|-
|8||TA/reden afspraak niet ondersteund || Niet opgenomen
|-
| .|| ||
|-
| .|| ||
|-
| .|| ||
|-
| .|| ||
|}
==Information in MP-612 which does not seemlessly map on MP-9 datamodel==
|1||Vertalingen bij medicatie coderingen (G-standaard) || Het MP-9 datamodel / ada-formaat ondersteunt (nog) geen vertalingen (translation) bij gecodeerde elementen. Deze worden in 6.12 vooral meegegeven bij medicatieproducten uit de G-standaard. Daarbij worden altijd vertalingen meegegeven die vanuit de G-standaard sowieso afleidbaar zijn. Deze expliciet meegegeven vertalingen worden niet meegenomen in de conversie.
|-
|2||Magistralen - onderscheid tussen actieve ingrediënten en hulpstoffen niet meer mogelijk || MP-9 heeft dit onderscheid losgelaten. Alle 6.12 ingrediënten worden daarom vertaald naar een ingrediënt zonder nadere aanduiding.
Since the specification is in Dutch the MAPPING DESCRIPTION column in the table below is also in Dutch.
MP 6.12 Verstrekking
MAPPING DESCRIPTION
Clinical Building Block
Type
Concept
Card
Type
Concept
Card
//subject/ Patient
1..1
Bij medicatieverstrekkingenlijst staat de patiënt in: // ControlActProcess/ subject/ MedicationDispenseList/ subject/ Patient
Bij medicatieverstrekkingen (los) staat de patiënt in iedere verstrekking: // ControlActProcess/ subject/ MedicationDispenseEvent/ product/ dispensedMedication/ directTargetOf/ prescription/ subject/ Patient
Medicatieverstrekkingen (los) is een verouderde specificatie en vanaf 6.12.3 uitgefaseerd.
Patient
1 .. 1
subject/ Patient/ Person/ name
0..*
De naam van de patiënt kan in versie 6.1x zowel in (gestructureerde) stukken als in (ongestructureerde) tekst worden meegegeven.
Het type van dit element kan dus zowel een 'groep' zijn, als een 'string'.
Naamgegevens
1 .. 1
subject/ Patient/ Person/ name/ given zonder een qualifier attribuut of met een qualifier attribuut dat de string 'BR' bevat.
Het HL7-datatype voor PN (person name) bevat de namen in de volgorde van gewenste aanspreking. De opties van dit concept kunnen daarom afgeleid worden uit de volgorde waarin de eigen geslachtsnaam (met qualifier BR - Birth Record) en die van de partner (met qualifier SP - SPouse) worden aangetroffen in het bericht.
Naamgebruik
0 .. 1
-
-
-
Geslachtsnaam
0 .. 1
prefix[qualifier='VV'] behorende bij eigen achternaam
0..*
-
Voorvoegsels
0 .. 1
subject/ Patient/ Person/ name/ family[@qualifier='BR' or not(@qualifier)]
-
-
Achternaam
1 .. 1
-
-
-
GeslachtsnaamPartner
0 .. 1
prefix[qualifier='VV'] behorende bij achternaam van de partner
Aanname in MP versie 6.12 is dat de verstrekking de aanschrijfdatum bevat. De afspraakdatum van de toedieningsafspraak is niet aanwezig in het bericht.
Afspraakdatum
1 .. 1
// therapeuticAgentOf/ medicationAdministrationRequest// *[@xsi:type='IVL_TS']/ low (de laagste low gevonden)
0..1
-
duration
Gebruiksperiode
0 .. 1
-
-
Bestaat niet in MP 6.12, dit veld niet gebruiken bij vertaling naar ZIB
Geannuleerd Indicator
0 .. 1
-
-
Bestaat niet in MP 6.12, dit veld niet gebruiken bij vertaling naar ZIB
Stoptype
0 .. 1
-
1..1
Gebruik dezelfde verstrekker als die bij het concept verstrekking / verstrekker
Verstrekker
1 .. 1
-
-
Gebruik dezelfde verstrekker als die bij het concept verstrekking / verstrekker
Zorgaanbieder
1 .. 1
-
-
Zie verstrekking / verstrekker
Zorgaanbieder
1 .. 1
-
-
Zie verstrekking / verstrekker
ZorgaanbiederIdentificatieNummer
1 .. *
-
-
Zie verstrekking / verstrekker
OrganisatieNaam
1 .. 1
-
-
-
Reden afspraak
0 .. 1
//product/ dispensedMedication
-
In MP6.1x is het geneesmiddel bij de toedieningsafspraak altijd hetzelfde als het geneesmiddel horende bij de verstrekking.
Geneesmiddel bij toedieningsafspraak
1 .. 1
//product/ dispensedMedication/ MedicationKind
-
-
Product
1 .. 1
code[not(@nullFlavor)]
0..1
Ofwel gecodeerd ofwel niet gecodeerd - met @nullFlavor - is aanwezig). Let op, @displayName is een verplicht attribuut
ProductCode
0 .. 1
-
0..1
Alleen van toepassing voor niet gecodeerde medicatie of medicatie met verschillende (gecodeerde) ingrediënten
ProductSpecificatie
0 .. 1
code[@nullFlavor='OTH']/ originalText
0..1
Als er geen gecodeerde medicatie is
ProductNaam
1 .. 1
desc
0..1
-
Omschrijving
1 .. 1
formCode
0..1
-
FarmaceutischeVorm
0 .. 1
activeIngredient of otherIngredient
0..*
De ZIB maakt geen onderscheid tussen werkzame en hulpstoffen.
Ingredient
1 .. *
quantity
0..1
-
Sterkte
0 .. 1
activeIngredient of otherIngredient/ quantity/ numerator
1..1
-
Hoeveelheid ingrediënt
0 .. 1
REAL
indien aanwezig: activeIngredient of otherIngredient/ quantity/ numerator/ translation[@codeSystem='2.16.840.1.113883.2.4.4.1.900.2']/ @value anders: activeIngredient of otherIngredient/ quantity/ numerator/ @value
1..1
activeIngredient of otherIngredient/ quantity/ numerator/ bevat UCUM eenheid.
De ZIB vraagt de waarde behorende bij de eenheid in G-Standaard bestand 902 Thesaurus 2, vandaar dat de genoemde translation gebruikt moet worden.
Waarde
1 .. 1
indien aanwezig: activeIngredient of otherIngredient/ quantity/ numerator/ translation[@codeSystem='2.16.840.1.113883.2.4.4.1.900.2']/ @unit anders: activeIngredient of otherIngredient/ quantity/ numerator/ @unit
1..1
activeIngredient of otherIngredient/ quantity/ numerator/ @unit bevat UCUM eenheid.
De ZIB vraagt eenheid in G-Standaard bestand 902 Thesaurus 2.
TODO: conversie van meest gebruikte UCUM eenheden naar G-standaard.
Eenheid
1 .. 1
activeIngredient of otherIngredient/ quantity/ denominator
1..1
-
Hoeveelheid product
0 .. 1
indien aanwezig: activeIngredient of otherIngredient/ quantity/ denominator/ translation[@codeSystem='2.16.840.1.113883.2.4.4.1.900.2']/ @value anders: activeIngredient of otherIngredient/ quantity/ numerator/ @value
1..1
activeIngredient of otherIngredient/ quantity/ denominator/ @unit bevat UCUM eenheid.
De ZIB vraagt eenheid in G-Standaard bestand 902 Thesaurus 2.
TODO: conversie van meest gebruikte UCUM eenheden naar G-standaard.
Waarde
1 .. 1
indien aanwezig: activeIngredient of otherIngredient/ quantity/ denominator/ translation[@codeSystem='2.16.840.1.113883.2.4.4.1.900.2']/ @unit anders: activeIngredient of otherIngredient/ quantity/ numerator/ @unit
1..1
activeIngredient of otherIngredient/ quantity/ denominator/ @unit bevat UCUM eenheid.
De ZIB vraagt eenheid in G-Standaard bestand 902 Thesaurus 2.
TODO: conversie van meest gebruikte UCUM eenheden naar G-standaard.
Eenheid
1 .. 1
activeIngredient of otherIngredient/ activeIngredientMaterialKind of ingredientMaterialKind/ code
1..1
@displayName is verplicht bij gecodeerde ingrediënten (code[@code]) Bij niet gecodeerde ingrediënten is er nullFlavor OTH en staat de beschrijving in code[@nullFlavor]/ originalText
Algemeen: Kan gecodeerd of ongecodeerd (code[nullFlavor='OTH']/ originalText) in het bericht zitten.
Aanvullende instructie
0 .. *
./ / *[@xsi:type='PIVL_TS'][phase/ width]/ period
0..1
-
Herhaalperiode cyclisch schema
0 .. 1
-
-
-
Doseerinstructie
0 .. *
-
-
Moet in 6.10/ 6.12 achterhaald worden door therapeuticAgentOf/ medicationAdministrationRequest/ effectiveTime[@xsi:type='IVL_TS']/ low in chronologische volgorde te zetten
Volgnummer
0 .. 1
./ / *[@xsi:type='IVL_TS']/ width (of het verschil tussen high en low)
Er staat UCUM in de doseQuantity / (low | center | high) met een verplichte vertaling (translation element) naar G-standaard eenheden tabel (codeSystem OID 2.16.840.1.113883.2.4.4.1.900.2)
Keerdosis
0 .. 1
-
-
Er is onderscheid tussen een keerdosis met een vaste waarde (bijvoorbeeld: 1 stuk per dag) en een variabele keerdosis met een min en een max (bijvoorbeeld 1 à 2 stuks per dag).Het één sluit het ander uit. Een vaste dosering mag dus nooit tegelijkertijd ingevuld worden met een variabele dosering. Bij variabele dosering is het wel toegestaan om alleen de min of alleen de max in te vullen.
In oudere versies van de standaard kon dit op twee manieren meegegeven worden. Hoewel de tweede manier wordt ontmoedigd, is het verstandig om als ontvangende partij met beide varianten rekening te houden:
Er is onderscheid tussen een frequentie met een vaste waarde (bijvoorbeeld: 1 maal per dag) en een variabele frequentie met een min en een max (bijvoorbeeld 1 à 2 maal per dag).
Versie 6.1x drukt een variabele frequentie uit door:
één medicationAdministrationRequest met de vaste frequentie (1 maal per dag) en
een tweede medicationAdministrationRequest met de 'zo nodig' frequentie (1 maal per dag zo nodig)
Er is een vaste tijdsfrequentie (met andere woorden: er bestaat geen 6.12 medicationAdministrationRequest met een zo nodig)
vaste waarde
0 .. 1
REAL
//*/[therapeuticAgentOf/ medicationAdministrationRequest/ precondition]therapeuticAgentOf/ medicationAdministrationRequest/ [not(precondition)]/ / *[@xsi:type='PIVL_TS'][not(phase/ width)]/ period/ @value en tel hierbij op de waarde bij min
-
het gaat hier om de frequentie bij de zo nodig instructie + de vaste frequentie