murex Shell Docs

Data-Type Reference: jsonc

Concatenated JSON


The following description is taken from Wikipedia:

Concatenated JSON streaming allows the sender to simply write each JSON object into the stream with no delimiters. It relies on the receiver using a parser that can recognize and emit each JSON object as the terminating character is parsed. Concatenated JSON isn't a new format, it's simply a name for streaming multiple JSON objects without any delimiters.

The advantage of this format is that it can handle JSON objects that have been formatted with embedded newline characters, e.g., pretty-printed for human readability. For example, these two inputs are both valid and produce the same output:

Single line concatenated JSON


Multi-line concatenated JSON

  "some": "thing\n"
  "may": {
    "include": "nested",
    "objects": [


Because of the similiaries with jsonlines (jsonl), the examples here will focus on jsonlines examples. However concatenated JSON doesn't need a new line separator. So the examples below could all be concatenated into one long line.

Example JSON lines documents taken from

Tabulated data

["Name", "Session", "Score", "Completed"]
["Gilbert", "2013", 24, true]
["Alexa", "2013", 29, true]
["May", "2012B", 14, false]
["Deloise", "2012A", 19, true] 

This format is equatable to generic and csv.

Nested objects

{"name": "Gilbert", "wins": [["straight", "7♣"], ["one pair", "10♥"]]}
{"name": "Alexa", "wins": [["two pair", "4♠"], ["two pair", "9♠"]]}
{"name": "May", "wins": []}
{"name": "Deloise", "wins": [["three of a kind", "5♣"]]}


Similarities with jsonl

The advantage of concatenated JSON is that it supports everything jsonlines supports but without the dependency of a new line as a separator.

Eventually it is planned that this murex data-type will replace jsonlines and possibly even the regular JSON parser. However this concatenated JSON parser currently requires reading the entire file first before parsing whereas jsonlines can read one line at a time. Which makes jsonlines a better data- type for pipelining super large documents. For this reason (and that this parser is still in beta), it is shipped as an additional data-type.

Default Associations

Supported Hooks

See Also

This site's content is rebuilt automatically from murex's source code after each merge to the master branch. Downloadable murex binaries are also built with the website.

Last built on Thu May 26 22:49:43 UTC 2022 against commit 59e27bb59e27bb1013043fc4a940cf9a2767c63f31dad2c.

Current version is 2.8.2100 which has been verified against 15889 tests cases.