org.biopax.paxtools.model.level3
Interface EntityFeature

All Superinterfaces:
BioPAXElement, java.lang.Cloneable, Level3Element, Observable, java.io.Serializable, UtilityClass
All Known Subinterfaces:
BindingFeature, CovalentBindingFeature, FragmentFeature, ModificationFeature
All Known Implementing Classes:
BindingFeatureImpl, CovalentBindingFeatureImpl, EntityFeatureImpl, FragmentFeatureImpl, ModificationFeatureImpl

public interface EntityFeature
extends UtilityClass, Observable

Description: A characteristic of a physical entity that can change while the entity still retains its biological identity.

Rationale: Two phosphorylated forms of a protein are strictly speaking different chemical molecules. It is, however, standard in biology to treat them as different states of the same entity, where the entity is loosely defined based on sequence. Entity Feature class and its subclassses captures these variable characteristics. A Physical Entity in BioPAX represents a pool of molecules rather than an individual molecule. This is a notion imported from chemistry (See PhysicalEntity). Pools are defined by a set of Entity Features in the sense that a single molecule must have all of the features in the set in order to be considered a member of the pool. Since it is impossible to list and experimentally test all potential features for an entity, features that are not listed in the selection criteria is neglected Pools can also be defined by the converse by specifying features that are known to NOT exist in a specific context. As DNA, RNA and Proteins can be hierarchically organized into families based on sequence homology so can entity features. The memberFeature property allows capturing such hierarchical classifications among entity features.

Usage: Subclasses of entity feature describe most common biological instances and should be preferred whenever possible. One common use case for instantiating entity feature is, for describing active/inactive states of proteins where more specific feature information is not available.

Examples: Open/close conformational state of channel proteins, "active"/"inactive" states, excited states of photoreactive groups.


Nested Class Summary
 
Nested classes/interfaces inherited from interface org.biopax.paxtools.model.BioPAXElement
BioPAXElement.Key
 
Field Summary
 
Fields inherited from interface org.biopax.paxtools.model.BioPAXElement
UNKNOWN_DOUBLE, UNKNOWN_FLOAT, UNKNOWN_INT
 
Method Summary
 void addMemberFeature(EntityFeature entityFeature)
          An entity feature that belongs to this homology grouping.
 boolean atEquivalentLocation(EntityFeature that)
           
 EntityReference getEntityFeatureOf()
          Inverse of EntityReference.getEntityFeature()
 SequenceLocation getFeatureLocation()
          Location of the feature on the sequence of the interactor.
 SequenceRegionVocabulary getFeatureLocationType()
          A controlled vocabulary term describing the type of the sequence location such as C-Terminal or SH2 Domain.
 java.util.Set<PhysicalEntity> getFeatureOf()
          Inverse of PhysicalEntity.getFeature() Contents of this set is generated automatically and should not be modified.
 java.util.Set<EntityFeature> getMemberFeature()
          An entity feature that belongs to this homology grouping.
 java.util.Set<EntityFeature> getMemberFeatureOf()
          Reverse of getMemberFeature()
 java.util.Set<PhysicalEntity> getNotFeatureOf()
          Inverse of PhysicalEntity.getNotFeature() Contents of this set is generated automatically and should not be modified.
 void removeMemberFeature(EntityFeature entityFeature)
          An entity feature that belongs to this homology grouping.
 void setFeatureLocation(SequenceLocation sequenceLocation)
          Location of the feature on the sequence of the interactor.
 void setFeatureLocationType(SequenceRegionVocabulary regionVocabulary)
          A controlled vocabulary term describing the type of the sequence location such as C-Terminal or SH2 Domain.
 
Methods inherited from interface org.biopax.paxtools.model.level3.Level3Element
addComment, getComment, removeComment
 
Methods inherited from interface org.biopax.paxtools.model.BioPAXElement
equivalenceCode, getAnnotations, getModelInterface, getRDFId, isEquivalent
 
Methods inherited from interface org.biopax.paxtools.model.level3.Observable
addEvidence, getEvidence, removeEvidence
 

Method Detail

getEntityFeatureOf

EntityReference getEntityFeatureOf()
Inverse of EntityReference.getEntityFeature()

Returns:
the EntityReference that this EntityFeature belongs to.

getFeatureOf

java.util.Set<PhysicalEntity> getFeatureOf()
Inverse of PhysicalEntity.getFeature() Contents of this set is generated automatically and should not be modified.

Returns:
The list of PhysicalEntities that were observed to have this feature.

getNotFeatureOf

java.util.Set<PhysicalEntity> getNotFeatureOf()
Inverse of PhysicalEntity.getNotFeature() Contents of this set is generated automatically and should not be modified.

Returns:
The list of PhysicalEntities that were observed to NOT have this feature.

getFeatureLocation

SequenceLocation getFeatureLocation()
Location of the feature on the sequence of the interactor.

For modification features this is the modified base or residue. For binding features this is the binding site and for fragment features this is the location of the fragment on the "base" sequence.

One feature may have more than one location, used e.g. for features which involve sequence positions close in the folded, three-dimensional state of a protein, but non-continuous along the sequence.

Small Molecules can have binding features but currently it is not possible to define the binding site on the small molecules. In those cases this property should not be specified.

Returns:
Location of the feature on the sequence of the interactor.

setFeatureLocation

void setFeatureLocation(SequenceLocation sequenceLocation)
Location of the feature on the sequence of the interactor.

For modification features this is the modified base or residue. For binding features this is the binding site and for fragment features this is the location of the fragment on the "base" sequence.

One feature may have more than one location, used e.g. for features which involve sequence positions close in the folded, three-dimensional state of a protein, but non-continuous along the sequence.

Small Molecules can have binding features but currently it is not possible to define the binding site on the small molecules. In those cases this property should not be specified.

Parameters:
sequenceLocation - of the feature

getFeatureLocationType

SequenceRegionVocabulary getFeatureLocationType()
A controlled vocabulary term describing the type of the sequence location such as C-Terminal or SH2 Domain. Using Sequence Ontology (http://www.sequenceontology.org) is recommended.

Returns:
A CV term describing the location of the feature

setFeatureLocationType

void setFeatureLocationType(SequenceRegionVocabulary regionVocabulary)
A controlled vocabulary term describing the type of the sequence location such as C-Terminal or SH2 Domain. Using Sequence Ontology (http://www.sequenceontology.org) is recommended.

Parameters:
regionVocabulary - A CV term describing the location of the feature

getMemberFeature

java.util.Set<EntityFeature> getMemberFeature()
An entity feature that belongs to this homology grouping.

Members of this set should be of the same class of this EntityFeature.

Members of this set should be an EntityFeature of an EntityReference which is a memberEntityReference of the EntityReference of this feature.

If this set is not empty than the sequenceLocation of this feature should be null.

Example: a homologous phosphorylation site across a protein family.

Returns:
An entity feature that belongs to this homology grouping.

addMemberFeature

void addMemberFeature(EntityFeature entityFeature)
An entity feature that belongs to this homology grouping.

Members of this set should be of the same class of this EntityFeature.

Members of this set should be an EntityFeature of an EntityReference which is a memberEntityReference of the EntityReference of this feature.

If this set is not empty than the sequenceLocation of this feature should be null.

Example: a homologous phosphorylation site across a protein family.

Parameters:
entityFeature - An entity feature that belongs to this homology grouping.

removeMemberFeature

void removeMemberFeature(EntityFeature entityFeature)
An entity feature that belongs to this homology grouping.

Members of this set should be of the same class of this EntityFeature.

Members of this set should be an EntityFeature of an EntityReference which is a memberEntityReference of the EntityReference of this feature.

If this set is not empty than the sequenceLocation of this feature should be null.

Example: a homologous phosphorylation site across a protein family.

Parameters:
entityFeature - An entity feature that belongs to this homology grouping.

atEquivalentLocation

boolean atEquivalentLocation(EntityFeature that)
Parameters:
that - EntityFeature to be compared
Returns:
returns true iff the given feature is at the equivalent sequence location with this feature

getMemberFeatureOf

java.util.Set<EntityFeature> getMemberFeatureOf()
Reverse of getMemberFeature()

Returns:
the generic feature(s) that this feature belong to


Copyright © 2011 BioPAX. All Rights Reserved.