Obviously there are differences when using a join-table, or when the elements are embedded into the join-table, but the
basic idea is we generate an iterator statement for the elements (just like the backing store normally would) except
instead of restricting the statement to just a particular owner, it adds an EXISTS clause with the query as the exists
subquery).