This project hosts an implementation of an expression grammar that operates on JSON documents. The grammar is a mashup of:
- JMESPath query language.
- Operators and functions from OpenFormula
Given:
{ "items": [ { "desc": "pens", "quantity": 2, "price": 3.23 }, { "desc": "pencils", "quantity": 4, "price": 1.34 } ] } sum(items[*].price * items[*].quantity) => 11.82
items[*].{price: price, quantity: quantity, subtotal: price * quantity} =>
[ { "price": 3.23, "quantity": 2, "subtotal": 6.46 }, { "price": 1.34, "quantity": 4, "subtotal": 5.36 } ] Visit the Playground