Oh goodness. What have I done.
My aim was to describe a scheme that might be of value to Kotlin developers.
The approach evolved with my own class hierarchies.
I do not even know if it is already in use in other languages.
Next time I will watch my language!