Interface Gff3Feature

  • All Superinterfaces:
    Feature, Locatable
    All Known Implementing Classes:
    Gff3FeatureImpl

    public interface Gff3Feature
    extends Feature
    Gff3 format spec is defined at https://github.com/The-Sequence-Ontology/Specifications/blob/31f62ad469b31769b43af42e0903448db1826925/gff3.md Discontinuous features which are split between multiple lines in the gff files are implemented as separate features linked as "co-features"
    • Method Detail

      • getTopLevelFeatures

        Set<? extends Gff3Feature> getTopLevelFeatures()
        Get the set of top level features from which this feature is descended. Top level features are features with no linked parents
        Returns:
        set of top level feature from which this feature is descended
      • isTopLevelFeature

        boolean isTopLevelFeature()
      • getSource

        default String getSource()
      • getEnd

        default int getEnd()
        Specified by:
        getEnd in interface Locatable
        Returns:
        1-based closed-ended position, undefined if getContig() == null
      • getStrand

        default Strand getStrand()
      • getPhase

        default int getPhase()
      • getType

        default String getType()
      • getContig

        default String getContig()
        Description copied from interface: Locatable
        Gets the contig name for the contig this is mapped to. May return null if there is no unique mapping.
        Specified by:
        getContig in interface Locatable
        Returns:
        name of the contig this is mapped to, potentially null
      • getStart

        default int getStart()
        Specified by:
        getStart in interface Locatable
        Returns:
        1-based start position, undefined if getContig() == null
      • getAttribute

        default String getAttribute​(String key)
      • getID

        default String getID()
      • getName

        default String getName()
      • getAlias

        default String getAlias()
      • getBaseData

        Gff3BaseData getBaseData()
        Get BaseData object which contains all the basic information of the feature
        Returns:
      • getParents

        Set<? extends Gff3Feature> getParents()
        Gets set of parent features
        Returns:
        set of parent features
      • getChildren

        Set<? extends Gff3Feature> getChildren()
        Gets set of features for which this feature is a parent
        Returns:
        set of child features
      • getAncestors

        Set<? extends Gff3Feature> getAncestors()
        Get set of all features this feature descends from, through chains of Parent attributes. If Derives_From exists for this feature, then only features along the inheritance path specified by the Derives_From attribute should be included as ancestors of this feature
        Returns:
        set of ancestor features
      • getDescendents

        Set<? extends Gff3Feature> getDescendents()
        Get set of all features descended from this features, through chains of Parent attributes. If Derives_From attribute exists for a feature, it should only be included as a descendent of this feature if the inheritance path specified by its Derives_From attribute includes this feature
        Returns:
        set of descendents
      • getCoFeatures

        Set<? extends Gff3Feature> getCoFeatures()
        Get set of co-features. Co-features correspond to the other lines in the gff file that together make up a single discontinuous feature
        Returns:
        set of co-features
      • flatten

        Set<? extends Gff3Feature> flatten()
        Flatten this feature and all descendents into a set of features. The Derives_From attribute is respected if it exists for this feature
        Returns:
        set of this feature and all descendents
      • hasParents

        boolean hasParents()
      • hasChildren

        boolean hasChildren()
      • hasCoFeatures

        boolean hasCoFeatures()