Since it appears as though the keys are the same for each result section, this could be converted into a single result section containing the BODY_FORMAT.TABLE UI component instead of individual result sections each using a BODY_FORMAT.KEY_VALUE UI component in order to save space. How heuristics are applied would have to change however, since there can only be one heuristic per result section. Maybe use tags?
Currently, this service reports a ResultSection if there is nothing to report. This is not Assemblyline-y, and the service should instead just return rather than adding a ResultSection to the result.