Hello,

Bio::EnsEMBL::Transcript::translate calls $peptide->translate(undef,undef,undef,$codon_table) without providing the extra argument to Bio::PrimarySeqI::translate ($fullCDS or $complete5) that causes the method to honour alternative start codons in the genetic code. So the fix (which would also correct protview) would be to pass that argument when appropriate from
Bio::EnsEMBL::Transcript::translate.

Alexandre

Arnaud Kerhornou wrote:
Hi everyone,

We are setting up a Mart database for bacterial genomes. I was looking at the peptide sequence attribute. So far it seems fine except sometimes the first amino acid which should be a Methionine is displayed as a different amino acid.

Roughly, the rule is, if the CDS is complete and if the first amino acid is not a methionine, then replace it by a methionine:

e.g. see Bioperl code, Bio::PrimarySeqI->translate():

   ## Only if we are expecting to translate a complete coding region
    if ($complete) {
         # ...
# if the initiator codon is not ATG, the amino acid needs to be changed to M
         if ( substr($output,0,1) ne 'M' ) {
             if ($codonTable->is_start_codon(substr($seq, 0, 3)) ) {
                 $output = 'M'. substr($output,1);
             }    elsif ($throw) {
$self->throw("Seq [$id]: Not using a valid initiator codon!");
             } else {
$self->warn("Seq [$id]: Not using a valid initiator codon!");
             }
         }
    }

How do you translate CDS sequences in Martview, is it made on the fly within the Biomart perl API ?
Is there a way of fixing this translation issue ?

Thanks
Arnaud


--
--------------------------------------------------------
Alexandre Gattiker   Bioinformatics & Biostatistics Core Facility
EPFL School of Life Sciences / Faculté des Sciences de la vie FSV
http://people.epfl.ch/Alexandre.Gattiker

Reply via email to