well, the RecursiveIteratorIterator still need to be used to iterate recursively, but it should wrap the filter iterator rather than being wrapped