For handling composite paths, at the highest level the approach needs to be to normalize all the various ways to specify converts to the root owner of the composition under the path. For example, given typical Person -> Address, the conversion for Address#city would get normalized to the path "address.city" under Person no matter where the convert comes from.
Same is true essentially for all converts. Hold them as part of the owner, using the "path".
|