This page is part of the FHIR Specification (v5.0.0: R5 - STU). This is the current published version. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4
Clinical Decision Support Work Group | Maturity Level: 0 | Trial Use | Use Context: Any |
The canonical URL for this profile is:
http://hl7.org/fhir/StructureDefinition/cdshooksserviceplandefinition
Defines a PlanDefinition that implements the behavior for a CDS Hooks service
This profile was published on Thu, Jan 1, 1970 00:00+1000 as a draft by HL7.
Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.
This structure is derived from PlanDefinition.
Summary
Mandatory: 1 element
Must-Support: 10 elements
Extensions
This structure refers to these extensions:
This indicates the differences between this profile and the base PlanDefinition structure.
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
PlanDefinition | 1..1 | PlanDefinition | The definition of a plan for a series of actions, independent of any specific patient or context | |
cdsHooksEndpoint | 1..1 | uri | Service endpoint URL: http://hl7.org/fhir/StructureDefinition/cqf-cdsHooksEndpoint | |
action | 0..* | BackboneElement | Action defined by the plan | |
title | S | 0..1 | string | User-visible title |
description | S | 0..1 | markdown | Brief description of the action |
priority | S | 0..1 | code | routine | urgent | asap | stat |
trigger | S | 0..* | TriggerDefinition | When the action should be triggered |
condition | S | 0..* | BackboneElement | Whether or not the action is applicable |
timing[x] | S | 0..1 | Age, Duration, Range, Timing | When the action should take place |
participant | S | 0..* | BackboneElement | Who should participate in the action |
type | S | 0..1 | CodeableConcept | create | update | remove | fire-event |
selectionBehavior | S | 0..1 | code | any | all | all-or-none | exactly-one | at-most-one | one-or-more |
definition[x] | S | 0..1 | canonical(ActivityDefinition | MessageDefinition | ObservationDefinition | PlanDefinition | Questionnaire | SpecimenDefinition), uri | Description of the activity to be performed |
Documentation for this format |
This provides the consolidated view (aka snapshot) of the profile after applying the changes in this profile to the base PlanDefinition structure.
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
PlanDefinition | C | 1..1 | PlanDefinition | The definition of a plan for a series of actions, independent of any specific patient or context |
id | Σ | 0..1 | id | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language | 0..1 | code | Language of the resource content Binding: All Languages (required): IETF language tag for a human language | |
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
contained | 0..* | Resource | Contained, inline Resources | |
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
cdsHooksEndpoint | 1..1 | uri | Service endpoint URL: http://hl7.org/fhir/StructureDefinition/cqf-cdsHooksEndpoint | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
url | ΣC | 0..1 | uri | Canonical identifier for this plan definition, represented as a URI (globally unique) |
identifier | Σ | 0..* | Identifier | Additional identifier for the plan definition |
version | Σ | 0..1 | string | Business version of the plan definition |
versionAlgorithm[x] | Σ | 0..1 | How to compare versions Binding: Version Algorithm (extensible) | |
versionAlgorithmString | string | |||
versionAlgorithmCoding | Coding | |||
name | ΣC | 0..1 | string | Name for this plan definition (computer friendly) |
title | Σ | 0..1 | string | Name for this plan definition (human friendly) |
subtitle | 0..1 | string | Subordinate title of the plan definition | |
type | Σ | 0..1 | CodeableConcept | order-set | clinical-protocol | eca-rule | workflow-definition Binding: Plan Definition Type (extensible): The type of PlanDefinition. |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. |
experimental | Σ | 0..1 | boolean | For testing purposes, not real usage |
subject[x] | 0..1 | Type of individual the plan definition is focused on Binding: Participant Resource Types (extensible): The possible types of subjects for a plan definition (E.g. Patient, Practitioner, Organization, Location, etc.). | ||
subjectCodeableConcept | CodeableConcept | |||
subjectReference | Reference(Group | MedicinalProductDefinition | SubstanceDefinition | AdministrableProductDefinition | ManufacturedItemDefinition | PackagedProductDefinition) | |||
subjectCanonical | canonical(EvidenceVariable) | |||
date | Σ | 0..1 | dateTime | Date last changed |
publisher | Σ | 0..1 | string | Name of the publisher/steward (organization or individual) |
contact | Σ | 0..* | ContactDetail | Contact details for the publisher |
description | Σ | 0..1 | markdown | Natural language description of the plan definition |
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support |
jurisdiction | ΣXD | 0..* | CodeableConcept | Intended jurisdiction for plan definition (if applicable) Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use. |
purpose | 0..1 | markdown | Why this plan definition is defined | |
usage | 0..1 | markdown | Describes the clinical usage of the plan | |
copyright | 0..1 | markdown | Use and/or publishing restrictions | |
copyrightLabel | 0..1 | string | Copyright holder and year(s) | |
approvalDate | 0..1 | date | When the plan definition was approved by publisher | |
lastReviewDate | 0..1 | date | When the plan definition was last reviewed by the publisher | |
effectivePeriod | Σ | 0..1 | Period | When the plan definition is expected to be used |
topic | XD | 0..* | CodeableConcept | E.g. Education, Treatment, Assessment Binding: Definition Topic (example): High-level categorization of the definition, used for searching, sorting, and filtering. |
author | 0..* | ContactDetail | Who authored the content | |
editor | 0..* | ContactDetail | Who edited the content | |
reviewer | 0..* | ContactDetail | Who reviewed the content | |
endorser | 0..* | ContactDetail | Who endorsed the content | |
relatedArtifact | 0..* | RelatedArtifact | Additional documentation, citations | |
library | 0..* | canonical(Library) | Logic used by the plan definition | |
goal | C | 0..* | BackboneElement | What the plan is trying to accomplish |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
category | 0..1 | CodeableConcept | E.g. Treatment, dietary, behavioral Binding: Goal Category (example): Example codes for grouping goals for filtering or presentation. | |
description | 1..1 | CodeableConcept | Code or text describing the goal Binding: SNOMED CT Clinical Findings (example): Describes goals that can be achieved. | |
priority | 0..1 | CodeableConcept | high-priority | medium-priority | low-priority Binding: Goal Priority (preferred): Indicates the level of importance associated with reaching or sustaining a goal. | |
start | 0..1 | CodeableConcept | When goal pursuit begins Binding: Goal Start Event (example): Identifies the types of events that might trigger the start of a goal. | |
addresses | 0..* | CodeableConcept | What does the goal address Binding: Condition/Problem/Diagnosis Codes (example): Identifies problems, conditions, issues, or concerns that goals may address. | |
documentation | 0..* | RelatedArtifact | Supporting documentation for the goal | |
target | 0..* | BackboneElement | Target outcome for the goal | |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
measure | 0..1 | CodeableConcept | The parameter whose value is to be tracked Binding: LOINC Codes (example): Identifies types of parameters that can be tracked to determine goal achievement. | |
detail[x] | 0..1 | The target value to be achieved | ||
detailQuantity | Quantity | |||
detailRange | Range | |||
detailCodeableConcept | CodeableConcept | |||
detailString | string | |||
detailBoolean | boolean | |||
detailInteger | integer | |||
detailRatio | Ratio | |||
due | 0..1 | Duration | Reach goal within | |
actor | 0..* | BackboneElement | Actors within the plan | |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
title | 0..1 | string | User-visible title | |
description | 0..1 | markdown | Describes the actor | |
option | 1..* | BackboneElement | Who or what can be this actor | |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
type | 0..1 | code | careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson Binding: Action Participant Type (required): The type of participant in the activity. | |
typeCanonical | 0..1 | canonical(CapabilityStatement) | Who or what can participate | |
typeReference | 0..1 | Reference(CareTeam | Device | DeviceDefinition | Endpoint | Group | HealthcareService | Location | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) | Who or what can participate | |
role | 0..1 | CodeableConcept | E.g. Nurse, Surgeon, Parent Binding: Action Participant Role (example) | |
action | C | 0..* | BackboneElement | Action defined by the plan |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
linkId | 0..1 | string | Unique id for the action in the PlanDefinition | |
prefix | 0..1 | string | User-visible prefix for the action (e.g. 1. or A.) | |
title | S | 0..1 | string | User-visible title |
description | S | 0..1 | markdown | Brief description of the action |
textEquivalent | 0..1 | markdown | Static text equivalent of the action, used if the dynamic aspects cannot be interpreted by the receiving system | |
priority | S | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request. |
code | 0..1 | CodeableConcept | Code representing the meaning of the action or sub-actions Binding: Action Code (example): Provides examples of actions to be performed. | |
reason | 0..* | CodeableConcept | Why the action should be performed Binding: Action Reason Code (example): Provides examples of reasons for actions to be performed. | |
documentation | 0..* | RelatedArtifact | Supporting documentation for the intended performer of the action | |
goalId | C | 0..* | id | What goals this action supports |
subject[x] | 0..1 | Type of individual the action is focused on Binding: Participant Resource Types (extensible): The possible types of subjects for a plan definition (E.g. Patient, Practitioner, Organization, Location, etc.). | ||
subjectCodeableConcept | CodeableConcept | |||
subjectReference | Reference(Group) | |||
subjectCanonical | canonical(Any) | |||
trigger | S | 0..* | TriggerDefinition | When the action should be triggered |
condition | S | 0..* | BackboneElement | Whether or not the action is applicable |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
kind | 1..1 | code | applicability | start | stop Binding: Action Condition Kind (required): Defines the kinds of conditions that can appear on actions. | |
expression | 0..1 | Expression | Boolean-valued expression | |
input | C | 0..* | BackboneElement | Input data requirements |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
title | 0..1 | string | User-visible title | |
requirement | C | 0..1 | DataRequirement | What data is provided |
relatedData | C | 0..1 | id | What data is provided |
output | C | 0..* | BackboneElement | Output data definition |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
title | 0..1 | string | User-visible title | |
requirement | C | 0..1 | DataRequirement | What data is provided |
relatedData | C | 0..1 | string | What data is provided |
relatedAction | C | 0..* | BackboneElement | Relationship to another action |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
targetId | C | 1..1 | id | What action is this related to |
relationship | 1..1 | code | before | before-start | before-end | concurrent | concurrent-with-start | concurrent-with-end | after | after-start | after-end Binding: Action Relationship Type (required): Defines the types of relationships between actions. | |
endRelationship | 0..1 | code | before | before-start | before-end | concurrent | concurrent-with-start | concurrent-with-end | after | after-start | after-end Binding: Action Relationship Type (required): Defines the types of relationships between actions. | |
offset[x] | 0..1 | Time offset for the relationship | ||
offsetDuration | Duration | |||
offsetRange | Range | |||
timing[x] | S | 0..1 | When the action should take place | |
timingAge | Age | |||
timingDuration | Duration | |||
timingRange | Range | |||
timingTiming | Timing | |||
location | 0..1 | CodeableReference(Location) | Where it should happen | |
participant | S | 0..* | BackboneElement | Who should participate in the action |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
actorId | 0..1 | string | What actor | |
type | 0..1 | code | careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson Binding: Action Participant Type (required): The type of participant in the activity. | |
typeCanonical | 0..1 | canonical(CapabilityStatement) | Who or what can participate | |
typeReference | 0..1 | Reference(CareTeam | Device | DeviceDefinition | Endpoint | Group | HealthcareService | Location | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) | Who or what can participate | |
role | 0..1 | CodeableConcept | E.g. Nurse, Surgeon, Parent Binding: Action Participant Role (example): Defines roles played by participants for the action. | |
function | 0..1 | CodeableConcept | E.g. Author, Reviewer, Witness, etc Binding: Action Participant Function (example) | |
type | S | 0..1 | CodeableConcept | create | update | remove | fire-event Binding: Action Type (extensible): The type of action to be performed. |
groupingBehavior | 0..1 | code | visual-group | logical-group | sentence-group Binding: Action Grouping Behavior (required): Defines organization behavior of a group. | |
selectionBehavior | S | 0..1 | code | any | all | all-or-none | exactly-one | at-most-one | one-or-more Binding: Action Selection Behavior (required): Defines selection behavior of a group. |
requiredBehavior | 0..1 | code | must | could | must-unless-documented Binding: Action Required Behavior (required): Defines expectations around whether an action or action group is required. | |
precheckBehavior | 0..1 | code | yes | no Binding: Action Precheck Behavior (required): Defines selection frequency behavior for an action or group. | |
cardinalityBehavior | 0..1 | code | single | multiple Binding: Action Cardinality Behavior (required): Defines behavior for an action or a group for how many times that item may be repeated. | |
definition[x] | S | 0..1 | Description of the activity to be performed | |
definitionCanonical | canonical(ActivityDefinition | MessageDefinition | ObservationDefinition | PlanDefinition | Questionnaire | SpecimenDefinition) | |||
definitionUri | uri | |||
transform | 0..1 | canonical(StructureMap) | Transform to apply the template | |
dynamicValue | 0..* | BackboneElement | Dynamic aspects of the definition | |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
path | 0..1 | string | The path to the element to be set dynamically | |
expression | 0..1 | Expression | An expression that provides the dynamic value for the customization | |
action | 0..* | See action (PlanDefinition) | A sub-action | |
asNeeded[x] | Σ | 0..1 | Preconditions for service Binding: SNOMED CT Medication As Needed Reason Codes (example): A coded concept identifying the pre-condition that should hold prior to performing a procedure. For example "pain", "on flare-up", etc. | |
asNeededBoolean | boolean | |||
asNeededCodeableConcept | CodeableConcept | |||
Documentation for this format |
<!-- CDSHooksServicePlanDefinition --> <PlanDefinition xmlns="http://hl7.org/fhir" > <!-- from Element: extension --> <id value="[id]"/><!-- 0..1 Logical id of this artifact --> <meta><!-- I 0..1 Meta Metadata about the resource --></meta> <implicitRules value="[uri]"/><!-- I 0..1 A set of rules under which this content was created --> <language value="[code]"/><!-- I 0..1 Language of the resource content --> <text><!-- I 0..1 Narrative Text summary of the resource, for human interpretation --></text> <contained><!-- 0..* Resource Contained, inline Resources --></contained> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored --></modifierExtension> <url value="[uri]"/><!-- I 0..1 Canonical identifier for this plan definition, represented as a URI (globally unique) --> <identifier><!-- I 0..* Identifier Additional identifier for the plan definition --></identifier> <version value="[string]"/><!-- I 0..1 Business version of the plan definition --> <versionAlgorithm[x]><!-- I 0..1 string|Coding How to compare versions --></versionAlgorithm[x]> <name value="[string]"/><!-- I 0..1 Name for this plan definition (computer friendly) --> <title value="[string]"/><!-- I 0..1 Name for this plan definition (human friendly) --> <subtitle value="[string]"/><!-- I 0..1 Subordinate title of the plan definition --> <type><!-- I 0..1 CodeableConcept order-set | clinical-protocol | eca-rule | workflow-definition --></type> <status value="[code]"/><!-- I 1..1 draft | active | retired | unknown --> <experimental value="[boolean]"/><!-- I 0..1 For testing purposes, not real usage --> <subject[x]><!-- I 0..1 CodeableConcept|Reference(Group)|canonical Type of individual the plan definition is focused on --></subject[x]> <date value="[dateTime]"/><!-- I 0..1 Date last changed --> <publisher value="[string]"/><!-- I 0..1 Name of the publisher/steward (organization or individual) --> <contact><!-- I 0..* ContactDetail Contact details for the publisher --></contact> <description value="[markdown]"/><!-- I 0..1 Natural language description of the plan definition --> <useContext><!-- I 0..* UsageContext The context that the content is intended to support --></useContext> <jurisdiction><!-- I 0..* CodeableConcept Intended jurisdiction for plan definition (if applicable) --></jurisdiction> <purpose value="[markdown]"/><!-- I 0..1 Why this plan definition is defined --> <usage value="[markdown]"/><!-- I 0..1 Describes the clinical usage of the plan --> <copyright value="[markdown]"/><!-- I 0..1 Use and/or publishing restrictions --> <copyrightLabel value="[string]"/><!-- I 0..1 Copyright holder and year(s) --> <approvalDate value="[date]"/><!-- I 0..1 When the plan definition was approved by publisher --> <lastReviewDate value="[date]"/><!-- I 0..1 When the plan definition was last reviewed by the publisher --> <effectivePeriod><!-- I 0..1 Period When the plan definition is expected to be used --></effectivePeriod> <topic><!-- I 0..* CodeableConcept E.g. Education, Treatment, Assessment --></topic> <author><!-- I 0..* ContactDetail Who authored the content --></author> <editor><!-- I 0..* ContactDetail Who edited the content --></editor> <reviewer><!-- I 0..* ContactDetail Who reviewed the content --></reviewer> <endorser><!-- I 0..* ContactDetail Who endorsed the content --></endorser> <relatedArtifact><!-- I 0..* RelatedArtifact Additional documentation, citations --></relatedArtifact> <library value="[canonical]"/><!-- I 0..* Logic used by the plan definition --> <goal> I 0..* BackboneElement <!-- I 0..* What the plan is trying to accomplish --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <category><!-- I 0..1 CodeableConcept E.g. Treatment, dietary, behavioral --></category> <description><!-- I 1..1 CodeableConcept Code or text describing the goal --></description> <priority><!-- I 0..1 CodeableConcept high-priority | medium-priority | low-priority --></priority> <start><!-- I 0..1 CodeableConcept When goal pursuit begins --></start> <addresses><!-- I 0..* CodeableConcept What does the goal address --></addresses> <documentation><!-- I 0..* RelatedArtifact Supporting documentation for the goal --></documentation> <target> I 0..* BackboneElement <!-- I 0..* Target outcome for the goal --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <measure><!-- I 0..1 CodeableConcept The parameter whose value is to be tracked --></measure> <detail[x]><!-- I 0..1 Quantity|Range| CodeableConcept|string|boolean|integer|Ratio The target value to be achieved --></detail[x]> <due><!-- I 0..1 Duration Reach goal within --></due> </target> </goal> <actor> I 0..* BackboneElement <!-- I 0..* Actors within the plan --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <title value="[string]"/><!-- I 0..1 User-visible title --> <description value="[markdown]"/><!-- I 0..1 Describes the actor --> <option> I 1..* BackboneElement <!-- I 1..* Who or what can be this actor --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <type value="[code]"/><!-- I 0..1 careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson --> <typeCanonical value="[canonical]"/><!-- I 0..1 Who or what can participate --> <typeReference><!-- I 0..1 Reference(CareTeam) Who or what can participate --></typeReference> <role><!-- I 0..1 CodeableConcept E.g. Nurse, Surgeon, Parent --></role> </option> </actor> <action> I 0..* BackboneElement <!-- I 0..* Action defined by the plan --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <linkId value="[string]"/><!-- I 0..1 Unique id for the action in the PlanDefinition --> <prefix value="[string]"/><!-- I 0..1 User-visible prefix for the action (e.g. 1. or A.) --> <title value="[string]"/><!-- I 0..1 User-visible title --> <description value="[markdown]"/><!-- I 0..1 Brief description of the action --> <textEquivalent value="[markdown]"/><!-- I 0..1 Static text equivalent of the action, used if the dynamic aspects cannot be interpreted by the receiving system --> <priority value="[code]"/><!-- I 0..1 routine | urgent | asap | stat --> <code><!-- I 0..1 CodeableConcept Code representing the meaning of the action or sub-actions --></code> <reason><!-- I 0..* CodeableConcept Why the action should be performed --></reason> <documentation><!-- I 0..* RelatedArtifact Supporting documentation for the intended performer of the action --></documentation> <goalId value="[id]"/><!-- I 0..* What goals this action supports --> <subject[x]><!-- I 0..1 CodeableConcept|Reference(Group)| canonical Type of individual the action is focused on --></subject[x]> <trigger><!-- I 0..* TriggerDefinition When the action should be triggered --></trigger> <condition> I 0..* BackboneElement <!-- I 0..* Whether or not the action is applicable --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <kind value="[code]"/><!-- I 1..1 applicability | start | stop --> <expression><!-- I 0..1 Expression Boolean-valued expression --></expression> </condition> <input> I 0..* BackboneElement <!-- I 0..* Input data requirements --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <title value="[string]"/><!-- I 0..1 User-visible title --> <requirement><!-- I 0..1 DataRequirement What data is provided --></requirement> <relatedData value="[id]"/><!-- I 0..1 What data is provided --> </input> <output> I 0..* BackboneElement <!-- I 0..* Output data definition --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <title value="[string]"/><!-- I 0..1 User-visible title --> <requirement><!-- I 0..1 DataRequirement What data is provided --></requirement> <relatedData value="[string]"/><!-- I 0..1 What data is provided --> </output> <relatedAction> I 0..* BackboneElement <!-- I 0..* Relationship to another action --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <targetId value="[id]"/><!-- I 1..1 What action is this related to --> <relationship value="[code]"/><!-- I 1..1 before | before-start | before-end | concurrent | concurrent-with-start | concurrent-with-end | after | after-start | after-end --> <endRelationship value="[code]"/><!-- I 0..1 before | before-start | before-end | concurrent | concurrent-with-start | concurrent-with-end | after | after-start | after-end --> <offset[x]><!-- I 0..1 Duration|Range Time offset for the relationship --></offset[x]> </relatedAction> <timing[x]><!-- I 0..1 Age|Duration|Range|Timing When the action should take place --></timing[x]> <location><!-- I 0..1 CodeableReference Where it should happen --></location> <participant> I 0..* BackboneElement <!-- I 0..* Who should participate in the action --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <actorId value="[string]"/><!-- I 0..1 What actor --> <type value="[code]"/><!-- I 0..1 careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson --> <typeCanonical value="[canonical]"/><!-- I 0..1 Who or what can participate --> <typeReference><!-- I 0..1 Reference(CareTeam) Who or what can participate --></typeReference> <role><!-- I 0..1 CodeableConcept E.g. Nurse, Surgeon, Parent --></role> <function><!-- I 0..1 CodeableConcept E.g. Author, Reviewer, Witness, etc --></function> </participant> <type><!-- I 0..1 CodeableConcept create | update | remove | fire-event --></type> <groupingBehavior value="[code]"/><!-- I 0..1 visual-group | logical-group | sentence-group --> <selectionBehavior value="[code]"/><!-- I 0..1 any | all | all-or-none | exactly-one | at-most-one | one-or-more --> <requiredBehavior value="[code]"/><!-- I 0..1 must | could | must-unless-documented --> <precheckBehavior value="[code]"/><!-- I 0..1 yes | no --> <cardinalityBehavior value="[code]"/><!-- I 0..1 single | multiple --> <definition[x]><!-- I 0..1 canonical|uri Description of the activity to be performed --></definition[x]> <transform value="[canonical]"/><!-- I 0..1 Transform to apply the template --> <dynamicValue> I 0..* BackboneElement <!-- I 0..* Dynamic aspects of the definition --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <path value="[string]"/><!-- I 0..1 The path to the element to be set dynamically --> <expression><!-- I 0..1 Expression An expression that provides the dynamic value for the customization --></expression> </dynamicValue> <action><!-- See http://hl7.org/fhir/StructureDefinition/PlanDefinition#PlanDefinition.action A sub-action --></action> </action> <asNeeded[x]><!-- I 0..1 boolean|CodeableConcept Preconditions for service --></asNeeded[x]> </PlanDefinition>
{ // CDSHooksServicePlanDefinition // from Element: extension "meta" : { Meta }, // IMetadata about the resource "implicitRules" : "<uri>", // IA set of rules under which this content was created "language" : "<code>", // ILanguage of the resource content "text" : { Narrative }, // IText summary of the resource, for human interpretation "contained" : [{ Resource }], //Contained, inline Resources "extension" : [ // sliced by value:url in the specified order, Open { // Service endpoint // I R! // from Element: extension } ], "modifierExtension" : [{ Extension }], // IExtensions that cannot be ignored "url" : "<uri>", // ICanonical identifier for this plan definition, represented as a URI (globally unique) "identifier" : [{ Identifier }], // IAdditional identifier for the plan definition "version" : "<string>", // IBusiness version of the plan definition // value[x]: How to compare versions. One of these 2: "versionAlgorithmString" : "<string>", // IHow to compare versions "versionAlgorithmCoding" : { Coding }, // IHow to compare versions "name" : "<string>", // IName for this plan definition (computer friendly) "title" : "<string>", // IName for this plan definition (human friendly) "subtitle" : "<string>", // ISubordinate title of the plan definition "type" : { CodeableConcept }, // Iorder-set | clinical-protocol | eca-rule | workflow-definition "status" : "<code>", // I R! draft | active | retired | unknown "experimental" : <boolean>, // IFor testing purposes, not real usage // value[x]: Type of individual the plan definition is focused on. One of these 3: "subjectCodeableConcept" : { CodeableConcept }, // IType of individual the plan definition is focused on "subjectReference" : { Reference(Group) }, // IType of individual the plan definition is focused on "subjectCanonical" : "<canonical>", // IType of individual the plan definition is focused on "date" : "<dateTime>", // IDate last changed "publisher" : "<string>", // IName of the publisher/steward (organization or individual) "contact" : [{ ContactDetail }], // IContact details for the publisher "description" : "<markdown>", // INatural language description of the plan definition "useContext" : [{ UsageContext }], // IThe context that the content is intended to support "jurisdiction" : [{ CodeableConcept }], // IIntended jurisdiction for plan definition (if applicable) "purpose" : "<markdown>", // IWhy this plan definition is defined "usage" : "<markdown>", // IDescribes the clinical usage of the plan "copyright" : "<markdown>", // IUse and/or publishing restrictions "copyrightLabel" : "<string>", // ICopyright holder and year(s) "approvalDate" : "<date>", // IWhen the plan definition was approved by publisher "lastReviewDate" : "<date>", // IWhen the plan definition was last reviewed by the publisher "effectivePeriod" : { Period }, // IWhen the plan definition is expected to be used "topic" : [{ CodeableConcept }], // IE.g. Education, Treatment, Assessment "author" : [{ ContactDetail }], // IWho authored the content "editor" : [{ ContactDetail }], // IWho edited the content "reviewer" : [{ ContactDetail }], // IWho reviewed the content "endorser" : [{ ContactDetail }], // IWho endorsed the content "relatedArtifact" : [{ RelatedArtifact }], // IAdditional documentation, citations "library" : ["<canonical>"], // ILogic used by the plan definition "goal" : [{ BackboneElement }], // IWhat the plan is trying to accomplish "actor" : [{ BackboneElement }], // IActors within the plan "action" : [{ BackboneElement }], // IAction defined by the plan // value[x]: Preconditions for service. One of these 2: "asNeededBoolean" : <boolean>, // IPreconditions for service "asNeededCodeableConcept" : { CodeableConcept }, // IPreconditions for service }
This structure is derived from PlanDefinition.
Differential View
This indicates the differences between this profile and the base PlanDefinition structure.
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
PlanDefinition | 1..1 | PlanDefinition | The definition of a plan for a series of actions, independent of any specific patient or context | |
cdsHooksEndpoint | 1..1 | uri | Service endpoint URL: http://hl7.org/fhir/StructureDefinition/cqf-cdsHooksEndpoint | |
action | 0..* | BackboneElement | Action defined by the plan | |
title | S | 0..1 | string | User-visible title |
description | S | 0..1 | markdown | Brief description of the action |
priority | S | 0..1 | code | routine | urgent | asap | stat |
trigger | S | 0..* | TriggerDefinition | When the action should be triggered |
condition | S | 0..* | BackboneElement | Whether or not the action is applicable |
timing[x] | S | 0..1 | Age, Duration, Range, Timing | When the action should take place |
participant | S | 0..* | BackboneElement | Who should participate in the action |
type | S | 0..1 | CodeableConcept | create | update | remove | fire-event |
selectionBehavior | S | 0..1 | code | any | all | all-or-none | exactly-one | at-most-one | one-or-more |
definition[x] | S | 0..1 | canonical(ActivityDefinition | MessageDefinition | ObservationDefinition | PlanDefinition | Questionnaire | SpecimenDefinition), uri | Description of the activity to be performed |
Documentation for this format |
Snapshot View
This provides the consolidated view (aka snapshot) of the profile after applying the changes in this profile to the base PlanDefinition structure.
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
PlanDefinition | C | 1..1 | PlanDefinition | The definition of a plan for a series of actions, independent of any specific patient or context |
id | Σ | 0..1 | id | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language | 0..1 | code | Language of the resource content Binding: All Languages (required): IETF language tag for a human language | |
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
contained | 0..* | Resource | Contained, inline Resources | |
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
cdsHooksEndpoint | 1..1 | uri | Service endpoint URL: http://hl7.org/fhir/StructureDefinition/cqf-cdsHooksEndpoint | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
url | ΣC | 0..1 | uri | Canonical identifier for this plan definition, represented as a URI (globally unique) |
identifier | Σ | 0..* | Identifier | Additional identifier for the plan definition |
version | Σ | 0..1 | string | Business version of the plan definition |
versionAlgorithm[x] | Σ | 0..1 | How to compare versions Binding: Version Algorithm (extensible) | |
versionAlgorithmString | string | |||
versionAlgorithmCoding | Coding | |||
name | ΣC | 0..1 | string | Name for this plan definition (computer friendly) |
title | Σ | 0..1 | string | Name for this plan definition (human friendly) |
subtitle | 0..1 | string | Subordinate title of the plan definition | |
type | Σ | 0..1 | CodeableConcept | order-set | clinical-protocol | eca-rule | workflow-definition Binding: Plan Definition Type (extensible): The type of PlanDefinition. |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. |
experimental | Σ | 0..1 | boolean | For testing purposes, not real usage |
subject[x] | 0..1 | Type of individual the plan definition is focused on Binding: Participant Resource Types (extensible): The possible types of subjects for a plan definition (E.g. Patient, Practitioner, Organization, Location, etc.). | ||
subjectCodeableConcept | CodeableConcept | |||
subjectReference | Reference(Group | MedicinalProductDefinition | SubstanceDefinition | AdministrableProductDefinition | ManufacturedItemDefinition | PackagedProductDefinition) | |||
subjectCanonical | canonical(EvidenceVariable) | |||
date | Σ | 0..1 | dateTime | Date last changed |
publisher | Σ | 0..1 | string | Name of the publisher/steward (organization or individual) |
contact | Σ | 0..* | ContactDetail | Contact details for the publisher |
description | Σ | 0..1 | markdown | Natural language description of the plan definition |
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support |
jurisdiction | ΣXD | 0..* | CodeableConcept | Intended jurisdiction for plan definition (if applicable) Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use. |
purpose | 0..1 | markdown | Why this plan definition is defined | |
usage | 0..1 | markdown | Describes the clinical usage of the plan | |
copyright | 0..1 | markdown | Use and/or publishing restrictions | |
copyrightLabel | 0..1 | string | Copyright holder and year(s) | |
approvalDate | 0..1 | date | When the plan definition was approved by publisher | |
lastReviewDate | 0..1 | date | When the plan definition was last reviewed by the publisher | |
effectivePeriod | Σ | 0..1 | Period | When the plan definition is expected to be used |
topic | XD | 0..* | CodeableConcept | E.g. Education, Treatment, Assessment Binding: Definition Topic (example): High-level categorization of the definition, used for searching, sorting, and filtering. |
author | 0..* | ContactDetail | Who authored the content | |
editor | 0..* | ContactDetail | Who edited the content | |
reviewer | 0..* | ContactDetail | Who reviewed the content | |
endorser | 0..* | ContactDetail | Who endorsed the content | |
relatedArtifact | 0..* | RelatedArtifact | Additional documentation, citations | |
library | 0..* | canonical(Library) | Logic used by the plan definition | |
goal | C | 0..* | BackboneElement | What the plan is trying to accomplish |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
category | 0..1 | CodeableConcept | E.g. Treatment, dietary, behavioral Binding: Goal Category (example): Example codes for grouping goals for filtering or presentation. | |
description | 1..1 | CodeableConcept | Code or text describing the goal Binding: SNOMED CT Clinical Findings (example): Describes goals that can be achieved. | |
priority | 0..1 | CodeableConcept | high-priority | medium-priority | low-priority Binding: Goal Priority (preferred): Indicates the level of importance associated with reaching or sustaining a goal. | |
start | 0..1 | CodeableConcept | When goal pursuit begins Binding: Goal Start Event (example): Identifies the types of events that might trigger the start of a goal. | |
addresses | 0..* | CodeableConcept | What does the goal address Binding: Condition/Problem/Diagnosis Codes (example): Identifies problems, conditions, issues, or concerns that goals may address. | |
documentation | 0..* | RelatedArtifact | Supporting documentation for the goal | |
target | 0..* | BackboneElement | Target outcome for the goal | |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
measure | 0..1 | CodeableConcept | The parameter whose value is to be tracked Binding: LOINC Codes (example): Identifies types of parameters that can be tracked to determine goal achievement. | |
detail[x] | 0..1 | The target value to be achieved | ||
detailQuantity | Quantity | |||
detailRange | Range | |||
detailCodeableConcept | CodeableConcept | |||
detailString | string | |||
detailBoolean | boolean | |||
detailInteger | integer | |||
detailRatio | Ratio | |||
due | 0..1 | Duration | Reach goal within | |
actor | 0..* | BackboneElement | Actors within the plan | |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
title | 0..1 | string | User-visible title | |
description | 0..1 | markdown | Describes the actor | |
option | 1..* | BackboneElement | Who or what can be this actor | |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
type | 0..1 | code | careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson Binding: Action Participant Type (required): The type of participant in the activity. | |
typeCanonical | 0..1 | canonical(CapabilityStatement) | Who or what can participate | |
typeReference | 0..1 | Reference(CareTeam | Device | DeviceDefinition | Endpoint | Group | HealthcareService | Location | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) | Who or what can participate | |
role | 0..1 | CodeableConcept | E.g. Nurse, Surgeon, Parent Binding: Action Participant Role (example) | |
action | C | 0..* | BackboneElement | Action defined by the plan |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
linkId | 0..1 | string | Unique id for the action in the PlanDefinition | |
prefix | 0..1 | string | User-visible prefix for the action (e.g. 1. or A.) | |
title | S | 0..1 | string | User-visible title |
description | S | 0..1 | markdown | Brief description of the action |
textEquivalent | 0..1 | markdown | Static text equivalent of the action, used if the dynamic aspects cannot be interpreted by the receiving system | |
priority | S | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request. |
code | 0..1 | CodeableConcept | Code representing the meaning of the action or sub-actions Binding: Action Code (example): Provides examples of actions to be performed. | |
reason | 0..* | CodeableConcept | Why the action should be performed Binding: Action Reason Code (example): Provides examples of reasons for actions to be performed. | |
documentation | 0..* | RelatedArtifact | Supporting documentation for the intended performer of the action | |
goalId | C | 0..* | id | What goals this action supports |
subject[x] | 0..1 | Type of individual the action is focused on Binding: Participant Resource Types (extensible): The possible types of subjects for a plan definition (E.g. Patient, Practitioner, Organization, Location, etc.). | ||
subjectCodeableConcept | CodeableConcept | |||
subjectReference | Reference(Group) | |||
subjectCanonical | canonical(Any) | |||
trigger | S | 0..* | TriggerDefinition | When the action should be triggered |
condition | S | 0..* | BackboneElement | Whether or not the action is applicable |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
kind | 1..1 | code | applicability | start | stop Binding: Action Condition Kind (required): Defines the kinds of conditions that can appear on actions. | |
expression | 0..1 | Expression | Boolean-valued expression | |
input | C | 0..* | BackboneElement | Input data requirements |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
title | 0..1 | string | User-visible title | |
requirement | C | 0..1 | DataRequirement | What data is provided |
relatedData | C | 0..1 | id | What data is provided |
output | C | 0..* | BackboneElement | Output data definition |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
title | 0..1 | string | User-visible title | |
requirement | C | 0..1 | DataRequirement | What data is provided |
relatedData | C | 0..1 | string | What data is provided |
relatedAction | C | 0..* | BackboneElement | Relationship to another action |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
targetId | C | 1..1 | id | What action is this related to |
relationship | 1..1 | code | before | before-start | before-end | concurrent | concurrent-with-start | concurrent-with-end | after | after-start | after-end Binding: Action Relationship Type (required): Defines the types of relationships between actions. | |
endRelationship | 0..1 | code | before | before-start | before-end | concurrent | concurrent-with-start | concurrent-with-end | after | after-start | after-end Binding: Action Relationship Type (required): Defines the types of relationships between actions. | |
offset[x] | 0..1 | Time offset for the relationship | ||
offsetDuration | Duration | |||
offsetRange | Range | |||
timing[x] | S | 0..1 | When the action should take place | |
timingAge | Age | |||
timingDuration | Duration | |||
timingRange | Range | |||
timingTiming | Timing | |||
location | 0..1 | CodeableReference(Location) | Where it should happen | |
participant | S | 0..* | BackboneElement | Who should participate in the action |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
actorId | 0..1 | string | What actor | |
type | 0..1 | code | careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson Binding: Action Participant Type (required): The type of participant in the activity. | |
typeCanonical | 0..1 | canonical(CapabilityStatement) | Who or what can participate | |
typeReference | 0..1 | Reference(CareTeam | Device | DeviceDefinition | Endpoint | Group | HealthcareService | Location | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) | Who or what can participate | |
role | 0..1 | CodeableConcept | E.g. Nurse, Surgeon, Parent Binding: Action Participant Role (example): Defines roles played by participants for the action. | |
function | 0..1 | CodeableConcept | E.g. Author, Reviewer, Witness, etc Binding: Action Participant Function (example) | |
type | S | 0..1 | CodeableConcept | create | update | remove | fire-event Binding: Action Type (extensible): The type of action to be performed. |
groupingBehavior | 0..1 | code | visual-group | logical-group | sentence-group Binding: Action Grouping Behavior (required): Defines organization behavior of a group. | |
selectionBehavior | S | 0..1 | code | any | all | all-or-none | exactly-one | at-most-one | one-or-more Binding: Action Selection Behavior (required): Defines selection behavior of a group. |
requiredBehavior | 0..1 | code | must | could | must-unless-documented Binding: Action Required Behavior (required): Defines expectations around whether an action or action group is required. | |
precheckBehavior | 0..1 | code | yes | no Binding: Action Precheck Behavior (required): Defines selection frequency behavior for an action or group. | |
cardinalityBehavior | 0..1 | code | single | multiple Binding: Action Cardinality Behavior (required): Defines behavior for an action or a group for how many times that item may be repeated. | |
definition[x] | S | 0..1 | Description of the activity to be performed | |
definitionCanonical | canonical(ActivityDefinition | MessageDefinition | ObservationDefinition | PlanDefinition | Questionnaire | SpecimenDefinition) | |||
definitionUri | uri | |||
transform | 0..1 | canonical(StructureMap) | Transform to apply the template | |
dynamicValue | 0..* | BackboneElement | Dynamic aspects of the definition | |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
path | 0..1 | string | The path to the element to be set dynamically | |
expression | 0..1 | Expression | An expression that provides the dynamic value for the customization | |
action | 0..* | See action (PlanDefinition) | A sub-action | |
asNeeded[x] | Σ | 0..1 | Preconditions for service Binding: SNOMED CT Medication As Needed Reason Codes (example): A coded concept identifying the pre-condition that should hold prior to performing a procedure. For example "pain", "on flare-up", etc. | |
asNeededBoolean | boolean | |||
asNeededCodeableConcept | CodeableConcept | |||
Documentation for this format |
XML Template
<!-- CDSHooksServicePlanDefinition --> <PlanDefinition xmlns="http://hl7.org/fhir" > <!-- from Element: extension --> <id value="[id]"/><!-- 0..1 Logical id of this artifact --> <meta><!-- I 0..1 Meta Metadata about the resource --></meta> <implicitRules value="[uri]"/><!-- I 0..1 A set of rules under which this content was created --> <language value="[code]"/><!-- I 0..1 Language of the resource content --> <text><!-- I 0..1 Narrative Text summary of the resource, for human interpretation --></text> <contained><!-- 0..* Resource Contained, inline Resources --></contained> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored --></modifierExtension> <url value="[uri]"/><!-- I 0..1 Canonical identifier for this plan definition, represented as a URI (globally unique) --> <identifier><!-- I 0..* Identifier Additional identifier for the plan definition --></identifier> <version value="[string]"/><!-- I 0..1 Business version of the plan definition --> <versionAlgorithm[x]><!-- I 0..1 string|Coding How to compare versions --></versionAlgorithm[x]> <name value="[string]"/><!-- I 0..1 Name for this plan definition (computer friendly) --> <title value="[string]"/><!-- I 0..1 Name for this plan definition (human friendly) --> <subtitle value="[string]"/><!-- I 0..1 Subordinate title of the plan definition --> <type><!-- I 0..1 CodeableConcept order-set | clinical-protocol | eca-rule | workflow-definition --></type> <status value="[code]"/><!-- I 1..1 draft | active | retired | unknown --> <experimental value="[boolean]"/><!-- I 0..1 For testing purposes, not real usage --> <subject[x]><!-- I 0..1 CodeableConcept|Reference(Group)|canonical Type of individual the plan definition is focused on --></subject[x]> <date value="[dateTime]"/><!-- I 0..1 Date last changed --> <publisher value="[string]"/><!-- I 0..1 Name of the publisher/steward (organization or individual) --> <contact><!-- I 0..* ContactDetail Contact details for the publisher --></contact> <description value="[markdown]"/><!-- I 0..1 Natural language description of the plan definition --> <useContext><!-- I 0..* UsageContext The context that the content is intended to support --></useContext> <jurisdiction><!-- I 0..* CodeableConcept Intended jurisdiction for plan definition (if applicable) --></jurisdiction> <purpose value="[markdown]"/><!-- I 0..1 Why this plan definition is defined --> <usage value="[markdown]"/><!-- I 0..1 Describes the clinical usage of the plan --> <copyright value="[markdown]"/><!-- I 0..1 Use and/or publishing restrictions --> <copyrightLabel value="[string]"/><!-- I 0..1 Copyright holder and year(s) --> <approvalDate value="[date]"/><!-- I 0..1 When the plan definition was approved by publisher --> <lastReviewDate value="[date]"/><!-- I 0..1 When the plan definition was last reviewed by the publisher --> <effectivePeriod><!-- I 0..1 Period When the plan definition is expected to be used --></effectivePeriod> <topic><!-- I 0..* CodeableConcept E.g. Education, Treatment, Assessment --></topic> <author><!-- I 0..* ContactDetail Who authored the content --></author> <editor><!-- I 0..* ContactDetail Who edited the content --></editor> <reviewer><!-- I 0..* ContactDetail Who reviewed the content --></reviewer> <endorser><!-- I 0..* ContactDetail Who endorsed the content --></endorser> <relatedArtifact><!-- I 0..* RelatedArtifact Additional documentation, citations --></relatedArtifact> <library value="[canonical]"/><!-- I 0..* Logic used by the plan definition --> <goal> I 0..* BackboneElement <!-- I 0..* What the plan is trying to accomplish --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <category><!-- I 0..1 CodeableConcept E.g. Treatment, dietary, behavioral --></category> <description><!-- I 1..1 CodeableConcept Code or text describing the goal --></description> <priority><!-- I 0..1 CodeableConcept high-priority | medium-priority | low-priority --></priority> <start><!-- I 0..1 CodeableConcept When goal pursuit begins --></start> <addresses><!-- I 0..* CodeableConcept What does the goal address --></addresses> <documentation><!-- I 0..* RelatedArtifact Supporting documentation for the goal --></documentation> <target> I 0..* BackboneElement <!-- I 0..* Target outcome for the goal --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <measure><!-- I 0..1 CodeableConcept The parameter whose value is to be tracked --></measure> <detail[x]><!-- I 0..1 Quantity|Range| CodeableConcept|string|boolean|integer|Ratio The target value to be achieved --></detail[x]> <due><!-- I 0..1 Duration Reach goal within --></due> </target> </goal> <actor> I 0..* BackboneElement <!-- I 0..* Actors within the plan --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <title value="[string]"/><!-- I 0..1 User-visible title --> <description value="[markdown]"/><!-- I 0..1 Describes the actor --> <option> I 1..* BackboneElement <!-- I 1..* Who or what can be this actor --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <type value="[code]"/><!-- I 0..1 careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson --> <typeCanonical value="[canonical]"/><!-- I 0..1 Who or what can participate --> <typeReference><!-- I 0..1 Reference(CareTeam) Who or what can participate --></typeReference> <role><!-- I 0..1 CodeableConcept E.g. Nurse, Surgeon, Parent --></role> </option> </actor> <action> I 0..* BackboneElement <!-- I 0..* Action defined by the plan --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <linkId value="[string]"/><!-- I 0..1 Unique id for the action in the PlanDefinition --> <prefix value="[string]"/><!-- I 0..1 User-visible prefix for the action (e.g. 1. or A.) --> <title value="[string]"/><!-- I 0..1 User-visible title --> <description value="[markdown]"/><!-- I 0..1 Brief description of the action --> <textEquivalent value="[markdown]"/><!-- I 0..1 Static text equivalent of the action, used if the dynamic aspects cannot be interpreted by the receiving system --> <priority value="[code]"/><!-- I 0..1 routine | urgent | asap | stat --> <code><!-- I 0..1 CodeableConcept Code representing the meaning of the action or sub-actions --></code> <reason><!-- I 0..* CodeableConcept Why the action should be performed --></reason> <documentation><!-- I 0..* RelatedArtifact Supporting documentation for the intended performer of the action --></documentation> <goalId value="[id]"/><!-- I 0..* What goals this action supports --> <subject[x]><!-- I 0..1 CodeableConcept|Reference(Group)| canonical Type of individual the action is focused on --></subject[x]> <trigger><!-- I 0..* TriggerDefinition When the action should be triggered --></trigger> <condition> I 0..* BackboneElement <!-- I 0..* Whether or not the action is applicable --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <kind value="[code]"/><!-- I 1..1 applicability | start | stop --> <expression><!-- I 0..1 Expression Boolean-valued expression --></expression> </condition> <input> I 0..* BackboneElement <!-- I 0..* Input data requirements --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <title value="[string]"/><!-- I 0..1 User-visible title --> <requirement><!-- I 0..1 DataRequirement What data is provided --></requirement> <relatedData value="[id]"/><!-- I 0..1 What data is provided --> </input> <output> I 0..* BackboneElement <!-- I 0..* Output data definition --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <title value="[string]"/><!-- I 0..1 User-visible title --> <requirement><!-- I 0..1 DataRequirement What data is provided --></requirement> <relatedData value="[string]"/><!-- I 0..1 What data is provided --> </output> <relatedAction> I 0..* BackboneElement <!-- I 0..* Relationship to another action --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <targetId value="[id]"/><!-- I 1..1 What action is this related to --> <relationship value="[code]"/><!-- I 1..1 before | before-start | before-end | concurrent | concurrent-with-start | concurrent-with-end | after | after-start | after-end --> <endRelationship value="[code]"/><!-- I 0..1 before | before-start | before-end | concurrent | concurrent-with-start | concurrent-with-end | after | after-start | after-end --> <offset[x]><!-- I 0..1 Duration|Range Time offset for the relationship --></offset[x]> </relatedAction> <timing[x]><!-- I 0..1 Age|Duration|Range|Timing When the action should take place --></timing[x]> <location><!-- I 0..1 CodeableReference Where it should happen --></location> <participant> I 0..* BackboneElement <!-- I 0..* Who should participate in the action --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <actorId value="[string]"/><!-- I 0..1 What actor --> <type value="[code]"/><!-- I 0..1 careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson --> <typeCanonical value="[canonical]"/><!-- I 0..1 Who or what can participate --> <typeReference><!-- I 0..1 Reference(CareTeam) Who or what can participate --></typeReference> <role><!-- I 0..1 CodeableConcept E.g. Nurse, Surgeon, Parent --></role> <function><!-- I 0..1 CodeableConcept E.g. Author, Reviewer, Witness, etc --></function> </participant> <type><!-- I 0..1 CodeableConcept create | update | remove | fire-event --></type> <groupingBehavior value="[code]"/><!-- I 0..1 visual-group | logical-group | sentence-group --> <selectionBehavior value="[code]"/><!-- I 0..1 any | all | all-or-none | exactly-one | at-most-one | one-or-more --> <requiredBehavior value="[code]"/><!-- I 0..1 must | could | must-unless-documented --> <precheckBehavior value="[code]"/><!-- I 0..1 yes | no --> <cardinalityBehavior value="[code]"/><!-- I 0..1 single | multiple --> <definition[x]><!-- I 0..1 canonical|uri Description of the activity to be performed --></definition[x]> <transform value="[canonical]"/><!-- I 0..1 Transform to apply the template --> <dynamicValue> I 0..* BackboneElement <!-- I 0..* Dynamic aspects of the definition --> <modifierExtension><!-- I 0..* Extension Extensions that cannot be ignored even if unrecognized --></modifierExtension> <path value="[string]"/><!-- I 0..1 The path to the element to be set dynamically --> <expression><!-- I 0..1 Expression An expression that provides the dynamic value for the customization --></expression> </dynamicValue> <action><!-- See http://hl7.org/fhir/StructureDefinition/PlanDefinition#PlanDefinition.action A sub-action --></action> </action> <asNeeded[x]><!-- I 0..1 boolean|CodeableConcept Preconditions for service --></asNeeded[x]> </PlanDefinition>
JSON Template
{ // CDSHooksServicePlanDefinition // from Element: extension "meta" : { Meta }, // IMetadata about the resource "implicitRules" : "<uri>", // IA set of rules under which this content was created "language" : "<code>", // ILanguage of the resource content "text" : { Narrative }, // IText summary of the resource, for human interpretation "contained" : [{ Resource }], //Contained, inline Resources "extension" : [ // sliced by value:url in the specified order, Open { // Service endpoint // I R! // from Element: extension } ], "modifierExtension" : [{ Extension }], // IExtensions that cannot be ignored "url" : "<uri>", // ICanonical identifier for this plan definition, represented as a URI (globally unique) "identifier" : [{ Identifier }], // IAdditional identifier for the plan definition "version" : "<string>", // IBusiness version of the plan definition // value[x]: How to compare versions. One of these 2: "versionAlgorithmString" : "<string>", // IHow to compare versions "versionAlgorithmCoding" : { Coding }, // IHow to compare versions "name" : "<string>", // IName for this plan definition (computer friendly) "title" : "<string>", // IName for this plan definition (human friendly) "subtitle" : "<string>", // ISubordinate title of the plan definition "type" : { CodeableConcept }, // Iorder-set | clinical-protocol | eca-rule | workflow-definition "status" : "<code>", // I R! draft | active | retired | unknown "experimental" : <boolean>, // IFor testing purposes, not real usage // value[x]: Type of individual the plan definition is focused on. One of these 3: "subjectCodeableConcept" : { CodeableConcept }, // IType of individual the plan definition is focused on "subjectReference" : { Reference(Group) }, // IType of individual the plan definition is focused on "subjectCanonical" : "<canonical>", // IType of individual the plan definition is focused on "date" : "<dateTime>", // IDate last changed "publisher" : "<string>", // IName of the publisher/steward (organization or individual) "contact" : [{ ContactDetail }], // IContact details for the publisher "description" : "<markdown>", // INatural language description of the plan definition "useContext" : [{ UsageContext }], // IThe context that the content is intended to support "jurisdiction" : [{ CodeableConcept }], // IIntended jurisdiction for plan definition (if applicable) "purpose" : "<markdown>", // IWhy this plan definition is defined "usage" : "<markdown>", // IDescribes the clinical usage of the plan "copyright" : "<markdown>", // IUse and/or publishing restrictions "copyrightLabel" : "<string>", // ICopyright holder and year(s) "approvalDate" : "<date>", // IWhen the plan definition was approved by publisher "lastReviewDate" : "<date>", // IWhen the plan definition was last reviewed by the publisher "effectivePeriod" : { Period }, // IWhen the plan definition is expected to be used "topic" : [{ CodeableConcept }], // IE.g. Education, Treatment, Assessment "author" : [{ ContactDetail }], // IWho authored the content "editor" : [{ ContactDetail }], // IWho edited the content "reviewer" : [{ ContactDetail }], // IWho reviewed the content "endorser" : [{ ContactDetail }], // IWho endorsed the content "relatedArtifact" : [{ RelatedArtifact }], // IAdditional documentation, citations "library" : ["<canonical>"], // ILogic used by the plan definition "goal" : [{ BackboneElement }], // IWhat the plan is trying to accomplish "actor" : [{ BackboneElement }], // IActors within the plan "action" : [{ BackboneElement }], // IAction defined by the plan // value[x]: Preconditions for service. One of these 2: "asNeededBoolean" : <boolean>, // IPreconditions for service "asNeededCodeableConcept" : { CodeableConcept }, // IPreconditions for service }
Alternate definitions: Master Definition (XML, JSON), Schematron
Path | Name | Conformance | ValueSet |
PlanDefinition.language | All Languages | required | All Languages |
PlanDefinition.versionAlgorithm[x] | Version Algorithm | extensible | Version Algorithm |
PlanDefinition.type | Plan Definition Type | extensible | Plan Definition Type |
PlanDefinition.status | PublicationStatus | required | PublicationStatus |
PlanDefinition.subject[x] | Participant Resource Types | extensible | Participant Resource Types |
PlanDefinition.jurisdiction | Jurisdiction ValueSet | extensible | Jurisdiction ValueSet |
PlanDefinition.topic | Definition Topic | example | Definition Topic |
PlanDefinition.goal.category | Goal Category | example | Goal Category |
PlanDefinition.goal.description | SNOMED CT Clinical Findings | example | SNOMED CT Clinical Findings |
PlanDefinition.goal.priority | Goal Priority | preferred | Goal Priority |
PlanDefinition.goal.start | Goal Start Event | example | Goal Start Event |
PlanDefinition.goal.addresses | Condition/Problem/Diagnosis Codes | example | Condition/Problem/Diagnosis Codes |
PlanDefinition.goal.target.measure | LOINC Codes | example | LOINC Codes |
PlanDefinition.actor.option.type | Action Participant Type | required | Action Participant Type |
PlanDefinition.actor.option.role | Action Participant Role | example | Action Participant Role |
PlanDefinition.action.priority | RequestPriority | required | RequestPriority |
PlanDefinition.action.code | Action Code | example | Action Code |
PlanDefinition.action.reason | Action Reason Code | example | Action Reason Code |
PlanDefinition.action.subject[x] | Participant Resource Types | extensible | Participant Resource Types |
PlanDefinition.action.condition.kind | Action Condition Kind | required | Action Condition Kind |
PlanDefinition.action.relatedAction.relationship | Action Relationship Type | required | Action Relationship Type |
PlanDefinition.action.relatedAction.endRelationship | Action Relationship Type | required | Action Relationship Type |
PlanDefinition.action.participant.type | Action Participant Type | required | Action Participant Type |
PlanDefinition.action.participant.role | Action Participant Role | example | Action Participant Role |
PlanDefinition.action.participant.function | Action Participant Function | example | Action Participant Function |
PlanDefinition.action.type | Action Type | extensible | Action Type |
PlanDefinition.action.groupingBehavior | Action Grouping Behavior | required | Action Grouping Behavior |
PlanDefinition.action.selectionBehavior | Action Selection Behavior | required | Action Selection Behavior |
PlanDefinition.action.requiredBehavior | Action Required Behavior | required | Action Required Behavior |
PlanDefinition.action.precheckBehavior | Action Precheck Behavior | required | Action Precheck Behavior |
PlanDefinition.action.cardinalityBehavior | Action Cardinality Behavior | required | Action Cardinality Behavior |
PlanDefinition.asNeeded[x] | SNOMED CT Medication As Needed Reason Codes | example | SNOMED CT Medication As Needed Reason Codes |