This page is part of the FHIR Specification (v1.4.0: STU 3 Ballot 3). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions
Clinical Decision Support Work Group | Maturity Level: N/A | Ballot Status: DSTU 2 |
The ActionDefinition structure is used to define an action to be taken as part of some context such as the result of evaluating a decision support rule, or completing an order set for a patient. The structure is definitional in that it does not define a concrete action, but rather a template for some action that will be filled out in context.
For example, as part of a Suicide Risk Assessment OrderSet, a provider may choose to refer the patient to a Mental Health specialist. The OrderSet includes a definition of the action as a ProcedureRequest, but without contextual information such as the specific patient involved. As part of placing the OrderSet, the context is used to provide the additional information and complete the ProcedureRequest resource.
Each action definition may be a single action, or a group of actions, each specified as a sub-action using the same ActionDefinition structure. This hierarchical structure allows the ActionDefinition to be used in describing simple recommendations, all the way up through complex multi-level order sets.
The behavior element allows intended behavior of the actions to be described. For each behavior, a type specifies the kind of behavior being described, such as grouping or selection behavior. Each behavior type is then specified using a different value set as defined by the table below:
Behavior Type | Type Code | Possible Behaviors |
---|---|---|
Grouping Behavior | grouping | Action Grouping Behavior Value Set |
Selection Behavior | selection | Action Selection Behavior Value Set |
Required Behavior | required | Action Required Behavior Value Set |
Precheck Behavior | precheck | Action Precheck Behavior Value Set |
Cardinality Behavior | cardinality | Action Cardinality Behavior Value Set |
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ActionDefinition | Σ | Element | The definition of an action to be performed | |
actionIdentifier | Σ | 0..1 | Identifier | Unique identifier |
label | Σ | 0..1 | string | User-visible label for the action (e.g. 1. or A.) |
title | Σ | 0..1 | string | User-visible title |
description | Σ | 0..1 | string | Short description of the action |
textEquivalent | Σ | 0..1 | string | Static text equivalent of the action, used if the dynamic aspects cannot be interpreted by the receiving system |
concept | Σ | 0..* | CodeableConcept | The meaning of the action or its sub-actions |
supportingEvidence | Σ | 0..* | Attachment | Evidence that supports taking the action |
documentation | Σ | 0..* | Attachment | Supporting documentation for the intended performer of the action |
relatedAction | Σ | 0..1 | Element | Relationship to another action |
actionIdentifier | Σ | 1..1 | Identifier | Identifier of the related action |
relationship | Σ | 1..1 | code | before | after ActionRelationshipType (Required) |
offset[x] | Σ | 0..1 | Time offset for the relationship | |
offsetQuantity | Duration | |||
offsetRange | Range | |||
anchor | Σ | 0..1 | code | start | end ActionRelationshipAnchor (Required) |
participantType | Σ | 0..* | code | patient | practitioner | related-person ParticipantType (Required) |
type | Σ | 0..1 | code | create | update | remove | fire-event ActionType (Extensible) |
behavior | Σ | 0..* | Element | Defines behaviors such as selection and grouping |
type | Σ | 1..1 | Coding | The type of behavior (grouping, precheck, selection, cardinality, etc) ActionBehaviorType (Extensible) |
value | Σ | 1..1 | Coding | Specific behavior (e.g. required, at-most-one, single, etc) |
resource | Σ | 0..1 | Reference(Any) | Static portion of the action definition |
customization | Σ | 0..* | Element | Dynamic aspects of the definition |
path | Σ | 1..1 | string | The path to the element to be set dynamically |
expression | Σ | 1..1 | string | An expression that provides the dynamic value for the customization |
action | Σ | 0..* | ActionDefinition | A sub-action |
Documentation for this format |
UML Diagram
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <actionIdentifier><!-- 0..1 Identifier Unique identifier --></actionIdentifier> <label value="[string]"/><!-- 0..1 User-visible label for the action (e.g. 1. or A.) --> <title value="[string]"/><!-- 0..1 User-visible title --> <description value="[string]"/><!-- 0..1 Short description of the action --> <textEquivalent value="[string]"/><!-- 0..1 Static text equivalent of the action, used if the dynamic aspects cannot be interpreted by the receiving system --> <concept><!-- 0..* CodeableConcept The meaning of the action or its sub-actions --></concept> <supportingEvidence><!-- 0..* Attachment Evidence that supports taking the action --></supportingEvidence> <documentation><!-- 0..* Attachment Supporting documentation for the intended performer of the action --></documentation> <relatedAction> <!-- 0..1 Relationship to another action --> <actionIdentifier><!-- 1..1 Identifier Identifier of the related action --></actionIdentifier> <relationship value="[code]"/><!-- 1..1 before | after --> <offset[x]><!-- 0..1 Quantity(Duration)|Range Time offset for the relationship --></offset[x]> <anchor value="[code]"/><!-- 0..1 start | end --> </relatedAction> <participantType value="[code]"/><!-- 0..* patient | practitioner | related-person --> <type value="[code]"/><!-- 0..1 create | update | remove | fire-event --> <behavior> <!-- 0..* Defines behaviors such as selection and grouping --> <type><!-- 1..1 Coding The type of behavior (grouping, precheck, selection, cardinality, etc) --></type> <value><!-- 1..1 Coding Specific behavior (e.g. required, at-most-one, single, etc) --></value> </behavior> <resource><!-- 0..1 Reference(Any) Static portion of the action definition --></resource> <customization> <!-- 0..* Dynamic aspects of the definition --> <path value="[string]"/><!-- 1..1 The path to the element to be set dynamically --> <expression value="[string]"/><!-- 1..1 An expression that provides the dynamic value for the customization --> </customization> <action><!-- 0..* ActionDefinition A sub-action --></action> </[name]>
JSON Template
{ // from Element: extension "actionIdentifier" : { Identifier }, // Unique identifier "label" : "<string>", // User-visible label for the action (e.g. 1. or A.) "title" : "<string>", // User-visible title "description" : "<string>", // Short description of the action "textEquivalent" : "<string>", // Static text equivalent of the action, used if the dynamic aspects cannot be interpreted by the receiving system "concept" : [{ CodeableConcept }], // The meaning of the action or its sub-actions "supportingEvidence" : [{ Attachment }], // Evidence that supports taking the action "documentation" : [{ Attachment }], // Supporting documentation for the intended performer of the action "relatedAction" : { // Relationship to another action "actionIdentifier" : { Identifier }, // R! Identifier of the related action "relationship" : "<code>", // R! before | after // offset[x]: Time offset for the relationship. One of these 2: "offsetQuantity" : { Quantity(Duration) }, "offsetRange" : { Range }, "anchor" : "<code>" // start | end }, "participantType" : ["<code>"], // patient | practitioner | related-person "type" : "<code>", // create | update | remove | fire-event "behavior" : [{ // Defines behaviors such as selection and grouping "type" : { Coding }, // R! The type of behavior (grouping, precheck, selection, cardinality, etc) "value" : { Coding } // R! Specific behavior (e.g. required, at-most-one, single, etc) }], "resource" : { Reference(Any) }, // Static portion of the action definition "customization" : [{ // Dynamic aspects of the definition "path" : "<string>", // R! The path to the element to be set dynamically "expression" : "<string>" // R! An expression that provides the dynamic value for the customization }], "action" : [{ ActionDefinition }] // A sub-action }
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ActionDefinition | Σ | Element | The definition of an action to be performed | |
actionIdentifier | Σ | 0..1 | Identifier | Unique identifier |
label | Σ | 0..1 | string | User-visible label for the action (e.g. 1. or A.) |
title | Σ | 0..1 | string | User-visible title |
description | Σ | 0..1 | string | Short description of the action |
textEquivalent | Σ | 0..1 | string | Static text equivalent of the action, used if the dynamic aspects cannot be interpreted by the receiving system |
concept | Σ | 0..* | CodeableConcept | The meaning of the action or its sub-actions |
supportingEvidence | Σ | 0..* | Attachment | Evidence that supports taking the action |
documentation | Σ | 0..* | Attachment | Supporting documentation for the intended performer of the action |
relatedAction | Σ | 0..1 | Element | Relationship to another action |
actionIdentifier | Σ | 1..1 | Identifier | Identifier of the related action |
relationship | Σ | 1..1 | code | before | after ActionRelationshipType (Required) |
offset[x] | Σ | 0..1 | Time offset for the relationship | |
offsetQuantity | Duration | |||
offsetRange | Range | |||
anchor | Σ | 0..1 | code | start | end ActionRelationshipAnchor (Required) |
participantType | Σ | 0..* | code | patient | practitioner | related-person ParticipantType (Required) |
type | Σ | 0..1 | code | create | update | remove | fire-event ActionType (Extensible) |
behavior | Σ | 0..* | Element | Defines behaviors such as selection and grouping |
type | Σ | 1..1 | Coding | The type of behavior (grouping, precheck, selection, cardinality, etc) ActionBehaviorType (Extensible) |
value | Σ | 1..1 | Coding | Specific behavior (e.g. required, at-most-one, single, etc) |
resource | Σ | 0..1 | Reference(Any) | Static portion of the action definition |
customization | Σ | 0..* | Element | Dynamic aspects of the definition |
path | Σ | 1..1 | string | The path to the element to be set dynamically |
expression | Σ | 1..1 | string | An expression that provides the dynamic value for the customization |
action | Σ | 0..* | ActionDefinition | A sub-action |
Documentation for this format |
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <actionIdentifier><!-- 0..1 Identifier Unique identifier --></actionIdentifier> <label value="[string]"/><!-- 0..1 User-visible label for the action (e.g. 1. or A.) --> <title value="[string]"/><!-- 0..1 User-visible title --> <description value="[string]"/><!-- 0..1 Short description of the action --> <textEquivalent value="[string]"/><!-- 0..1 Static text equivalent of the action, used if the dynamic aspects cannot be interpreted by the receiving system --> <concept><!-- 0..* CodeableConcept The meaning of the action or its sub-actions --></concept> <supportingEvidence><!-- 0..* Attachment Evidence that supports taking the action --></supportingEvidence> <documentation><!-- 0..* Attachment Supporting documentation for the intended performer of the action --></documentation> <relatedAction> <!-- 0..1 Relationship to another action --> <actionIdentifier><!-- 1..1 Identifier Identifier of the related action --></actionIdentifier> <relationship value="[code]"/><!-- 1..1 before | after --> <offset[x]><!-- 0..1 Quantity(Duration)|Range Time offset for the relationship --></offset[x]> <anchor value="[code]"/><!-- 0..1 start | end --> </relatedAction> <participantType value="[code]"/><!-- 0..* patient | practitioner | related-person --> <type value="[code]"/><!-- 0..1 create | update | remove | fire-event --> <behavior> <!-- 0..* Defines behaviors such as selection and grouping --> <type><!-- 1..1 Coding The type of behavior (grouping, precheck, selection, cardinality, etc) --></type> <value><!-- 1..1 Coding Specific behavior (e.g. required, at-most-one, single, etc) --></value> </behavior> <resource><!-- 0..1 Reference(Any) Static portion of the action definition --></resource> <customization> <!-- 0..* Dynamic aspects of the definition --> <path value="[string]"/><!-- 1..1 The path to the element to be set dynamically --> <expression value="[string]"/><!-- 1..1 An expression that provides the dynamic value for the customization --> </customization> <action><!-- 0..* ActionDefinition A sub-action --></action> </[name]>
JSON Template
{ // from Element: extension "actionIdentifier" : { Identifier }, // Unique identifier "label" : "<string>", // User-visible label for the action (e.g. 1. or A.) "title" : "<string>", // User-visible title "description" : "<string>", // Short description of the action "textEquivalent" : "<string>", // Static text equivalent of the action, used if the dynamic aspects cannot be interpreted by the receiving system "concept" : [{ CodeableConcept }], // The meaning of the action or its sub-actions "supportingEvidence" : [{ Attachment }], // Evidence that supports taking the action "documentation" : [{ Attachment }], // Supporting documentation for the intended performer of the action "relatedAction" : { // Relationship to another action "actionIdentifier" : { Identifier }, // R! Identifier of the related action "relationship" : "<code>", // R! before | after // offset[x]: Time offset for the relationship. One of these 2: "offsetQuantity" : { Quantity(Duration) }, "offsetRange" : { Range }, "anchor" : "<code>" // start | end }, "participantType" : ["<code>"], // patient | practitioner | related-person "type" : "<code>", // create | update | remove | fire-event "behavior" : [{ // Defines behaviors such as selection and grouping "type" : { Coding }, // R! The type of behavior (grouping, precheck, selection, cardinality, etc) "value" : { Coding } // R! Specific behavior (e.g. required, at-most-one, single, etc) }], "resource" : { Reference(Any) }, // Static portion of the action definition "customization" : [{ // Dynamic aspects of the definition "path" : "<string>", // R! The path to the element to be set dynamically "expression" : "<string>" // R! An expression that provides the dynamic value for the customization }], "action" : [{ ActionDefinition }] // A sub-action }
Constraints