-
Type:
Change Request
-
Resolution: Not Persuasive
-
Priority:
Medium
-
FHIR Core (FHIR)
-
R5
-
FHIR Infrastructure
-
ValueSet
-
(many)
-
-
Christiaan Knaap/Chandrakant Bhoslay: 13-0-1
The status "Deprecated" means the object is "usable" (IE: can be considered "active") but is to be avoided, is currently or likely soon to be superseded and is expected to be made inactive in the future.
ValueSets need to support this publication status because as usable collections they can exist and be considered "Active" but may be superseded by another active value set for current use. In addition we are finding, particularly in VSAC, that value sets become "orphaned" and are no longer maintained but are the current active value set. CMS and NLM plan to designate these value sets with a status of "Deprecated" to indicate while currently active, the use is discouraged and may be soon superseded. As such, this status is a core publication status and needs to be integrated within the required set of basic status values.
This status is already in use within FHIR for concepts (but not using the same value set or approach) and through the use of provenance resource can represented for other resources. Similarly it could be possible to create an extension to represent this as a boolean but these solutions for a key publication status would require substantial program modifications and result in potential misuse with basic value set GET functionality. This approach is not appropriate for something this basic.
We propose that we add the concept "Deprecated" to the PublicationStatus code system. We are interested in input regarding if there is value in making Deprecated a child of Active in the code system. I do not think this adds value and may be counterproductive. We are unaware of any other value sets that use this code system, but if we can determine this and find others that have a CLD of "all codes in codes system" we would do the same change there.
We then create a new version of the PublicationStatus valueSet, changing the CLD to be an enumerated list of the current four concepts. In this way the existing use of this required value set is unchanged for all current resources.
Then we create a completely new value set, name to be determined but perhaps something like "PublicationStatusWithDep" that would likely best be defined as the enumeration of all the codes including deprecated. We would bind this value set Required to the valueSet.status in R5. We can also publish a conceptMap that maps Deprecated to Active for backwards computability.