To be able to generate any sort of usable query, we need to be more specific in the SQL.
I see the point of duplicating the from clause with multiple elements, but in my case, as I said we are using assessment, so each one is unique.
Its simple to check if its already used though, with an lsearch, so I don't see any reason to be too picky.
I think it would be nice to be able to get this info from the object type definition but it gets to complex too fast I think, for the kind of specialized work we need to do with assessments. I think contacts/AMS would be similar.
I use helper procedures to generate the clauses from the assessment questions, and I think, that if you wanted to generate them from an object_type that would be the way to go.
Thanks for the feedback.