ResMed Core Implementation Guide
0.37.0 - ci-build International flag

ResMed Core Implementation Guide - Local Development build (v0.37.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: ResMed Rule Set PlanDefinition

Official URL: http://resmed.com/fhir/core/StructureDefinition/rmd-ruleset-plan-definition Version: 0.37.0
Draft as of 2024-01-11 Computable Name: ResMedRuleSetPlanDefinition

An Organization Rule Set containing patient rules from a variety of ResMed sources

Usage:

Formal Views of Profile Content

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

This structure is derived from PlanDefinition

NameFlagsCard.TypeDescription & Constraintsdoco
.. PlanDefinition PlanDefinition
... Slices for extension 2..*ExtensionExtension
Slice: Unordered, Open by value:url
... owner 1..1Reference(Organization)Extension
URL: http://resmed.com/fhir/core/StructureDefinition/rmd-resource-owner-ext
... customisable 1..1booleanExtension
URL: http://resmed.com/fhir/core/StructureDefinition/rmd-plandefinition-modifiable-ext
... name 1..1stringName for this plan definition (computer friendly)
... type 1..1CodeableConceptorder-set | clinical-protocol | eca-rule | workflow-definition
Required Pattern: At least the following
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://terminology.resmed.com/CodeSystem/resmed-plandefinition-type-identifier
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: rule-set
... status 1..1codedraft | active | retired | unknown
Binding: ResMed PlanDefinition status ValueSet (required)
... date 1..1dateTimeDate last changed
... action 1..*BackboneElementAction defined by the plan
.... Slices for definition[x] 1..1canonical(ActivityDefinition | PlanDefinition | Questionnaire)Description of the activity to be performed
Slice: Unordered, Open by type:$this
..... definition[x]:definitionCanonical 1..1canonical(ActivityDefinition | PlanDefinition | Questionnaire)Description of the activity to be performed

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
PlanDefinition.statusrequiredResMedPlanDefinitionStatusValueSet
NameFlagsCard.TypeDescription & Constraintsdoco
.. PlanDefinition C0..*PlanDefinitionThe definition of a plan for a series of actions, independent of any specific patient or context
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... Slices for extension 2..*ExtensionExtension
Slice: Unordered, Open by value:url
... owner 1..1Reference(Organization)Extension
URL: http://resmed.com/fhir/core/StructureDefinition/rmd-resource-owner-ext
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... version Σ1..1stringBusiness version of the plan definition
... name ΣC1..1stringName for this plan definition (computer friendly)
... type Σ1..1CodeableConceptorder-set | clinical-protocol | eca-rule | workflow-definition
Binding: PlanDefinitionType (extensible): The type of PlanDefinition.


Required Pattern: At least the following
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://terminology.resmed.com/CodeSystem/resmed-plandefinition-type-identifier
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: rule-set
... status ?!Σ1..1codedraft | active | retired | unknown
Binding: ResMed PlanDefinition status ValueSet (required)
... date Σ1..1dateTimeDate last changed
... action 1..*BackboneElementAction defined by the plan
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... Slices for definition[x] 1..1canonical(ActivityDefinition | PlanDefinition | Questionnaire)Description of the activity to be performed
Slice: Unordered, Closed by type:$this
..... definition[x]:definitionCanonical 1..1canonical(ActivityDefinition | PlanDefinition | Questionnaire)Description of the activity to be performed

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
PlanDefinition.typeextensiblePattern: rule-set
PlanDefinition.statusrequiredResMedPlanDefinitionStatusValueSet

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorPlanDefinitionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPlanDefinitionIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorPlanDefinitionIf 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()
dom-5errorPlanDefinitionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePlanDefinitionA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
pdf-0warningPlanDefinitionName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
NameFlagsCard.TypeDescription & Constraintsdoco
.. PlanDefinition C0..*PlanDefinitionThe definition of a plan for a series of actions, independent of any specific patient or context
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 2..*ExtensionExtension
Slice: Unordered, Open by value:url
... owner 1..1Reference(Organization)Extension
URL: http://resmed.com/fhir/core/StructureDefinition/rmd-resource-owner-ext
... customisable 1..1booleanExtension
URL: http://resmed.com/fhir/core/StructureDefinition/rmd-plandefinition-modifiable-ext
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... url Σ0..1uriCanonical identifier for this plan definition, represented as a URI (globally unique)
... identifier Σ0..*IdentifierAdditional identifier for the plan definition
... version Σ1..1stringBusiness version of the plan definition
... name ΣC1..1stringName for this plan definition (computer friendly)
... title Σ0..1stringName for this plan definition (human friendly)
... subtitle 0..1stringSubordinate title of the plan definition
... type Σ1..1CodeableConceptorder-set | clinical-protocol | eca-rule | workflow-definition
Binding: PlanDefinitionType (extensible): The type of PlanDefinition.


Required Pattern: At least the following
.... id0..1stringUnique id for inter-element referencing
.... extension0..*ExtensionAdditional content defined by implementations
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... id0..1stringUnique id for inter-element referencing
..... extension0..*ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: http://terminology.resmed.com/CodeSystem/resmed-plandefinition-type-identifier
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: rule-set
..... display0..1stringRepresentation defined by the system
..... userSelected0..1booleanIf this coding was chosen directly by the user
.... text0..1stringPlain text representation of the concept
... status ?!Σ1..1codedraft | active | retired | unknown
Binding: ResMed PlanDefinition status ValueSet (required)
... experimental Σ0..1booleanFor testing purposes, not real usage
... subject[x] 0..1Type of individual the plan definition is focused on
Binding: SubjectType (extensible): The possible types of subjects for a plan definition (E.g. Patient, Practitioner, Organization, Location, etc.).

.... subjectCodeableConceptCodeableConcept
.... subjectReferenceReference(Group)
... date Σ1..1dateTimeDate last changed
... publisher Σ0..1stringName of the publisher (organization or individual)
... contact Σ0..*ContactDetailContact details for the publisher
... description Σ0..1markdownNatural language description of the plan definition
... useContext Σ0..*UsageContextThe context that the content is intended to support
... jurisdiction Σ0..*CodeableConceptIntended jurisdiction for plan definition (if applicable)
Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.


... purpose 0..1markdownWhy this plan definition is defined
... usage 0..1stringDescribes the clinical usage of the plan
... copyright 0..1markdownUse and/or publishing restrictions
... approvalDate 0..1dateWhen the plan definition was approved by publisher
... lastReviewDate 0..1dateWhen the plan definition was last reviewed
... effectivePeriod Σ0..1PeriodWhen the plan definition is expected to be used
... topic 0..*CodeableConceptE.g. Education, Treatment, Assessment
Binding: DefinitionTopic (example): High-level categorization of the definition, used for searching, sorting, and filtering.


... author 0..*ContactDetailWho authored the content
... editor 0..*ContactDetailWho edited the content
... reviewer 0..*ContactDetailWho reviewed the content
... endorser 0..*ContactDetailWho endorsed the content
... relatedArtifact 0..*RelatedArtifactAdditional documentation, citations
... library 0..*canonical(Library)Logic used by the plan definition
... goal 0..*BackboneElementWhat the plan is trying to accomplish
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... category 0..1CodeableConceptE.g. Treatment, dietary, behavioral
Binding: GoalCategory (example): Example codes for grouping goals for filtering or presentation.

.... description 1..1CodeableConceptCode or text describing the goal
Binding: SNOMEDCTClinicalFindings (example): Describes goals that can be achieved.

.... priority 0..1CodeableConcepthigh-priority | medium-priority | low-priority
Binding: GoalPriority (preferred): Indicates the level of importance associated with reaching or sustaining a goal.

.... start 0..1CodeableConceptWhen goal pursuit begins
Binding: GoalStartEvent (example): Identifies the types of events that might trigger the start of a goal.

.... addresses 0..*CodeableConceptWhat does the goal address
Binding: Condition/Problem/DiagnosisCodes (example): Identifies problems, conditions, issues, or concerns that goals may address.


.... documentation 0..*RelatedArtifactSupporting documentation for the goal
.... target 0..*BackboneElementTarget outcome for the goal
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... measure 0..1CodeableConceptThe parameter whose value is to be tracked
Binding: LOINCCodes (example): Identifies types of parameters that can be tracked to determine goal achievement.

..... detail[x] 0..1The target value to be achieved
...... detailQuantityQuantity
...... detailRangeRange
...... detailCodeableConceptCodeableConcept
..... due 0..1DurationReach goal within
... action 1..*BackboneElementAction defined by the plan
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... prefix 0..1stringUser-visible prefix for the action (e.g. 1. or A.)
.... title 0..1stringUser-visible title
.... description 0..1stringBrief description of the action
.... textEquivalent 0..1stringStatic text equivalent of the action, used if the dynamic aspects cannot be interpreted by the receiving system
.... priority 0..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.

.... code 0..*CodeableConceptCode representing the meaning of the action or sub-actions
.... reason 0..*CodeableConceptWhy the action should be performed
.... documentation 0..*RelatedArtifactSupporting documentation for the intended performer of the action
.... goalId 0..*idWhat goals this action supports
.... subject[x] 0..1Type of individual the action is focused on
Binding: SubjectType (extensible): The possible types of subjects for a plan definition (E.g. Patient, Practitioner, Organization, Location, etc.).

..... subjectCodeableConceptCodeableConcept
..... subjectReferenceReference(Group)
.... trigger 0..*TriggerDefinitionWhen the action should be triggered
.... condition 0..*BackboneElementWhether or not the action is applicable
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... kind 1..1codeapplicability | start | stop
Binding: ActionConditionKind (required): Defines the kinds of conditions that can appear on actions.

..... expression 0..1ExpressionBoolean-valued expression
.... input 0..*DataRequirementInput data requirements
.... output 0..*DataRequirementOutput data definition
.... relatedAction 0..*BackboneElementRelationship to another action
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... actionId 1..1idWhat action is this related to
..... relationship 1..1codebefore-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..1Time offset for the relationship
...... offsetDurationDuration
...... offsetRangeRange
.... timing[x] 0..1When the action should take place
..... timingDateTimedateTime
..... timingAgeAge
..... timingPeriodPeriod
..... timingDurationDuration
..... timingRangeRange
..... timingTimingTiming
.... participant 0..*BackboneElementWho should participate in the action
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... type 1..1codepatient | practitioner | related-person | device
Binding: ActionParticipantType (required): The type of participant for the action.

..... role 0..1CodeableConceptE.g. Nurse, Surgeon, Parent
Binding: ActionParticipantRole (example): Defines roles played by participants for the action.

.... type 0..1CodeableConceptcreate | update | remove | fire-event
Binding: ActionType (extensible): The type of action to be performed.

.... groupingBehavior 0..1codevisual-group | logical-group | sentence-group
Binding: ActionGroupingBehavior (required): Defines organization behavior of a group.

.... selectionBehavior 0..1codeany | all | all-or-none | exactly-one | at-most-one | one-or-more
Binding: ActionSelectionBehavior (required): Defines selection behavior of a group.

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

.... precheckBehavior 0..1codeyes | no
Binding: ActionPrecheckBehavior (required): Defines selection frequency behavior for an action or group.

.... cardinalityBehavior 0..1codesingle | multiple
Binding: ActionCardinalityBehavior (required): Defines behavior for an action or a group for how many times that item may be repeated.

.... Slices for definition[x] 1..1canonical(ActivityDefinition | PlanDefinition | Questionnaire)Description of the activity to be performed
Slice: Unordered, Closed by type:$this
..... definition[x]:definitionCanonical 1..1canonical(ActivityDefinition | PlanDefinition | Questionnaire)Description of the activity to be performed
.... transform 0..1canonical(StructureMap)Transform to apply the template
.... dynamicValue 0..*BackboneElementDynamic aspects of the definition
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... path 0..1stringThe path to the element to be set dynamically
..... expression 0..1ExpressionAn expression that provides the dynamic value for the customization
.... action 0..*See action (PlanDefinition)A sub-action

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
PlanDefinition.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
PlanDefinition.typeextensiblePattern: rule-set
PlanDefinition.statusrequiredResMedPlanDefinitionStatusValueSet
PlanDefinition.subject[x]extensibleSubjectType
PlanDefinition.jurisdictionextensibleJurisdiction ValueSet
PlanDefinition.topicexampleDefinitionTopic
PlanDefinition.goal.categoryexampleGoalCategory
PlanDefinition.goal.descriptionexampleSNOMEDCTClinicalFindings
PlanDefinition.goal.prioritypreferredGoalPriority
PlanDefinition.goal.startexampleGoalStartEvent
PlanDefinition.goal.addressesexampleCondition/Problem/DiagnosisCodes
PlanDefinition.goal.target.measureexampleLOINCCodes (a valid code from LOINC)
PlanDefinition.action.priorityrequiredRequestPriority
PlanDefinition.action.subject[x]extensibleSubjectType
PlanDefinition.action.condition.kindrequiredActionConditionKind
PlanDefinition.action.relatedAction.relationshiprequiredActionRelationshipType
PlanDefinition.action.participant.typerequiredActionParticipantType
PlanDefinition.action.participant.roleexampleActionParticipantRole
PlanDefinition.action.typeextensibleActionType
PlanDefinition.action.groupingBehaviorrequiredActionGroupingBehavior
PlanDefinition.action.selectionBehaviorrequiredActionSelectionBehavior
PlanDefinition.action.requiredBehaviorrequiredActionRequiredBehavior
PlanDefinition.action.precheckBehaviorrequiredActionPrecheckBehavior
PlanDefinition.action.cardinalityBehaviorrequiredActionCardinalityBehavior

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorPlanDefinitionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPlanDefinitionIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorPlanDefinitionIf 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()
dom-5errorPlanDefinitionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePlanDefinitionA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
pdf-0warningPlanDefinitionName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')

This structure is derived from PlanDefinition

Summary

Mandatory: 9 elements

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element PlanDefinition.action.definition[x] is sliced based on the value of type:$this

Differential View

This structure is derived from PlanDefinition

NameFlagsCard.TypeDescription & Constraintsdoco
.. PlanDefinition PlanDefinition
... Slices for extension 2..*ExtensionExtension
Slice: Unordered, Open by value:url
... owner 1..1Reference(Organization)Extension
URL: http://resmed.com/fhir/core/StructureDefinition/rmd-resource-owner-ext
... customisable 1..1booleanExtension
URL: http://resmed.com/fhir/core/StructureDefinition/rmd-plandefinition-modifiable-ext
... name 1..1stringName for this plan definition (computer friendly)
... type 1..1CodeableConceptorder-set | clinical-protocol | eca-rule | workflow-definition
Required Pattern: At least the following
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://terminology.resmed.com/CodeSystem/resmed-plandefinition-type-identifier
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: rule-set
... status 1..1codedraft | active | retired | unknown
Binding: ResMed PlanDefinition status ValueSet (required)
... date 1..1dateTimeDate last changed
... action 1..*BackboneElementAction defined by the plan
.... Slices for definition[x] 1..1canonical(ActivityDefinition | PlanDefinition | Questionnaire)Description of the activity to be performed
Slice: Unordered, Open by type:$this
..... definition[x]:definitionCanonical 1..1canonical(ActivityDefinition | PlanDefinition | Questionnaire)Description of the activity to be performed

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
PlanDefinition.statusrequiredResMedPlanDefinitionStatusValueSet

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. PlanDefinition C0..*PlanDefinitionThe definition of a plan for a series of actions, independent of any specific patient or context
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... Slices for extension 2..*ExtensionExtension
Slice: Unordered, Open by value:url
... owner 1..1Reference(Organization)Extension
URL: http://resmed.com/fhir/core/StructureDefinition/rmd-resource-owner-ext
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... version Σ1..1stringBusiness version of the plan definition
... name ΣC1..1stringName for this plan definition (computer friendly)
... type Σ1..1CodeableConceptorder-set | clinical-protocol | eca-rule | workflow-definition
Binding: PlanDefinitionType (extensible): The type of PlanDefinition.


Required Pattern: At least the following
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://terminology.resmed.com/CodeSystem/resmed-plandefinition-type-identifier
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: rule-set
... status ?!Σ1..1codedraft | active | retired | unknown
Binding: ResMed PlanDefinition status ValueSet (required)
... date Σ1..1dateTimeDate last changed
... action 1..*BackboneElementAction defined by the plan
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... Slices for definition[x] 1..1canonical(ActivityDefinition | PlanDefinition | Questionnaire)Description of the activity to be performed
Slice: Unordered, Closed by type:$this
..... definition[x]:definitionCanonical 1..1canonical(ActivityDefinition | PlanDefinition | Questionnaire)Description of the activity to be performed

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
PlanDefinition.typeextensiblePattern: rule-set
PlanDefinition.statusrequiredResMedPlanDefinitionStatusValueSet

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorPlanDefinitionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPlanDefinitionIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorPlanDefinitionIf 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()
dom-5errorPlanDefinitionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePlanDefinitionA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
pdf-0warningPlanDefinitionName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. PlanDefinition C0..*PlanDefinitionThe definition of a plan for a series of actions, independent of any specific patient or context
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 2..*ExtensionExtension
Slice: Unordered, Open by value:url
... owner 1..1Reference(Organization)Extension
URL: http://resmed.com/fhir/core/StructureDefinition/rmd-resource-owner-ext
... customisable 1..1booleanExtension
URL: http://resmed.com/fhir/core/StructureDefinition/rmd-plandefinition-modifiable-ext
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... url Σ0..1uriCanonical identifier for this plan definition, represented as a URI (globally unique)
... identifier Σ0..*IdentifierAdditional identifier for the plan definition
... version Σ1..1stringBusiness version of the plan definition
... name ΣC1..1stringName for this plan definition (computer friendly)
... title Σ0..1stringName for this plan definition (human friendly)
... subtitle 0..1stringSubordinate title of the plan definition
... type Σ1..1CodeableConceptorder-set | clinical-protocol | eca-rule | workflow-definition
Binding: PlanDefinitionType (extensible): The type of PlanDefinition.


Required Pattern: At least the following
.... id0..1stringUnique id for inter-element referencing
.... extension0..*ExtensionAdditional content defined by implementations
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... id0..1stringUnique id for inter-element referencing
..... extension0..*ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: http://terminology.resmed.com/CodeSystem/resmed-plandefinition-type-identifier
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: rule-set
..... display0..1stringRepresentation defined by the system
..... userSelected0..1booleanIf this coding was chosen directly by the user
.... text0..1stringPlain text representation of the concept
... status ?!Σ1..1codedraft | active | retired | unknown
Binding: ResMed PlanDefinition status ValueSet (required)
... experimental Σ0..1booleanFor testing purposes, not real usage
... subject[x] 0..1Type of individual the plan definition is focused on
Binding: SubjectType (extensible): The possible types of subjects for a plan definition (E.g. Patient, Practitioner, Organization, Location, etc.).

.... subjectCodeableConceptCodeableConcept
.... subjectReferenceReference(Group)
... date Σ1..1dateTimeDate last changed
... publisher Σ0..1stringName of the publisher (organization or individual)
... contact Σ0..*ContactDetailContact details for the publisher
... description Σ0..1markdownNatural language description of the plan definition
... useContext Σ0..*UsageContextThe context that the content is intended to support
... jurisdiction Σ0..*CodeableConceptIntended jurisdiction for plan definition (if applicable)
Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.


... purpose 0..1markdownWhy this plan definition is defined
... usage 0..1stringDescribes the clinical usage of the plan
... copyright 0..1markdownUse and/or publishing restrictions
... approvalDate 0..1dateWhen the plan definition was approved by publisher
... lastReviewDate 0..1dateWhen the plan definition was last reviewed
... effectivePeriod Σ0..1PeriodWhen the plan definition is expected to be used
... topic 0..*CodeableConceptE.g. Education, Treatment, Assessment
Binding: DefinitionTopic (example): High-level categorization of the definition, used for searching, sorting, and filtering.


... author 0..*ContactDetailWho authored the content
... editor 0..*ContactDetailWho edited the content
... reviewer 0..*ContactDetailWho reviewed the content
... endorser 0..*ContactDetailWho endorsed the content
... relatedArtifact 0..*RelatedArtifactAdditional documentation, citations
... library 0..*canonical(Library)Logic used by the plan definition
... goal 0..*BackboneElementWhat the plan is trying to accomplish
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... category 0..1CodeableConceptE.g. Treatment, dietary, behavioral
Binding: GoalCategory (example): Example codes for grouping goals for filtering or presentation.

.... description 1..1CodeableConceptCode or text describing the goal
Binding: SNOMEDCTClinicalFindings (example): Describes goals that can be achieved.

.... priority 0..1CodeableConcepthigh-priority | medium-priority | low-priority
Binding: GoalPriority (preferred): Indicates the level of importance associated with reaching or sustaining a goal.

.... start 0..1CodeableConceptWhen goal pursuit begins
Binding: GoalStartEvent (example): Identifies the types of events that might trigger the start of a goal.

.... addresses 0..*CodeableConceptWhat does the goal address
Binding: Condition/Problem/DiagnosisCodes (example): Identifies problems, conditions, issues, or concerns that goals may address.


.... documentation 0..*RelatedArtifactSupporting documentation for the goal
.... target 0..*BackboneElementTarget outcome for the goal
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... measure 0..1CodeableConceptThe parameter whose value is to be tracked
Binding: LOINCCodes (example): Identifies types of parameters that can be tracked to determine goal achievement.

..... detail[x] 0..1The target value to be achieved
...... detailQuantityQuantity
...... detailRangeRange
...... detailCodeableConceptCodeableConcept
..... due 0..1DurationReach goal within
... action 1..*BackboneElementAction defined by the plan
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... prefix 0..1stringUser-visible prefix for the action (e.g. 1. or A.)
.... title 0..1stringUser-visible title
.... description 0..1stringBrief description of the action
.... textEquivalent 0..1stringStatic text equivalent of the action, used if the dynamic aspects cannot be interpreted by the receiving system
.... priority 0..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.

.... code 0..*CodeableConceptCode representing the meaning of the action or sub-actions
.... reason 0..*CodeableConceptWhy the action should be performed
.... documentation 0..*RelatedArtifactSupporting documentation for the intended performer of the action
.... goalId 0..*idWhat goals this action supports
.... subject[x] 0..1Type of individual the action is focused on
Binding: SubjectType (extensible): The possible types of subjects for a plan definition (E.g. Patient, Practitioner, Organization, Location, etc.).

..... subjectCodeableConceptCodeableConcept
..... subjectReferenceReference(Group)
.... trigger 0..*TriggerDefinitionWhen the action should be triggered
.... condition 0..*BackboneElementWhether or not the action is applicable
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... kind 1..1codeapplicability | start | stop
Binding: ActionConditionKind (required): Defines the kinds of conditions that can appear on actions.

..... expression 0..1ExpressionBoolean-valued expression
.... input 0..*DataRequirementInput data requirements
.... output 0..*DataRequirementOutput data definition
.... relatedAction 0..*BackboneElementRelationship to another action
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... actionId 1..1idWhat action is this related to
..... relationship 1..1codebefore-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..1Time offset for the relationship
...... offsetDurationDuration
...... offsetRangeRange
.... timing[x] 0..1When the action should take place
..... timingDateTimedateTime
..... timingAgeAge
..... timingPeriodPeriod
..... timingDurationDuration
..... timingRangeRange
..... timingTimingTiming
.... participant 0..*BackboneElementWho should participate in the action
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... type 1..1codepatient | practitioner | related-person | device
Binding: ActionParticipantType (required): The type of participant for the action.

..... role 0..1CodeableConceptE.g. Nurse, Surgeon, Parent
Binding: ActionParticipantRole (example): Defines roles played by participants for the action.

.... type 0..1CodeableConceptcreate | update | remove | fire-event
Binding: ActionType (extensible): The type of action to be performed.

.... groupingBehavior 0..1codevisual-group | logical-group | sentence-group
Binding: ActionGroupingBehavior (required): Defines organization behavior of a group.

.... selectionBehavior 0..1codeany | all | all-or-none | exactly-one | at-most-one | one-or-more
Binding: ActionSelectionBehavior (required): Defines selection behavior of a group.

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

.... precheckBehavior 0..1codeyes | no
Binding: ActionPrecheckBehavior (required): Defines selection frequency behavior for an action or group.

.... cardinalityBehavior 0..1codesingle | multiple
Binding: ActionCardinalityBehavior (required): Defines behavior for an action or a group for how many times that item may be repeated.

.... Slices for definition[x] 1..1canonical(ActivityDefinition | PlanDefinition | Questionnaire)Description of the activity to be performed
Slice: Unordered, Closed by type:$this
..... definition[x]:definitionCanonical 1..1canonical(ActivityDefinition | PlanDefinition | Questionnaire)Description of the activity to be performed
.... transform 0..1canonical(StructureMap)Transform to apply the template
.... dynamicValue 0..*BackboneElementDynamic aspects of the definition
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... path 0..1stringThe path to the element to be set dynamically
..... expression 0..1ExpressionAn expression that provides the dynamic value for the customization
.... action 0..*See action (PlanDefinition)A sub-action

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
PlanDefinition.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
PlanDefinition.typeextensiblePattern: rule-set
PlanDefinition.statusrequiredResMedPlanDefinitionStatusValueSet
PlanDefinition.subject[x]extensibleSubjectType
PlanDefinition.jurisdictionextensibleJurisdiction ValueSet
PlanDefinition.topicexampleDefinitionTopic
PlanDefinition.goal.categoryexampleGoalCategory
PlanDefinition.goal.descriptionexampleSNOMEDCTClinicalFindings
PlanDefinition.goal.prioritypreferredGoalPriority
PlanDefinition.goal.startexampleGoalStartEvent
PlanDefinition.goal.addressesexampleCondition/Problem/DiagnosisCodes
PlanDefinition.goal.target.measureexampleLOINCCodes (a valid code from LOINC)
PlanDefinition.action.priorityrequiredRequestPriority
PlanDefinition.action.subject[x]extensibleSubjectType
PlanDefinition.action.condition.kindrequiredActionConditionKind
PlanDefinition.action.relatedAction.relationshiprequiredActionRelationshipType
PlanDefinition.action.participant.typerequiredActionParticipantType
PlanDefinition.action.participant.roleexampleActionParticipantRole
PlanDefinition.action.typeextensibleActionType
PlanDefinition.action.groupingBehaviorrequiredActionGroupingBehavior
PlanDefinition.action.selectionBehaviorrequiredActionSelectionBehavior
PlanDefinition.action.requiredBehaviorrequiredActionRequiredBehavior
PlanDefinition.action.precheckBehaviorrequiredActionPrecheckBehavior
PlanDefinition.action.cardinalityBehaviorrequiredActionCardinalityBehavior

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorPlanDefinitionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPlanDefinitionIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorPlanDefinitionIf 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()
dom-5errorPlanDefinitionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePlanDefinitionA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
pdf-0warningPlanDefinitionName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')

This structure is derived from PlanDefinition

Summary

Mandatory: 9 elements

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element PlanDefinition.action.definition[x] is sliced based on the value of type:$this

 

Other representations of profile: CSV, Excel, Schematron