Stream: implementers
Topic: Constraining Required value sets
Martin Grundberg (Apr 15 2020 at 09:10):
Does anyone know whether it is possible to constrain the available options for a code element that has a required value set?
Here is an example, assume you do not supported "preliminary":
image.png
It does seem like it is possible when checking the documentation on Requiered:
"When an element is bound to a required value set, derived profiles may state rules on which codes can be used, including removing codes from allowed use, but cannot specify new or additional codes for these elements."
So I guess the question is, how do you do it? :)
Jose Costa Teixeira (Apr 15 2020 at 09:28):
I don't know if there is another way but I would just declare a new value set that contains a subset of those values.
Martin Grundberg (Apr 15 2020 at 09:41):
Is that allowed? I thought Required means you have to use that value set?
Jose Costa Teixeira (Apr 15 2020 at 10:08):
http://build.fhir.org/terminologies.html#required
My reading is that it's not the value set, it is the values that matter
Jose Costa Teixeira (Apr 15 2020 at 10:10):
(nevermind this, that is what you wrote).
Jose Costa Teixeira (Apr 15 2020 at 10:11):
I think that in a profile the only way to express removal of allowed codes is to declare a new value set
Martin Grundberg (Apr 15 2020 at 10:58):
I see that it is possible to change the value set reference while profiling. Is that allowed if it is Required? Then of course this is easy :)
Jose Costa Teixeira (Apr 15 2020 at 11:01):
that is what I do, I hope it is allowed... :)
Can others confirm that when an element is bound to ValueSet-1 as required, we can constrain it by creating another ValueSet-1.1, as long as our ValueSet-1.1 contains a subset of values from ValueSet 1 ?
Jose Costa Teixeira (Apr 15 2020 at 11:01):
@Giorgio Cangioli
Jose Costa Teixeira (Apr 15 2020 at 11:02):
(not pinging LM or GG at this hour, but they'll see this anyway)
Grahame Grieve (Apr 15 2020 at 11:45):
yes, you can change the value set. If the existing binding is required, the validator will check that the codes you allow are a subset of the existing binding - it doesn't matter what the value set identity is
Grahame Grieve (Apr 15 2020 at 11:45):
but you also have to check for a minimum value set; this is not widely used but when it is used, it constrains which ones you can remove
Manisha Mantri (Jul 16 2020 at 09:41):
(deleted)
Last updated: Apr 12 2022 at 19:14 UTC