I got this crazy idea few years ago while building a REST service for one of my projects. I needed some way to represent complex errors happening deep down in the components of the service to the public.
I ended up returning arrays
with multiple keys which was really not ideal.