Change all this per our skype conversation such that the evaluator does all of the work involved with iterating across all patients, getting the appropriate patient data element for each patient out of the evaluatedContainedDataDefinitions, putting those patient data results in the scripting context, and then putting the evaluated composition result for that patient into the evaluationResult overall.

The script should run for one patient at a time, and should be very simple to write, for example, for BMI, should be possible to just write:

return weight.valueNumeric / (height.valueNumeric * height.valueNumeric);