Description
I'd like add cast functions for json and jsonb as well as add support for dereferencing a json attribute via normal path navigation I.e. jsonAttribute.person.age
In order to make this happen, we need a json metamodel in java that we can query to know what to cast a result to and to decide if a specific navigation operation is allowed. Maybe we could also support that without a model but then the user would have to do casts of the final values.
Using json access functions multiple times in a more complex expression could become inefficient, so we might want to consider wrapping jsonish expressions in a special function that takes care of optimizing this.
Selecting sub-objects of the JSON type should be possible by making use of a JSON binding provider in an internal ObjecBuilder.
In addition we can take a look at adding support for other json functions as well like e.g. functions for adding or removing objects from a JSON object.
This is blocked by #765 which will enable us to model foreign model structures and allow to easily de-reference it.