By typifing common exception you to can easily handle exceptions in different modules (e.g. throw exception within a core service and handle it in a BL module).
Each typified exception has two actions, one for throwing the exception and another one for validating if the exception is of that type.
Typified exceptions: