i am not happy with the Row idea, it would diverge from the ORM semantics as described in https://doctrine-orm.readthedocs.org/en/latest/reference/dql-doctrine-query-language.html#joins

we should return the left most "from" and if we "select" fields from other classes, it would mean to pre-cache that object (but afaik we never load a document from the result directly anyways, as we can't know all fields in advance)