docs: def fobj(self, path=None, values=None, unique=True, raise_absent=False):
          """
          Return model instance/registration object matching given criteria
          :param path: tuple or dpath expression representing the hierarchy/chain of parent keys
          :param values: single value or list of values to match. If exact is False then .contains method is used as filter
          :param raise_absent: if True then raise exception if no match is found
          :return: single model instance/registration object
          """
          return self.path_index[self.search(path=path, unique=unique, values=values, raise_absent=raise_absent)[0]]