Skip to content

Latest commit

 

History

History
110 lines (86 loc) · 2.75 KB

File metadata and controls

110 lines (86 loc) · 2.75 KB

CSS1 .EIC.aef Format Notes

These notes describe the CSS1 layout observed in MS-DIAL 5 AlignResult*.EIC.aef files.

This is not an official MS-DIAL specification. Treat it as an implementation note for interoperability and QC tooling.

Byte order

Observed numeric values are little-endian.

Archive header

Offset Type Description
0 char[10] Null-padded ASCII version string. Observed value: CSS1.
10 int32 Number of aligned features in the archive.
14 int64[feature_count] Absolute byte offsets to feature payloads.

The offset table allows one aligned feature to be read without loading the full archive.

Feature payload

Each offset points to one aligned feature payload.

Type Description
float32 Center retention time.
float32 Center retention index.
float32 Center m/z.
float32 Center drift value.
uint8 Chromatogram x-axis type.
int32 Number of sample traces.

Observed chromatogram x-axis type mapping:

Value Label
0 rt
1 ri
2 drift
3 mz

Sample trace payload

Each feature contains one trace payload per sample/file.

Type Description
int32 File/sample ID.
int32 Number of chromatogram points.
float32 Top/apex x position.
float32 Left integration boundary x position.
float32 Right integration boundary x position.
float32, float32 repeated Chromatogram point pairs: x value and intensity.

The x units depend on the feature's x-axis type. For ordinary LC-MS EICs this is typically retention time.

JSON shape

The Python and Rust readers expose one feature like this:

{
  "version": "CSS1",
  "feature_count": 1234,
  "feature_index": 42,
  "center": {
    "rt": 5.12,
    "ri": 0.0,
    "mz": 302.1234,
    "drift": -1.0,
    "main_type": "rt"
  },
  "trace_count": 2,
  "peaks": [
    {
      "file_id": 0,
      "point_count": 120,
      "returned_point_count": 120,
      "top": 5.11,
      "left": 5.02,
      "right": 5.20,
      "points": [
        { "x": 5.0, "intensity": 1000.0 },
        { "x": 5.01, "intensity": 1200.0 }
      ]
    }
  ]
}

Alignment table pairing

The archive does not contain metabolite names or sample names in the observed layout. Pair it with the MS-DIAL alignment table exported from the same alignment result.

Practical mapping used by the current reader:

  • feature index 0 corresponds to the first data row after the Alignment ID header in the paired alignment table;
  • file_id maps to the sample columns after MS/MS spectrum in observed MS-DIAL alignment tables.

These mappings should be validated against more MS-DIAL versions and acquisition modes.