OpenCDS provides a reference implementation of the Decision Support Service (DSS) standards adopted by the Health Level 7 (HL7) and Object Management Group (OMG) standards development organizations. The DSS standards specify a standard interface for providing clinical decision support as a software service, and is a part of a larger effort to standardize software service interfaces for health care known as the HL7-OMG Healthcare Services Specification Project (Ref: Kawamoto et al., JAMIA, 2009). The HL7 standard is available here and the OMG standard is available here. The development of the HL7/OMG DSS standards was led by Dr. Kensaku Kawamoto, MD, PhD, MHS who is the Founder of the OpenCDS project.
There are 3 major interfaces for the HL7/OMG DSS standard. These interfaces are:
The software is written in Java, and uses all open-source components.
The Virtual Medical Record (vMR) is a standard HL7 data model optimized specifically for clinical decision support. Dr. Kawamoto led the development of this standard. The vMR is:
OpenCDS uses a flattened form of the vMR internally as its data model. OpenCDS can also communicate with external systems using an XML form of the vMR. More information on the HL7 vMR standard can be found here.
The OpenCDS team is also actively working on adding support for additional standards, such as the HL7 C-CDA and FHIR standards.
Drools is an open-source inferencing engine supported by JBoss which is widely used around the world. It includes authoring and knowledge management tools at two levels:
JBoss Drools and the Guvnor knowledge management tool are central components of OpenCDS.
The Distributed Terminology System (DTS) is an open-source and full-featured terminology support framework provided and serviced by Apelon. It includes the ability to maintain the content of medical vocabularies, and to maintain the relationships and mappings from one vocabulary to another. It can also be used to create and map local or proprietary vocabularies to the common and widely used standards, such as ICD9CM,SNOMED CT, LOINC, NDC, and RXNorm. DTS can also be used to map broad "clinical concepts" such as "Diabetes Mellitus" to the sets of relevant codes and terms used in the standard vocabularies.
Drools has the ability to create a “domain specific language” (DSL) for intuitive knowledge authoring. We hide all of the technical details of knowledge authoring behind clinician-friendly interfaces using the OpenCDS DSL. This allows the "clinical rule author" to develop rules by selecting components (that we provide) which describe the relevant clinical aspects in a common clinical language. We also use drop-down list selection for the concepts based in standard vocabularies.
We are mapping structured data from standards such as CCD, CCR, CDAr2, and C32 into the vMR structure.
Wrapped Web services can also be created for other CDS engines. The HL7 Infobutton standard uses this interface. We have also produced OpenCDS wrappers for existing CDS systems, including a system known as SEBASTIAN previously developed by Dr. Kawamoto and several other CDS systems.