1. A method, implemented at a computer system that includes one or more processors, for brokering requests and data between a user and a content provider, the method comprising: receiving, at a middleware system, a request for data from a user, the request formatted in a first request format and requesting data from a content provider; translating the request to a second request format that is compatible with the content provider; sending the translated request to the content provider; as a result of sending the translated request to the content provider, receiving a response from the content provider that comprises hierarchically-structured content; and converting the hierarchically-structured content into tabular content, wherein converting comprises: performing one or more first queries on the hierarchically-structured content to identify repeating nodes in the hierarchically-structured content, and mapping the repeating nodes to rows in the tabular format; and performing one or more second queries on the hierarchically-structured content to identify individual columns in the tabular format.