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:

  1. Base types (classical integers, strings, null, booleans)
  2. Arrays
  3. Maps
  4. 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.