Stream: implementers
Topic: ValueSet expansion
Joel Francis (Apr 25 2019 at 15:28):
Hi,
@Rob Hausam
Not sure if this is a valid question but I am trying to wrap my head around the ValueSet expand operation. Does the content in the expansion differ if the codes we all LOINC or SNOMED or a mixture? Are there any guidelines on how to appropriately expand a ValueSet based on the input parameters? Would it matter based on a particular clinical domain?
Thanks in advance.
Yunwei Wang (Apr 25 2019 at 15:47):
The expansion is generated / calcuated based on value set definition inside ValueSet.compose.
Joel Francis (Apr 25 2019 at 16:25):
The expansion is generated / calcuated based on value set definition inside ValueSet.compose.
Ok and there used to be an ExpansionProfile that would profile the epansion but this sn't there in R4 so this goes back to my questions about there being any guidelines to expand the ValueSet based on the input parameters and if it matters based on a particular domain. Can you comment on that?
Yunwei Wang (Apr 25 2019 at 16:38):
Terminology server decide what input parameters server accept and how the input parameter is used. Most of ExpansionProfile elements are presented at input parameters in R4. For the same value set, you can exclude certain code systems (exclude-system parameters).
Rob Hausam (Apr 25 2019 at 17:00):
Hi, @Joel Francis. I assume you may have seen it, but the way that the $expand operation is intended to work is documented here. I think that should answer your questions at least in regard to the general approach, but if there are details that still aren't clear or are confusing we can certainly talk about that further - and that might indicate that there's some missing documentation that we can add. As Yunwei said, the servers do some discretion in regard to support for input parameters (which should ideally be documented in the capability statement - including TerminologyCapabilities where appropriate). But all servers should be following the basic algorithm documented in the link above.
Joel Francis (Apr 25 2019 at 17:24):
Thanks @Yunwei Wang and @Rob Hausam . I am jostling with the reasoning for the expansionprofile and then the move to standard parameters if we needes to profile expansions the. How can we use parametera in a standardized way? But as Yunwei mentioned it is the terminology server that determines these or have I misunderstood?
Rob Hausam (Apr 25 2019 at 17:48):
The first thing that I'll mention is that the ExpansionProfile resource (if that's what you were referring to) has been removed in R4. So even if you are working with servers that are on STU3 (where it still exists in the specification) I'm not sure if any of the servers (other than possibly Grahame's) did much with ExpansionProfile, and even if they did it's likely best to generally ignore and not use it at this point. Maybe you can clarify a bit more what you are thinking of specifically in regard to your question about how to "use parameters in a standardized way"? Obviously the parameters should be used in a standardized way, so if it appears that is not the case then that needs to be clarified (or corrected).
Joel Francis (Apr 25 2019 at 18:24):
Thanks @Rob Hausam , there is a Working Group called the ValueSet Expansion (VSE) and the scope aims to define a standard that specifies what content belongs in a value set expansion. So I was trying to understand the usecases behind the work and tie it together with my questions earlier and the need for a standardization from the expansion aspect.
Robert McClure (Apr 25 2019 at 20:50):
@Joel Francis I'm a lead on the Value Set Expansion project you've referenced. I assume you've seen that confluence page, but if not, start there. We'll be meeting Thursday Q2 (Vocab) to discuss. If you can wait until Montreal, I'll bet we can help clarify things then. Will that work?
Joel Francis (Apr 26 2019 at 12:37):
Joel Francis I'm a lead on the Value Set Expansion project you've referenced. I assume you've seen that confluence page, but if not, start there. We'll be meeting Thursday Q2 (Vocab) to discuss. If you can wait until Montreal, I'll bet we can help clarify things then. Will that work?
Yes that works. Thank you @Robert McClure and @Rob Hausam
Rob Hausam (Apr 26 2019 at 16:34):
Sounds good. We'll talk further in Montreal.
Joel Francis (Apr 29 2019 at 13:51):
Hi,
Can anyone provide an explanation for the contextDirection? What is the purpose?
Thanks in advance.
Yunwei Wang (Apr 29 2019 at 15:28):
@Joel Francis Because some FHIR servers may require different values for inbound message vs outbound message for the same ValueSet. For example, my server may allow Yes/No/Unknown used for outbound FHIR data (GET operation) but require Yes/No for inbound data (POST/PUT operations).
Here is the original disucssion: https://chat.fhir.org/#narrow/stream/179202-terminology/topic/.24expand.20context.20and.20contextDirection
Joel Francis (Apr 30 2019 at 13:37):
Joel Francis Because some FHIR servers may require different values for inbound message vs outbound message for the same ValueSet. For example, my server may allow Yes/No/Unknown used for outbound FHIR data (GET operation) but require Yes/No for inbound data (POST/PUT operations).
Here is the original disucssion: https://chat.fhir.org/#narrow/stream/179202-terminology/topic/.24expand.20context.20and.20contextDirection
Thanks @Yunwei Wang
Last updated: Apr 12 2022 at 19:14 UTC