The argument here seems to be that the cost of the abstraction (user confusion) isn't worth the benefit, and that we should go back to only allowing one application to access each kind of object.
I have to disagree. The abstraction might not be perfect, but it does enable something pretty damn useful.