We might want to leave the type ID in with an empty list. My thinking, which isn't entirely complete, is that the profiler should still know that this type was requested. There's no real contract on what the return report looks like, but it's possible the profiler would want to be complete and reference everything that was requested. So if I said "Which of these foo are applicable?" and nothing matched, I can see still expecting the return report to say "I found zero foo" instead of omitting it entirely.