Release 4 5

This page is part of the FHIR Specification (v4.0.1: R4 (v5.0.0: R5 - Mixed Normative and STU ) ). This is the current published version in it's permanent home (it will always be available at this URL). The current version which supercedes this version is 5.0.0 . For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4

Clinical Decision Support icon Work Group   Maturity Level : 1 0 Trial Use Use Context : Any

The official 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 icon 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 [no date] 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

This structure is derived from indicates the differences between this profile and the base PlanDefinition . structure.

Name Flags Card. Type Description & Constraints doco
. . 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

doco Documentation for this format icon

This provides the consolidated view (aka snapshot) of the profile after applying the changes in this profile to the base PlanDefinition structure.

I I I I I I I I I I I I I I I I I I I I I I I I I I I Duration I I I I I I I I I I I I Expression I Output I I Range I I I I I I I I I I I I I I
Name Flags Card. Type Description & Constraints doco
. . PlanDefinition I C icon 1..1 PlanDefinition The definition of a plan for a series of actions, independent of any specific patient or context
. . . id Σ 0..1 string id Logical id of this artifact
. . . meta Σ I 0..1 Meta Metadata about the resource
. . . implicitRules ?! Σ I 0..1 uri A set of rules under which this content was created
. . . language 0..1 code Language of the resource content
Binding: Common All Languages ( preferred required ) ): IETF language tag for a human language
Max Binding: All Languages
. . . 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 ?! I Σ 0..* Extension Extensions that cannot be ignored
. . . url Σ I C icon 0..1 uri Canonical identifier for this plan definition, represented as a URI (globally unique)
. . . identifier Σ I 0..* Identifier Additional identifier for the plan definition
. . . version Σ I 0..1 string Business version of the plan definition
. . name . versionAlgorithm[x] Σ I 0..1 How to compare versions
Binding: Version Algorithm ( extensible )
.... versionAlgorithmString string
. . . . versionAlgorithmCoding Name for this plan definition (computer friendly) Coding
. . . title name Σ I C icon 0..1 string Name for this plan definition (human (computer friendly)
. . . subtitle title I Σ 0..1 string Name for this plan definition (human friendly)
... subtitle 0..1 string Subordinate title of the plan definition
. . . type Σ I 0..1 CodeableConcept order-set | clinical-protocol | eca-rule | workflow-definition
Binding: PlanDefinitionType Plan Definition Type ( extensible ) ): The type of PlanDefinition.

. . . status ?! Σ I 1..1 code draft | active | retired | unknown
Binding: PublicationStatus ( required ) ): The lifecycle status of an artifact.

. . . experimental Σ I 0..1 boolean For testing purposes, not real usage
. . . subject[x] 0..1 Type of individual the plan definition is focused on
Binding: Subject type 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 )
. . . . subjectReference subjectCanonical Reference canonical (group.html) ( EvidenceVariable )
. . . date Σ I 0..1 dateTime Date last changed
. . . publisher Σ I 0..1 string Name of the publisher publisher/steward (organization or individual)
. . . contact Σ I 0..* ContactDetail Contact details for the publisher
. . . description Σ I 0..1 markdown Natural language description of the plan definition
. . . useContext Σ I 0..* UsageContext The context that the content is intended to support
. . . jurisdiction Σ I 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 string markdown Describes the clinical usage of the plan
. . . copyright 0..1 markdown Use and/or publishing restrictions
. . . approvalDate 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 Σ I 0..1 Period When the plan definition is expected to be used
. . . topic I XD 0..* CodeableConcept E.g. Education, Treatment, Assessment
Binding: DefinitionTopic 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 I C icon 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 ?! Σ I 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . category 0..1 CodeableConcept E.g. Treatment, dietary, behavioral
Binding: Goal category 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 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 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 ?! Σ I 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
. . . . . . detailRange detailCodeableConcept CodeableConcept Range
. . . . . . detailString string
. . . . . . detailBoolean boolean
. . . . . detailCodeableConcept . detailInteger integer CodeableConcept
. . . . . . 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 Reach goal within Additional content defined by implementations
. . action . . modifierExtension I ?! Σ 0..* BackboneElement Extension Action defined by the plan Extensions that cannot be ignored even if unrecognized
. . . . id 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 I ?! Σ 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 icon ( example )
... action C icon 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 ?! Σ I 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . prefix . linkId I 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 string markdown Brief description of the action
. . . . textEquivalent 0..1 string 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: Request priority RequestPriority ( required ) ): Identifies the level of importance to be assigned to actioning the request.

. . . . code 0..* 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 I C icon 0..* id What goals this action supports
. . . . subject[x] 0..1 Type of individual the action is focused on
Binding: Subject type 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.html) ( 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 ?! Σ I 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . . kind 1..1 code applicability | start | stop
Binding: ActionConditionKind Action Condition Kind ( required ) ): Defines the kinds of conditions that can appear on actions.

. . . . . expression 0..1 Expression Boolean-valued expression
.... input I C icon 0..* BackboneElement Input data requirements
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Boolean-valued expression Additional content defined by implementations
. . . . input . modifierExtension I ?! Σ 0..* DataRequirement Extension Input data requirements Extensions that cannot be ignored even if unrecognized
. . . . output . title 0..1 string 0..* User-visible title
. . . . . requirement C icon 0..1 DataRequirement What data definition is provided
..... relatedData C icon 0..1 id What data is provided
. . . . relatedAction output I C icon 0..* BackboneElement Relationship to another action Output data definition
. . . . . id 0..1 string Unique id for inter-element referencing
. . . . . extension 0..* Extension Additional content defined by implementations
. . . . . modifierExtension ?! Σ I 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . . actionId title 1..1 0..1 id string What action is this related to User-visible title
. . . . relationship . requirement I C icon 1..1 0..1 code DataRequirement before-start | before | before-end | concurrent-with-start | concurrent | concurrent-with-end | after-start | after | after-end Binding: ActionRelationshipType ( required ) What data is provided
. . . . offset[x] . relatedData I C icon 0..1 string Time offset for the relationship What data is provided
. . . . offsetDuration relatedAction C icon 0..* Duration BackboneElement Relationship to another action
. . . . . id offsetRange 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
. . . . timing[x] . targetId I C icon 0..1 1..1 id When the What action should take place is this related to
. . . . . timingDateTime relationship 1..1 code before | before-start | before-end | concurrent | concurrent-with-start | concurrent-with-end | after | after-start | after-end
dateTime 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
. . . . . . timingAge offsetDuration Duration Age
. . . . . . offsetRange Range
. . . . timing[x] 0..1 When the action should take place
. . . . . timingPeriod timingAge Period Age
. . . . . timingDuration Duration
. . . . . timingRange Range
. . . . . timingTiming Timing
. . . participant . 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 ?! Σ I 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . type . actorId I 0..1 string What actor
. . . . . type 1..1 0..1 code careteam | device | group | healthcareservice | location | organization | patient | practitioner | related-person practitionerrole | device relatedperson
Binding: ActionParticipantType Action Participant Type ( required ) ): The type of participant in the activity.

. . . . role . typeCanonical 0..1 I 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 Participant Role icon ( example ) ): Defines roles played by participants for the action.

. . . . . type 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: ActionType Action Type ( extensible ) ): The type of action to be performed.

. . . . groupingBehavior 0..1 code visual-group | logical-group | sentence-group
Binding: ActionGroupingBehavior 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: ActionSelectionBehavior Action Selection Behavior ( required ) ): Defines selection behavior of a group.

. . . . requiredBehavior 0..1 code must | could | must-unless-documented
Binding: ActionRequiredBehavior Action Required Behavior ( required ) ): Defines expectations around whether an action or action group is required.

. . . . precheckBehavior 0..1 code yes | no
Binding: ActionPrecheckBehavior Action Precheck Behavior ( required ) ): Defines selection frequency behavior for an action or group.

. . . . cardinalityBehavior 0..1 code single | multiple
Binding: ActionCardinalityBehavior 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.html ( ActivityDefinition | plandefinition.html MessageDefinition | questionnaire.html) 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 ?! Σ I 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] I Σ 0..* 0..1 Preconditions for service
Binding: Unknown reference SNOMED CT Medication As Needed Reason Codes ( example ): A coded concept identifying the pre-condition that should hold prior to #PlanDefinition.action performing a procedure. For example "pain", "on flare-up", etc.
A sub-action
. . . . asNeededBoolean boolean
.... asNeededCodeableConcept CodeableConcept

doco Documentation for this format icon
<!-- Computable PlanDefinition -->

<!-- ComputablePlanDefinition -->doco


< xmlns="http://hl7.org/fhir"

<PlanDefinition xmlns="http://hl7.org/fhir"

>
  <!-- from Element: extension -->
 <</id>
 <</meta>
 <
 <
 <

 <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>
 <<a href="computableplandefinition-definitions.html#PlanDefinition.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

 <contained><!-- 0..* Resource Contained, inline Resources --></contained>
 <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
 <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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>
 <
 <
 <
 <
 <</type>
 <
 <
 <</subject[x]>
 <
 <
 <

 <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>
 <
 <
 <
 <
 <
 <

 <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>
 <</author>
 <</editor>
 <</reviewer>
 <</endorser>
 <

 <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>
 <
 <
  <<a href="computableplandefinition-definitions.html#PlanDefinition.goal.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

 <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 -->
  <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
  <</category>
  <</description>
  <</priority>
  <</start>
  <</addresses>
  <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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>
  <
   <<a href="computableplandefinition-definitions.html#PlanDefinition.goal.target.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

  <target> I 0..* BackboneElement  <!-- I 0..* Target outcome for the goal -->
   <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
   <</measure>
   <|
     </detail[x]>
   <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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>
 <
  <<a href="computableplandefinition-definitions.html#PlanDefinition.action.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

 <actor> I 0..* BackboneElement  <!-- I 0..* Actors within the plan -->
  <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
  <
  <
  <
  <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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 icon   --></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 -->
  <
  <
      Code representing the meaning of the action or sub-actions</code>
  <
      Why the action should be performed</reason>
  <

  <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>
  <
  <</subject[x]>
  <

  <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>
  <
   <<a href="computableplandefinition-definitions.html#PlanDefinition.action.condition.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

  <condition> I 0..* BackboneElement  <!-- I 0..* Whether or not the action is applicable -->
   <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
   <
   <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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 data requirements</input>
  <
      Output data definition</output>
  <
   <<a href="computableplandefinition-definitions.html#PlanDefinition.action.relatedAction.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

  <input> I 0..* BackboneElement  <!-- I 0..* Input data requirements -->
   <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
   <
   <
   <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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]>
  <
   <<a href="computableplandefinition-definitions.html#PlanDefinition.action.participant.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

  <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 -->
   <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
   <
   <</role>

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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 icon   --></role>
   <function><!-- I 0..1 CodeableConcept E.g. Author, Reviewer, Witness, etc   --></function>

  </participant>
  <</type>
  <
  <
  <
  <
  <
  <

  <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]>
  <
  <
   <<a href="computableplandefinition-definitions.html#PlanDefinition.action.dynamicValue.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

  <transform value="[canonical]"/><!-- I 0..1 Transform to apply the template -->
  <dynamicValue> I 0..* BackboneElement  <!-- I 0..* Dynamic aspects of the definition -->
   <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
   <
   <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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>

  <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
    "
    "
    "
    "
    "
    "<a href="computableplandefinition-definitions.html#PlanDefinition.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

    "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
    "Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">
    "
    "
    "
    "
    "
    "
    "
    "
    "

    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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 .

Summary

Mandatory: 1 element

Differential View

This structure is derived from indicates the differences between this profile and the base PlanDefinition . structure.

Name Flags Card. Type Description & Constraints doco
. . 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

doco Documentation for this format icon

Snapshot View

This provides the consolidated view (aka snapshot) of the profile after applying the changes in this profile to the base PlanDefinition structure.

I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I I Expression Output I I I I I I I I I I I I I I I I I
Name Flags Card. Type Description & Constraints doco
. . PlanDefinition I C icon 1..1 PlanDefinition The definition of a plan for a series of actions, independent of any specific patient or context
. . . id Σ 0..1 string id Logical id of this artifact
. . . meta Σ I 0..1 Meta Metadata about the resource
. . . implicitRules ?! Σ I 0..1 uri A set of rules under which this content was created
. . . language 0..1 code Language of the resource content
Binding: Common All Languages ( preferred required ) ): IETF language tag for a human language
Max Binding: All Languages
. . . 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 ?! I Σ 0..* Extension Extensions that cannot be ignored
. . . url Σ I C icon 0..1 uri Canonical identifier for this plan definition, represented as a URI (globally unique)
. . . identifier Σ I 0..* Identifier Additional identifier for the plan definition
. . . version Σ I 0..1 string Business version of the plan definition
. . name . versionAlgorithm[x] Σ I 0..1 How to compare versions
Binding: Version Algorithm ( extensible )
.... versionAlgorithmString string
. . . . versionAlgorithmCoding Name for this plan definition (computer friendly) Coding
. . . title name Σ I C icon 0..1 string Name for this plan definition (human (computer friendly)
. . . subtitle title I Σ 0..1 string Name for this plan definition (human friendly)
... subtitle 0..1 string Subordinate title of the plan definition
. . . type Σ I 0..1 CodeableConcept order-set | clinical-protocol | eca-rule | workflow-definition
Binding: PlanDefinitionType Plan Definition Type ( extensible ) ): The type of PlanDefinition.

. . . status ?! Σ I 1..1 code draft | active | retired | unknown
Binding: PublicationStatus ( required ) ): The lifecycle status of an artifact.

. . . experimental Σ I 0..1 boolean For testing purposes, not real usage
. . . subject[x] 0..1 Type of individual the plan definition is focused on
Binding: Subject type 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 )
. . . . subjectReference subjectCanonical Reference canonical (group.html) ( EvidenceVariable )
. . . date Σ I 0..1 dateTime Date last changed
. . . publisher Σ I 0..1 string Name of the publisher publisher/steward (organization or individual)
. . . contact Σ I 0..* ContactDetail Contact details for the publisher
. . . description Σ I 0..1 markdown Natural language description of the plan definition
. . . useContext Σ I 0..* UsageContext The context that the content is intended to support
. . . jurisdiction Σ I 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 string markdown Describes the clinical usage of the plan
. . . copyright 0..1 markdown Use and/or publishing restrictions
. . . approvalDate 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 Σ I 0..1 Period When the plan definition is expected to be used
. . . topic I XD 0..* CodeableConcept E.g. Education, Treatment, Assessment
Binding: DefinitionTopic 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 I C icon 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 ?! Σ I 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . category 0..1 CodeableConcept E.g. Treatment, dietary, behavioral
Binding: Goal category 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 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 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 ?! Σ I 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
. . . . . . detailRange detailCodeableConcept CodeableConcept Range
. . . . . . detailString string
. . . . . . detailBoolean boolean
. . . . . detailCodeableConcept . detailInteger integer CodeableConcept
. . . . . . 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..* Duration Extension Reach goal within Additional content defined by implementations
. . action . . modifierExtension I ?! Σ 0..* BackboneElement Extension Action defined by the plan Extensions that cannot be ignored even if unrecognized
. . . . id 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 I ?! Σ 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 icon ( example )
... action C icon 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 ?! Σ I 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . prefix . linkId I 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 string markdown Brief description of the action
. . . . textEquivalent 0..1 string 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: Request priority RequestPriority ( required ) ): Identifies the level of importance to be assigned to actioning the request.

. . . . code 0..* 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 I C icon 0..* id What goals this action supports
. . . . subject[x] 0..1 Type of individual the action is focused on
Binding: Subject type 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.html) ( 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 ?! Σ I 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . . kind 1..1 code applicability | start | stop
Binding: ActionConditionKind Action Condition Kind ( required ) ): Defines the kinds of conditions that can appear on actions.

. . . . . expression 0..1 Expression Boolean-valued expression
.... input I C icon 0..* BackboneElement Input data requirements
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Boolean-valued expression Additional content defined by implementations
. . . . input . modifierExtension I ?! Σ 0..* DataRequirement Extension Input data requirements Extensions that cannot be ignored even if unrecognized
. . . . output . title 0..1 I string 0..* User-visible title
. . . . . requirement C icon 0..1 DataRequirement What data definition is provided
..... relatedData C icon 0..1 id What data is provided
. . . . relatedAction output I C icon 0..* BackboneElement Relationship to another action Output data definition
. . . . . id 0..1 string Unique id for inter-element referencing
. . . . . extension 0..* Extension Additional content defined by implementations
. . . . . modifierExtension ?! Σ I 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . . actionId title 1..1 0..1 id string What action is this related to User-visible title
. . . . relationship . requirement I C icon 1..1 0..1 code DataRequirement before-start | before | before-end | concurrent-with-start | concurrent | concurrent-with-end | after-start | after | after-end Binding: ActionRelationshipType ( required ) What data is provided
. . . . offset[x] . relatedData I C icon 0..1 string Time offset for the relationship What data is provided
. . . . offsetDuration relatedAction C icon 0..* Duration BackboneElement Relationship to another action
. . . . . id offsetRange 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension Range ?! Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . timing[x] . targetId I C icon 0..1 1..1 id When the What action should take place is this related to
. . . . . timingDateTime relationship 1..1 code before | before-start | before-end | concurrent | concurrent-with-start | concurrent-with-end | after | after-start | after-end
dateTime 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
. . . . . . timingAge offsetDuration Duration Age
. . . . . . offsetRange Range
.... timing[x] 0..1 When the action should take place
. . . . . timingPeriod timingAge Period Age
. . . . . timingDuration Duration
. . . . . timingRange Range
. . . . . timingTiming Timing
. . . participant . 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 ?! Σ I 0..* Extension Extensions that cannot be ignored even if unrecognized
. . . . type . actorId I 0..1 string What actor
..... type 1..1 0..1 code careteam | device | group | healthcareservice | location | organization | patient | practitioner | related-person practitionerrole | device relatedperson
Binding: ActionParticipantType Action Participant Type ( required ) ): The type of participant in the activity.

. . . . role . 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 Participant Role icon ( example ) ): Defines roles played by participants for the action.

. . . . . type 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: ActionType Action Type ( extensible ) ): The type of action to be performed.

. . . . groupingBehavior 0..1 code visual-group | logical-group | sentence-group
Binding: ActionGroupingBehavior 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: ActionSelectionBehavior Action Selection Behavior ( required ) ): Defines selection behavior of a group.

. . . . requiredBehavior 0..1 code must | could | must-unless-documented
Binding: ActionRequiredBehavior Action Required Behavior ( required ) ): Defines expectations around whether an action or action group is required.

. . . . precheckBehavior 0..1 code yes | no
Binding: ActionPrecheckBehavior Action Precheck Behavior ( required ) ): Defines selection frequency behavior for an action or group.

. . . . cardinalityBehavior 0..1 code single | multiple
Binding: ActionCardinalityBehavior 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.html ( ActivityDefinition | plandefinition.html MessageDefinition | questionnaire.html) 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 ?! Σ I 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] I Σ 0..* 0..1 Preconditions for service
Binding: Unknown reference SNOMED CT Medication As Needed Reason Codes ( example ): A coded concept identifying the pre-condition that should hold prior to #PlanDefinition.action performing a procedure. For example "pain", "on flare-up", etc.
A sub-action
. . . . asNeededBoolean boolean
.... asNeededCodeableConcept CodeableConcept

doco Documentation for this format icon

XML Template

<!-- Computable PlanDefinition -->

<!-- ComputablePlanDefinition -->doco


< xmlns="http://hl7.org/fhir"

<PlanDefinition xmlns="http://hl7.org/fhir"

>
  <!-- from Element: extension -->
 <</id>
 <</meta>
 <
 <
 <

 <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>
 <<a href="computableplandefinition-definitions.html#PlanDefinition.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

 <contained><!-- 0..* Resource Contained, inline Resources --></contained>
 <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
 <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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>
 <
 <
 <
 <
 <</type>
 <
 <
 <</subject[x]>
 <
 <
 <

 <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>
 <
 <
 <
 <
 <
 <

 <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>
 <</author>
 <</editor>
 <</reviewer>
 <</endorser>
 <

 <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>
 <
 <
  <<a href="computableplandefinition-definitions.html#PlanDefinition.goal.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

 <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 -->
  <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
  <</category>
  <</description>
  <</priority>
  <</start>
  <</addresses>
  <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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>
  <
   <<a href="computableplandefinition-definitions.html#PlanDefinition.goal.target.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

  <target> I 0..* BackboneElement  <!-- I 0..* Target outcome for the goal -->
   <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
   <</measure>
   <|
     </detail[x]>
   <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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>
 <
  <<a href="computableplandefinition-definitions.html#PlanDefinition.action.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

 <actor> I 0..* BackboneElement  <!-- I 0..* Actors within the plan -->
  <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
  <
  <
  <
  <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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 icon   --></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 -->
  <
  <
      Code representing the meaning of the action or sub-actions</code>
  <
      Why the action should be performed</reason>
  <

  <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>
  <
  <</subject[x]>
  <

  <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>
  <
   <<a href="computableplandefinition-definitions.html#PlanDefinition.action.condition.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

  <condition> I 0..* BackboneElement  <!-- I 0..* Whether or not the action is applicable -->
   <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
   <
   <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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 data requirements</input>
  <
      Output data definition</output>
  <
   <<a href="computableplandefinition-definitions.html#PlanDefinition.action.relatedAction.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

  <input> I 0..* BackboneElement  <!-- I 0..* Input data requirements -->
   <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
   <
   <
   <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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]>
  <
   <<a href="computableplandefinition-definitions.html#PlanDefinition.action.participant.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

  <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 -->
   <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
   <
   <</role>

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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 icon   --></role>
   <function><!-- I 0..1 CodeableConcept E.g. Author, Reviewer, Witness, etc   --></function>

  </participant>
  <</type>
  <
  <
  <
  <
  <
  <

  <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]>
  <
  <
   <<a href="computableplandefinition-definitions.html#PlanDefinition.action.dynamicValue.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

  <transform value="[canonical]"/><!-- I 0..1 Transform to apply the template -->
  <dynamicValue> I 0..* BackboneElement  <!-- I 0..* Dynamic aspects of the definition -->
   <Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>
   <
   <

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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>

  <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
    "
    "
    "
    "
    "
    "<a href="computableplandefinition-definitions.html#PlanDefinition.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

    "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
    "Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">
    "
    "
    "
    "
    "
    "
    "
    "
    "

    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "
    "

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">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 Common All Languages preferred required Common All Languages
PlanDefinition.versionAlgorithm[x] Version Algorithm extensible Version Algorithm
PlanDefinition.type PlanDefinitionType Plan Definition Type extensible PlanDefinitionType Plan Definition Type
PlanDefinition.status PublicationStatus required PublicationStatus
PlanDefinition.subject[x] Subject type Participant Resource Types extensible Subject type Participant Resource Types
PlanDefinition.jurisdiction Jurisdiction ValueSet extensible Jurisdiction ValueSet
PlanDefinition.topic DefinitionTopic Definition Topic example DefinitionTopic Definition Topic
PlanDefinition.goal.category Goal category Category example Goal category Category
PlanDefinition.goal.description SNOMED CT Clinical Findings example SNOMED CT Clinical Findings
PlanDefinition.goal.priority Goal priority Priority preferred Goal priority Priority
PlanDefinition.goal.start Goal start event Start Event example Goal start event 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 icon
PlanDefinition.action.priority Request priority RequestPriority required Request priority RequestPriority
PlanDefinition.action.code Action Code example Action Code
PlanDefinition.action.reason Action Reason Code example Action Reason Code
PlanDefinition.action.subject[x] Subject type Participant Resource Types extensible Subject type Participant Resource Types
PlanDefinition.action.condition.kind ActionConditionKind Action Condition Kind required ActionConditionKind Action Condition Kind
PlanDefinition.action.relatedAction.relationship ActionRelationshipType Action Relationship Type required ActionRelationshipType Action Relationship Type
PlanDefinition.action.relatedAction.endRelationship Action Relationship Type required Action Relationship Type
PlanDefinition.action.participant.type ActionParticipantType Action Participant Type required ActionParticipantType Action Participant Type
PlanDefinition.action.participant.role Action participant role Participant Role example Action participant role Participant Role icon
PlanDefinition.action.participant.function Action Participant Function example Action Participant Function
PlanDefinition.action.type ActionType Action Type extensible ActionType Action Type
PlanDefinition.action.groupingBehavior ActionGroupingBehavior Action Grouping Behavior required ActionGroupingBehavior Action Grouping Behavior
PlanDefinition.action.selectionBehavior ActionSelectionBehavior Action Selection Behavior required ActionSelectionBehavior Action Selection Behavior
PlanDefinition.action.requiredBehavior ActionRequiredBehavior Action Required Behavior required ActionRequiredBehavior Action Required Behavior
PlanDefinition.action.precheckBehavior ActionPrecheckBehavior Action Precheck Behavior required ActionPrecheckBehavior Action Precheck Behavior
PlanDefinition.action.cardinalityBehavior ActionCardinalityBehavior Action Cardinality Behavior required ActionCardinalityBehavior Action Cardinality Behavior
PlanDefinition.asNeeded[x] SNOMED CT Medication As Needed Reason Codes example SNOMED CT Medication As Needed Reason Codes
. .