In the Canonical Data Format, each node is represented as a flat JSON object with a structure something like this:
{
"reference": "example.node",
"type": "library.example.MyNodeType",
"system.NODE_NAME": "My Node",
"system.NODE_DESCRIPTION": "This is a sample node.",
"somecompany.library.TextField": "Some value",
"somecompany.library.NumberField": 42,
"somecompany.library.TextListField": ["a", "b", "c"]
}The reference is the node reference and the type is the node type.
Each property has is named using a node reference (the field/member type node reference) and contains data for the member or members of that field.
The data values follows the canonical data types.
Data Type Script provides utilities for detecting the canonical data type and converting data to and from the correct type.