Virtual Medical Record (vMR): A Simplified RIM-Based Data Model for CDS HL7 Work Group Meeting, San Diego, CA September 2011 Kensaku Kawamoto, MD, PhD Director, Knowledge Management and Mobilization Assistant Professor, Department of Biomedical Informatics University of Utah kensaku.kawamoto@utah.edu Background • A “holy grail” of clinical informatics is scalable, interoperable CDS • Key requirement for interoperable CDS and re-use of CDS knowledge resources = use of a common patient data model – Referred to as a “Virtual Medical Record” or vMR (Johnson et al., AMIA Annu Symp Proc, 2001) • Lack of a common vMR is a major barrier to sharing knowledge and scaling CDS – Known as the “curly braces” problem in Arden Syntax Example Challenge without VMR Observation Code = BP Value = 120/80 mmHg Blood Pressure Systolic = 120 mmHg Diastolic = 80 mmHg Observation Code = BP Observation Code = SBP Value = 120 mmHg Observation Code = DBP Value = 80 mmHg Vital Sign Type = BP Value = 120/80 Units = mmHg vMR Goal • Provide common information model upon which interoperable clinical decision support resources (e.g., rules) can be developed • Desired attributes: – VMR instances can be derived from HL7 V3 artifacts, in particular CCD and Pedigree instances – VMR instances can be populated from HL7 V2 messages, in particular for laboratory data – Leverage Detailed Clinical Models – Capable of being easily understood and used by clinicians/analysts without significant V3 training Project History • Analysis of data required by 20 CDS systems from 4 countries • Analysis of HL7 CCD, Pedigree, Clinical Statement, and other relevant models • Use of greenCDA/greenCCD as an example approach to simplification • Trial implementation of vMR via OpenCDS • Under ballot for September 2011 Work Group cycle – Domain Analysis Model – GELLO implementation guide Simplified ISO 21090 Data Types class dataTypes iso-21090-datatypes-simplified-vmr:: ANY iso-21090-datatypes-simplified-v mr::IVL_INT + + + + low :INT [0..1] high :INT [0..1] lowIsInclusive :boolean [0..1] highIsInclusive :boolean [0..1] iso-21090-datatypes-simplified-vmr:: QTY iso-21090-datatypes-simplified-v mr::AD + + part :ADXP [1..*] use :CS [0..*] iso-21090-datatypes-simplified-v mr::CD iso-21090-datatypes-simplified-v mr::IVL_PQ + + + + low :PQ [0..1] high :PQ [0..1] lowIsInclusive :boolean [0..1] highIsInclusive :boolean [0..1] + + + + codeSystem :string code :string codeSystemName :string [0..1] displayName :ST [0..1] iso-21090-datatypes-simplified-v mr::CS + code :string iso-21090-datatypes-simplified-v mr::INT + value :int iso-21090-datatypes-simplified-v mr::PQ + + value :decimal unit :string iso-21090-datatypes-simplified-v mr:: REAL + value :decimal iso-21090-datatypes-simplified-v mr::IVL_RTO + + + + low :RTO [0..1] high :RTO [0..1] lowIsInclusive :boolean [0..1] highIsInclusive :boolean [0..1] iso-21090-datatypes-simplified-v mr::EN + + part :ENXP [1..*] use :CS [0..*] iso-21090-datatypes-simplified-v mr:: RTO + + numerator :PQ denominator :PQ iso-21090-datatypes-simplified-v mr::II iso-21090-datatypes-simplified-v mr::IVL_REAL + + + low :REAL [0..1] high :REAL [0..1] lowIsInclusive :boolean [0..1] + + root :string extension :string [0..1] iso-21090-datatypes-simplified-v mr::TS + value :string CDS Inputs class cdsInput CDSContext + + + + + cdsSystemUserType :CD [0..1] cdsSystemUserPreferredLanguage :CD [0..1] cdsInformationRecipientType :CD [0..1] cdsInformationRecipientPreferredLanguage :CD [0..1] cdsSystemUserTaskContext :CD [0..1] +vmrInput 1 +cdsContext CDSInput + 0..1 +cdsResource templateId :II [1..*] 0..* CDSResource v mr::VMR + templateId :II [0..*] + + cdsResourceType :CD resourceContents :anyType CDS Outputs class cdsOutput CDSOutput +vmrOutput 0..1 v mr::VMR + templateId :II [1..*] +simpleOutput 0..1 dataTypes:: iso-21090-datatypes-simplified-vmr::ANY vMR Payload class v mr +relatedEntity 0..* VMR + Entity templateId :II [1..*] EntityRelationship + + + + + targetRole :CD relationshipTimeInterval :IVL_TS [0..1] id :II templateId :II [0..*] entityType :CD [0..1] 0..* +relatedEntityInRole Person + + + name :EN [0..*] address :AD [0..*] telecom :TEL [0..*] ClinicalStatementEntityInRoleRelationship + +patient 1 Ev aluatedPerson + + + + + + + + birthTime :TS [0..1] ethnicity :CD [0..*] gender :CD [0..1] race :CD [0..*] preferredLanguage :CD [0..1] age :PQ [0..1] isDeceased :BL [0..1] ageAtDeath :PQ [0..1] role :CD ClinicalStatementRelationship + targetRelationshipToSource :CD +relatedClinicalStatement 0..* ClinicalStatement +clinicalStatement 0..* + + + id :II templateId :II [0..*] dataSourceType :CD [0..1] Example Clinical Statement class problem ProblemBase DeniedProblem + + + + Problem + + + + + problemCode :CD problemEffectiveTime :IVL_TS [0..1] diagnosticEventTime :IVL_TS affectedBodySite :BodySite [0..*] importance :CD [0..1] severity :CD [0..1] problemStatus :CD ageAtOnset :PQ [0..1] wasCauseOfDeath :BL [0..1] +relatedClinicalStatement 0..* ClinicalStatement BodySite + + bodySiteCode :CD laterality :CD [0..1] + + + id :II templateId :II [0..*] dataSourceType :CD [0..1] vMR Ballot Reconciliation – Overview • Domain Analysis Model – 47 affirmative, 2 negative • GELLO implementation guide – 34 affirmative, 0 negative vMR – Future Directions • Additional implementation guides – Existing/underway: GELLO, v2 implementation guides – XML, Drools, other implementation guides (e.g., Arden?) • Template specifications – For standard data models (e.g., CCD, Pedigree, Care Plan) – For common types of CDS (e.g., drug-drug interactions, vaccine forecasting, family history risk analysis) • Transformations to/from standard models • Alignment with relevant ongoing HL7 work (e.g., CSP, RFH, detailed clinical models) • Version 1.1 based on implementation experience (e.g., via OpenCDS) OpenCDS • Standards-based, open-source clinical decision support (CDS) Web service – Uses HL7 Decision Support Service (DSS) interface – Uses standard data payloads (e.g., CCD, VMR) – Uses standard internal data model (VMR) OpenCDS – Architectural Overview Standard Interface: HL7/OMG Decision Support Service Standard Trigger Queries for (http://hssp-dss.wikispaces.com) Patient data, knowledge modules to use required pt data Standard Data Models: Patient Data Sources Client Decision HL7 Virtual Medical Support AppsRecord (vMR) Standard [ http://wiki.hl7.org/index.php?title= Institution A Virtual_Medical_Record_(vMR) ] Conclusions about patient Decision Support Service Queries for required pt data Client Decision Support Apps Knowledge Modules Patient Data Sources Institution B CDS Services – Example Eval. VMR Result Decision Support Service CCD EHR System Pt data Patient Data Sources Current OpenCDS Collaborators University of Utah HLN Consulting, LLC Apelon, Inc. Intermountain Healthcare Veterans Health Administration Wolters Kluwer Health EBSCO Univ. of NC at Chapel Hill Main Line Health Stanford University Keona Health Mass. General Hospital Hospital Universitario Virgen del Rocío, Spain MaRS Innovation, Canada SmartCare, Africa Emetra AS, Norway Visumpoint, LLC Genesys, LLC df8health Religent, Inc. IsoDynamic, Inc. Calcudos.com, Inc. CogniTech Corporation Key Components of OpenCDS • Standard interfaces and data models – Reference implementation of HL7/OMG DSS interface – vMR data model – Data mappers (e.g., for CCD vMR) • Reference DSS knowledge management framework – JBoss Drools and associated authoring/knowledge management tools – Full-featured terminology support – A “domain specific language” for intuitive knowledge authoring – Knowledge repository and knowledge sharing service • DSS “wrappers” for other CDS engines NQF Measure 31 for Meaningful Use OpenCDS Implementation – Denom. OpenCDS Implement. – Underlying Details OpenCDS Implementation – Decision Table www.opencds.org Backup Slides Key Benefits of Approach • Builds on robust open-source community and resources • Provides standard architectural framework for integrating various CDS knowledge resources • Supports full life cycle of knowledge authoring, testing, maintenance, and execution • Provides an open-source framework for collaboration and innovation in CDS – Freely available under Apache 2.0 license DSS Invocation - Wrapper NQF knowledge module vMR payload DSS Invocation - Payload Age & gender Past encounters Past mammographies DSS Response - Wrapper NQF evaluation result NQF evaluation result payload using vMR DSS Response - Payload Denominator criteria met Numerator criteria met