Collects errors and other messages to report back to the caller.
I've carried out some operations that made significant changes to an object model. Now that I'm done, I want to check that the resulting model is valid. I can initiate a validation command; I want to know the answer as a simple Boolean, but if there are errors I want to know more. In particular, I want to know about all the errors rather than have the validation stop at the first error.
A Notification is an object that collects errors. When a validation check fails, it adds an error to the Notification. When the validation command finishes, it returns the Notification. I can then ask the Notification if everything was OK, and if not, delve into the errors.
For more details see chapter 16 of the DSL book