001package org.gbif.api.model.checklistbank;
002
003import javax.annotation.Nullable;
004
005/**
006 *
007 */
008public interface NameUsageExtension {
009
010  /**
011   * The name usage "taxon" key this extension record belongs to.
012   */
013  Integer getTaxonKey();
014
015  void setTaxonKey(Integer taxonKey);
016
017  /**
018   * @return a source reference string
019   */
020  @Nullable
021  String getSource();
022
023  void setSource(String source);
024
025  /**
026   * If the source is another name usage this is the taxonKey of that usage.
027   * Only useful for the backbone dataset.
028   *
029   * @return The key of the name usage this instance is derived from.
030   */
031  @Nullable
032  Integer getSourceTaxonKey();
033
034  void setSourceTaxonKey(Integer sourceTaxonKey);
035
036}