Skip to content

Class: MassSpectrometry

Spectrometry where the sample is converted into gaseous ions which are characterised by their mass-to-charge ratio and relative abundance.

URI: nmdc:MassSpectrometry

classDiagram class MassSpectrometry click MassSpectrometry href "../MassSpectrometry" DataGeneration <|-- MassSpectrometry click DataGeneration href "../DataGeneration" MassSpectrometry : add_date MassSpectrometry : alternative_identifiers MassSpectrometry : analyte_category MassSpectrometry --> "1" MassSpectrometryEnum : analyte_category click MassSpectrometryEnum href "../MassSpectrometryEnum" MassSpectrometry : associated_studies MassSpectrometry --> "1..*" Study : associated_studies click Study href "../Study" MassSpectrometry : description MassSpectrometry : eluent_introduction_category MassSpectrometry --> "0..1" EluentIntroductionCategoryEnum : eluent_introduction_category click EluentIntroductionCategoryEnum href "../EluentIntroductionCategoryEnum" MassSpectrometry : end_date MassSpectrometry : generates_calibration MassSpectrometry --> "0..1" CalibrationInformation : generates_calibration click CalibrationInformation href "../CalibrationInformation" MassSpectrometry : has_chromatography_configuration MassSpectrometry --> "0..1" ChromatographyConfiguration : has_chromatography_configuration click ChromatographyConfiguration href "../ChromatographyConfiguration" MassSpectrometry : has_failure_categorization MassSpectrometry --> "*" FailureCategorization : has_failure_categorization click FailureCategorization href "../FailureCategorization" MassSpectrometry : has_input MassSpectrometry --> "1..*" Sample : has_input click Sample href "../Sample" MassSpectrometry : has_mass_spectrometry_configuration MassSpectrometry --> "0..1" MassSpectrometryConfiguration : has_mass_spectrometry_configuration click MassSpectrometryConfiguration href "../MassSpectrometryConfiguration" MassSpectrometry : has_output MassSpectrometry --> "*" DataObject : has_output click DataObject href "../DataObject" MassSpectrometry : id MassSpectrometry : instrument_used MassSpectrometry --> "*" Instrument : instrument_used click Instrument href "../Instrument" MassSpectrometry : mod_date MassSpectrometry : name MassSpectrometry : principal_investigator MassSpectrometry --> "0..1" PersonValue : principal_investigator click PersonValue href "../PersonValue" MassSpectrometry : processing_institution MassSpectrometry --> "0..1" ProcessingInstitutionEnum : processing_institution click ProcessingInstitutionEnum href "../ProcessingInstitutionEnum" MassSpectrometry : protocol_link MassSpectrometry --> "0..1" Protocol : protocol_link click Protocol href "../Protocol" MassSpectrometry : qc_comment MassSpectrometry : qc_status MassSpectrometry --> "0..1" StatusEnum : qc_status click StatusEnum href "../StatusEnum" MassSpectrometry : start_date MassSpectrometry : type

Inheritance

Slots

Name Cardinality and Range Description Inheritance
eluent_introduction_category 0..1
EluentIntroductionCategoryEnum
A high-level categorization for how the processed sample is introduced into a... direct
generates_calibration 0..1
CalibrationInformation
calibration information is generated a process direct
has_chromatography_configuration 0..1
ChromatographyConfiguration
The identifier of the associated ChromatographyConfiguration, providing infor... direct
has_mass_spectrometry_configuration 0..1
MassSpectrometryConfiguration
The identifier of the associated MassSpectrometryConfiguration direct
add_date 0..1
String
The date on which the information was added to the database DataGeneration
analyte_category 1
MassSpectrometryEnum
The type of analyte(s) that were measured in the data generation process and ... DataGeneration
associated_studies 1..*
Study
The study associated with a resource DataGeneration
instrument_used *
Instrument
What instrument was used during DataGeneration or MaterialProcessing DataGeneration
mod_date 0..1
String
The last date on which the database information was modified DataGeneration
principal_investigator 0..1
PersonValue
Principal Investigator who led the study and/or generated the dataset DataGeneration
has_input 1..*
Sample
An input to a process PlannedProcess
has_output *
DataObject
An output from a process PlannedProcess
processing_institution 0..1
ProcessingInstitutionEnum
The organization that processed the sample PlannedProcess
protocol_link 0..1
Protocol
PlannedProcess
start_date 0..1
String
The date on which any process or activity was started PlannedProcess
end_date 0..1
String
The date on which any process or activity was ended PlannedProcess
qc_status 0..1
StatusEnum
Stores information about the result of a process (ie the process of sequencin... PlannedProcess
qc_comment 0..1
String
Slot to store additional comments about laboratory or workflow output PlannedProcess
has_failure_categorization *
FailureCategorization
PlannedProcess
id 1
Uriorcurie
A unique identifier for a thing NamedThing
name 0..1
String
A human readable label for an entity NamedThing
description 0..1
String
a human-readable description of a thing NamedThing
alternative_identifiers *
Uriorcurie
A list of alternative identifiers for the entity NamedThing
type 1
Uriorcurie
the class_uri of the class that has been instantiated NamedThing

Identifier and Mapping Information

Schema Source

Mappings

Mapping Type Mapped Value
self nmdc:MassSpectrometry
native nmdc:MassSpectrometry
exact CHMO:0000470

LinkML Source

Direct

name: MassSpectrometry
description: Spectrometry where the sample is converted into gaseous ions which are
  characterised by their mass-to-charge ratio and relative abundance.
from_schema: https://w3id.org/nmdc/nmdc
exact_mappings:
- CHMO:0000470
is_a: DataGeneration
slots:
- eluent_introduction_category
- generates_calibration
- has_chromatography_configuration
- has_mass_spectrometry_configuration
slot_usage:
  id:
    name: id
    structured_pattern:
      syntax: '{id_nmdc_prefix}:(dgms|omprc)-{id_shoulder}-{id_blade}$'
      interpolated: true
  has_chromatography_configuration:
    name: has_chromatography_configuration
    structured_pattern:
      syntax: '{id_nmdc_prefix}:chrcon-{id_shoulder}-{id_blade}$'
      interpolated: true
  has_mass_spectrometry_configuration:
    name: has_mass_spectrometry_configuration
    structured_pattern:
      syntax: '{id_nmdc_prefix}:mscon-{id_shoulder}-{id_blade}$'
      interpolated: true
  analyte_category:
    name: analyte_category
    range: MassSpectrometryEnum
class_uri: nmdc:MassSpectrometry
rules:
- preconditions:
    slot_conditions:
      eluent_introduction_category:
        name: eluent_introduction_category
        equals_string: gas_chromatography
  postconditions:
    slot_conditions:
      generates_calibration:
        name: generates_calibration
        required: true
  description: If eluent_introduction_category is gas_chromatography, then generates_calibration
    is required.
  title: generates_calibration_required_if_gc
- preconditions:
    slot_conditions:
      eluent_introduction_category:
        name: eluent_introduction_category
        any_of:
        - equals_string: liquid_chromatography
        - equals_string: gas_chromatography
  postconditions:
    slot_conditions:
      has_chromatography_configuration:
        name: has_chromatography_configuration
        required: true
  description: If eluent_introduction_category is liquid_chromatography or gas_chromatography,
    then has_chromatography_configuration is required.
  title: has_chromatography_configuration_required_if_lc_or_gc

Induced

name: MassSpectrometry
description: Spectrometry where the sample is converted into gaseous ions which are
  characterised by their mass-to-charge ratio and relative abundance.
from_schema: https://w3id.org/nmdc/nmdc
exact_mappings:
- CHMO:0000470
is_a: DataGeneration
slot_usage:
  id:
    name: id
    structured_pattern:
      syntax: '{id_nmdc_prefix}:(dgms|omprc)-{id_shoulder}-{id_blade}$'
      interpolated: true
  has_chromatography_configuration:
    name: has_chromatography_configuration
    structured_pattern:
      syntax: '{id_nmdc_prefix}:chrcon-{id_shoulder}-{id_blade}$'
      interpolated: true
  has_mass_spectrometry_configuration:
    name: has_mass_spectrometry_configuration
    structured_pattern:
      syntax: '{id_nmdc_prefix}:mscon-{id_shoulder}-{id_blade}$'
      interpolated: true
  analyte_category:
    name: analyte_category
    range: MassSpectrometryEnum
attributes:
  eluent_introduction_category:
    name: eluent_introduction_category
    description: A high-level categorization for how the processed sample is introduced
      into a mass spectrometer.
    examples:
    - value: liquid_chromatography
    - value: direct_infusion_syringe
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: eluent_introduction_category
    owner: MassSpectrometry
    domain_of:
    - MassSpectrometry
    range: EluentIntroductionCategoryEnum
  generates_calibration:
    name: generates_calibration
    description: calibration information is generated a process
    comments:
    - A gas chromatography mass spectromery run generates data to calibrate the retention
      index
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: generates_calibration
    owner: MassSpectrometry
    domain_of:
    - MassSpectrometry
    range: CalibrationInformation
    structured_pattern:
      syntax: '{id_nmdc_prefix}:calib-{id_shoulder}-{id_blade}$'
      interpolated: true
  has_chromatography_configuration:
    name: has_chromatography_configuration
    description: The identifier of the associated ChromatographyConfiguration, providing
      information about how a sample was introduced into the mass spectrometer.
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: has_chromatography_configuration
    owner: MassSpectrometry
    domain_of:
    - MassSpectrometry
    range: ChromatographyConfiguration
    structured_pattern:
      syntax: '{id_nmdc_prefix}:chrcon-{id_shoulder}-{id_blade}$'
      interpolated: true
  has_mass_spectrometry_configuration:
    name: has_mass_spectrometry_configuration
    description: The identifier of the associated MassSpectrometryConfiguration.
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: has_mass_spectrometry_configuration
    owner: MassSpectrometry
    domain_of:
    - MassSpectrometry
    range: MassSpectrometryConfiguration
    structured_pattern:
      syntax: '{id_nmdc_prefix}:mscon-{id_shoulder}-{id_blade}$'
      interpolated: true
  add_date:
    name: add_date
    description: The date on which the information was added to the database.
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: add_date
    owner: MassSpectrometry
    domain_of:
    - Biosample
    - DataGeneration
    range: string
  analyte_category:
    name: analyte_category
    description: "The type of analyte(s) that were measured in the data generation\
      \ process and analyzed\n  in the Workflow Chain\n"
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: analyte_category
    owner: MassSpectrometry
    domain_of:
    - DataGeneration
    range: MassSpectrometryEnum
    required: true
  associated_studies:
    name: associated_studies
    description: The study associated with a resource.
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: associated_studies
    owner: MassSpectrometry
    domain_of:
    - Biosample
    - DataGeneration
    range: Study
    required: true
    multivalued: true
    structured_pattern:
      syntax: '{id_nmdc_prefix}:(sty)-{id_shoulder}-{id_blade}$'
      interpolated: true
  instrument_used:
    name: instrument_used
    description: What instrument was used during DataGeneration or MaterialProcessing.
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: instrument_used
    owner: MassSpectrometry
    domain_of:
    - MaterialProcessing
    - DataGeneration
    range: Instrument
    multivalued: true
  mod_date:
    name: mod_date
    description: The last date on which the database information was modified.
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: mod_date
    owner: MassSpectrometry
    domain_of:
    - Biosample
    - DataGeneration
    range: string
  principal_investigator:
    name: principal_investigator
    description: Principal Investigator who led the study and/or generated the dataset.
    from_schema: https://w3id.org/nmdc/nmdc
    aliases:
    - PI
    rank: 1000
    alias: principal_investigator
    owner: MassSpectrometry
    domain_of:
    - Study
    - DataGeneration
    range: PersonValue
  has_input:
    name: has_input
    description: An input to a process.
    from_schema: https://w3id.org/nmdc/nmdc
    aliases:
    - input
    rank: 1000
    alias: has_input
    owner: MassSpectrometry
    domain_of:
    - PlannedProcess
    range: Sample
    required: true
    multivalued: true
    structured_pattern:
      syntax: '{id_nmdc_prefix}:(bsm|procsm)-{id_shoulder}-{id_blade}$'
      interpolated: true
  has_output:
    name: has_output
    description: An output from a process.
    from_schema: https://w3id.org/nmdc/nmdc
    aliases:
    - output
    rank: 1000
    alias: has_output
    owner: MassSpectrometry
    domain_of:
    - PlannedProcess
    range: DataObject
    multivalued: true
    structured_pattern:
      syntax: '{id_nmdc_prefix}:(dobj)-{id_shoulder}-{id_blade}$'
      interpolated: true
  processing_institution:
    name: processing_institution
    description: The organization that processed the sample.
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: processing_institution
    owner: MassSpectrometry
    domain_of:
    - PlannedProcess
    range: ProcessingInstitutionEnum
  protocol_link:
    name: protocol_link
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: protocol_link
    owner: MassSpectrometry
    domain_of:
    - PlannedProcess
    - Study
    range: Protocol
  start_date:
    name: start_date
    description: The date on which any process or activity was started
    todos:
    - add date string validation pattern
    comments:
    - We are using string representations of dates until all components of our ecosystem
      can handle ISO 8610 dates
    - The date should be formatted as YYYY-MM-DD
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: start_date
    owner: MassSpectrometry
    domain_of:
    - PlannedProcess
    range: string
  end_date:
    name: end_date
    description: The date on which any process or activity was ended
    todos:
    - add date string validation pattern
    comments:
    - We are using string representations of dates until all components of our ecosystem
      can handle ISO 8610 dates
    - The date should be formatted as YYYY-MM-DD
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: end_date
    owner: MassSpectrometry
    domain_of:
    - PlannedProcess
    range: string
  qc_status:
    name: qc_status
    description: Stores information about the result of a process (ie the process
      of sequencing a library may have for qc_status of 'fail' if not enough data
      was generated)
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: qc_status
    owner: MassSpectrometry
    domain_of:
    - PlannedProcess
    range: StatusEnum
  qc_comment:
    name: qc_comment
    description: Slot to store additional comments about laboratory or workflow output.
      For workflow output it may describe the particular workflow stage that failed.
      (ie Failed at call-stage due to a malformed fastq file).
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: qc_comment
    owner: MassSpectrometry
    domain_of:
    - PlannedProcess
    range: string
  has_failure_categorization:
    name: has_failure_categorization
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: has_failure_categorization
    owner: MassSpectrometry
    domain_of:
    - PlannedProcess
    range: FailureCategorization
    multivalued: true
    inlined: true
    inlined_as_list: true
  id:
    name: id
    description: A unique identifier for a thing. Must be either a CURIE shorthand
      for a URI or a complete URI
    notes:
    - 'abstracted pattern: prefix:typecode-authshoulder-blade(.version)?(_seqsuffix)?'
    - a minimum length of 3 characters is suggested for typecodes, but 1 or 2 characters
      will be accepted
    - typecodes must correspond 1:1 to a class in the NMDC schema. this will be checked
      via per-class id slot usage assertions
    - minting authority shoulders should probably be enumerated and checked in the
      pattern
    examples:
    - value: nmdc:mgmag-00-x012.1_7_c1
      description: https://github.com/microbiomedata/nmdc-schema/pull/499#discussion_r1018499248
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    identifier: true
    alias: id
    owner: MassSpectrometry
    domain_of:
    - NamedThing
    range: uriorcurie
    required: true
    pattern: ^[a-zA-Z0-9][a-zA-Z0-9_\.]+:[a-zA-Z0-9_][a-zA-Z0-9_\-\/\.,]*$
    structured_pattern:
      syntax: '{id_nmdc_prefix}:(dgms|omprc)-{id_shoulder}-{id_blade}$'
      interpolated: true
  name:
    name: name
    description: A human readable label for an entity
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: name
    owner: MassSpectrometry
    domain_of:
    - PersonValue
    - NamedThing
    - Protocol
    range: string
  description:
    name: description
    description: a human-readable description of a thing
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    slot_uri: dcterms:description
    alias: description
    owner: MassSpectrometry
    domain_of:
    - ImageValue
    - NamedThing
    range: string
  alternative_identifiers:
    name: alternative_identifiers
    description: A list of alternative identifiers for the entity.
    from_schema: https://w3id.org/nmdc/nmdc
    rank: 1000
    alias: alternative_identifiers
    owner: MassSpectrometry
    domain_of:
    - MetaboliteIdentification
    - NamedThing
    range: uriorcurie
    multivalued: true
    pattern: ^[a-zA-Z0-9][a-zA-Z0-9_\.]+:[a-zA-Z0-9_][a-zA-Z0-9_\-\/\.,\(\)\=\#]*$
  type:
    name: type
    description: the class_uri of the class that has been instantiated
    notes:
    - replaces legacy nmdc:type slot
    - makes it easier to read example data files
    - required for polymorphic MongoDB collections
    examples:
    - value: nmdc:Biosample
    - value: nmdc:Study
    from_schema: https://w3id.org/nmdc/nmdc
    see_also:
    - https://github.com/microbiomedata/nmdc-schema/issues/1048
    - https://github.com/microbiomedata/nmdc-schema/issues/1233
    - https://github.com/microbiomedata/nmdc-schema/issues/248
    rank: 1000
    slot_uri: rdf:type
    designates_type: true
    alias: type
    owner: MassSpectrometry
    domain_of:
    - EukEval
    - FunctionalAnnotationAggMember
    - PeptideQuantification
    - ProteinQuantification
    - MobilePhaseSegment
    - PortionOfSubstance
    - MagBin
    - MetaboliteIdentification
    - GenomeFeature
    - FunctionalAnnotation
    - AttributeValue
    - NamedThing
    - OntologyRelation
    - FailureCategorization
    - Protocol
    - CreditAssociation
    - Doi
    range: uriorcurie
    required: true
class_uri: nmdc:MassSpectrometry
rules:
- preconditions:
    slot_conditions:
      eluent_introduction_category:
        name: eluent_introduction_category
        equals_string: gas_chromatography
  postconditions:
    slot_conditions:
      generates_calibration:
        name: generates_calibration
        required: true
  description: If eluent_introduction_category is gas_chromatography, then generates_calibration
    is required.
  title: generates_calibration_required_if_gc
- preconditions:
    slot_conditions:
      eluent_introduction_category:
        name: eluent_introduction_category
        any_of:
        - equals_string: liquid_chromatography
        - equals_string: gas_chromatography
  postconditions:
    slot_conditions:
      has_chromatography_configuration:
        name: has_chromatography_configuration
        required: true
  description: If eluent_introduction_category is liquid_chromatography or gas_chromatography,
    then has_chromatography_configuration is required.
  title: has_chromatography_configuration_required_if_lc_or_gc