{
"input": {
// Given input data the is prefixed
"rating-primary": 1,
"rating-Price": 2,
"rating-Design": 4,
"rating-RatingDimension3": 1
},
"spec": {
// match one explicitly
"rating-primary": "Rating",
// match the rest using the * wildcard.
"rating-*": "SecondaryRatings.&(0,1)"
// Assuming "rating-Price" :
// "SecondaryRatings.&" = "rating-Price" // the whole key, syntatic sugar version
// "SecondaryRatings.&0" = "rating-Price" // the whole key, explict about how far up the tree to look, aka 0
// "SecondaryRatings.&(0,1)" = "Price" // the first * in the key &0 levels up the intput tree
},
"expected": {
"Rating": 1,
"SecondaryRatings": {
"Price": 2,
"Design": 4,
"RatingDimension3": 1
}
}
}