220 likes | 413 Views
An Event-Driven Approach to Computerizing Clinical Guidelines Using XML. Presented By Essam Mansour School of Computing Dublin Institute of Technology Ireland. Presentation Outline . Introduction Computerised Clinical Guidelines (CGs) Related Work Shortcomings Project Aim and Objective
E N D
An Event-Driven Approach to Computerizing Clinical Guidelines Using XML Presented By Essam Mansour School of Computing Dublin Institute of Technology Ireland
Presentation Outline • Introduction • Computerised Clinical Guidelines (CGs) • Related Work • Shortcomings • Project Aim and Objective • Event-Driven Approach and Framework for Computerising CGs • AIM-SL: An Event-Driven Guideline Specification Language • An Event-Driven Guideline Execution Model for the Patient Plan • AIMS: A Prototype System for Managing CGs • Future Work • Summary
Introduction Computerised Clinical Guidelines • Clinical Guidelines (CGs) (Field 1992) provide guides for doctors and patients in determining recommended strategies for monitoring the patient’s condition. • Clinical Guidelines as Active Information • The management aspects required for CG automation are: • Specification • Customization • Execution • Query and Manipulation • Distributed Collaboration and Sharing
Introduction Related Work • Computerised Clinical Guidelines Approaches • Mainly, focus on specifying and executing CGs(Clercq 2004) • They adopt several techniques, such as AI and DB • Clinical Events • Detect and respond to clinical events (McDonald 1976) • ECA Rule paradigm • Arden Syntax (Clayton 1989) • HyperCare (Caironi 1997) • XML • XML-based languages for formalising CGs (Dubey 2000, Fox 2001, Greenes 2001) • Facilitates the sharability and distribution • Incorporating ECA rule into XML • Active XQuery (Bonifati 2002) • An Event-Condition-Action language for XML (Bailey 2002) • AXML (Abiteboul 2002) • XChange (Bry 2005)
Introduction Shortcomings • In existing CG approaches, there are little or no: • Support for Clinical events. • Support for manipulating and querying clinical guidelines information. • Temporal support for the computerized clinical guidelines. • Support for sharing the execution history of the CGs. • The event-driven approaches to computerising CGs: • Arden Syntax does not distinguish between the generic CG and its generated instances • Arden Syntax Specifications are stored as text file. • HyperCare does not provide a generic mechanism to be applied to other CGs. • In providing an implemented triggering mechanism for a native XML DBMS. • In supporting temporal triggers over XML documents.
Introduction Project Aim and Objectives • The project aims at developing an information management framework and approach to computerizing clinical guidelines. • The developed framework and approach should • provide support for specifying, executing, manipulating and querying clinical guidelines • Facilitate the distribution of CGs among heterogeneous systems • provide temporal support for the computerized clinical guidelines • Facilitate the integration of the clinical guidelines system into the electronic healthcare record (EHR) system.
Event-Driven Approach and Framework Our event-driven approach to computerising CG Facilitates the distribution and sharing XML-Based Clinical Events Clinical Events XML Event Driven Approach for CG Computerisation Using XML XML-Based Clinical Guidelines Clinical Event supported by ECA Clinical Guidelines ECA Rule Paradigm Event Driven Based for specifying and executing Clinical Guidelines Facilitates the integration into EHR
SpEM Kernel -XML Technologies • ECA rule Mechanism • Temporal Support • Web Services Event-Driven Approach and Framework The SpEM Framework Query, Manipulation Customization Specification Plane Manipulation Plane Instantiation Change Propagation Execution Plane Query, Manipulation Execution Replay
An Event-Driven Specification Language Active Information Management (AIM) Language for Clinical Guidelines *High-level *Declarative language AIM AIM-SL AIM-QL - Supports Specification Plane *Model *Formal language • Is based on ECA rule and XML - Supports The Manipulation Plan *Customization *Query and Manipulation *Execution Replay • Extends the XQuery language
Protocol Library 0-1 Protocols Global Rules 1-M Protocol 0-1 ID Header Protocol Rules Name Category ID Schedules 1-M 1-M Rule Schedule ID Properties Body Header Name Header Name ID Schedule Rules Priority Rule Type Rule Scope Action Condition Ontology Mapping Event Release Info Didactic Info An Event-Driven Specification Language The XML Schema Model for AIM-SL Element Attribute Sequence
An Event-Driven Specification Language -<protocolid="ProID-MAS"> <name> microalbuminuria screening (MAS) protocol </name> <categoryID>CID316</categoryID> +<header> -<Schedules> -<scheduleid="SIDMAS"> <name>Basic MAS</name> +<header> -<scheduleRules> +<ruleid="MAS1"> +<ruleid="MAS2"> </scheduleRules> </schedule> </Schedules> </protocol> AIM-SL Specification for Microalbuminuria Screening (MAS) Protocol
An Event-Driven Specification Language AIM-SL Specification for MAS Protocol -<ruleid="MAS2"> <name>Rule 2 of basic MAS</name> +<properties> + <header> - <body> +<OntologyMapping > -<eventid="E2.1"> <on> <episode id="E2.1">TestResultRecieved</episode> </on> </event> +<conditionid="ID36"> - <actionid="AID36"> - <do> -<AIM-QLAction> - <add> +<ruleid="RID3"> +<ruleid="RID4"> </add> </AIM-QLAction> </do> </action> </body> </rule> Rule MAS2: ON receiving the result of test ACR IFthe ACR result is greater than 25 DO Add rule 3 and 4to order a ACR test at day number 6 and 38 Customization Process </OntologyMapping> <term id="E2.1"> <event> <name>TestResultRecieved</name> <DBOperation>insert</DBOperation> <documentName>AIMS_TESTORDERRESULT</documentName> <nodePath>/TestResult [testName=‘ACR’]</nodePath> <nodeName>TestResult</nodeName> </event> </term> </OntologyMapping>
An Event-Driven Execution Model Patient Plan • Is an instance of a protocol for a specific patient. • Has an active part and a passive part • Is dynamically changing • grows over time −<patientPlanforPatientNo="PIDA" generatedFrom=" ProID-MAS" startTime="1" endTime="Now"> −<schedulesstartTime="1" endTime="Now"> − <scheduleschIDREF="sch1" startTime="1" endTime="Now"> −<scheduleRules> +<rulerulIDREF="MAS1" startTime="1" endTime="Now"> +< XQueryTrigger> −<rulerulIDREF="MAS2" startTime="1" endTime="Now"> +<XQueryTrigger> </scheduleRules> </schedule> </schedules> </patientPlan> The Passive Part That logs the history of the execution The Active Part That shall be registered in the system
Schedule 3-Now 3-Now MAS1 MAS2 MAS4 MAS3 3-Now 3-Now state state state state Element 3-Now Attribute 2-2 3-Now 3-3 Text Node edge Value Value Value Value Value Value validity 1-3 ready ready terminated ready ready terminated An Event-Driven Execution Model Rule MAS2: ON receiving the ACR test result IFthe ACR result is greater than 25 DO Add rule 3 and 4 to order ACR test at day number 6 and 38 Rule MAS1: ON day 2 of the patient admission, DO order the ACR test. Day 2 What is PP in Day 4? Day 3 1-Now 1-Now 1-2 1-3 Replay PP from Day 3 to 5 1-3 1-2 1-Now 1-Now 1-Now 1-Now Temporal Query Support 1-2 1-3
AIMS: A Prototype System for Managing CPGs External Systems and Users This layer allows user to manage the CPGS and the external system to supply and receive information. Clinical Guidelines Management Module DB Access Module The ECA Rule Extension Module This layer extends the Active DBMS to support time triggers, and external communication mechanism Time Trigger Manager Listener Message Processor AIMS Manager An Active DBMS An Active DBMS, such as Oracle and DB2, provides support to store and retrieve XML Notifier Active EHR The XML Repository ECA Rule Mechanism EHR Patient Plan AIM-SL Specification The XML Repository could be queried using SQL/XML or XQuery SQL/XML Triggers SQL/XML Procedures
A Prototype System for Managing CPGs Query and Manipulation -<ruleid="MAS2"> <name>Rule 2 of basic MAS</name> +<properties> + <header> - <body> +<OntologyMapping > -<eventid="E2.1"> <on> <episode id="E2.1">TestResultRecieved</episode> </on> </event> +<conditionid="ID36"> - <actionid="AID36"> - <do> -<AIM-QLAction> - <add> +<ruleid="RID3"> +<ruleid="RID4"> +<ruleid="RID5"> </add> </AIM-QLAction> </do> </action> </body> </rule> Update Rule 2 by adding rule 5toits action. Oracle SQL/XML Update statement UPDATEaims_protocol_tab SETOBJECT_VALUE = insertChildXML(OBJECT_VALUE, '//scheduleRules/rule[2]//AIM-QLAction/add', 'rule', XMLType(Rule5)) WHERE existsNode(OBJECT_VALUE, '//scheduleRules/rule[2]//AIMQLAction/add')= 1 We might need to propagate this changes to the generated patient plan.
Schedule 2-2 3-3 Value Value terminated terminated A Prototype System for Managing CPGs Query and Manipulation Select p.OBJECT_VALUE.extract('/patientPlan[@PatNo=''PIDA'']//rule[state/value=''ready'']') From aims_pplan_tab p; Retrieve all the schedule rules, which are currently ready for execution 1-2 1-3 X 3-Now 3-Now MAS1 MAS2 MAS4 MAS3 1-2 1-3 3-Now 3-Now state state state state 1-2 3-Now 3-Now 1-3 Value Value Value Value ready ready ready ready
A Prototype System for Managing CPGs Query and Manipulation • The modern active DBMS, such as Oracle, provides the primitive support to query and manipulate the CGs information. • A high level query and manipulation language is required • Temporal query support is needed
Future Work • AIMS: A proof-of-concept system. • Developing AIM-QL • Extending XQuery to provide a temporal query support • Distributed Management for the patient plan • Evaluating AIMS system
Summary • A background, related work, and shortcoming • The project aim and objectives • Our event-driven approach and framework for computerizing CG. • AIM-SL: A specification language for CGs. • The execution model for the patient plan • AIMS: A Prototype System for Managing CGs
T o u h a n k Y
An Event-Driven Approach to Computerizing Clinical Guidelines Using XML Authors Essam Mansour Bing Wu Kudakwashe Dube Jian Xing Li