(#22363) Fix problems from changed validation of relationships.

The vaidation was changed from a specific relationship validation
to using just R-Value check. This was a mistake since a
CollectExpression is a valid operand in a relationship even if not
producing an R-Value. Old version resurrected and streamlined to do
either R-Value check, or check that operand is a Collector.