diff -r ea73a949e802 -r 4b8253fb3125 web/facet.py --- a/web/facet.py Wed Apr 01 13:39:30 2015 +0200 +++ b/web/facet.py Mon Feb 23 09:02:41 2015 +0100 @@ -1465,15 +1465,17 @@ def add_rql_restrictions(self): """add restriction for this facet into the rql syntax tree""" - self.select.set_distinct(True) # XXX value = self._cw.form.get(self.__regid__) if not value: # no value sent for this facet return + exists = nodes.Exists() + self.select.add_restriction(exists) var = self.select.make_variable() if self.role == 'subject': - self.select.add_relation(self.filtered_variable, self.rtype, var) + subj, obj = self.filtered_variable, var else: - self.select.add_relation(var, self.rtype, self.filtered_variable) + subj, obj = var, self.filtered_variable + exists.add_relation(subj, self.rtype, obj) class BitFieldFacet(AttributeFacet):