You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Every .lcd file carries dozens of top-level storages beyond raw
spectra and chromatogram/PDA data that crates/openszraw has never
looked at - not in the reader, not in any format doc. A first-pass
survey (2026-07-21) mapped what's there and roughly what format each
piece is in; full writeup in docs/format/08-metadata-and-processing-streams.md.
What's confirmed
File Property/Method File Property - plain UTF-8 XML (4-byte
prefix + <?xml version="1.0"?>...), free-text fields hex-encoded
under an @StoX@<hex> scheme (decoded successfully everywhere
tried). Contains operator name, LabSolutions version, timezone, and
a FILETIME pair that independently cross-validates the
existing Acquisition start_timestamp not decoded - real candidate streams exist, none opened yet #9 CFBF-directory-timestamp technique for RunMetadata::start_timestamp (agreement within ~140ms/~1s on the
one file checked).
GUMM_Information (GUC.*.CONFIG/METHOD, GUM.CONFIG/ METHOD) - the full LC+MS instrument method/config. UTF-16LE XML
wrapper, at least one field of which is a hex-encoded binary
parameter blob tagged with an ASCII struct name (e.g. CTLM3030Parameters) - three encoding layers deep, not decoded past
identifying the layers. Largest single substream seen: 137KB.
Mass Data Processing/Mass Data Load Format - LabSolutions'
own post-acquisition compound-identification/quantitation results,
not raw instrument data. Confirmed real (not boilerplate) via
embedded ASCII compound names in Compound Table
(m3U, m5U, m1Y, m3Y - standard methylated/pseudouridine RNA
modification nomenclature) matching MTBLS7425's actual study
subject exactly. Includes Compound Table/Results/Peak Table,
calibration curve info, library search params, and a 378KB Fragment Table - the largest unexamined stream found this pass. Record
layout not identified.
Lower-priority, not examined in depth: LSS Data Processing (LC
detector/baseline processing config), Report Format (looks like
OLE-embedded print/report templates, plausibly low analytical
value), Audit Trail, SystemCheckResult.
Suggested priority (see docs/format/08 for full reasoning)
Clean-room only, per CONTRIBUTING.md: no LabSolutions software or
vendor SDK/output as ground truth.
Done means
This issue is intentionally broad - treat it as a tracking/roadmap
issue, not a single PR. Reasonable to close once section 1 (File Property extraction) ships and split remaining sections into their
own issues as someone picks them up, rather than trying to land
everything in docs/format/08 in one pass.
Summary
Every
.lcdfile carries dozens of top-level storages beyond rawspectra and chromatogram/PDA data that
crates/openszrawhas neverlooked at - not in the reader, not in any format doc. A first-pass
survey (2026-07-21) mapped what's there and roughly what format each
piece is in; full writeup in
docs/format/08-metadata-and-processing-streams.md.What's confirmed
File Property/Method File Property- plain UTF-8 XML (4-byteprefix +
<?xml version="1.0"?>...), free-text fields hex-encodedunder an
@StoX@<hex>scheme (decoded successfully everywheretried). Contains operator name, LabSolutions version, timezone, and
a
FILETIMEpair that independently cross-validates theexisting Acquisition start_timestamp not decoded - real candidate streams exist, none opened yet #9 CFBF-directory-timestamp technique for
RunMetadata::start_timestamp(agreement within ~140ms/~1s on theone file checked).
GUMM_Information(GUC.*.CONFIG/METHOD,GUM.CONFIG/METHOD) - the full LC+MS instrument method/config. UTF-16LE XMLwrapper, at least one field of which is a hex-encoded binary
parameter blob tagged with an ASCII struct name (e.g.
CTLM3030Parameters) - three encoding layers deep, not decoded pastidentifying the layers. Largest single substream seen: 137KB.
Mass Data Processing/Mass Data Load Format- LabSolutions'own post-acquisition compound-identification/quantitation results,
not raw instrument data. Confirmed real (not boilerplate) via
embedded ASCII compound names in
Compound Table(
m3U, m5U, m1Y, m3Y- standard methylated/pseudouridine RNAmodification nomenclature) matching
MTBLS7425's actual studysubject exactly. Includes
Compound Table/Results/Peak Table,calibration curve info, library search params, and a 378KB
Fragment Table- the largest unexamined stream found this pass. Recordlayout not identified.
LSS Data Processing(LCdetector/baseline processing config),
Report Format(looks likeOLE-embedded print/report templates, plausibly low analytical
value),
Audit Trail,SystemCheckResult.Suggested priority (see docs/format/08 for full reasoning)
File Property/Method File Propertyextraction - alreadydecodable, smallest effort, real value (operator/version metadata
plus independent Acquisition start_timestamp not decoded - real candidate streams exist, none opened yet #9 corroboration)
Mass Data Processingcompound-ID/quantitation tables - highestpotential payoff (new capability, not just metadata) but least
scoped effort-wise
GUMM_Informationmethod/config - large, real, multi-layer; usefulcontext for other decode work (including the still-open PDA 3D Raw Data / LSS Raw Data chromatogram: bit-packed segment payload encoding undecoded #2)
Constraints
Clean-room only, per
CONTRIBUTING.md: no LabSolutions software orvendor SDK/output as ground truth.
Done means
This issue is intentionally broad - treat it as a tracking/roadmap
issue, not a single PR. Reasonable to close once section 1 (
File Propertyextraction) ships and split remaining sections into theirown issues as someone picks them up, rather than trying to land
everything in
docs/format/08in one pass.