This is a joint post by Bryn Rhodes, Kevin Shekleton, and Isaac Vetter.
Since the January WGM in January 2017, we have spent the past several months meeting and discussing weekly how to best unify the Clinical Reasoning and CDS Hooks projects. Both projects aim to define standards for clinical decision support (CDS).
Clinical Reasoning, a project within the HL7 community, aims to define a comprehensive standard around clinical decision support. Included within this are standards for how knowledge and rules are represented, how said knowledge would be executed locally within the EHR, and how a remote service can be executed to provide clinical decision support within the EHR.
CDS Hooks, an open source project outside of HL7, takes a more narrow scope and aims to define a standard for remote clinical decision support. CDS Hooks has seen a very large and vibrant implementer community between EHRs, CDS service providers, and healthcare organizations.
Between both projects, there is an overlap in the support of remote decision support. After several months of discussions, we believe the best approach is for Clinical Reasoning to focus on knowledge artifact definition and local CDS execution and CDS Hooks to remain focused on remote CDS.
We have outlined the proposed changes to both projects as part of this unification effort below. Additionally, we presented our progress at the HL7 WGM last week in Madrid. A copy of our presentation is available here.
We encourage anyone interested in either project to get involved and provide your feedback. Here are some ways you can contribute:
Participate in the CDS Hooks mailing list or Zulip chat
Log GForge tickets to Clinical Reasoning
Log or comment on Github Issues and/or submit a pull request to CDS Hooks
Remove the following FHIR resources:
ServiceDefinition (replaced by Discovery endpoint in CDS Hooks) (GF# 13410)
GuidanceResponse (replaced by CDS Service response in CDS Hooks) (GF# 13411)
Rename label to prefix (consistent with Questionnaire)
Add label field (consistent with CDS Hooks use of ‘label’)
Hooks
Formally document what a hook represents (Github Issue #39)
Define an infobutton hook (Github Issue #35)
Discovery
Rename name field to title (consistent with FHIR’s use of title for user-visible values) (Github issue #40)
Evaluate UsageContext for trigger guards (Github Issue #6)
Constrain prefetch to align with FHIR's DataRequirements? (Github Issue #47)
Use Last-Modified HTTP response header on Discovery to indicate when changes last occurred (logged Github Issue #38)
CDS Services
Align on a specified Markdown flavor (Github Issue #33)
Enhance suggestion to support grouped recommendations (Github Issue #43)
Introduce the concept of unsubscribing from a card (Github issue #41)
Introduce the concept of evaluating CDS at a specified datetime (Github Issue #50)
Analytics
Inform the CDS Service that the user rejected their suggestion and why (Github Issue #42)