org.biojava.bio.seq
Interface ComponentFeature

All Superinterfaces:
Annotatable, Changeable, Feature, FeatureHolder, StrandedFeature

public interface ComponentFeature
extends StrandedFeature

Feature which represents a component in an assembly (contig). This implies that a portion (possibly all) of the associated componentSequence is included in this feature's parent sequence.

There are important invariants which apply to all ComponentFeatures. The Location returned by getLocation() must contain the same number of unique point locations as that returned by getComponentLocation().

In BioJava 1.2, two extra properties were added to ComponentFeature to support the use of these features in environments were it it necessary to represent an assembly built from sequences which are not currently available. Widespread use of such sequences is not encouraged, but it is recognized that they are useful as intermediate objects for data integration applications.

Since:
1.1
Author:
Thomas Down

Nested Class Summary
static class ComponentFeature.Template
          Template for constructing a new ComponentFeature.
 
Nested classes inherited from class org.biojava.bio.seq.StrandedFeature
StrandedFeature.Strand
 
Nested classes inherited from class org.biojava.bio.seq.Feature
Feature.ByLocationComparator
 
Nested classes inherited from class org.biojava.bio.seq.FeatureHolder
FeatureHolder.EmptyFeatureHolder
 
Nested classes inherited from class org.biojava.bio.Annotatable
Annotatable.AnnotationForwarder
 
Field Summary
 
Fields inherited from interface org.biojava.bio.seq.StrandedFeature
NEGATIVE, POSITIVE, UNKNOWN
 
Fields inherited from interface org.biojava.bio.seq.Feature
byLocationOrder, LOCATION, PROPERTY_DATA_KEY, SOURCE, TYPE
 
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
 Location getComponentLocation()
          Return a location which identifies a portion of the component sequence which is to be included in the assembly.
 Sequence getComponentSequence()
          Get the sequence object which provides a component of this feature's parent sequence.
 java.lang.String getComponentSequenceName()
          Get the name of the component sequence.
 boolean isComponentResolvable()
          Determine if the sequence references by this ComponentFeature is available in this context.
 
Methods inherited from interface org.biojava.bio.seq.StrandedFeature
getStrand, getSymbols
 
Methods inherited from interface org.biojava.bio.seq.Feature
features, getLocation, getParent, getSequence, getSource, getType, makeTemplate, setLocation, setSource, setType
 
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
 

Method Detail

getComponentSequence

public Sequence getComponentSequence()
Get the sequence object which provides a component of this feature's parent sequence.

Returns:
A sequence.

getComponentLocation

public Location getComponentLocation()
Return a location which identifies a portion of the component sequence which is to be included in the assembly.

Returns:
A location within the component sequence.

getComponentSequenceName

public java.lang.String getComponentSequenceName()
Get the name of the component sequence. In general, this should be equivalent to getComponentSequence().getName(). However, it may still be defined for un-resolveable components.

Since:
1.2

isComponentResolvable

public boolean isComponentResolvable()
Determine if the sequence references by this ComponentFeature is available in this context. If not, calls to getComponentSequence will fail, and getSymbols will return a non-informative SymbolList (in a DNA context, a list of Ns).

Since:
1.2