Domain object validation library