Use of reference for planDefinition in carePlan need to be added back.

XMLWordPrintableJSON

    • Type: Change Request
    • Resolution: Not Persuasive
    • Priority: Very High
    • FHIR Core (FHIR)
    • STU3
    • Patient Care
    • CarePlan
    • Hide

      There is now an instantiatesCanonical and instantiatesUri. The former is when we have a tight reference to another resource and want to be able to resolve it. The latter is to point to a PDF, web page or other non-FHIR source. We use canonical rather than reference because we want to be able to reference the resource independent of what server it lives on and we want to be able to reference it in a version-specific way. However, the behavior that you're looking for around resolution, _include, etc. will all work the same with canonical as it did with Reference.

      Show
      There is now an instantiatesCanonical and instantiatesUri. The former is when we have a tight reference to another resource and want to be able to resolve it. The latter is to point to a PDF, web page or other non-FHIR source. We use canonical rather than reference because we want to be able to reference the resource independent of what server it lives on and we want to be able to reference it in a version-specific way. However, the behavior that you're looking for around resolution, _include, etc. will all work the same with canonical as it did with Reference.
    • Dave/Tom: 8-0-1
    • Enhancement

      Previously, CarePlan.definition was Reference(PlanDefinition|Questionnaire), which means that the references were done using PlanDefinition.id or Questionnaire.id.

      Now, CarePlan.instantiates as a uri, which means that the references would be using the PlanDefinition.url or Questionnaire.url.

      Agreement that CarePlan.instantiates is analogous to PlanDefinition.url as they are the references to the protocol or guideline on which the details of the resource are based, however there is a distinction between this value and the way CarePlan.definition was used previously. CarePlan.definition served as a pointer to the definition resource used to generate the CarePlan from the $apply operation. In that regard, it is more like the CarePlan.basedOn or CarePlan.partOf elements and as such should remain in CarePlan as a Reference. Not having the Reference breaks the linkage to the PlanDefinition and replaces it with an uncertain reference (i.e. select the PlanDefinitions whose PlanDefinition.url is equal to CarePlan.instantiates, which could reference multiple PlanDefinitions). Further, the change in CarePlan makes the documentation in PlanDefinition somewhat confusing, as it's still based on the old CarePlan.definition.

      The same situation is present in the CarePlan.activity.detail.instantiates element - the link between the element and the ActivityDefinition used to generate it has been lost.

      I can see having both CarePlan.instantiates and CarePlan.definition in the CarePlan resource. They're complimentary values and can be used to support two different workflows - the PlanDefinition template used to generate the CarePlan, and/or the guideline on which the CarePlan is based.

            Assignee:
            Unassigned
            Reporter:
            Jeffrey Danford
            Jeffrey Danford
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: