Stream: implementers
Topic: Timing.repeat element - profile
Amaresh Vakul (Nov 22 2019 at 21:22):
In FHIR documentation, the type of "repeat" element in "Timing" data type is specified as "Element" in the Structure tab, whereas the UML diagram tab shows a separate class "Repeat".
image1.png
image2.png
In most of the Primitive and Complex Types, it appears like all the elements inside them have been mapped to one or other pre-defined FHIR data type. But below three elements are mapped to "Element" instead of a specific Class.
- Timing.Repeat
- DataRequirement.dateFilter
- DataRequirement.codeFilter
Could some one provide an insight if this is by design ? Or there should have been a specific data type such as “Repeat”, “DateFilter” and “CodeFilter” respectively.
As there is no specific data type, we are unable to interpret corresponding profiles, e.g., "Timing.repeat" profile in HAPI profiles-types.xml based on FHIR Timing.repeat profile
Grahame Grieve (Nov 23 2019 at 09:15):
This is by design. You should think of these as in place anonymous specializations of Element (or, in other places, BackboneElement). UML doesn’t have such a thing, so we generate names for the classes using an algorithm
Grahame Grieve (Nov 23 2019 at 09:15):
I’m not sure why this means you can’t interpret the profiles
Amaresh Vakul (Nov 26 2019 at 16:37):
Thanks @Grahame Grieve for confirming.
I was reading in BackboneElement documentation that
The base definition for elements defined as part of a resource definition. Data Type elements do not use this type.
so it was not clear whether in DataType we should treat these anonymous elements similar to BackboneEement or these couple of elements were somehow missing a specific data type.
Anyways as the root data-type (in this case "Timing") profile has all the children elements definitions inline, so we can use an algorithm to generate specific class, the same way that we would generate for a BackboneElement.
Grahame Grieve (Nov 26 2019 at 19:00):
carumba:
Data Type elements do not use this type.
That's not true. I'l have to fix that line
Last updated: Apr 12 2022 at 19:14 UTC