I think I fixed this to match what you are describing here. Let me know if further work is needed.

BTW, this is doable entirely in iD. However, I know from my own learning experience that working with relations in iD is not  straightforward.