git://source.jalview.org
/
jalview.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
0277877
)
JAL-2525 lookup transcript features by Ontology
author
gmungoc
<g.m.carstairs@dundee.ac.uk>
Mon, 2 Oct 2017 14:41:02 +0000
(15:41 +0100)
committer
gmungoc
<g.m.carstairs@dundee.ac.uk>
Mon, 2 Oct 2017 14:41:02 +0000
(15:41 +0100)
src/jalview/ext/ensembl/EnsemblGene.java
patch
|
blob
|
history
diff --git
a/src/jalview/ext/ensembl/EnsemblGene.java
b/src/jalview/ext/ensembl/EnsemblGene.java
index
365c1c2
..
ad01324
100644
(file)
--- a/
src/jalview/ext/ensembl/EnsemblGene.java
+++ b/
src/jalview/ext/ensembl/EnsemblGene.java
@@
-428,6
+428,12
@@
public class EnsemblGene extends EnsemblSeqProxy
/**
* Returns a list of the transcript features on the sequence whose Parent is
* the gene for the accession id.
/**
* Returns a list of the transcript features on the sequence whose Parent is
* the gene for the accession id.
+ * <p>
+ * Transcript features are those of type "transcript", or any of its sub-types
+ * in the Sequence Ontology e.g. "mRNA", "processed_transcript". We also
+ * include "NMD_transcript_variant", because this type behaves like a
+ * transcript identifier in Ensembl, although strictly speaking it is not in
+ * the SO.
*
* @param accId
* @param geneSequence
*
* @param accId
* @param geneSequence
@@
-439,19
+445,18
@@
public class EnsemblGene extends EnsemblSeqProxy
List<SequenceFeature> transcriptFeatures = new ArrayList<SequenceFeature>();
String parentIdentifier = GENE_PREFIX + accId;
List<SequenceFeature> transcriptFeatures = new ArrayList<SequenceFeature>();
String parentIdentifier = GENE_PREFIX + accId;
- // todo optimise here by transcript type!
+
List<SequenceFeature> sfs = geneSequence.getFeatures()
List<SequenceFeature> sfs = geneSequence.getFeatures()
- .getPositionalFeatures();
+ .getFeaturesByOntology(SequenceOntologyI.TRANSCRIPT);
+ sfs.addAll(geneSequence.getFeatures().getPositionalFeatures(
+ SequenceOntologyI.NMD_TRANSCRIPT_VARIANT));
for (SequenceFeature sf : sfs)
{
for (SequenceFeature sf : sfs)
{
- if (isTranscript(sf.getType()))
+ String parent = (String) sf.getValue(PARENT);
+ if (parentIdentifier.equals(parent))
{
{
- String parent = (String) sf.getValue(PARENT);
- if (parentIdentifier.equals(parent))
- {
- transcriptFeatures.add(sf);
- }
+ transcriptFeatures.add(sf);
}
}
}
}