Why slicing discriminator provided for each element is different

Dear all,
I have question “Why slicing discriminator provided for each element different”?

When I do slicing on “component” element of Observation, I can use the “code.coding.code” as the discriminator. While when I want to do slicing on “derivedFrom” element of Observation, there is not “code.coding.code” option for its discriminator~

Any one have any explanition about it, it will so helpful~
Thankyou

slicing by code.coding.code is not a recommended slicing approach. Slicing by pattern on just code is much better, as it allows you to easily pair the coding.code with its system. If you’re still seeing code.coding.code, it’s probably on a profile that was define before pattern slicing was available or well-supported by the tools.

Slicing is also dependent on what kind of element it is. Observation has a code.coding.code. derivedFrom doesn’t. With an element of type Reference you’re usually slicing by type or profile on resolve()

1 Like