CDS Hooks
3.0.0-ballot - R3 Normative Ballot International flag

CDS Hooks, published by Clinical Decision Support WG. This guide is not an authorized publication; it is the continuous build for version 3.0.0-ballot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/cds-hooks/ and changes regularly. See the Directory of published versions

Logical Model: CDSHooks Feedback (Logical Definition) - Detailed Descriptions

Page standards status: Informative

Definitions for the CDSHooksFeedback logical model

Guidance on how to interpret the contents of this table can be foundhere

0. CDSHooksFeedback
Definition

Feedback that a CDS Client POSTs to a CDS Service's feedback endpoint. The request body is an object containing an array of one or more Feedback entries reporting end-user interaction with cards previously returned by the CDS Service.

ShortThe request body for the CDS Hooks feedback endpoint
Control0..*
Is Modifierfalse
Logical ModelInstances of this logical model are not marked to be the target of a Reference
2. CDSHooksFeedback.extension
Definition

A JSON object that has properties where the names are defined by the extension definitions

ShortObject that has Named Extension Properties
Comments

Extension structures SHOULD use a strategy for naming that ensures global uniqueness, such as reverse-domain-name notation, e.g. com.cds-hooks.sandbox.myextension-practitionerspecialty. How to handle complex extensions (objects) is not defined

Control0..1
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksExtensions
4. CDSHooksFeedback.feedback
Definition

An array of Feedback entries reporting end-user interaction with cards previously returned by the CDS Service.

ShortArray of Feedback entries
Control0..*
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksElement
JSON FormatThe JSON Array for this property is present even when there are no items in the instance (e.g. as an empty array)
Invariantscds-fb-1: outcome must be 'accepted' or 'overridden' (outcome = 'accepted' or outcome = 'overridden')
cds-fb-2: If outcome is 'accepted', acceptedSuggestions SHALL be provided ((outcome = 'accepted') implies acceptedSuggestions.exists())
6. CDSHooksFeedback.feedback.extension
Definition

A JSON object that has properties where the names are defined by the extension definitions

ShortObject that has Named Extension Properties
Comments

Extension structures SHOULD use a strategy for naming that ensures global uniqueness, such as reverse-domain-name notation, e.g. com.cds-hooks.sandbox.myextension-practitionerspecialty. How to handle complex extensions (objects) is not defined

Control0..1
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksExtensions
8. CDSHooksFeedback.feedback.card
Definition

The card.uuid from the CDS Hooks response. Uniquely identifies the card.

ShortIdentifier of the card the user acted on
Control1..1
Typeuuid
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
String FormatWhen this element is read urn:uuid:is prefixed to the value before validation
10. CDSHooksFeedback.feedback.outcome
Definition

A value of accepted or overridden.

Shortaccepted | overridden
Control1..1
Typecode
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
12. CDSHooksFeedback.feedback.acceptedSuggestions
Definition

An array of objects identifying one or more of the user's AcceptedSuggestions. Required for 'accepted' outcomes.

ShortSuggestions accepted by the user
Control0..*
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksElement
14. CDSHooksFeedback.feedback.acceptedSuggestions.extension
Definition

A JSON object that has properties where the names are defined by the extension definitions

ShortObject that has Named Extension Properties
Comments

Extension structures SHOULD use a strategy for naming that ensures global uniqueness, such as reverse-domain-name notation, e.g. com.cds-hooks.sandbox.myextension-practitionerspecialty. How to handle complex extensions (objects) is not defined

Control0..1
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksExtensions
16. CDSHooksFeedback.feedback.acceptedSuggestions.id
Definition

The card.suggestion.uuid from the CDS Hooks response. Uniquely identifies the suggestion that was accepted.

ShortIdentifier of the accepted suggestion
Control1..1
Typeuuid
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
String FormatWhen this element is read urn:uuid:is prefixed to the value before validation
18. CDSHooksFeedback.feedback.overrideReason
Definition

Captures the override reason as a Coding as well as any free-text comment entered by the user.

ShortReason the user overrode the card
Control0..1
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksElement
Invariantscds-fb-3: An overrideReason must contain a reason, a userComment, or both (reason.exists() or userComment.exists())
20. CDSHooksFeedback.feedback.overrideReason.extension
Definition

A JSON object that has properties where the names are defined by the extension definitions

ShortObject that has Named Extension Properties
Comments

Extension structures SHOULD use a strategy for naming that ensures global uniqueness, such as reverse-domain-name notation, e.g. com.cds-hooks.sandbox.myextension-practitionerspecialty. How to handle complex extensions (objects) is not defined

Control0..1
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksExtensions
22. CDSHooksFeedback.feedback.overrideReason.reason
Definition

The Coding object representing the override reason selected by the end user. Required if the user selected an override reason from the list of reasons provided in the Card (instead of only leaving a userComment).

ShortThe override reason selected by the end user
Control0..1
TypeCoding
24. CDSHooksFeedback.feedback.overrideReason.userComment
Definition

Free text the clinician provided to further explain why the card was rejected.

ShortFree text user comment
Control0..1
Typestring
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
26. CDSHooksFeedback.feedback.outcomeTimestamp
Definition

ISO8601 representation of the date and time in Coordinated Universal Time (UTC) when action was taken on the card, as profiled in section 5.6 of RFC3339 (e.g. 1985-04-12T23:20:50.52Z).

ShortWhen the user took action on the card
Control1..1
Typeinstant
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension

Guidance on how to interpret the contents of this table can be foundhere

0. CDSHooksFeedback
Definition

Feedback that a CDS Client POSTs to a CDS Service's feedback endpoint. The request body is an object containing an array of one or more Feedback entries reporting end-user interaction with cards previously returned by the CDS Service.

ShortThe request body for the CDS Hooks feedback endpoint
Logical ModelInstances of this logical model are not marked to be the target of a Reference
2. CDSHooksFeedback.feedback
Definition

An array of Feedback entries reporting end-user interaction with cards previously returned by the CDS Service.

ShortArray of Feedback entries
Control0..*
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksElement
JSON FormatThe JSON Array for this property is present even when there are no items in the instance (e.g. as an empty array)
Invariantscds-fb-1: outcome must be 'accepted' or 'overridden' (outcome = 'accepted' or outcome = 'overridden')
cds-fb-2: If outcome is 'accepted', acceptedSuggestions SHALL be provided ((outcome = 'accepted') implies acceptedSuggestions.exists())
4. CDSHooksFeedback.feedback.card
Definition

The card.uuid from the CDS Hooks response. Uniquely identifies the card.

ShortIdentifier of the card the user acted on
Control1..1
Typeuuid
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
String FormatWhen this element is read urn:uuid:is prefixed to the value before validation
6. CDSHooksFeedback.feedback.outcome
Definition

A value of accepted or overridden.

Shortaccepted | overridden
Control1..1
Typecode
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
8. CDSHooksFeedback.feedback.acceptedSuggestions
Definition

An array of objects identifying one or more of the user's AcceptedSuggestions. Required for 'accepted' outcomes.

ShortSuggestions accepted by the user
Control0..*
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksElement
10. CDSHooksFeedback.feedback.acceptedSuggestions.id
Definition

The card.suggestion.uuid from the CDS Hooks response. Uniquely identifies the suggestion that was accepted.

ShortIdentifier of the accepted suggestion
Control1..1
Typeuuid
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
String FormatWhen this element is read urn:uuid:is prefixed to the value before validation
12. CDSHooksFeedback.feedback.overrideReason
Definition

Captures the override reason as a Coding as well as any free-text comment entered by the user.

ShortReason the user overrode the card
Control0..1
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksElement
Invariantscds-fb-3: An overrideReason must contain a reason, a userComment, or both (reason.exists() or userComment.exists())
14. CDSHooksFeedback.feedback.overrideReason.reason
Definition

The Coding object representing the override reason selected by the end user. Required if the user selected an override reason from the list of reasons provided in the Card (instead of only leaving a userComment).

ShortThe override reason selected by the end user
Control0..1
TypeCoding
16. CDSHooksFeedback.feedback.overrideReason.userComment
Definition

Free text the clinician provided to further explain why the card was rejected.

ShortFree text user comment
Control0..1
Typestring
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
18. CDSHooksFeedback.feedback.outcomeTimestamp
Definition

ISO8601 representation of the date and time in Coordinated Universal Time (UTC) when action was taken on the card, as profiled in section 5.6 of RFC3339 (e.g. 1985-04-12T23:20:50.52Z).

ShortWhen the user took action on the card
Control1..1
Typeinstant
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension

Guidance on how to interpret the contents of this table can be foundhere

0. CDSHooksFeedback
Definition

Feedback that a CDS Client POSTs to a CDS Service's feedback endpoint. The request body is an object containing an array of one or more Feedback entries reporting end-user interaction with cards previously returned by the CDS Service.

ShortThe request body for the CDS Hooks feedback endpoint
Control0..*
Is Modifierfalse
Logical ModelInstances of this logical model are not marked to be the target of a Reference
2. CDSHooksFeedback.extension
Definition

A JSON object that has properties where the names are defined by the extension definitions

ShortObject that has Named Extension Properties
Comments

Extension structures SHOULD use a strategy for naming that ensures global uniqueness, such as reverse-domain-name notation, e.g. com.cds-hooks.sandbox.myextension-practitionerspecialty. How to handle complex extensions (objects) is not defined

Control0..1
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksExtensions
4. CDSHooksFeedback.feedback
Definition

An array of Feedback entries reporting end-user interaction with cards previously returned by the CDS Service.

ShortArray of Feedback entries
Control0..*
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksElement
JSON FormatThe JSON Array for this property is present even when there are no items in the instance (e.g. as an empty array)
Invariantscds-fb-1: outcome must be 'accepted' or 'overridden' (outcome = 'accepted' or outcome = 'overridden')
cds-fb-2: If outcome is 'accepted', acceptedSuggestions SHALL be provided ((outcome = 'accepted') implies acceptedSuggestions.exists())
6. CDSHooksFeedback.feedback.extension
Definition

A JSON object that has properties where the names are defined by the extension definitions

ShortObject that has Named Extension Properties
Comments

Extension structures SHOULD use a strategy for naming that ensures global uniqueness, such as reverse-domain-name notation, e.g. com.cds-hooks.sandbox.myextension-practitionerspecialty. How to handle complex extensions (objects) is not defined

Control0..1
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksExtensions
8. CDSHooksFeedback.feedback.card
Definition

The card.uuid from the CDS Hooks response. Uniquely identifies the card.

ShortIdentifier of the card the user acted on
Control1..1
Typeuuid
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
String FormatWhen this element is read urn:uuid:is prefixed to the value before validation
10. CDSHooksFeedback.feedback.outcome
Definition

A value of accepted or overridden.

Shortaccepted | overridden
Control1..1
Typecode
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
12. CDSHooksFeedback.feedback.acceptedSuggestions
Definition

An array of objects identifying one or more of the user's AcceptedSuggestions. Required for 'accepted' outcomes.

ShortSuggestions accepted by the user
Control0..*
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksElement
14. CDSHooksFeedback.feedback.acceptedSuggestions.extension
Definition

A JSON object that has properties where the names are defined by the extension definitions

ShortObject that has Named Extension Properties
Comments

Extension structures SHOULD use a strategy for naming that ensures global uniqueness, such as reverse-domain-name notation, e.g. com.cds-hooks.sandbox.myextension-practitionerspecialty. How to handle complex extensions (objects) is not defined

Control0..1
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksExtensions
16. CDSHooksFeedback.feedback.acceptedSuggestions.id
Definition

The card.suggestion.uuid from the CDS Hooks response. Uniquely identifies the suggestion that was accepted.

ShortIdentifier of the accepted suggestion
Control1..1
Typeuuid
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
String FormatWhen this element is read urn:uuid:is prefixed to the value before validation
18. CDSHooksFeedback.feedback.overrideReason
Definition

Captures the override reason as a Coding as well as any free-text comment entered by the user.

ShortReason the user overrode the card
Control0..1
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksElement
Invariantscds-fb-3: An overrideReason must contain a reason, a userComment, or both (reason.exists() or userComment.exists())
20. CDSHooksFeedback.feedback.overrideReason.extension
Definition

A JSON object that has properties where the names are defined by the extension definitions

ShortObject that has Named Extension Properties
Comments

Extension structures SHOULD use a strategy for naming that ensures global uniqueness, such as reverse-domain-name notation, e.g. com.cds-hooks.sandbox.myextension-practitionerspecialty. How to handle complex extensions (objects) is not defined

Control0..1
Typehttp://hl7.org/fhir/tools/StructureDefinition/CDSHooksExtensions
22. CDSHooksFeedback.feedback.overrideReason.reason
Definition

The Coding object representing the override reason selected by the end user. Required if the user selected an override reason from the list of reasons provided in the Card (instead of only leaving a userComment).

ShortThe override reason selected by the end user
Control0..1
TypeCoding
24. CDSHooksFeedback.feedback.overrideReason.userComment
Definition

Free text the clinician provided to further explain why the card was rejected.

ShortFree text user comment
Control0..1
Typestring
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
26. CDSHooksFeedback.feedback.outcomeTimestamp
Definition

ISO8601 representation of the date and time in Coordinated Universal Time (UTC) when action was taken on the card, as profiled in section 5.6 of RFC3339 (e.g. 1985-04-12T23:20:50.52Z).

ShortWhen the user took action on the card
Control1..1
Typeinstant
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension