19

INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende
Page 2: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

INTRODUKTION TIL HL7 FHIRGennemgang af centra le begreber i FHIRL ø s n i n g s a r k i t e k t To r b e n H a g e n s e n , M j ø l n e r

Page 3: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

• En standard lige som alle de andre• En informationsmodel• Terminologi• Constraints og regler• Fysiske formater

• En standard der kan noget mere• Profilering• Anvendelse

• API’er og services• Beskedudveksling• Dokumentformat• Database-format

Hvad er FHIR?

INTRODUKTION TIL HL7 FHIR

Page 4: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

F – FAST

• Hurtigt at definere• Hurtigt at udvikle

H – HEALTHCARE

• Fokus på sundhedsvæsenet• Levere en solid grundmodel

I – ITEROPERABILITY

• Fokus på deling af information• Baseret på velkendte teknologier

R – RESOURCES

• Fælles byggeblok for alle data

Hvad er målet med FHIR?

INTRODUCTION TIL HL7 FHIR

Page 5: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

EN STANDARD FOR SUNDHEDSDATAInformat ionsmodel , termino log i , constra ints og fys i ske formater

Page 6: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

• Ressource• Grundlæggende byggeblok i

informationsmodellen• Består af et eller flere elementer

• Backbone Element• Element som er defineret af og

indgår i en ressource, fx Contact• Complex Data Type

• Element med attributter som er andre elementer, fx Address

• Primitive Data Type• Element med en simpel værdi, fx

string, boolean, date, code

Grundlæggende byggesten

INFORMATIONSMODEL

Page 7: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

• Indeholder 145 ressourcer, som beskriver de grundlæggende begreber

• Ressourcer refererer til hinanden i en sammenhængende model

• Ressourcer har de elementer, der adresserer ca. 80% af anvendelser

• Ressourcer kan og bør profileres til den konkrete anvendelse

Ressourcer

INFORMATIONSMODEL

Page 8: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

• Code• En streng med en værdi fra et givet

kodesystem• Coding

• En code med angivelse af det anvendte terminologisystem (SKS, ICD-10, SnomedCT, …) eller ValueSet

• CodeableConcept• En eller flere Codings eller en tekst

• ValueSet• Et afgrænset sæt af koder fra en

eller flere klassifikationer (CodeSystems)

Begreber og referencer til begreber

TERMINOLOGI

Page 9: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

• Termer• Begrænset til et givet værdisæt via

Code, Coding, CodeableConcepteller et ValueSet

• Begrænsning kan være required, extensible, preferred eller example

• Referencer• Begrænset til givne ressource-typer

• Kardinalitet• Angivelse af attributtens kardinalitet• Understøttelseskrav (must support)

• Komplekse regler (FHIRPath udtryk)• Fx Patient.contact – name.exists() or

telecom.exists() or address.exists() or organization.exists()

CONSTRAINTS OG REGLER

Page 10: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

Uafhængig af format - typisk XML eller JSON

Formater

<?xml version="1.0" encoding="UTF-8"?>

<Patient xmlns="http://hl7.org/fhir">

<id value="example"/>

<text>

<status value="generated"/>

<div xmlns="http://www.w3.org/1999/xhtml">Læsbar beskrivelse</div>

</text>

<identifier>

<use value="usual"/>

<type>

<coding>

<system value="http://terminology.hl7.org/CodeSystem/v2-0203"/>

<code value="MR"/>

</coding>

</type>

<system value="urn:oid:1.2.36.146.595.217.0.1"/>

<value value="12345"/>

<period>

<start value="2001-05-06"/>

</period>

<assigner>

<display value="Acme Healthcare"/>

</assigner>

</identifier>

<active value="true"/>

<name>

<use value="official"/>

<family value="Chalmers"/>

<given value="Peter"/>

<given value="James"/>

</name>

{

"resourceType": "Patient",

"id": "example",

"text": {

"status": "generated",

"div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">Læsbar beskrivelse</div>"

},

"identifier": [

{

"use": "usual",

"type": {

"coding": [

{

"system": "http://terminology.hl7.org/CodeSystem/v2-0203",

"code": "MR"

}

]

},

"system": "urn:oid:1.2.36.146.595.217.0.1",

"value": "12345",

"period": {

"start": "2001-05-06”

},

"assigner": {

"display": "Acme Healthcare"

}

}

],

"active": true,

"name": [

{

Page 11: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

EN STANDARD SOM KAN TILPASSESProf i ler ing og anvendelse som passer t i l behovet

Page 12: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

• Strammere constraints og regler• Færre lovlige termer• Færre lovlige typer af referencer• Mindre kardinalitet• Flere ”must support” krav• Yderligere komplekse regler

• Slicing• Præcisering af indhold i lister

• Extension• Definere yderligere attributter

Ex: Patient med krav om dansk cpr-nrEx: Organisation med krav om SOR-kode

Tilpasning af modellen

PROFILERING

Page 13: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

MessagingOrganization.identifier• Skal indeholde

• Én SOR kode• Ét EAN nummer

• Kan indeholde• Flere identifiers

• Skelnes med slicing discriminator• SOR ~ system=”urn:sds:sor”• EAN ~ system=”urn:medcom:ean”

Slicing eksempel

PROFILERING

Page 14: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

ClinicalEmailComposition.section.section• Udvidet med dato-felt for sektionen

• Feltet er påkrævet• Værdien skal være en dato

Extension eksempel

PROFILERING

Page 15: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

• StructureDefinition• Indeholder profilering af en ressource

eller en extension• ”differential” beskriver ændringerne

• CodeSystem• Erklærer eksistensen af en

klassifikation og kan helt eller delvist indeholde koderne

• ValueSet• Udpeger koder fra et eller flere

CodeSystems• Anvendes fra Coding attributter i

StructureDefinitions

GEVINST: FHIR værktøjer kan maskinelt validere om ressourcer overholder profilerne

Profileringsressourcer

PROFILERING

Page 16: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

• API’er og services• FHIR definerer anvendelsen af

ressourcer i et REST API og dermed snitfladen til et system (FHIR Server)

• Beskeder• Beskeder defineres via profilering af

Bundle ressourcer• Dokumenter

• Dokumenter defineres via profilering af Bundle ressourcer

• Databaseformat• FHIR kan anvendes som format i

database, hvor profileringen beskriver datastrukturen af ressourcerne

Samme indhold uanset typen af interoperabilitet

ANVENDELSE

Page 17: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

• Beskeden opbygges i en Bundle ressource• ”id” er beskedens identifikation• ”type” skal være message• ”entry” indeholder ressourcerne

• MessageHeader• ”id” er indholdets identifikation• ”event” er hændelsen• ”sender” og ”destination.receiver”

refererer til entries• Øvrigt indhold

• Modtageren behandler beskeden og skal sende et eller flere responses• ”identifier” er originalens MessageHeader.id

Beskedudveksling

ANVENDELSE

Page 18: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

Format af en besked - typisk XML eller JSON

ANVENDELSE

<?xml version="1.0" encoding="UTF-8"?>

<Bundle xmlns="http://hl7.org/fhir">

<id value="10bb101f-a121-4264-a920-67be9cb82c74"/>

<type value="message"/>

<timestamp value="2019-07-14T11:15:33+10:00"/>

<entry>

<fullUrl value="urn:uuid:267b18ce-3d37-4581-9baa-6fada338038b"/>

<resource>

<MessageHeader>

<id value="267b18ce-3d37-4581-9baa-6fada338038b"/>

<eventCoding>

<system value="http://example.org/fhir/message-events"/>

<code value="patient-link"/>

</eventCoding>

<source>

<endpoint value="http://example.org/clients/ehr-lite"/>

</source>

<responsible>

<reference value="http://acme.com/ehr/fhir/Practitioner/2323-33-4"/>

</responsible>

<focus>

<reference value="http://acme.com/ehr/fhir/Patient/pat1"/>

</focus>

<focus>

<reference value="http://acme.com/ehr/fhir/Patient/pat12"/>

</focus>

</MessageHeader>

</resource>

</entry>

<entry>

<fullUrl value="http://acme.com/ehr/fhir/Patient/pat1"/>

{

"resourceType": "Bundle",

"id": "10bb101f-a121-4264-a920-67be9cb82c74",

"type":”message",

"timestamp": "2019-07-14T11:15:33+10:00",

"entry": [

{

"fullUrl": "urn:uuid:267b18ce-3d37-4581-9baa-6fada338038b",

"resource": {

"resourceType": "MessageHeader”,

"id": "267b18ce-3d37-4581-9baa-6fada338038b",

"eventCoding": [

{

"system": "http://example.org/fhir/message-events",

"code": ”patient-link"

}

"source": {

"endpoint": "http://example.org/clients/ehr-lite"

}

"responsible": {

"reference": "http://acme.com/ehr/fhir/Practitioner/2323-33-4"

},

"focus": {

"reference": "http://acme.com/ehr/fhir/Patient/pat1"

},

"focus": {

"reference": "http://acme.com/ehr/fhir/Patient/pat12"

}

}

},

{

Page 19: INTRODUKTION TIL HL7 FHIR - medcom.dk · INTRODUCTION TIL HL7 FHIR. EN STANDARD FOR SUNDHEDSDATA Informationsmodel, terminologi, constraints og fysiske formater •Ressource •Grundlæggende

SPØRGSMÅL