Skip to content

Latest commit

 

History

History
83 lines (53 loc) · 21 KB

mig-kt-001-fhir-resource-mapping-view.md

File metadata and controls

83 lines (53 loc) · 21 KB

MIG-KT-001 - FHIR Resource Mapping View

Beschrijving

Overzicht en tevens mapping tussen Koppeltaal 1.3.x en 2.0.

OPMERKINGEN:

  • Deze mapping is gemaakt voor een eventuele migratie traject.
  • Niet alle resources (gegevens objecten) uit Koppeltaal 1.3.x worden in Koppeltaal 2.0 gebruikt. Bv: CommunicationRequest wordt nu niet gebruikt in Koppeltaal 2.0.
  • In Koppeltaal 1.3.x wordt er gebruik gemaakt van een uitwisselingsmethode 'FHIR op basis van messages'. Hierin wordt bij elk bericht een MessageHeader meegestuurd die verteld wat voor soort interactie het bericht uit bestaat of dat er op gereageerd moet worden, en voor wie het bericht bedoelt is. De referentie(s) die het onderwerp van de interacties zijn, evenals andere informatie met betrekking tot deze interactie, worden typisch verzonden in een bundel waarin de MessageHeader resource-instantie de eerste resource in de bundel is.
  • In Koppeltaal 2.0 wordt er gebruik gemaakt van de uitwisselingsmethode 'FHIR op basis van resources'. Hier wordt alleen gebruik gemaakt van voor gedefinieerde FHIR resources en HTTP interacties, zoals beschreven in de FHIR RESTful API. Deze zijn in de basis generiek en worden met behulp van profielen uitgebreid en specifieker gemaakt voor een specifieke toepassing, zoals Koppeltaal 2.0.
  • De originele FHIR DSTU1 resources, zoals Patient, Practitioner, etc. kunnen bijna alle elementen 1 op 1 gemapped worden naar FHIR R4. Bij de FHIR R4 resources zijn er meer elementen erbij gekomen.
  • Bij de Other resources uit DSTU1 moet per element gekeken worden, hoe en of dit gemapped kan worden op een element uit FHIR R4.
  • In Koppeltaal 1.3.x wordt er gebruik gemaakt van het CarePlan dat de intentie beschrijft van hoe één of meer behandelaars voornemens zijn zorg te verlenen aan een patiënt gedurende een bepaalde periode. Hierbij wordt een lijst van activiteiten opgesteld die onderdeel zijn van dit plan.
  • In Koppeltaal 2.0 wordt er geen opgestelde lijst van activiteiten uitgewisseld gedurende een bepaalde periode maar één activiteit die kan wordt toegekend en kan worden uitgevoerd door een participant.

** Mapping van de Task.for en Task.owner.

De Task.for is verplicht in koppeltaal, en wordt altijd gevuld met de patient die bij de taak betrokken is. De Task.owner is degene die verantwoordelijk is dat de taak wordt uitgevoerd. Dit is de persoon die de taak uitvoert, en in veel scenarios is dit ook de patient. Voorbeelden:

Een patient heeft een taak:

  • Task.for Patient/123
  • Task.owner Patient/123

Een behandelaar moet een rapportage maken:

  • Task.for Patient/123
  • Task.owner Practitioner/123

Een patient moet een ander uit zijn groep evalueren:

  • Task.for Patient/123
  • Task.owner Patient/321

Door de Task.for altijd te vullen met de patient of wie de taak betrekking heeft, hoewel dit vaak ten overvloede lijkt, zorgt ervoor dat in alle scenario's de taken met betrekking tot de patient vindbaar zijn.

In het launch scenario betekent dit dat de mapping op HTI is:

  • Task.for = HTI.patient
  • Task.owner = HTI.sub

TODO:

  • Groepen uitwisselen kan niet door middel van CareTeam: gebruik hiervoor Organization.
  • Uitleggen owner van de Task
Koppeltaal 1.3.x (FHIR op basis van messages) Koppeltaal 2.0 (FHIR op basis van resources)
FHIR Resources DSTU1 (v0.0.82)Koppeltaal Profile 1.3.xElementInteractieBeschrijvingFHIR Resource R4 + REST APIElementBeschrijving
feedfeed



De feed wordt gebruikt om een bericht (interactie) samen te stellen. De MessageHeader resource-instantie is de eerste resource in de feed.Bundle

Bundel wordt gebruikt bij search opdrachten en transacties of verzamelen van resources.
MessageHeaderMessageHeader



Uitwisseling gebeurt op basis van berichten (messages). Zie voor berichttype het element event.code



Uitwisseling gebeurt op basis van FHIR resources en HTTP (CRUD) interacties.




event.code















CreateOrUpdatePatient

POST/PUT Patient









CreateOrUpdatePractitioner

POST/PUT Practitioner









CreateOrUpdateRelatedPerson

POST/PUT RelatedPerson









CreateOrUpdateActivityDefinition

POST/PUT ActivityDefinition









CreateOrUpdateCarePlan

POST/PUT Task









UpdateCarePlanActivityStatus

PUT Task.status









CreateOrUpdateCarePlanActivityResult

-









CreateOrUpdateUserMessage

POST CommunicationRequest







data.reference



ResourceType.meta.versionId en ResourceType.meta.lastUpdated

De waarde van versionId verandert elke keer als de inhoud van de resource verandert en de lastUpdated verandert a.d.h.v. een tijdzonecode.
CarePlanCarePlan



Beschrijft de intentie van hoe een of meer behandelaars voornemens zijn zorg te verlenen aan een patiënt gedurende een bepaalde periode.Task

Een taak beschrijft een activiteit die kan worden toegekend en kan worden uitgevoerd en houdt de voortgang status van die activiteit bij.




Patient

De patiënt die de behandeling ondergaat

for en/of ownerIn Koppeltaal 2.0 wordt van de FHIR Task gebruik gemaakt. Hierin zit een for veld: de begunstigde van de taak. Dit is typisch de Patient. Echter in de FHIR Task zit ook het owner veld: de persoon die verwacht wordt de taak uit te voeren. In het geval van de patient de behandeling ondergaat zou de owner ook de Patient moeten zijn. Dit kan op twee manieren: direct de Patient als owner opgeven, of een CareTeam met als subject de Patient.




participant

Iedereen (0 of meer) die betrokken is bij de zorg die dit plan beoogt

ownerIn Koppeltaal 2.0 wordt de Task.owner gebruikt om aan te geven wie de taak moet uitvoeren. Bij Koppeltaal kan dit de Practitioner, Paitent of CareTeam zijn. In het laatste geval kan er een lijst met participanten aan het CareTeam worden toegevoegd.




activity

Lijst van activiteiten die onderdeel zijn van dit planTask beschrijft een (hoofd)activiteit

We kunnen hier een hoofdtaak beschrijven met daaronder subtaken of activiteiten. Op deze manier kan men de activiteiten groeperen.




activity.identifier

Een identificatie van de activiteit

identifierEen taak identificatie




activity.defintion

De identificatie van de activityDefinition dat de uitvoering van de activiteit beschrijft

descriptionOmschrijving van de taak




activity.type

Wordt niet gebruikt in KT 1.3.x

codeTaak type




activity.subactivity.*





containedSubtaak container




activity.simple.performer

Iedereen die betrokken is bij deze activiteit en deze mag aanpassen

ownerIn de FHIR Task zit ook het owner veld: de persoon die verwacht wordt de taak uit te voeren.




activity.participant

Iedereen die betrokken is bij deze activiteit

ownerIn Koppeltaal 2.0 wordt de Task.owner gebruikt om aan te geven wie de taak moet uitvoeren. Bij Koppeltaal kan dit de Practitioner, Paitent of CareTeam zijn. In het laatste geval kan er een lijst met participanten aan het CareTeam worden toegevoegd.




activity.startDate

Startdatum van een activiteit

restriction.period.startBeperkingen op startdatum van taak




activity.endDate

Einddatum van een activiteit

restriction.period.endEindperiode van taak




activity.started

Datum wanneer activiteit gestart is

executionPeriod.startWanneer taak gestart is




activity.finished

Datum wanneer activiteit beëindigd is

executionPeriod.endWanneer taak beëindigd is
















OrganizationOrganization





Organization



PatientPatient





Patient



PractitionerPractitioner





Practitioner













PractitionerRole















practitionerBehandelaar die in staat is om de vastgestelde dienst voor de organisaties te leveren












locationDe locatie's waar deze behandelaar zorg verleent




organization

De identiteit van de organisatie die de behandelaar vertegenwoordigt / namens wie de behandelaar handelt

organizationOrganisatie waar de rol van de behandelaar beschikbaar is
RelatedPersonRelatedPerson





RelatedPerson



OperationOutcomeOperationOutcome



OperationOutcome is de uitkomst van een bepaalde interactie. Deze MOETEN NIET omgezet worden naar KT 2.0 omdat KT 1.3.x interacties gebaseerd zijn op berichten en NIET op resources.OperationOutcome

OperationOutcome is de uitkomst van een bepaalde (CRUD) interactie op resources.
















Device















Application





Device

Geregistreerde applicatie




identifier





identifieridentificeert uniek een applicatie




type





typesoort applicatie




url





urlnetwerk adres om applicatie te bereiken




roles





specializationMogelijkheden van device










Endpoint

Technische details van een (Applicatie) endpoint van een dienstverlener
Other















ActivityDefinition





ActivityDefinition

Een ActivityDefinition is een deelbare en bruikbare beschrijving van een activiteit die moet worden uitgevoerd. Het kan worden gebruikt om acties te specificeren die moeten worden ondernomen als onderdeel van een workflow of het kan onafhankelijk worden gebruikt als onderdeel van een catalogus van activiteiten.




code













applicationIs de applicatie waar deze definitie beschikbaar is



Waarschijnlijk hiervoor een extensie voor nodig. Bv: ext.deviceDe device is representatie van een geregistreerde applicatie.




name





name





activityDefinitionIdentifier





identifier





identifier













description





title





type





topic





subActivity.*





-





defaultPerformer





participant.type en participant.role





isActive





statusisActive=true match met de status "active"




isDomainSpecific





?Uitbreiden met extensie?




launchType





?Uitbreiden met extensie?




isArchived





statusisArchived = true
match met de status “retired”


UserMessage





CommunicationRequest

Uitwisselingsbericht tussen actoren/personen




context













code













from





sender





to





recipient





messageKind





category





subjectString





about





content





payload.content



CarePlanActivityStatus





Task







activity





instantiatesCanonical





activityStatus





status





subactivity





contained





percentageCompleted





statusReason



CarePlanActivityResult







output



CareTeam





CareTeam

Behandelteam betrokken bij een behandeling van een patiënt.




code













careTeamIdentifier





identifier





status





status





name





name





subject





subject





period





period





managingOrganization





managingOrganization













participant.role













participant.member











Subscription

Abonnement definiëren op resources die worden aangemaakt of worden bijgewerkt


\

Rationale


\

Implicaties


\

Voorbeelden


\

Toepassingsgebied


\

Onderbouwen


\

Eisen


\

Referenties

{}