Campbell Scientific CR800 and CR850 Measurement and Control Systems User Manual
Page 322

Section 8. Operation
322
CSIJSON
CSIJSON files contain header information and data in a JSON
format.
Example:
"signature": 38611,"environment": {"stationfiname": "11467","tablefiname": 
"Test","model": "CR1000","serialfino": "11467", 
"osfiversion": "CR1000.Std.21.03","progfiname": "CPU:file format.CR1"},"fields": 
[{"name": "battfivoltfiMin","type": "xsd:float", 
"process": "Min"},{"name": "PTemp","type": "xsd:float","process": "Smp"}]}, 
"data": [{"time": "2011-01-06T15:04:15","no": 0,"vals": [13.28,21.29]}, 
{"time": "2011-01-06T15:04:30","no": 1,"vals": [13.28,21.29]}, 
{"time": "2011-01-06T15:04:45","no": 2,"vals": [13.28,21.29]}, 
{"time": "2011-01-06T15:05:00","no": 3,"vals": [13.28,21.29]}]} 
Data File-Format Elements
HEADER
File headers provide metadata that describe the data in the file. A TOA5 header 
contains the metadata described below. Other data formats contain similar 
information unless a non-header format option is selected in the TableFile() 
instruction in the CR800 CRBasic program. 
Line 1 – Data Origins
Includes the following metadata series: file type, station name, CR800 
model name, CR800 serial number, OS version, CRBasic program name, 
program signature, data‐table name. 
Line 2 – Data-Field Names
Lists the name of individual data fields.  If the field is an element of an 
array, the name will be followed by a comma‐separated list of 
subscripts within parentheses that identifies the array index. For 
example, a variable named “values” that is declared as a two‐by‐two 
array, i.e., 
Public
Values(2,2)
will be represented by four field names: “values(1,1)”, “values(1,2)”, 
“values(2,1)”, and “values(2,2)”.  Scalar (non‐array) variables will not 
have subscripts. 
Line 3 – Data Units
Includes the units associated with each field in the record.  If no units 
are programmed in the CR800 CRBasic program, an empty string is 
entered for that field. 
Line 4 – Data-Processing Descriptors
Entries describe what type of processing was performed in the CR800 to 
produce corresponding data, e.g., Smp indicates samples, Min indicates 
minima.  If there is no recognized processing for a field, it is assigned an 
