Run the setting checker against the setting raw value.

        Raises:
            AttributeError: if the setting is missing and required.
            ValueError: (or other Exception) if the raw value is invalid.

def check(self):
        """
        Run the setting checker against the setting raw value.

        Raises:
            AttributeError: if the setting is missing and required.
            ValueError: (or other Exception) if the raw value is invalid.
        """
        super(NestedSetting, self).check()
        errors = []
        for subsetting in self.settings.values():
            try:
                subsetting.check()
            except ValidationError as error:
                errors.extend(error.messages)
        if errors:
            raise ValidationError(errors)