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/computableplandefinition
Defines a computable PlanDefinition that specifies a single library and requires all expressions referenced from the PlanDefinition to be definitions in that single library
Note to Implementers: All of the shareable, publishable, computable, and executable profiles will be migrating to the new Canonical Resource Management implementation guide as part of the next FHIR release. Implementers are encouraged to look there for updates, corrections and clarifications.
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 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 | |
library | 1..1 | canonical(Library) | Logic used by the plan definition | |
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 | |
extension | 0..* | Extension | Additional content defined by implementations | |
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 | 1..1 | 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 | 0..1 | string | User-visible title | |
description | 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 | 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 | 0..* | TriggerDefinition | When the action should be triggered | |
condition | 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] | 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 | 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 | 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 | 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] | 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 |
<!-- ComputablePlanDefinition --> <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 1..1 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>
{ // ComputablePlanDefinition // 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 "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>", // I R! Logic 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 | |
library | 1..1 | canonical(Library) | Logic used by the plan definition | |
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 | |
extension | 0..* | Extension | Additional content defined by implementations | |
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 | 1..1 | 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 | 0..1 | string | User-visible title | |
description | 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 | 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 | 0..* | TriggerDefinition | When the action should be triggered | |
condition | 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] | 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 | 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 | 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 | 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] | 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
<!-- ComputablePlanDefinition --> <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 1..1 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
{ // ComputablePlanDefinition // 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 "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>", // I R! Logic 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 |