@classmethod
def _build_model_check_parent(model_class, cls, parent_class):
    """ Check whether ``model_class`` can inherit from ``parent_class``. """
    if model_class._abstract and not parent_class._abstract:
        msg = (
            'In %s, the abstract model %r cannot inherit from the non-abstract model %r.'
            )
        raise TypeError(msg % (cls, model_class._name, parent_class._name))
