Skip to content

Deprecate resource types removed in FHIR R4B #3114

Closed
@lmsurpre

Description

Is your feature request related to a problem? Please describe.
Per #2065 our current thinking is to move to R4B wholesale via a 5.x series (and stop maintaining the 4.x series).
Its mostly backwards compatible, but there are major changes to Medication Definition resources as described at https://build.fhir.org/branches/R4B/ballot-intro.html#meddef

This includes removal (or renaming) of all the following resource types:

MedicinalProduct
MedicinalProductAuthorization
MedicinalProductContraindication
MedicinalProductIndication
MedicinalProductInteraction
MedicinalProductUndesireableEffect
MedicinalProductIngredient
MedicinalProductManufactured
MedicinalProductPackaged
MedicinalProductPharmaceutical
SubstanceNucleicAcid
SubstancePolymer
SubstanceProtein
SubstanceReferenceInformation
SubstanceSourceMaterial
SubstanceSpecification

as well as breaking changes to the Substance resource.

Describe the solution you'd like
To help warn users about the future removal of these immature R4 resource types, we'd like to:

  1. Mark the classes as deprecated in our next 4.x release; and
  2. Clearly indicate our plan to remove these resource types in the release; and
  3. Include a warning in the fhir-persistence-schema tool's output to indicate that the corresponding tables might go away at some point in the future (similar to what we did for the Resource and DomainResource tables); and

Optionally, we might also want to mark the corresponding values as deprecated in the corresponding code subtype classes:

  • FHIRAllTypes
  • FHIRDefinedType
  • FHIRResourceType
  • ResourceType

Describe alternatives you've considered

Acceptance Criteria

  1. GIVEN a 5.0.0-SNAPSHOT flavor of our schema tool
    WHEN you run --update-schema
    THEN the output warns you about the resource types that have been removed

Additional context

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions