RIVO-Noord Zorgviewer Implementation Guide
1.22.0 - CI build

RIVO-Noord Zorgviewer Implementation Guide, published by RIVO-NN HL7NL. This guide is not an authorized publication; it is the continuous build for version 1.22.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/RIVO-Noord/zorgviewer-ig/ and changes regularly. See the Directory of published versions

## Resource Profile: PlanDefinition

Official URL: http://fhir.hl7.nl/zorgviewer/StructureDefinition/PlanDefinition | Version: 1.22.0
Draft as of 2026-01-12 | Computable Name: PlanDefinition

PlanDefinition voor het ondersteunen van filtering op basis van DataRequirements

De specificatie op deze pagina is work-in-progress.

### Example

- BgZ2017 DataRequirements in scope voor MVP2

### Request

1. Opvragen (search) definities

   `GET <behandelplan-base>/PlanDefinition?name=BgZ2017`

Usages:

- CapabilityStatements using this Profile: Behandelplan
- This Profile is not used by any profiles in this Implementation Guide

You can also check for usages in the FHIR IG Statistics

Changes since version 1.21.0:

- New Content

### Formal Views of Profile Content

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

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
PlanDefinition |  | 0..* | PlanDefinition | The definition of a plan for a series of actions, independent of any specific patient or context
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of a Value Set or Concept Map.
experimental | ?!Σ | 0..1 | boolean | For testing purposes, not real usage
relatedArtifact | S | 1..* | RelatedArtifact | Related artifacts for the asset
action |  | 0..* | BackboneElement | Action defined by the plan
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
output | S | 1..* | DataRequirement | Output data definition
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
PlanDefinition.status | Base | required | PublicationStatus | 📍3.0.2 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-1 | error | PlanDefinition | If the resource is contained in another resource, it SHALL NOT contain any narrative | `contained.text.empty()`
dom-2 | error | PlanDefinition | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | PlanDefinition | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource | `contained.where(('#'+id in %resource.descendants().reference).not()).empty()`
dom-4 | error | PlanDefinition | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() | (children().count() > id.count())`

This structure is derived from PlanDefinition

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
PlanDefinition |  | 0..* | PlanDefinition | The definition of a plan for a series of actions, independent of any specific patient or context
relatedArtifact | S | 1..* | RelatedArtifact | Related artifacts for the asset
action |  |  |  |
output | S | 1..* | DataRequirement | Output data definition
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
PlanDefinition |  | 0..* | PlanDefinition | The definition of a plan for a series of actions, independent of any specific patient or context
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: Common Languages (extensible): A human language.
Additional Bindings | Purpose
All Languages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
url | Σ | 0..1 | uri | Logical URI to reference this plan definition (globally unique)
identifier | Σ | 0..* | Identifier | Additional identifier for the plan definition
version | Σ | 0..1 | string | Business version of the plan definition
name | Σ | 0..1 | string | Name for this plan definition (computer friendly)
title | Σ | 0..1 | string | Name for this plan definition (human friendly)
type | Σ | 0..1 | CodeableConcept | order-set | protocol | eca-rule Binding: PlanDefinitionType (extensible): The type of PlanDefinition
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of a Value Set or Concept Map.
experimental | ?!Σ | 0..1 | boolean | For testing purposes, not real usage
date | Σ | 0..1 | dateTime | Date this was last changed
publisher | Σ | 0..1 | string | Name of the publisher (organization or individual)
description | Σ | 0..1 | markdown | Natural language description of the plan definition
purpose |  | 0..1 | markdown | Why this plan definition is defined
usage |  | 0..1 | string | Describes the clinical usage of the asset
approvalDate |  | 0..1 | date | When the plan definition was approved by publisher
lastReviewDate |  | 0..1 | date | When the plan definition was last reviewed
effectivePeriod | Σ | 0..1 | Period | When the plan definition is expected to be used
useContext | Σ | 0..* | UsageContext | Context the content is intended to support
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for plan definition (if applicable) Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use
topic |  | 0..* | CodeableConcept | E.g. Education, Treatment, Assessment, etc Binding: DefinitionTopic (example): High-level categorization of the definition, used for searching, sorting, and filtering
contributor |  | 0..* | Contributor | A content contributor
contact | Σ | 0..* | ContactDetail | Contact details for the publisher
copyright |  | 0..1 | markdown | Use and/or publishing restrictions
relatedArtifact | S | 1..* | RelatedArtifact | Related artifacts for the asset
library |  | 0..* | Reference(Library) | Logic used by the plan definition
goal |  | 0..* | BackboneElement | What the plan is trying to accomplish
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
category |  | 0..1 | CodeableConcept | E.g. Treatment, dietary, behavioral, etc Binding: GoalCategory (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: GoalPriority (preferred): Indicates the level of importance associated with reaching or sustaining a goal
start |  | 0..1 | CodeableConcept | When goal pursuit begins Binding: GoalStartEvent (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 | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
measure |  | 0..1 | CodeableConcept | The parameter whose value is to be tracked Binding: LOINC Codes (example): Identifies types of parameters that can be tracked to determine goal achievement
detail[x] |  | 0..1 |  | The target value to be achieved
detailQuantity |  |  | Quantity |
detailRange |  |  | Range |
detailCodeableConcept |  |  | CodeableConcept |
due |  | 0..1 | Duration | Reach goal within
action |  | 0..* | BackboneElement | Action defined by the plan
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
label |  | 0..1 | string | User-visible label for the action (e.g. 1. or A.)
title |  | 0..1 | string | User-visible title
description |  | 0..1 | string | Short description of the action
textEquivalent |  | 0..1 | string | Static text equivalent of the action, used if the dynamic aspects cannot be interpreted by the receiving system
code |  | 0..* | CodeableConcept | Code representing the meaning of the action or sub-actions
reason |  | 0..* | CodeableConcept | Why the action should be performed
documentation |  | 0..* | RelatedArtifact | Supporting documentation for the intended performer of the action
goalId |  | 0..* | id | What goals this action supports
triggerDefinition |  | 0..* | TriggerDefinition | When the action should be triggered
condition |  | 0..* | BackboneElement | Whether or not the action is applicable
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
kind |  | 1..1 | code | applicability | start | stop Binding: ActionConditionKind (required): Defines the kinds of conditions that can appear on actions
description |  | 0..1 | string | Natural language description of the condition
language |  | 0..1 | string | Language of the expression
expression |  | 0..1 | string | Boolean-valued expression
input |  | 0..* | DataRequirement | Input data requirements
output | S | 1..* | DataRequirement | Output data definition
relatedAction |  | 0..* | BackboneElement | Relationship to another action
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
actionId |  | 1..1 | id | What action is this related to
relationship |  | 1..1 | code | before-start | before | before-end | concurrent-with-start | concurrent | concurrent-with-end | after-start | after | after-end Binding: ActionRelationshipType (required): Defines the types of relationships between actions
offset[x] |  | 0..1 |  | Time offset for the relationship
offsetDuration |  |  | Duration |
offsetRange |  |  | Range |
timing[x] |  | 0..1 |  | When the action should take place
timingDateTime |  |  | dateTime |
timingPeriod |  |  | Period |
timingDuration |  |  | Duration |
timingRange |  |  | Range |
timingTiming |  |  | Timing |
participant |  | 0..* | BackboneElement | Who should participate in the action
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
type |  | 1..1 | code | patient | practitioner | related-person Binding: ActionParticipantType (required): The type of participant for the action
role |  | 0..1 | CodeableConcept | E.g. Nurse, Surgeon, Parent, etc Binding: ActionParticipantRole (example): Defines roles played by participants for the action
type |  | 0..1 | Coding | create | update | remove | fire-event Binding: ActionType (required): The type of action to be performed
groupingBehavior |  | 0..1 | code | visual-group | logical-group | sentence-group Binding: ActionGroupingBehavior (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 (required): Defines selection behavior of a group
requiredBehavior |  | 0..1 | code | must | could | must-unless-documented Binding: ActionRequiredBehavior (required): Defines requiredness behavior for selecting an action or an action group
precheckBehavior |  | 0..1 | code | yes | no Binding: ActionPrecheckBehavior (required): Defines selection frequency behavior for an action or group
cardinalityBehavior |  | 0..1 | code | single | multiple Binding: ActionCardinalityBehavior (required): Defines behavior for an action or a group for how many times that item may be repeated
definition |  | 0..1 | Reference(ActivityDefinition | PlanDefinition) | Description of the activity to be performed
transform |  | 0..1 | Reference(StructureMap) | Transform to apply the template
dynamicValue |  | 0..* | BackboneElement | Dynamic aspects of the definition
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
description |  | 0..1 | string | Natural language description of the dynamic value
path |  | 0..1 | string | The path to the element to be set dynamically
language |  | 0..1 | string | Language of the expression
expression |  | 0..1 | string | An expression that provides the dynamic value for the customization
action |  | 0..* | See action (PlanDefinition) | A sub-action
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
PlanDefinition.language | Base | extensible | Common Languages | 📍3.0.2 | FHIR Std.
PlanDefinition.type | Base | extensible | PlanDefinitionType | 📍3.0.2 | FHIR Std.
PlanDefinition.status | Base | required | PublicationStatus | 📍3.0.2 | FHIR Std.
PlanDefinition.jurisdiction | Base | extensible | Jurisdiction ValueSet | 📍3.0.2 | FHIR Std.
PlanDefinition.topic | Base | example | DefinitionTopic | 📍3.0.2 | FHIR Std.
PlanDefinition.goal.​category | Base | example | GoalCategory | 📍3.0.2 | FHIR Std.
PlanDefinition.goal.​description | Base | example | SNOMED CT Clinical Findings | 📍3.0.2 | FHIR Std.
PlanDefinition.goal.​priority | Base | preferred | GoalPriority | 📍3.0.2 | FHIR Std.
PlanDefinition.goal.​start | Base | example | GoalStartEvent | 📍3.0.2 | FHIR Std.
PlanDefinition.goal.​addresses | Base | example | Condition/Problem/Diagnosis Codes | 📍3.0.2 | FHIR Std.
PlanDefinition.goal.​target.measure | Base | example | LOINC Codes | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​condition.kind | Base | required | ActionConditionKind | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​relatedAction.relationship | Base | required | ActionRelationshipType | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​participant.type | Base | required | ActionParticipantType | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​participant.role | Base | example | ActionParticipantRole | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​type | Base | required | ActionType | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​groupingBehavior | Base | required | ActionGroupingBehavior | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​selectionBehavior | Base | required | ActionSelectionBehavior | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​requiredBehavior | Base | required | ActionRequiredBehavior | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​precheckBehavior | Base | required | ActionPrecheckBehavior | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​cardinalityBehavior | Base | required | ActionCardinalityBehavior | 📍3.0.2 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-1 | error | PlanDefinition | If the resource is contained in another resource, it SHALL NOT contain any narrative | `contained.text.empty()`
dom-2 | error | PlanDefinition | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | PlanDefinition | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource | `contained.where(('#'+id in %resource.descendants().reference).not()).empty()`
dom-4 | error | PlanDefinition | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() | (children().count() > id.count())`

This structure is derived from PlanDefinition

Summary

Mandatory: 1 element(1 nested mandatory element)
Must-Support: 2 elements

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
PlanDefinition |  | 0..* | PlanDefinition | The definition of a plan for a series of actions, independent of any specific patient or context
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of a Value Set or Concept Map.
experimental | ?!Σ | 0..1 | boolean | For testing purposes, not real usage
relatedArtifact | S | 1..* | RelatedArtifact | Related artifacts for the asset
action |  | 0..* | BackboneElement | Action defined by the plan
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
output | S | 1..* | DataRequirement | Output data definition
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
PlanDefinition.status | Base | required | PublicationStatus | 📍3.0.2 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-1 | error | PlanDefinition | If the resource is contained in another resource, it SHALL NOT contain any narrative | `contained.text.empty()`
dom-2 | error | PlanDefinition | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | PlanDefinition | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource | `contained.where(('#'+id in %resource.descendants().reference).not()).empty()`
dom-4 | error | PlanDefinition | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() | (children().count() > id.count())`

Differential View

This structure is derived from PlanDefinition

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
PlanDefinition |  | 0..* | PlanDefinition | The definition of a plan for a series of actions, independent of any specific patient or context
relatedArtifact | S | 1..* | RelatedArtifact | Related artifacts for the asset
action |  |  |  |
output | S | 1..* | DataRequirement | Output data definition
Documentation for this format

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
PlanDefinition |  | 0..* | PlanDefinition | The definition of a plan for a series of actions, independent of any specific patient or context
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: Common Languages (extensible): A human language.
Additional Bindings | Purpose
All Languages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
url | Σ | 0..1 | uri | Logical URI to reference this plan definition (globally unique)
identifier | Σ | 0..* | Identifier | Additional identifier for the plan definition
version | Σ | 0..1 | string | Business version of the plan definition
name | Σ | 0..1 | string | Name for this plan definition (computer friendly)
title | Σ | 0..1 | string | Name for this plan definition (human friendly)
type | Σ | 0..1 | CodeableConcept | order-set | protocol | eca-rule Binding: PlanDefinitionType (extensible): The type of PlanDefinition
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of a Value Set or Concept Map.
experimental | ?!Σ | 0..1 | boolean | For testing purposes, not real usage
date | Σ | 0..1 | dateTime | Date this was last changed
publisher | Σ | 0..1 | string | Name of the publisher (organization or individual)
description | Σ | 0..1 | markdown | Natural language description of the plan definition
purpose |  | 0..1 | markdown | Why this plan definition is defined
usage |  | 0..1 | string | Describes the clinical usage of the asset
approvalDate |  | 0..1 | date | When the plan definition was approved by publisher
lastReviewDate |  | 0..1 | date | When the plan definition was last reviewed
effectivePeriod | Σ | 0..1 | Period | When the plan definition is expected to be used
useContext | Σ | 0..* | UsageContext | Context the content is intended to support
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for plan definition (if applicable) Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use
topic |  | 0..* | CodeableConcept | E.g. Education, Treatment, Assessment, etc Binding: DefinitionTopic (example): High-level categorization of the definition, used for searching, sorting, and filtering
contributor |  | 0..* | Contributor | A content contributor
contact | Σ | 0..* | ContactDetail | Contact details for the publisher
copyright |  | 0..1 | markdown | Use and/or publishing restrictions
relatedArtifact | S | 1..* | RelatedArtifact | Related artifacts for the asset
library |  | 0..* | Reference(Library) | Logic used by the plan definition
goal |  | 0..* | BackboneElement | What the plan is trying to accomplish
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
category |  | 0..1 | CodeableConcept | E.g. Treatment, dietary, behavioral, etc Binding: GoalCategory (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: GoalPriority (preferred): Indicates the level of importance associated with reaching or sustaining a goal
start |  | 0..1 | CodeableConcept | When goal pursuit begins Binding: GoalStartEvent (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 | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
measure |  | 0..1 | CodeableConcept | The parameter whose value is to be tracked Binding: LOINC Codes (example): Identifies types of parameters that can be tracked to determine goal achievement
detail[x] |  | 0..1 |  | The target value to be achieved
detailQuantity |  |  | Quantity |
detailRange |  |  | Range |
detailCodeableConcept |  |  | CodeableConcept |
due |  | 0..1 | Duration | Reach goal within
action |  | 0..* | BackboneElement | Action defined by the plan
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
label |  | 0..1 | string | User-visible label for the action (e.g. 1. or A.)
title |  | 0..1 | string | User-visible title
description |  | 0..1 | string | Short description of the action
textEquivalent |  | 0..1 | string | Static text equivalent of the action, used if the dynamic aspects cannot be interpreted by the receiving system
code |  | 0..* | CodeableConcept | Code representing the meaning of the action or sub-actions
reason |  | 0..* | CodeableConcept | Why the action should be performed
documentation |  | 0..* | RelatedArtifact | Supporting documentation for the intended performer of the action
goalId |  | 0..* | id | What goals this action supports
triggerDefinition |  | 0..* | TriggerDefinition | When the action should be triggered
condition |  | 0..* | BackboneElement | Whether or not the action is applicable
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
kind |  | 1..1 | code | applicability | start | stop Binding: ActionConditionKind (required): Defines the kinds of conditions that can appear on actions
description |  | 0..1 | string | Natural language description of the condition
language |  | 0..1 | string | Language of the expression
expression |  | 0..1 | string | Boolean-valued expression
input |  | 0..* | DataRequirement | Input data requirements
output | S | 1..* | DataRequirement | Output data definition
relatedAction |  | 0..* | BackboneElement | Relationship to another action
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
actionId |  | 1..1 | id | What action is this related to
relationship |  | 1..1 | code | before-start | before | before-end | concurrent-with-start | concurrent | concurrent-with-end | after-start | after | after-end Binding: ActionRelationshipType (required): Defines the types of relationships between actions
offset[x] |  | 0..1 |  | Time offset for the relationship
offsetDuration |  |  | Duration |
offsetRange |  |  | Range |
timing[x] |  | 0..1 |  | When the action should take place
timingDateTime |  |  | dateTime |
timingPeriod |  |  | Period |
timingDuration |  |  | Duration |
timingRange |  |  | Range |
timingTiming |  |  | Timing |
participant |  | 0..* | BackboneElement | Who should participate in the action
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
type |  | 1..1 | code | patient | practitioner | related-person Binding: ActionParticipantType (required): The type of participant for the action
role |  | 0..1 | CodeableConcept | E.g. Nurse, Surgeon, Parent, etc Binding: ActionParticipantRole (example): Defines roles played by participants for the action
type |  | 0..1 | Coding | create | update | remove | fire-event Binding: ActionType (required): The type of action to be performed
groupingBehavior |  | 0..1 | code | visual-group | logical-group | sentence-group Binding: ActionGroupingBehavior (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 (required): Defines selection behavior of a group
requiredBehavior |  | 0..1 | code | must | could | must-unless-documented Binding: ActionRequiredBehavior (required): Defines requiredness behavior for selecting an action or an action group
precheckBehavior |  | 0..1 | code | yes | no Binding: ActionPrecheckBehavior (required): Defines selection frequency behavior for an action or group
cardinalityBehavior |  | 0..1 | code | single | multiple Binding: ActionCardinalityBehavior (required): Defines behavior for an action or a group for how many times that item may be repeated
definition |  | 0..1 | Reference(ActivityDefinition | PlanDefinition) | Description of the activity to be performed
transform |  | 0..1 | Reference(StructureMap) | Transform to apply the template
dynamicValue |  | 0..* | BackboneElement | Dynamic aspects of the definition
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
description |  | 0..1 | string | Natural language description of the dynamic value
path |  | 0..1 | string | The path to the element to be set dynamically
language |  | 0..1 | string | Language of the expression
expression |  | 0..1 | string | An expression that provides the dynamic value for the customization
action |  | 0..* | See action (PlanDefinition) | A sub-action
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
PlanDefinition.language | Base | extensible | Common Languages | 📍3.0.2 | FHIR Std.
PlanDefinition.type | Base | extensible | PlanDefinitionType | 📍3.0.2 | FHIR Std.
PlanDefinition.status | Base | required | PublicationStatus | 📍3.0.2 | FHIR Std.
PlanDefinition.jurisdiction | Base | extensible | Jurisdiction ValueSet | 📍3.0.2 | FHIR Std.
PlanDefinition.topic | Base | example | DefinitionTopic | 📍3.0.2 | FHIR Std.
PlanDefinition.goal.​category | Base | example | GoalCategory | 📍3.0.2 | FHIR Std.
PlanDefinition.goal.​description | Base | example | SNOMED CT Clinical Findings | 📍3.0.2 | FHIR Std.
PlanDefinition.goal.​priority | Base | preferred | GoalPriority | 📍3.0.2 | FHIR Std.
PlanDefinition.goal.​start | Base | example | GoalStartEvent | 📍3.0.2 | FHIR Std.
PlanDefinition.goal.​addresses | Base | example | Condition/Problem/Diagnosis Codes | 📍3.0.2 | FHIR Std.
PlanDefinition.goal.​target.measure | Base | example | LOINC Codes | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​condition.kind | Base | required | ActionConditionKind | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​relatedAction.relationship | Base | required | ActionRelationshipType | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​participant.type | Base | required | ActionParticipantType | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​participant.role | Base | example | ActionParticipantRole | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​type | Base | required | ActionType | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​groupingBehavior | Base | required | ActionGroupingBehavior | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​selectionBehavior | Base | required | ActionSelectionBehavior | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​requiredBehavior | Base | required | ActionRequiredBehavior | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​precheckBehavior | Base | required | ActionPrecheckBehavior | 📍3.0.2 | FHIR Std.
PlanDefinition.action.​cardinalityBehavior | Base | required | ActionCardinalityBehavior | 📍3.0.2 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-1 | error | PlanDefinition | If the resource is contained in another resource, it SHALL NOT contain any narrative | `contained.text.empty()`
dom-2 | error | PlanDefinition | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | PlanDefinition | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource | `contained.where(('#'+id in %resource.descendants().reference).not()).empty()`
dom-4 | error | PlanDefinition | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() | (children().count() > id.count())`

This structure is derived from PlanDefinition

Summary

Mandatory: 1 element(1 nested mandatory element)
Must-Support: 2 elements

Other representations of profile: CSV, Excel, Schematron