Introduction My name Ernst de Bel Architect EHR
Introduction • My name: Ernst de Bel • Architect EHR UMC St Radboud Nijmegen • Internist / intensivist/ econometrician • 2001 : Clinical Data integration portal for the ICU using Web technology and AJAX • 2004 : full time ICT • 2003 : User of HL 7 v 3 as for application architecture sinds 2003 • HL 7 NL: Pharmacy, Patient Care Project Radboud EPD
Project Radboud EPD
Project Radboud EPD
Project Radboud EPD
Implementation HL 7 v 3 in the UMC St Radboud Nijmegen • Why use HL 7 v 3 for application design • Using HL 7 v 3 at various levels • Examples and demonstration Project Radboud EPD
How it all started IC Database Intensive Care admissions • Census • Diagnosis, complications, outcome • Registration of minimal dataset for the evaluation of quality of care (NICE) Project Radboud EPD
HIS LRD Rad. DB HL 7 v 2 configuration Navigation XML XSLT HTML Project Radboud EPD
Project Radboud EPD
EHR Project Radboud EPD
• • • • 2002 -12 2003 -5 2004 -12 2005 -3 POC DBC (~ DRG) , Laboratory Result Reporting Lab-Rad-Or (Xpert. Med web application) Ic. Web (NICE) Building Order communication for the ICU Rv. B: use Xpert. Med EPD (tot 2008) electronic order management ICU live Medication orders and administration registration Device orders : mech. Ventilation, pacemaker settings, dialysis etc. 2005 -6 RIM database (HL 7 -v 3) for the hospital 2006 -6 progress and transfer summary (Care. Provision, CDA) 2006 new user interface, AJAX, SOA 2007 -5 interdisciplinary cooperation (oncology working group) 2007 Concern Tracking for phycisians, configurable forms for nursing reports 2007 Medication and Pharmacy 2008 Care. Provision as the basis for data integration • • Project Radboud EPD
Projects, plans…. o. Electronic prescriptions o. Nursing record o. Paramedic record o. Oncologic data information system o. PDMS Neonatology o. Endoscopy o. OR planning (OKAPI) o. Pathology imaging o. PDMS Psychiatry o. Foto base NSC o. Obstetric EHR o. Pat Docu. System KNF o. Chemotherapy admin sys, CIS o. Patient care letters o. Day care center o. Blood bank o. Digital Fertendo o. DNA data repository o. EHR family doctors o. PDMS Klinical Genetics o. Cardio-PACS o. Informatics ER (ECare) o. Overdrachtsysteem CIS o. Patiëntregistratie Neurologie o. Onderzoeksregistraties Urologie o. Zorgregistratie fysiotherapie CSS o. ICWeb o. Radiotherapy o. PDMS Hematology o. Registratiesysteem lung function lab o. Digital “Kinderendo” o. Geriatrics interdisciplinary cooperation o. Ordering / planning? o. Trial management o. Educational services
Orders Medication/ Food Observations Device. Parameters Actors Physicians Nurses Other staff Patient Planning Subst. preparation Observation planning Device preparation Device setting Order Results Subst. Administration Observations Device applied Device. Parameters Project Radboud EPD
Id Employe Name e Type Start Stop Status 1 Z 047110 Ernst de Bel Doctor 1996/10/ 01 Active 2 Z 046710 Arno Nurse 1993/08/ 01 active perform er. Id patient. Id Paramet er code Type Value Start 1 10011 88 PEEP Order 10 cm H 2 O 09/12 12: 00 Active 2 10011 88 PEEP Result 10 cm H 20 09/12 12: 10 Active 1 10011 88 Parace Order tamol 500 mg 1 09/12 16: 00 q 6 h Active 2 10011 88 Parace Result tamol 500 mg 1 09/12 22: 00 Done Project Radboud EPD Stop Status
Discovery of Heaven : To Do • HL 7 education shift of paradigm • HL 7 tools for application development • HL 7 database to persist HL 7 structures • Project • Story board • Process / workflow modelling • Use cases • Actors, minimal datasets • Coding (HL 7, SNOMED, ICF, LOINC) • Adherence to standards (NICTIZ-HL 7) • Configuration of items for the UI • Implementation
Paradigm shift • Focus on applications • focus on information management • services • Database modelling object modelling • Stable database design, with optional horizontal and vertical splitting and scaling • Models reflect domain specific infromation the database not Project Radboud EPD
Story to model • Pineut (Patient ) comes (12 juni 2004) to the ER department of of the UMC because of shortness of breath. Dr Smart listens and hears weezing leading to the diagnosis of astma. She prescribes Salbutamol and refers the patient to Kliniek St. Elsewhere for lung function measurement RIMdb
• Person • class. Code <= PSN • Role • class. Code <= PAT • id <= 101188 • id<= 1001188 (UMCN) • name<=Pineut • Observation • type. Code <=SUBJ • class. Code <= OBS • context. Control. Code • code <= ‘chief complaint’ <=AP • value <= ‘dyspnoea’ • • Role • Place • class. Code <= PLC • name<=SEH • Person • class. Code <= PSN • id<= Z 047110 (HRM) • name<=Smart • Manufactured. Material • class. Code <= MMAT • determiner. Code <=KIND • name <= Salbutamol • Role • class. Code <= THER type. Code<=RSN context. Control <= AP • type. Code <=LOC • class. Code <= DSDLOC • context. Control. Code <=AN • code <= ER • type. Code <=AUTH • effective. Time <= 12 -06 -04 • Role • class. Code <= PHYS • context. Control. Code <=AP • id<= Z 047110 • type. Code <=COMP • context. Control <= AP • Observation • code <= ‘ausc lungs’ • value <= ‘weezing’ • type. Code <=MFST • context. Control <= AP • Substanc. Administration • type. Code <=TPA • Ambulatory Encounter • class. Code <= ENC • code <= EMER • mood. Code <= EVN • mood. Code RQO • dose. Quantity 200µg • route. Code <= inhalation • type. Code <=RSN • effective. Time <= (period =360) • Observation • code <= ‘diagnosis’ • value <= ‘astma’ • type. Code <=RSN • Organization • class. Code <= ORG • code<=HOSP • name<=St Else. Where • Role • class. Code <= PROV • type. Code <=RESP • Procedure • context. Control. Code • mood. Code: RQO <=AP • code <= ‘lung function’ RIMdb
• player • scoper • II RIMdb
Implementation • RDBMS • MS SQL Server • Databases • • Terminology. Services Templates (constraints) RIM Domain applications for business logic (Administrative. Management, Care. Provision, Observations, Medication, Pharmacy) • XML + xslt xml or html
Basic abstract class instances table Extension classes : side table • • Entity – Living. Subject – Person Entity – Material – Manufactured. Material – Device Role – Patient , Employee, Access Act – Substance. Administration. Act, Supply. Act, Encounter. Act, Observation. Act Relations defined using internal parameters: entity. Id, role. Id, act. Id Relation tables : Participation, Act. Relationship, Role. Link Tables for messaging domein : Interaction, Message, Query. Parameter
Datatypes • Simple mapping • BL, BN xs: boolean bit • ST xs: string varchar • ED (text/plain of text/html) text + attributes in supplementary table • INT xs: integer, bigint • FLOAT xs: numeric float • TS datetimestring • Variabele mapping • ANY SQLvariant
CS : HL 7 structural attributes • class. Code (Act. Class, Role. Class, Entity. Clas) • determiner. Code (Entity. Determiner) • mood. Code (Act. Mood) • status. Code (Act. Status, Role. Status, Entity. Status, Participation. Status)
Codes Alle codes (except CS) mapped to internal. Id Terminology. Services Code. System : OID, Code. System. Name Concept. Code : internal. Id, code. System Concept. Designation (display. Name, languge) Concept. Description (original. Text, language)
RIMdb
Complex datatypes Cardinality = 1 fields Role. effectivetime (IVL_TS) effective. Time. Start, effective. Time. End Role. quantiy numerator. Value, numerator. Unit, denominator. Value, denominator. Unit Cardinality > 1 table Entity. Name, Telecom, Address Act. Attribute for priority. Code, confidentiality. Code enz. methode. Code, reason. Code etc. II (Act. II, Role. II, Entity. II) : internal. Id, root , extension IVL_TS : effective. Time. Start/effective. Time. End time. Start/time. End GTS : effective. Time. Literal + PIVL_TS (phase, width, period, operator) • • •
Entity Field Name Implementation role. Id Int Primaire sleutel player. Id Int FK (Entity) class. Code (CS) Varchar Role. Class code. Id (CS) int Role. Code. NL status. Code Varchar Role. Status effective. Time. Start Datetime effective. Time. End Datetime quantity. Id RTO scoper. Id Int FK (Entity)
Role Veldnaam Implementatie entity. Id Int Primary key class. Code (CS) Varchar Act. Class determiner. Code (CS) Varchar Act. Determiner (id [II]) Tabel Entity. II entity. Id, root. Id, extension code. Id (CD) VIEW Concept. Code (quantity [SET(PQ)]) Tabel Entity. Quantity (name) Tabel Entity. Name desc (ED) Text status. Code (CS) varchar existence. Time. Start Datetime existence. Time. End Datetime (telecom) Tabel Telecom
RIMdb
Project Radboud EPD
Query strategy • Decomposing Message • • Message Control. Act Participations : AUT, ENT, VRF Parameter. Item • Writing Detected. Issue. Event (if any) • Filling “Act tree” in memory: set of Act. Relationships • Pull out Act. Relationship – Act – Participation – Role – Entity based on primary keys • Assemble Message with XSLT
Writing from Message: Stored Procedures • create. Role • create. Patient • create. Act • create. Observation • create. Supply • create. Encounter • obsolete. Act, nullify. Act, hold. Act, activate. Act, suspend. Act….
Building new instances from Templates Configuration tool to define standard acts and actrelationship New instances are created from these definitions create. Act. From. Template create. Act. Relationship. From. Template Participations are added by the application
Implementation Entities + Roles • Personnell. Management : HRM Active Directory Services RIM (Roles + Role Based Authorizations) • Patient. Administration : HIS RIM (HL 7 v 2) • Places: reference database RIM • Organization. Management: ADS RIM (specialties, working groups etc. ) • Materials : Pharmacy + Food Care + Matrix RIM Project Radboud EPD
Acts : domain specific applications • Encounter overview from 4 separate systems • Ordering substances to administer + administration registration • Ordering device settings and observations (ICU) • Care Transfer Request • Clinical summaries • Concern and diagnosis tracking • Multidisciplinary cooperation • Care Tracking and generation of billable Care Provision episodes • Document management Project Radboud EPD
Project Radboud EPD
Project Radboud EPD
Project Radboud EPD
Project Radboud EPD
Project Radboud EPD
Project Radboud EPD
Work flow in the application : sticking objects together Prescription. RXPredeterminstion. Request Selecting patient Create new prescription Connect patient to prescription Sticking product as direct. Target to prescription Adding author, data. Enterer Sticking Detected. Issues interactions, double medications Activate. Prescription. Request Adding Substance. Administration. Request Add Detected. Issues for dosage Add Verifier Activate • • • Project Radboud EPD
Voorschrijven van medicatie Project Radboud EPD
Registratie bij toediening Project Radboud EPD
Problems with HL 7 v 3 • Steep learning curve • Much overhead compared to amount of information • Model sometimes ‘clumsy’ • Too tight, too open? Project Radboud EPD
- Slides: 46