Werner, if you have the time I have a question for you.
When validating, I want to be able to tell which object instance has the problem. Looking at the ValidationException it doesn't appear that I can't get the instance. By taking the exception and calling getLocation(), and getCause(), getLocation(), I can build up the location (sort of). For example, here is a full path I constructed to the object
But that doesn't tell me the instance, just that it is an AnalogAssignmentType.