[Bio] / FigKernelScripts / db_xrefs_of.pl Repository:
ViewVC logotype

Annotation of /FigKernelScripts/db_xrefs_of.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (view) (download) (as text)

1 : overbeek 1.1
2 :     use FIG;
3 :     my $fig = new FIG;
4 :    
5 :     # usage: db_xrefs_of < IDs > ID-Xrefs
6 :     #
7 :    
8 :     %tag_order = ( gene => 1,
9 :     sp => 2,
10 :     nr => 3,
11 :     uni => 4,
12 :     kegg => 5,
13 :     gi => 6
14 :     );
15 :    
16 :     while (defined($_ = <STDIN>))
17 :     {
18 :     if ($_ =~ /^(\S+)/)
19 :     {
20 :     $id = $1;
21 :     if ($id =~ /^fig\|/)
22 :     {
23 :     @possible_xrefs = $fig->feature_aliases($id);
24 :     }
25 :     else
26 :     {
27 :     @possible_xrefs = grep { $_ ne $id }
28 :     map { $_->[0] }
29 :     $fig->mapped_prot_ids($id);
30 :     }
31 :     @xrefs = map { $_->[0] }
32 :     grep { ($_->[1] ne "misc") && ($_->[1] ne "gene") }
33 :     map { [$_,&type_alias($_)] }
34 :     @possible_xrefs;
35 :     print "$id\t",join(",",@xrefs),"\n";
36 :     }
37 :     }
38 :    
39 :     sub type_alias {
40 :     my($alias) = @_;
41 :    
42 :     if (($alias =~ /^([^|]+)\|\S+$/) && defined($tag_order{$1}))
43 :     {
44 :     return $1;
45 :     }
46 :     elsif ($alias =~ /^[NXYZA]P_/)
47 :     {
48 :     return "nr";
49 :     }
50 :     elsif (($alias =~ /^[a-zA-Z]{3,4}$/) || ($alias =~ /^[a-zA-Z]{1,3}\d+$/))
51 :     {
52 :     return "gene";
53 :     }
54 :     return "misc";
55 :     }

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3