Bonjour a tous,
Je viens solliciter votre aide parce que la je ne sais vraiment pas d'ou peut provenir mon probleme.
Je voudrais avoir des informations provenant d'EnsEMBL et pour etre precise les donnees concernant les domaines proteiques de l'espece Caenorhabditis elegans. Pour faire cette operation bien entendu j'utilise l'API ensembl.(version 56)

Voila la partie de code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
 
sub get_domain_proteic_id {
	my ( $db, $trn, $log ) = @_;
	print $log "<domain_protein_id>\n";
 
	my $translation = $trn->translation;
	if ($translation){
	my $prot_feats  = $translation->get_all_ProteinFeatures;
	if ( scalar(@$prot_feats) > 0 ) {
 
		for my $prot_feat (@$prot_feats) {
 
			if ( $prot_feat->analysis->logic_name ) {
				my $prog = $prot_feat->analysis->logic_name;
 
				print $log "<domain_protein_name>\n";
				print $log $prog, "\n";
				print $log "</domain_protein_name>\n";
 
			}
 
			if ( $prot_feat->interpro_ac ) {
				print $log "<domain_identifier>\n";
				print $log "<domain_interpro_ac>\n";
				print $log $prot_feat->interpro_ac;
				print $log "</domain_interpro_ac>\n";
				print $log "<domain_identifier>\n";
			}
 
			if ( $prot_feat->hseqname ) {
				print $log "<domain_identifier>\n";
				print $log $prot_feat->hseqname;
				print $log "<domain_identifier>\n";
			}
 
			if ( $prot_feat->idesc ) {				
				print $log "<domain_short_name>\n";
				print $log $prot_feat->idesc;
				print $log "</domain_short_name>\n";
			}
 
			if ( $prot_feat->start ) {
				print $log "<domain_start>\n";
				print $log $prot_feat->start;
				print $log "</domain_start>\n";
			}
 
			if ( $prot_feat->end ) {
				print $log "<domain_end>\n";
				print $log $prot_feat->end;
				print $log "</domain_end>\n";
			}
 
			if ( $prot_feat->score ) {
				print $log "<domain_score>\n";
				print $log $prot_feat->score;
				print $log "</domain_score>\n";
			}
		}		
	}
	}
	print $log "</domain_protein_id>\n";
}
Comme vous pouvez le voir, j'en suis venue a juste essayer de sortir l'information de la base (en l'inscrivant dans un .txt associe a chaque gene stable_id).
Mais a chaque fois que mon script tourne, mon script est tue vers le gene 4100.
Lorsque j'enleve cette partie de mon code (car je parse d'autres informations concernant le gene (sequence par exemple) et les transcripts associes a ce gene), je vais jusqu'au bout du nombre de genes cad 35362.

Je sais que ca ne fait pas beaucoup de code mais j'ai mis la partie qui me semblait principale et qui colle presque mot pour mot au tutorial d'EnsEMBL.

Une idee ?
J'ai essaye de passer par la Biomart mais l'info concernant les domaines proteiques ne corresponds pas a celle dont j'ai besoin.

Merci d'avance pour vos pistes