@classmethod
def willAllowParent(cls, parent):
    """Is the parent of an allowed type to have this type as a child?"""
    ap = cls.allowedParentTypes()
    if parent is None and len(ap) > 0 and ap[0] is None:
        return True
    for p in ap:
        if isinstance(parent, p):
            return True
    return False
