Class AnnotationsWebService.ExternalIdentificationValueObject

java.lang.Object
ubic.gemma.rest.AnnotationsWebService.ExternalIdentificationValueObject
Enclosing class:
AnnotationsWebService

public static class AnnotationsWebService.ExternalIdentificationValueObject extends Object
What an external naming authority says a query string is, when nothing Gemma has loaded names it — plus enough provenance to check the claim.

🛑 getIdentifier() is not an annotation. The only URI here a curator may commit is getGroundedTermUri(), and it is present precisely when the identification could be bridged back to a term Gemma already has: ChEMBL says WY-14643 is pirinixic acid, Gemma's own search says pirinixic acid is CHEBI_32509 with 17 corpus uses, and that CHEBI URI is the answer. When the bridge does not land the identification still tells a curator what they are looking at, and there is nothing to annotate with — which is the honest outcome, not a gap to paper over.

The provenance fields are the point of the object as much as the name is. An identification a curator cannot trace back to a source, a release and a matched string is an unsourced assertion, and those are what the curation pipeline is trying to stop emitting.

Author:
tesarst
  • Constructor Details

    • ExternalIdentificationValueObject

      public ExternalIdentificationValueObject(String source, @Nullable String identifier, @Nullable String name, @Nullable String matchedSynonym, @Nullable String sourceRelease, @Nullable String sourceUrl, @Nullable String groundedTermUri, @Nullable String groundedTermLabel)
  • Method Details

    • getSource

      public String getSource()
      Which authority answered, e.g. ChEMBL.
    • getIdentifier

      @Nullable public String getIdentifier()
      The authority's accession, e.g. CHEMBL295416. NOT a term URI — do not annotate with it.
    • getName

      @Nullable public String getName()
      The authority's preferred name, e.g. PIRINIXIC ACID.
    • getMatchedSynonym

      @Nullable public String getMatchedSynonym()
      The synonym string that matched — the evidence for the identification, not decoration.
    • getSourceRelease

      @Nullable public String getSourceRelease()
      Release the identification was read from, e.g. ChEMBL_37.
    • getSourceUrl

      @Nullable public String getSourceUrl()
      Link to the authority's record, for a curator who wants to check it.
    • getGroundedTermUri

      @Nullable public String getGroundedTermUri()
      A term Gemma already has whose name equals getName() — the one URI here that is safe to commit. Null when the identification could not be bridged.
    • getGroundedTermLabel

      @Nullable public String getGroundedTermLabel()