'Run various validation checks on the translations in the catalog.
For every message which fails validation, this method yield a
``(message, errors)`` tuple, where ``message`` is the `Message` object
and ``errors`` is a sequence of `TranslationError` objects.
:rtype: ``iterator``'

def check(self):

    for message in self._messages.values():
        errors = message.check(catalog=self)
        if errors:
            (yield (message, errors))
