openEHR: a healthcare computing platform for the future · Composition open EHR Archetype Profile...

47
openEHR The Reference Model Thomas Beale Sam Heard

Transcript of openEHR: a healthcare computing platform for the future · Composition open EHR Archetype Profile...

openEHR The Reference Model

Thomas Beale

Sam Heard

© Ocean Informatics 2008

What openEHR

provides

openEHR Semantic architecture

1:N

Templates

1:N

Reference Model

Archetypes

1:N

Terminology

interface

Messages

Querying

Screen Forms

1:N

Reports

Data conversion

schemas Terminologies

Snom

ed C

T

ICD

x

ICP

C

© Ocean Informatics 2008

Specification Map

Data Structures

Data Types

DemographicEHR

Security

EHR Extract

virtual EHR

Archetype OM

Support (identifiers, terminology access)

AM

RM

SMEHR

servicearchetype

servicedemographic

serviceterminology

service

{core

Common{patterns

{domain

{ }Integration

Composition openEHR Archetype Profile

Template OM

Archetype Query Language Terminology Subset Syntax

© Ocean Informatics 2008

Reference Model – Class model overview

© Ocean Informatics 2008

The reference model –

Structure of one EHR

All

versioned

© Ocean Informatics 2008

Structure of one Composition

ENTRYs –

where the

data are

© Ocean Informatics 2008

Structure of an EHR Extract

© Ocean Informatics 2008

Context Model in openEHR

data values

temporal structure

clinical statement

healthcare event

spatial structure

EHR

ENTRIES

organise by: SECTIONS

organise by: FOLDERs

COMPOSITION

Recording EnvironmentHealthcare Events

commit to EHR(Contribution)

recorded in (1:1)

recorded in (1:N)

data-entry session

© Ocean Informatics 2008

Time in openEHR

Real-world activities

observation

sample/collection time

measurement/reporting time

healthcare event

data entry

OBSERVATION.COMPOSITION. VERSION.openEHRrecord

COMPOSITION.

commit

time-lag recorded in

OBSERVATION.data

archetyped attribute in

if relevant

context.start_time data.origin context.end_time

generally

= instant event

audit.time

© Ocean Informatics 2008

Time in openEHR

radiologist - assess images

data entry

commitimaging report

radiology

OBSERVATION.data.origin

COMPOSITION.context.start_time

COMPOSITION.context.end_time

VERSION.audit.time

openEHRrecord

© Ocean Informatics 2008

Time in openEHR

commitvitalnurse obs.

OBSERVATION.data.origin

VERSION.audit.time

(hospital) signs commitvital

OBSERVATION.data.origin

VERSION.audit.time

signs commitvital

OBSERVATION.data.origin

VERSION.audit.time

signs0100 0500 0900

ADMIN_ENTRYmove to wardtime = ...

ADMIN_ENTRY

dischargetime = ...

openEHRrecord

© Ocean Informatics 2008

Security Features

Separation

© Ocean Informatics 2008

Entries – the clinical information

© Ocean Informatics 2008

Entry types

Data Structures

Data Types

DemographicEHR

Security

EHR Extract

virtual EHR

Archetype OM

Support (identifiers, terminology access)

AM

RM

SMEHR

servicearchetype

servicedemographic

serviceterminology

service

{core

Common{patterns

{domain

{ }Integration

Composition openEHR Archetype Profile

Template OM

Archetype Query Language Terminology Subset Syntax

© Ocean Informatics 2008

Entry types based on process

This process is cyclic & repetitive

Clinicians don’t always document every step

investigator

Investigator

agents

© Ocean Informatics 2008

History of Solutions

GeHR Australia – early version of Entry types

based on information categories in

philosophy + problem-solving

© Ocean Informatics 2008

History of Solutions – Danish G-EPJ

© Ocean Informatics 2008

History of Solutions - Samba

© Ocean Informatics 2008

History of Solutions – Act-based

Includes

RICHE

HL7v3 RIM

Many others

Problems

Everything is an act – good for tracking business

process steps, but not natural to physicians

Hard to model typical clinical recordings

© Ocean Informatics 2008

Our approach – ‘Clinical Investigator’

Based on

clinical

process

MedInfo 2007

paper f()

observations

evaluation

interventions

clinical investigator system

patientsystem

observations

evaluation

clinical investigator system

interventions

goals

b) control system metaphor

a) problem-solving metaphor

-

+

administrative context

administrative context

goals

observations)(desired

patientsystemobservations)

(desired

© Ocean Informatics 2008

Entry types based on process

This process is cyclic & repetitive

Clinicians don’t always document every step

investigator

Investigator

agents

© Ocean Informatics 2008

Leading to an Ontology

observation/ intervention

recordedinformation

history opinion

assessment

careinformation

admininformation

proposal

diagnosis risk recommendation goal

intervention

scenario prognosis

instruction

xxx

xxx = observation-related

= intervention-related

observation action

cognitive/temporal

categories

categories

analytical categories

investigationrequestrequest

OBSERVATION ACTION

EVALUATION INSTRUCTION

ADMIN_ENTRY

© Ocean Informatics 2008

(with a speculative part for Admin)

admininformation

admission

scheduling

reservation

appointment

completion transfer

discharge referral

commence

task event patient event

ment

emergencycare

birth death

status update

© Ocean Informatics 2008

© Ocean Informatics 2008

Specification Map

Data Structures

Data Types

DemographicEHR

Security

EHR Extract

virtual EHR

Archetype OM

Support (identifiers, terminology access)

AM

RM

SMEHR

servicearchetype

servicedemographic

serviceterminology

service

{core

Common{patterns

{domain

{ }Integration

Composition openEHR Archetype Profile

Template OM

Archetype Query Language Terminology Subset Syntax

© Ocean Informatics 2008

RM data types & structures

terminology

support

definitions measurement identification

text

data_types

basic

quantity

assumed typesInteger

BooleanString

Real CharacterInterval<T>

Set<T>

List<T>

inbuilt

date_timetime_

specificationuri multimedia

history

data_structures

item_structure

representation

© Ocean Informatics 2008

data_structures

© Ocean Informatics 2008

data_structures.item_structure

© Ocean Informatics 2008

item_structure.representation

© Ocean Informatics 2008

data_structures.history

© Ocean Informatics 2008

History – Basic Structure

© Ocean Informatics 2008

History - Variations

© Ocean Informatics 2008

History – Storing Device Data

Efficiently

14,400 x 1 second

samples from device

5 x Events in

openEHR History

© Ocean Informatics 2008

Math Functions

© Ocean Informatics 2008

Glucose Tolerance Test

© Ocean Informatics 2008

EHR Extract

© Ocean Informatics 2008

openEHR Extract Model

© Ocean Informatics 2008

openEHR

EHR Extract

© Ocean Informatics 2008

Generic EHR Extract

© Ocean Informatics 2008

Versioning

© Ocean Informatics 2008

Specification Map

Data Structures

Data Types

DemographicEHR

Security

EHR Extract

virtual EHR

Archetype OM

Support (identifiers, terminology access)

AM

RM

SMEHR

servicearchetype

servicedemographic

serviceterminology

service

{core

Common{patterns

{domain

{ }Integration

Composition openEHR Archetype Profile

Template OM

Archetype Query Language Terminology Subset Syntax

© Ocean Informatics 2008

Basis of versioning

(similarly to CVS, Subversion etc…)

We use the Composition as the unit of

change (like a file in Subversion)

Folder structure also versioned

We use the Contribution as the unit of

committal (like a change-set)

Pre-commit check ensures that the current

state of Compositions & Folder structure

unchanged since check-out

© Ocean Informatics 2008

Contrib 12/4/2003

Contrib 15/4/2003

Contrib 20/4/2003

Contrib 22/4/2003

Versioning

Family

History

Current

medications

Problem

List

Care

Plan

Contact

12/4/2003

Test Results

15/4/2003

Contact

20/4/2003

Problem

List ++

Current

Meds ΔΔ

Care

Plan Δ

Correction

22/4/2003

Current Version

© Ocean Informatics 2008

User A System User B

Conflicts & Merging – One System

v1

commit v2

v1b

v1a commit?

v2a v3 commit

© Ocean Informatics 2008

Sys B

Synchronisation Problems

Sys A

v1

v2

v3

Sys C

v1

v1

v1

Do we have

the latest?

Are we getting

Duplicates?

Solutions:

• designated master

repository from which

to update

• reliable, global

version identification

scheme

© Ocean Informatics 2008

Distributed conflicts

Sys A

v1

v2a

Sys C

v1

This can only happen:

1. where no master designated

2. no update-before-commit

3. patient presents in both

places

i.e. ad hoc situation, e.g. patient

sick while on holiday

Solution:

One of the systems will be the

Patient’s ‘home’ system

v2c

© Ocean Informatics 2008

Why is the openEHR RM useful?

Because it was developed with clinical input

OGTT example

It provides a solid ontological basis for the next

levels:

Archetypes

Templates

GUI, messages etc