What feature or capability would you like?
Implement https://github.com/qri-io/jsonpointer WalkJSON() api by adding JSONProps() map[string]interface{} methods to all relevant keywords.
At the moment there is no API to traverse parsed schemas down to keywords with scalar values, because scalar keywords do not implement JSONPather. This makes sense, because a keyword like Description shouldn't have a JSONProp(name string) interface{} method.
Do you have a proposed solution?
Adding a new method JSONProps() map[string]interface{} which returns all keywords would support this use-case, whilst JSONChildren() can maintain it's current functionality and only return keywords which are JSONPathers.
Have you considered any alternative solutions or workarounds?
Implement an exported function WalkJSON() which works similarly to https://github.com/qri-io/jsonpointer, and uses the s.keywords slice internally so that all children are traversed. However, for my specific use-case, I have a problem with the current implementation of WalkJSON() because I also need to know the path being traversed, i.e. when visit is called, I need to know which element in the JSON I'm visiting, i.e. /properties/myProperty/type.
Please link any related issues.
I initially created the following issue to add support for using their WalkJSON() function. However, if you look at my second comment, it's not really appropriate: qri-io/jsonpointer#10
What feature or capability would you like?
Implement https://github.com/qri-io/jsonpointer
WalkJSON()api by addingJSONProps() map[string]interface{}methods to all relevant keywords.At the moment there is no API to traverse parsed schemas down to keywords with scalar values, because scalar keywords do not implement
JSONPather. This makes sense, because a keyword likeDescriptionshouldn't have aJSONProp(name string) interface{}method.Do you have a proposed solution?
Adding a new method
JSONProps() map[string]interface{}which returns all keywords would support this use-case, whilstJSONChildren()can maintain it's current functionality and only return keywords which are JSONPathers.Have you considered any alternative solutions or workarounds?
Implement an exported function
WalkJSON()which works similarly to https://github.com/qri-io/jsonpointer, and uses thes.keywordsslice internally so that all children are traversed. However, for my specific use-case, I have a problem with the current implementation ofWalkJSON()because I also need to know the path being traversed, i.e. whenvisitis called, I need to know which element in the JSON I'm visiting, i.e./properties/myProperty/type.Please link any related issues.
I initially created the following issue to add support for using their
WalkJSON()function. However, if you look at my second comment, it's not really appropriate: qri-io/jsonpointer#10