Class DatasetsWebService.FactorCommit

java.lang.Object
ubic.gemma.rest.DatasetsWebService.EntityRef
ubic.gemma.rest.DatasetsWebService.FactorCommit
Enclosing class:
DatasetsWebService

public static class DatasetsWebService.FactorCommit extends DatasetsWebService.EntityRef
One experimental factor.
Author:
tesarst
  • Constructor Details

    • FactorCommit

      public FactorCommit()
  • Method Details

    • getName

      @Nullable public String getName()
    • getCategory

      @Nullable public DatasetsWebService.OntologyTermRef getCategory()
    • getDescription

      @Nullable public String getDescription()
    • getType

      @Nullable public String getType()
      "categorical" | "continuous".
    • getBaselineRelevance

      @Nullable public String getBaselineRelevance()
      Curator/agent hint about whether this factor warrants picking a baseline factor value — the write side of ExperimentalFactorValueObject.baselineRelevance, which was readable and unsettable until now (cab, 2026-09-04: the curation UI offers "Tick to override: no baseline" with a reason box and had nowhere to put the answer).

      The values in use are "required", "not_applicable" and "uncertain", and they are documented rather than enforced: an unknown value round-trips instead of 400ing. It is a hint whose vocabulary has already moved once, and a closed list here would make the next word a schema change, a deploy and a compatibility question.

      null / omitted = leave whatever is recorded untouched. An EMPTY string clears it — the one thing evidence deliberately cannot do, because this is a toggle a curator unticks and not an append-only justification.

    • getBaselineRelevanceReason

      @Nullable public String getBaselineRelevanceReason()
      Free-text rationale paired with baselineRelevance — what the curator typed in the reason box. Same conventions: null leaves it untouched, empty clears it, no vocabulary.
    • getSubsetRelevance

      @Nullable public String getSubsetRelevance()
      Curator/agent hint about whether a differential expression analysis should SUBSET by this factor — the write side of ExperimentalFactorValueObject.subsetRelevance.

      🛑 Advice, not a record of what happened. What an analysis actually subsetted by is its own subsetFactorValue and is not settable here; the two are allowed to disagree, and a recommendation not yet acted on is the normal state of a factor between curation and the next analysis run.

      The values in use are "recommended", "not_applicable" and "uncertain", documented rather than enforced on the same reasoning as baselineRelevance — and more so here, since the curation agents are the intended writer and "covariate" (do not subset, model it) is a plausible fourth value that should not need a Gemma release.

      null / omitted = leave whatever is recorded untouched. An EMPTY string clears it.

    • getSubsetRelevanceReason

      @Nullable public String getSubsetRelevanceReason()
      Free-text rationale paired with subsetRelevance. Same conventions: null leaves it untouched, empty clears it, no vocabulary.
    • getSupportingEvidence

      @Nullable public com.fasterxml.jackson.databind.JsonNode getSupportingEvidence()
      Verbatim provenance for this FACTOR — a JSON array of {quote, source, location, …} items. Stored and served opaquely; the agents repo owns the schema.

      Backs the factor as a curated claim: that this axis exists, is named this, and is categorised this way. Its values and their statements carry their own evidence at their own levels, and none of the three stands in for another.

      Null / omitted leaves any evidence already recorded untouched, so a client that does not carry provenance cannot wipe provenance somebody else recorded.

      🛑 An EMPTY ARRAY is the same as omitting it, NOT an erase. A payload built from a reference file stamps [] on every entity that has no evidence, and reading that as "clear it" would wipe stored provenance on every entity such a write touches while reporting an ordinary success. There is deliberately no way to clear evidence through this route.

    • getFactorValues

    • setName

      public void setName(@Nullable String name)
    • setCategory

      public void setCategory(@Nullable DatasetsWebService.OntologyTermRef category)
    • setDescription

      public void setDescription(@Nullable String description)
    • setType

      public void setType(@Nullable String type)
      "categorical" | "continuous".
    • setBaselineRelevance

      public void setBaselineRelevance(@Nullable String baselineRelevance)
      Curator/agent hint about whether this factor warrants picking a baseline factor value — the write side of ExperimentalFactorValueObject.baselineRelevance, which was readable and unsettable until now (cab, 2026-09-04: the curation UI offers "Tick to override: no baseline" with a reason box and had nowhere to put the answer).

      The values in use are "required", "not_applicable" and "uncertain", and they are documented rather than enforced: an unknown value round-trips instead of 400ing. It is a hint whose vocabulary has already moved once, and a closed list here would make the next word a schema change, a deploy and a compatibility question.

      null / omitted = leave whatever is recorded untouched. An EMPTY string clears it — the one thing evidence deliberately cannot do, because this is a toggle a curator unticks and not an append-only justification.

    • setBaselineRelevanceReason

      public void setBaselineRelevanceReason(@Nullable String baselineRelevanceReason)
      Free-text rationale paired with baselineRelevance — what the curator typed in the reason box. Same conventions: null leaves it untouched, empty clears it, no vocabulary.
    • setSubsetRelevance

      public void setSubsetRelevance(@Nullable String subsetRelevance)
      Curator/agent hint about whether a differential expression analysis should SUBSET by this factor — the write side of ExperimentalFactorValueObject.subsetRelevance.

      🛑 Advice, not a record of what happened. What an analysis actually subsetted by is its own subsetFactorValue and is not settable here; the two are allowed to disagree, and a recommendation not yet acted on is the normal state of a factor between curation and the next analysis run.

      The values in use are "recommended", "not_applicable" and "uncertain", documented rather than enforced on the same reasoning as baselineRelevance — and more so here, since the curation agents are the intended writer and "covariate" (do not subset, model it) is a plausible fourth value that should not need a Gemma release.

      null / omitted = leave whatever is recorded untouched. An EMPTY string clears it.

    • setSubsetRelevanceReason

      public void setSubsetRelevanceReason(@Nullable String subsetRelevanceReason)
      Free-text rationale paired with subsetRelevance. Same conventions: null leaves it untouched, empty clears it, no vocabulary.
    • setSupportingEvidence

      public void setSupportingEvidence(@Nullable com.fasterxml.jackson.databind.JsonNode supportingEvidence)
      Verbatim provenance for this FACTOR — a JSON array of {quote, source, location, …} items. Stored and served opaquely; the agents repo owns the schema.

      Backs the factor as a curated claim: that this axis exists, is named this, and is categorised this way. Its values and their statements carry their own evidence at their own levels, and none of the three stands in for another.

      Null / omitted leaves any evidence already recorded untouched, so a client that does not carry provenance cannot wipe provenance somebody else recorded.

      🛑 An EMPTY ARRAY is the same as omitting it, NOT an erase. A payload built from a reference file stamps [] on every entity that has no evidence, and reading that as "clear it" would wipe stored provenance on every entity such a write touches while reporting an ordinary success. There is deliberately no way to clear evidence through this route.

    • setFactorValues

      public void setFactorValues(DatasetsWebService.Section<DatasetsWebService.FactorValueCommit> factorValues)
    • toString

      public String toString()
      Overrides:
      toString in class DatasetsWebService.EntityRef
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class DatasetsWebService.EntityRef
    • canEqual

      protected boolean canEqual(Object other)
      Overrides:
      canEqual in class DatasetsWebService.EntityRef
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class DatasetsWebService.EntityRef