-
Notifications
You must be signed in to change notification settings - Fork 60
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Define an approach to "trigger guards"? #6
Comments
From @dmccallie on May 11, 2016 17:22 I think we should be cautious to avoid over-engineering the notion of It makes sense to define some recommendations about how to document the --david On Wed, May 11, 2016 at 10:45 AM, Josh Mandel [email protected]
|
From @jmandel on May 11, 2016 17:27 Thanks for weighing in! I think I agree in principle -- but I'll also say that one of the best ways to document an expectation unambiguously can be to use a well-defined grammar. In other words, I wouldn't necessarily be against using something notionally executable as a documentation format. |
From @dmccallie on May 11, 2016 18:39 As long as "notationally executable" is readable by humans (in other words, On Wed, May 11, 2016 at 12:27 PM, Josh Mandel [email protected]
|
Well, there goes 2 days worth of work... 😜 |
For reference, Clinical Reasoning has defined this under ServiceDefinition.useContext which uses the UsageContext data type. |
Why not fhirpath? (insert Zoidberg here) |
I think FHIRPath is a big help here. We'd need some way to define what resources(s) a FHIRPath expression runs against. A couple of possible models: "Basic Resource Set"We can imagine a small set of resources like: a single
(Leave aside how brittle this kind of SNOMED matching is.) "Ad-hoc Resource Sets"We could imagine a more general capability where services register search queries combined with boolean FHIRPath expressions. The equivalent of the above would be:
Either of these representations could be automated (or manually implemented on a case-by-case basis inside of a given EHR, using the formal expression as a set of requirements)... but it's unclear how general-purpose and expressive these approaches are. For example, important trigger guards might need pretty rich value set semantics, where the service needs to define a (potentially big) valueset ahead of time. FHIRPath could handle this too, but we need more experience before I'd be happy making this call. |
@vadi2 - FHIRPath has come up previously. 😄 In addition to what Josh already stated, a concern with FHIRPath is the complexity in implementing this. My opinion is that we won't address this for 1.0 and instead rely upon the native capabilities of the EHR's underlying rule engine to handle this. |
Noting that this came up on Zulip - https://chat.fhir.org/#narrow/stream/179159-cds-hooks/topic/Client.20side.20pre-conditions |
From @jmandel on May 11, 2016 15:45
Providing "trigger guards" for CDS Service Invocation: We’ve encountered several CDS services that are only relevant for a particular set of patients. For instance, a bilirubin CDS service would only be of interest to newborns, so it would be optimal if the EHR would only call the service for that subset of qualifying patients. It would be great to have a discussion around this topic and see if we can at least define conventions for how this is documented in CDS services.
Copied from original issue: cds-hooks/cds-hooks#17
The text was updated successfully, but these errors were encountered: