Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of...

36
Application of Semantic Analysis for Legacy Healthcare System Interoperability Research Projects ENGR 5770 / CSCI 5700 Service Computing Winter 2013 Instructor: Dr. K Sartipi 1

Transcript of Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of...

Page 1: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Application of Semantic Analysis for Legacy Healthcare System

Interoperability

Research Projects

ENGR 5770 / CSCI 5700 Service Computing

Winter 2013 Instructor: Dr. K Sartipi

1

Page 2: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Legacy Healthcare System Interoperability using HL7 Message

Development Framework

By: Hosein Yarmand •  Allows legacy healthcare systems to interoperate using SOA ���and HL7 v3 messaging standards.��� •  Uses “HL7 Message Refinement Process” by following the guides and searching through different documents. ��� •  It depends on domain experts (medical and HL7)���

Research Project

Page 3: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

MacSeie: McMaster Service-based eHealth Integration Environment

(CAS 757)

-  VT assists physicians to observe and control patient’s risk factors for cardiovascular, diabetes, hypertension diseases.

-  Knowledge gathered by “evidence based practice”

-  Clinical algorithms are fine-tuned to cover different cases of most patients.

Page 4: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

MacSeie: McMaster Service-based eHealth Integration Environment

HL7 RIM, Message Refinement Process Legacy Healthcare System Integration Framework

Web Service Architecture: EMR; CDSS; Clients Web Services Information Flow Diagram

Page 5: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

HL7 v3 Message Mapping Results

Sample HL7 v3 Message

Service Mapping

Data Mapping

Page 6: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Tool-assisted Knowledge to HL7 v3

Message Translation By: Priya Jayaratna, M.A.Sc

•  The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical expert familiar with HL7” which is inefficient, expensive, and in most cases not feasible at all.

•  We propose a novel and semi-automatic process for translating healthcare transactions (obtained from storyboards) to HL7 v3 Interactions.

•  Re-categorize HL7 v3 Interactions based on their behavioral traits in a messaging context.

•  Use semantic web technology to automate the process of identifying HL7 v3 Interactions (TAMMP tool).

Research Project

Page 7: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Outline

§  Introduction to HL7

§  Motivation and Problem definition

§  Approach and concepts

§  Framework for knowledge to HL7 v3 message translation

§  Tool implementation

§  Conclusion

Page 8: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Introduction to HL7

§  HL7 v2 vs. HL7 v3

§  HL7 v3 Information Models

§  RIM

§  D-MIM

§  R-MIM

§  Message Types

HL7 is a non-profit organization comprised of healthcare subject

matter experts and IT professionals collaborating to develop

international standards for exchange, management and integration

of healthcare information in electronic format.

Page 9: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

HL7 v3 Information Models

Page 10: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Motivation

  COMPETE Group’s Vascular Tracker

  Complexity of HL7 v3 Information Models and Universal Domains

  Lack of tool support of HL7 v3

  Inconsistencies amongst information models of different domains ◦  Activate, Revise and Nullify Interactions of the Patient Billing topic of

Account and Billing domain derive from the same topic under HL7, and the same R-MIM (Patient Billing Account Event). However, interactions representing the same actions (i.e. Activate, Revise and Nullify), for "Person" topic under Patient Administration domain derive from three different R-MIMs.

◦  Topics grouped together into a domain seemingly lack a close relationship to medically untrained eye. For example, topics Allergies, Care Plan and Clinical Document all fall under domain Care Provision.

◦  Closely related concepts such as Allergies and Adverse Reactions are provided as separate topics.

Page 11: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Problem Definition

Devising novel frameworks, techniques and tools to support HL7-v3 standard compliant

integration of healthcare systems

Page 12: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

HL7 v3 Interactions

  HL7 v3 Interaction is a single, one way information flow.

  An Interaction explicitly answers the questions: ◦  What the particular message type is (Message Type) ◦  What caused the message to be sent (Trigger Event) ◦  How a receiving system knows the type of response message to

send if any (Receiver Responsibilities)

  Interactions provide critical contextual information required by a recipient to interpret the semantics of a message and to trigger an appropriate response

Page 13: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Approach

  Finding a connection – Transactions and Interactions

  Through careful analysis of HL7 v3 Interactions and domain model, identify searchable metadata

  Express healthcare transactions in a structured, machine-readable format using the above identified metadata

  Create an Interaction store and associate each interaction with identified metadata

  Use components of structured transactions to search for matching Interactions

Page 14: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Identifying Metadata: HL7 Contexts and Operations

  An Interaction conveys data (payload) and operational information.

  We introduce the concept of Contexts to capture metadata about the nature of payload conveyed by the Interaction.

  Operational information contained in the Interaction describes the action that the message triggers or dictates at/to the recipient.

  Interaction Classification Model provides an alternate classification of Interactions based on the operational information contained in them.

Page 15: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Structured Transactions

Transaction: Message1..N

Message: Actor2..N + Operation + Data1..N

Page 16: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Transaction Schema

Page 17: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Tool-assisted Message Mapping Process (TAMMP)

Page 18: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

TAMMP

TAMMP provides a well-defined process for streamlining the HL7 messaging workflow design process with the help of a tool.

§  Step 1: Integration Requirement Analysis Examine information exchange requirements of the systems being integrated using storyboards and UML dynamic modeling techniques to extract key system Transactions.

§  Step 2: Structured Transaction Generation Transaction initiators identified in step 1 are decomposed to structured transactions with the help of the tool.

§  Step 3: Mapping ◦  Map structrued transactions to Interactions ◦  Map terms to standard clinical terminology (SNOMED, LOINC)

assisted by TAMMP tool.

Page 19: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Tool Design

Page 20: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Tool Design

  Artifact Preprocessing

◦  Preparation of HL7 artifacts

and RDF instances to be stored

in the web server and RDF

Repository

  Application Components

◦  Web UI

◦  Search Controller

◦  Sesame Interface

◦  Terminology System Interface

◦  Apache Lucene Interface

◦  Repository layer

Page 21: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Class Diagram

Page 22: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

RDF Schema for HL7 Metadata Model

Page 23: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Leveraging Sesame API

//Create a new instance of org.openrdf.repository.http.HTTPRepository class Repository rep = new HTTPRepository(sesameServer, repositoryID); //Initialize repository rep.initialize(); //Establish a connection with repository RepositoryConnection cnn = rep.getConnection(); for (int i=0; i< lines.length; i++){

tmp = lines[i].split("\\&"); //Create SeRQL query string queryString = "SELECT Interaction FROM {Interaction} hl7:interactionClass {hl7:"

+ tmp[0].trim() + "},{Interaction} hl7:context {\"" + tmp[1].trim() + "\"}" + “ USING NAMESPACE hl7 = http://localhost:8080/hl7/schema# " ;

TupleQuery tupleQuery = cnn.prepareTupleQuery(QueryLanguage.SERQL, queryString); //Evaluate query

TupleQueryResult result = tupleQuery.evaluate();

Page 24: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Leveraging Lucene API //Initialize org.apache.Lucene.analysis.standard.StandardAnalyzer class Analyzer analyzer = new StandardAnalyzer(); // Store the index in memory

Directory index = new RAMDirectory();

// Initialize indexwriter object

w = new IndexWriter(index, analyzer, true, IndexWriter.MaxFieldLength.UNLIMITED); //create phrase query

PhraseQuery q = new PhraseQuery();

q.add(new Term("text", cntxt));

for (int i=0; i<tmpArray.length; i++) { doc = new Document();

doc.add(new Field("text", tmpArray[i].trim(), Field.Store.YES, Field.Index.ANALYZED));

w.addDocument(doc); }

//Initialize IndexSearcher object

searcher = new IndexSearcher(index);

searcher.search(q, collector);

Page 25: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

HL7 v3 Contexts

Accounts and Billing FIAB_DM000000UV Blood, Tissue and Organ Donation POBB_DM100000UV

Care Provision REPC_DM000000UV

Care Record REPC_DM000000UV

Allergies REPC_DM000000UV

Care Transafer REPC_DM000000UV Specialized Care and Professional Services REPC_DM000000UV

Patient Health Condition REPC_DM000000UV

Family/Surgical History REPC_DM000000UV

Discharge Report REPC_DM000000UV

Referral Report REPC_DM000000UV Claims and Reimbursements - Special Authorization FICR_DM000001UV

Claims and Reimbursements - Eligibility FICR_DM000001UV

Claims and Reimbursements - Pre-approval FICR_DM000001UV

Claims and Reimbursements - Pre-determination FICR_DM000001UV Claims and Reimbursements - Coverage extension FICR_DM000001UV

Invoice FICR_DM000001UV

Page 26: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

HL7 v3 Contexts

Payment Notice FICR_DM000001UV

Statement of Financial Activity FICR_DM000001UV

Immunization POIZ_DM000000UV

Laboratory POLB_DM000000UV

Drug knowledge-base POME_DM000000UV Inventory management PRMM_DM000001UV

Consent to Share Information RCMR_DM000050UV

Electronic Medical Record RCMR_DM000050UV

Non-Laboratory observation POOB_DM200000UV

Order Health Services POOR_DM100000UV Patient Registry PRPA_DM000000UV P

erson Registry PRPA_DM000000UV

Location Registry PRPA_DM000000UV

Encounter (In Patient) PRPA_DM000000UV Encounter (Ambulatory) PRPA_DM000000UV

Encounter (Emergency) PRPA_DM000000UV

Encounter (Home Health) PRPA_DM000000UV

Page 27: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Case Study

Storyboard “Mr. X needs to get a repeat of his usual medications -Glyburide 5 mg tid,

Metformin 500 mg tid once daily (od) and Celebrex 100 mg od. He visists his FP, Dr. P. Dr. P pulls up Mr. X's chart in her EMR, which automatically queries the EHR for current medication, allergy history and medical conditions and downloads the information to her EMR. Dr. P updates her EMR with Mr. X's new allergy. She also notes that Mr. X's last HbA1c (a measure of long-term glucose control) was high and recommends that Mr. X start a new medication, Roziglitazone 4 mg od. She then re-prescribes for Mr. X all his usual medications using her EMR. Once Dr. P is satisfied that there are no drug-drug interactions, she initiates a transfer of the prescription to the EHR and tells Mr. X that she has prescribed the medications for him with 3 repeats and that he can pick them up from the pharmacy of his choice. When Dr. P closes Mr. X's chart on her EMR, it automatically updates the EHR with the updated information he has agreed to send; in this case just the allergies.”

Page 28: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Prototype Tool - Screenshots

Page 29: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Prototype Tool - Screenshots

Page 30: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Prototype Tool - Screenshots

Page 31: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Prototype Tool - Screenshots

Page 32: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Prototype Tool - Screenshots

Page 33: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

RDF Instance <?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:hl7=http://localhost:8080/hl7/schema#> <rdf:Description rdf:about=

http://localhost:8080/hl7/docs/domains/uvob/uvob_CommonObservation.htm#POOB_IN000001UV-int> <rdf:type rdf:resource="http://localhost:8080/hl7/schema#Interaction"/> <hl7:interactionClass rdf:resource= "http://localhost:8080/hl7/schema#Record"/>

<hl7:context> Non-Laboratory observation </hl7:context> <hl7:relatedInteraction rdf:resource= “http://localhost:8080/hl7/ docs/ domains/uvob/uvob_CommonObservation.htm#POOB_IN000003UV-int "/>

<hl7:relatedInteraction rdf:resource= “http://localhost:8080/hl7/docs/ domains/uvob/uvob_CommonObservation.htm#POOB_IN000002UV-int "/>

</rdf:Description> </rdf:RDF>  

Page 34: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Conclusion

  We propose a novel, well-defined process to guide translation of healthcare transactions to HL7 v3 Interactions

  We have re-categorized HL7 v3 Interactions based on their behavioral traits in a messaging context

  We have extended an approach by Dezhkam and Sartipi for formal representation of business scenarios and adapted it to represent healthcare transactions.

  We have developed a prototype tool based on semantic web technologies to automate the process of identifying HL7 Interactions appropriate to represent healthcare transactions

Page 35: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Future Research

  Enhancing TAMMP tool ◦  Add support for HL7 v3 instance generation ◦  Add support for schema editing ◦  Incorporate natural language processing features to storyboard analysis

  Model driven, automated Transaction to HL7 Interaction mapping

  Open source HL7 Integration Engine

Page 36: Application of Semantic Analysis for Legacy Healthcare ...€¦ · • The previous method of extracting HL7 v3 messages from the storyborad was completely depend on a “medical

Publications

  Tool-assisted Healthcare Knowledge to HL7 Message Translation. P. Jayaratna and K. Sartipi. IEEE/ICME International Conference on Complex Medical Engineering (CME 2009), pages 1-7. April 9-11, 2009, Tempe, Arizona, USA.

  A Framework for Data and Mined Knowledge Interoperability

in Clinical Decision Support Systems. R. Sherafat and K. Sartipi, P. Jayaratna. International Journal of Healthcare Information Systems and Informatics. Manuscript 29 pages 2008 (to appear).