# foreach my $source ("%RefSeq%","UniProt%","Anopheles_symbol"){
foreachmy$source(@primary_sources){
my$sql="select x.xref_id, x.accession, x.version, x.label, x.description, x.source_id, x.species_id from xref x, source s where x.source_id = s.source_id";
# my $sql = "select x.xref_id, x.accession, x.version, x.label, x.description, x.source_id, x.species_id from xref x, source s where s.name like '".$source."' and x.source_id = s.source_id";
my%triage_dumped=();# dump only once for each accession
my$sql="SELECT x.xref_id, x.accession, x.version, x.label, x.description, x.source_id, x.species_id FROM xref x LEFT JOIN primary_xref px ON px.xref_id=x.xref_id LEFT JOIN dependent_xref dx ON dx.dependent_xref_id=x.xref_id WHERE px.xref_id IS NULL AND dx.dependent_xref_id IS NULL";
# set gene and transcript statuses to KNOWN or NOVEL based on external_db status
...
...
@@ -2288,11 +2432,16 @@ GENE
open(FILE,">$file");
printFILE"UPDATE transcript SET status=\'NOVEL\';\n";
printFILE"UPDATE gene SET status=\'NOVEL\';\n";
printFILE"UPDATE gene g, xref x, external_db e SET g.status = \'KNOWN\' WHERE g.display_xref_id = x.xref_id AND x.external_db_id = e.external_db_id AND e.status=\'KNOWN\';\n";
printFILE"UPDATE transcript t, xref x, external_db e SET t.status = \'KNOWN\' WHERE t.display_xref_id = x.xref_id AND x.external_db_id = e.external_db_id AND e.status=\'KNOWN\';\n";
printFILE"UPDATE gene g, xref x, external_db e SET g.status = \'KNOWN\' ";
printFILE"WHERE g.display_xref_id = x.xref_id ";
printFILE"AND x.external_db_id = e.external_db_id AND e.status=\'KNOWN\';\n";
printFILE"UPDATE transcript t, xref x, external_db e SET t.status = \'KNOWN\' ";
printFILE"WHERE t.display_xref_id = x.xref_id ";
printFILE"AND x.external_db_id = e.external_db_id AND e.status=\'KNOWN\';\n";