FHIR Tooling Extensions IG
0.3.0 - Release 0.2.0 International flag

This page is part of the HL7 Tools Extension IG (v0.3.0: Releases - Informative) based on FHIR (HL7® FHIR® Standard) v5.0.0. This is the current published version. For a full list of available versions, see the Directory of published versions

Logical Model: CDSHooks Response (Logical Definition) ( Experimental )

Official URL: http://hl7.org/fhir/tools/StructureDefinition/CDSHooksResponse Version: 0.3.0
Draft as of 2024-10-27 Maturity Level: 2 Computable Name: CDSHooksResponse
Other Identifiers: OID:2.16.840.1.113883.4.642.40.1.42.7

This structure is defined to allow the FHIR Validator to validate a CDSHooks Response body. TODO: This content will be moved to the CDS Hooks specification in the future

Usage:

  • This Logical Model Profile is not used by any profiles in this Implementation Guide

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

This structure is derived from CDSHooksElement

NameFlagsCard.TypeDescription & Constraintsdoco
.. CDSHooksResponse 0..* CDSHooksElement
Elements defined in Ancestors:extension
The response to the discovery endpoint
Instances of this logical model are not marked to be the target of a Reference
... cards C 0..* CDSHooksElement An array of Cards that provide information, suggested actions, and links
JSON: The type of this element is inferred from the JSON type in the instance
cds-resp-1: only one action can be suggested if selectionBehavior = at-most-one
.... uuid 0..1 uuid Unique identifier of the card (for logging/feedback)
When this element is read urn:uuid: is prefixed to the value before validation
.... summary 1..1 string Summary message for display to the user (<140 char)
.... detail 0..1 markdown Optional detailed information to display (GitHub Flavored Markdown)
.... indicator 0..1 code info, warning, critical - Urgency/importance of what this card conveys
Binding: CDSIndicator Codes ValueSet (required)
.... source 1..1 CDSHooksElement The primary source of guidance for the content the card represents.
..... label 1..1 string Short, human-readable label to display for the source.
..... url 0..1 url Link for when user clicks for more information about the source
..... icon 0..1 url absolute URL to an icon for the source (<100x100 PNG))
..... topic 0..1 Coding Describes the content of the card - can be useful for filtering, searching or ordered display
.... suggestions C 0..* CDSHooksElement Suggest a set of changes in the context of the current activity
cds-resp-5: All suggestion actions must have a description
..... label 1..1 string Human-readable label to display for this suggestion
..... uuid 0..1 uuid Unique identifier, used for auditing and logging suggestions
When this element is read urn:uuid: is prefixed to the value before validation
..... isRecommended 0..1 boolean
..... actions C 0..* CDSHooksElement Defines a suggested action (all apply)
cds-resp-2: A resourceId not a resource must be provided when type = delete
...... type 1..1 code create, update, delete - type of action performed
Binding: CDSActionType Codes ValueSet (required)
...... description C 0..1 string Human-readable description of the suggested action (MAY be presented to the end-user)
...... resource 0..1 Resource FHIR resource to create/update
...... resourceId 0..* url A relative reference to the relevant resource.
.... selectionBehavior 0..1 code at-most-one, any - intended selection behavior of the suggestions in the card
Binding: CDSSelectionBehavior Codes ValueSet (required)
.... overrideReasons C 0..* Coding Can be selected by the end user when overriding a card without taking the suggested recommendations.
cds-resp-4: the CDS Service MUST populate a display value for each reason's Coding
.... links C 0..* CDSHooksElement Link to an app that the user might want to run for additional information or to help guide a decision
cds-resp-3: AppContext only for smart Apps
..... label 1..1 string Human-readable label to display for this link (e.g. the CDS Client might render this as the underlined text of a clickable link).
..... url 1..1 url URL to load (via GET, in a browser context) when a user clicks on this link. Note that this MAY be a 'deep link' with context embedded in path segments, query parameters, or a hash.
..... type 0..1 code absolute, smart - how to use the link
Binding: CDSLinkType Codes ValueSet (required)
..... appContext 0..1 string Allows the CDS Service to share information from the CDS card with a subsequently launched SMART app
... systemActions 0..* See actions An array of Actions that the CDS Service proposes to auto-apply
JSON: This element may be present as a JSON Array even when there are no items in the instance

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
CDSHooksResponse.cards.indicatorrequiredCDSIndicatorCodesVS (a valid code from CDSIndicator Codes)
http://hl7.org/fhir/tools/ValueSet/CDSIndicator
from this IG
CDSHooksResponse.cards.suggestions.actions.typerequiredCDSActionTypeCodesVS (a valid code from CDSActionType Codes)
http://hl7.org/fhir/tools/ValueSet/CDSActionType
from this IG
CDSHooksResponse.cards.selectionBehaviorrequiredCDSSelectionBehaviorCodesVS (a valid code from CDSSelectionBehavior Codes)
http://hl7.org/fhir/tools/ValueSet/CDSSelectionBehavior
from this IG
CDSHooksResponse.cards.links.typerequiredCDSLinkTypeCodesVS (a valid code from CDSLinkType Codes)
http://hl7.org/fhir/tools/ValueSet/CDSLinkType
from this IG

Constraints

IdGradePath(s)DetailsRequirements
cds-resp-1errorCDSHooksResponse.cardsonly one action can be suggested if selectionBehavior = at-most-one
: (selectionBehavior = 'at-most-one') implies suggestions.where(isRecommended).count() <= 1
cds-resp-2warningCDSHooksResponse.cards.suggestions.actionsA resourceId not a resource must be provided when type = delete
: (type = 'delete') implies (resourceId.exists() and resource.empty())
cds-resp-3errorCDSHooksResponse.cards.linksAppContext only for smart Apps
: (type != 'smart') implies (appContext.empty())
cds-resp-4errorCDSHooksResponse.cards.overrideReasonsthe CDS Service MUST populate a display value for each reason's Coding
: all(display.exists())
cds-resp-5errorCDSHooksResponse.cards.suggestionsAll suggestion actions must have a description
: actions.all(description.exists())
NameFlagsCard.TypeDescription & Constraintsdoco
.. CDSHooksResponse 0..* CDSHooksElement
Elements defined in Ancestors:extension
The response to the discovery endpoint
Instances of this logical model are not marked to be the target of a Reference
... cards C 0..* CDSHooksElement An array of Cards that provide information, suggested actions, and links
JSON: The type of this element is inferred from the JSON type in the instance
cds-resp-1: only one action can be suggested if selectionBehavior = at-most-one
.... uuid 0..1 uuid Unique identifier of the card (for logging/feedback)
When this element is read urn:uuid: is prefixed to the value before validation
.... summary 1..1 string Summary message for display to the user (<140 char)
.... detail 0..1 markdown Optional detailed information to display (GitHub Flavored Markdown)
.... indicator 0..1 code info, warning, critical - Urgency/importance of what this card conveys
Binding: CDSIndicator Codes ValueSet (required)
.... source 1..1 CDSHooksElement The primary source of guidance for the content the card represents.
..... label 1..1 string Short, human-readable label to display for the source.
..... url 0..1 url Link for when user clicks for more information about the source
..... icon 0..1 url absolute URL to an icon for the source (<100x100 PNG))
..... topic 0..1 Coding Describes the content of the card - can be useful for filtering, searching or ordered display
.... suggestions C 0..* CDSHooksElement Suggest a set of changes in the context of the current activity
cds-resp-5: All suggestion actions must have a description
..... label 1..1 string Human-readable label to display for this suggestion
..... uuid 0..1 uuid Unique identifier, used for auditing and logging suggestions
When this element is read urn:uuid: is prefixed to the value before validation
..... isRecommended 0..1 boolean
..... actions C 0..* CDSHooksElement Defines a suggested action (all apply)
cds-resp-2: A resourceId not a resource must be provided when type = delete
...... type 1..1 code create, update, delete - type of action performed
Binding: CDSActionType Codes ValueSet (required)
...... description C 0..1 string Human-readable description of the suggested action (MAY be presented to the end-user)
...... resource 0..1 Resource FHIR resource to create/update
...... resourceId 0..* url A relative reference to the relevant resource.
.... selectionBehavior 0..1 code at-most-one, any - intended selection behavior of the suggestions in the card
Binding: CDSSelectionBehavior Codes ValueSet (required)
.... overrideReasons C 0..* Coding Can be selected by the end user when overriding a card without taking the suggested recommendations.
cds-resp-4: the CDS Service MUST populate a display value for each reason's Coding
.... links C 0..* CDSHooksElement Link to an app that the user might want to run for additional information or to help guide a decision
cds-resp-3: AppContext only for smart Apps
..... label 1..1 string Human-readable label to display for this link (e.g. the CDS Client might render this as the underlined text of a clickable link).
..... url 1..1 url URL to load (via GET, in a browser context) when a user clicks on this link. Note that this MAY be a 'deep link' with context embedded in path segments, query parameters, or a hash.
..... type 0..1 code absolute, smart - how to use the link
Binding: CDSLinkType Codes ValueSet (required)
..... appContext 0..1 string Allows the CDS Service to share information from the CDS card with a subsequently launched SMART app
... systemActions 0..* See actions An array of Actions that the CDS Service proposes to auto-apply
JSON: This element may be present as a JSON Array even when there are no items in the instance

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
CDSHooksResponse.cards.indicatorrequiredCDSIndicatorCodesVS (a valid code from CDSIndicator Codes)
http://hl7.org/fhir/tools/ValueSet/CDSIndicator
from this IG
CDSHooksResponse.cards.suggestions.actions.typerequiredCDSActionTypeCodesVS (a valid code from CDSActionType Codes)
http://hl7.org/fhir/tools/ValueSet/CDSActionType
from this IG
CDSHooksResponse.cards.selectionBehaviorrequiredCDSSelectionBehaviorCodesVS (a valid code from CDSSelectionBehavior Codes)
http://hl7.org/fhir/tools/ValueSet/CDSSelectionBehavior
from this IG
CDSHooksResponse.cards.links.typerequiredCDSLinkTypeCodesVS (a valid code from CDSLinkType Codes)
http://hl7.org/fhir/tools/ValueSet/CDSLinkType
from this IG

Constraints

IdGradePath(s)DetailsRequirements
cds-resp-1errorCDSHooksResponse.cardsonly one action can be suggested if selectionBehavior = at-most-one
: (selectionBehavior = 'at-most-one') implies suggestions.where(isRecommended).count() <= 1
cds-resp-2warningCDSHooksResponse.cards.suggestions.actionsA resourceId not a resource must be provided when type = delete
: (type = 'delete') implies (resourceId.exists() and resource.empty())
cds-resp-3errorCDSHooksResponse.cards.linksAppContext only for smart Apps
: (type != 'smart') implies (appContext.empty())
cds-resp-4errorCDSHooksResponse.cards.overrideReasonsthe CDS Service MUST populate a display value for each reason's Coding
: all(display.exists())
cds-resp-5errorCDSHooksResponse.cards.suggestionsAll suggestion actions must have a description
: actions.all(description.exists())
NameFlagsCard.TypeDescription & Constraintsdoco
.. CDSHooksResponse 0..* CDSHooksElement
Elements defined in Ancestors:extension
The response to the discovery endpoint
Instances of this logical model are not marked to be the target of a Reference
... extension 0..1 CDSHooksElement Object that has Named Extension Properties
This element can be extended by named JSON elements
... cards C 0..* CDSHooksElement An array of Cards that provide information, suggested actions, and links
JSON: The type of this element is inferred from the JSON type in the instance
cds-resp-1: only one action can be suggested if selectionBehavior = at-most-one
.... extension 0..1 CDSHooksElement Object that has Named Extension Properties
This element can be extended by named JSON elements
.... uuid 0..1 uuid Unique identifier of the card (for logging/feedback)
When this element is read urn:uuid: is prefixed to the value before validation
.... summary 1..1 string Summary message for display to the user (<140 char)
.... detail 0..1 markdown Optional detailed information to display (GitHub Flavored Markdown)
.... indicator 0..1 code info, warning, critical - Urgency/importance of what this card conveys
Binding: CDSIndicator Codes ValueSet (required)
.... source 1..1 CDSHooksElement The primary source of guidance for the content the card represents.
..... extension 0..1 CDSHooksElement Object that has Named Extension Properties
This element can be extended by named JSON elements
..... label 1..1 string Short, human-readable label to display for the source.
..... url 0..1 url Link for when user clicks for more information about the source
..... icon 0..1 url absolute URL to an icon for the source (<100x100 PNG))
..... topic 0..1 Coding Describes the content of the card - can be useful for filtering, searching or ordered display
.... suggestions C 0..* CDSHooksElement Suggest a set of changes in the context of the current activity
cds-resp-5: All suggestion actions must have a description
..... extension 0..1 CDSHooksElement Object that has Named Extension Properties
This element can be extended by named JSON elements
..... label 1..1 string Human-readable label to display for this suggestion
..... uuid 0..1 uuid Unique identifier, used for auditing and logging suggestions
When this element is read urn:uuid: is prefixed to the value before validation
..... isRecommended 0..1 boolean
..... actions C 0..* CDSHooksElement Defines a suggested action (all apply)
cds-resp-2: A resourceId not a resource must be provided when type = delete
...... extension 0..1 CDSHooksElement Object that has Named Extension Properties
This element can be extended by named JSON elements
...... type 1..1 code create, update, delete - type of action performed
Binding: CDSActionType Codes ValueSet (required)
...... description C 0..1 string Human-readable description of the suggested action (MAY be presented to the end-user)
...... resource 0..1 Resource FHIR resource to create/update
...... resourceId 0..* url A relative reference to the relevant resource.
.... selectionBehavior 0..1 code at-most-one, any - intended selection behavior of the suggestions in the card
Binding: CDSSelectionBehavior Codes ValueSet (required)
.... overrideReasons C 0..* Coding Can be selected by the end user when overriding a card without taking the suggested recommendations.
cds-resp-4: the CDS Service MUST populate a display value for each reason's Coding
.... links C 0..* CDSHooksElement Link to an app that the user might want to run for additional information or to help guide a decision
cds-resp-3: AppContext only for smart Apps
..... extension 0..1 CDSHooksElement Object that has Named Extension Properties
This element can be extended by named JSON elements
..... label 1..1 string Human-readable label to display for this link (e.g. the CDS Client might render this as the underlined text of a clickable link).
..... url 1..1 url URL to load (via GET, in a browser context) when a user clicks on this link. Note that this MAY be a 'deep link' with context embedded in path segments, query parameters, or a hash.
..... type 0..1 code absolute, smart - how to use the link
Binding: CDSLinkType Codes ValueSet (required)
..... appContext 0..1 string Allows the CDS Service to share information from the CDS card with a subsequently launched SMART app
... systemActions 0..* See actions An array of Actions that the CDS Service proposes to auto-apply
JSON: This element may be present as a JSON Array even when there are no items in the instance

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
CDSHooksResponse.cards.indicatorrequiredCDSIndicatorCodesVS (a valid code from CDSIndicator Codes)
http://hl7.org/fhir/tools/ValueSet/CDSIndicator
from this IG
CDSHooksResponse.cards.suggestions.actions.typerequiredCDSActionTypeCodesVS (a valid code from CDSActionType Codes)
http://hl7.org/fhir/tools/ValueSet/CDSActionType
from this IG
CDSHooksResponse.cards.selectionBehaviorrequiredCDSSelectionBehaviorCodesVS (a valid code from CDSSelectionBehavior Codes)
http://hl7.org/fhir/tools/ValueSet/CDSSelectionBehavior
from this IG
CDSHooksResponse.cards.links.typerequiredCDSLinkTypeCodesVS (a valid code from CDSLinkType Codes)
http://hl7.org/fhir/tools/ValueSet/CDSLinkType
from this IG

Constraints

IdGradePath(s)DetailsRequirements
cds-resp-1errorCDSHooksResponse.cardsonly one action can be suggested if selectionBehavior = at-most-one
: (selectionBehavior = 'at-most-one') implies suggestions.where(isRecommended).count() <= 1
cds-resp-2warningCDSHooksResponse.cards.suggestions.actionsA resourceId not a resource must be provided when type = delete
: (type = 'delete') implies (resourceId.exists() and resource.empty())
cds-resp-3errorCDSHooksResponse.cards.linksAppContext only for smart Apps
: (type != 'smart') implies (appContext.empty())
cds-resp-4errorCDSHooksResponse.cards.overrideReasonsthe CDS Service MUST populate a display value for each reason's Coding
: all(display.exists())
cds-resp-5errorCDSHooksResponse.cards.suggestionsAll suggestion actions must have a description
: actions.all(description.exists())

This structure is derived from CDSHooksElement

Summary

Mandatory: 0 element(7 nested mandatory elements)

Maturity: 2

Differential View

This structure is derived from CDSHooksElement

NameFlagsCard.TypeDescription & Constraintsdoco
.. CDSHooksResponse 0..* CDSHooksElement
Elements defined in Ancestors:extension
The response to the discovery endpoint
Instances of this logical model are not marked to be the target of a Reference
... cards C 0..* CDSHooksElement An array of Cards that provide information, suggested actions, and links
JSON: The type of this element is inferred from the JSON type in the instance
cds-resp-1: only one action can be suggested if selectionBehavior = at-most-one
.... uuid 0..1 uuid Unique identifier of the card (for logging/feedback)
When this element is read urn:uuid: is prefixed to the value before validation
.... summary 1..1 string Summary message for display to the user (<140 char)
.... detail 0..1 markdown Optional detailed information to display (GitHub Flavored Markdown)
.... indicator 0..1 code info, warning, critical - Urgency/importance of what this card conveys
Binding: CDSIndicator Codes ValueSet (required)
.... source 1..1 CDSHooksElement The primary source of guidance for the content the card represents.
..... label 1..1 string Short, human-readable label to display for the source.
..... url 0..1 url Link for when user clicks for more information about the source
..... icon 0..1 url absolute URL to an icon for the source (<100x100 PNG))
..... topic 0..1 Coding Describes the content of the card - can be useful for filtering, searching or ordered display
.... suggestions C 0..* CDSHooksElement Suggest a set of changes in the context of the current activity
cds-resp-5: All suggestion actions must have a description
..... label 1..1 string Human-readable label to display for this suggestion
..... uuid 0..1 uuid Unique identifier, used for auditing and logging suggestions
When this element is read urn:uuid: is prefixed to the value before validation
..... isRecommended 0..1 boolean
..... actions C 0..* CDSHooksElement Defines a suggested action (all apply)
cds-resp-2: A resourceId not a resource must be provided when type = delete
...... type 1..1 code create, update, delete - type of action performed
Binding: CDSActionType Codes ValueSet (required)
...... description C 0..1 string Human-readable description of the suggested action (MAY be presented to the end-user)
...... resource 0..1 Resource FHIR resource to create/update
...... resourceId 0..* url A relative reference to the relevant resource.
.... selectionBehavior 0..1 code at-most-one, any - intended selection behavior of the suggestions in the card
Binding: CDSSelectionBehavior Codes ValueSet (required)
.... overrideReasons C 0..* Coding Can be selected by the end user when overriding a card without taking the suggested recommendations.
cds-resp-4: the CDS Service MUST populate a display value for each reason's Coding
.... links C 0..* CDSHooksElement Link to an app that the user might want to run for additional information or to help guide a decision
cds-resp-3: AppContext only for smart Apps
..... label 1..1 string Human-readable label to display for this link (e.g. the CDS Client might render this as the underlined text of a clickable link).
..... url 1..1 url URL to load (via GET, in a browser context) when a user clicks on this link. Note that this MAY be a 'deep link' with context embedded in path segments, query parameters, or a hash.
..... type 0..1 code absolute, smart - how to use the link
Binding: CDSLinkType Codes ValueSet (required)
..... appContext 0..1 string Allows the CDS Service to share information from the CDS card with a subsequently launched SMART app
... systemActions 0..* See actions An array of Actions that the CDS Service proposes to auto-apply
JSON: This element may be present as a JSON Array even when there are no items in the instance

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
CDSHooksResponse.cards.indicatorrequiredCDSIndicatorCodesVS (a valid code from CDSIndicator Codes)
http://hl7.org/fhir/tools/ValueSet/CDSIndicator
from this IG
CDSHooksResponse.cards.suggestions.actions.typerequiredCDSActionTypeCodesVS (a valid code from CDSActionType Codes)
http://hl7.org/fhir/tools/ValueSet/CDSActionType
from this IG
CDSHooksResponse.cards.selectionBehaviorrequiredCDSSelectionBehaviorCodesVS (a valid code from CDSSelectionBehavior Codes)
http://hl7.org/fhir/tools/ValueSet/CDSSelectionBehavior
from this IG
CDSHooksResponse.cards.links.typerequiredCDSLinkTypeCodesVS (a valid code from CDSLinkType Codes)
http://hl7.org/fhir/tools/ValueSet/CDSLinkType
from this IG

Constraints

IdGradePath(s)DetailsRequirements
cds-resp-1errorCDSHooksResponse.cardsonly one action can be suggested if selectionBehavior = at-most-one
: (selectionBehavior = 'at-most-one') implies suggestions.where(isRecommended).count() <= 1
cds-resp-2warningCDSHooksResponse.cards.suggestions.actionsA resourceId not a resource must be provided when type = delete
: (type = 'delete') implies (resourceId.exists() and resource.empty())
cds-resp-3errorCDSHooksResponse.cards.linksAppContext only for smart Apps
: (type != 'smart') implies (appContext.empty())
cds-resp-4errorCDSHooksResponse.cards.overrideReasonsthe CDS Service MUST populate a display value for each reason's Coding
: all(display.exists())
cds-resp-5errorCDSHooksResponse.cards.suggestionsAll suggestion actions must have a description
: actions.all(description.exists())

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. CDSHooksResponse 0..* CDSHooksElement
Elements defined in Ancestors:extension
The response to the discovery endpoint
Instances of this logical model are not marked to be the target of a Reference
... cards C 0..* CDSHooksElement An array of Cards that provide information, suggested actions, and links
JSON: The type of this element is inferred from the JSON type in the instance
cds-resp-1: only one action can be suggested if selectionBehavior = at-most-one
.... uuid 0..1 uuid Unique identifier of the card (for logging/feedback)
When this element is read urn:uuid: is prefixed to the value before validation
.... summary 1..1 string Summary message for display to the user (<140 char)
.... detail 0..1 markdown Optional detailed information to display (GitHub Flavored Markdown)
.... indicator 0..1 code info, warning, critical - Urgency/importance of what this card conveys
Binding: CDSIndicator Codes ValueSet (required)
.... source 1..1 CDSHooksElement The primary source of guidance for the content the card represents.
..... label 1..1 string Short, human-readable label to display for the source.
..... url 0..1 url Link for when user clicks for more information about the source
..... icon 0..1 url absolute URL to an icon for the source (<100x100 PNG))
..... topic 0..1 Coding Describes the content of the card - can be useful for filtering, searching or ordered display
.... suggestions C 0..* CDSHooksElement Suggest a set of changes in the context of the current activity
cds-resp-5: All suggestion actions must have a description
..... label 1..1 string Human-readable label to display for this suggestion
..... uuid 0..1 uuid Unique identifier, used for auditing and logging suggestions
When this element is read urn:uuid: is prefixed to the value before validation
..... isRecommended 0..1 boolean
..... actions C 0..* CDSHooksElement Defines a suggested action (all apply)
cds-resp-2: A resourceId not a resource must be provided when type = delete
...... type 1..1 code create, update, delete - type of action performed
Binding: CDSActionType Codes ValueSet (required)
...... description C 0..1 string Human-readable description of the suggested action (MAY be presented to the end-user)
...... resource 0..1 Resource FHIR resource to create/update
...... resourceId 0..* url A relative reference to the relevant resource.
.... selectionBehavior 0..1 code at-most-one, any - intended selection behavior of the suggestions in the card
Binding: CDSSelectionBehavior Codes ValueSet (required)
.... overrideReasons C 0..* Coding Can be selected by the end user when overriding a card without taking the suggested recommendations.
cds-resp-4: the CDS Service MUST populate a display value for each reason's Coding
.... links C 0..* CDSHooksElement Link to an app that the user might want to run for additional information or to help guide a decision
cds-resp-3: AppContext only for smart Apps
..... label 1..1 string Human-readable label to display for this link (e.g. the CDS Client might render this as the underlined text of a clickable link).
..... url 1..1 url URL to load (via GET, in a browser context) when a user clicks on this link. Note that this MAY be a 'deep link' with context embedded in path segments, query parameters, or a hash.
..... type 0..1 code absolute, smart - how to use the link
Binding: CDSLinkType Codes ValueSet (required)
..... appContext 0..1 string Allows the CDS Service to share information from the CDS card with a subsequently launched SMART app
... systemActions 0..* See actions An array of Actions that the CDS Service proposes to auto-apply
JSON: This element may be present as a JSON Array even when there are no items in the instance

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
CDSHooksResponse.cards.indicatorrequiredCDSIndicatorCodesVS (a valid code from CDSIndicator Codes)
http://hl7.org/fhir/tools/ValueSet/CDSIndicator
from this IG
CDSHooksResponse.cards.suggestions.actions.typerequiredCDSActionTypeCodesVS (a valid code from CDSActionType Codes)
http://hl7.org/fhir/tools/ValueSet/CDSActionType
from this IG
CDSHooksResponse.cards.selectionBehaviorrequiredCDSSelectionBehaviorCodesVS (a valid code from CDSSelectionBehavior Codes)
http://hl7.org/fhir/tools/ValueSet/CDSSelectionBehavior
from this IG
CDSHooksResponse.cards.links.typerequiredCDSLinkTypeCodesVS (a valid code from CDSLinkType Codes)
http://hl7.org/fhir/tools/ValueSet/CDSLinkType
from this IG

Constraints

IdGradePath(s)DetailsRequirements
cds-resp-1errorCDSHooksResponse.cardsonly one action can be suggested if selectionBehavior = at-most-one
: (selectionBehavior = 'at-most-one') implies suggestions.where(isRecommended).count() <= 1
cds-resp-2warningCDSHooksResponse.cards.suggestions.actionsA resourceId not a resource must be provided when type = delete
: (type = 'delete') implies (resourceId.exists() and resource.empty())
cds-resp-3errorCDSHooksResponse.cards.linksAppContext only for smart Apps
: (type != 'smart') implies (appContext.empty())
cds-resp-4errorCDSHooksResponse.cards.overrideReasonsthe CDS Service MUST populate a display value for each reason's Coding
: all(display.exists())
cds-resp-5errorCDSHooksResponse.cards.suggestionsAll suggestion actions must have a description
: actions.all(description.exists())

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. CDSHooksResponse 0..* CDSHooksElement
Elements defined in Ancestors:extension
The response to the discovery endpoint
Instances of this logical model are not marked to be the target of a Reference
... extension 0..1 CDSHooksElement Object that has Named Extension Properties
This element can be extended by named JSON elements
... cards C 0..* CDSHooksElement An array of Cards that provide information, suggested actions, and links
JSON: The type of this element is inferred from the JSON type in the instance
cds-resp-1: only one action can be suggested if selectionBehavior = at-most-one
.... extension 0..1 CDSHooksElement Object that has Named Extension Properties
This element can be extended by named JSON elements
.... uuid 0..1 uuid Unique identifier of the card (for logging/feedback)
When this element is read urn:uuid: is prefixed to the value before validation
.... summary 1..1 string Summary message for display to the user (<140 char)
.... detail 0..1 markdown Optional detailed information to display (GitHub Flavored Markdown)
.... indicator 0..1 code info, warning, critical - Urgency/importance of what this card conveys
Binding: CDSIndicator Codes ValueSet (required)
.... source 1..1 CDSHooksElement The primary source of guidance for the content the card represents.
..... extension 0..1 CDSHooksElement Object that has Named Extension Properties
This element can be extended by named JSON elements
..... label 1..1 string Short, human-readable label to display for the source.
..... url 0..1 url Link for when user clicks for more information about the source
..... icon 0..1 url absolute URL to an icon for the source (<100x100 PNG))
..... topic 0..1 Coding Describes the content of the card - can be useful for filtering, searching or ordered display
.... suggestions C 0..* CDSHooksElement Suggest a set of changes in the context of the current activity
cds-resp-5: All suggestion actions must have a description
..... extension 0..1 CDSHooksElement Object that has Named Extension Properties
This element can be extended by named JSON elements
..... label 1..1 string Human-readable label to display for this suggestion
..... uuid 0..1 uuid Unique identifier, used for auditing and logging suggestions
When this element is read urn:uuid: is prefixed to the value before validation
..... isRecommended 0..1 boolean
..... actions C 0..* CDSHooksElement Defines a suggested action (all apply)
cds-resp-2: A resourceId not a resource must be provided when type = delete
...... extension 0..1 CDSHooksElement Object that has Named Extension Properties
This element can be extended by named JSON elements
...... type 1..1 code create, update, delete - type of action performed
Binding: CDSActionType Codes ValueSet (required)
...... description C 0..1 string Human-readable description of the suggested action (MAY be presented to the end-user)
...... resource 0..1 Resource FHIR resource to create/update
...... resourceId 0..* url A relative reference to the relevant resource.
.... selectionBehavior 0..1 code at-most-one, any - intended selection behavior of the suggestions in the card
Binding: CDSSelectionBehavior Codes ValueSet (required)
.... overrideReasons C 0..* Coding Can be selected by the end user when overriding a card without taking the suggested recommendations.
cds-resp-4: the CDS Service MUST populate a display value for each reason's Coding
.... links C 0..* CDSHooksElement Link to an app that the user might want to run for additional information or to help guide a decision
cds-resp-3: AppContext only for smart Apps
..... extension 0..1 CDSHooksElement Object that has Named Extension Properties
This element can be extended by named JSON elements
..... label 1..1 string Human-readable label to display for this link (e.g. the CDS Client might render this as the underlined text of a clickable link).
..... url 1..1 url URL to load (via GET, in a browser context) when a user clicks on this link. Note that this MAY be a 'deep link' with context embedded in path segments, query parameters, or a hash.
..... type 0..1 code absolute, smart - how to use the link
Binding: CDSLinkType Codes ValueSet (required)
..... appContext 0..1 string Allows the CDS Service to share information from the CDS card with a subsequently launched SMART app
... systemActions 0..* See actions An array of Actions that the CDS Service proposes to auto-apply
JSON: This element may be present as a JSON Array even when there are no items in the instance

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
CDSHooksResponse.cards.indicatorrequiredCDSIndicatorCodesVS (a valid code from CDSIndicator Codes)
http://hl7.org/fhir/tools/ValueSet/CDSIndicator
from this IG
CDSHooksResponse.cards.suggestions.actions.typerequiredCDSActionTypeCodesVS (a valid code from CDSActionType Codes)
http://hl7.org/fhir/tools/ValueSet/CDSActionType
from this IG
CDSHooksResponse.cards.selectionBehaviorrequiredCDSSelectionBehaviorCodesVS (a valid code from CDSSelectionBehavior Codes)
http://hl7.org/fhir/tools/ValueSet/CDSSelectionBehavior
from this IG
CDSHooksResponse.cards.links.typerequiredCDSLinkTypeCodesVS (a valid code from CDSLinkType Codes)
http://hl7.org/fhir/tools/ValueSet/CDSLinkType
from this IG

Constraints

IdGradePath(s)DetailsRequirements
cds-resp-1errorCDSHooksResponse.cardsonly one action can be suggested if selectionBehavior = at-most-one
: (selectionBehavior = 'at-most-one') implies suggestions.where(isRecommended).count() <= 1
cds-resp-2warningCDSHooksResponse.cards.suggestions.actionsA resourceId not a resource must be provided when type = delete
: (type = 'delete') implies (resourceId.exists() and resource.empty())
cds-resp-3errorCDSHooksResponse.cards.linksAppContext only for smart Apps
: (type != 'smart') implies (appContext.empty())
cds-resp-4errorCDSHooksResponse.cards.overrideReasonsthe CDS Service MUST populate a display value for each reason's Coding
: all(display.exists())
cds-resp-5errorCDSHooksResponse.cards.suggestionsAll suggestion actions must have a description
: actions.all(description.exists())

This structure is derived from CDSHooksElement

Summary

Mandatory: 0 element(7 nested mandatory elements)

Maturity: 2

 

Other representations of profile: CSV, Excel