Enum Class ExtractedMolecule

java.lang.Object
java.lang.Enum<ExtractedMolecule>
ubic.gemma.model.expression.bioAssay.ExtractedMolecule
All Implemented Interfaces:
Serializable, Comparable<ExtractedMolecule>, Constable

public enum ExtractedMolecule extends Enum<ExtractedMolecule>
What was extracted from the sample and assayed — GEO's !Sample_molecule_chN.

Why this is on the BioAssay and not the BioMaterial

Paul, 2026-09-05: "the biomaterial is the cells/tissue we got the RNA from, not the RNA", and "the assay is 'we took that sample and did something to it to get expression measurements'". The extraction is part of that doing, so it belongs to the assay. Recording it as a characteristic OF the biomaterial describes the extract as though it were the sample.

It is structural rather than tidy: one biomaterial can yield two different molecules. In CITE-seq the same cells give both the RNA readout and the protein one, and on prod that is not hypothetical — 181 genomic_DNA rows over 9 experiments and 80 protein rows over 3, all multimodal designs (cab, 2026-09-05). On the biomaterial, expressing that needs a duplicated biomaterial, which is a lie about the sample. On the BioAssay it is two assays over one material, which is what happened.

🛑 It is not the whole story, and is not a substitute for library selection

Paul, 2026-08-31: "total RNA … is potentially misleading because there's often still a poly-A selection step". GEO's molecule says what went in; BioAssay.getLibrarySelection() says how it was selected, and the two disagree routinely. Read both before concluding anything about a library.

What it is good for

It is currently the ONLY thing in the database that separates single-nucleus from single-cell RNA-seq — isSingleCell is true for both. Before this field that distinction existed solely as one molecular entity characteristic among a sample's several, with no typed way to query it.

Mirrors GEO's own vocabulary rather than inventing one, so an unmapped submitter value is other instead of a guess.

  • Enum Constant Details

  • Method Details

    • values

      public static ExtractedMolecule[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static ExtractedMolecule valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null