Stream: IG creation
Topic: Slice a slice
Brian Reinhold (Nov 29 2018 at 16:06):
@Grahame Grieve
I have a real problem I wish I did not have to solve, FHIR has a requirement that a vital signs observation must use one of the LOINC magic codes. The problem comes when I have a compound measurement like a blood pressure. The systolic, diastolic values are in Observation.components. However, there are other types of components, such as accuracy, supplemental types, measurementConfidenceLevels, etc. To deal with this I slice on the component using a value and path pointing to the Observation.component.code. Each slice then binds to a value set, one of them for the compound components. It works.
However, in the compound case I have Observation.component.code.coding - and if it is a vital signs, I need to have a coding element for the MDC code and a LOINC code. So I tried slicing on the coding. This is effectively a slice on a slice. I was told I can't slice a slice.
The easy solution is to drop the LOINC requirement. I would like that, but FHIR says no. How can I solve this in the few days left before ballot freeze? w?
Grahame Grieve (Nov 29 2018 at 21:00):
sounds like it should be possible. I'll look shortly
Brian Reinhold (Nov 29 2018 at 22:08):
sounds like it should be possible. I'll look shortly
It seems to work but is it legal?
Grahame Grieve (Nov 29 2018 at 23:30):
where do i look in the IG to see this?
Brian Reinhold (Nov 30 2018 at 00:01):
PHD IG: PhdCompoundNumericObservation.xml (on the component). THe primary slicing is in PhdBaseObservation.xml
Brian Reinhold (Feb 23 2019 at 12:45):
Can I slice a slice in the following way? (Applying to Device.property)
Define a slice discriminated by property.type.coding.system
There are two 'base' slices, one using code system A and the other using code system B
The slice on code system B is further sliced based upon property.valueCode or property.valueQuantity
a set of N codes in system B use property.valueCode and
a set of M codes in system B use property.valueQuantity.
Alternatively one could write out N+M cases in B sliced on property.type.coding.system
Not exactly sure how to express this syntactically!
Last updated: Apr 12 2022 at 19:14 UTC