This note is still a TODO
JSONiq operations
Standard algebra
JSONiq is best understood as a data calculator meaning it enables arithmetic (and other types too) operations on data. For this reason, it supports standard sum, difference, multiplication (check if it has division), boolean values, but it also has ways to access keys in maps, and indices in arrays. It has for loops and nice ways to access data from files and organizing it into key-value maps (you can observe a compatibility to Massive Parallel Processing data model)
Sequences in JSONiq
Types of sequences
In JSONiq sequences can be everything:
- Base types (classical integers, strings, null, booleans)
- Arrays
- Maps
- Functions (not considered here, but they are useful to represent things like machine learning models, who take something in input and transform it)
These sequences can be heterogeneous, homogeneous, or empty.