mzSpecLib is more precise about concepts that may seem interchangeable in other precursor m/z, but they mean different things. By having explicit contexts, mzSpecLib makes it clear which piece is the subject of each attribute, especially when there are multiple interpretations or multiple analytes per spectrum. The specification also provides recommendations for using standardized formats for defining analytes, using ProForma 2.0 27 for peptides , and either SMILES or InChI for small molecules. Note that all of the lines between "Comment" and "Num Peaks" are key-value pairs within a single Comment line, but separated out here for better readability. The MSP spectrum comments are colormapped to their equivalent controlled vocabulary terms. The ↪ character signifies a line wrapping for display purposes in this figure. The mzSpecLib text format uses sections to explicitly organize information into different contexts, using "<", the section opening expression, followed by ">" to denote a new section. The format begins with a header section, "<mzSpecLib ${format_version}>", containing library-level metadata, often missing in plain-text formats, describing attributes like where the library came from or was made, its identifiers, and license if that information is available (Figure ). This header includes information about which raw mass Figure . mzSpecLib library file header snippet taken from the conversion of the NIST IARPA3_best_tissue_add_info spectral library (id=peptidew:lib:human_skin_hair) to mzSpecLib text format. This header was produced by incorporating the metadata from an external text file () because the MSP format had no suitable representation for the relevant details. See for a more complete example.