Stream: implementers
Topic: Spec for Complex Extensions
Nick George (Aug 08 2018 at 02:53):
Hello, is the spec for complex extensions fleshed out anywhere? All I can find is the example here: https://www.hl7.org/fhir/extensibility-examples.html#complex . Specifically, the example in that section doesn't have ids, but curling the StructureDefinition for that extension (patient-clinicaltrial) has ids that identify which sub-extensions slice fields belong to, e.g., Extension.extension:nct.valueString. This is fairly significant, because it's the _only_ way I can tell (other than ordering) to tell which slice the subfield belongs to.
Lloyd McKenzie (Aug 08 2018 at 02:55):
Each slice within the extension has its own URL - expressed as a relative URL. So you're slicing by URL within an extension just as you slice extensions within the resource.
Nick George (Aug 08 2018 at 03:00):
yes, but looking at the example in the link I posted, you can see two different elements, one with <path value="Extension.extension.valuePeriod"/>, one with <path value="Extension.extension.valueString"/>, and there's no way other than ordering to tell which belongs to which slice.
However, in the downloaded raw StructureDefinition, one has id=Extension.extension:period.valuePeriod, and the other has id=Extension.extension:nct.valueString. In this case, it's easy to tell which belongs to which url
Nick George (Aug 08 2018 at 03:01):
so my question is whether that id is a part of the spec, that we can rely on being present to disambiguate
Nick George (Aug 08 2018 at 03:24):
hmm per https://www.hl7.org/fhir/elementdefinition.html#id , it looks like id should be populated with the slice name. So I'm guessing the ids just got dropped from https://www.hl7.org/fhir/extensibility-examples.html#complex . Might be worth putting those in
Grahame Grieve (Aug 08 2018 at 04:57):
yes they should be there; please make a task to put them there
Last updated: Apr 12 2022 at 19:14 UTC