def apply_parent_validation(clazz, error_prefix=None):
    """
    Decorator to automatically invoke parent class validation before applying
    custom validation rules. Usage::

        class Child(Parent):
            @apply_parent_validation(Child, error_prefix="From Child: ")
            def validate(data):
                # I can assume now that the parent validation method succeeded.
                # ...
    """
    def decorator(func):
        def inner(self, data):
            base_validation = clazz.validate(self, data)
            if base_validation != True:
                if error_prefix is not None:
                    return error_prefix + base_validation
                return base_validation
            return func(self, data)
        return inner
    return decorator