Because the UML does not explicitly link EarthMaterial, CompoundMaterial, and RockMaterial to the relevant extension classes for description details, they are not getting implemented in the JSON. Here is a diagram showing the relationships that need to be implemented:
I drew it with 'uses' associations because I don't want the code to try implementing the associations until we figure this out, but I'm think each description association would have a role labeled with the target description DataType. I'm out of time to work on this now, just putting a reminder here.
Because the UML does not explicitly link EarthMaterial, CompoundMaterial, and RockMaterial to the relevant extension classes for description details, they are not getting implemented in the JSON. Here is a diagram showing the relationships that need to be implemented:
I drew it with 'uses' associations because I don't want the code to try implementing the associations until we figure this out, but I'm think each description association would have a role labeled with the target description DataType. I'm out of time to work on this now, just putting a reminder here.