Denodo allows users to extend the set of functions available in Virtual DataPort by creating custom functions. Hence, I would **create a custom function** that aggregates name/value pairs as a JSON object. As there is no predefined function in Denodo that is equivalent to** json_object_agg(name, value)** function.
You can have a look at the section [Developing Custom Functions](https://community.denodo.com/docs/html/browse/7.0/vdp/developer/developing_extensions/developing_custom_functions/developing_custom_functions#developing-custom-functions) of the Virtual DataPort Developer Guide to know more about how to create these custom functions. You can refer to the examples of custom functions located at ***<DENODOHOME>/samples/vdp/customFunctions***.
Hope this helps!