org.biojava.bio.seq.homol
Interface SimilarityPairFeature

All Superinterfaces:
Annotatable, Changeable, Feature, FeatureHolder, StrandedFeature
All Known Implementing Classes:
SimpleSimilarityPairFeature

public interface SimilarityPairFeature
extends StrandedFeature

SimilarityPairFeature describes a pairwise similarity between two nucleotide sequences (as it extends StrandedFeature). It is analagous to, and based on, the BioPerl Bio::SeqFeature::SimilarityPair.

It is different from HomologyFeature in that it expresses a relationship between only two sequence regions (rather than >= 2), with one clearly defined as the query sequence and the other as the subject (database hit). These are identified by constant labels in the Alignment. HomologyFeature identifies the related sequence regions by means of an Homology instance which contains an Alignment which uses the HomologyFeatures themselves as labels.

In cases where there is no alignment available, for example when MSPCrunch output or GFF have been used, the EmptyPairwiseAlignment in the EMPTY_PAIRWISE field may be used. This may also be useful if an implementation elides the alignment data for some reason.

Since:
1.2
Author:
Keith James

Nested Class Summary
static class SimilarityPairFeature.EmptyPairwiseAlignment
          EmptyPairwiseAlignment empty pairwise alignment which has labels to empty symbol lists.
static class SimilarityPairFeature.Template
          Template for construction of SimilarityPairFeatures.
 
Nested classes/interfaces inherited from interface org.biojava.bio.seq.StrandedFeature
StrandedFeature.Strand
 
Nested classes/interfaces inherited from interface org.biojava.bio.seq.Feature
Feature.ByLocationComparator
 
Nested classes/interfaces inherited from interface org.biojava.bio.seq.FeatureHolder
FeatureHolder.EmptyFeatureHolder
 
Nested classes/interfaces inherited from interface org.biojava.bio.Annotatable
Annotatable.AnnotationForwarder
 
Field Summary
static Alignment EMPTY_PAIRWISE
          Constant EMPTY_PAIRWISE is an empty alignment for situations where there is no available alignment data or the implementation does not want to create one.
static java.lang.String QUERY_LABEL
          Constant QUERY_LABEL is the alignment label used for all query sequences.
static ChangeType SIBLING
          The sibling of this feature has altered.
static java.lang.String SUBJECT_LABEL
          Constant SUBJECT_LABEL is the alignment label used for all subject sequences.
 
Fields inherited from interface org.biojava.bio.seq.StrandedFeature
NEGATIVE, POSITIVE, STRAND, UNKNOWN
 
Fields inherited from interface org.biojava.bio.seq.Feature
byLocationOrder, LOCATION, PROPERTY_DATA_KEY, SOURCE, SOURCETERM, TYPE, TYPETERM
 
Fields inherited from interface org.biojava.bio.seq.FeatureHolder
EMPTY_FEATURE_HOLDER, FEATURES, SCHEMA
 
Fields inherited from interface org.biojava.bio.Annotatable
ANNOTATION
 
Method Summary
 Alignment getAlignment()
          getAlignment returns the Alignment of two similar features.
 double getScore()
          getScore returns the alignment score.
 SimilarityPairFeature getSibling()
          getSibling returns the sibling Feature, query for subject and vice versa.
 void setSibling(SimilarityPairFeature sibling)
          setSibling sets the sibling feature of the pair.
 
Methods inherited from interface org.biojava.bio.seq.StrandedFeature
getStrand, getSymbols, setStrand
 
Methods inherited from interface org.biojava.bio.seq.Feature
features, getLocation, getParent, getSequence, getSource, getSourceTerm, getType, getTypeTerm, makeTemplate, setLocation, setSource, setSourceTerm, setType, setTypeTerm
 
Methods inherited from interface org.biojava.bio.seq.FeatureHolder
containsFeature, countFeatures, createFeature, filter, filter, getSchema, removeFeature
 
Methods inherited from interface org.biojava.utils.Changeable
addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener
 
Methods inherited from interface org.biojava.bio.Annotatable
getAnnotation
 
Methods inherited from interface org.biojava.utils.Changeable
addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener
 

Field Detail

SIBLING

static final ChangeType SIBLING
The sibling of this feature has altered.


QUERY_LABEL

static final java.lang.String QUERY_LABEL
Constant QUERY_LABEL is the alignment label used for all query sequences.

See Also:
Constant Field Values

SUBJECT_LABEL

static final java.lang.String SUBJECT_LABEL
Constant SUBJECT_LABEL is the alignment label used for all subject sequences.

See Also:
Constant Field Values

EMPTY_PAIRWISE

static final Alignment EMPTY_PAIRWISE
Constant EMPTY_PAIRWISE is an empty alignment for situations where there is no available alignment data or the implementation does not want to create one.

Method Detail

getSibling

SimilarityPairFeature getSibling()
getSibling returns the sibling Feature, query for subject and vice versa.

Returns:
a Feature.

setSibling

void setSibling(SimilarityPairFeature sibling)
                throws ChangeVetoException
setSibling sets the sibling feature of the pair. This is used to set the reciprocal SimilarityPairFeature as both cannot be set using the Template.

Throws:
ChangeVetoException

getAlignment

Alignment getAlignment()
getAlignment returns the Alignment of two similar features.

Returns:
an Alignment value.

getScore

double getScore()
getScore returns the alignment score.

Returns:
a double.