MeasurementComponentMetaTuple
After decompression (see Decompression and parsing), the payload of an RAE file is a CBOR array. Each element of the array is one MeasurementComponentMetaTuple — a pair of the searchable metadata (Meta) and the actual measurement tree (Component) of a single measurement.
public record MeasurementComponentMetaTuple
{
public required MeasurementMeta Meta { get; init; }
public required MeasurementComponent Component { get; init; }
}
In the CBOR encoding, each tuple is a map with two keys:
| Key | Type | Description |
|---|---|---|
meta |
map | The MeasurementMeta record (see below) |
component |
map | The root MeasurementComponent of the measurement tree |
Encoding rules
These rules apply to the whole payload (tuples, components, and data records):
- Map keys are the property names in lowerCamelCase (e.g.
MeasurementIdentifier→measurementIdentifier). - Unset properties are written as CBOR
null; parsers must treatnulland a missing key the same way. - Enum values are written as lowerCamelCase strings (e.g.
Single→"single",FileReference→"fileReference"). - Timestamps are ISO 8601 round-trip strings in UTC (e.g.
"2026-07-07T12:34:56.7890123+00:00"). - Byte arrays are CBOR byte strings.
The JSON Variant of the RAE format uses different, abbreviated key names. The tables below list both.
MeasurementMeta
MeasurementMeta holds the descriptive, searchable metadata of a measurement. It is stored separately from the measurement tree so applications can list and filter measurements without loading the (potentially large) measurement data.
| Property | CBOR key | JSON key | Type | Description |
|---|---|---|---|---|
| Identifier | identifier |
id |
string | Database identifier of the meta record. May be null; importers typically discard it and assign a new one. |
| Version | version |
ver |
integer | Schema version of the record. Currently 2. |
| SourceIdentifier | sourceIdentifier |
srcId |
string | Identifier assigned by the system that produced the measurement (a GUID). Stable across export/import. |
| MeasurementIdentifier | measurementIdentifier |
mId |
string | Identifier of the measurement component this meta record belongs to. |
| ModuleIdentifier | moduleIdentifier |
modId |
string | Identifier of the software module that produced the measurement. |
| MeasurementType | measurementType |
mType |
string (enum) | Type of the root component, see MeasurementComponent for the list of values. |
| Timestamp | timestamp |
time |
string (ISO 8601) | Time the measurement was stored. |
| SourceTimestamp | sourceTimestamp |
srcTime |
string (ISO 8601) | Time the measurement was taken on the source device. |
| Index | index |
index |
integer | Sequential index of the measurement. |
| Name | name |
name |
string | Display name of the measurement. |
| Project | project |
proj |
string | Project the measurement is assigned to. |
| Batch | batch |
bat |
string | Batch the measurement is assigned to. |
| Customer | customer |
cust |
string | Customer the measurement is assigned to. |
| Comments | comments |
com |
string | Free-text comments. |
| Tags | tags |
tag |
array of strings | User-defined tags. |
| SearchableText | searchableText |
search |
string | Pre-built text used for full-text search. |
Example (CBOR diagnostic notation)
[
{
"meta": {
"identifier": null,
"version": 2,
"sourceIdentifier": "0d9f4c1e-6a2b-4f43-9c1a-2f5e8d7b3a10",
"measurementIdentifier": "0d9f4c1e-6a2b-4f43-9c1a-2f5e8d7b3a10",
"moduleIdentifier": "surface-brilliance",
"measurementType": "composite",
"timestamp": "2026-07-07T12:34:56.7890123+00:00",
"sourceTimestamp": "2026-07-07T12:34:55.1230000+00:00",
"index": 42,
"name": "Sample A",
"project": "Door panels",
"batch": "Batch 7",
"customer": null,
"comments": null,
"tags": ["oem", "topcoat"],
"searchableText": "Sample A Door panels Batch 7"
},
"component": { ... }
}
]
The structure of the component map is described in MeasurementComponent.