There's no reason to do this. The only requirement we've explicitly stated is that exceptions should extend SPL exceptions, not that the inheritance has to be SPL -> namespaced exception of same name -> more specific version. In terms of inheritance trees, it's simpler and cleaner to define the exceptions as extending simply an SPL exception and implementing the component-specific marker exception.