I'm not sure this stuff should live in what is essentially the controller layer. Is there a reason why it isn't handled in `backdrop.read.query`?