Interface Sequence

  • All Superinterfaces:
    Annotatable, Changeable, FeatureHolder, SymbolList
    All Known Subinterfaces:
    GappedSequence, RichSequence
    All Known Implementing Classes:
    CircularView, DummySequence, NewSimpleAssembly, PhredSequence, RevCompSequence, SimpleAssembly, SimpleGappedSequence, SimpleRichSequence, SimpleSequence, SubSequence, ThinRichSequence, ViewSequence

    public interface Sequence
    extends SymbolList, FeatureHolder, Annotatable

    A biological sequence.


     Sequence myDNA = DNATools.createDNASequence("ATTATTCGTG", "mySeq");
     Sequence myFasta = SeqIOTools.readFastaProtein("mySeq.fa");
     Sequence myGenbank = SeqIOTools.readGenbank("");

    Common operations

     System.out.println("Length: " + myGenbank.length());
     System.out.println("Features: " + myGenbank.countFeatures());
     for(Iterator fi = myGenbank.features(); fi.hasNext(); ) {
       Feature f = (Feature);
       System.out.println(f.getType() + "\t" + f.getLocation());
     // create a new feature on a sequence
     StrandedFeature.Template ft = new StrandedFeature.Template();
     ft.type = "span";
     ft.location = new RangeLocation(230, 450);
     ft.source = "hand_made";
     ft.strand = StrandedFeature.NEGATIVE;
     StrandedFeature newSpan = (StrandedFeature) mySeq.createFeature(ft);


    This interface is a symbol list, so it contains symbols. It is annotatable so that you can add annotation to it, and it is a FeatureHolder so that you can add information about specific regions.

    It is expected that there may be several implementations of this interface, each of which may be fairly heavy-weight. It takes the SymbolList interface that is nice mathematically, and turns it into a biologically useful object.

    The RichSequence interface offers considerably more functionality and better persitence to BioSQL than it's super interface Sequence. We would recommend using it wherever possible.
    Matthew Pocock, Thomas Down
    See Also:
    • Method Detail

      • getURN

        String getURN()
        A Uniform Resource Identifier (URI) which identifies the sequence represented by this object. For sequences in well-known database, this may be a URN, e.g.
        It may also be a URL identifying a specific resource, either locally or over the network
        the URI as a String
      • getName

        String getName()
        The name of this sequence.

        The name may contain spaces or odd characters.

        the name as a String