def METHOD_NAME(
    self,
    name: str,
    skel: 'viur.core.skeleton.SkeletonInstance',
    dbFilter: db.Query,
    rawFilter: Dict,
    prefix: Optional[str] = None
) -> db.Query:
    if name not in rawFilter and not any(
        [(x.startswith(name + "$") or x.startswith(name + ".")) for x in rawFilter.keys()]
    ):
        return super().METHOD_NAME(name, skel, dbFilter, rawFilter, prefix)
    if not self.languages:
        namefilter = name
    else:
        lang = None
        for key in rawFilter.keys():
            if key.startswith("%s." % name):
                langStr = key.replace("%s." % name, "")
                if langStr in self.languages:
                    lang = langStr
                    break
        if not lang:
            lang = current.language.get()  # currentSession.getLanguage()
            if not lang or not lang in self.languages:
                lang = self.languages[0]
        namefilter = "%s.%s" % (name, lang)
    if name + "$lk" in rawFilter:  # Do a prefix-match
        if not self.caseSensitive:
            dbFilter.filter((prefix or "") + namefilter + ".idx >=", str(rawFilter[name + "$lk"]).lower())
            dbFilter.filter((prefix or "") + namefilter + ".idx <",
                            str(rawFilter[name + "$lk"] + u"\ufffd").lower())
        else:
            dbFilter.filter((prefix or "") + namefilter + " >=", str(rawFilter[name + "$lk"]))
            dbFilter.filter((prefix or "") + namefilter + " <", str(rawFilter[name + "$lk"] + u"\ufffd"))
    if name + "$gt" in rawFilter:  # All entries after
        if not self.caseSensitive:
            dbFilter.filter((prefix or "") + namefilter + ".idx >", str(rawFilter[name + "$gt"]).lower())
        else:
            dbFilter.filter((prefix or "") + namefilter + " >", str(rawFilter[name + "$gt"]))
    if name + "$lt" in rawFilter:  # All entries before
        if not self.caseSensitive:
            dbFilter.filter((prefix or "") + namefilter + ".idx <", str(rawFilter[name + "$lt"]).lower())
        else:
            dbFilter.filter((prefix or "") + namefilter + " <", str(rawFilter[name + "$lt"]))
    if name in rawFilter:  # Normal, strict match
        if not self.caseSensitive:
            dbFilter.filter((prefix or "") + namefilter + ".idx", str(rawFilter[name]).lower())
        else:
            dbFilter.filter((prefix or "") + namefilter, str(rawFilter[name]))
    return dbFilter