[ensembl-dev] Release 65 - 'not a valid species name' exception thrown by get_adaptor()

Giuseppe G G.Gallone at sms.ed.ac.uk
Tue Jan 31 18:43:46 GMT 2012


On 31/01/12 16:17, Andy Yates wrote:
> Population of aliases into the registry relies on the population of species.alias entries in the core database's meta table. If a name is in that field (e.g. if there is a genome with the alias Plasmodium falciparum) then it will return a true value. This is similar to querying the registry with 'human' which returns a Homo sapiens adaptor. The only way you can use a taxonomy identifier in the alias/registry methods was if it was specified in the meta table under the aforementioned tag.
>
> However if my memory serves me correctly what you're attempting to do here is to traverse back up the taxonomy to get to the first gene adaptor you can find.

Hi Andy thanks for the explanation on the registry and aliases.

Yes you are correct. I have a list of IDs whose entries belong to one of 
several species curated by Intact. Then I have a reference genome X. I 
need to find all orthologues between the IDs in the list and species X.

So I'll first group the IDs in the list by taxon ID. For each taxon, 
I'll get a NCBI_taxon adaptor, from this a taxon name, and then a gene 
adaptor

(1) $gene_adaptor = $registry->get_adaptor('Plasmodium falciparum', 
'core', 'Gene');

then a genome db object

(2) $gdb1 = $genomedb_adaptor->fetch_by_taxon_id('5833')

which will allow me to get a method link species set object (I think 
that's how it's called)

(3) my $orthologues_mlss = 
$mlssa->fetch_by_method_link_type_GenomeDBs('ENSEMBL_ORTHOLOGUES',[$gdb1,$gdb_X]);

and then finally

(4) my $all_homologies = 
$homology_adaptor->fetch_all_by_Member_MethodLinkSpeciesSet($member, 
$orthologues_mlss);

----

I have one last question about this. In the case of Plasmodium 
falciparum, with the 'pan_homology' db I'm still able to get a 
$gene_adaptor in (1). The code will however fail at (2). Is this 
expected behaviour and related to your explanation above?

My understanding of it at the moment is that if the taxon name exists in 
the core database meta table, I will get a gene adaptor - even if the 
taxon is not amongst the 605 species contained in the pan_homology DB. 
Is this correct?

Thank you
G
-- 

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.





More information about the Dev mailing list