The mzSpecLib specification primarily takes the form of a data model, with multiple possible serializations of that data model. The specification describes two serializations: The data model consists of six main components (Figure ). The top level contains basic metadata describing the library itself. At this level, attribute sets can be defined for entrylevel metadata that are shared by many library entries. Optionally, a list of spectrum clusters follows, which consists of references (links) to the library entries belonging to each spectrum cluster.