Often when doing QRE research we care only about the top-level resources. Performing evaluation on the whole tree is slow and often unnecessary, so we could have a utility which gives top-level only.
How you envision the solution
I think we could add a new method called evaluate_top_resources which would take in the same inputs as evaluate, but would return a dictionary of resources instead.
I'd even say that these could be name: value pairs, rather than name: resource_object pairs.