description: This resource allows for the definition of various types of plans as a sharable, consumable, and executable artifact. The resource is general enough to support the description of a broad range of clinical and non-clinical artifacts such as clinical decision support rules, order sets, protocols, and drug quality specifications. package_name: hl7.fhir.r5.core derivation: specialization name: PlanDefinition type: PlanDefinition elements: description: {isModifier: false, short: Natural language description of the plan definition, type: markdown, mustSupport: false, isSummary: true, index: 17} date: {isModifier: false, short: Date last changed, type: dateTime, mustSupport: false, isSummary: true, index: 14} endorser: {isModifier: false, short: Who endorsed the content, type: ContactDetail, mustSupport: false, array: true, isSummary: false, index: 30} publisher: {isModifier: false, short: Name of the publisher (organization or individual), type: string, mustSupport: false, isSummary: true, index: 15} approvalDate: {isModifier: false, short: When the plan definition was approved by publisher, type: date, mustSupport: false, isSummary: false, index: 23} jurisdiction: isModifier: false short: Intended jurisdiction for plan definition (if applicable) type: CodeableConcept mustSupport: false array: true binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/ValueSet/jurisdiction'} isSummary: true index: 19 purpose: {isModifier: false, short: Why this plan definition is defined, type: markdown, mustSupport: false, isSummary: false, index: 20} subjectCodeableConcept: {isModifier: false, short: Type of individual the plan definition is focused on, type: CodeableConcept, mustSupport: false, meaningWhenMissing: Patient, choiceOf: subject, isSummary: false, index: 11} name: {isModifier: false, short: Name for this plan definition (computer friendly), type: string, mustSupport: false, isSummary: true, index: 3} useContext: {isModifier: false, short: The context that the content is intended to support, type: UsageContext, mustSupport: false, array: true, isSummary: true, index: 18} goal: isModifier: false short: What the plan is trying to accomplish index: 33 type: BackboneElement mustSupport: false array: true elements: category: isModifier: false short: E.g. Treatment, dietary, behavioral type: CodeableConcept mustSupport: false binding: {strength: example, valueSet: 'http://hl7.org/fhir/ValueSet/goal-category'} isSummary: false index: 34 description: isModifier: false short: Code or text describing the goal type: CodeableConcept mustSupport: false binding: {strength: example, valueSet: 'http://hl7.org/fhir/ValueSet/clinical-findings'} isSummary: false index: 35 priority: isModifier: false short: high-priority | medium-priority | low-priority type: CodeableConcept mustSupport: false binding: {strength: preferred, valueSet: 'http://hl7.org/fhir/ValueSet/goal-priority'} isSummary: false index: 36 start: isModifier: false short: When goal pursuit begins type: CodeableConcept mustSupport: false binding: {strength: example, valueSet: 'http://hl7.org/fhir/ValueSet/goal-start-event'} isSummary: false index: 37 addresses: isModifier: false short: What does the goal address type: CodeableConcept mustSupport: false array: true binding: {strength: example, valueSet: 'http://hl7.org/fhir/ValueSet/condition-code'} isSummary: false index: 38 documentation: {isModifier: false, short: Supporting documentation for the goal, type: RelatedArtifact, mustSupport: false, array: true, isSummary: false, index: 39} target: isModifier: false short: Target outcome for the goal type: BackboneElement mustSupport: false array: true isSummary: false index: 40 elements: detailRange: {isModifier: false, short: The target value to be achieved, type: Range, mustSupport: false, choiceOf: detail, isSummary: false, index: 45} detailQuantity: {isModifier: false, short: The target value to be achieved, type: Quantity, mustSupport: false, choiceOf: detail, isSummary: false, index: 44} detailInteger: {isModifier: false, short: The target value to be achieved, type: integer, mustSupport: false, choiceOf: detail, isSummary: false, index: 49} detailString: {isModifier: false, short: The target value to be achieved, type: string, mustSupport: false, choiceOf: detail, isSummary: false, index: 47} measure: isModifier: false short: The parameter whose value is to be tracked type: CodeableConcept mustSupport: false binding: {strength: example, valueSet: 'http://hl7.org/fhir/ValueSet/observation-codes'} isSummary: false index: 41 due: {isModifier: false, short: Reach goal within, type: Duration, mustSupport: false, isSummary: false, index: 51} detailRatio: {isModifier: false, short: The target value to be achieved, type: Ratio, mustSupport: false, choiceOf: detail, isSummary: false, index: 50} detailCodeableConcept: {isModifier: false, short: The target value to be achieved, type: CodeableConcept, mustSupport: false, choiceOf: detail, isSummary: false, index: 46} detailBoolean: {isModifier: false, short: The target value to be achieved, type: boolean, mustSupport: false, choiceOf: detail, isSummary: false, index: 48} detail: isModifier: false short: The target value to be achieved mustSupport: false choices: [detailQuantity, detailRange, detailCodeableConcept, detailString, detailBoolean, detailInteger, detailRatio] isSummary: false index: 43 required: [description] isSummary: false copyright: {isModifier: false, short: Use and/or publishing restrictions, type: markdown, mustSupport: false, isSummary: false, index: 22} type: isModifier: false short: order-set | clinical-protocol | eca-rule | workflow-definition type: CodeableConcept mustSupport: false binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/ValueSet/plan-definition-type'} isSummary: true index: 6 experimental: {isModifier: false, short: 'For testing purposes, not real usage', type: boolean, mustSupport: false, isSummary: true, index: 8} topic: isModifier: false short: E.g. Education, Treatment, Assessment type: CodeableConcept mustSupport: false array: true binding: {strength: example, valueSet: 'http://hl7.org/fhir/ValueSet/definition-topic'} isSummary: false index: 26 title: {isModifier: false, short: Name for this plan definition (human friendly), type: string, mustSupport: false, isSummary: true, index: 4} library: {isModifier: false, short: Logic used by the plan definition, type: canonical, mustSupport: false, array: true, isSummary: false, index: 32} author: {isModifier: false, short: Who authored the content, type: ContactDetail, mustSupport: false, array: true, isSummary: false, index: 27} usage: {isModifier: false, short: Describes the clinical usage of the plan, type: string, mustSupport: false, isSummary: false, index: 21} status: isModifier: true short: draft | active | retired | unknown index: 7 type: code mustSupport: false binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/publication-status|5.0.0-snapshot1'} isModifierReason: This is labeled as "Is Modifier" because applications should not use a retired {{title}} without due consideration isSummary: true subtitle: {isModifier: false, short: Subordinate title of the plan definition, type: string, mustSupport: false, isSummary: false, index: 5} url: {isModifier: false, short: 'Canonical identifier for this plan definition, represented as a URI (globally unique)', type: uri, mustSupport: false, isSummary: true, index: 0} identifier: {isModifier: false, short: Additional identifier for the plan definition, type: Identifier, mustSupport: false, array: true, isSummary: true, index: 1} lastReviewDate: {isModifier: false, short: When the plan definition was last reviewed, type: date, mustSupport: false, isSummary: false, index: 24} editor: {isModifier: false, short: Who edited the content, type: ContactDetail, mustSupport: false, array: true, isSummary: false, index: 28} action: isModifier: false short: Action defined by the plan type: BackboneElement mustSupport: false array: true isSummary: false index: 59 elements: timingRange: {isModifier: false, short: When the action should take place, type: Range, mustSupport: false, choiceOf: timing, isSummary: false, index: 98} description: {isModifier: false, short: Brief description of the action, type: string, mustSupport: false, isSummary: false, index: 63} definition: isModifier: false short: Description of the activity to be performed mustSupport: false choices: [definitionCanonical, definitionUri] isSummary: false index: 114 linkId: {isModifier: false, short: Unique id for the action in the PlanDefinition, type: string, mustSupport: false, isSummary: false, index: 60} transform: {isModifier: false, short: Transform to apply the template, type: canonical, mustSupport: false, isSummary: false, index: 117} textEquivalent: {isModifier: false, short: 'Static text equivalent of the action, used if the dynamic aspects cannot be interpreted by the receiving system', type: string, mustSupport: false, isSummary: false, index: 64} definitionUri: {isModifier: false, short: Description of the activity to be performed, type: uri, mustSupport: false, choiceOf: definition, isSummary: false, index: 116} goalId: {isModifier: false, short: What goals this action supports, type: id, mustSupport: false, array: true, isSummary: false, index: 69} subjectCodeableConcept: {isModifier: false, short: Type of individual the action is focused on, type: CodeableConcept, mustSupport: false, meaningWhenMissing: Patient, choiceOf: subject, isSummary: false, index: 72} definitionCanonical: {isModifier: false, short: Description of the activity to be performed, type: canonical, mustSupport: false, choiceOf: definition, isSummary: false, index: 115} relatedAction: isModifier: false short: Relationship to another action index: 87 type: BackboneElement mustSupport: false array: true elements: targetId: {isModifier: false, short: What action is this related to, type: id, mustSupport: false, isSummary: false, index: 88} relationship: isModifier: false short: before-start | before | before-end | concurrent-with-start | concurrent | concurrent-with-end | after-start | after | after-end type: code mustSupport: false binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/action-relationship-type|5.0.0-snapshot1'} isSummary: false index: 89 offset: isModifier: false short: Time offset for the relationship mustSupport: false choices: [offsetDuration, offsetRange] isSummary: false index: 91 offsetDuration: {isModifier: false, short: Time offset for the relationship, type: Duration, mustSupport: false, choiceOf: offset, isSummary: false, index: 92} offsetRange: {isModifier: false, short: Time offset for the relationship, type: Range, mustSupport: false, choiceOf: offset, isSummary: false, index: 93} required: [targetId, relationship] isSummary: false type: isModifier: false short: create | update | remove | fire-event type: CodeableConcept mustSupport: false binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/ValueSet/action-type'} isSummary: false index: 107 participant: isModifier: false short: Who should participate in the action type: BackboneElement mustSupport: false array: true isSummary: false index: 101 elements: actorId: {isModifier: false, short: What actor, type: string, mustSupport: false, isSummary: false, index: 102} type: isModifier: false short: careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson type: code mustSupport: false binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/action-participant-type|5.0.0-snapshot1'} isSummary: false index: 103 typeReference: isModifier: false short: Who or what can participate refers: ['http://hl7.org/fhir/StructureDefinition/CareTeam', 'http://hl7.org/fhir/StructureDefinition/Device', 'http://hl7.org/fhir/StructureDefinition/Group', 'http://hl7.org/fhir/StructureDefinition/HealthcareService', 'http://hl7.org/fhir/StructureDefinition/Location', 'http://hl7.org/fhir/StructureDefinition/Organization', 'http://hl7.org/fhir/StructureDefinition/Patient', 'http://hl7.org/fhir/StructureDefinition/Practitioner', 'http://hl7.org/fhir/StructureDefinition/PractitionerRole', 'http://hl7.org/fhir/StructureDefinition/RelatedPerson'] type: Reference mustSupport: false isSummary: false index: 104 role: isModifier: false short: E.g. Nurse, Surgeon, Parent type: CodeableConcept mustSupport: false binding: {strength: example, valueSet: 'http://terminology.hl7.org/ValueSet/action-participant-role'} isSummary: false index: 105 function: isModifier: false short: E.g. Author, Reviewer, Witness, etc. type: CodeableConcept mustSupport: false binding: {strength: example, valueSet: 'http://hl7.org/fhir/ValueSet/action-participant-function'} isSummary: false index: 106 output: constraint: pld-1: {human: 'Output data element must have a requirement or a relatedData, but not both', source: 'http://hl7.org/fhir/StructureDefinition/PlanDefinition', severity: error, expression: requirement.exists() xor relatedData.exists()} isModifier: false short: Output data definition index: 83 type: BackboneElement mustSupport: false array: true elements: title: {isModifier: false, short: User-visible title, type: string, mustSupport: false, isSummary: false, index: 84} requirement: {isModifier: false, short: What data is provided, type: DataRequirement, mustSupport: false, isSummary: false, index: 85} relatedData: {isModifier: false, short: What data is provided, type: string, mustSupport: false, isSummary: false, index: 86} isSummary: false title: {isModifier: false, short: User-visible title, type: string, mustSupport: false, isSummary: false, index: 62} documentation: {isModifier: false, short: Supporting documentation for the intended performer of the action, type: RelatedArtifact, mustSupport: false, array: true, isSummary: false, index: 68} prefix: {isModifier: false, short: User-visible prefix for the action (e.g. 1. or A.), type: string, mustSupport: false, isSummary: false, index: 61} selectionBehavior: isModifier: false short: any | all | all-or-none | exactly-one | at-most-one | one-or-more type: code mustSupport: false binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/action-selection-behavior|5.0.0-snapshot1'} isSummary: false index: 109 reason: isModifier: false short: Why the action should be performed type: CodeableConcept mustSupport: false array: true binding: {strength: example, valueSet: 'http://hl7.org/fhir/ValueSet/action-reason-code'} isSummary: false index: 67 timingTiming: {isModifier: false, short: When the action should take place, type: Timing, mustSupport: false, choiceOf: timing, isSummary: false, index: 99} timingDuration: {isModifier: false, short: When the action should take place, type: Duration, mustSupport: false, choiceOf: timing, isSummary: false, index: 97} priority: isModifier: false short: routine | urgent | asap | stat type: code mustSupport: false binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/request-priority|5.0.0-snapshot1'} isSummary: false index: 65 requiredBehavior: isModifier: false short: must | could | must-unless-documented type: code mustSupport: false binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/action-required-behavior|5.0.0-snapshot1'} isSummary: false index: 110 condition: isModifier: false short: Whether or not the action is applicable index: 76 type: BackboneElement mustSupport: false array: true elements: kind: isModifier: false short: applicability | start | stop type: code mustSupport: false binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/action-condition-kind|5.0.0-snapshot1'} isSummary: false index: 77 expression: {isModifier: false, short: Boolean-valued expression, type: Expression, mustSupport: false, isSummary: false, index: 78} required: [kind] isSummary: false timing: isModifier: false short: When the action should take place mustSupport: false choices: [timingAge, timingDuration, timingRange, timingTiming] isSummary: false index: 95 groupingBehavior: isModifier: false short: visual-group | logical-group | sentence-group type: code mustSupport: false binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/action-grouping-behavior|5.0.0-snapshot1'} isSummary: false index: 108 dynamicValue: isModifier: false short: Dynamic aspects of the definition type: BackboneElement mustSupport: false array: true isSummary: false index: 118 elements: path: {isModifier: false, short: The path to the element to be set dynamically, type: string, mustSupport: false, isSummary: false, index: 119} expression: {isModifier: false, short: An expression that provides the dynamic value for the customization, type: Expression, mustSupport: false, isSummary: false, index: 120} code: isModifier: false short: Code representing the meaning of the action or sub-actions type: CodeableConcept mustSupport: false binding: {strength: example, valueSet: 'http://hl7.org/fhir/ValueSet/action-code'} isSummary: false index: 66 timingAge: {isModifier: false, short: When the action should take place, type: Age, mustSupport: false, choiceOf: timing, isSummary: false, index: 96} action: elementReference: ['http://hl7.org/fhir/StructureDefinition/PlanDefinition', elements, action] isModifier: false short: A sub-action mustSupport: false array: true isSummary: false index: 121 precheckBehavior: isModifier: false short: yes | no type: code mustSupport: false binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/action-precheck-behavior|5.0.0-snapshot1'} isSummary: false index: 111 input: constraint: pld-0: {human: 'Input data elements must have a requirement or a relatedData, but not both', source: 'http://hl7.org/fhir/StructureDefinition/PlanDefinition', severity: error, expression: requirement.exists() xor relatedData.exists()} isModifier: false short: Input data requirements index: 79 type: BackboneElement mustSupport: false array: true elements: title: {isModifier: false, short: User-visible title, type: string, mustSupport: false, isSummary: false, index: 80} requirement: {isModifier: false, short: What data is provided, type: DataRequirement, mustSupport: false, isSummary: false, index: 81} relatedData: {isModifier: false, short: What data is provided, type: id, mustSupport: false, isSummary: false, index: 82} isSummary: false subjectCanonical: {isModifier: false, short: Type of individual the action is focused on, type: canonical, mustSupport: false, meaningWhenMissing: Patient, choiceOf: subject, isSummary: false, index: 74} trigger: {isModifier: false, short: When the action should be triggered, type: TriggerDefinition, mustSupport: false, array: true, isSummary: false, index: 75} location: {isModifier: false, short: Where it should happen, type: CodeableReference, mustSupport: false, isSummary: false, index: 100} subjectReference: isModifier: false short: Type of individual the action is focused on index: 73 refers: ['http://hl7.org/fhir/StructureDefinition/Group'] type: Reference mustSupport: false meaningWhenMissing: Patient choiceOf: subject isSummary: false subject: isModifier: false short: Type of individual the action is focused on mustSupport: false choices: [subjectCodeableConcept, subjectReference, subjectCanonical] meaningWhenMissing: Patient isSummary: false index: 71 cardinalityBehavior: isModifier: false short: single | multiple type: code mustSupport: false binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/action-cardinality-behavior|5.0.0-snapshot1'} isSummary: false index: 112 subjectCanonical: {isModifier: false, short: Type of individual the plan definition is focused on, type: canonical, mustSupport: false, meaningWhenMissing: Patient, choiceOf: subject, isSummary: false, index: 13} reviewer: {isModifier: false, short: Who reviewed the content, type: ContactDetail, mustSupport: false, array: true, isSummary: false, index: 29} version: {isModifier: false, short: Business version of the plan definition, type: string, mustSupport: false, isSummary: true, index: 2} relatedArtifact: {isModifier: false, short: 'Additional documentation, citations', type: RelatedArtifact, mustSupport: false, array: true, isSummary: false, index: 31} contact: {isModifier: false, short: Contact details for the publisher, type: ContactDetail, mustSupport: false, array: true, isSummary: true, index: 16} subjectReference: isModifier: false short: Type of individual the plan definition is focused on index: 12 refers: ['http://hl7.org/fhir/StructureDefinition/Group'] type: Reference mustSupport: false meaningWhenMissing: Patient choiceOf: subject isSummary: false subject: isModifier: false short: Type of individual the plan definition is focused on mustSupport: false choices: [subjectCodeableConcept, subjectReference, subjectCanonical] meaningWhenMissing: Patient isSummary: false index: 10 effectivePeriod: {isModifier: false, short: When the plan definition is expected to be used, type: Period, mustSupport: false, isSummary: true, index: 25} actor: isModifier: false short: Actors within the plan index: 52 type: BackboneElement mustSupport: false array: true elements: title: {isModifier: false, short: User-visible title, type: string, mustSupport: false, isSummary: false, index: 53} description: {isModifier: false, short: Describes the actor, type: markdown, mustSupport: false, isSummary: false, index: 54} option: min: 1 isModifier: false short: Who or what can be this actor index: 55 type: BackboneElement mustSupport: false array: true elements: type: isModifier: false short: careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson type: code mustSupport: false binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/action-participant-type|5.0.0-snapshot1'} isSummary: false index: 56 typeReference: isModifier: false short: Who or what can participate refers: ['http://hl7.org/fhir/StructureDefinition/CareTeam', 'http://hl7.org/fhir/StructureDefinition/Device', 'http://hl7.org/fhir/StructureDefinition/Group', 'http://hl7.org/fhir/StructureDefinition/HealthcareService', 'http://hl7.org/fhir/StructureDefinition/Location', 'http://hl7.org/fhir/StructureDefinition/Organization', 'http://hl7.org/fhir/StructureDefinition/Patient', 'http://hl7.org/fhir/StructureDefinition/Practitioner', 'http://hl7.org/fhir/StructureDefinition/PractitionerRole', 'http://hl7.org/fhir/StructureDefinition/RelatedPerson'] type: Reference mustSupport: false isSummary: false index: 57 role: isModifier: false short: E.g. Nurse, Surgeon, Parent type: CodeableConcept mustSupport: false binding: {strength: example, valueSet: 'http://terminology.hl7.org/ValueSet/action-participant-role'} isSummary: false index: 58 isSummary: false required: [option] isSummary: false package_version: 5.0.0-snapshot1 class: resource kind: resource url: http://hl7.org/fhir/StructureDefinition/PlanDefinition base: http://hl7.org/fhir/StructureDefinition/MetadataResource version: 5.0.0-snapshot1 required: [status]