def objs(self, path=None, model=None, values=None, raise_absent=False):
        """
       Return list of model object instances 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: list of matching objects
       """
        return self.search(path=path, unique=False, raise_absent=raise_absent, values=values,
                       vfunc=lambda x: self.path_index[x[0]].instance(model=model, reraise=False) if x[0] in self.path_index else None)